您现在的位置是:首页 > PLC技术 > PLC技术
IEC的转换功能
来源:艾特贸易2017-06-05
简介1 .概要 转换功能转换变量的数据类型。要转换的值位于功能的输入中,转换后的功能值具有新的数据类型。 常用调用: var_aus := Conversion_function (var_in); 如果转换时有错误发生,部分转
1.概要
转换功能转换变量的数据类型。要转换的值位于功能的输入中,转换后的功能值具有新的数据类型。
常用调用:
var_aus :=
Conversion_function (var_in);
如果转换时有错误发生,部分转换功能会将二进制结果BR或ENO输出置位为FALSE。此时,转换将不会发生。
举例:变量Speed中的INT值将转换为一个字符串并存储到变量Display中。
Display := I_STRNG( Speed);
IF ENO
THEN (*Conversion in order*);
ELSE (*Error occurred*);
END_IF;
如果把一个STRING功能值赋值给位于暂态局部数据中的STRING变量,在程序中必须将一个按照必需长度定义过的值赋给这个变量(在暂态局部数据中不允许在声明前预赋值)。
对于在暂态局部数据中声明的STRING变量,将会给其预留特定的空间(字节数)。在编译器属性中可以设置这个长度值。如果不设定,默认值为254 (+2)字节。
2.FC 33 S5TI_TIM数据类型S5TIME到TIME的转换
功能FC 33 S5TI_TIM把数据格式S5TIME转换为TIME格式。
该功能不报告错误。
3.FC 40 TIM_S5TI数据类型TIME到S5TIME的转换
功能FC 40 TIM_S5TI把数据格式TIME转换为S5TIME格式,转换按照四舍五入进行。
如果输入参数大干S5TIME格式所能表示的范围(大于TIME#02:46:30.000),将会输出S5TIME#999.3作为结果,二进制结果或ENO输出将设为FALSE。
4.FC 16 I_STRNG数据类型INT到STRING的转换
功能FC 16 I_STRNG把INT类型的变量转换为STRING类型,字符串使用一个前导符(数位加上符号)表示。
如果功能值指定的变量太短,转换不会发生,二进制结果BR或ENO输出将设为 FALSE。
5.FC 5 DI_STRNG数据类型DINT到STRING的转换
功能FC 5 DI_STRNG把DINT类型的变量转换为STRING类型,字符串使用一个前导符(数位加上符号)表示。
如果功能值指定的变量太短,转换不会发生,二进制结果BR或ENO输出将设为 FALSE。
6.FC 30 R_STRNG数据类型REAL到STRING的转换
功能FC 30 R_STRNG把数据格式REAL转换为一个字符串。字符串用14个数字表示:
±v.nnnnnnnE±xx ± 符号
v 小数点前一位
n 7个小数位
x 2个指数位
如果功能值指定的变量太短,或输入参数中没有有效的浮点数,转换不会发生,二进制结果BR或ENO输出将设为FALSE。
7.FC 38 STRNG_I数据类型STRING到INT的转换
功能FC 38 STRNG_I把字符串转换为INT格式的变量。字符串的第一个字符可能为一个符号或者数字,其他后续字符必须为数字。
如果字符串的长度值为0或长度大于6字节,或者字符串中存在非法字符,或转换值超出INT的数值范围,转换不会发生,二进制结果BR或ENO输出将设为FALSE。
8.FC 37 STRNG_DI数据类型STRING到DINT的转换
功能FC 37 STRNG_DI把字符串转换为DINT格式的变量。字符串的第一个字符可能为一个符号或数字,其他后续字符必须为数字。
如果字符串长度为0或大于11字节,或者字符串中存在非法字符,或转换值超出DINT的数值范围,转换不会发生,二进制结果BR或ENO输出将设为FALSE。
9.FC 39 STRNG_R数据类型STRING到REAL的转换
功能FC 39 STRNG_R把字符串转换为REAL格式的变量,字符串必须符合下列格式:
±v.nnnnnnnE±xx ± 符号
v 小数点前一位
n 7个小数位
x 2个指数位
如果字符串长度小于14字节,或者其结构和上述结构不符,或转换值超出REAL的数值范围,转换不会发生,二进制结果BR或ENO输出将设为FALSE。
点击排行
