
Codesys程序模板:中大型设备模板,快速添加工位只需修改数组
"轴又双叒叕不够用了!"老张盯着屏幕上的报警信息猛嘬了一口烟。这已经是他本周第三次因为客
户临时增加设备工位加班到凌晨。直到上个月接触了这套模板程序,他的发际线终于停止了后移趋势。
这套模板最狠的地方在于把设备控制抽象成了乐高积木。看看这个伺服轴配置数组:
```structuredtext
TYPE AxisConfig :
STRUCT
AxisName : STRING(20);
HomingSpeed : REAL;
SoftLimitMin : REAL;
SoftLimitMax : REAL;
GearRatio : REAL;
END_STRUCT
END_TYPE
VAR_GLOBAL
arrAxisCfg : ARRAY[1..MAX_AXIS] OF AxisConfig := [
(AxisName: 'X轴', HomingSpeed:50.0, SoftLimitMin:0.0, SoftLimitMax:800.0, Ge
arRatio:10.0),
(AxisName: 'Y轴', HomingSpeed:45.0, SoftLimitMin:-100.0, SoftLimitMax:500.0,
GearRatio:8.5)
];
END_VAR
```
需要新增Z轴?直接往数组里怼配置项就行,底层运动控制循环自动抓取新成员。上周给某光伏厂加
装清洁机器人,老张喝着咖啡就完成了8个新增轴的配置,连FB块都没重新编译。
工位控制更是玩出了花式操作。每个工位对应一个结构体数组元素:
```cpp
// 工位控制结构体
stWorkstation[1].bAutoMode := TRUE;
stWorkstation[3].iErrorCode := 16#8001;