串口通信实例015:欧姆龙CP1H和欧姆龙CP1H串口通信 点击:6397 | 回复:5



关育谋

    
  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-20 12:43:55
楼主

串口通信实例015:欧姆龙CP1H和欧姆龙CP1H串口通信

一、实例实现目的:

欧姆龙CP1H的8路数字量输入0.00~0.07控制欧姆龙CP1H的8路数字量输出100.00~100.07。

二、通信连接:

1、欧姆龙CP1W-CIF11端子含义:

该插件板后的拨码开关2、3、5、6打到ON位置、4打到OFF位置

SDB+:即为RS485发送\接收+信号

SDA-:即为RS485发送\接收-信号

2、欧姆龙CP1W-CIF11端子含义:

该插件板后的拨码开关2、3、5、6打到ON位置、4打到OFF位置

SDB+:即为RS485发送\接收+信号

SDA-:即为RS485发送\接收-信号

3、通信连接:

欧姆龙CP1W-CIF11之SDB+ 接 欧姆龙CP1W-CIF11之SDB+;

欧姆龙CP1W-CIF11之SDA- 接 欧姆龙CP1W-CIF11之SDA-。

三、欧姆龙CP1H发送通信程序:

1、通信初始化,9600,8,N,1,起始符为0x0002、结束符为0x0003:


2、数字量输入处理,将欧姆龙CP1H的8路数字量输入0.00~0.07共计1个字节转换为ASCII码送入发送缓冲区


3、初始化延时:


4、定时发送:


四、欧姆龙CP1H通信程序:

1、通信参数设置程序段:波特率9600bps、8位数据位、无校验位、1位停止位、报头为0x0002、报尾为0x0003


2、RXD接收指令程序段:接收缓冲区首地址为D11,接收字节个数为2


3、接收数据处理:将接收保存在D11中的两个ASCII码送入D41、将D41中的两个ASCII码转换为16进制数据送入D51,最终送入数字量输出100.00~100.07里

五、通信程序图片提供下载:

正在下载,请等待……
下载附件需0积分!




关育谋

  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-20 12:44:13
1楼

六、通信测试:
硬件接线完成后,分别将欧姆龙CP1H通信程序、欧姆龙CP1H通信程序下载到PLC中,断电再次上电,此时即可实现欧姆龙CP1H的8路数字量输入0.00~0.07控制欧姆龙CP1H的8路数字量输出100.00~100.07。

关育谋

  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-20 12:45:25
2楼

补充说明:欧姆龙CP1H主站程序为定时发送,定时时间100ms;欧姆龙CP1H从站程序实时接收,最终实现欧姆龙CP1H主站输入0.00~0.07控制欧姆龙CP1H从站输出100.00~100.07

关育谋

  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-20 12:46:37
3楼

主站和从站程序均在CP1H系列PLC测试通过,稍加修改即可应用到CP1L和CP1E系列PLC上。

关育谋

  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-20 12:47:07
4楼

大家对此程序有什么疑问的,可以随时跟帖回复,我看到后会回复的。

957309238

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:31
  • 注册:2015年10月11日
发表于:2021-12-16 16:27:40
5楼

回复内容:

对:关育谋 大家对此程序有什么疑问的,可以随时跟帖回复,我看到后会回复的。     内容的回复:

如果D和Y怎么传送


热门招聘
相关主题

官方公众号

智造工程师