优秀的编程知识分享平台

网站首页 > 技术文章 正文

西门子SCL高级语言之数据转换介绍

nanyue 2025-03-26 14:47:58 技术文章 11 ℃

(整数转浮点数 INT_TO_REAL)

我们在做项目中经常用到各种类型的数据,这就需要转换( CONVERT)指令来转换,由于博途数据转换指令只有它一个,那我们就只记住它就可以了,注意设置需要转换的数据类型即可。

在LAD转换是这样的:

以下示例显示了如何将 16 位整数转换为 32 位整数:


以下示例显示了如何将 8 位字节转换为 8 位整数 SINT:

以下示例显示了如何将 8 位字节转换为 8 位无符号整数 USINT:

因为两个操作数具有相同的长度,所以可进行这些转换。

下表列出了“转换值”指令的参数:

参数

声明

数据类型

存储区

说明

EN

Input

BOOL

I、Q、M、D、L 或常量

使能输入

ENO

Output

BOOL

I、Q、M、D、L

使能输出

IN

Input

位字符串、整数、浮点数、CHAR、WCHAR、BCD16、BCD32

I、Q、M、D、L、P 或常量

要转换的值。

OUT

Output

位字符串、整数、浮点数、CHAR、WCHAR、BCD16、BCD32

I、Q、M、D、L、P

转换结果

下面我们打开博途V15软件进行设计数据批量转换,以整数转换浮点数来介绍:

1.)组态一个PLC后添加两各数据块,一个为整数数据块,另一个为浮点数数据块,我们以数组来写100各数转换:

2.)添加一个FB块,定义数据类型和接口类型:

3.)调用 FOR...TO....DO指令及CONVERT转换指令,这里说以下,转换指令也可直接写,比如我数据类型是REAL,在英文状态输入REAL按空格键就会弹出您所需要转换的数据类型,供您去选择,这里只讲从转换指令库调用CONVERT:

3.)编写SCL主体程序:

4.)程序定义数据来源:

5.)在线测试数据情况:

通过在数据块里修改整数到浮点数数据块里面进行监控,是成功的,感谢大家的观看!

由于时间仓促及笔者水平有限,文章中难免有讲错的地方,望广大网友,专家,学者多多指导,力争文章更完美!

最近发表
标签列表