西门子博图功能指令—序列化

  • 功能描述
  • 程序举例
  • 仿真测试效果
  • 源程序

功能描述

临时将多个 PLC 数据类型 (UDT)、STRUCT 或 ARRAY of <数据类型> 结构化数据项保存到缓冲区中(最好位于全局数据块中),并以Byte的发送到其它 CPU。转换是以顺序表示,不会丢失结构部分。

保存经过转换后数据的存储区的数据类型必需为 ARRAY of BYTE,在版本V1.0中,转换后数据所在DB块为标准访问块,在版本V2.0中,转换后数据所在DB块可以为优化为标准访问块,并在版本 V1.0 中声明为标准访问。自版本 2.0 起,支持DB块为优化数据块。

目标 ARRAY 中未定义数据区的填充字节和填充位(例如,ARRAY、STRUCT 或 PLC 数据类型 (UDT))以及当前不使用的字符串字符。

接口参数

参数 声明 数据类型 存储区 说明
EN Input BOOL I、Q、M、D、L 或常量 使能输入
ENO Output BOOL I、Q、M、D、L 使能输出
SRC_VARIABLE Input VARIANT D、FB 的块接口 转换为顺序表示的
PLC 数据类型 (UDT)、STRUCT 或
ARRAY of <数据类型>
DEST_ARRAY InOut VARIANT D、FB 的块接口(可在 Input、Output、Static 和 Temp 部分中。) 保存生成的
数据流的数据块
POS InOut DINT I、Q、M、D、L POS 参数处的操作数
将根据已转换客户数据所占用的总字节数
存储第一个字节的下标
POS 参数将从 0 开始计算
RET_VAL Output INT I、Q、M、D、L 错误信息

程序举例

  1. 创建用户数据类型

2.新建DB块,添加Array of byte变量。作为保存序列化后的数据。

3.新建DB块,添加用户自定义数据类型。用于进行序列化。

4.在FB块中添加程序。其中序列化功能块的POS和Ret_Val接口参数可以在FB的Static中添加。

仿真测试效果


源程序

博图版本为V15

西门子博图功能指令(序列化)相关推荐

  1. 西门子博图功能指令(反序列化)

    西门子博客功能指令-序列化 功能描述 程序举例 仿真测试效果 源程序 功能描述 反序列化和序列化的功能刚好相反.反序列化功能主要:反向转换 PLC 数据类型 (UDT).STRUCT 或 ARRAY ...

  2. 西门子博图功能指令——数据左移/右移

    数据移动 右移 功能描述 接口参数 左移 功能描述 程序举例 仿真演示 右移 右移 功能描述 将输入 IN 中操作数的内容按位向右移位,并在输出 OUT 中查询结果.参数 N 用于指定将指定值移位的位 ...

  3. 西门子博图功能指令——标准化

    标准化 功能描述 执行说明 接口参数 程序举例 仿真演示 标准化 功能描述 将输入 VALUE 中变量的值映射到线性标尺对其进行标准化. 使用参数 MIN 和 MAX 定义(应用于该标尺的)值范围的限 ...

  4. 西门子博图功能指令——缩放

    SCALE_X:缩放 功能描述 执行说明 接口参数 程序举例 仿真演示 缩放 功能描述 将输入 VALUE 的值映射到指定的值范围内,对该值进行缩放. 当执行"缩放"指令时,输入 ...

  5. 西门子博图功能指令——Array数据中元素的读取

    Array数据中元素的读取 功能描述 接口参数 程序举例 仿真演示 Array数据中元素的读取 功能描述 读取 SRC 参数的 VARIANT 指向的变量值,并将其写入 DST 参数的变量. SRC ...

  6. 西门子博图功能指令——多路分用

    多路分用 功能描述 接口参数 程序举例 仿真演示 功能描述 根据K的值将IN的内容复制到对应编号的 OUT中.可以扩展指令框中可选输出的编号.最多可声明 32 个输入. EN接通的情况下,当K等于0时 ...

  7. 西门子博图功能指令——交换

    交换 功能描述 接口参数 程序举例 仿真演示 交换 功能描述 更改输入 IN 中字节的顺序,并在输出 OUT 中查询结果. 接口参数 参数 声明 数据类型(1200) 数据类型(1500) 存储区 说 ...

  8. 西门子博图功能指令——选择

    选择 功能描述 接口参数 程序举例 仿真演示 选择 功能描述 根据开关(输入 G)的情况,选择输入 IN0 或 IN1 中的一个,并将其内容复制到输出 OUT. 如果输入 G 的信号状态为" ...

  9. 博图sodt定时器的用法_西门子博图定时器指令说明

    "IEC_Timer_0_DB".TP( IN:=_bool_in_, PT:=_time_in_, Q=>_bool_out_, ET=>_time_out_); T ...

最新文章

  1. java unsafe cas_Java Unsafe CAS 小试
  2. 【Android 高性能音频】高性能音频简介 ( 高性能音频问题引入 | 使用场景 | 相关开发库及技术 )
  3. python cv release_Python cv.GetSize方法代码示例
  4. numpy数据集练习
  5. lnp和mysql分开安装_毕业设计之LNP+DISCUZ +分离的数据库操作
  6. Struts2.3,s:iterator,c:forEach遍历map中的list集合
  7. 模拟电子技术不挂科学习笔记3(放大电路的分析方法)
  8. 批量解决win10图标上有两个蓝色箭头的方法
  9. 毕业设计第一周的计划
  10. 在asp.net中怎样将输入的中文符号转换成英文符号
  11. spring 的web.xml的加载顺序
  12. 零基础学习sql篇(1)
  13. Mrbayes使用形态学数据构建系统发育树
  14. C++学习心得和体会
  15. 百万用户同时在线游戏服务器架构实现.doc 基于epoll 通信模型
  16. xlwings使用笔记
  17. 6.4 二项式系数和恒等式
  18. 在 unity中可以使用的直接设置音量大小的方法
  19. Yocto系列讲解[技巧篇]90 - toolchain交叉编译器SDK中安装的软件
  20. 地理坐标系和投影坐标系

热门文章

  1. 启动第一个node服务器
  2. 面试必考:秒杀系统要如何设计?
  3. 人工耳蜗做完以后有没有副作用
  4. mysql子查询 分组,Mysql子查询实现分组取最指定数据的版本差异
  5. 网络安全之ENC1应用内/外网音视频传输完全隔离方案
  6. zabbix监控华为路由器
  7. EPICS记录参考--Fanout记录(fanout)
  8. 车载通信——LIN总线
  9. java 手机号正则表达式验证
  10. [JavaScript] 数字金额大写转换 v2