本文基于Modbus串口协议的威伦触摸屏与通用型C8051系列单片机作为硬件平台,结合MCX314运动控制芯片,实现了一个结构简单、成本低、有良好人机交互且控制精度高的自动钻孔系统。
1 自动钻孔系统架构
为实现良好的人机交互,系统通过触摸屏实时显示钻头运行状态,包括位置,转速,钻孔速度等参数,同时可以对转速,钻孔速度,钻孔深度,攻牙牙距等参数进行设置,设置完成后通过触摸屏上的按键分别进行自动钻孔、自动攻牙、啄钻等操作。
系统中,钻头运行距离以毫米为基本单位,要求达到小数点后2位的精度,也即10-2mm,对钻孔速度则以10-2mm/s为最小调节精度。最高转速200 r/s,最大钻孔深度为200 mm。攻牙过程中,牙距值范围为0.01~1.99。同时要求提供可设定次数的啄钻操作。
人机交互界面采用***威伦电子公司开发的MT6100i触摸屏,使用Modbus协议与微处理器C8051系列单片机进行通信。微处理器通过总线方式对MCX314运动控制芯片进行控制与参数读取。MCX314芯片通过光电耦合驱动伺服电机,带动钻头,整体系统框架如图1所示。
2 系统主控板硬件设计
主控板以微控制器为核心,实现对运动控制芯片的控制以及与触摸屏的串口通信,并对运动控制芯片的输出脉冲进行光电耦合,作为伺服电机的驱动输入。
2.1 主控板硬件框图
主控板主要由微处理器C8051F040和MCX314运动控制芯片构成,两者通过16位数据/地址总线方式通信,MCU通过读写运动控制芯片内部寄存器对其输出脉冲的开关、速率和脉冲量等进行设置,并经过光电耦合电路驱动伺服电机做出不同的动作。主控板提供RS 232的串行接口作为MCU与触摸屏的通信接口,通过Modbus协议由触摸屏控制MCU对运动控制芯片发送指令以及读取数据。同时还提供E2PROM作为参数存储模块,可将设定的运行参数保存起来,系统启动时先读取E2PROM获取参数,而无需每次开机都重新设置参数。主控板框图如图2所示。
2.2 主拉芯片C8051F040
C8051F040单片机是美国Cygnal公司生产的完全集成的混合信号系统级芯SoC,具有64 KB FLASH、4 352 B RAM,CAN控制器2.0,2个串行接口,5个16位定时器,12位A/D转换器,8位A/D转换器及12位D/A转换器等,它内部还带有JTAG接口,在使用JTAG调试时,所有的模拟和数字外设都可全功能运行,使调试变得非常方便。
2.3 运动控制芯片MCX314
MCX314是日本NOVA公司研制的DSP运动控制专用芯片,通过它可以控制由步进电机驱动器或由脉冲型伺服电机驱动的4轴的位置、速度和插补,从而进行定位控制、插补驱动、任意两轴的圆弧插补,脉冲速度范围在1 pps~4 Mpps,可满足绝大多数的高速驱动的需求。在MCX314中对应于每轴电机都有4个在驱动过程中使之减速停止/立即停止的外部输入信号。通过对这些输入信号的分配可以进行原点附近的高速检
索、原点检索、编码器Z相检索等,该芯片还有输入位置控制信号、报警信号和编码器信号,而且,在驱动过程中还可以实时读取控制器运动轨迹的理论位置、实际位置、驱动速度、加速度、加减速度状态等。
MCX314运动控制芯片的性能指标如下:
(1)能够同时控制4个轴的伺服电机或步进电机;
(2)输出的驱动速度范围是从1 pps~4 Mpps;
(3)脉冲输出频率的精确度大于±0.1%(在CLK=16 MHz时);
(4)圆弧/直线插补中,坐标范围是从当前位置到-8 388 607~+8 388 607间;
(5)圆弧/直线插补中,插补精度是±0.5 LSB;
(6)圆弧/直线插补中,插补速度范围是从1 pps~4 Mpps;
(7)连续插补的最大驱动速度是2 MHz。
为达到系统对速度及位置精度的控制要求,设计中采用了10-3mm/p的下钻电机与10-3rad/p的转动电机。
3 软件设计
3.1 系统软件流程
系统软件包括触摸屏软件与MCU程序。其中触摸屏软件设计包括操作界面与各寄存器地址分配,通过威伦电子公司的配套组态软件Easy Builder系列可以方便地完成这部分软件的设计与下载。本系统中触摸屏参数设置为:PLC类型为Modbus RTU,通信口类型设置为RS 232/2W,波特率、数据位个数、效验位、停止位个数设置与MCU系统一致。MCU通过串口中断接收触摸屏指令,进而控制运动芯片,其程序主要包括MCU初始化与运动芯片初始化、串口中断程序、MCX314运动芯片读/写驱动、钻孔/攻牙/啄钻操作函数以及E2PROM读写程序。MCU主函数流程如图3所示,串口中断程序流程如图4所示。
评论
查看更多