设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
西门子 S7-1200 模拟量转换
返回列表
发新帖
[西门子]
西门子 S7-1200 模拟量转换
[复制链接]
87641
|
0
|
2024-3-28 20:08:48
|
显示全部楼层
|
阅读模式
西门子 S7-1200 模拟量转换
在PLC 编程中,遇到最多的就是将现场的模拟量信号转化为实际的工程值,如将0~20mA / 4~20mA / 0~10V等现场变送器的电流或者电压信号转化为 0~10MPa,0~100℃等工程值,对于西门子 S7-300/400,可以使用 FC105 / FC106 来实现转化,对于 S7-200/SMART200 可以使用SCALING 库程序就行转化,当然也可以根据相应的转化关系自己写更加符合现场要求的,具有更多功能的子程序,FC/FB块,那么对于新手如何使用博图 TIA 快速实现呢???
第一种方法:自己编写程序进行转化
大家都知道模拟量转化的通用公式是:Ov=[(Osh-Osl)*(Iv-Isl)/(Ish-Isl)]+Osl
Ov: 换算结果,如温度的工程值50℃;
Iv:换算对象,为模拟量模块采集上来的值;
Osh:换算结果的高限,如100℃;
Osl :换算结果的底限,如0℃;
Ish :换算对象的高限,如27648;
Isl : 换算对象的低限,如0;
然后使用 CONVERT 和 CALCULATE 指令来完成,CONVERT用来将模拟量模块采集的数据 0~27648 的 int 类型转化为实数类型 Real , 如图:
然后使用将转化后的实数使用 CALCULATE 进行数学运算,即根据公式 : Ov=[(Osh-Osl)*(Iv-Isl)/(Ish-Isl)]+Osl ,如图写入公式:
这样自己编写的程序就可以实现模拟量信号转化为工程值,当然也可以加入对信号的处理,如对信号的处理,小于0或者大于27648进行直接赋值为0或者27648,以及进行报警处理等。
第二种方法:使用“ SCALE_X ” 和 “ NORM_X ” 指令来转换模拟量值
SCALE_ X 为“缩放” ,NORM_X 为“标准化”。功能块位于 TIAPortal指令的“转换操作”中。 功能与参数的详细说明参考 帮助。若要取得某个功能块的在线帮助。
计算公式:
SCALE_X_OUT = [(NORM_X_VALUE - NORM_X_MIN)/(NORM_X_MAX - NORM_X_MIN)] * (SCALE_X_MAX - SCALE_X_MIN) + SCALE_X_MIN
NORM_X中,上下限分别为 MAX=27648 和MIN=0 ,SCALE_X中量程转化后对应于 MAX=80 和 Min=0。输入值为整数数据类型,量程转化后输出值为实数数据类型。NORM_X_VALUE对应模拟量模块采集的值。
至此,西门子博图 TIA 平台上的模拟量转化讲解完了,具体应用需要根据现场要求就行,这里只是简单的量程转化,实际应用了需要对输入信号进行提前处理如滤波处理等,做相关的报警处理。
(内容来源网络,版权归原作者)
免责声明:如涉及版权,请联系删除!任何人和机构不承担相关的法律责任。
推荐阅读:
公开课录像回放【S7-200smart与西门子V20变频器MODBUS通讯】
工程师为什么不容易找女朋友?看看你中了没。
初级工控人VS高级工控人
和电气工程师谈恋爱什么感觉?
公开课录像西门子S7-300/400 STL语言间接寻址(16位指针、32位指针)
做工控怎么样?轻松吗?赚钱吗?统一解答!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
博途之友
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』