s7-200 自由口通信 点击:1087 | 回复:7



zhouccch

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:56帖 | 208回
  • 年度积分:0
  • 历史总积分:598
  • 注册:2002年8月28日
发表于:2007-01-14 22:56:00
楼主
你好:

各位高手请出招:方案如下,用S7-200 CPU224XP,和夏门宇电的AI7048通信,宇电的读/写的指令格式:
  读:地址代号+52H(82)+要读的参数代号+0+0+校验码
  写:地址代号+43H(67)+要写的参数代号+写入数低字节+写入数高字节+校验码
 读的校验码:要读参数的代号×256+82+ADDR
 定和校验码:要写的参数代号×256+67+要写的参数值+ADDR
请高手帮忙,我调试了两天了还没有通信上,急!!用串口调试工具也没有通信上,我怀疑宇电的协议了。
 希望有调试过第三方通信的高手,可以登门拜访,华南工区 

夏门AI7048,是一个四路温宽PID调节器 
我用串口调试工具发了一串数据:08 (发的字节数)81 81(两面个相同的字节为地址代号) 43 (写) 00(参数代号)00(写入低字节) 10 (写入高字节) A8 00 (校验码)
(08 81 81 43 00 00 10 A8 00),请指教对错,些数据串为将100.0,赋于一路的调定值,小数一位。但模块无响应。急!!! 



xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-01-16 22:19:00
1楼
看了一下说明,说明中就有你做的例子用VB编程指令写的一段 例如,将地址(参数ADDR)为1的仪表的给定值(参数代号0)写为100.0℃(整数为1000),用VB的编程方法如下: 、VB编程指令(写SV为1000)为: Dim Cmdout (0 To 7) As Byte   Cmdout(0)=129(16#81)   Cmdout(1)=129 实际地址值为1   Cmdout(2)=67 (16#43)   Cmdout(3)=0   Cmdout(4)=232(16#E8)   Cmdout(5)=3 (16#3) 十六进制3E8=1000(十进制)   Cmdout(6)=44 (16#2C)   Cmdout(7)=4 十六进制42C=1068(十进制) COMM1.OUTPUT=Cmdout 如此对照你的发送数据中的检验码不对

zhouccch

  • 精华:0帖
  • 求助:0帖
  • 帖子:56帖 | 208回
  • 年度积分:0
  • 历史总积分:598
  • 注册:2002年8月28日
发表于:2007-01-17 23:18:00
2楼
我现在用串口调试工具:搞定了仪表这边的通迅,发送:81 81 43 00 E8 03 2C 04  能通迅上,但是我现在用PLC上发出这些数据:81 81 43 00 E8 03 2C 04  时,在串口上接收到的却是:3F 3F,,,这些东西, 是怎么会事呢??

zhouccch

  • 精华:0帖
  • 求助:0帖
  • 帖子:56帖 | 208回
  • 年度积分:0
  • 历史总积分:598
  • 注册:2002年8月28日
发表于:2007-01-17 23:19:00
3楼
我如果想在自由口1上接收到的数据为:81 81 43 00 E8 03 2C 04 这些,那么我应该怎么写呢????急!!!

xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-01-18 21:58:00
4楼
能收到数据就说明通讯上了,但收到的数据不对可能是接收时发生了错误,你可以试一下在程序中先做判断,判断收到首地址正确时再进行接收。如果你用RCV VB100,那么你就可以在程序中先做VB101是否=你设定的地址值,如=再开始接收,具体我也不太清楚,希望你能尽快解决,祝顺利。

王敬

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 10回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-01-19 21:39:00
5楼
应该是效验程序的问题。

皓月

  • 精华:9帖
  • 求助:0帖
  • 帖子:483帖 | 5271回
  • 年度积分:0
  • 历史总积分:8863
  • 注册:2003年11月09日
发表于:2007-01-19 21:42:00
6楼
严格按照报文来组织程序

silichip

  • 精华:0帖
  • 求助:0帖
  • 帖子:56帖 | 374回
  • 年度积分:200
  • 历史总积分:1474
  • 注册:2003年8月29日
发表于:2007-01-27 15:39:00
7楼
应该进行一个数值转换,收到的可能是计算机的Ascii的码值,你对一下Ascii的表再看一下

热门招聘
相关主题

官方公众号

智造工程师