理论教育 工程量显示中负值的处理方式

工程量显示中负值的处理方式

时间:2023-06-17 理论教育 版权反馈
【摘要】:2.显示带有负值的工程值本项目选用的温度传感器的测量范围-50~50℃,考虑到产生负值的情况,需使用标度2指令SCL2进行量程变换。

工程量显示中负值的处理方式

1.显示工程值

在本项目中,NT31C需显示温度、风阀开度等必要的信息,显示的单位为工程单位,因此需进行量程变换。如以显示冷/热水阀开度值的量程转换为例,CP1H的第2路模拟输出——冷/热水阀开度输出信号为4~20mA,满量程为十六进制数0000~1770;对应于冷/热水阀开度的实际工程值范围是0~100%,利用标度指令SCL进行量程转换,参数值存于D1020~D1023中,显示的工程值存储在D6通道中。程序段如图8-30所示。

978-7-111-48236-9-Chapter08-34.jpg

图8-30 冷/热水阀开度显示程序段

下面介绍标度指令SCL(194)的工作原理。

标度指令SCL是将无符号的二进制数按照控制数据设定的一次函数转换为对应的无符号十进制数(BCD码),并将结果输出到指定通道内。其工作原理如图8-31所示。

图8-31中,横坐标S为A-D转换得到的二进制数,纵坐标D为对应的实际工程值,由A、B两点坐标确定了一条直线,即一次函数,因此该直线上任意点均可以由其横坐标S求得对应的工程值D,SCL指令实现了转换运算,计算公式如下:

D=Bd-(BD-Ad)×(Bs-S)/(Bs-As)

SCL具有上微分型指令的特性。其梯形图符号如下:

978-7-111-48236-9-Chapter08-35.jpg

图8-31 SCL指令原理图

在CP1H PLC中操作数可选取的存储器区域如下:

S:CIO,W,H,A,T,C,D,*D、@D或DR。

C:CIO0000~CIO6140,W000~W508,H000~H508,A000~A956,T0000~T4092,C0000~C4092,D00000~D32764,*D或@D。

D:CIO,W,H,A448~A959,T,C,D,*D、@D或DR。

SCL指令中4个参数通道的含义及设置值范围如下:

978-7-111-48236-9-Chapter08-36.jpg

在使用SCL指令时需要特别注意以下两点:

1)当C(Ad)和C+2(Bd)的值不是BCD码时,或C+1(As)和C+3(Bs)的值相等时,错误标志P_ER将置位,SCL指令不能正常运行。

2)当结果通道的值为0时,等于标志P_EQ置位。

2.显示带有负值的工程值

本项目选用的温度传感器的测量范围-50~50℃,考虑到产生负值的情况,需使用标度2指令SCL2进行量程变换。以防冻温度的量程转换为例,CP1H的第3路模拟输入——防冻温度输入信号为4~20mA,A-D转换后为十六进制数0000~1770,对应的实际工程值防冻温度的范围是-50.0~50.0℃,利用标度2指令SCL2进行量程转换,参数值存于D1000~D1002中,其中D1000=BB8(X轴截取值,对应BCD码3000),D1001=1770(X的变化量,十六进制数),D1002=1000(Y的变化量,BCD码,精确到小数点后1位),程序段如图8-32所示。(www.daowen.com)

978-7-111-48236-9-Chapter08-37.jpg

图8-32 防冻温度显示程序段

当温度处于“零下”时,即-50~0℃时,进位标志P_CY置位,将换算值与立即数F000进行或运算,使转换值的最高位为“F”,此时NT31C上将会显示负号“-”,显示的绝对值存储在D3通道中。

下面介绍标度2指令SCL2(486)的工作原理。

标度2指令SCL2是将带符号的二进制数按照设定偏移量的一次函数转换为对应的带符号BCD码(BCD数据为绝对值,P_CY标志表示正负数,ON为负数,OFF为正数),并将结果输出到指定通道。其工作原理如图8-33所示。

图8-33中,横坐标S为A-D转换得到的二进制数,纵坐标D为对应带符号的实际工程值,由A、B两点坐标确定了一条直线,即一次函数,由于该直线与纵坐标轴的负半轴相交,因此在横坐标上产生偏移,该偏移量是指纵坐标为0时对应横坐标的二进制值,计算公式如下:

偏移量=(Ad×Bs­As×Bd)/(Ad-Bd)

978-7-111-48236-9-Chapter08-38.jpg

图8-33 SCL2指令原理图

该直线上任意点均可以由其横坐标S求得对应的工程值D,SCL2指令实现了转换负值的运算,SCL2具有上微分型指令的特性。其梯形图符号如下:

978-7-111-48236-9-Chapter08-39.jpg

在CP1H PLC中操作数可选取的存储器区域如下:

S:CIO,W,H,A,T,C,D,*D、@D或DR。

C:CIO0000~CIO6141,W000~W509,H000~H509,A000~A957,T0000~T4093,C0000~C4093,D00000~D32765,*D或@D。

D:CIO,W,H,A448~A959,T,C,D,*D、@D或DR。

SCL2指令中3个参数通道的含义及设置值范围如下:

978-7-111-48236-9-Chapter08-40.jpg

在使用SCL2指令时需要特别注意以下三点:

1)当C+1(ΔX)的值为0或C+2(ΔY)的值不是BCD码时,错误标志P_ER置位。

2)当结果通道的值为0时,等于标志P_EQ置位。

3)当转换的结果为负数时,进行标志P_CY置位。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