时间:2024-09-03
郴州职业技术学院 张玲玲
当今社会,电动机在工农业生产、人们日常生活中起着十分重要的作用。其中,步进电机是最常见的一种控制电机,在各领域中:如加工中心,打印机、自动化生产线等等场合都可以得到应用。研究伺服电机的控制系统,对提高控制精度和响应速度、节约能源等都具有重要意义。本系统是基于80C51的伺服电机控制系统,在脉冲控制控制作用下控制电机运行于0-3000转/分钟,并实现正转与反转。
在自动控制系统中,伺服电动机作为执行元件,作用是把所收到的电信号转换成电动机轴上的角位移或角速度输出。它有直流电机和交流电机之分。其中交流伺服有更广的适用性。交流伺服系统已成为当代高性能伺服系统的主要发展方向。
本文介绍如何使用C8051F060来控制交流伺服电机,使电机运行于0-3000转/分钟的任意转速。
图1所示是伺服电机控制系统,它以C8051F060为核心,同时还有显示电路、编码器、编码器处理电路、RS485通信电路、伺服电机驱动电路、伺服电机。
图1 伺服电机控制系统图
C8051F060是Silicon Lab公司出品的完全集成的混合信号片上系统型MCU。它使用了Cygnal专利的高速、流水线结构以及与MCS-51指令集完全兼容的CIP251微处理器内核。C8051F060具有P0-P7,共计8个端口,64个可以实际使用的IO。
如图2所示,系统使用6个LED数码管显示伺服电机的转速,LED数码管采用MC14489芯片进行驱动,MC14489采用SPI通信方式和CPU进行通信,可以节省IO口的使用。
系统采用多个BCD拨码开关来设置系统运行参数。BCD拨码开关是十进制输入,BCD码输出,又称为8421拨码开关。每位BCD拨码开关可输入1位10进制数。每个BCD拨码开关后面有5个接点,其中C为输入控制线,另外4根是BCD码输出信号线。拨盘拨到不同的位置时,输入控制线C分别与4根BCD码输出线中的某根或某几根接通。其接通的BCD码输出线状态正好与拨盘指示的10进制数相一致,符合2-10进制编码关系。
BCD拨码开关通过如图3所示电路,读取开关的设置。
图3 BCD码处理电路
BCD_S1-BCD_S8是BCD码输出信号线,BCD_1—BCD_6接的是BCD拨码开关的控制线C,每次P2.0跳变一次,就会选中具体的一个BCD拨码开关的控制线,再读取4根信号线上面的值,就可以将BCD拨码开关设置的值读取进来。根据设置的值,使电机运行于相应的转速。
现有的伺服电机的控制方式有脉冲控制、模拟信号控制两种比较常用的控制方式,由于模拟信号控制方式对于速度变化不确定,而且精度很高的场合缺乏灵活性。故通常采用脉冲控制的方式。
PWM信号的产生有许多种方式,比较常用的有模拟电路、单片机I/O端口的输出及单片机PWM部件的输出。
本设计中采用C8051F020单片机内部的捕捉/比较寄存器来产生PWM信号。如下:启动PCA时钟计数器PCA0进行加1计数,当PCA0计数值与PCA0CPn相等时,CEXn引脚为输出高电平,当PCA溢出时。CEXn引脚输出低电平。因此改变PCA0CPn的值,可以输出占空比可变的波形。(黄慧,等.基于C8051F020的PWM输出频率分析[J].数据采集与处理,2009,10)
图2 LED显示电路
本设计采用16位PWM输出,能受到高分辨率控制;允许CF以及CFFn中断;占空比为1/2,比较/捕捉寄存器初值经过计算为0x8000。PCA初始化程序如下:
本文介绍了通过使用C8051F060单片机产生的脉冲信号来控制伺服电机,具有成本低,控制灵活等特点。可以应用于各种场合。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!