通讯程序设计在自动化系统的应用越来越广泛,例如plc与操作界面的数据交换,通过通讯对变频器的控制,plc的连网等等。
要想实现plc的通讯编程,首先所选的plc必须有强大的通讯能力,就是说plc的操作系统能够支持多种通讯格式,通常一种品牌的plc如果能够提供给用户更多的编程自由度,那么这种品牌的技术开发能力就越强大,大多数品牌只能提供固定格式的通讯格式或协议,这就大大局限了plc与其他智能设备的数据交换。
我们的plc产品具有rs232和光电隔离的rs485两个自由通讯口,两个通讯口可以同时收发数据,几乎可以适应所有通讯格式,可以提供crc和bcc等多种校验方式。
以一台plc通过485通讯控制多个某品牌的变频器为例:
如果该变频器的波特率是9600b/s,8个数据位,奇校验,1个停止位。那么首先必须在plc的嵌入c窗口的初始化代码区编程一个通讯口设置语句:set485port(9600,o,8,1);仅仅一个语句就完成了对485通讯口的编程。
由于485通讯必须设定主从关系,这里是plc控制多台变频器,所以plc必须设置为主,因此还需在初始化代码区增加一个地址和主从设定语句:setaddress(1,master);事实上,对于主控制器来说,地址已经失去意义。
通讯口已经设置完毕,下面就是如何根据要求将数据发送给变频器。
例如一组8字节控制数据如下所示:bobst controller 704109705
siemens 6qn4000-0ad e:e
siemens simoreg c98043-a1044-l304
siemens 6fm1460-3ab20 6es5373-0aa41
optische datenübertragung sick isd250-1112
siemens sinaut st1 tim 6nh1802-2ba e-stand 15
frequenzumrichter siemens simovert p 6se4601-1aa02 1,9kva
modulpac regelkarte siemens 6dm1001-4wb02-0
siemens 6dm1001-4wb02-0 e5
siemens 6dm1001-7wa08-0 e4
siemens sitor 6qg1332-3ak02 f-(b6)a(b6)c380/512-80f930-1
mitsubishi melsec cpu a2scpu-s1
aeg miniverter board 029 111 846 029.111846 642236
abb 07ng41 gjr5126000r1
abb 07bg40 07ps40 br0033 gjr2268900r0033 gjr5124100r1
siemens 70031.000 kommunikationsprozessor cp me p70031a4lxi
anzeigenbaugruppe siemens wf470 6fm1470-3aa21 a0 70930191
mitsubishi sifa-02-dwc by171e509g51
frequenzumrichter siemens simovert 6se2102-1aa02
wickelrechner lenze 1012 so ausführung el 61 281 ea
contraves modul compact hru gb300954-t hrd811017-a
servoverstrker phoenix contact ib il ec ar 48/10a 2819257
modulpac simoreg siemens 6dm1001-2la00-2 6dm1 00
bosch cl-a2-24v-2.0a 1070083385-105 e:2
sick barcodescanner scanner icr850-2z1920s06 1042
siemens simoreg 6dm1001-4wb07-1 e:5
bosch e24v input 047981-107401
siemens teleperm m 6ds1604-8aa e3 ov
siemens teleperm m 6ds1703-8ab
bobst controller 704109705
siemens 6qn4000-0ad e:e
siemens simoreg c98043-a1044-l304