Programmable logic controller: Difference between revisions

Content deleted Content added
recently added unreliable source / overlapping 'types'
review: rm unused acro defs. add links. simplify links.
Line 58:
 
===Redundancy===
Some special processes need to work permanently with minimum unwanted downtime. Therefore, it is necessary to design a system that is [[fault tolerant]]. In such cases, to increase the system availability in the event of hardware component failure, [[Redundancy (engineering)|redundant]] CPU or I/O modules with the same functionality can be added to a hardware configuration to prevent a total or partial [[Plant process and emergency shutdown systems|process shutdown]] due to hardware failure. Other redundancy scenarios could be related to safety-critical processes, for example, large hydraulic presses could require that two PLCs turn on output before the press can come down in case one PLC does not behave properly.<!--[[User:Kvng/RTH]]-->
 
==Programming==
[[File:Ladder temporizado.svg|thumb|upright=0.9|Example of a ladder diagram logic]]
 
Programmable logic controllers are intended to be used by engineers without a programming background. For this reason, a graphical programming language called [[Ladderladder logic|Ladder Diagram]] (LD, LAD) was first developed. It resembles the schematic diagram of a system built with electromechanical relays and was adopted by many manufacturers and later standardized in the [[IEC 61131-3]] control systems programming standard. {{As of|2015|post=,}} it is still widely used, thanks to its simplicity.<ref name=":6">{{Harvnb|Bolton|2015|pp=16–18}}</ref>
 
{{As of|2015|post=,}} the majority of PLC systems adhere to the [[IEC 61131-3]] standard that defines 2 textual programming languages: [[Structured text|Structured Text]] (ST; similar to [[Pascal (programming language)|Pascal]]) and [[Instruction list|Instruction List]] (IL); as well as 3 graphical languages: [[ladder logic]], [[function block diagram]] and [[sequential function chart]].<ref name=":6" /><ref>Keller, William L Jr. ''Grafcet, A Functional Chart for Sequential Processes'', 14th Annual International Programmable Controllers Conference Proceedings, 1984, p. 71-96.</ref> [[Instruction list|Instruction List]] (IL) was deprecated in the third edition of the standard.<ref>{{Cite web|url=https://plcopen.org/status-iec-61131-3-standard |title=Status IEC 61131-3 Standard |date=2018-07-19 |website=PLCopen |access-date=2020-04-01 }}</ref>
 
Modern PLCs can be programmed in a variety of ways, from the relay-derived ladder logic to programming languages such as specially adapted dialects of [[BASIC]] and [[C (programming language)|C]].<ref>{{Cite web |title=Programmable logic controller for automation systems |url=https://www.isisvarese.edu.it/wp-content/uploads/2016/03/CLIL-5B-MEC-PLC.pdf |access-date=April 8, 2024 |website=www.isisvarese.edu.it}}</ref>
 
While the fundamental concepts of PLC programming are common to all manufacturers, differences in [[I/O addressingaddress]]ing, [[memory organization]], and [[instruction setsset]]s mean that PLC programs are never perfectly interchangeable between different makers. Even within the same product line of a single manufacturer, different models may not be directly compatible.<ref>{{Cite web |date=September 2020 |title=A mini view of PLC |url=https://www.researchgate.net/publication/344308053 |access-date=April 8, 2024 |website=www.researchgate.net}}</ref><!--[[User:Kvng/RTH]]-->
 
===Programming device===