模拟量输入信号还不会换算?一个万能的程序,全部轻松搞定!
|转至:技成培训
在实际的一些项目中,会使用几十上百个模拟量输入信号,这些模拟量输入信号可能是电压、电流或者热电阻信号等等,如果每个都单独处理的话,非常耗费时间。我们就想着能不能使用一个程序,简单配置一下,就能处理所有的模拟量输入信号呢?当然是可以实现,这也是我们这篇文章要解答的问题,请接着往下看。
西门子S7-1200/1500 PLC中模拟量模块的类型包括电压/电流、电阻/热电阻、热电偶,如图所示:

这三类模拟量模块的信号,又可以概括为四种情况:
a.单极性信号
不过零的模拟量信号变化为单极性信号,比如0~5V、4~20mA、0~300Ω。
单极性模拟量信号的额定测量范围为0~27648,其转化公式为:

以一个检测距离0~200mm,模拟量信号为0~10V的传感器,当In等于13824时,带入公式的Out的物理量实际值等于100mm。
b.双极性信号
过零的模拟量信号变化为双极性信号,比如±10V、±80mV。
双极性模拟量信号的额定测量范围为±27648,其转化公式为:

以一个检测角度±90°,模拟量信号为±10V的倾角传感器,当In等于-13824时,带入公式的Out的物理量实际值等于-90°。
c.标准型温度测量
将Pt100这类温度传感器的阻值转化成温度的类型。
其转化公式为:

这个公式是将模拟量测量值除以10.0得到实际的温度,比如说当前模拟量测量值为12345,那么实际的温度就是1234.5℃。
需要注意的是,如果使用热电偶,其也按照标准温度公式来转化。
d.气候型温度测量
气候型温度是一种特殊的类型,它是用来描述实际的天气温度,比如天气预报说,深圳明天的气温为10~20℃;哈尔滨明天的气温为-3~12℃。
其转化公式为:

这个公式是将模拟量测量值除以100.0得到实际的温度,比如说当前模拟量测量值为2062,那么实际的温度就是20.62℃。
在一个项目中,具有64个模拟量输入信号,其信号地址和类型如下所示:

按照该项目需求,进行程序编写,主要分为以下几个步骤:PLC和模块组态、将模拟量地址映射到数组、新建FB模板程序、编写控制程序。
a.PLC和模块组态
按照实际的模拟量模块进行组态,并设置好对应的模拟量类型,如图所示:

b.将模拟量地址映射到数组
添加一个PLC数据类型(UDT),并命名为“typeChannel”,如图所示:

在PLC变量中,添加一个名称为 “AIChannel”,数据类型为“typeChannel”的数据,如图所示:

c.新建FB模板程序
添加一个名称为“typeAI”,并添加模拟量通道的元素,如图所示:

再添加一个名称为“AIConvert”的FB函数块,并在接口中添加参数,如图所示:

d.编写控制程序
使用一个FOR循环指令来进行初级处理,如果“enable”为TRUE,则启用该通道,并根据该通道的类型进行CASE判断,并处理程序,如图所示:

将该FB在OB1中进行调用,并新建全局变量,并关联形参,如图所示:

为了便于仿真测试,添加一个数组用于模拟AI信号值,如图所示:

仿真在线监控,这里将前三个模拟量通道配置为单极性,物理值范围为0~100.0Mpa,当模拟量通道有信号输入时,得到的模拟量转化值如图所示:

回到最开始的那个问题,我们使用一个FB程序块,简单配置后,就实现了所有模拟量信号的转化。这个程序为第一个版本,后续可以根据需要对模拟量通道故障进行处理,模拟量的滤波也可以在该程序上进行修改和完善。如果本案例对你有用,请关注公众号,并点赞转发让更多人知道。
专栏:行业资讯
作者:
行业资讯
来源:
行业资讯
{"weixin":{"label":"微信","name":"weixin","selected":true,"value":true,"sortid":"1","shareid":"weixin","sharetitle":"分享到微信","event":"shareToWeiXin","lang":"shareWeb_WeiXin"},"copy":{"label":"复制网址","name":"copy","selected":true,"value":true,"sortid":"2","shareid":"copy","sharetitle":"复制网址","event":"copy_url","lang":"shareWeb_Copy"},"qq":{"label":"QQ好友","name":"qq","selected":true,"value":false,"sortid":"2","shareid":"qq","sharetitle":"分享到QQ","event":"shareToQQ","lang":"shareWeb_QQ"},"sina_weibo":{"label":"新浪微博","name":"sina_weibo","selected":true,"value":true,"sortid":"4","shareid":"sina_weibo","sharetitle":"分享到新浪微博","event":"shareToSinaWB","lang":"shareWeb_SinaWeiBo"},"qq_zone":{"label":"QQ空间","name":"qq_zone","selected":true,"value":true,"sortid":"5","shareid":"qq_zone","sharetitle":"分享到QQ空间","event":"shareToQzone","lang":"shareWeb_QQZone"},"renren":{"label":"人人网","name":"renren","selected":true,"value":false,"sortid":"7","shareid":"renren","sharetitle":"分享到人人网","event":"shareToRenren","lang":"shareWeb_RenRen"},"douban":{"label":"豆瓣网","name":"douban","selected":true,"value":true,"sortid":"8","shareid":"douban","sharetitle":"分享到豆瓣网","event":"shareToDouban","lang":"shareWeb_DouBan"},"baidu_tieba":{"label":"百度贴吧","name":"baidu_tieba","selected":true,"value":true,"sortid":"10","shareid":"baidu_tieba","sharetitle":"分享到百度贴吧","event":"shareToTieba","lang":"shareWeb_TieBa"},"Facebook":{"label":"Facebook","name":"Facebook","selected":true,"value":false,"sortid":"11","shareid":"Facebook","sharetitle":"分享到FaceBook","event":"shareToFacebook","lang":"shareWeb_Facebook"},"Twitter":{"label":"Twitter","name":"Twitter","selected":true,"value":false,"sortid":"12","shareid":"Twitter","sharetitle":"分享到Twitter","event":"shareToTwitter","lang":"shareWeb_Twitter"},"LinkedIn":{"label":"LinkedIn","name":"LinkedIn","selected":true,"value":false,"sortid":"13","shareid":"LinkedIn","sharetitle":"分享到linkedIn","event":"shareToLinkedin","lang":"shareWeb_Linkedin"},"whatsapp":{"label":"whatsapp","name":"whatsapp","selected":true,"value":false,"sortid":"15","shareid":"whatsapp","sharetitle":"分享到whatsapp","event":"shareToWhatsapp","lang":"shareWeb_whatsapp"},"line":{"label":"line","name":"line","selected":true,"value":false,"sortid":"15","shareid":"line","sharetitle":"分享到line","event":"shareToLine","lang":"shareWeb_line"},"qq_weibo":{"label":"腾讯微博","name":"qq_weibo","selected":true,"value":true,"sortid":"3","shareid":"qq_weibo","sharetitle":"分享到腾讯微博","event":"shareToQQwb","lang":"shareWeb_QQWeiBo"},"peopleBlog":{"label":"人民微博","name":"propleBlog","selected":true,"value":true,"sortid":"14","shareid":"propleBlog","sharetitle":"分享到人民微博","event":"shareToPeopleBlog","lang":"shareWeb_peopleBlog"}}