设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
排行榜
积分充值
帖子
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国产:台达/汇川/信捷产品交流区』
›
独家整理:信捷PLC模拟量处理技巧,信号滤波与校准方法. ...
返回列表
发新帖
[信捷]
独家整理:信捷PLC模拟量处理技巧,信号滤波与校准方法...
[复制链接]
78118
|
0
|
5 天前
|
显示全部楼层
|
阅读模式
1.
1.场景还原
在一个化工厂的反应釜控制系统中,我们需要使用信捷PLC对反应釜内的温度和压力进行精确控制。
温度传感器输出4-20mA信号,对应0-200°C;压力传感器输出0-10V信号,对应0-10MPa。
由于现场环境复杂,模拟量信号容易受到干扰,造成读数波动,影响控制精度。
我们需要对模拟量信号进行滤波处理和校准,以获得稳定可靠的测量值。
2.
2.原理解析
2.1模拟量信号转换
信捷PLC的模拟量输入模块将4-20mA或0-10V的模拟信号转换为0-32000的数字量。转换公式如下:
对于4-20mA信号: 数字量=(模拟量-4)*32000/16
对于0-10V信号: 数字量=模拟量*32000/10
2.2滤波算法
为了消除信号波动,我们采用移动平均滤波算法。该算法取最近N次采样的平均值作为当前值,可以有效平滑短期波动。
2.3校准方法
通过两点校准法对测量值进行线性校准,消除传感器和模拟量模块的系统误差。校准公式为:
实际值=a*测量值+b
其中a和b通过在两个已知点采集数据计算得出。
3.
3.代码实现
3.1PLC梯形图
LDSM0 MOVD32000,D100//D100存储量程 MOVD200,D102//D102存储温度量程 MOVD10,D104//D104存储压力量程
//温度信号处理 LDSM0 MOVWAIW0,D0//读取模拟量输入 MOVDD0,D10//转换为浮点数 DIVD100,D10 MULD102,D10//转换为实际温度值
//移动平均滤波 LDSM0 CALLMOVE_AVG MOVDD20,D30//D30存储滤波后温度值
//压力信号处理(类似温度处理) LDSM0 MOVWAIW2,D2 MOVDD2,D12 DIVD100,D12 MULD104,D12
LDSM0 CALLMOVE_AVG2 MOVDD22,D32//D32存储滤波后压力值
//校准处理 LDSM0 MOVDD30,D40 MULD200,D40//D200存储温度校准系数a ADDD202,D40//D202存储温度校准常数b
MOVDD32,D42 MULD204,D42//D204存储压力校准系数a ADDD206,D42//D206存储压力校准常数b
3.2PLC程序设计说明
1.使用D0、D2存储原始模拟量数值 2.D10、D12存储转换后的实际物理量 3.D20、D22存储滤波后的数值 4.D30、D32存储滤波后的物理量 5.D40、D42存储校准后的最终物理量 6.调用MOVE_AVG子程序进行移动平均滤波 7.使用乘法和加法指令进行线性校准
3.3I/O表
地址|类型|说明 ---|---|--- AIW0|模拟量输入|温度传感器信号 AIW2|模拟量输入|压力传感器信号 D40|数据寄存器|校准后温度值 D42|数据寄存器|校准后压力值
4.
4.应用案例
以下是一个具体的应用案例,展示如何实现温度信号的滤波和校准:
1.首先实现移动平均滤波子程序:
MOVE_AVG: LDSM0 MOVDD10,D50//当前温度值存入D50 MOVDD52,D54//移动数据 MOVDD54,D56 MOVDD56,D58 MOVDD50,D52//新数据存入队列
MOVDD50,D60//求和 ADDD52,D60 ADDD54,D60 ADDD56,D60 ADDD58,D60
DIV5,D60//除以5得到平均值 MOVDD60,D20//结果存入D20
RET
2.在主程序中调用滤波子程序,并进行校准:
LDSM0 CALLMOVE_AVG//调用滤波子程序
MOVDD20,D30//滤波结果存入D30 MUL1.02,D30//校准系数a=1.02 ADD0.5,D30//校准常数b=0.5 MOVDD30,D40//最终结果存入D40
3.校准系数的获取:
在0°C时,读取D30的值为-0.4
在100°C时,读取D30的值为98.2
计算得出:a=(100-0)/(98.2+0.4)≈1.02,b=0-(-0.4
1.02)≈0.5 4.HMI显示和监控:
在HMI上创建一个数值显示控件,地址指向D40
设置显示格式为小数点后1位 *设置单位为“°C”
通过以上步骤,我们实现了温度信号的滤波处理和精确校准,最终在HMI上显示稳定可靠的温度数值。
5.
5.总结
本文详细介绍了使用信捷PLC处理模拟量信号的方法,包括信号转换、滤波算法和校准技术。
通过移动平均滤波,我们有效减少了信号波动;通过两点校准,我们提高了测量精度。
这些技术可以广泛应用于各种工业控制场景,提高系统的稳定性和可靠性。
在实际应用中,还需要根据具体情况调整滤波参数和校准方法,以获得最佳效果。
希望本文的内容对大家在使用信捷PLC进行模拟量处理时有所帮助。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
剑指工控
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』