1.首先我们上位机部分程序采用QT来实现,主要实现功能如下:
- ModbusTCP的通讯连接、断开(上)
- 读取float、double、int 、Long等等数据(中)
- 写入float、double、int 、Long等等数据(下)
第一步:创建Qt 窗体项目
第二步:新建项目名称
第二步:根据要用于显示的控制的系统不同进行选择
第三步:设定主窗体类名以及头文件名称
第四步:完成项目新建
第五步:添加资源文件
第六步:开始设计APP界面
第七步:我们主要需要如下布置:
- APP的Title的 QLable
- APP的IP设置的 QLable
- APP的端口号设置的QLable
- APP的通讯状态指示图片 QWidget
- APP的通讯连接按钮QPushButton
- APP的通讯断开按钮 QPushBuuton
- APP的通讯连接记录显示框 QTextEdit
如下图所示:
第八步:编写业务逻辑程序如下所示:
1.在头文件中添加对应按钮的槽函数如下:
2.编写连接服务器的业务逻辑
3.编写断开连接业务逻辑
第九步:采用ModbusSlave调试助手配合测试通讯连接如下
1.打开ModbusSlave调试助手
2.点击连接,连接成功:
3.断开连接,成功断开:
2.欧姆龙NJ系列PLC部分程序编写如下:
1.添加ModbusTcpSlave 模块,如下所示
然后根据如下引脚功能描述进行功能配置
引脚功能描述如下:
- bEnable:模块使能输入引脚
- OpenSlave:开启服务器输入引脚
- StationNo:从站站号
- uiBlockNo和bLogSwitch需要记录功能时候才需要用的引脚:目前暂不需要
- aryRelay:用于存放输入信号数组
- aryCoil: 用于存放输出线圈数组
- aryRegister: 用于存放固定寄存器数组
- bDone: 模块使能完成
- ConnectDone: 连接成功
- bOverTime: 连接超时
- AptBusy: 连接中
3.进行PLC与上位机PC联机通讯测试如下,成功连接与断开:
4.总结
1.由此可见我们设计的通讯方案是成功的 ,上述的欧姆龙NJ的ModbusTcp模块小编也是学习了一套关于欧姆龙NJ系列PLC通讯方面的教程视频之后总结得到的,具体的视频内容如下所示,如果大家有需要购买这套视频的,小编可以推荐给大家,具体连接大家可以扫一扫右下角二维码关注微信公众号“优亮工控”,发送“欧姆龙NJ网络通讯”获取视频教程链接。
2.后续小编将会继续完成剩下的读取float、double、int 、Long等等数据(中),写入float、double、int 、Long等等数据(下),其中会涉及一些数据转换的功能,例如Word与float的数据互换,这些内容就需要提前大家了解学习一下
3.最后总结,起始做工控上位机显示并没有大家想象的那么难,只需要紧跟小编的节奏,相信大家一定能够百尺竿头更进一步!!!