基于pic两轴定位控制系统设计和实现

基于pic两轴定位控制系统设计和实现

ID:8254088

大小:28.50 KB

页数:6页

时间:2018-03-13

基于pic两轴定位控制系统设计和实现_第1页
基于pic两轴定位控制系统设计和实现_第2页
基于pic两轴定位控制系统设计和实现_第3页
基于pic两轴定位控制系统设计和实现_第4页
基于pic两轴定位控制系统设计和实现_第5页
资源描述:

《基于pic两轴定位控制系统设计和实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于PIC两轴定位控制系统设计和实现  摘要:文章主要研究基于单片机的两轴步进电机定位控制系统的设计,实现基于PIC16F877A单片机的最小控制系统并以步进电机为执行机构的位置控制,通过键盘输入有效行程与液晶屏显示,实现两个步进电机沿着X、Y轴运行至所设定的目标位置,并尽量避免步进电机的失步现象。Abstract:ThepapermainlyintroducesthetwoaxissteppingmotorcontrolsystemdesignwhichisbasedonSCM.ThedesignmainlytakesPIC16F877Ato

2、buildthecontrolsystemandalsorealizethepositioncontrolbymeansoftheLCDscreenandkeyboardinputingeffectivetrack,tomaketwostepmotormovealongtheX,Yaxistoreachthepositionfixinadvance,andtrytoavoidthephenomenonofstepmotor’sout-of-step.关键词:PIC16F877A;两轴位置控制;步进电机;L298N;LCD1602Keywords

3、:PIC16F877A;two-axispositioncontrol;steppermotor;L298N;LCD1602中图分类号:TP29文献标识码:A文章编号:1006-4311(2013)14-0057-0260引言双坐标定位工作台是由滚珠丝杠和滚动导轨传动构成,具有效率高、精度高、磨损小、寿命长、摩擦系数小、节能低耗、通用性强、结构紧凑等特点,广泛应用于激光焊接、激光切割、搬运、机床改造、机械手和实用教学等领域[1]。它可以用直流伺服电机、交流伺服电机、步进电机驱动。步进电机受脉冲控制,给电机一个脉冲,电机就转动一个角度。步进电机控

4、制双坐标定位工作台具有精度高、控制方式简单、成本低等优点[1]。1系统工作方式及控制方案确定本设计采用两相混合式步进电机,当电流流过步进电机定子绕组时,定子绕组就会产生矢量磁场,转子在此矢量磁场的作用下旋转一定的角度,使转子的磁场方向与定子的磁场方向一致,即给步进电机一个脉冲时,电机就会转动一个角度,电机带动负载就会向前运行一定位置[2],因此,步进电机的速度受给定脉冲的频率控制,位置受给定脉冲量控制,正反转受给定的绕组顺序控制。步进电机采用八拍工作方式,如表1所示,即将单四拍和双八拍结合起来交替通电运行。介于基于电子电路控制全靠电子元器件来实

5、现,仅能实现一般的细分任务,而且PLC受到扫描周期的影响,脉冲信号的频率只能达到几百赫兹,难以实现步进电机高速控制。2系统软件设计6根据设计要求,结合MPLAB-ICD软件,完成项目建立、源程序设计、软件仿真和在线系统调试[3][4]。由于一个步进电机需要有四路输出PWM波,要控制两个步进电机就需要八路PWM波,因此并没有直接选择PIC16F877A的RC1和RC2产生PWM波,而是采用I/O端口输出高低电平,进而达到输出PWM波的效果,其输出高电平的时间由定时器确定。2.1键盘扫描与并行显示设计采用“行反转扫描法”通过4×4矩阵式键盘的读取数

6、据,在本设计中RA0-RA3接列线,RA4-RA5和RE0-RE1接行线。扫描只说明了某个按键动作,但是想将此按键的功能实现就需要在程序中进行说明,将输入数字的按键转换为相应的字符,就需要在程序中定义一个函数。LCD1602的屏幕、光标的操作和读写操作都是用指令编程来实现[6]。2.2延时模块本设计是通过I/O端口产生的PWM波,即采用定时延时法,让I/O在一段时间内间隔输出高电平、低电平。PIC16F877A有3个定时器,采用具有启停开关的TMR1作为定时器,即定时器计数到达峰值时就会产生中断信号,主程序停止执行,程序进入中断程序,在中断中改

7、变输出的下一脉冲。2.3中断模块6在初始化程序中,将对应中断源的标志位全部清0,当计算到达FFFFH时中断条件满足,相关中断标志位将无条件置位,而与该中断源无关。此时程序进入中断程序,主程序的执行被中断,在中断将标志位清0之后,需要将TMR1的初始值重新赋值,此时必须和开始一样,在本设计中中断还加入了步进电机换相的程序,还有脉冲的最大值设置。2.4驱动模块通过单片机编程可以将输入的数字显示在显示屏上,并能对步进电机的正、反转、速度进行设置,然后需要将输入的参数转换对步进电机的控制程序。在程序中采用‘qidong’函数,其中将输入的X、Y轴的距离

8、根据公式—‘(输入距离)×400/4.81’计算数值转换为脉冲。脉冲只能输入整数,故此脉冲必须为整数,进而存在了一定的误差。然后就是正反转的转换,X、

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。