DIY编程器网

标题: 基于ATmega16的气动标记控制系统设计 [打印本页]

作者: admin    时间: 2015-4-26 20:09
标题: 基于ATmega16的气动标记控制系统设计
1 引言

气动标记机广泛应用于铭牌、各种零部件及汽车大梁,但随着需求变化,对标记机的稳定性、便携性、多任务性提出了更高要求。标记软件由以前的DOS系统升级到Win98、Win2000,WinXP等版本,功能越来越复杂,然而,硬件设计几乎没有变化。

由于普通标记机控制系统的标记专用软件将图形信息转化为脉冲信息后需通过I/O接口(ISA、PC扩展卡或并口)输出至驱动控制板,然后再由驱动电路执行机构工作。但目前大多数个人PC机、笔记本电脑都取消并口、串口配置的扩展I/O卡,而使用IJSB接口。普通标记机的PWM信号采用555振荡器和多个阻容元件构成一个无稳态的占空比和频率均可调的多谐振荡器,当调整PWM信号时,打开控制箱,则通过调节两只可调电阻调整PWM信号的频率和占空比。为了解决上述标记机控制系统存在的缺点,采用单片机ATmegal6和USB转换RS232接口器件CH341T组成通信接口,标记控制系统升级到USB接口:采用ATmegal6的相频修正PWM替换555振荡电路,可直接通过PC软件修正PWM信号的频率和占空比,使得PWM信号调整便捷。

2 ATmegal6相位与频率修正PWM模式

ATmegal6相位与频率修正PWM模式是一种频率与占空比精确的PWM信号。采用固定TOP值的工作模式,即16种PWM波形产生模式的模式8,简称相频修正PWM模式。

相频修正PWM模式基于双斜坡操作,其工作时序如图1所示。TCNTn重复从BOTTOM计数到TOP,然后又从TOP返回至BOTTOM。在一般比较输出模式下,当TCNTn向TOP计数时,若TCNTn与OCRlx相匹配,OClx清零,并置为低电平;当TCNTn向BOTTOM计数时,若TCNTn与OCRlx相匹配,OC1x置为高电平,工作于反向输出比较时正好相反。比较单元在OClx引脚输出PWM波形,其输出PWM的频率 变量N是分频因子(1、8、64、256或1024);变量fclk为CPU时钟;变量TOP是计数器最大值。如果PwM工作频率已知 ,则当TOP确定后,调整OCRlx值。即调整占空比来获得所需的PWM波形。采用固定TOP值工作模式时,建议使用ICRl寄存器定义TOP,这样OCRlA就可采用OC1A输出的PWM(共用相同4气动标记机控制系统软件设计采用改进后的标记机控制系统的软件设计分为安装在PC上的人机交互界面和烧写ATmegal6的实时控制软件。其前者负责把图形信息转换成脉冲信息及设置标记机运动相关参数,如速度、PWM频率和占空比等;后者负责接收PC发送的信息,并进行相关处理,再将当前硬件信息返回到PC。传输的信息分为两大类:一类是带固定信息头和固定信息尾的普通数据帧;另一类是无信息头和无信息尾的脉冲数据帧信号。这样可以大大减少在标记过程中的数据发送量,降低ATmegal6在实时标记过程中断脉冲输出任务处理接收串口数据的次数,使得执行机构运动更流畅。有信息头和信息尾的数据帧结构为:表1所示的主任务数据帧结构和表2所示的次任务数据帧结构。表2中的参数信息的字节个数是根据次任务识别信息区分是否带参数或带参数的字符个数。








步进电机的步进间隔时间是离散的,速度控制实质是控制步进电机产生步进间隔时间,使步进电机按给定的速度工作。若Ti为相邻两次走步间的时间间隔(秒),Vi为进给一步后的末速度(步/秒),a为下一步加速度。则利用 等式,计算相邻两步问的时间间隔。由于计算比较繁琐,因此,一般不采用在线计算控制速度,而是采用离线计算求得各个Ti,通过延时时间表把Ti编人程序中,然后按照表地址依次取出下一步进给的值,通过延时程序或定时器产生给定的时间间隔,发出相应的走步命令即可计算相邻两步问的时间间隔。图4为该标记控制系统的软件流程。




ATmegal6的基准时钟采用11.059 2 MHz无源晶体振荡器。串口通讯协议为波特率19 200 bit/s,8位数据位,1位停止位,无奇偶校验位。驱动器使用M542型(64细分),57BYG步进电机。最大标记幅面满足260 mm×260 mm,数字/字母(4 mm高)的刻写速度3-6个/秒。该系统适用于平面、旋转、平面一旋转混合式标记。

5 结语

基于ATmegal6和CH341T改进的标记机控制系统大大缓解PC机的工作负担;应用基于ATmegal6的相频修正PWM模式,可通过软件调整高频电磁阀所需的PWM信号;使用TIPl22三极管替换直流继电器后,驱动电路更简便和便宜。标记控制软件从原来常用的并口模式或插扩展卡的模式升级到USB模式,适合于台式PC机和笔记本电脑.现已实现多标记头在一台PC机控制下的异步工作。






欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2