基于C#的西门子S7-1200PLC考核系统设计

2023-10-09 07:36刘甘霖
湖北工业职业技术学院学报 2023年4期
关键词:交通灯西门子寄存器

刘甘霖

(湖北工业职业技术学院 智能工程学院,湖北 十堰 442000 )

0 引言

目前PLC课程教学中涉及多项实训考核,传统实训设备配备有不同的模块以满足不同的实训内容,学生通过硬件接线及编程实现考核项目要求的各项功能,教师通过观察实训结果结合考核方案中的各项指标进行赋分以得到实训项目成绩,整个过程需要教师逐个实训台观察实训结果中的功能实现情况再对照考核表进行赋分,一旦班级人数较多时就需要大量的时间检查学生实训结果,造成不必要的课堂时间浪费。而市场上对应的PLC实训设备在不同的功能模块设计上大同小异[1-2],区别在于核心控制器的类型不同,其中采用西门子PLC作为核心控制器的实训设备应用广泛。本文以西门子1200PLC作为控制器的实训台中开展的十字路口交通灯控制系统实训为例,通过分析实训考核内容,设计考核逻辑关系,采用C#语言编写上位机程序,在不改变原有实训程序的基础上添加小型交换机进行硬件网络连接,实现对整个实训过程的自动赋分考核,改造成本较低且能有效提升实训教学中的考核效率。

1 系统总体设计

PLC实训台中主控制器为西门子S7-1200,CPU类型为1215C DC/DC/DC,各实训台之间通过小型交换机进行数据交换,通过教师机PC端作为上位机与各实训平台中的PLC进行网络通信,使用C#语言编写桌面应用程序实时采集各实训平台中PLC内部与实训项目相关的寄存器值,通过对采集的数据进行分析,与预先设定值进行比较,逐一进行功能赋分,能够快速判断实训台中功能是否实现。其系统总体框图如图1所示。

图1 系统总体框图

2 实训考核设计

十字路口交通灯实训中,PLC控制系统时序图如图2所示,由图2可知在前30 s时南北红灯点亮30 s,东西绿灯点亮25 s后以1 Hz频率闪烁3 s后熄灭,然后东西黄灯点亮2 s。后30 s时东西红灯点亮30 s,南北绿灯点亮25 s后以1 Hz频率闪烁3 s后熄灭,然后南北黄灯点亮2 s。依次循环进行上述过程。

图2 PLC控制系统时序图

根据十字路口交通灯控制系统时序图功能描述设计I/O数字量输入为启动、停止,数字量输出为东西红灯等6路灯控制信号,其I/O分配表如表1所示。

表1 十字路口交通灯控制系统I/O分配表

根据控制系统时序图及I/O分配表可知在功能判断方面只需读取PLC内部IB0、QB0两个寄存器实时值即可。将一个循环周期定为60s,通过分析启动到停止时各状态对应的寄存器数值判断功能完成情况,其实训功能状态与IB0、QB0两个寄存器在时间上的关系如表2所示。

表2 实训功能状态与IB0、QB0两个寄存器在时间上的关系

3 上位机程序设计

上位机程序由C#语言实现,程序设计主要由通信建立、分值计算两部分组成。C#是一种安全、稳定、简单的计算机编程语言,在C及C++编程语言基础上衍生发展而来的面向对象的编程语言。通信建立采用 S7.NET实现,S7.NET是一个C#编写的以太网连接西门子带有Profinet接口CPU的dll驱动库,采用S7.NET驱动程序可以便捷的通过以太网口建立上位机与西门子1200PLC的通信[3-4]。分值计算部分主要根据表2实训功能状态与IB0、QB0两个寄存器在时间上的关系进行编写,在上位机与目标PLC建立通信连接后首先判断IB0的值是否为0,当检测到IB0值不为0表示启动按钮按下,此时启动定时器开始60 s计时,在0~25 s时判断QB0的值是否为10,在26~28 s时,判断QB0的值是否在8~10~8循环,在29~30 s时判断QB0的值是否为12,在31~55 s时判断QB0的值是否为17,在56~58 s时判断是否在1~17~1循环,在59~60 s时判断QB0的值是否为33。在计时的任何环节检测到IB0值为2时,立刻判断QB0的值是否为0。每检测到一个环节将内部寄存器增加一定的分值并显示在窗口中,根据分值计算过程设计的程序流程图如图3所示。

图3 程序流程图

4 系统运行

整个考核系统的人机界面设置可通过“连接/断开”按钮及IP地址的输入建立通信连接,通信成功后桌面程序显示“连接成功”。系统还设计有不同的实训项目及实训台号的选择。教师可以通过选择实训项目查看不同实训台的成绩,每个实训界面会显示程序主要变化寄存器值及得分情况。最终设计的系统运行界面如图4所示。

图4 系统运行界面

5 结论

本文以PLC课程教学中常见的十字路口交通灯控制系统实训考核为例,详细的分析了十字路口交通灯实训项目中各功能状态与相关寄存器在时间上的关系,基于此设计上位机考核程序,并给出了程序流程图。采用C#语言编写桌面应用程序实现对西门子S7-1200PLC实训教学上的自动考核方法,该方法硬件搭建成本较低,通用性较好,适用于以西门子S7-1200PLC为主控制器的实训设备进行升级改造,对其它型号PLC实训设备只需调用不同的驱动库即可实现通信连接。采用本方法可以对大多数传统PLC实训台进行升级改造,该方法的应用能有效提升实训教学过程中的考核效率。

猜你喜欢
交通灯西门子寄存器
基于西门子SMART系列PLC关于99套模具选择的实现
Lite寄存器模型的设计与实现
基于单片机的交通灯控制系统设计
分簇结构向量寄存器分配策略研究*
一直飘红的交通灯
基于单片机的LED模拟交通灯设计
西门子 分布式I/O Simatic ET 200AL
西门子引领制造业的未来
基于protues仿真的交通灯即时控制的一种实现
高速数模转换器AD9779/AD9788的应用