6ES7222-1EF22-0XA0传授代理
1引言
在工业控制领域中,plc作为一种稳定可靠的控制器得到广泛的应用。但它也有自身的一些缺点,即数据的计算处理和管理能力较弱,不能给用户提供良好的界面等。而计算机恰好能弥补plc的不足,它不但有很强的数据处理和管理能力,能给用户提供非常美观而又易于操作的界面。将plc与计算机结合,可使系统达到既能及时地采集、存储数据,又可处理和使用好数据,两者结合的关键是plc与计算机之间的通信。本文以omron公司的cpmia小型plc为例,详细的讨论了plc与计算机通信的原理和用vb如何实现plc与计算机的通信。
2通行原理与方法
上位机要能够通过plc监控下层设备的状态,就要实现上位机与plc间的通信,一般工业控制中都是采用rs232c实现。上位机向plc发送查询数据的指令(实际上是查询plc中端子的状态和dm区的值等),plc接收了上位的指令后,进行校验(fcs校验码),看其是否正确,如果正确,则向上位机传送数据(包含首尾校验字节)。否则,plc拒绝向上位机传送数据。上位接收到plc传送的数据,也要判断正确与否,如果正确,则接收,否则,拒绝接收。
由于cpm1a没有提供串行通信口,我们利用其提供的外设端口实现通信。plc与计算机之间的连接是通过omron提供的专用电缆cqm1-cif01来实现的,其硬件连接图如图1所示。
3plc与计算机间的通信规约
计算机与plc间的通信是以“帧”为单位进行的,并且在通信的过程中,计算机具有更高的优先级。计算机向plc发出命令帧,plc作出响应,向计算机发送回响应帧。其中命令帧和响应帧的格式如下:
(1)命令帧格式。为了方便计算机和plc的通讯,cpm1a对在计算机连接通信中交换的命令和响应规定了相应的格式。当计算机发送一个命令时,命令数据主准备格式如图2所示。
其中@放在首位,表示以@开始,设备号为上位机识别所连接的plc的设备号。识别码为命令代码,用来设置用户希望上位机完成的操作,fcs为帧检验代码,一旦通信出错,通过计算fcs可以及时发现。结束符为“*”和cr回车符,表示命令结束。
(2)响应帧格式。由plc发出的对应于命令格式的响应帧格式如图3所示。
其中,异常码可以确定计算机发送的命令是否正确执行。其它的与正文中的含义相同。正文仅在有读出数据时有返回。
4通信程序的设计
为了充分利用计算机数据处理的强大功能,我们可以采用计算机有优先权的方式,在计算机上编写程序来实现计算机与plc的通信,计算机向plc发出命令发起通信,plc自动返回响应。本文中采用vb来编写计算机与plc间的通讯程序。在vb中提供了通信控件—应用通信控件(mscomm),实现通过串行端口传送和接受的功能。
下面介绍mscomm控件的属性:
*commport:设定通信连接端口代号,程序必须指定所要使用的串行端口号,bbbbbbs系统使用所设定的端口与外界通信。
*portopen:设定通信口状态,若为真,通信端口打开,否则关闭。
*settings:设定通信口参数,其格式是"bbbb,p
,d,s",其中bbbb为通信速率(波特率),p为通信检查方式(奇偶校验),d 为数据位数,s为停止位数,其设定应与plc的设定一致。
*bbbbb:将对方传送至输入缓冲区的字符读入到程序。
*output:将字符写入输出缓冲区。
*inbuffercount:传回接收缓冲区中的字符数。
*outbuffercount:传回输出缓冲区中的字符数。
*bbbbblen:设定串行端口读入字符串的长度。
*bbbbbmode:设定接收数据的方式。
*rthreshold:设定引发接收事件的字符数。
*commevent:传回oncomm事件发生时的数值码
*oncomm事件:无论是错误或事件发生,都会触发此事件。
(1)控件参数的初始化。
初始化程序如下:
mscomm.comport=2`使用串口com2
mscomm.settings="9600, e, 7,2" `波特率9600,偶校验,7位数据位,2位停止位
mscomm.portopen=true`打开通信端口,准备通信
(2)计算校验码fcs,计算fcs的vb自定义函数如下:
functionfcs(byval bbbbbstr as bbbbbb) as bbbbbb
dim slen, i,xorresult as integer
dim tempfes asbbbbbb
slen=len(bbbbbstr)`求输入字符串长度
xorresult =0
for i = 1 toslen
xorresult =xorresult xor asc(mid$(bbbbbstr, i, 1)) `按位异或
nexti
tempfes=hex$(xorresult)`转化为16进制
iflen(tempfes)=1then tempfes =“0”+tempfes
fcs =tempfes
endfunction
(3)计算机与plc通信程序。
主要是一个自定义函数。
functionreaddata(byval bbbbbstr as bbbbbb, byval num as integer) asbbbbbb
dim outputstr asbbbbbb
dim inbbbbbb asbbbbbb
dim returnstr asbbbbbb
dim endbbbbbb asbbbbbb
dim fcsbbbbbb asbbbbbb
dimreturnfcsbbbbbb as bbbbbb)
mscomm.inbuffercount=0
outputstr=bbbbbstr+fcs(bbbbbstr)+“*”`给出命令帧
mscomm.output=outputstr+chr$(13)`向plc传送命令帧
do
doevents
loop whilemscomm.inbuffercount < 15
inbbbbbb=mscomm.bbbbb`获取plc的响应帧
`结束码判断
endbbbbbb =mid$(inbbbbbb, len(inbbbbbb) -
num- 5,2)
if endbbbbbb ="13" then
readdata ="error"
exitfunction
elseif endbbbbbb= "14" then
readdata ="error"
exitfunction
elseif endbbbbbb= "15" then
readdata ="error"
exitfunction
elseif endbbbbbb= "18" then
readdata ="error"
exitfunction
elseif endbbbbbb= "a3" then
readdata ="error"
exitfunction
elseif endbbbbbb= "a8" then
readdata ="error"
exitfunction
endif
`响应帧校验
endbbbbbb =mid$(inbbbbbb, 1, len(inbbbbbb) - 4)
returnfcsbbbbbb= mid$(inbbbbbb,len(inbbbbbb) - 3, 2)
fcsbbbbbb =fcs(endbbbbbb)
if fcsbbbbbb<> returnfcsbbbbbb then
readdata ="error"
exitfunction
endif
returnstr =mid$(inbbbbbb,
len(inbbbbbb) -num - 3, num)
readdata =returnstr
endfunction
从上面程序可以看到,计算机对plc返回的响应帧要进行fcs校验,并利用异常码排除返回的异常数据,这样不但可以提高计算机获取信息的正确性,提高了计算机监控的实时性。
5 结束语
本文介绍的通信方法在我校cims研究中心自行研制的一套机电一体化设备中得到实施运用,经试验运行,证明这种通信方法稳定、可靠,确实是一种非常有效的方法。将plc与计算机通信网络连接起来,plc作为下位机,计算机作为上位机,形成一个优势互补的自动控制系统,实现了“集中管理,分散控制”。其中各个plc子系统或远程工作站在生产现场对各个被控对象进行控制,利用网络连接构成一个plc综合控制,满足了现代自动化系统向信息化、网络化、智能化的过渡。
1 引言
基于伺服电机直接驱动的折弯机数控技术是九十年代发展起来的高新技术,属于先进制造技术前沿。它的研究和开发工作对于提高国产设备综合性能指标和打破国外在这一技术上的垄断位置有重要意义。随着PLC和触摸屏技术的发展,在折弯机中的应用都得到了很快的发展,为折弯机控制系统提供了新思路、新方法,也为生产效率的提高、为人类上产和生活水平的提高有着重要意义。PLC和触摸屏均采用开放性的编程方式,为折弯机的灵活性和创新性的控制方法提供了基础。
2 液压板料折弯机介绍
2.1 液压板料折弯机设备结构
液压板料折弯机设备外形见图1,其结构主要由机架、脚踏开关、折弯角度定位机构、水平挡料定位机构、下压折弯机构和电气控制系统等组成。
折弯角度定位机构由伺服电机和链条传动机构组成,可根据设定的折弯角度微调或自动进行高度调整,保证了高度定位的精度。水平挡料机构由伺服电机和丝杠传动机构组成,进行折弯工件的宽度定位,可微调定位也可自动定位,连续折弯中可进行多工步自动选择,依次实现对多个位置的定位折弯。下压折弯有液压机构执行,配合脚踏开关可进行点动、单次和连续三种工况。
2.2 液压板料折弯机工作过程
折弯机工作过程可分为点动、单次和连续三种工作方式。
点动:选择点动操作档位,踩下脚踏慢进,下压折弯机构自动下压,碰下行程开关停止下压;下压过程松脚踏慢进,停在当前运行位置;下压过程踩下脚踏回程,下压折弯机构自动回程,碰上行程停止回程;回程过程松开脚踏回程,停在当前回程位置。
单次:设定保压时间,卸压时间,水平挡料进、退距离,调整好水平挡料位置;选择单次操作档位,下压折弯机构不在上行程开关位,自动回上行程开关位;踩下脚踏慢进,下压折弯机构自动下压;碰下行程开关时,水平挡料机构后退设定距离,自动进行保压;保压时间到自动进行卸压,卸压时间到下压折弯机构自动回程,水平挡料机构自动前进设定距离;碰上行程开关,单次折弯动作结束。
连续(工步):
(1)设定保压时间,卸压时间,水平挡料进退距离,调整好水平挡料位置;
(2)设定工步数以及每个工步的挡料位置、折弯张数;
(3)选择连续操作档位,下压折弯机构不在上行程开关位自动回上行程开关位;踩下脚踏慢进,下压折弯机构自动下压;碰下行程开关时,水平挡料机构后退设定距离,自动进行保压;保压时间到自动进行卸压,卸压时间到下压折弯机构自动回程,水平挡料机构自动前进设定距离;碰上行程开关,一次折弯动作结束,进行下一次折弯。
(4)当前工步折弯次数完成,碰上行程开关,水平挡料位置自动进行调整,进入下一工步折弯动作。
(5)所有工步动作完成,碰上行程开关,连续折弯动作结束。
图3 工步工作流程图
3监控系统设计
液压板料折弯机控制系统由控制部分、驱动部分和监控部分组成。系统结构如图4所示。
3.1 PLC介绍
3.1.1 PLC工作原理
PLC工作方式又扫描方式和中断方式,所谓扫描方式是周而复始的执行一系列任务。任务循环执行一次称为一个扫描周期,其扫描的工作过程如下:
(1)读输入:将物理输入点上的状态复制到输入过程映像寄存器中。
(2)执行逻辑控制程序:执行程序指令并将数据存储在变量存储区中。
(3)处理通讯请求:即执行通讯任务。
(4)执行CPU自诊断:检测固件、程序存储器和扩展模块是否工作正常。
(5)写输出:在输出过程映像寄存器中存储的数据被复制到物理输出点。
中断方式是指当中断事件发生时则立即执行一次相应的中断服务程序,不受扫描周期的影响,响应速度快,从而提高了PLC控制的可靠性。中断事件不发生时,不扫描中断服务程序,这样可以节约扫描时间,减少扫描周期。
3.1.2 PLC特点
(1)PLC逻辑判断和控制能力强,抗干扰能力强,可靠性好。PLC从硬件上采用隔离、滤波措施有效地抑制和消除了干扰。
(2)扩展性和柔性好,且可移植性好,在不改变硬件的情况下,只改变软件的程序就可以实现不同的功能。
(3)编程语言丰富,可以采用不同语言编写程序,®LM系列PLC支持6种编程语言,包括:梯形图(LD)、指令表(IL)、结构化文本(ST)、功能块图(FBD)、顺序功能图(SFC)和连续功能图(SFC)。给编写程序带来很大方便。
3.2 监控系统方案
监控系统要实现功能主要是:(1)控制参数的设置;(2) 状态和数据显示;(3)液压板料折弯机控制。本系统采用主、从站方式,通过MODBUS标准协议实现该监控系统的通讯功能,其中主站选用和利时触摸屏。考虑到控制系统的安全性和抗干扰性要求,结合PLC的特点,该系统控制部分采用PLC控制。从站选用LM系列PLC。其结构图如图4所示。
图4 控制系统结构图
3.3 控制系统硬件
3.3.1 PLC选型
本系统采用LM系列专用高速运动控制模块LM3106A控制。LM3106A是专为实现高速运动控制而设计的模块,主要用于实现步进或伺服电机的定位控制。
LM3106A本体集成14通道24VDC输入, 10通道晶体管输出,其输出有2个公共端,输出通道采用5-24VDC驱动电源供电,具有两路高速输出,可做PWM(100KHz)或PTO(50KHz)使用,还可以通过RS-232通讯口与和利时触摸屏进行通讯。
表1为控制系统的I/O配置。
表1 系统I/O分配表
信号类型 | 设备名称 | PLC地址 | 信号类型 | 设备名称 | PLC地址 |
开关量输入信号(DI) | 上行程开关 | %IX0.4 | 开关量输出信号(DO) | 快进 | %QX0.0 |
连续选择按钮 | %IX0.5 | 慢进 | %QX0.1 | ||
点动选择按钮 | %IX0.6 | 回程 | %QX0.2 | ||
下行程开关 | %IX0.7 | 角度步进脉冲 | %QX0.3 | ||
单次选择按钮 | %IX1.0 | 角度步进方向 | %QX0.4 | ||
慢进脚踏 | %IX1.1 | 挡料步进方向 | %QX1.0 | ||
回程脚踏 | %IX1.2 | 挡料步进脉冲 | %QX1.1 | ||
启动 | %IX1.3 | ||||
停止 | %IX1.4 |
3.3.2 驱动电机选型
液压板料折弯机驱动部件主要包括挡料伺服电机、角度伺服电机和竖直液压气动装置。
伺服电机及驱动器均采用和利时公司的产品,其中“蜂鸟(Hummer)”系列低压无刷伺服电机驱动器是北京和利时电机公司新推出的适合低压直流供电的、小体积、高性能全数字伺服驱动器。硬件上采用32位高速RISC专用控制芯片,高效功率变换技术,以及创新编码器反馈技术;软件上采用先进的电机控制策略,完全以软件方式实现了电流环、速度环、位置环的闭环伺服控制;驱动器嵌入了运动控制功能,通过通讯接口即可完成如多段点到点、直线插补、圆弧插补等功能。挡料和折弯角度分别采用伺服电机进行定位,达到了jingque定位和角度调整,保证了设备控制要求及运行效果。
往复下压折弯动作由油泵和气动装置完成,通过PLC控制电磁阀的得、失电进行。
3.3.3 监控部分
上位监控部份由一台和利时触摸屏,配以监控软件来完成,触摸屏上可以进行动作操作,运行参数设定,工作状态选择以及显示PLC的输入输出点工作状态。图5和图6为触摸屏部分监控画面。
4 液压板料折弯机特点
液压板料折弯机适用于大型钢结构件,铁塔、路灯杆、高灯杆、汽车大梁、汽车车货箱等相关行业。基于和利时公司PLC和伺服自动控制系统的液压板料折弯机有以下特点:
(1) 采用电液伺服全闭环控制系统,折弯精度、重复定位精度达到很高的水准。
(2) 直接进行角度编程,具有角度补偿功能。
(3)每步程序可设定板料折弯位置(后档料X,相当于伺服的位置)、凸模具下压位置(Y值,相当于凸模具下降的距离)、折弯次数、保压时间4个参数。
(4)具有多工步编程功能,可实现多自动运行,每一步执行完后,触摸屏都要自动把下一步参数输入PLC和伺服,实现多工步零件一次性加工,提高生产效率。
该系统已投入生产使用,运行稳定可靠,控制精度高,维护使用方便,受到用户青睐。
5 结语
设备采用性价比极高的和利时PLC提供了整体解决方案,替代了原来的单片机控制系统,避免了干扰和不稳定因素的影响,保证设备运行达到好的控制效果。设备对角度调整和挡料定位精度要求较高,采用伺服电机进行角度调整和挡料自动定位控制,走位准确,能够满足复杂工艺的要求。