登录
首页 串口通信 串口通信
回帖 发帖
正文

主题:串口通信实例009:西门子S7-200和欧姆龙CP1H串口通信

点击:805 回复:4

串口通信实例009:西门子S7-200和欧姆龙CP1H串口通信
一、实例实现目的:
西门子S7-200的8路数字量输入I0.0~I0.7控制欧姆龙CP1H的8路数字量输出100.00~100.07。
二、通信连接:
1、西门子S7-200 Port0通信口:
3脚即为RS485发送\接收+信号
8脚即为RS485发送\接收-信号
2、欧姆龙CP1W-CIF11端子含义:
该插件板后的拨码开关2、3、5、6打到ON位置、4打到OFF位置
SDB+:即为RS485发送\接收+信号
SDA-:即为RS485发送\接收-信号
3、通信连接:
西门子S7-200 Port0口3脚 接 欧姆龙CP1W-CIF11之SDB+;
西门子S7-200 Port0口8脚 接 欧姆龙CP1W-CIF11之SDA-。
三、西门子S7-200发送通信程序:
1、通信初始化,9600,8,N,1,起始符为STX、结束符为ETX:
附件 1.jpg
附件 2.jpg
2、数字量输入处理,将西门子S7-200的8路数字量输入I0.0~I0.7共计1个字节转换为ASCII码送入发送缓冲区
附件 3.jpg
附件 4.jpg
3、初始化延时:
附件 5.jpg
4、定时发送:
附件 6.jpg
5、定时中断子程序:
附件 7.jpg
四、欧姆龙CP1H通信程序:
1、通信参数设置程序段:波特率9600bps、8位数据位、无校验位、1位停止位、报头为0x0002、报尾为0x0003
附件 image.jpg
2、RXD接收指令程序段:接收缓冲区首地址为D11,接收字节个数为2
附件 image.jpg
3、接收数据处理:将接收保存在D11中的两个ASCII码送入D41、将D41中的两个ASCII码转换为16进制数据送入D51,最终送入数字量输出100.00~100.07里
附件 image.jpg
附件 image.jpg
五、通信程序图片提供下载:
附件:
[本地下载]
19-12-12 10:42
六、通信测试:
硬件接线完成后,分别将西门子S7-200通信程序、欧姆龙CP1H通信程序下载到PLC中,断电再次上电,此时即可实现西门子S7-200的8路数字量输入I0.0~I0.7控制欧姆龙CP1H的8路数字量输出100.00~100.07。
19-12-12 10:43
备注说明:西门子200主站程序中开启了定时器中断,然后在定时器中断程序里调用XMT指令,实现定时发送数据给从站CP1H,从而实现西门子200的输入I0.0~I0.7控制欧姆龙CP1H的8路输出100.00~100.07
19-12-12 13:24
2019论坛通讯达人非你莫属表情
19-12-12 15:53

引用 甘陵至尊 在 2019/12/12 15:53:51 发言【内容省略】

不知道自己的付出对得起版主这个称呼不!反正碰到通信相关帖子,都在用心在回复!
19-12-12 17:49

工控新闻

更多新闻资讯