串口通讯之ET200S 1SI模块进行ASCII通讯

时间:2023-03-17来源:佚名

1. 概述
串口模块ET200S 1SI(订货号:6ES7 138-4DF01-0AB0)是一款用于ET200S上的串口模块,支持两种软件协议(ASCII和3964(R)),通过接线区分可支持三种硬件接口(RS232C、RS422和RS485)。
在Step 7硬件组态中选择模块时,硬件目录中有以下六种版本的模块:
• ASCII (4B)
• ASCII(8B)
• ASCII(32B)
• 3964(R) (4B)
• 3964(R) (8B)
• 3964(R) (32B)
4/8/32字节代表数据传输的吞吐率大小,字节数越大,吞吐率越大,即数据传输越快,但是在ET200S机架上占用的I/O存储区也越多,如果从传输速率考虑,选择32B最快,如果从占用的I/O区最小考虑,选择4B占用最少,根据具体应用要求选择。
模块信息及指示灯含义,如下图1所示。

串口通讯之ET200S 1SI模块进行ASCII通讯
图1 模块指示灯含义

RS232C、RS422和RS485三种接口通讯的终端模块端子分配和电缆连接,如下图2/3/4所示。

串口通讯之ET200S 1SI模块进行ASCII通讯
图2-1 RS232C接口终端模块端子分配

串口通讯之ET200S 1SI模块进行ASCII通讯

图2-2 RS232C接口终端模块电缆连接

串口通讯之ET200S 1SI模块进行ASCII通讯
图3-1 RS422接口终端模块端子分配

串口通讯之ET200S 1SI模块进行ASCII通讯

图3-2 RS422接口终端模块电缆连接

串口通讯之ET200S 1SI模块进行ASCII通讯
图4-1 RS485接口终端模块端子分配

串口通讯之ET200S 1SI模块进行ASCII通讯

图4-2 RS485接口终端模块电缆连接

注意:RS485接口内部已经短接,不需要外部短接处理,只要直接连接1,2,8。


2. 软件环境

2.1 STEP7 V5.4 SP5
用于编写S7-300/400程序,此软件需要从西门子购买,本文档中的部分代码使用Step7 V5.4 SP5的软件编写。

2.2 ET200S 1SI 串行接口模块的功能块
STEP 7 软件中不包含ET200s 1SI模块做串口通讯的功能块,需要单独安装一个软件,然后在Libraries下才有ET200sSI的库,功能块可供通讯调用,该软件从以下的链接下载。25358470

2.3 串口调试器
第三方提供的串口调试工具,可以从互联网上免费下载,可用于测试串口通讯。


3. 硬件列表和接线

3.1 硬件列表

CPU CPU317-2PN/DP 6ES7 317-2EK14-0AB0
ET200S 接口模块 6ES7 151-1BA01-0AB0
功率模块 6ES7 138-4CA00-0AA0
1 SI串口模块 6ES7 138-4DF01-0AB0
功率模块的终端模块 TM-P15S23-A0 6ES7 193-4CD20-0AA0
电子模块的终端模块 TM-E15C24-01 6ES7 193-4CA30-0AA0

表1 硬件设备

3.2 硬件接线示意图
以RS232C的方式接线为例说明,1 Si 模块按照RS232C的接线方式连接到电脑的232口,连接示意图如下所示。

串口通讯之ET200S 1SI模块进行ASCII通讯
图5 硬件结构和接线示意图


4.组态设置和编程

4.1 组态和配置

1.打开STEP7,点击File->New...创建一新项目,项目名称为et200s ASCII。

串口通讯之ET200S 1SI模块进行ASCII通讯
图6新建项目对话框

2.用鼠标右键点击项目名称,选择Insert New Object->SIMATIC 300 Station,更改站的名称为 317-2PN/DP ,如下图7所示。

串口通讯之ET200S 1SI模块进行ASCII通讯

图7 插入S7-300站

3. 在硬件组态中按订货号和硬件安装次序依次插入机架、CPU和ET200S标准从站模块,如下图8所示,注意所选串行接口模块为32字节的1SI ASCII (这里仅考虑数据传输的吞吐率,不考虑占用的I/O存储区的大小)。

串口通讯之ET200S 1SI模块进行ASCII通讯
图8组态硬件

4.双击1 SI ASCII 模块,点击Parameter选项,配置串口通信 参数。

串口通讯之ET200S 1SI模块进行ASCII通讯
图9 参数分配

本例中,“Interface”设为RS232C接口,勾选断线诊断,流量控制:无。通信波特率:9.6kb/s,数据位:8位,停止位:1位,奇偶效验:无,字符延迟时间:4ms,其他的参数都采用默认设置。注意:设定的参数要和通讯伙伴的相 同。

