打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
学会这个,PLC工程师也能月薪15000

1

前言


        PLC工程师一直以吃苦耐劳的形象呈现在大众面前。我们常年出差在外,拿着一份不高不低的工资;我们大都正值中年,背负着各种贷款和家庭开支的压力;我们内心都渴望提升,却始终感觉欲投无门。

        本文将以PLC技术为主线,基于PLC开发一个智能家居仿真系统,用一个实际案例让大家明白:PLC还可以这么玩,PLC玩好了也能拿高薪。

        在这个浮躁的社会,很多人可能连文章都看不到最后。所以,话不多说,我们先看下最终实现的效果:

        看完视频,我们应该都在思考,这个案例是如何基于PLC实现的。那么接下来,我就按部就班对整个实现过程进行阐述。

02

协议定义

        刚开始,我想通过自定义TCP或者西门子S7协议来实现,但是考虑到TCP的不易理解以及S7的不够通用,最终还是选择ModbusTCP,Modbus协议的通用性会更强。所以本案例仅仅是以西门子PLC为例,对于所有支持Modbus协议的PLC都适用。
        在确定好使用Modbus协议后,如果想要实现这种文字对话,我们需要在Modbus协议的基础上,再定一个文本协议:

03

PLC开发

1、创建协议DB块
        针对上面的文字协议,创建一个协议DB块(ProtocolDB),专门用于存储这些协议文本,这样即使后续协议有变动,只需要修改一下这里就可以了,程序本身是不用变化的。

2、创建通信DB块

        顾名思义,通信DB块主要是包含通信涉及的一些变量,这里设计了6个变量,分别为接收数据、发送数据、指示灯状态、温度实际值、灯序号索引、温度设定值,这些值将按顺序对应Modbus地址。

3、Modbus服务器

        西门子PLC如果使用Modbus通信,需要调用一个指令MB_SERVER,这个指令说白了就是确定PLC的地址与Modbus地址之间的映射关系,如下图所示,P#DB1.DBX0.0 BYTE 92就是我们创建的通信DB块,对应Modbus地址40001-40046。

4、控制逻辑
在做好以上准备工作后,开始去写控制逻辑,控制思路是这样的:

5、控制逻辑程序

6、协议转换程序

7、MThings测试


MThings是一款基于MODBUS协议簇,面向开发、测试、运维人员的辅助工具。完全由国人自主开发,绿色版,永久免费。


04

上位机开发

1、上位机UI界面设计
        上位机部分的UI界面设计主要是根据功能来做的,包括PLC选择、开始对话、结束对话、文字发送及显示、语音控制及显示以及设备状态显示,界面如下所示:

2、上位机功能实现

        上位机功能的实现主要是Modbus变量读取及写入,但是这里需要根据控制逻辑做一些转换,对于通信库这块,最终决定采用了NModbus这个开源免费的库,对其进行二次封装,便于调用。由于篇幅有限,仅展示核心代码。

  • 开始对话

  • 文字发送

  • 实时通信

05

写在后面

        近几年, 随着越来越多的设备开始加入IIoT 网络(Industrial Internet of Things,工业物联网简称IIoT),IT与OT之间的界限将逐渐消失,直到成为一个或相同的系统为止。

        所以,越来越多的电气工程师开始转型上位机开发。因为在电气的基础上,如果掌握了上位机开发,薪资突破15000,将会是很容易的一件事。

        为了便于大家更好地学习这个项目,我将通过免费直播课的方式演示整个项目的部署及开发,通过完整的项目分析及编写,即使你是零基础,也能带你实现项目功能。想要学习的童鞋,赶紧扫描下方二维码,进入班级群。

PS:微信群二维码仅限前200名,名额有限,先到先得,仅限当天。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于MODBUS协议的上位机与PLC及智能仪表之间的通信实现方法
三菱Q系列PLC,用Modbus通信控制FX5UPLC
上位机开发之单片机通信实践
西门子PLC做485通信就这几步,都不用记(MODBUS通信第5节)
Plc开关量转换模块图文说明
独家讲解PLC的Modbus485通信编程
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服