Real time 如何将“实时控制”的概念从;";环境保护;IEC61131(CODESYS)“;?

Real time 如何将“实时控制”的概念从;";环境保护;IEC61131(CODESYS)“;?,real-time,plc,codesys,iec61131-3,Real Time,Plc,Codesys,Iec61131 3,我们正在尝试对采样数据进行实时测量/计算。我们以前的经验是基于C编程的。不知是否有人能帮我将实时c编程结构转换成PLC IEC61131结构化文本 对于实时控制回路(具有恒定的回路周期),我们需要一个启动计时器、一个结束计时器和一个工作如下的等待函数: while(1) { t_start=timems(); /* a variable gets the current processor time in ms*/ /*... here the function perfo

我们正在尝试对采样数据进行实时测量/计算。我们以前的经验是基于
C
编程的。不知是否有人能帮我将实时
c
编程结构转换成PLC IEC61131结构化文本

对于实时控制回路(具有恒定的回路周期),我们需要一个启动计时器、一个结束计时器和一个工作如下的等待函数:

while(1) {

    t_start=timems();  /* a variable gets the current processor time in ms*/

    /*... here the function performs the calculation...*/

    t_stop=timems(); /* a variable gets the current processor time in ms*/

    deltaT=t_stop-t_start; /* time difference between the start of the loop and end of the loop is calculated*/;

    waitms(loop_constant-deltaT); /* the loop waits for the remainder of the constant loop time before the next iteration*/
}
具体来说,我想知道我们如何在IEC61131中实现这些时序结构?我想我们可以用吨来延迟。但是,对于如何从处理器获取时间的任何建议,我们都非常感谢

(本文讨论了编写代码并将其传输至IEC61131的可能性。但是,出于教育目的,最好在IEC61131中编写代码。)

p、 s.1:我在一台配备CODESYS固件的SEL-3350设备上工作,用于编写IEC61131程序

p、 s.2:经过几天的搜索,我了解了基于C编程的实时控制与基于IEC61131(使用CODESYS)的实时控制之间的区别

基本上,当您使用PLC设备进行编码时,您可以在任务管理器中选择设置控制器处理周期的属性。因此,与“C”不同,不需要执行无限循环(while(1)),软件会处理它。
例如,在CODESYS环境中,您选择程序类型为“循环”,间隔时间为“循环常数”,它将类似于上面提到的C代码。

CODESYS提供了库
CmplecTask
,该库提供了有关当前任务的详细信息。让您的代码在循环触发的专用任务中运行,并使用从任务信息中以编程方式读取的信息控制一切。所有计时、抖动等都可以在那里访问。

CoDeSys提供了库
CmplecTask
,该库为您提供有关当前任务的详细信息。让您的代码在循环触发的专用任务中运行,并使用从任务信息中以编程方式读取的信息控制一切。所有计时、抖动等都可以在那里查看。

什么是
“C”
代码?我们不是翻译服务机构。@Olaf我相信OP是指C编程language@TriskalJM:我真的很喜欢人们陈述显而易见的事情,因为他们没有抓住要点。:-)我应该查一下你的个人资料,嗯,@Olaf?:谢谢你的评论。我重写了问题。什么是
“C”
code?我们不是翻译服务机构。@Olaf我相信OP是指C编程language@TriskalJM:我真的很喜欢人们陈述显而易见的事情,因为他们没有抓住要点。:-)我应该查一下你的个人资料,嗯,@Olaf?:谢谢你的评论。我改写了这个问题。