西门子串口通讯-CP341在TIA博途环境中做Modbus主站通讯

1.准备工作
应用CP341进行MODBUS协议通信时需要有Dongle的支持。在使用之前先将Dongle安装在CP341模块的背面的Dongle插槽中,Dongle和插入Dongle前后的CP341如下图所示。

图1

2 组态和配置

1、打开软件TIA PORTAL STEP7 V13,点击项目->新建…创建一新项目,项目名称为341_modbus_Master。

图2

2、用鼠标点击“添加新设备”,选择SIMATIC S7-300->CPU->CPU 319-3PN/DP->6ES7 318-3EL00-0AB0。

图3

3、双击“设备组态”进入硬件组态界面,导轨RACK和CPU 319-3PN/DP已经存在,只需要插入PS307和CP341。

图4

4、双击CP341模板,进入CP341的属性框,配置CP341参数。

图5

5、在“协议”选项中选择“Modbus主站”。配置modbus通信参数,设定的通信参数要和通讯伙伴的相同。传输率(通信波特率):9600bps,数据位:8位,停止位:1位,奇偶校验:无。

图6

6、本示例选用的是RS422/485接口的CP341,还需要设置接口属性,如下图所示。

图7

3 编写通信程序

1、双击“添加新块”,创建发送数据块DB10和接收数据块DB11,发送数据块的名称为Send,接收数据块的名称为Rev;如下图所示,发送数据块中新建几个变量,从站地址为2,功能码为3,起始地址为0,读4个寄存器数据,具体功能码3 的使用参见手册“S7串行通信模板Modbus RTU主站可装载驱动的操作说明” 6.3章节的说明;如下图所示,接受数据块中新建1个数据类型Array的变量,数组元素的数据类型为Byte,数量为400。

图8

图9

2、进入主程序OB1,从通信->通信处理器->PtP链接:CP341,调用发送功能块P_SND_RK和接收功能块P_RCV_RK。P_SND_RK的背景数据块为DB1,P_RCV_RK的背景数据块为DB2。

图10

CP341的发送功能块P_SND_RK 的参数设置见下表。
SF
‘S’为发送,此处必须为大写的‘S’
LADDR
硬件组态中的起始逻辑地址,本例中为256,见图11。
REQ
发送数据触发位,上升沿触发,本例中为M0.5,为时钟存储器的位,见图12。
DB_NO
发送数据块号,本例中为10(DB10)
DBB_NO
发送数据的起始地址,本例中为0(DB10.DBB0)
LEN
发送数据的长度,本例中为6
R_TYP
‘X’为扩展的数据块,此处必须为大写的‘X’
R
取消通讯,本例中不用
DONE
发送完成位,发送完成后为TRUE,同时没有错误
ERROR
错误位,为TRUE说明有错误
STATUS
状态字,标识错误代码,查看Modbus
Master手册获得相应的说明
其它参数
本例中不用
CP341的接收功能块P_RCV_RK 的参数设置见下表。
DDR
组态中的起始逻辑地址,本例中为256,见图11。
DB_NO
发送数据块号,本例中为11(DB11)。
DBB_NO
发送数据的起始地址,本例中为0(DB11.DBB0)。
LEN
接收数据的长度,本例中为MW22,只显示一个扫描周期,即:只有在接收到数据的当前周期,此值不为0。
EN_R
使能接收位,本例中为M20.0,常闭点,
始终保持接收状态。
R
取消通讯,本例中不用。
NDR
接收完成位,接收完成并没有错误为TRUE,只显示一个扫描周期。
ERROR
错误位,为TRUE说明有错误,只显示一个扫描周期。
TATUS
状态字,标识错误代码,只显示一个扫描周期,查看Modbus Master手册获得相应的说明。
其它参数
本例中不用

图11

图12

4 设备连接

本文档使用的CP341的接口是RS232C,因此需要通过标准的RS232C电缆来连接CP341和计算机的串口,具体的电缆连接方法请查看CP341手册B章节连接电缆部分(见:手册、文档和软件链接部分)。

如果使用的CP341是RS485接口的模块,需要使用RS232C/RS485转换器。

5 通信测试

前面使用 TIA Step7 软件已经将通信CP341的通信工作做完,下面进行通信测试。这里使用串口通讯测试软件ModSim32软件来测试CP341和计算机的通信,步骤如下

1、双击ModSim32软件图标,新建项目,点击Port1,进入端口1做设置,本例计算机只有一个端口,所以就对端口1做设置,如果计算机有多个端口,要注意所选端口。

图13

2、进入Port1设置界面,设置波特率、数据位、奇偶校验等参数,要和CP341的参数相同。

图14

3、点击“OK”,选择软件的03功能码界面,本例设置03功能码的10个数据,其中前4个数据分别设置成1—4。

图15

4、首先将硬件配置和程序下载到CPU319-3PN/DP中,时钟脉冲信号M0.5从0跳变成1时,CP341将数据发送出去。

图16

5、M20.0为常闭点,程序下载完成,CPU运行后,就始终处于接收状态。在STEP7中打开接收数据块DB11监控接收到的数据,可以看到发送的数据被正确的接收。