部分参数说明:

1.接口的选择

串口通讯之ET200S 1SI模块进行ASCII通讯
图10 接口设置

三种接口中:RS232C和RS422接口可以选择“断线检测”和“数据流量控制” 的功能, RS485/422可以设置“接收线路的初始化状态”。
2.字符桢的格式:支持10位和11位的字符桢格式,包括数据传输的波特率,数据位,停止位和奇偶校验位。
3.接收字符桢结束判断条件

串口通讯之ET200S 1SI模块进行ASCII通讯
图11 结束判断条件

On expiration of character delay time: 以固定的字符延迟时间为每帧数据的结束方式;
On receipt of end-of-text character: 以结束字符作为每帧数据的结束方式;
On receipt of fixed number of characters: 以固定的字符长度作为每帧数据的结束方式。


4.缓冲区处理方式

串口通讯之ET200S 1SI模块进行ASCII通讯
图12 缓冲区设置

Dynamic Message frame buffer:如果勾上,模块就可以缓冲多个不同长度的消息;
Prevent message frame buffer overwrite:如果勾上,防止接收到的新消息覆盖缓冲区中的消息桢,这可以防止丢失以前接收到的消息桢;
Delete receive buffer during CPU startup:如果勾上,当CPU的工作模式从STOP切换到RUN(CPU启动)时,模块的接收缓冲区自动清空。
更多关于串口接口模块的组态和参数设置,请参考手册《ET 200S 串行接口模块》第2.9章节的内容,手册链接:9260793

4.2 编程

4.2.1 plc侧编程

1.程序调用:从库Libraries -> ET200s SI -> ET200S Serial Interface -> ET200s SI中调用功能块,调用发送 FB3(S_SEND)和接收 FB2(S_RCV),并为其分配背景数据块分别为DB30和DB20,将块参数LADDR设为硬件组态中1 SI模块的起始逻辑地址256。

串口通讯之ET200S 1SI模块进行ASCII通讯
图13 ET200S串口模块的逻辑地址


2.创建发送数据块DB1和接收数据块DB2

串口通讯之ET200S 1SI模块进行ASCII通讯

图14发送/接收数据块DB1/DB2

3.调用发送功能块
ET200S 1SI 的发送功能块FB3 S_SEND 的参数设置见下表2。

LADDR 硬件组态中串口模块的起始逻辑地址,本例中为256
DB_NO 发送数据块号,本例中为1(DB1)
DBB_NO 发送数据的起始地址,本例中为0(从DB1.DBB0开始)
LEN 发送数据的长度,本例中为10
REQ 发送数据触发位,上升沿触发,本例中为M0.0
R 取消通讯,本例中不用
COM_RST 如果为1 ,重新启动FB,本例中为M0.2
DONE 发送完成位,发送完成且没有错误时为TRUE,
ERROR 错误位,为TRUE说明有错误
STATUS 状态字,标识错误代码,察看ET200S串行接口模块手册获得相应的说明

表2 FB3 S_SEND 的参数定义

串口通讯之ET200S 1SI模块进行ASCII通讯
图15 在程序中调用FB3 S_SEND

4.调用接收功能块
ET200S 1SI的接收功能块FB2 S_RCV的参数设置见下表3。

LADDR 硬件组态中串口模块的起始逻辑地址,本例中为256
DB_NO 接收数据块号,本例中为2(DB2)
DBB_NO 接收数据的起始地址,本例中为0(DB2.DBB0)
LEN 接收数据的长度,本例中为MW4,只有在接收到数据的当前周期,此值不为0 ,需要编程读出
EN_R 使能接收位,本例中为M0.2
R 取消通讯,本例中不用
COM_RST 如果为1 ,重新启动FB,本例中为M0.2
NDR 接收完成位,接收完成并没有错误时为TRUE
ERROR 错误位,为TRUE时说明有错误
STATUS 状态字,标识错误代码,查看ET200S串行接口模块手册获得相应的说明

表3 FB2 S_RCV的参数定义

串口通讯之ET200S 1SI模块进行ASCII通讯

图16 在程序中调用FB2 S_RCV

4.2.2 PC机参数设置
参数分配:串口选择COM1(默认),传输波特率为9.6Kb/s, 8位数据位,无校验,1位停止位,这些参数要和ET200s中1SI ASCII模块设置一致,同时将串口调试软件打开。

串口通讯之ET200S 1SI模块进行ASCII通讯
图17 串口调试软件参数设置

4.3 通讯测试

