陈 亮,蔡 盈,闵建东
(1.中国石化集团石油工程机械有限公司沙市钢管厂,湖北 荆州434001;2.昆明云内动力股份有限公司,昆明650224)
成型机数控MX-4与PLC400及上位机数据通讯的实现
陈 亮1,蔡 盈2,闵建东1
(1.中国石化集团石油工程机械有限公司沙市钢管厂,湖北 荆州434001;2.昆明云内动力股份有限公司,昆明650224)
为了能及时处理MEER公司生产的成型机数控MX-4的故障,提高生产效率,并为将来成型机上位机的技术改造升级做好技术储备,对数控MX-4与PLC400及上位机之间硬件通讯接口,MX-4与PLC400数据交换通道的具体实现方法、MX-4与上位机MODEM通讯测试流程、MX-4与对上位机的数据解析刷新方法等进行了分析研究。研究结果对同类故障的判定和处理提供了较好的思路。
成型机;MX-4;PLC400;上位机;通讯
中国石化集团石油工程机械有限公司沙市钢管厂(以下简称沙市钢管厂)的成型机控制系统是MEER公司十多年前的产品,上位机负责调型时将各类参数通过RS232端口以串口通讯协议传输给MX-4,上位机上有硬件密码狗。目前上位机使用年限已久,市场无备件可买,曾出现死机现象,造成停机时间过长,严重影响生产。由于以前对相关技术储备不足,影响了生产进度,造成了一定的经济损失,因此有必要对成型机多轴数控MX-4与PLC400及上位机通讯数据交换的具体实现过程进行深入研究,找到较好的解决和维护方案,以备将来不时之需。
MX-4与PLC400及上位机之间的硬件通讯接口如图1所示。由图1可见,MX-4 PM2U主轴X11A接口与PLC400之间PROFIBUS DP接口用DP电缆连接,二者采用PROFIBUS DP协议通讯。
图1 MX-4与PLC400及上位机之间硬件通讯接口
MX-4 PM2U主轴X11C接口通过力士乐公司提供的型号为MX4/PC/RS422/ADAPTER/50M专用电缆与力士乐协议转换器RS422接口连接,力士乐协议转换器RS232端口再与西门子上位机PC F145的RS232端口连接。在MX-4端发送/接收数据采用串口RS422协议,PC端发送接收数据采用串口RS232协议。
MX-4与上位机之间加入力士乐协议转换器是因为两者之间的距离超过了15m。国际标准要求RS232通讯最大距离25m,可靠距离15m,vmax=20 kb/s;而RS422通讯最大距离1 200m,vmax=10 Mb/s。生产现场使用的是19.2 kb/s。
要实现MX-4与PLC400通讯数据的交换,首先要在MX-4端SP-PROFIBUS并行程序中开辟数据接收和发送通道数组,在PLC400端硬件组态界面开辟与前者数组存储位数相同的读入通道(PIW)和写入通道(PQW),MX-4使用ECL程序指令(ECL program command)对 PLC400传递过来的数据进行读写操作和处理。
PLC400对数控MX-4读写通道的组态映射如图2所示。读入通道(PIW300-PIW363)和写入通道(PQW400-PQW463),分别为 64×8=512 bit。并且读入通道和写入通道的总位数要分别与SPPROFIBUS并行程序中的输出数组a Bus[out]及a Bus[in]的总位数512位一致,否则会发生通讯溢出错误。
图2 PLC400对数控MX-4读写通道的组态映射
需要指出的是,在PLC400组态MX-4读写通道的时候,一定要先组态读取通道(PIW300-PIW363),之后插入写入通道(PQW400-PQW463),二者顺序不能颠倒,否则MX-4无法与PLC400实现DP通讯。
MX-4端开辟的接收/写入PLC400数据通道是通过SP-PROFIBUS程序中的C语言来实现,具体程序如图3所示。
图3 MX-4端接收/写入程序
图3 中a Busin[**]是向量数组,因为在MX-4 A_VAR.ECL文件汇中已经将a Busin[**]等同于向量数组A00[**],向量数组的一维即为32 bit,所以MX-4定义的接收PLC数据的存储总长度为32*16=512 bit,正好与上述PLC组态中开辟写入通道(PQW400-PQW463)的总存储位数512 bit一样。
a Bus out[**]等同于向量数组A01[**],与 PLC400 中(PIW300-PIW363)相对应。
分析PLC400程序发现,由于PLC端以PIB及PQB分别对MX-4数据进行读取和写入,故a Busin[**]一维相当于4个连续的PQB**,a Bus out[**]一维相当于4个连续的PIB。例如: a Busin[0]与 PQB400、 PQB401、 PQB402 和PQB403对应,a Bus out[0]与PIB300、PIB301、PIB302和PIB303对应。
PLC400端通过组态PQW400-PQW463通道对MX-4端写入数据,并采用LAD的MOVE指令或STL的L/T指令实现传送。PLC400通过功能块FC49将PQW400写入MX-4,解析程序如图4所示。
图4 FC49写入MX-4的解析程序
MB400由M400.0~M400.7组成,依次代表急停/复位/泵1启/泵2启/泵3启/泵4启/泵5启/时钟模式,这PLC端的8个信息点通过PLC400传送给MX4在PLC里面的映射区PQB400(8位),由于MX4与PLC通过2.1章节中组态的互相映射关系,能自动读取PQB400里面的信息。程序中PQB400、PQB401、PQB402及PQB403为对应MX-4的a Busin[0]。
PLC400端通过组态PIW300-PIW363通道对MX-4端读取数据,并采用LAD的MOVE指令或STL的L/T指令实现传送。PLC读取MX-4a Bus[0]至a Bus[7]程序实例如图5所示。
图5 PLC读取MX-4的程序
MX-4端对PLC400数据进行接收解析和写入时,首先要定义MX-4系统轴32轴及PLC400通讯相关的参数,流程图及其程序解释如图6所示。
完成MX-4系统轴32轴通讯参数给定和开启通讯口后,MX-4便可通过SP-PROFIBUS并行程序接收和写入PLC数据。
接收指令如图7所示。
图6 MX-4系统轴参数S32及PLC400通讯参数的定义流程及其解释
图7 MX-4接收PLC的数据指令
接收数据解析:通过连续两条指令VS5_tem=a Busin[**]>>24&0x000000FF;VS5_A03=a Busin[**]>>8&0x0000FF00|VS5_tem获取a Busin[**]高字节,通过VS5_tem=a Busin[**]>>8&0x000000FF和VS5_A04=a Busin[**]<<8|VS5_tem&0x0000FFFF指令获取a Busin[**]低字节。
MX-4给PLC400发送数据指令如图8所示。
图8 MX-4给PLC的发送指令
上位机与MX-4通讯是通过OPC技术的串口通讯,硬件上二者间借助了MODEM(调制解调器)。要成功实现MX-4与上位机调型参数通讯数据的交换,首先要在MX-4编程调试软件ECL中的OPC窗口加载MX-4程序中定义的通讯数据项。之后上位机每次调型更改参数后,MX-4的SP_PROCON并行程序检测到上位机键盘有功能键按下时,启动数据交换功能。主要交换的数据为第1面/2面推板小车每步编码器数据设置,1面/2面倾斜台架角度设置,1面/2面模柄位置设置,设置插入某一步的数据,设置删除某一步的数据。
MX-4与上位机OPC通讯初始化部分的程序如图9所示。
MX-4与上位机需要交换的OPC数据项共有506个,定义格式分为两种,一种是整数型的(integer),另一种是位型的(boolen)。
例1:推管时模柄上升终点位置A100[13](整数型)定义为
A100[13]“MdSwTransPos”;;3;3(其中 MdSwTrans Pos为A100[13]在MX-4程序中宏定义)。
例2:上梁升到允许推管的最小位置触发点V202.17(位型)定义为
V202.17“vILmsPuMin”;;3;11(其中MvILms PuMin为V202.17在MX-4程序中宏定义)。
例3:上位机键盘功能键按下V231.24(位型)定义为
V231.24“vFFucKeyPres”;;3;11。
MX-4对上位机通讯数据解析处理是通过并行程序SP-PROCON来完成的。
由于在ECL的OPC加载窗口已经对串口的各参数进行了设置,在SP-PROCON并行程序中就不需要对串口波特率等进行设置。但每次上位机断电重启后,若MX-4与PC通讯异常,就需要对PC与MX-4之间串口调制解调器的初始化进行检测。调制解调器的初始化通过MX-4端的SP-MODEM子程序完成,其核心部分流程如图10所示。
图9 MX-4与上位机OPC通讯初始化程序
MX-4与PC之间串口MODEM通讯正常后,MX-4通过SP-PROCON并行程序实现对上位机传递数据的读取。MX-4中SP-PROCON的并行程序主要是对1 side/2 side的模柄位置、进口/出口推板小车每步位置、进口/出口台架每步角度等上位机成型设置参数的刷新读取,以及插入/删除某一步数据的刷新。各参数与对应的SPPROCON中向量变量见表1。
图10 MX-4与PC通讯异常MODEM测试流程
表1 成型参数与对应变量对照表
SP-PROCON并不是实时读取上位机设置的各类成型参数,而是通过程序中的相关标志位来判断上位机是否有界面打开且有功能键按下,如果有就会启动执行并刷新接收数据。SPPROCON并行程序中对某向量变量进行插入刷新和删除刷新,采取的方法是类似于C语言链式队列插入操作和删除操作的方法。SPPROCON中插入某一步刷新数据时,为防止溢出,通常采取少用一个存储单元来避免。
介绍了数控MX-4与PLC 400及上位机之间硬件通讯接口、MX-4与PLC400数据交换通道的互相映射的实现、MX-4与PLC互相读取/写入数据的实现方法及注意事项、MX-4与上位机MODEM通讯测试流程以及MX-4与对上位机的数据解析刷新方法等。希望能对使用MEER成型机的钢管厂家及时处理设备故障和技术改造升级有一定的借鉴和参考作用。
[1]周秀峰,罗红福,蔡小青.MX-4多轴数控系统在直缝焊管成型机上的应用[J].焊管,2004,27(6):76-80.
[2]罗红福.PROFIBUS-DP在铣边机控制系统中的应用[J].焊管,2005,28(3):40-42.
[3]刘华波,王雪,何文雪.组态软件WINCC及其应用[M].北京:机械工业出版社,2010.
[4]王晓颖,周淑军,闻康,等.PLC埋弧焊管渣清理收集装置控制系统中的应用[J].钢管,2006,35(6):36-38.
[5]徐驰,马占昌,樊萍.钢管加工中心自动找正电气系统的研制与应用[J].钢管,2009,38(6):64-68.
[6]陶海燕.PLC在钢管冷拔机电气控制系统中的应用[J].钢管,2010,39(6):57-59.
[7]宗波,李淑彬,王国顺.基于PROFIBUS现场总线的水压试验机控制系统[J].钢管,2011,40(3):55-58.
[8]陈昶.S7-300型PLC在立式锥形辊穿孔机顶杆小车上的应用[J].钢管,2012,41(2):67-72.
[9]张卫国.S7-300在冷弯设备中的应用[J].电气技术,2007(3):87-91.
[10]朱明清,邓广龙,李喜东.西门子S7-300PLC在气体分段计量中的应用[J].自动化技术与应用,2011,30(1):65-67.
Research on Data Communication among Forming Machine Numerical Control MX-4,PLC400 and Upper-machine
CHEN Liang1,CAI Ying2,MIN Jiandong1
(1.Shashi Steel Pipe Works,SINOPEC Petroleum Engineering Machinery Co.,Ltd.,Jingzhou 434001,Hubei,China;2.Kunming Yunnei Power Co.,Ltd.,Kunming 650224,China)
In order to timely dispose the faults of forming machine numerical control MX-4 produced by MEER Company,improve production efficiency,and prepare technical reserves for the technology upgrade of forming machine PCin future,it conducted hardware communication interface among numerical control MX-4,PLC400 and upper machine.It analyzed and studied the concrete realization method of data exchange channels between MX-4 and PLC400,the communication testing process between MX-4 and upper computer MODEM,MX-4 and the upper machine data resolution refresh methods.The research results provided a good idea for the similar fault judgment and processing.
forming machine;MX-4;PLC400;upper computer;communication
TG335.75
B
10.19291/j.cnki.1001-3938.2016.12.011
陈 亮(1986—),男,工程师,主要从事焊管行业电气控制方面的设计工作。
2016-09-28
谢淑霞