登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:突发奇想,PLC一个IO和其它PLC通讯,传输多数据。

点击:80 回复:0

昨晚睡不着,突发奇想,PLC1,和PLC2通讯,没有RS485,也没有以太网,如果需要多数据传输这么弄呢。
所以有了以下猜想以及实验:
~~~~~~~~~~
想法:
PLC1的 以一定的频率震荡 AND 数据 0/1= 输出数据,不就是可以输出了吗?
下面PLC怎么接受呢?数据0.1怎么开始呢。。
~~~
1,下位机如何判断上位机发送数据?
这样可行?PLC1 输出一个200MS固定ON脉冲,然后,下位机PLC2以输入端>200MS即判断是有信号来了;
~~~~
~~~~~~~~~~~~~~~~~~~~~
说那么多,还不如实际试下,
PLC是汇川的easy301,最低端的,Y0输入接X0输出,物理接线;
1、设置X端滤波2ms<最低了>
2、编写程序,2个定时器来回震荡,测试了以下,Y0输出-X0输入有1.9-2.2MS的延迟,
~~~~~~~~~~~~~~
好了,感觉可行,写程序:
1,计算定时器时间,根据输入频率来计算。
//1hz=1s变化一次,500MSon 500MS off
vd_通讯频率:=REAL_TO_DINT(500.0/ir_通讯频率);
附件 1.jpg
~
2,编写逻辑,用步来弄吧,
测试,发送端4个字,64bit
FB功能块,4个int数组,内部64bit数组,赋值。
用表格拉一下;
附件 2.jpg
第一步:然后就说密钥200MS 一直ON,给下面PLC说准备开始发送数据了;
第二部:关键步,2个定时器震荡 AND 64bit数组 = Q点输出;
附件 3.jpg
~~~~~~~
附件 5.jpg
以上,200MS一直ON,后面就说跟着的数据表情
第一行是启动发送,,第一行是数据波形,下面是DONE信号,
~~~~~~~~~~~~~~~~~~~
然后就说编写接受解析程序,程序如下:
附件 6.jpg
~~~~~~~
然后就是效果如下了:
附件 GIF 2025-11-25 20-49-03.gif
~~~~~~
1、接收端如果设置200MS,可能会接收不到,我改成199了,
2、定时器震荡频率不能太快,不然不正常,丢数据,
也没有优化,只是测试了一下能否使用,理论上可以PLC和N个从PLC通讯,参考modbus-rtu,而且可以做CRC校验数据是否OK,
就是PLC输入端子有滤波,速度虽慢,但是能用,一个IO端子能传送这么多数据,对于有些时间要求不高的地方,我感觉也能用。
全文完!2025.11.25
25-11-25 20:54

工控新闻

更多新闻资讯