半双工串口通信实例02:三菱FX3U和西门子S7-200串口通信 点击:875 | 回复:8



关育谋

    
  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2020-02-05 13:38:50
楼主

半双工串口通信实例02:三菱FX3U和西门子S7-200串口通信


一、串口通信实例目的:

三菱FX3U主站数字量输入X0~X7控制西门子S7-200从站数字量输出Q0.0~Q0.7;

西门子S7-200从站数字量输入I0.0~I0.7控制三菱FX3U主站数字量输出Y0~Y7。

二、通信硬件连接:

1、三菱FX3U主站FX3U-485-BD端子含义:

SDA和RDA短接后即为RS485发送\接收+信号

SDB和RDB短接后即为RS485发送\接收-信号

SG即为信号地

2、西门子S7-200从站Port0通信口端口含义:

3脚即为RS485发送\接收+信号

8脚即为RS485发送\接收-信号

SG即为信号地

3、通信硬件连接:

三菱FX3U主站FX3U-485BD之SDA和RDA短接后 接 西门子S7-200从站Port0通信口3脚;

三菱FX3U主站FX3U-485BD之SDB和RDB短接后 接 西门子S7-200从站Port0通信口8脚;

三、三菱FX3U主站通信程序:

1、通信参数:数据位8位、无校验、1位停止位、波特率9600bps、8位数据模式、起始符0x02、结束符0x03;

2、三菱FX3U主站8路输入X0~X7转换为ASCII码保存至D1、D2寄存器里;

3、三菱FX3U主站程序RS指令发送缓冲区首地址D1、发送字节计数为2、接收缓冲区首地址D11、接收字节计数为2;

4、初始化延时1000ms后触发开始发送标志位,开始发送;

5、接收完成标志位置位后,将接收到的数据保持至D41、D42寄存器里,转换为16进制数据送入三菱FX3U主站数字量输出Y0~Y7。


四、西门子S7-200从站通信程序:

(一)、主程序:

1、发送缓冲区首地址为VB0、发送字节计数为4;

2、通信参数:数据位8位、无校验、1位停止位、波特率9600bps、起始符0x02、结束符0x03;

3、接收字节计数为4;

4、启动端口0接收完成中断;

5、启动端口0发送完成中断;

6、发送时的起始符和结束符保存至VB1和VB4中;

7、将8路数字量输入I0.0~I0.7转换为ASCII码保持至VB2和VB3里;

8、将接收到的2个ASCII码转换为16进制数据送入到Q0.0~Q0.7里;

9、初始化启动串口通信接收。

(二)、接收完成中断:

1、接收完成转存数据,将接收到的数据保持至VB41、VB42里;

2、启动定时器中断

(三)、定时器中断:

1、开启发送

(四)、发送完成中断:

1、发送完成后启动新的接收

五、通信程序高清截图提供下载:

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



楼主最近还看过



关育谋

  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2020-02-05 13:39:53
1楼

六、通信测试:
硬件接线完成后,分别将三菱FX3U主站通信程序、西门子S7-200从站通信程序下载到PLC中,断电再次上电,此时即可实现:
三菱FX3U主站数字量输入X0~X7控制西门子S7-200从站数字量输出Q0.0~Q0.7;
西门子S7-200从站数字量输入I0.0~I0.7控制三菱FX3U主站数字量输出Y0~Y7。

关育谋

  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2020-02-05 13:40:23
2楼

主站程序附加说明:
主站程序在三菱FX3U实物测试通过,稍加修改即可应用到三菱FX3G、FX3S、FX2N、FX1N等实物上。

关育谋

  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2020-02-05 13:40:51
3楼

从站程序附加说明:
从站程序在西门子S7-200实物测试通过,稍加修改即可应用到西门子200 Smart实物上。

关育谋

  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2020-02-05 13:41:04
4楼

即日起,将会持续分享三菱PLC、西门子PLC、欧姆龙PLC、松下PLC、台达PLC、单片机之间半双工串口通信实例。有需要下载者,可以去主页选择下载:
http://home.gongkong.com/profile/?uid=7-9616-2DB563252291

Smile-lyc

  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2020-02-06 19:20:32
5楼

感谢关工对论坛大力支持

关育谋

  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2020-02-06 21:21:10
6楼


引用 Smile-lyc 的回复内容: 感谢关工对论坛大力支持

-------------------------

客气!客气!后续持续分享!

ju691031

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2258回
  • 年度积分:5
  • 历史总积分:106
  • 注册:2010年7月16日
发表于:2020-02-08 09:56:54
7楼

感谢关工对论坛大力支持

wufan_fan01

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 32回
  • 年度积分:0
  • 历史总积分:40
  • 注册:2012年5月22日
发表于:2020-04-05 17:06:47
8楼

很给力!正在学习中,帮助很大。多谢关工!


热门招聘
相关主题

官方公众号

智造工程师