图17

西门子串口通讯04-CP341在TIA博途环境中做Modbus主站通讯相关推荐

  1. 西门子串口通讯06-CP441-2在TIA博途环境中做Modbus主站通讯

    西门子串口通讯-CP441-2在TIA博途环境中做Modbus主站通讯 v-x-公–众–号:工控自动化老王 CP441接口选型 CP441通讯模块可根据实际应用选择不同接口类型的子模块,从而实现与一个 ...

  2. 西门子串口通讯09-CP341在博途环境中做Modbus从站通讯

    西门子串口通讯09-CP341在博途环境中做Modbus从站通讯 v-x-公–众–号:工控自动化老王 1 硬件列表 设备名称 设备型号 PS 307 6ES7 307-1EA01-0AA0 CPU 3 ...

  3. 西门子串口通讯05-CP441-2在Step7环境中做Modbus主站通讯

    西门子串口通讯05-CP441-2在Step7环境中做Modbus主站通讯 v-x---公–众--号:工控自动化老王 1.安装Dongle Dongle的安装位置参考下图 : 2 组态和配置 1.打开 ...

  4. 西门子串口通讯11-CP441-2在博图环境中做Modbus从站通讯

    CP441-2 使用 TIA Step7 V13 进行 Modbus Slave 通讯 作者:工控自动化老王 关注同名V–X公//众//号:工控自动化老王获取更多技术文档及工控资源,交流.学习,另外老 ...

  5. 西门子串口通讯08-CP341在STEP7环境中做Modbus从站通讯

    西门子串口通讯08-CP341在STEP7环境中做Modbus从站通讯 v-x-公–众–号:工控自动化老王 1 硬件列表 设备名称 设备型号 PS 307 6ES7 307-1EA00-0AA0 CP ...

  6. 西门子串口通讯10-CP441-2在STEP7环境中做Modbus从站通讯

    西门子串口通讯10-CP441-2在STEP7环境中做Modbus从站通讯 v-x-公–众–号:工控自动化老王 2) CP441-2与调试软件测试通信数据 1 硬件列表 设备名称 设备型号 RACK- ...

  7. 西门子串口通讯03-CP341在Step7环境做Modbus主站通讯

    西门子串口通讯03-CP341在Step7环境做Modbus主站通讯 准备工作: 将Dongle插入CP341中,Dongle和插入Dongle前后的CP341如下图所示. 图1 组态和配置 1.打开 ...

  8. TIA博途V17中如何创建和使用VoT应用程序_Web功能

    TIA博途V17中如何创建和使用VoT应用程序_Web功能 首先是TIA V17软件的安装: 下载好安装文件之后,选择"Start"双击直接安装.如下图所示, 西门子软件安装的标准 ...

  9. TIA博途软件中程序编辑区标题上的收藏快捷指令取消了,如何恢复显示?

    TIA博途软件中程序编辑区标题上的收藏快捷指令取消了,如何恢复显示? 对于刚接触博途软件的小伙伴来说,上手还是需要一些时间的,如果在使用时,不小心把程序编辑区上方收藏的快捷指令取消了,如果进行显示呢? ...

最新文章

  1. 制作安全网站的checklist
  2. python 模拟浏览器selenium 微信_Spider-Python爬虫之使用Selenium模拟浏览器行为
  3. 安波副教授:分布式人工智能进展与趋势
  4. Vue Iview Tree插件的无限层
  5. POJ1321 棋盘问题(DFS)
  6. Faster R-CNN的安装及测试(Python版本和Matlab版本)
  7. jq-AJAX 初步了解
  8. mybatis之动态SQL操作之查询
  9. 【转】解密Qt安装目录的结构
  10. Mysql在window下的表现_Mysql在windows系统下的配置
  11. 按条件分类_史上最全物流仓储分类方式
  12. FPGA图像加速解决方案来了
  13. Bailian3245 空调排名【水题】
  14. dos 批处理 for知识学习
  15. oracle元转换为亿元,元换算成亿元(亿元和圆的换算)
  16. 霍夫斯特拉大学计算机科学专业排名,美国霍夫斯特拉大学的最新排名
  17. iOS:error: unable to read input file
  18. 优化GNU/Linux桌面安装的九个步骤
  19. lzo的正确c语言代码,LZO 使用跟介绍
  20. 网站域名备案查询方法,批量查询网站域名备案的教程

热门文章

  1. 20分钟上手ES6,不会ES6好意思说自己会JS ?
  2. android g711,Android 录音PCM 转G711U,非常简单,非FFMPEG
  3. java阻止gsea,手把手教你如何使用GSEA
  4. mysql查询查询树结构,通过树结构查询一个自己昵称和父级节点的昵称
  5. Word发送错误报告怎么办?看我2招搞定!
  6. 【调试】ChromeDevTool高级调式
  7. 腾讯X5 初始化失败
  8. 微信小程序 数据请求 GET请求和POST请求
  9. 有道云翻译API翻译JavaScript使用教程
  10. STM32中独立看门狗的配置