西门子模块6ES7231-7PF22-0XA0一级代理
西门子模块6ES7231-7PF22-0XA0一级代理
一、概述
该切管机主要用于电热管行业的各种管材切割切断加工,比如切割钢管、铝管、铁管等。该控制系统原来采用继电器、行程开关控制,产量低,不能自动自动送料、自动加紧、自动切割。
客户决定采用PLC控制,为了增加产量,保持锯切工件的准确度以及降低劳动强度,减少劳动用工,该控制系统具有自动送料、定长、自动夹紧、自动切割的功能;可设定参数,保护报警等功能。
二、系统控制组成及工艺要求
该切管机只是钢管生产线的一部分,为了在钢管切割时保证生产线上其他设备的照常运动,有一个活动的切割平台,保持与钢管相对静止以完成切割。
下图为钢管切割的示意图:
切管机有两种控制方式:手动和自动。手动一般是次切割时使用,系统并不考虑管子的长度而直接切割,之后与自动方式相同。
钢管运动到平台后,当达到所要切割的长度时图中橙色部分动作,伸出的推杆返回,气动加紧机构动作,会加紧钢管,钢管会推着切割平台一起运动。同时图中的绿色部分——切割机“低头”开始切割,切割完成后回触碰2号行程开关,切割机“抬头”电机停转。切割过程中和切割完成后平台和钢管依然保持运动,直到平台触碰3号行程开关,加紧机构松开,平台不在和钢管一起运动而停止,经过一段时间的延时后(一般2-3分钟)图中橙色部分动作推动平台返回,再回程过程中会触碰4号行程开关,翻料机构(不在这台机床上)动作,切下的管子离开切管机。平台回程后会触碰5号行程开关,等待下一段钢管达到要求的长度。
钢管的切割长度在LED输入/输出设备上设定。
当切割钢管产生热故障的时候就产生报警。
PLC控制方案
采用艾默生公司EC20系列EC20-1410BRA模块。
应用总结
采用艾默生EC20系列高性能PLC工作,给客户带来了以下的好处:
1、 操作集中简易,灵敏,维修简便。
2、设备自动化水平提高后系统稳定性和抗干扰性也得到大大的提高。
3、可自动夹料,进刀,送料、定寸设置,定数停机和工作计量功能。
4、可以提高工作效率,使得产量的得到提高
5、自动报警
编者按:施耐德电气Modicon M340 PLC CPU升级,高性能20*系列CPU V2.0版本,内存4Mb,用户数据256Kb,支持1024DI/O,256AI/O
Modicon M340系列可编程控制器暨08年6月推出8款新模块之后,于2008年9月1日再次正式推出一款高性能的CPU,以及扩展机架,PTO脉冲输出轴控模块等新模块和专用功能。自此Modicon M340 作为一款性能zhuoyue的中型PLC平台,已经发展到了一个全新的高度。
新增一款高性能CPU ——BMXP342000
高性能20*系列CPU V2.0版本,内存4Mb,用户数据256Kb,支持1024DI/O,256AI/O
自带1个USB编程端口,同时也可以连接GT系列触摸屏
自带1个Modbus RS232/485通讯端口,大传输速率38.2kbps
所支持的软件:Unity Pro V4.0版本以上
大容量128Mb“即插即载”SD卡——BMXRMS128MPF
内存卡8Mb+文件128Mb,用于备份用户程序和激活内置以太网Web服务器功能(Transparent Ready class B),提供128M用户文件存储,适用于BMX P34 2000/2010/2020/2030
新增2轴PTO脉冲轴控模块——BMXMSP0200
2轴脉冲输出,大输出频率200KHZ,自带4入离散输入和2路离散量辅助输出
所支持软件:Unity Pro V4.0版本以上
CPU版本 V2.0以上
针对该模块应用,Unity Pro V4.0中Motion PTO library新增6个EF和1个新的DFB
每个PTO模块占用2个特殊通道,BMXP341000系列CPU多支持20个特殊通道。BMXP3420*系列CPU多支持36个特殊通道
机架扩展
通过机架扩展模块BMX XBE1000和扩展电缆BMXXBC×××K连接相邻的两个机架,机架分4,6,8,12槽,任意选择。
机架扩展模块BMXXBE1000,安装于机架右侧,不占槽位. BMXP341000的CPU只支持1个扩展机架(机架0-1), BMXP3420××系列的CPU多支持3个扩展机架,加上主机架,共四个机架(机架0-3),总长度为30M。
机架扩展所支持的软件必须使用Unity Pro V4.0版本以上
Modicon M340可编程控制器集各种强劲功能和创新设计于一身,地满足复杂设备制造商和中小型项目的要求,提供各种自动化功能的佳技术和高效、灵活、经济性的解决方案。Modicon M340充分支持工业和基础设施自动化控制系统的“透明就绪”架构,成为Modicon Premium 和Quantum系列产品线的佳拓展。
功能强劲 Modicon M340具有zhuoyue的运算能力,能jingque进行整数或浮点数运算,每毫秒可处理7K条指令。CPU拥有高达4MB程序空间,多处理70K条指令,自带8MB存储卡,方便程序备份。Modicon M340继承了Modicon在计数,位置控制和回路控制方面的优点和大量成功经验,能有效和方便地实现各种特殊的应用要求。
维护便捷 Modicon M340采用全新的内存管理,独创的“即插即载”SD卡,使系统升级、维护更加便捷。应用程序存储在SD卡上,断电时CPU自动备份用户数据到CPU内部FLASH中,因此无需使用备份电池。同时,Modicon M340也可作为外部存储设备,容量可达16MB,简单通过PC访问或FTP服务可存取任意格式的文件。内置标准网页,可进行系统诊断和参数调整,也可以定制人机界面,通过浏览器即可本地或远程访问。
工作轻松 强大的Unity软件平台,使Modicon M340更如虎添翼。Unity Pro中文版的编程软件,不仅提供5种IEC编程语言,图形化的编程工具,诊断工具等,还支持中文变量名,使您从设计到维护各个环节都受益匪浅。
Modicon M340通信功能也令人刮目相看,除集成USB口外,CPU模块还内置了2个通讯接口(CANopen,Ethernet 或 Modbus),方便高速地连接。另外,还提供全方位的远程访问服务,方便又安全地通过MODEM或者ADSL访问,进行在线编程,传输,访问数据文件,服务器远程诊断等。
外形精巧 Modicon M340结构紧凑,安装灵活。支持4,6,8及12个槽机架,多可带3个扩展机架,64通道高密度单元宽度仅32mm,多种电源可供选择。每个模块支持“热插拔”,便于维护。
稳定可靠 Modicon M340能够适应严峻的工业环境,耐环境能力大大超出了IEC标准要求。在环境保护方面遵从ROHS 欧洲标准。而且,Modicon M340符合所有国际认证和海事认证,方便您的设备使用在各种场合。
从控制到管理,从监控到设备数据的获取,Modicon M340能够真正实现与所有施耐德电气自动化产品间的协同工作。通过以太网和CANopen总线、Modbus总线技术,Modicon M340能够与Altivar 变频器,Lexium和ICIA运动控制产品,Magelis触摸屏和工控机,Vijeo Citect配置和管理软件,Advantys I/O,Ois传感器和安全防护产品实现简单方便的整合。
稳定可靠的解决方案,优化的性能,Modicon M340满足复杂机械和中小型项目的应用。特别适用于纺织机械、包装和印刷机械、塑料橡胶机械、建筑和建材机械、起重机械、食品加工和机床等复杂设备,同时也广泛适用于风电、船舶、煤碳、自来水和污水处理、水电、隧道、地铁等基础设施建设。
1、 引言
在网络的各个层上,随着自动化和控制工程师需要与网络打交道的机会越来越多,联网的愿望和需要也正在逐渐高涨。而且,在监控和数据采集应用中,大多数工程师已将以太网协议应用于数据采集与监视控制系统(SCADA)和工厂的诊断、测试及维护。如何简便地实现与PLC的交互已经成为众多厂商新的竞争战场。由此产生了人机界面及各种组态软件产品,这些产品的出现简化了对PLC的控制、操作,使PLC的应用更加方便。但也有其共同的缺点,价格普遍偏高和可二次开发性较差。VB作为“原始”的编程语言,兼具了上述两方面的优势。本文结合一个简单的案例来粗略讨论如何通过VB实现PC机与PLC的以太网通信问题。
2、以太网通信的基本概念
2.1以太网的标准
以太网是一种局域网。早期标准为IEEE 802.3,数据链路层使用CSMA/CD,10Mb/s速度物理层有:
(1)10 Base 5粗同轴电缆,RG-8,一段长为500m。
(2)10 Base 2细同轴电缆,RG-58,一段长为185m。
(3)10 Base T双绞线,UTP或STP,一段长为100m。
2.2工业以太网与商用以太网的区别
什么是工业以太网?技术上,它与IEEE802.3兼容,故从逻辑上可把商用网和工业网看成是一个以太网,而用户可根据现场情况,灵活装配自己的网络部件。但从工业环境的恶劣和抗干扰的要求,设计者希望采用市场上可找到的以太网芯片和媒介,兼顾考虑下述工业现场的特殊要求:首先要考虑高温、潮湿、振动。二是对工业抗电磁干扰和抗辐射有一定要求,如满足EN50081-2、EN50082-2标准,而办公室级别的产品未经这些工业标准测试,表1列出了一些常用工业标准。为改善抗干扰性和降低辐射,工业以太网产品多使用多层线路板或双面电路板,且外壳采用金属如铸铝屏蔽干扰。三是电源要求,因集线器、交换机、收发器多为有源部件,而现场电源的品质又较差,故常采用双路直流电或交流电为其供电,另外考虑方便安装,工业以太网产品多数使用DIN导轨或面板安装。四是通信介质选择,在办公室环境下多数配线使用UTP,而在工业环境下推荐用户使用STP(带屏蔽双绞线)和光纤。
2.3 使用TCP/IP协议的原因及其概述
主要的一个原因在于它能使用在多种物理网络技术上,包括局域网和广域网技术。TCP/IP协议的成功,很大程度上取决于它能适应几乎所有底层通信技术。20世纪80年代初,先在X.25上运行TCP/IP协议;而后又在一个拨号语音网络(如电话系统)上使用TCP/IP协议,又有TCP/IP在令牌环网上运行成功;后又实现了TCP/IP远程分组无线网点与其他Internet网点间TCP/IP通信。所以TCP/IP协议极其灵活,具备连接不同网络的能力。另外,使用TCP/IP也简化了OSI模型,因为它省略了表示层和会话层。如果现在把以太网的物理层和数据链路层加到OSI模型,就构成了基于以太网的TCP/IP网,如图1所示。用以太网实现TCP/IP也是经济的一种方式。
IP是Internet基本的协议。IP是面向报文的协议,它独立处理每个报文包,每个报文包必须含有完整的寻址信息。IP报文包的格式如图2所示。
图2 IP报文包的格式
IP地址的类型共有4种(如图3所示):A类用于处理超大型网络,多16387064个主机(1~126);B类网络多可有64516个主机(网络地址的段为128~191);C类用于小型网络,多可有254个主机(网络地址的段为192~223);D类用于多点播送,用于多目的信息的传输。全零(“0.0.0.0”)地址对应于当前主机,全1地址(“255.255.255.255”)是当前子网的广播地址。
TCP是基于传输层的协议,协议文件可从RFC793得到,使用广泛,面向连接的可靠协议。它能把报文分解为数段,在目的站再重新装配这些段,支持重新发送未被收到的段,提供两台设备间的全双工连接,允许它们高效地交换大量数据。TCP使用滑动窗口协议来高效使用网络。由于TCP很少干预底层投递系统的工作,它适应各种投递系统,且提供流量控制,能使各种不同速率的系统进行通信。报文段是TCP所使用的基本传输单元,用于传输数据或控制信息。
3、MODBUS数据帧格式
在TCP/IP以太网上传输,支持Ethernet II和802.3两种帧格式。图3所示,Modbus TCP数据帧包含报文头、功能代码和数据3部分。
4、 MODBUS功能代码
4.1 3种类型
(1)公共功能代码(如表2所示):已定义好的功能码,保证其唯一性,由Modbus.org认可。
(2)用户自定义功能代码有两组,分别为65~72和100~110,无需认可,但不保证代码使用的唯一性。如变为公共代码,需交RFC认可。
(3)保留的功能代码,由某些公司使用在某些传统设备的代码,不可作为公共用途。
表2 Modbus常用公共代码功能
4.2功能代码划分:按应用深浅,可分为3个类别。
(1)类别0,对于客户机/服务器小的可用子集:读多个保持寄存器(fc.3);写多个保持寄存器(fc.16)。
(2)类别1,可实现基本互易操作的常用代码:读线圈(fc.1);读开关量输入(fc.2);读输入寄存器(fc.4);写线圈(fc.5);写单一寄存器(fc.6)。
(3)类别2,用于人机界面、监控系统的例行操作和数
据传送功能:
(4)强制多个线圈(fc.15);读通用寄存器(fc.20);写通用寄存器(fc.21);屏蔽写寄存器(fc.22);读写寄存器(fc.23)。
5、VB的基本概念
VB(Visual Basic)是面向对象的程序设计语言,用它来开发bbbbbbs操作系统下的应用程序,它提供了很多接口成员,对象、属性、事件、方法就是4个重要的接口,VB提供了许多常用的控件。
5.1卷标控件
卷标控件如图4(a)所示,该控件专用于显示文字、数字用,显示如图4(b)所示。
5.2 按钮控件
按钮控件如图5(a)所示,该控件使用率很高,提供一个供系统用户操作用的按钮,如图5(b)所示。
6、基于Winsock控件的TCP/IP以太网通信
要完成VB与PLC等设备的以太网通信要用到Winsock控件,在此有必要对该控件作较详细的说明。Winsock是一个ActiveX控件,需要要手动添加许多项目,其步骤如下:
(1)选择菜单的【工程】。
(2)选择【部件】。
(3)在弹出的对话框中做如图6的选择。
(4)如图7所示,在部件选项卡就会出现Winsock控件。
7、Winsock控件的基本属性
此控件对于用户在运行时不可见,提供了一个简单的途径访问TCP及UDP网络服务而无需了解底层细节,使用时你只需设置属性、在恰当的时候调用它提供的方法即可。
主要属性有:
BytesReceived:返回当前缓冲区中的字节数量,我们可以使用 GetData 方法以接收数据。只读且设计时不可用。
LocalHostName:返回本机名字符串,设计时不可用。
LocalIP:返回以(xxx.xxx.xxx.xxx)格式表达的IP地址串。设计时不可用,运行时只读。
LocalPort :本机使用接收端口可读写,设计时可用,Long型。对于客户,如果无需指定端口,则用端口0发送数据。在此情况下,控件将随机选择一个端口。在一个连接确定后,为TCP的端口。对于服务器,指用于监听的端口。如设置为0,则用随机数。在调用Listen 方法后,该属性自动包含用到的端口。端口0总是用于在两计算机间建立动态连接。客户希望通过端口0获得一个随机端口以”回调”连接服务器。
Protocol :套接字类型,为TCP或UDP二者之一,缺省为TCP类型。设置为sckTCPProtocol表示TCP协议sckUDPProtocol表示UDP协议。在此属性被重置之前需用Close方法关闭之。
RemoteHost:发送或接收数据的主机,你可提供主机名如:FTP://ftp.microsoft.com,或一IP地址串,例如“100.0.1.1”。
RemoteHostIP:远程主机的IP地址。对于客户程序,在连接确定后使用Connect方法,此属性包含远程主机的IP名串。对于服务器程序, 在引入连接需求后(Connection Request 事件),此属性包含IP串。当使用UDP套接字,在Data Arrival事件发生后,此属性为发送UDP数据的机器IP地址串。
RemotePort:连接套接字端口值。例如通常HTTP应用使用80端口,FTP则使用21。
State:控件的状态, 只读且设计时不可用。可为以下值:
常量描述
sckClosed 0 缺省值,关闭套接字
sckOpen 1 打开套接字
sckListening 2 正监听端口
sckConnectionPending 3 正在进行未定的连接
sckResolvingHost 4 正解析主机地址
sckHostResolved 5 主机地址已解析
sckConnecting 6 正在连接
sckConnected 7 已连接
sckClosing 8 连接关闭
sckError 9 错误
8、VB与PLC基于MODBUS TCP的以太网通信的实现
以下举例说明如何实现VB与PLC的以太网通信。
(1)控制要求:用交替型按钮控制Y0,并用指示灯显示Y0状态(绿色为运行,红色为停止);能够对D100、D200两个寄存器进行数值写入与读出的操作。
(2)实现思路:同样Y0的地址分别为H0500。写入FF00为ON,0000为OFF,按功能码05操作;D100,D200地址分别为H1064,H10C8,按功能码03操作即可实现寄存器的读功能,按功能码10H操作即可实现寄存器的写功能。
(3)VB接口的设计如图8所示
图8 监控程序界面图
在界面中用按钮控制Y0的ON/OFF及D100、D200数据的写与读;用shape组件做指示灯,指示Y0的ON/OFF状态;用Winsock控件实现PLC与VB的通信。
(1)实现功能的代码构成
(2)建立网络连接
Private Sub Command1_Click()
Winsock1.Close
Winsock1.Connect Text1, 502
Label2.Caption = "Version: 1.0 : " + bbbbat(Now, "mmm dd yyyy Hh:Nn:Ss")
Command1.Enabled = False
Command1.Enabled = False
Text1.Enabled = False
End Sub
(3)、Y0的ON/OFF控制
Private Sub Comd_send_Click()
On Error GoTo ErrProc
Dim sendstr(14) As Byte
sendstr(0) = &H0 ‘交换识别号高字节,通常为0
sendstr(1) = &H0 ‘交换识别号低字节,通常为0
sendstr(2) = &H0 ‘协议识别号高字节,为 0
sendstr(3) = &H0 ‘协议识别号低字节,为 0
sendstr(4) = &H0 ‘字节长度高字节
sendstr(5) = &H9 ‘以下字节长度低字节
sendstr(6) = &HFF ‘单元识别号,确省为 255
sendstr(7) = &H5 ‘写一个线圈命令代码
sendstr(8) = &H0 ‘写线圈的起始地址高字节
sendstr(9) = &H1‘写线圈的起始地址低字节
sendstr(10) = a ‘=FF打开线圈,=00关闭线圈
sendstr(11) = &H0 ‘
Dim aStr As bbbbbb
Dim i, j As Integer
For i = 0 To 11
aStr = aStr & Chr(sendstr(i))
Next
Winsock1.SendData aStr
Exit Sub
ErrProc:
MsgBox "传输数据失败", vbCritical, "网络传输"
End Sub
(4)线圈状态显示及寄存器读出数据显示
Private Sub winsock1_DataArrival(ByVal bytesTotal As Long)
Dim strdata() As Byte
Dim i, j As Integer
Dim s As bbbbbb
Dim s1 As bbbbbb
Dim IO As Byte
i = Winsock1.BytesReceived
ReDim strdata(i)
Winsock1.GetData strdata, vbByte, i
For j = 0 To i - 1
s = s + Hex(strdata(j))
Next
If s Like "*5*" Then
s1 = Mid(s, 12, 2)
If s1 = "FF" Then
IO = 1
a = &H0
Else
IO = 0
a = &HFF
End If
If IO = 1 Then
Shape1.FillColor = RGB(0, 255, 0) ‘green
Labl3.Caption = "IO点接通"
Else
Shape1.FillColor = RGB(255, 0, 0) ‘red
Labl3.Caption = "IO点断开"
End If
End If If s Like "*3*" Then
Text3.Text = Text3.Text + Mid(s, 11) + ""
End If
(5)、读多个寄存器数据
End Sub Private Sub Command4_Click()
On Error GoTo ErrProc
Dim str(12) As Byte
str(0) = &H0 ‘交换识别号高字节,通常为 0
str(1) = &H0 ‘交换识别号低字节,通常为 0
str(2) = &H0 ‘协议识别号高字节,为 0
str(3) = &H0 ‘协议识别号低字节,为 0
str(4) = &H0 ‘字节长度高字节
str(5) = &H6 ‘以下字节长度低字节
str(6) = &HFF ‘单元识别号,确省为 255
str(7) = &H3 ‘读多个寄存器命令代码
str(8) = &H10 ‘读数据的起始地址高字节
str(9) = &HC8 ‘读数据的起始地址低字节
str(10) = &H0 ‘数据长度高字节
str(11) = &H1 ‘数据长度低字节
Dim bStr As bbbbbb
Dim i As Integer
For i = 0 To 11
bStr = bStr & Chr(str(i))
Next
Winsock1.SendData bStr
Exit Sub
ErrProc:
MsgBox "传输数据失败", vbCritical, "网络传输"
End Sub
D100寄存器的写入操作类似,由于篇幅所限其他代码在此就不再赘述。
9.结速语
工业以太网是工业自动化网络发展的必然趋势,为了对工业设备进行实时的管理与监控,工业以太网设备大多都支持远程管理,而且各厂商业都有各自的网络管理软件以提供对网络设备进行友好的图形化界面操作。管理员还可以通过远程bbbnet或web界面的方式直接对设备进行调试。完善的兼容性,可靠的稳定性,对恶劣环境的适应性,强大的冗余能力和方便的可管理性,是人们越来越多地在网络设计过程中采用工业以太网的原因,而这也势必成为工业以太网在越来越多的网络环境里大显身手的重要契机。借台达即将推出以太网模块之际撰写此文,希望能够为其以太网模块的推广提供一些帮助。由于本人水平有限本文编写难免会有错漏之处,也请读者给予批评指正。