RS232和RS485用PLC编程实例,你知道怎么调试吗?经典小工具分享
最近有好朋友问我,为什么我用PLC写的232/485通讯程序不好用?我应该怎么测试是哪出现了问题?正好我最近写了一个西门子S7-200smart利用RS485进行自由口通讯向电脑发送状态的小程序,在这里和大家分享一下。
相信大家对RS232和RS485比较熟悉了,研究工业电气的都知道,前段时间这两个字眼在头条上太火了,火到我本来不想看最后也点进去看了几篇,但大多数文章写到的都是理论讲解,因此,这篇文章不会讲太多理论,需要理论知识的请去搜索。
以前我们讲过,一些电子称具备RS232/485接口,可以与PLC进行通讯,那么除了这个功能,它还可以干什么?
PPI协议是西门子自己的协议,为自己的设备做连接用的。
我们重点说下自由口通讯,自由口通讯不限设备的限制,只要是支持RS485/232通讯的,不论是不是西门子的都可以使用。比如说不同PLC之间的通讯读写数据,以及和一些驱动器做通讯读写数据或者是给电脑端读写数据。
今天我们了解一下如何使用西门子S7-200SMART使用RS485端口与电脑进行通讯并调试。
首先S7-200SMART自带一个485接口,还可以拓展一个485接口,需要在硬件里配置波特率。
硬件连接需要一个PLC,一个485转232的转换器,以及一台带串口的电脑或者笔记本加串口转USB,以及串口调试工具。
西门子S7-200SMART PLC
485转232转换器(电脑侧是232)注意线序不要接错了,接错后依然有数据,只是数据是反的。
电脑端口
编程时需要配置接口信息,比如说用哪个接口发送,通讯参数是多少等等。
S7-200smart 可接两RS485口
通讯参数是特殊存储器SMB30(端口0)和SMB130(端口1)
端口设置
假如需要传输的数据是(波特率9600,无奇偶效验,数据位8,停止位1),数据从端口0传输,那么将9赋值给SMB30。
然后我们看下发送和接收指令,XMT和RCV,这两个指令需要注意的是;
1 指令需要以脉冲形式触发。
2发送或者接受的第一个字节的含义是你要发送的字节总字数。且不包含第一个。比如说我发送从VB801-VB876,所以发送地址需要写VB800,且VB800赋值为76。
主程序
程序解析;因为协议是“波特率9600,无奇偶效验,数据位8,停止位1”利用端口1进行通讯,利用脉冲触发XMT。
最后我们下载程序并触发脉冲,那么怎么进行调试呢?我们需要串口调试工具,本文用到的串口调试工具是作者从业多年用的最好的一款,绿色无需安装,且没有BUG,打开软件后,我们打开COM口,即可接收数据,还可以看到数据的总量,非常方便,有需要下方留邮箱。
当然如果想发送让PC识别的语言的话,需要借助ASC码来帮助,这个码,大家可以去网上查找,即是通过用计算机容易发送的数字来表示字母;(比如说A在码中以16进制数字41代替,Z在码中以16进制数字5A代替)通过这个转换,PLC终于可以按照人的意愿和PC对话了,但要切记,通讯过程中的字与字之间最好用分隔符分开,而且安全起见,最后一位可以通过程序做效验。
对于一些复杂的自由口通讯协议,比如说松下伺服驱动器等涉及精度,复杂功能或者安全等,需要多次读写发送来验证是否通讯有效,这就需要中断来帮助,在这里对于端口0发送完成的标志是中断事件9,端口1发送完成的标志是中断事件26,对于端口0接收完成的标志是中断事件23,端口1接收完成的标志是中断事件24。中断是另一个知识点了,如果有想要学习中断的可以在下方留言。
西门子1200博图CM1241模块RS485通讯电子秤实例
西门子1200博图CM1241模块RS485通讯电子秤实例
原创 山西工控 个人精进录 2024-06-29 16:36 山西
硬件配置:1214ACDCRly,CM1241模块,RS485协议电子秤,DB9针插头,网线2.打开博图软件
3.新建项目并命名
4.添加CPU模块选择1214C ACDCRly如下图
5.在右侧硬件目录下添加CM1241模块在CPU的左侧
6.在左侧程序快块打开Main主程序,下图可看到主程序为空
7.电点击右侧目录指令,并在通讯菜单下,选择MODBUSRTU--组态Modbus的端口指令,默认DB块下电点击确定。
8.PLC作为主站选择Modbus_master指令,默认DB数据块。
9.查看485模块的硬件标志符为269.并在端口指令PORT引脚对应的填写上269,在MB_DB引脚填写主站DB块下的MB_DB数据。
10.填写完成后如下图,在第1步我们看到称重的地址地位是400002,所以这里读取的地址为400002
11.下载程序
12.在线监视程序
13.Modbus端口初始化导通OK
14.主站获取数据导通后报错
15.主站获取数据导通后报错内容
16.经查看RS485初始化指令背景数据块参数有未修改的地方;需要将模式改为RS485。
Modbus_comm_load指令背景数据块儿中的静态变量"MODE"用于描述PTP模块的工作模式,有效的工作模式包括:
0:RS232全双工; 1:RS422全双工四线制点对点
2/3:RS422全全双工四线制多点主站;4半双工RS485二线制;
17.修改完成后重新下载,并点击STOP----→RUN重新启动CPU;报错不在了。
18.导通初始化指令没报错,导通主站指令未报错。
19.将程序中重量参数显示为十进制,进行实物数据和程序读取到的数据进行对比OK.
20.总结
Modbus_comm_load指令背景数据块儿中的静态变量"MODE"用于描述PTP模块的工作模式,有效的工作模式包括:
0:RS232全双工; 1:RS422全双工四线制点对点
2/3:RS422全全双工四线制多点主站;4半双工RS485二线制;
默认模式为0,我们需要根据项目实际需求进行修改;
注意:下章节详细讲解一下这部分通讯内容(大部分为转载图片)
西门子5
plc6
485通讯2
西门子 · 目录
上一篇组态王4---与西门子1200通讯(IO,WD,字符)下一篇西门子1200PLCModbus通讯协议讲解
个人观点,仅供参考
阅读 919
写留言
个人精进录
关注
91024
写留言
写留言
复制搜一搜分享收藏划线
人划线
相关问答
怎样把称重信号输入PLC?我现在有一台宁波柯力XK3101型称重显...
[最佳回答]大概明白你的意思了1.PLC需要有模拟量输入模块,用模拟量模块接受称重传感器的模拟量,PLC里有特殊寄存器可以直接读取到这个数值2.人机界面一般选...
三菱plc与电子称圧力传感器连接?
一般传感器都是模拟量输出,会有两根线出来,接到PLC的模拟量输入口就行了。一般传感器都是模拟量输出,会有两根线出来,接到PLC的模拟量输入口就行了。
称重值怎样在plc触摸屏显示?
我用过的称重,电子称会有RS232信号输出与PLC相连,PLC将接收到的数据保存在特定DM区,触摸屏用数字显示元件,直接指向该DM区,就能显示了我用过的称重,电子称会...
电子秤跟气动阀怎么连接?
连接电子秤与气动阀需要一些额外的组件,通常需要使用PLC或仪表仪器等控制器作为中间件来控制开启和关闭气动阀。具体的连接方式可以参考以下步骤:1.将电子...
如何使用称重传感器?
使用称重传感器的具体步骤可能会因传感器型号和应用场景而有所不同,但以下是一般的使用方法:连接电源:将称重传感器连接到适当的电源,通常是直流电源。确保...
大华电子称怎么连接电脑呀?
1、电子秤里会随机自带一套设置软件,在这个软件中设置商品的PLC信息和条码标签格式。2、设置完成,用数据线与电脑连接,一般有串口和网线接口两种连接方式。...
大华电子秤条码怎么设置?谢谢?
不同品牌的条码电子秤的设置方法是不一样的,如果是上海大华的,会随机自带一套设置软件,在这个软件中设置商品的PLC信息和条码标签格式,设置完成,用数据线与...
能告诉我:专业的装载机计重秤如何校准,装载机计重秤哪家经...
[回答]各个类型电子秤校准常用方法:1.ACS系列电子称:按下ON/TARE(开机键)并即时松开,再同时按下ON/TARE并保持不松开,直到显示“TEST”格不同显示数值不同...
称重包装机有哪些规格
[回答]2、自动包装机的包裝方法为挎包,包裝材料为复合膜3、全自动显示信息包裝总数,可便捷的统计分析出设备的劳动量。4、自动包装机选用良好的PLC自动控...
收银机电子称对接应该怎么做?-一起装修网
一起装修网问答平台为您提供收银机电子称对接应该怎么做?的相关答案,并为您推荐了关于收银机电子称对接应该怎么做?的相关问题,一起装修网问答平台:装修问题,因我...