您现在所在的是:

PLC论坛

回帖:3个,阅读:1028 [上一页] [1] [下一页]
1598
yxzx1718_365
文章数:579
年度积分:50
历史总积分:1598
注册时间:2008/9/1
发站内信
发表于:2008/9/8 17:05:00
#0楼
文章摘自:上海自仪营销中心http://www.mc-saic.com/
讯程序设计在自动化系统的应用越来越广泛,例如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字节控制数据如下所示:
01h ---->变频器编号
03h ---->命令
21h ---->两字节参数地址
02h
00h ---->两字节参数
02h
CRC --->两字节CRC校验马
CRC
PLC程序:
Set485TBAddPointer(0);
AddNumberTo485TB(0x1);
AddNumberTo485TB(0x3);
AddNumberTo485TB(0x21);
AddNumberTo485TB(0x2);
AddNumberTo485TB(0x0);
AddNumberTo485TB(0x2);
AddCRCTo485TB();
要想实现plc的通讯编程,首先所选的plc必须有强大的通讯能力,就是说plc的操作系统能够支持多种通讯格式,通常一种品牌的plc如果能够提供给用户更多的编程自由度,那么这种品牌的技术开发能力就越强大,大多数品牌只能提供固定格式的通讯格式或协议,这就大大局限了plc与其他智能设备的数据交换。
文章摘自:上海自仪营销中心http://www.mc-saic.com/ 表情表情表情表情
1598
yxzx1718_365
文章数:579
年度积分:50
历史总积分:1598
注册时间:2008/9/1
发站内信
发表于:2008/9/9 12:46:00
#1楼
此楼内容不符合板块规定,不予显示! 查看原帖内容>>
973
乐乐_365
文章数:9
年度积分:50
历史总积分:973
注册时间:2008/9/7
发站内信
发表于:2008/9/9 20:05:00
#2楼
顶起
1598
yxzx1718_365
文章数:579
年度积分:50
历史总积分:1598
注册时间:2008/9/1
发站内信
发表于:2008/9/10 13:52:00
#3楼
此楼内容不符合板块规定,不予显示! 查看原帖内容>>

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

46.8003