feige200
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看feige200的 主题 / 回贴
楼主  发表于: 2008-07-10 21:19
用一台FX2N和五台变频器通讯,现在一台能通上,但是现在想控制五台,那程序能不能叠加在一起,只改变变频地址就行了呢?或者是只用一个程序,用变址指令?
fjqz00
级别: 论坛先锋
精华主题: 1 篇
发帖数量: 1303 个
工控威望: 1459 点
下载积分: 7999 分
在线时间: 363(小时)
注册时间: 2007-04-16
最后登录: 2024-11-24
查看fjqz00的 主题 / 回贴
1楼  发表于: 2008-07-10 22:46
反正保证某一个时间段内只和一台通讯就行。可以这样写:
LDP M8012
OUT C0 K10

后续的程序:
当C0小于等于2时,输出M1
当C0大于2小于等于4时,输出M2
……
直到M5

当C0位得电时,RST C0   这样就能让C0一直循环计数了

当M1得电上沿时,把1#地址的变频器地址位写入通讯程序的地址位,执行通讯
当M2得电上沿时,把2#地址的变频器地址位写入通讯程序的地址位,执行通讯
……
以此类推,这样就可以把1台通讯的程序变通成5台了

不过如果改变了地址位的数据,其通讯的校验位可能也会改变,在程序里可能还要多做校验位的计算程序。
本帖最近评分记录:
  • 下载积分:+2(YMMFA) 热心助人!
    fjqz00
    级别: 论坛先锋
    精华主题: 1 篇
    发帖数量: 1303 个
    工控威望: 1459 点
    下载积分: 7999 分
    在线时间: 363(小时)
    注册时间: 2007-04-16
    最后登录: 2024-11-24
    查看fjqz00的 主题 / 回贴
    2楼  发表于: 2008-07-11 09:02
    用M8012等特殊位,再加计数器,主要是为了在同一时间段内只和一台变频通讯。比如说第一个100ms和第一台变频通讯,第二个100ms和第二台变频通讯……以这样的通讯方式。但这样的通讯方式如果和很多台通讯的时候,有可能会因扫描周期的影响,让整个通讯链一个循环的时间较长。所以这样通讯方式比较适合响应速度不需很快,且通讯的变频数量不是很多。
    本帖最近评分记录:
  • 下载积分:+1(feige200) 热心助人!
  • 下载积分:+2(YMMFA) 热心助人!