产品描述
西门子代理商6ES7231-5QA30-0XB0 西门子代理商6ES7231-5QA30-0XB0
在博图中软件上我想把一个温度值转换成{"temperature":"32"}的形式通过TSEND_C指令发送出去,该怎么转换?
通过字符串发送出去,根据你说的,其实这个字符串前面的temperature:都是已知的,不需要改变,我们将它定义一个字符串变量:String_1:=''''temperature:'''';
然后你再将温度做一个转换就可以了。将数字转换为字符串,使用 S_CONV:转换字符串指令
我们再定义一个字符串变量:string_2:=‘ ’;
string_2 := INT_TO_STRING(温度);
这样就把温度转换为了字符串string_2;然后通过CONCAT合并字符串命令,将两个字符串合并为一个字符串即可;
定义你要发送的字符串为stringTemperature:=CONCAT(IN1 := string_1, IN2 := string_2);
然后发送stringTemperature这个字符串就可以了。
其实你要是能灵活用VAL_STRG这个命令的话,使用引脚P的设定,可以直接就能把温度合并到一个字符串里的。
比如定义你要发生的字符串为stringTemperature:=‘temperature:'''';
VAL_STRG(IN :=温度,
SIZE := 2, //根据你的需要设定,就是你温度需要占用的字符数;
PREC := 0, //如果有小数位的话根据你的需要更改;
FORMAT := W#16#0004,//输出格式
P :=13, //转换的温度从*13位开始写
OUT =>stringTemperature);
产品推荐
友情链接