西门子plc编程


一、程序结构标准化

1. 主程序使用OB1,初始化程序为OB100(无需主程序调用)。

2. 设置100ms中断程序为OB35(可调整),可调用PID模块而无需主程序干预。

3. 故障诊断模块包括OB80、OB82、OB85等,无需主程序调用和编程。

4. 系统模式、输入处理、输出处理等分别使用FC1、FC2、FC3等块。

5. 建立循环调用的子程序块,如FC100、FC105(模拟量输入输出子程序)等。

6. modbus通讯使用CP341(FB7:P_RCV_RK,FB8:P_SND_RK)等。

二、数据块规划

1. 数据块如DB1用于AI数据(REAL类型),与机接口对接。

2. DB2、DB3、DB4分别用于AO、DI、DO数据,类型分别为REAL和BOOL,与机交互。

3. DB5用于设备运行时的时间和流量累计。

4. DB6用于报警消息。

5. 其他数据块如DB7至DB10用于不同类型的数据寄存。

6. DB11及之后的数据块可用于设备通讯,如MODBUS通讯。DB100用于调用FB块时的背景数据。

三、DP从站故障诊断

DP从站必须实现故障诊断和报警功能,使用FB125实现。

四、系统设置与单台设备控制

1. 设置远程/本地/手动按钮,确保系统控制的灵活性和优先级。

2. 单台设备控制必须有软手操/自动切换功能,保证设备在切换过程中的稳定运行。

3. 大型设备如泵、风机等需进行定期轮换运行,并有运行时间累计功能。

五、编程规范与建议

1. 程序块应尽量细化,便于阅读,将同类设备控制集中在一个程序块中。

2. 优先选择梯形图编程,同时考虑特殊情况下的语言编程。

3. 频繁调用的子程序可做成子模块,如计算平均值或最大值等。

4. 程序要有详细的注释和变量描述。

5. 定期备份程序,命名需包含工程名称、系统名称和日期。

6. 对程序进行加密,保障安全性。

对于PLC系统按照控制规模可分为大型机、中型机和小型机:

小型机的控制点通常在256点以内,适用于单机或小型系统的控制。例如西门子S7-200。

中型机的控制点不超过2048点,适用于中型或大型控制系统,具备直接控制和监控多个下一级可编程控制器的能力。如西门子S7-300。