步进电机速度控制系统设计内容摘要:
7 3 软件的设计与实现 单片机是系统的核心,主要承担控制信号的接受,逻辑分析和运算,控制量的输出和显示的运算和输出等功能。 本程序采用模块化设计, 针对上述功能主要包括 主函数、键盘扫描、 串口 中断、 计时中断和显示程序几个模块。 其中,主函数主要负责对单片机、内部元件及中断等工作方式进行定义和设定,并协调好各模块之间的运行时序,其流程图如下: 图 5 主函数流 程图 控制信号输入程序 控制信号可以通过 独立键盘和串口通讯两种方式输入。 键盘的输入主要是用扫描程序,即不停取键盘接口的逻辑值,与特定值进行位运算就可以识别键盘的控制信息。 串口通讯控制信号的输入也是利用了扫描,不过单片机内软件所要做的,主要是定义计数器工作及串口协议,如波特率等。 成功实现串口通讯后,对获得的数据编辑运算就可以形成对应的控制 输出。 中断允许计时器初始化串口通讯初始化显示器初始化显示初始值进入输入扫描结束开始 8 为避免 两种方式的 控制信号冲突,程序通过外接开关选定控制方式。 整个控制信号输入程序流程图如下: 图 6 输入扫描程序流程图 步进电机控制程序设计 确定方案的时候已经提到,对步进电机的控制主要是对单片机输出脉冲频率的控制。 频率的快慢必然是要有时间来衡量的,显然要使用单片机内部的计时器进行计时 ,电平输出指令就在计时器中断程序中。 每当计时结束,就执行一次比较运算并改写电平 与原来相反。 值得注意的是,由于单片机计时器的计选择判定关闭输入低四位有键按下。 速度控制与显示高位有键按下。 方向控制与显示有输入。 存储接收的数据并返回指令分析电机控制运算与显示开始串口输入 键盘输入是否是否否是 9 时是对预存的起始量进行减运算。 这样,要想加快电机速度提高输出频率就要减小速度标量 B, 以 减少 两者比较 次数 ,更 频繁 地 执行中断以 改写电平,从而达到提高频率的目的。 频率控制原理图如图 7 所示 : 图 7 频率变化 原理 由图可以明显地看出,速度标志量越小,输出波形的频率越快。 由此可以确定键盘控制和串口控制下,步进电机控制算法程序的流程图如下: 图 8 步进电机 控制 程序 流程 图 计数器计时t =Ru nSpeed ?输出电平取反控制要求Ru nSpeed + 2计时结束t ++Ru nSpeed 2有控制量输入。 开始减速 加速否是否是 10 程序分析及说明 本设计的程序采用了多个变量,其中 Runspeed 变量在控制输入和控制输出之间起枢纽作用,可以说对 Runspeed 的控制就是对电机速度的控制。 计数器环节中, Cnt 变量的使用让计时器解放出来成为独立的走时,把对计 时中断次数的统计作为计算量,而计数器本身不参与逻辑运算。 这样大大提高了单片机内有限个计时器的利用率,当有新的控制需要时间量度时,只需增加变量即可。 此外,通过取反改变输出电平的算法简单方便,节省了单片机内存空间的同时也节省了有限的数据口。 设计程序从多方面充分提高单片机的利用率,是值得推广的。 11 4 系统的仿真与调试 仿真时 ,先完成由键盘控制的一台步进电机的加速减速控制,确定 键盘扫描、电机走步等的 基本算法是否可行。 之后开辟新的接口,对另一台电机控制,新变量的加入使两台电机的 异步运行十分容易。 最后仿真串行接口的通讯与控制。 程序的调试 对于脉冲波的输出算法,可以选择对管脚位定义,再对变量或管脚代号分别作取反运算。 这种方法可靠简单,但如果所要控制的电机数目较多,程序就会十分冗长。 用 8 位异或的位运算就可以解决这个问题,位异或可以只对目标管脚作用而不影响其他管脚的输出,可以同时对多个管脚改写电平。 键盘扫描是不断用接口数据与特定 16 进制数进行位运算,位运算的选择也会影响到信号采集的准确度和管脚的利用率。 调试显示器的关键则是准确地将初始化信息分批地送到显示器里。 针对本设计所使 用的 AT89C51 单片机,如果选用 P0 口作为显示输出则必须对 P0 口 每个管脚接上拉电阻。 而对电机速度的显示需要以 Runspeed 为应变量选取适当的换算函数,才能显示正确的速度值。 串口通信的调试 调试串口通讯的关键是对串口正确地初始化。 一旦通信成功,串口控制就解决了大半的问题,接着就是用缓存里的数据编程控制,其算法与键盘控制相差不远。 串口调试最需注意的是,除了在程序里对串口和通讯初始化之外,电路图中器件相关属性 的 设置都必须 与通讯要求 保持一致,比如串口的波特率应设置为软件里初始化波特率的大小。 同样地, 模拟的上位机的 传输位和停止位等 指标也应认真选定。 本设计只完成了单片机与控制口之间以字节为单位的简单通讯,所以能通信的控制功能十分有限。 12 调试结果 经过调试,系统能以键盘和串口两种方式对两部步进电机进行异步控制 ,并在显示屏上显示各电机的转向和转速。 其中串口控制 仿真 效果 如 下图 所示: 图 9 串口控制 仿真 效果 图 图 10 串口控 制 窗口 13 5 设计 总结 本 计选择常规 的脉 冲分配器完成对电机绕组电平的时序控制, 从而使单 片机 对每部电机 对应输出一个触发信号和一组脉冲波即可。 这样节省了单片机的数据接口,一定程度提高了 利用率。 另外,正如程序分析师所述, 本设计的软件采用 了 多个变量 使单片机计时器等部分得以共享, 当有新的控制需要时间量度时,只需增加变量即可 ,大大提高了使用价值。 此外, 程序 通过取反改变输出电平的算法简单方便,节省了单片机内存空间的同时也节省了有限的数据口。 系统对信号频率控制,使得控制的精确度较输出控制字方式较差。 此外,变量的使用也是的多个程序模块同时依赖一个计数器,降低了系统可靠性。 14 参考文献 [1]于海生 .微型计算机控制 技术 .北京 :清华大学 出版社 , [2]常喜茂 ,孔英会等 .C51 基础与应用实例 .北京 :电子工业出版社 ,2020 [3]马德骏 ,张建宏等 .C 语言程序设计 .北京 :科学出版社 ,2020 [4]刘宝廷 ,程树康等 .步进电机及其驱动控制系统 .哈尔滨 :哈尔滨工业大学出版社 ,1997 [5]马忠梅 ,籍顺心等 .单片机的 C 语言应用程序设计 .北京 :北京航空航天大学出版社 ,2020 15 附录 include include include int delay()。 void inti_lcd()。 void show_lcd(int i)。 void cmd_wr()。 void ShowSpeed()。 void ShowDir()。 void key_scan()。 void cod_scan()。 void delayms(int ms)。 void send_char(unsigned char out)。 sbit RS=P2^4。 //。步进电机速度控制系统设计
相关推荐
感和满足感;人格健康的人是有朋友的,乐于与人交往;人格健康的人对自身有适当的了解,能悦纳自己的态度,愿意努力发展身心潜能,对于失败也能安然接受,不做无谓的忧怨;人格健康的人能和现实环境保持良好的接触,能正确、客观的观察适应环境,对生活的各项问题不逃避能积极面对、切实处理。 幼儿人格的研究成果 在人格特质方面有关儿童个体差异的研究,主要开始于本世纪初。 当时,以儿童做研究被试时
字器件 2) 推挽结构一般是指两个三极管分别受两互补信号的控制 ,总是在一个三极管导通的时候另一个截止 .要实现线与需要用 OC(open collector)门电路 .是两个参数相同的三极管或 MOSFET,以推挽方式存在于电路中 ,各负责正负半周的波形放大任务 ,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小 ,效率高。 输出既可以向负载灌电流,也可以从负载抽取电流。
本项目建设地点位于武平县十方镇,经营场地面积约 10000 m2,紧靠 S309 省道,交通便利,水电到位。 项目选址符合当地产业发展规划和总体布局要求。 建站地点在 S309 省道旁,交通便捷,区域完整,地势平坦,具有明显的区位优势和广阔的经济腹地。 第二节 总图运输 一、总图平面布置 本项目总图设计考虑了以下各个方面: 满足项目工艺要求、消防安全、运输条件,力求布置合理紧凑,物料流向通顺。
,品种,有些代理商一 个作物所代理品种可达几十个, 而同一品种还有多个企业生产。 ,销售能力,管理等限制,各级代理商进货都采取少量多次,边销边进方式,一次进货很少有。 有些经营户的某些品种一次进货仅进一件,甚至不到一件。 种子包装袋上标注的批次及生产日期可信度不高,绝大多数企业连陈年种子都未据实标明。 许多企业在种子包装袋上标注的都是一个生产日期,一个批次,从种子包装袋上难以判别种子真实批次
83。 13 1 一、 绪 言 随着国民经济水平的不断提高出租车行业迅速发展起来 ,出租车已经成为大众的代步工具,是人们出行的首选,同时出租车计费的准确性与人们的切身利益息息相关备受广大民众的关注。 本设计以单片机 AT89C51 为核心控制芯片,易于编程且控制简单 ,而且成本低廉,设计电路简单。 出租车起动后 自动 计费,上电后显示最初的起步价、里程计费单价、等待时间计费单价