Parallel processing Grafcet-同步电机性能

Parallel processing Grafcet-同步电机性能,parallel-processing,sequential,plc,Parallel Processing,Sequential,Plc,我的目标是在PLC上实现用Grafcet编写的控制算法。我正在努力解决Grafcet作为多进程同步语言和单核顺序PLC的差异。下面是一个例子。在上转换触发后的第一个循环中,Grafcet的结果是什么(a=1,x=1)或(a=1,x=0)? 我知道,在SFC中,这取决于工程工具(如Codesys、多道程序)的实施情况,即如何评估行动,通常是从左到右。因此,对于证监会来说,(a=1,x=1)将是答案。但由于格拉夫塞特的一切都是同时发生的,我不知道如何处理这个案件。 如果有人能告诉我如何在顺序机上实现

我的目标是在PLC上实现用Grafcet编写的控制算法。我正在努力解决Grafcet作为多进程同步语言和单核顺序PLC的差异。下面是一个例子。在上转换触发后的第一个循环中,Grafcet的结果是什么<代码>(a=1,x=1)或
(a=1,x=0)
? 我知道,在SFC中,这取决于工程工具(如Codesys、多道程序)的实施情况,即如何评估行动,通常是从左到右。因此,对于证监会来说,
(a=1,x=1)
将是答案。但由于格拉夫塞特的一切都是同时发生的,我不知道如何处理这个案件。 如果有人能告诉我如何在顺序机上实现Grafcet等语言的挑战,我将获得更多的奖励

并非所有的Grafcet变量都考虑了条件动作,但当它们被考虑时,行为是这样的:只要该步骤处于活动状态,就在
a
打开时打开
x

如果这就是你的意思,尽管我们可能永远也找不到像你那样格式化的条件动作,
x
将在两个同步步骤被激活后的无限短时间内被打开(至少这是我基于Grafcet进化规则的理解)。因此,
x
的初始值是不可预测的——假设两个并发步骤同时被激活——这一事实实际上应该没有问题


此外,一旦Grafcet在现实世界中“实现”(即,您的单核PLC),无论它是由工程工具直接编译还是转换为梯形图,都必须选择评估顺序,正如您所说,并且一切都变得确定性,因此您的问题在实际应用中不是真正的问题“在顺序机器上实现像Grafcet这样的语言”。通过研究将SFC转换为梯形逻辑的规范过程,您可能会发现哪些是真正的“挑战”(详细的文档可以在web上轻松找到)。

PLC是单核的,正如您所说的,因此……决不能在同一时刻执行两个步骤

这里有同步分支,因此两个步骤都将执行。但显然会一个接一个地执行。默认情况下,始终是从左开始的步骤。请注意,某些PLC允许您更改顺序(从未尝试同时执行,但对于发散的,则肯定允许…如RSLogix5000)

同时,这就像有一个AND。所以你告诉处理器执行第一步和第二步。如果你熟悉梯形图逻辑,我相信你会明白这一点。 最后,它应该是a=1;x=1

另外请注意,对于其他不同步的步骤,在评估下一个转换之前有一个扫描延迟,这是一件好事。在梯形图中实现SFC时,这是最容易忽略的事情(如果您不知道,可能会导致无法解决的问题)。我已经看到了这个“错误”“大约50%的项目采用阶梯式实施,迄今已有数百个项目采用阶梯式实施。示例:如果有10个连续转换为true,则在一次扫描中从步骤1转到步骤10。电机未启动原因的故障排除:)


提示:您始终可以在同时分支中使用虚拟步骤来延迟1次扫描。所以,如果你想要其他结果(a=1,x=0),你可以在左一步之前放置一个虚拟步骤。

实际上,在实践中,事情连续发生是很好的,它有助于防止不可预测的“竞争条件”,这曾经困扰硬连线逻辑。