1. 首先,将 PLC 与数码管显示器接好,硬件连接如下图
2. 数码管的参数设置,按照手册的说明,设置好参数,这里将数码管地址设置为1,波特率设置为9600
3. 然后在PLC中建立Modbus主站,这里介绍两种方式来建立Modbus主站
(1)由于M02型PLC本身内嵌Modbus主从站方式,编程是通过填表的方式实现的,所以演示一下填表的方便之处
参数填完只需直接下载到PLC中
其中的参数要根据数码管的说明来填写,数码管手册如下图:
可以看到这个例子为 PLC 发送:01 10 00 90 00 02 04 00 02 01 EA DB 1C
其中 01 为数码管地址,即 从站地址填入 1 ,因为需要向数码管写入,所以功能号选16 写多个寄存器4xxxx,00 90 为数码管屏的显示寄存器,转换成 10 进制为 144,起始地址填 144,00 02为寄存器个数,计数个数填2,对应的PLC内V区起始地址这里填1000
如图,向 VB1000~VB1003 写入 00 02 01 EA 。
然后将会看到数码管显示4.90,如图
(2)通过Modbus库指令进行PLC编程,建立Modbus主站程序,如图
其中的参数要根据数码管的说明来填写,数码管手册如下图:
例如 PLC 发送:01 10 00 90 00 02 04 01 01 00 0A 2A F8
其中 01 为数码管地址,即 Slave 填入 1 ,因为需要向数码管写入,所以 RW 填 1,00 90 为数码管屏的显示寄存器,转换成 10 进制为 144,因为起始地址为 40001,所以Addr填入 40001+144 = 40145,04 为数据字节数,即 2 个字,所以 Count 填入 2
最后数据指针自己选择即可,注意不要与分配的库存储区冲突,这里我们用的是 VB1000
如图,向 VB1000~VB1003 写入 01 01 00 0A 。
然后将会看到数码管显示 -1.0,如图
4. 综上所述,为M02型PLC与数码管Modbus的通讯实例,当然第二种例子同样适合西门子S7-200 PLC。