基于Modbus协议与MCX314的自动钻孔系统设计

发布者:冰心独语u最新更新时间:2014-03-05 来源: elecfans关键字:Modbus协议  MCX314  自动钻孔系统 手机看文章 扫描二维码
随时随地手机看文章

  本文基于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个在驱动过程中使之减速停止/立即停止的外部输入信号。通过对这些输入信号的分配可以进行原点附近的高速检[page]

  索、原点检索、编码器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所示。

3.2 Modbus协议

  Modbus协议是MODICON公司1979年为自己的PLC产品而推出的一个开放式现场总线通信协议,是应用于电子控制器上的一种通用语言,是一种有效支持控制器之间以及控制器经网络(如以太网)与其他设备之间通信的协议,现已成为一种通用工业标准,不同厂商生产的控制设备可以通过该协议连成工业网络,集中监控。

  Modbus协议定义了一种通用的消息结构,描述了控制器请求访问其他设备的一个过程,包括如何回应来自其他设备的请求,以及怎样侦测错误并记录,并制定了消息域和内容的公共格式。当在此网络上通信时,每个控制器都拥有一个惟一的地址,并识别按地址发来的消息,最终决定要产生何种动作。如果需要回应,则控制器将生成反馈信息并按此协议格式回应。[page]

  3.3 Modbus RTU通信模式

  Modbus协议包括2种传输模式,即ASCII码和RTU模式。控制器可以设置为2种传输模式中的任何一种在标准的Modbus网络上通信。本设计采用RTU传输模式。

  当控制器设备选用RTU模式通信时,消息中的每个字节包含2个4位的十六进制字符。这种方式的主要优点是:在同样的波特率下,能够比ASCII码方式传送更多的数据。Modbus RTU主机消息帧结构如表1所示。

  

c.jpg

 

  其中,地址码代表从机地址,设置为0,表示广播消息。功能码表示主机指令,包括读/写控钊状态、读/写寄存器等。数据区则为读/写寄存器地址及读取位数。RTU模式采用CRC校验。

  相应的从机返回消息帧结构与主机消息帧结构类似,但是附加了数据字节长度,如表2所示。

  

d.jpg

 

  3.4 MCX314运动控制芯片控制

  MCU通过16位数据/地址总线与MCX314进行通信,可选择8位/16位数据总线格式。本设计采用了8位数据总线格式,在16位总线中分配8位为数据线,4位为地址线,4位为时序控制线。

  MCX314是寄存器控制型芯片,对其所有操作都基于寄存器的读/写,按照其发送时序,先发送地址,后读取数据,其基本读/写函数实现如下:

  读8位寄存器函数(写寄存器函数与其类似,只需写完置位P7):

  

e.jpg

 

  MCX314内部寄存器均为16位,基于以上读8位寄存器函数实现读16位寄存器函数(写寄存器函数类似):

  

f.jpg

 

  由于程序分别在串口中断与主函数处理指令过程中调用MCX314读/写寄存器函数,可能导致函数重入,造成寄存器读/写数据紊乱,因此在函数内部定义标志位,设计读/写函数为原子操作,防止函数重入。

  基于以上读/写寄存器函数可对MCX314进行一系列操作控制,包括写入数据、读取数据、驱动指令与插补指令。在本设计中,写入数据及读取数据分别对应参数设置与系统状态的实时显示;驱动指令用于钻孔运动与啄钻运动;插补指令用于限定牙距的螺丝攻牙运动。通过上述指令实现以下系统操作函数,即运动芯片初始化函数、原点搜寻运动函数、定距手动钻孔函数、自动钻孔函数、啄钻函数、手动攻牙函数、自动攻牙函数等。

  4 结语

  利用Modbus串口协议开放、透明、开发容易等优点,结合MCX314运动控制芯片的高精度可控性,以及编程方便的总线接口方式,设计出成本低、操作简单、人机交互界面友好的触摸屏自动钻孔系统。本系统对位置与速度控制可分别精确至1×10-3mm与1×10-3mm/s,最高速度分别为4 000 mm/s与4 000 rad/s,最大钻孔深度可达8 000 mm,达到了工业生产中进行自动钻孔或螺丝攻牙的性能指标,并在工业生产中通过初步测试,工作稳定。由于Modbus协议具有网络控制能力,在实际工业生产中可并联多个钻孔系统共用一个触摸屏,通过触摸屏同时控制不同系统进行不同操作,或者采用广播模式控制多个系统进行同一操作,进一步实现低成本和自动化。

关键字:Modbus协议  MCX314  自动钻孔系统 引用地址:基于Modbus协议与MCX314的自动钻孔系统设计

上一篇:大气机高度输出接口电路的设计
下一篇:什么是mcu_mcu是什么意思

推荐阅读最新更新时间:2024-03-16 13:37

Modbus协议下单片机与eView触摸屏的通信方法
Modbus协议由于其具有开放性、透明性、成本低、易于开发等特点,已成为当今工业领域通信协议的首选。 本文介绍了一种基于Modbus通信协议的eView触摸屏与常用的51单片机的通信方法。该方法通过C51编程实现Modbus通信,在51系列单片机上具有通用性,有一定的借鉴作用。 工业控制中经常需要观察系统的运行状态或者修改运行参数。触摸屏能够直观、生动地显示运行参数和运行状态,而且通过触摸屏画面可以直接修改系统运行参数,人机交互性好。单片机广泛应用于工控领域中,与触摸屏配合,可组成良好的人机交互环境。 触摸屏与单片机通信,需要根据触摸屏采用的通信协议为单片机编写相应的通信程序。Modbus协议是美国Modicon公司推出的,
[电源管理]
<font color='red'>Modbus协议</font>下单片机与eView触摸屏的通信方法
ModBus协议在工业控制系统中的应用
一、ModBus协议简介   当今世界,工业控制已从单机控制走向集中监控、集散控制。在进入网络时代的今天,工业控制器连网也为网络管理提供了方便。ModBus协议就是工业控制器的网络协议中的一种。ModBus协议是Modicon公司于1978年发明的一种用于电子控制器进行控制和通讯的通讯协议。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以进行通信。它的开放性、可扩充性和标准化使它成为一个通用工业标准。有了它,不同厂商生产的控制设备可以简单可靠地连成工业网络,进行系统的集中监控,从而使它成为最流行的协议之一。   ModBus协议包括ASCII, RTU, PLUS, TCP等,并没有规定物理层。此
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved