[台达] C#上位机与台达ES3系列PLC通信

[复制链接]
查看52103 | 回复0 | 2024-9-1 21:19:43 | 显示全部楼层 |阅读模式
-Begin-
大家好!我是付工。近几年来,国产PLC的市场占有率在逐步提升,包括台达、信捷、汇川等各大品牌,都有了很大的发展。
本文主要针对台达DVP-ES3系列PLC,实现上位机与PLC之间的ModbusTCP通信。

硬件说明



DVP-ES3 系列PLC内置4 组高速计数器输入、4组轴输出(脉冲型)或支持8轴单脉冲输出;以及8 轴总线(CANopen)定位输出。
DVP-ES3 系列PLC内置通信端口:RS-485 * 2、Ethernet * 1、CANopen * 1

DVP-ES3 系列采用全新ISPSoft软件进行编程,操作直观简单,除了支持IEC61131-3编程语言外,还支持在线编辑、在线校验、台达FB功能块,程序加密等功能,方便客户程序开发。ISPSoft目前最新版本为3.19,同时还需要安装网络配置软件COMMGR,ISPSoft及COMMGR软件获取方式,公众号后台回复编号:152。

软件说明

1、软件安装过程就不做过多说明了,安装完成后,首先打开COMMGR,进行通信驱动程序设置,PLC出厂IP是192.168.1.5,这里端口号设置为502。



2、打开ISPSoft软件,在工具>>通信设置中,选择上面设置的Driver1。



3、完成后即可进行程序上传下载了,点击PLC主机>>联机模式,实现与PLC之间的链接。



4、打开装置监控表,创建一个监控变量表,添加一些监控变量:



Modbus地址表

通过上面步骤实现了编程软件ISPSoft与PLC之间的链接,接下来我们实现上位机与PLC之间的通信,这里首先通过官方提供的编程手册,找到一个Modbus地址表,具体如下所示:



Modbus测试

上图中的Modbus地址表表明了PLC存储区与Modbus存储区之间的对应关系,其中,我们可以看到Y区是与0区进行对应的,具体对应地址是040961开始,依次类推,这个040961表示的是绝对地址,对应着0区的40960,因此Modbus Poll软件设置如下:



我们通过ModbusPoll读取结果如下,可以看到与监控表是完全一致的:



上位机测试

通过ModbusPoll软件实现初步测试后,接下来我们采用C#上位机来实现与PLC之间的通信,C#上位机软件通信部分采用开源Modbus库NModbus4,可以通过Nuget安装NModbus4库,然后编写部分核心代码如下:

1、第一步:连接PLC



2、第二步:读取Y存储区数据




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则