反馈:梯形逻辑编程盛行是有原因的

通过控制工程人员 二六年一月二十六日

Paul Schmidt,电气工程师,联合输送机公司(2005年12月,第51页)提供了关于最近控制工程“产品研究”关于plc的文章的以下观察。

“梯形编程在控制行业中存在是有充分理由的,至少在PLC应用中是这样。虽然梯子最初被营销为一种格式,旨在吸引熟悉传统继电器逻辑的电工,但这只是故事的一部分。早期的plc在扫描模式下按顺序执行,目前的模型仍然如此。实际上,PLC的CPU不是为执行用户编写的程序而设计的;相反,它在固件中执行一个例程,扫描存储在内存中的一组布尔表达式(即使输入和查看为阶梯级),一次一级,获取数据并将结果存储在数据表中,并在每次扫描时进行一次I/O更新。这模拟了用户程序的执行,而不是实际运行它(当然,这是一个细微的区别)。

这种扫描哲学使早期plc在程序执行中具有确定性和可靠性,并迫使用户使用非常小的指令集和严格格式化的程序结构。实际上,这一点也不像实际的中继逻辑电路的工作方式(其中所有事情都是同时发生的),只是所使用的符号是从中继梯编程中复制的。这也使得早期系统更容易在维护和调试的逻辑中描述功率流。在PLC固件中,没有其他结构可以如此容易地实现,包括使用字母数字文本的原始布尔表达式的竞争系统(想想早期的德州仪器PLC),使用AND和OR门符号的符号逻辑,流程图等。在我看来,重复扫描理念的真正好处在今天仍然有效,就像它在plc和基于计算机的自动化的早期一样。如果这是真的,按照执行顺序来查看逻辑可以帮助程序员在精神上保持在扫描哲学中。尝试使用AND和OR风格的符号逻辑确定逻辑“绘制”的执行顺序,传统上用于基于IC的数字逻辑。它确实存在比阶梯模式更难克服的问题。在调试一些以符号逻辑风格绘制的DCS逻辑时,我看到过这种担忧。

“阶梯逻辑之所以还在使用,更多是因为它实用,从某种意义上说,几乎是必要的,而不是因为它是旧时代的古怪遗留。”


-由Mark T. Hoske编辑,主编,控制工程,
MHoske@cfemedia.com