PLC如何转换处理模拟量信号?3分钟带你搞定
模拟量信号是自动化过程控制系统中最基本的过程信号(压力、温度、流量等)输入形式。系统中的过程信号通过变送器,将这些检测信号转换为统一的电压、电流信号,并将这些信号实时的传送至控制器(PLC)。
PLC通过计算转换,将这些模拟量信号转换为内部的数值信号。从而实现系统的监控及控制。从现场的物理信号到PLC内部处理的数值信号,有以下几个步骤:
从以上PLC模拟量的信号输入流程可以看到,在自动化过程控制系统中,模拟量信号的输入是非常复杂的。但是,在现目前的工业现场,对模拟量信号的处理已基本都采用电流信号方式进行传输,相比于电压信号方式,电流信号抗干扰能力更强,传输距离更远,信号稳定。
这里就PLC对模拟量信号的转换过程进行一个简单的分解介绍。
PLC对模拟量信号的转换
▲ 西门子S7-200SMART PLC模拟量模块对模拟量信号的转换范围
▲ 台达DVP系列模拟量模块对模拟量信号的转换范围
从以上可以看到:
1、模拟量信号接入PLC后,PLC将模拟量信号转换为了整型数据,不是浮点数(如西门子-27,648 到 27,648);
2、不同品牌的PLC对模拟量转换范围是有差异的(如西门子-27,648 到 27,648;台达-32,384 到 32,384);
3、PLC同一个模块对不同类型的模拟量信号的转换范围是一致的(如西门子对±10 V、±5 V、±2.5 V 或 0 到 20mA的模拟量信号的转换范围均为-27,648 到 27,648);
故从以上几点我们可以知道,接入PLC的模拟量信号还需要进行再转换处理,才可以得到与实际物理量相匹配的数据;在进行数据转换处理的时候,还应该与使用的PLC模块的处理数据范围相对应。
PLC数据转换处理过程
1、模拟量信号与PLC转换数据之间的转换
从以上内容知道,从PLC直接读取到的模拟量信号为整型数据,整型数据无法直观的反馈出实际的物理量大小,故为了能够直观的反馈出现场的过程信号情况,还应该将这些整型数据转换为反馈直观真实的浮点数信号。这里以台达PLC模拟量输入模块的数据处理过程为例说明。
以上为台达PLC电流输入信号与读取信号的对应关系。
通过以上对应关系图,可以知道对于一个任意的电流输入信号(X),与读取到的数值信号(Y),有如下的对应关系:
将以上公式变换,则可以得到以下直接转换公式,如下:
由以上公式,可以将PLC读取到的整数数据,转换为PLC接收到的模拟量电流信号值。
2、实际物理值与模拟量数据之间的转换
实际物理值与模拟量数据之间的转换方式同上面的转换方式相同。如下为某压力变送器的压力与模拟量信号范围(0.1-10bar,4-20mA),同样的,压力与电流之间有如下的转换关系公式:
将以上公式变换,则可以得到以下直接转换公式, 如下:
由以上公式,可以直接将模拟量电流信号转换为压力值数据。
3、实际物理值与PLC内部数据直接的转换
将PLC读取到的数据转换为实际的物理值,通过以上两步转换就可以得到。在处理时跳过输入信号值大小的转换,可以得到如下关系:
将以上公式变换,则可以得到以下直接转换公式, 如下:
通过此公式,就可以直接通过PLC读取到的数据转换为实际的物理量值。
以上即为PLC对模拟量信号的处理过程及方法。
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。中断是另一个知识点了,如果有想要学习中断的可以在下方留言。
相关问答
plc模拟输入怎么变成数字输出?
4-20mA或0-10V或热电阻或热电偶等模拟量输入信号接入模拟量输入模块,模拟量输入模块有模拟量转换成数量量的转换器,如西门子PLC4-20mA对应数字量为0/27648,转...
西门子S7-1200PLC如何转换模拟量?
刚好手头有一个项目有用到模拟量输入输出的,下面就讲解一下首先我这里用的模拟模块是SM1234模块4输入2输出下面是软件设置,可以选择电压模式或者电流模式...
在这个plc控制实例中模拟量与数字量是如何转换的-懂得
PLC基本模块是不能实现直接控制的。所以有两个选择,一是用温控仪和热电偶来直接控制。2是用PLC的温度控制模块(扩展)读取热电偶的温度,将模拟量再转...
PLC开关量模拟量如何转换?
PLC因着其体积小,集中控制,智能化和自动化等优点,逐步取代了传统的继电器配电柜等,广泛的应用在了工业控制和生产生活中。其中PLC开关量信号和模拟量信号的转...
更换pLC旧模块还用从新编程吗?
要,因为是用低通滤波即可以实现。数字信号先进行解码,即把数字码转换成与之对应的电平,形成阶梯状信号,然后进行低通滤波。要,因为是用低通滤波即可以实现。...
信号转换模块是干什么用?
信号转换模块就是将PLC,计数器、高速数字开关,马达控制系统输入输出信号转换为与传感器、伺服、编码器、光栅尺等接口匹配的接口类型,实现工业控制设备之间...
欧姆龙PLC输入模块上0-1转换开关有什么用?
根据你的输入输出模块的点数的区别,16点及以下的没有这个开关,32点及以上的有这个开关。这个开关上面有个小面板,用来显示该模块的IO状态的,点ON时所对应的L...
plc中al是什么意思?
警告的意思英语alarm的简写。应该是你的PLC硬件或者接线出现问题。PLC的程序有错误也会报警。plc是可编程逻辑控制器(ProgrammableLogicController,PLC)...
三菱plcfx3u4ad模拟量模块怎样编程?
1、FX3UC-4AD分辨率为15位二进制+符号1位(电压)、14位二进制+符号1位(电流〉的高精度模拟量输入模块。2、可进行4通道的电压输入(DC-10~10V)、或者电流输入...
plc控制数显调速器怎么接线?
要将PLC控制数显调速器进行接线,首先需要确定PLC的输出信号类型和数显调速器的输入信号类型。通常情况下,PLC的输出信号为数字信号,而数显调速器的输入信号为...
扫一扫微信交流