Programming Books

Main Menu

  • Home
  • Phyton programming
  • Java programming
  • Php programming
  • C++ programming
  • Additional Topics
    • Programming industry
    • Privacy Policy
    • Terms and Conditions

Programming Books

Header Banner

Programming Books

  • Home
  • Phyton programming
  • Java programming
  • Php programming
  • C++ programming
  • Additional Topics
    • Programming industry
    • Privacy Policy
    • Terms and Conditions
Java programming
Home›Java programming›PLC Programming Language Decisions | Automation World

PLC Programming Language Decisions | Automation World

By Brandy J. Richardson
June 1, 2022
0
0

Although PLC (programmable logic controller) programming languages ​​may not receive the attention that general computer programming languages, such as JavaScript, C# or Python, they remain essential for the manufacturing and process industries. And while PLC programming languages ​​have not undergone as many changes or updates as general computer programming, neither have these languages ​​been static.

To check on the state of PLC programming languages, we spoke with Doug Yerger, Principal Engineer at Grantek, an industrial automation systems integrator, for a recent episode of the Automation World Gets Your Questions Answered podcast series.

The end of the list of instructions?

One thing that hasn’t changed recently with PLC programming languages ​​is that there are still two basic types: text-based programming using typed commands, and graphical programming where logic sequences are organized by moving objects around in the programming environment. Beginning our discussion with a focus on textual languages, Yerger noted that the instruction list’s textual PLC programming language is “a very low-level mnemonic language” whose days seem to be numbered.

The instruction list has been “deprecated in IEC 61131-3 and probably won’t be in the next version of the standard, depending on the standard itself,” he said. “I think you’ll see that controllers and programming software that supports instruction list will continue to support it for a number of years, but I don’t think you’ll see anyone putting it in their [new] product lines if it is an obsolete standard.

Example of structured text. Source: drivesandsystems.comThis deprecation of the instruction list in the IEC standard occurs because the language is considered an “obsolete assembly-like language,” Yerger said. “And speaking with my peers in our company, no one has seen the instruction list used in any of our projects. We stick to structured text and other languages.

Despite the gloomy outlook of the instruction list, structured text will stick around because it is a high-level programming language. “If you come from a computer science background, structured text will be a very native domain for you. It’s also very good for loops and string manipulation,” Yerger said. -bars, remove ASCII characters, etc., it’s so much easier to do in a high-level textual language than in [a graphical programming language like] Ladder diagram, where you will process each byte individually. »

The field of graphics programming

Explaining the main differences between graphical PLC programming languages, Yerger started with the ladder diagram, noting its development from ladder logic. “It (ladder diagram) looks like old school hardware relay logic diagrams. It’s basically Boolean math and Boolean decisions, for the most part,” he said. Meanwhile, the Function Block language allows programmers to organize different blocks on a graphical screen that represent the inputs and outputs between the controller and the devices connected to it.

Example of a sequential functional diagram.  realpars.comExample of a sequential functional diagram. realpars.comYerger describes the Sequential Function Chart language as “the oddball of the five [PLC programming] languages. We don’t think of it as a language, it’s a flow structure of logic, because it allows branching into parallel processes that are condition-based decision points. Basically, with Sequential Function Chart, there is an action element to each block and each action can have a series of events. These events are going to be what happens in each of these action blocks. But the events will probably be programmed in ladder diagram from the structured text function blocks. Sequential flow diagram controls flow [of operations] saying “do this and wait for this condition to be met”. It analyzes the flow of the program in this way giving instructions based on the conditions met. So that’s where it’s a bit different from other languages.

Example of a ladder diagram.  Source: automationprimer.comExample of a ladder diagram. Source: automationprimer.comThis program flow nature of the Sequential Function Chart is the reason it is so often used. “It is ideal for stepwise or discrete sequencing. A classic example would be a batch engine where you could have, say, three ingredients added together for a recipe and those ingredients are going to be three parallel branches in the programming language. But you’re not going to turn on the mixer agitator until all three are added. So you’ll have this series of steps that need to happen – some parallel, some sequential – where the controller will wait for the conditions between them to be met before moving forward. When you get to the stirring stage, the motor control can be done in the ladder diagram, which will trigger the execution of the sequential function diagrams in a separate process. When the Sequential Function Chart program sees the triggering of the agitations completed, it moves on to the next action in the sequence.

Doug Yerger, Principal Engineer at GrantekDoug Yerger, Principal Engineer at GrantekIn North America, more than 90 percent of command programming is done in ladder logic, Yerger said. “It’s great for discrete logic systems that use a lot of Boolean algebra and have a lot of limit and on/off switches,” he said. “It is also very easy for experienced electricians to understand, as they come from reading the hardware (on which the ladder diagram is based). New techies who have learned C or other high-level programming languages ​​are likely to turn to structured text because it will be more familiar to them.

Function block programming is preferred for continuous processes where you take an analog input and scale it, Yerger said. This is why it is often used for PID loops. There are also several security systems that use function blocks as a method of programming, he added.

The main point to remember when looking at the different PLC programming languages ​​is that only one is rarely used. “Especially if it’s a big program, we’re going to have routines and programs in it that use a variety of languages,” Yerger said. “The majority could be ladder diagram, but if we have a lot of table processing to do, we’ll use structured text to manage those tables. We won’t stick to just one [language] unless, of course, our client has this requirement. And there are several clients who say: Use only Ladder. But we usually try to talk them out of it and transition them to a more modern philosophy of using the right tool for the job.

Beyond IEC 61131-3

The introduction of Programmable Automation Controllers (PAC) for more complex automation tasks has expanded the domain of controller languages ​​beyond IEC 61131-3 languages, allowing the use of languages ​​more related to the computer world, such as C and C+.

Yerger said there was a big push several years ago to bring “C” programming languages ​​into the factory. But he said that push slowly faded in favor of IEC languages. However, he noted that computer programming languages ​​are still prevalent with SCADA systems. “If we’re going to do high-level C processing, Python processing, or even Java processing, we’re going to take it to the SCADA level and do it on hardware with the power specifically designed for those languages,” he said. -he declares.



Related posts:

  1. Goa, 13-year-old boy, manages millions of dollars in cryptocurrency | Goa News
  2. 4 “exotic” programming languages ​​popular with malware developers
  3. Intimidated by Kafka? Discover the new Confluent developer site
  4. Why is it essential for data scientists to learn Python?

Archives

  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • January 2021
  • December 2019
  • November 2019
  • October 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2017

Categories

  • C++ programming
  • Java programming
  • Php programming
  • Phyton programming
  • Programming industry

Recent Posts

  • Rust could be included in the Linux kernel in 5.20
  • [Around the Hotels] Promotions and packages
  • AWS Mainframe Modernization Service Now Generally Available
  • Rates rise for private student loans, but borrowers with good credit can still save
  • Lycoming College student secures his future with the Ministry of Defense | Education
  • Privacy Policy
  • Terms and Conditions