DCS; Industrial control system
NameDescriptionContent
NEW CENTER
Current Location:

The Last Word: The Evolving Language of Automation Engineering

From:automation | Author:H | Time :2024-11-27 | 121 Browse: | Share:

The Last Word: The Evolving Language of Automation Engineering

The automation industry grew up using ladder logic to tell programmable logic controllers (PLCs) what to do and how to do it. But the era of classic computerized control has moved into the era of Industry 4.0, with its emphasis on industrial digitalization and software implementations of complex systems. To keep up with this shift, the industrial automation and control engineering disciplines are evolving as well, reflecting the convergence of operational technology (OT) and information technology (IT) systems.  

When I spoke with Arlen Nipper, CTO for Cirrus Link Solutions and co-inventor of MQTT at a recent technical conference, we got to talking about this evolution, I asked him to rank the programming languages automation and control engineers are using today. He told me that Python, Java, and the C-family of languages (C, C++ and C#) are the top three. But he quickly clarified that their prevalence does not in any way exclude others.  

Because of their similar syntax, Python and Java are considered part of the C-family of programming languages, which also includes Julia, Perl, and many other languages. What that family does not include, however, is ladder logic—long used to develop control applications for industrial hardware like PLCs and PACs—and IEC 61131-3, a newer open programming standard.  

In an article in the June 2022 issue of InTech titled “Future-Proofing Controls Programming for the Edge,” Emerson’s Darrell Halterman wrote: Programmable automation controllers (PACs) “began to take on tasks we would associate with the edge today, although their dedicated real-time operating systems (RTOS) imposed some limitations. In many cases, users found it necessary to create complex algorithms, like machine learning strategies, using modern information technology (IT)–type languages like C++ and Python, running on PCs and industrial PCs (IPCs) working in conjunction with PACs.” 

In the same article, Halterman said users should seek product portfolios that embrace open programming, software, and communication standards when possible. He said that for edge controllers, this requires (among significant other criteria) that they be “programmable using C/C++, Python, and other modern languages suitable for applications like machine learning [ML] and artificial intelligence [AI].” 

In an October 2022 Robotics and Automation News article titled “Most Popular Programming Languages for Automation,” author Mark Allinson wrote: “According to surveys conducted last year, [Python] is the most preferred language for developing automated systems. Its open sources and freedom are the main pros. Any new venture is strongly encouraged to use Python as its primary programming language. Python’s high level of readability makes it relatively simple to pick up.” Allinson’s article also notes the popularity of JavaScript, Java, and C# as powerful programming languages for automation and the corporate environment. 

Supporting Python’s place in front, IEEE Spectrum recently released its 10th annual rankings of the top programming languages saying, “This year, Python doesn’t just remain No. 1 in our general ‘Spectrum’ ranking…but it widens its lead. Python’s increased dominance appears to be largely at the expense of smaller, more specialized, languages. It has become the jack-of-all-trades language—and the master of some, such as AI, where powerful and extensive libraries make it ubiquitous.” 


What about IEC 61131-3? 

Coming up through the OT ranks are open, interoperable programming standards seeking to replace the proprietary programming languages tied to specific pieces of industrial hardware. In a recent Automation.com article, “The Missing ‘Industry 4.0/Digitalization’ Link—Open Programming Standard Conformance & Certification,” Bill Lydon wrote: “The fundamentals of IEC 61131-3 have been adopted by a wide range of automation vendors throughout the world. IEC 61131-3 is supported by the PLCopen organization that extends the standard with special interest groups, standards, and certifications. These standards and certifications include motion control, safety, OPC UA, XML interchange, and reusability. Due to the task structure of a full IEC 61131 implementation, both event-driven and cyclical [programming] can be accomplished.” 

Lydon points out that, regardless of the programming methods, “manufacturers and process production companies must digitize, or they will be caught in a strategic gap putting them at a large competitive disadvantage. Achieving the benefits of digitalization requires organizations to leverage Industry 4.0 and IoT (Internet of Things) concepts, technology, and architecture with open standards. Vendor compliance and certification to open interoperable programming standards will accelerate the digitalization of manufacturing, production, and process industries.” 

Lydon seems concerned that, in the void left by the lack of strong conformance and certification to industrial automation programming standards like IEC 61131, “the industry may be preempted from the outside.” Does that mean the alleged IT-centric languages like Python are “from the outside?”  

  • ALSTOM COP232.2 VME A32/D32, 029.232 446 controller unit
  • GE 151X1235DB15SA01 Gas turbine controller
  • Abaco VP869 FPGA Card
  • Abaco VP868 FPGA Card
  • Abaco VP780 FPGA Card
  • Abaco VP680 FPGA Card
  • PC821 PCIe FPGA Card
  • Abaco PC820 FPGA Card
  • Abaco PC720 FPGA Card
  • Abaco FlexVPX Backplane
  • Abaco VP880 / VP881
  • Abaco VP889 FPGA Board
  • Abaco VP430 RFSoC Board
  • Abaco VP460 Direct RF Processing System
  • Abaco VP431 RFSoC Board
  • Abaco VP461 6U VPX Xilinx UltraScale
  • Abaco VP891 3U VPX FPGA Processing Card
  • Abaco TM-683 2 PMC rear panel I/O transition module for 6U CPCI
  • Abaco CPCI-100A-FP 2-slot IndustryPack carrier for 3U CPCI systems
  • Abaco BIO-4 Rear transition card for the CPCI-200A IP carrier
  • Abaco VME-4116 VME Analog I/O Output Boards
  • Abaco VME-4140 VME Analog I/O Output Boards
  • Abaco VME-3122B VME Analog I/O Input Boards
  • Abaco VME-3113B Scanning 12-bit Analog-to-Digital Converter with Built-in-Test
  • Abaco Vme-4132 VME Analog I/O Output board
  • N-Tron® NT24K-14FXE6-SC-80 Managed 14-Port Gigabit Industrial Ethernet Switch
  • N-Tron® 7012FXE2-SC-40 Managed 12-port Industrial Ethernet Switch
  • N-Tron® NT24K-11GX3-SC-PT Managed 11-Port Gigabit Industrial Ethernet Switch
  • N-Tron® NT24K-14FXE6-SC-15 Managed 14-Port Gigabit Industrial Ethernet Switch
  • N-Tron® 7018FXE2-SC-15 Managed 18-port Industrial Ethernet Switch
  • N-Tron® NT24k 24-Port Rackmount Gigabit Managed Industrial Ethernet Switch
  • N-Tron® NT24k 24-Port, Dual Redundant VDC Power Input, Rackmount Gigabit Managed Industrial Ethernet Switc
  • N-Tron® NT24K-10FX2-SC Managed 10-Port Industrial Ethernet
  • N-Tron® NT24K-12SFP-DM4 Managed 12-Port Gigabit Industrial Ethernet Switch
  • N-Tron® NT24k 16-Port, Single Redundant VDC Power Input
  • N-tron SLX-6ES-5SC Unmanaged 6-port industrial Ethernet switch
  • NT24k® 10FX2-POE Managed PoE+ Gigabit Ethernet Switch
  • N-Tron® 105FXE-SC-15-POE-MDR Unmanaged 5-port PoE Switch
  • Sixnet® SL-8ES-1 Unmanaged 8-port Industrial Ethernet Switch
  • N-Tron® 106FX2-SC-MDR Unmanaged 6-port Industrial Ethernet Switch
  • Sixnet® SLX-9ES-3SC Unmanaged 9-port Industrial Ethernet Switch
  • N -Tron® 710FXE2-ST-80 Managed 10-port Industrial Ethernet Switch
  • N -Tron® 712FXE4-SC-15-HV Managed 12-port Industrial Ethernet Switch
  • N -Tron® 712FXE4-ST-15-HV Managed 12-port Industrial Ethernet Switch
  • N -Tron® 709FXE-SC-40 Managed 9-port Industrial Ethernet Switch
  • ABB IEMMU21 Module Mounting Unit
  • ABB CMA120 3DDE300400 Basic Controller Panel Unit
  • Bently Nevada 2300/20-RU 2300/20-CN Monitoring controller
  • A-B 4100-234-R IMC™ S Class Compact Motion Controllers
  • B&R Power Panel 300/400
  • ADLINK cPCI-3840 Processor module
  • ACQUISITIONLOGICAL81G -2
  • HIMA K1412B PLC Module
  • IS200VTCCH1CBD GE Speedtronic Turbine Control PCB board
  • TRICONEX 4200 Digital Output Module
  • DEIF SCM-1 PCB CARD Module
  • HIMA F3DIO20802 controller plc F3DIO20802
  • HIMA B5233 PLC Module
  • HIMA B5322 PLC Module
  • HIMA F7105A PLC Module
  • HIMA F7150 PLC Module
  • HIMA Z7308 PLC Module
  • HIMA F60 PS01
  • TRICONEX 4409 PLC Module
  • F8651X HIMA Central module F8651X
  • HIMA-6E-B HIMA-6E-B Large System Controller
  • HIMA P8403 PLC Module
  • F8621A HIMA communication module
  • IS200VRTDH1D GE Mark VI Printed Circuit Board
  • ABB NIACO2 PLC Module
  • ABB NIAMO1 PLC Module
  • HIMA F8652 98465266 PLC Module
  • F8652X HIMA Central module
  • HIMA 62100
  • HIMA 99-7105233 B5233-1 NSMP
  • ABBSPAD 346 C3-AA
  • ABBREF543KM127BABB
  • ABB 0-63007 M003742626
  • Abb FET3251A0P1B3C0H2M
  • ABB 3HAB8800-1
  • ABB 3AUA266001B166
  • ABB3HNM07686-1
  • ABB PQF4-3 TAS
  • Honeywell 30735863-502 - SWITCH
  • Honeywell TK-CCR014 - REDUNDANT NET INTERFACE NEW ORIGINAL FREE EXPEDITED SHIPPING/
  • Honeywell 51403165-400 - new 51403165400/
  • Honeywell318-049-001 quot100 Batteries(Japan Liion2Ah14.8Wh)INTERMEC/ PR2,PR3 P/N
  • Honeywell FC-PSU-UNI2450U - Power Supply
  • Honeywell 965-0676-010 - WARNING COMPUTER SV
  • Honeywell 51403519-160 - Module
  • Honeywell 107843 - HOUSING CARBON FILE P/N NE COND # 11438 (4)
  • Honeywell VR434VA5009-1000 - Brand new in box Condensing boiler valve DHL fast shipping
  • Honeywell SPXCDALMFX - plc new FREE EXPEDITED SHIPPING/
  • Honeywell BCM-PWS - BCM-ETH BCM-MS/TP BCM-MS/TP Network controller setFedEx or DHL
  • Honeywell YSTR12D-22/C/-2J0DFA/BE/400/T/-CM.HO.TG.SB.SM,ZS,F1,LP,/FX/,1C-BT - UNMP
  • Honeywell IWS-1603-HW - 90-250VAC 1.0A UNMP
  • Honeywell 51304386-150 - MEASUREX Factory Packed
  • Honeywell CC-PFB401 - / CCPFB401 (NEW IN BOX)
  • Honeywell 50071726 - St 800 Series Pressure Transmitter Remote Diaphragm 11-42VDC
  • Honeywell 621-2150 - / 6212150 (NEW NO BOX)
  • Honeywell 80360206-001 - USED YAMATAKE CLI BOARD
  • Honeywell BMDX001A-001 - ACCURAY / BOARD BMDX001A001
  • Honeywell XCL8010A - New CPU Controller.
  • Honeywell PGM-7320 - 1PCS NEW Rae Systems MiniRAE 3000 Portable VOC Monitor#XR
  • Honeywell BK-G40 - U65 *FULL INSTALLATION* Gas Meter 3?± Inlet/Outlet Spool NEW UNUSED
  • Honeywell DM106-0-B-00-0-R-1-00000-000-E0 - DPR100 250V NSNP
  • Honeywell KFD840 - PRIMARY FLIGHT DISPLAY CORE PN: 066-01206-0104
  • Honeywell 51401914-100 - 51400996-100
  • Honeywell C7012A1145 - 1PC New UV Flame Detector Expedited Shipping
  • Honeywell OV210 - Baxter Bakery Oven Igition Control. For DRO. 00-616973 NEW
  • Honeywell 51304431-125 - 1PC New /51304431125 1 year warranty#XR
  • Honeywell QPP-0002 - Quad Processor Module / 5 Vdc / Massima 1.2A/24Vdc/max.25mA
  • Honeywell QPP-0002 - Quad Processor Module / 5Vdc / Max. 1.2A/24Vdc/max.25mA
  • Honeywell 8C-PCNT02 - 514543363-275 module
  • Honeywell DPCB21010002 - Tata Printed Circuit Board
  • Honeywell DPCB21010002 - Tata Printed Circuit Board Rev: 0
  • Honeywell 001649-M5T028 - Tata Printed Circuit Board Rev: 0
  • Honeywell YSTD924-(J2A)-00000-FF,W3,TP,TG,SS - NSFS
  • Honeywell XF523-A - / XF523A (NEW IN BOX)
  • Honeywell TK-PRS021 - NEW IN STOCK ship by UPS
  • Honeywell 2MLR-AC22 - " 2mlr-dbsf,2mlf-ad4s,2mlf-dc4s,2mlr-ac22 Rack"
  • Honeywell 9436610 - MEASUREX NSMP
  • Honeywell RT10A-L0N-18C12S0E - RT10A.WLAN.IN.6803.CAM.STD.GMS
  • Honeywell 51305896-200 - P:C1 Rev D Nim Modem - FAST SHIP BY Fedex
  • Honeywell TK-FTEB01 - PCL module Brand New Fast Shipping By DHL
  • Honeywell 8694500 - Measurex Control Processor Module
  • Honeywell DR4500 - Truline and DR4300 Circular Chart Recorder
  • Honeywell EC-7850-A-1122 - / EC7850A1122 (NEW IN BOX)