1.ET200S 1SI发送数据,调试软件接收数据
首先将硬件配置和程序下载到PLC,将DB1中前10个字节设为十六进制的01 02 03 04 05 06 07 08 09 10 ,然后将FB3的M0.0从FALSE置成TRUE,ET200S将发送数据10个字节数据,可以从串口调试软件的接收字符窗口中看到收到的数据(十六进制),结果如下图18所示。

串口通讯之ET200S 1SI模块进行ASCII通讯
图18 ET200S 1SI发送数据调试软件接收数据测试结果

2.调试软件发送数据,ET200S 1 SI接收数据
首先将硬件配置和程序下载到CPU中,将FB2的M0.1设为TRUE,使能ET200S 接收。在PC机的串口软件打开,在发送字符输入窗口输入16进制数据1122334455667788 9900,然后点击“手动发送”按钮发送数据,则在PLC侧DB2的前10个字节能接收到数据,接收的长度为10,测试结果如下。

串口通讯之ET200S 1SI模块进行ASCII通讯

图19调试软件发送数据ET200S 1SI接收数据测试结果

相关阅读

贴片电容料号的编写构成

贴片电容 料号 0603 B 273 K 500 N T 0603:尺寸常用尺寸还有0402、0805、1206(0201适用于手机)尺寸单位英制(英寸)、公制(毫米)。 B:材质X7R、X5R、NPO、Y5V 273:容量27NF K:精度K、J、M 500:...
2023-03-31

电工电路的基本文字符号都有哪些?

在电气工程与电子技术领域,电工电路的基本文字符号是沟通设计师、工程师、技术人员乃至学生之间不可或缺的“语言”。这些符号不仅简化了电路图的绘制过程,还极大地...
2024-08-09
电工电路的基本文字符号都有哪些?

傻傻分不清电路?专业电气学姐为你全方面解读(六)

久违的电气学姐带你学电路又来了!大家是不是期待已久啊!现在就让我们一起学习吧!在上一部分的学习中,相信大家对电压源和电流源也有了一定的掌握,那么,我们这次接着来学...
2023-06-27
傻傻分不清电路?专业电气学姐为你全方面解读(六)

装设四极隔离开关需要注意些什么?

隔离开关安装要求有哪些? 隔离开关在安装前必须认真进行外观检查,外观检查的主要内容如下: (1)检查隔离开关的型号、规格是否与设计相符。 (2)检查零部件有无损坏,闸刀及触头有...
2023-06-27
装设四极隔离开关需要注意些什么?

电气新手必知:变压器原理(专业电气学姐带你学二十八)

谈及变压器,我想没有哪位电工朋友是没听过的,而且大家对它或多或少应该都有一定的了解。变压器是一种很常见的电气设备,它的应该非常广泛,不管是在电力系统或者的在电子电...
2023-06-27
电气新手必知:变压器原理(专业电气学姐带你学二十八)

热销商品

加长球头内六角扳手L型六方棱套装万能2 2.5 3 4 5 6 8 10-30号mm

加长球头内六角扳手L型六方棱套装(22.5–30mm)专为高扭矩与深孔作业设计,适用于机械维修、工业装配及精密设备维护。套装涵盖22.5、3、4、5、6、8、10至30mm等多种规...
1.15

萝卜头螺丝刀磁性两用伸缩螺丝刀一字十字梅花平口短小改锥

萝卜头螺丝刀是一款多功能、便携实用的手动工具,集一字、十字、梅花(星型)等多种刀头于一体,采用磁性设计,可牢固吸附螺丝,提升操作效率。其独特的伸缩结构让刀头可灵活...
3.28

U型橡胶件玻璃包护边软胶卡槽式锋利防割划防撞封边电柜密封嵌条

U型橡胶件玻璃包护边软胶卡槽式锋利防割划防撞封边电柜密封嵌条,专为电气设备柜体、玻璃边缘及金属框架设计。采用优质耐候橡胶材质,具备优异的柔韧性与抗老化性能,...
3

儿童帽安全帽工地小孩活动团队农民工表演防砸耐安洪宏安免费印字

洪宏安儿童安全帽专为工地参观、儿童活动及农民工团队表演设计,具备优异的防砸、耐冲击性能,符合国家安全防护标准。采用轻质高强度材料,佩戴舒适,透气性好,适合长时间...
11.8

防静电镊子不锈钢摄子可换头塑料陶瓷聂孑耐高温电子维修工具套装

防静电镊子不锈钢摄子套装是一款专为精密电子维修设计的工具组合,采用高品质不锈钢材质,具备优异的耐腐蚀性与机械强度。其表面经过特殊防静电处理,有效避免静电对敏...
3.15

网站栏目