|
本帖最后由 zjnbdxsh 于 2023-12-14 20:14 编辑
看到有人在讨论PLC,想起了我曾发明的“PLC梯形图逻辑量并行处理方法”。 不知是否有人也喜欢探索。
在我提出“并行处理” 前,可编程控制器系统是把梯形图解析(编译或解释)成处理单个逻辑变量的指令串,可编程控制器运行时,控制器内的微处理器或微控制器用一位逻辑量传送、运算(即串行处理)的方法循环扫描执行指令串,以实现梯形图功能。但现在32位、64位处理器也这样一位一位地运算,效率太低了。
如图1梯形图,以前把梯形图解析为:先把开关量X0与开关量X2相与,然后给Y1(细节不说了)。接着开关量X3与开关量X4相与,然后给Y2。再接着开关量X1与开关量X11相与,然后给Y4。……。
对图1梯形图,“逻辑量并行处理方法”是,把梯形图第一列多个开关量(X0、X3、X1、X2)一次性读入一个寄存器;再把梯形图第二列多个开关量(X2、X4、X11、X10)一次性读入另一个寄存器。然后两寄存器相与,再把运算结果的多个开关量传给(Y1、Y2、Y4、Y6)。
怎样把如(X0、X3、X1、X2)或(X2、X4、X11、X10)等一次性读入寄存器,及怎样把最后的运算结果一次性传给如(Y1、Y2、Y4、Y6)等,需要设计一个通用的硬件电路。
如32位寄存器,一次就可处理梯形图32行中一列开关量,处理好了32行所有列,就接着处理以下的32行,等等。这样,梯形图处理速度就大大加快了。
我们知道,梯形图总不是象图1那样简单,如图2。梯形图的垂直连线就是逻辑或,水平连线就是逻辑与,逻辑关系非常简单,可以在PLC处理器内增加一个梯形图运算硬件逻辑电路,同时把这“或”和“与”一次同时运算,这样又加快了梯形图处理速度。
处理器位数越多,增加梯形图处理速度的效果就越好。
当然,有许多细节需要解决,具体就暂不介绍了。 |
-
图1
-
图2
|