梅州S7-1200PLC西门子代理商原装现货 梅州S7-1200PLC,西门子S7-1200plc,西门子PLC代理
STEP7将模拟量输入模块的输出值转换为实际的物理量
a.模拟量输入转换后的模拟值表示方法。模拟量输入/输出模块中模拟量对应的数字称为模拟值,模拟值用16位二进制补码(整数)来表示。*高位(第15位)为符号位,正数的符号位为0,负数的符号位为1。
模拟量经过A/D转换后得到的数值的位数(包括符号位)如果小于16位(包括符号位),则转换值被自动左移,使其*高位(符号位)在16位的*高位,模拟量左移后未使用的低位则填人"0",这种处理方法称为"左对齐"。设模拟值的精度为12位加符号位,左移3位后未使用的低位(第0~2位)为0,相当于实际的模拟值被乘以了8。
这种处理方法的优点在于模拟量的量程与移位处理后的数字的关系是固定的,与左对齐之前的转换值无关,便于后续的处理。
表2-58给出模拟量输入模块的模拟值与以百分数表示的模拟量之间的关系,其中*重要的关系是双极性模拟量量程的上、下限(****和-****)分别对应于模拟值27648和-27648。单极性模拟量量程的上、下限(****和0%)分别对应于模拟值27648和0
根据模拟量输入模块的输出值计算对应的物理量时,应考虑变送器的输入/输出量程和模拟量输入模块的量程,找出被测物理量与A/D转换后的数字之间的比例关系。
b.转换举例。
【例1】压力变送器的量程为0~10MPa,输出信号为0~10V,模拟量输入模块的量程为0~10V,转换后的数字量为0~27648,设转换后得到的数字为N,试求以kPa为单位的压力值。
解:0~10MPa(0~10000kPa)对应于转换后的数字0~27648,转换公式为:P=10000N/27648(kPa)
注意在运算时一定要先乘后除,否则会损失原始数据的精度。
【例2】某温度变送器的量程为-100~500℃,输出信号为4~20mA,某模拟量输入模块将0~20mA的电流信号转换为数字0~27648,设转换后得到的数字为N,求以0.1℃为单位的温度值。
解:如图2-132所示,单位为0.1℃的温度值-1000~5000对应于数字量5530~27648。根据该比例关系,可得出以0.1℃为单位的温度T的计算公式为:
梅州S7-1200PLC西门子代理商原装现货 梅州S7-1200PLC,西门子S7-1200plc,西门子PLC代理
PLC主程序子程序和中断程序
PLC程序由主程序、子程序和中断程序等基本单元构成。PLC程序代码和计算机**程序语言类似,由可执行代码和注释组成。可执行代码由主程序和若干子程序或中断程序组成。实际操作时须对可执行代码进行编译,下载到PLC中;对程序注释则不进行编译和下载
一个包含有子程序和中断程序的程序示例如图4-1所示。该示例程序使用了一个定时中断,用于每隔100ms读取一个模拟输入的数值
主程序、子程序和中断程序
1.主程序
主程序是程序的主体,每个项目必须且只能有一个主程序。在主程序中可调用子程序和中断程序。PLC按顺序执行程序指令,每个扫描周期执行一次。
2.子程序
子程序作为PLC程序的可选单元只有在被下列程序调用时才执行:主程序、中断程序或另一个子程序。在需要重复执行某个操作时,可使用子程序。子程序可根据主程序的需要多次调用。使用子程序的优点如下:
(1)使用子程序可减少整个程序的大小。
(2)使用子程序可缩短扫描时间,因为子程序的代码不包含在主程序中。无论代码执行与否,PLC都将在每个扫描周期内执行程序代码,但只有在调用子程序时才执行子程序中的代码,并且PLC在不调用子程序的扫描期间,不执行子程序代码。
(3)使用子程序可创建可移植代码。将子程序中的代码复制,即可将该子程序移植到其他项目的程序中去。