那么什么是结构体呢?简单来说,结构体就是自定义的数据包。你可以将需要使用的变量数据一股脑的打包在这个盒子里,也可以理解为这是一个数据的配方,里面涵盖了你所使用的各种数据。
以下我将从用途、详细制作流程、使用场合三个方面讲讲结构体的用法。
数据封装:将描述同一个设备或功能的相关数据打包在一起。例如,一台“伺服”包含了:状态、故障代码、当前位置、电流、启动/停止、运行时间。
提高代码复用性:定义一次结构体,可以在程序中创建无数个“副本”(实例),避免重复定义变量。
简化接口:在制作功能块(FB)时,如果输入输出参数太多,用一个结构体作为接口(IN_OUT),可以让程序看起来非常简洁。
便于管理:数据在内存中排列整齐,便于通过结构化寻址(Motor1.Speed)进行管理,比单纯的数组或离散变量直观得多。
编程方便:结构化寻址,如第一台点击速度Motor1.Speed,第二台点击速度只需要修改为:Motor2.Speed
打开 GX Works3,在左侧导航树中找到“工程” -> “标签” -> “结构体”。
右键点击“结构体”,选择“新建数据”。

输入结构体名称:Motor

3.点击确定。输入电机控制需要的变量,这个例子中我们把下表的变量作为电机控制的数据集合。

定义好结构体类型后,它只是一个“模板”。你需要在程序中声明变量来使用它。
通常在“全局标签”中进行声明,这样所有程序(POU)和触摸屏都能访问。
打开 GX Works3,在左侧导航树中找到“工程” -> “标签” -> “全局标签”。
1:右键点击“全局标签”,选择“新建数据”。


3:标签名中输入“Motor1”,类型分类为:“结构体”;数据类型为建立好的结构体“Motor”。如下图所示:




