{"id":120267,"date":"2023-07-04T05:03:20","date_gmt":"2023-07-04T05:03:20","guid":{"rendered":"https:\/\/www.controleng.com\/articles\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/"},"modified":"2025-04-23T19:02:14","modified_gmt":"2025-04-24T00:02:14","slug":"are-you-making-the-most-of-plc-programming-standards-from-plcopen","status":"publish","type":"post","link":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/","title":{"rendered":"Are you making the most of PLC programming standards from PLCopen?"},"content":{"rendered":"<p>&nbsp;<\/p>\n<div class=\"learn-obj\">\n<div class=\"top-one\"><\/div>\n<div class=\"top-two\"><\/div>\n<h4>Learning Objectives<\/h4>\n<ul>\n<li>Understand the types of programming languages supported by PLCopen and the roles they play.<\/li>\n<li>Learn about the benefits of program optimization and how users can integrate and reuse code.<\/li>\n<li>Understand how troubleshooting support can help users when they run into problems or issues.<\/li>\n<\/ul>\n<div class=\"bottom\"><\/div>\n<\/div>\n<h2><strong>PLC programming insights<\/strong><\/h2>\n<ul>\n<li>Programmable logic controller (PLC) programming needs frameworks and structures that can help users make better decisions.<\/li>\n<li>Knowing the fundamentals of supported programming languages, PLC program optimization and how to take advantage of troubleshooting support can go a long way.<\/li>\n<\/ul>\n<hr \/>\n<p>In its third edition, the PLC programming language standards, IEC 61131-3, offers users a reliable framework to develop efficient solutions at all phases of their automation process. The standard is inclusive of three graphical and two textual programming languages used to support PLCopen libraries designed for various applications and communications with ongoing support, creating reusable code to exist for different builder needs. PLCopen offers three benefits for programmers: Multiple supported programming languages, program optimization and troubleshooting support.<\/p>\n<h2>1. Supported programming languages<\/h2>\n<p>While code portability or code interoperability among PLCs cannot be guaranteed, the standard supports commonly used languages:<\/p>\n<ul>\n<li>\n<h3><strong>Graphical programming languages<\/strong><\/h3>\n<ul>\n<li>\n<h3><strong>Ladder diagram (LD) \u2013<\/strong> Composed of different types, contacts and coils<\/h3>\n<\/li>\n<li>\n<h3><strong>Function block diagram (FBD) \u2013<\/strong> Consisting of functions and\/or function blocks<\/h3>\n<\/li>\n<li>\n<h3><strong>Sequential function chart (SFC) \u2013 <\/strong>Composed of steps and transitions.<\/h3>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<h3><strong>Textual programming languages<\/strong><\/h3>\n<ul>\n<li>\n<h3><strong>Structured text (ST) \u2013<\/strong> Consists of statements and expressions<\/h3>\n<\/li>\n<li>\n<h3><strong>Instruction list (IL) \u2013<\/strong> Sequence of instructions.<\/h3>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>The flexibility allows users to remain consistent in their coding if they need to perform a retrofit. It also helps if they\u2019re starting a new project by allowing them to choose their preferred method of programming. In some examples, users may find it beneficial to create function blocks (FBs) from their structured text subroutines, integrate PLCopen function blocks to their logic for better performance and\/or restructure logic due to troubleshooting procedures.<\/p>\n<p>The standard\u2019s support for diverse languages makes it feasible to operate and implement the various application PLCopen libraries, while users program in their preferred language(s).<\/p>\n<figure id=\"attachment_532440\" aria-describedby=\"caption-attachment-532440\" style=\"width: 1153px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-532440 size-full\" src=\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-Fig1.jpg\" alt=\"Figure 1: PLCopen FB Byte_To_Buf instantiated in ST: FB is used to process data swapping for the output\/input command on a Modbus communicating sensor. Courtesy: Yaskawa\" width=\"1153\" height=\"448\" \/><figcaption id=\"caption-attachment-532440\" class=\"wp-caption-text\">Figure 1: PLCopen FB Byte_To_Buf instantiated in ST: FB is used to process data swapping for the output\/input command on a Modbus communicating sensor. Courtesy: Yaskawa<\/figcaption><\/figure>\n<h2>2. Program optimization: Integrate and reuse<\/h2>\n<p>Integrated PLCopen libraries on IEC 61131-3 compliant programming environment(s) provide users with guidelines and best practices to assist in developing efficient and reusable PLC programs, as well as other tools for users to adapt PLCopen guidelines into code for metrics like desired memory usage or performance of their PLC programs.<\/p>\n<p>PLCopen libraries are designed and created to support and monitor a project\u2019s logic, motion control, safety, OPC UA-HMI, and XML (project source code export), based on configuration needs, alongside application focused PLCopen libraries in homing, coordinated motion, torque control, camming and gearing. The wide range of functionalities is meant to support users in each step of their process, cutting down on programming time.<\/p>\n<p>The PLC programming language standards IEC 61131-3 also allow users to create variables that can be applied to retain\/constant values, while being assigned as a global, local, external, temp or input\/output (I\/O) mapping. The standard\u2019s openness for variable creation makes customizing PLCopen libraries with standard FBs (counter, timer, etc.) and functions (Type convert, Bit-string, INTEGER, REAL, etc.) a feasible task. The adaptation of functions\/FBs also can help projects run more efficiently while reducing code by granting users the potential to reuse them in other project sections.<\/p>\n<p>When making the most of the PLC programming standards, users also may allocate CPU based configuration resources to assign programs to tasks based on default, cyclic, event or system. Users are able to assign task interval time, priority level and watchdog timing for the assigned programs. The configuration resource capability is a beneficial tool in ensuring applications meet desired timing and execution expectations.<\/p>\n<p>PLCopen and PLC programming language IEC 61131-3 guidelines make it possible for users to optimize projects while providing additional measures to configure, customize and troubleshoot for completion.<\/p>\n<figure id=\"attachment_532443\" aria-describedby=\"caption-attachment-532443\" style=\"width: 929px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-532443\" src=\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-Fig2.jpg\" alt=\"Figure 2: PLCopen FB MC_ReadAxisError may be used to determine motion control axis errors with ErrorID values providing further description and resolutions. Courtesy: Yaskawa\" width=\"929\" height=\"409\" \/><figcaption id=\"caption-attachment-532443\" class=\"wp-caption-text\">Figure 2: PLCopen FB MC_ReadAxisError may be used to determine motion control axis errors with ErrorID values providing further description and resolutions. Courtesy: Yaskawa<\/figcaption><\/figure>\n<h2>3. Troubleshooting support<\/h2>\n<p>As part of its development, PLCopen, operating on complaint programming environment(s), provides users tools to troubleshoot applications issues with many PLCopen libraries including embedded logic to signal error alarms, error ID\/codes with potential resolutions. Users also could use the standard\u2019s tools to further troubleshoot PLCopen for syntax errors, logical mistakes, incorrect parameter settings and more.<\/p>\n<p>In making the most of PLCopen troubleshooting capabilities, users may implement their own IEC 61131-3 compliant responses to act accordingly to their needs, such as monitoring external hardware issues (if they are aware of the necessary parameter), data type and values. They can also create error alarms and warnings for production processing. Specific to motion instruction, PLCopen specifies a state diagram, of which transitions are possible for various states, alongside a function block, for users to determine what state an axis\/group is in.\u00a0 This allows for ongoing state monitoring for an extra measure of preventive care.<\/p>\n<p>In IEC 61131-3 compliant programming environments, users may have various tools that can be used to debug in both offline and online formats. Online tools may monitor input or output values, while checking status updates from devices or sensors, or for execution flow in user programs. If users need further diagnostics, using compliant graphing tools can also help address unexpected behavior. In an offline setting, users have the ability to compare projects, which can be used to manage project versions and track modifications, ensuring projects remain correctly configured and variables have properly defined data types, ranges, memory allocations and initialization necessities.<\/p>\n<p>While there are many tools within IEC 61131-3 compliant programming environments and PLCopen solutions, it is always best practice to revise project code for potential errors before downloading onto physical hardware.<\/p>\n<figure id=\"attachment_532441\" aria-describedby=\"caption-attachment-532441\" style=\"width: 1513px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-532441 size-full\" src=\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-Fig3.jpg\" alt=\"Figure 3: Plcopen Motion State Diagram: Monitoring for Errors, Homing, Stopping, etc. Courtesy: Yaskawa\" width=\"1513\" height=\"1725\" \/><figcaption id=\"caption-attachment-532441\" class=\"wp-caption-text\">Figure 3: Plcopen Motion State Diagram: Monitoring for Errors, Homing, Stopping, etc. Courtesy: Yaskawa<\/figcaption><\/figure>\n<p><strong>Dulce Maria Varela <\/strong>is a regional motion engineer for <a href=\"http:\/\/www.yaskawa.com\">Yaskawa America, Inc<\/a>. Edited by Chris Vavra, web content manager, Control Engineering, CFE Media and Technology, <a href=\"mailto:cvavra@cfemedia.com\">cvavra@cfemedia.com<\/a>.<\/p>\n<p><strong>MORE ANSWERS<\/strong><\/p>\n<p>Keywords: programmable logic controller, PLCopen<\/p>\n<p><strong>ONLINE<\/strong><\/p>\n<p>See additional PLC stories at <a href=\"https:\/\/www.controleng.com\/control-systems\/plcs-pacs\/\">https:\/\/www.controleng.com\/control-systems\/plcs-pacs\/<\/a><\/p>\n<p><strong>CONSIDER THIS<\/strong><\/p>\n<p><strong>How do you <\/strong>use PLCopen in your programming and what role does it play?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>IEC 61131-3 offers users a reliable framework to develop efficient solutions at all phases of their automation process, and is used to support PLCopen libraries.<\/p>\n","protected":false},"author":1604,"featured_media":120271,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"pgc_sgb_lightbox_settings":"","footnotes":""},"categories":[108210],"tags":[],"tracking-metrics":[],"display-location":[],"class_list":{"2":"type-post"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Are you making the most of PLC programming standards from PLCopen? - Control Engineering<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Are you making the most of PLC programming standards from PLCopen? - Control Engineering\" \/>\n<meta property=\"og:description\" content=\"IEC 61131-3 offers users a reliable framework to develop efficient solutions at all phases of their automation process, and is used to support PLCopen libraries.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/\" \/>\n<meta property=\"og:site_name\" content=\"Control Engineering\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ControlEngineeringMagazine\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-04T05:03:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-04-24T00:02:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png\" \/>\n\t<meta property=\"og:image:width\" content=\"645\" \/>\n\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Dulce Maria Varela\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@controlengtips\" \/>\n<meta name=\"twitter:site\" content=\"@controlengtips\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dulce Maria Varela\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/\"},\"author\":{\"name\":\"Dulce Maria Varela\",\"@id\":\"https:\/\/www.controleng.com\/#\/schema\/person\/7e45163f47bef11feefe6fd8a8264799\"},\"headline\":\"Are you making the most of PLC programming standards from PLCopen?\",\"datePublished\":\"2023-07-04T05:03:20+00:00\",\"dateModified\":\"2025-04-24T00:02:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/\"},\"wordCount\":1085,\"publisher\":{\"@id\":\"https:\/\/www.controleng.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png\",\"articleSection\":[\"Programming\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/\",\"url\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/\",\"name\":\"Are you making the most of PLC programming standards from PLCopen? - Control Engineering\",\"isPartOf\":{\"@id\":\"https:\/\/www.controleng.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png\",\"datePublished\":\"2023-07-04T05:03:20+00:00\",\"dateModified\":\"2025-04-24T00:02:14+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage\",\"url\":\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png\",\"contentUrl\":\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png\",\"width\":645,\"height\":350,\"caption\":\"Courtesy: Yaskawa\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.controleng.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Are you making the most of PLC programming standards from PLCopen?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.controleng.com\/#website\",\"url\":\"https:\/\/www.controleng.com\/\",\"name\":\"Control Engineering\",\"description\":\"Control Engineering covers and educates about automation, control and instrumentation technologies\",\"publisher\":{\"@id\":\"https:\/\/www.controleng.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.controleng.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.controleng.com\/#organization\",\"name\":\"Control Engineering\",\"url\":\"https:\/\/www.controleng.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.controleng.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/12\/ce_logo.png\",\"contentUrl\":\"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/12\/ce_logo.png\",\"width\":300,\"height\":93,\"caption\":\"Control Engineering\"},\"image\":{\"@id\":\"https:\/\/www.controleng.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/ControlEngineeringMagazine\",\"https:\/\/x.com\/controlengtips\",\"https:\/\/www.linkedin.com\/company\/control-engineering-magazine\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.controleng.com\/#\/schema\/person\/7e45163f47bef11feefe6fd8a8264799\",\"name\":\"Dulce Maria Varela\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.controleng.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/de17d9c739eb986b13cbfb41bf87daaf8dc99c35fb0eac2d25ac595ca882bb24?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/de17d9c739eb986b13cbfb41bf87daaf8dc99c35fb0eac2d25ac595ca882bb24?s=96&d=mm&r=g\",\"caption\":\"Dulce Maria Varela\"},\"url\":\"https:\/\/www.controleng.com\/author\/dulce-maria-varela\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Are you making the most of PLC programming standards from PLCopen? - Control Engineering","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/","og_locale":"en_US","og_type":"article","og_title":"Are you making the most of PLC programming standards from PLCopen? - Control Engineering","og_description":"IEC 61131-3 offers users a reliable framework to develop efficient solutions at all phases of their automation process, and is used to support PLCopen libraries.","og_url":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/","og_site_name":"Control Engineering","article_publisher":"https:\/\/www.facebook.com\/ControlEngineeringMagazine","article_published_time":"2023-07-04T05:03:20+00:00","article_modified_time":"2025-04-24T00:02:14+00:00","og_image":[{"width":645,"height":350,"url":"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png","type":"image\/png"}],"author":"Dulce Maria Varela","twitter_card":"summary_large_image","twitter_creator":"@controlengtips","twitter_site":"@controlengtips","twitter_misc":{"Written by":"Dulce Maria Varela","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#article","isPartOf":{"@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/"},"author":{"name":"Dulce Maria Varela","@id":"https:\/\/www.controleng.com\/#\/schema\/person\/7e45163f47bef11feefe6fd8a8264799"},"headline":"Are you making the most of PLC programming standards from PLCopen?","datePublished":"2023-07-04T05:03:20+00:00","dateModified":"2025-04-24T00:02:14+00:00","mainEntityOfPage":{"@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/"},"wordCount":1085,"publisher":{"@id":"https:\/\/www.controleng.com\/#organization"},"image":{"@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage"},"thumbnailUrl":"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png","articleSection":["Programming"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/","url":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/","name":"Are you making the most of PLC programming standards from PLCopen? - Control Engineering","isPartOf":{"@id":"https:\/\/www.controleng.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage"},"image":{"@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage"},"thumbnailUrl":"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png","datePublished":"2023-07-04T05:03:20+00:00","dateModified":"2025-04-24T00:02:14+00:00","breadcrumb":{"@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#primaryimage","url":"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png","contentUrl":"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/11\/CTL2307_MAG2_F1_PLCprogramming-Yaskawa-slider.png","width":645,"height":350,"caption":"Courtesy: Yaskawa"},{"@type":"BreadcrumbList","@id":"https:\/\/www.controleng.com\/are-you-making-the-most-of-plc-programming-standards-from-plcopen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.controleng.com\/"},{"@type":"ListItem","position":2,"name":"Are you making the most of PLC programming standards from PLCopen?"}]},{"@type":"WebSite","@id":"https:\/\/www.controleng.com\/#website","url":"https:\/\/www.controleng.com\/","name":"Control Engineering","description":"Control Engineering covers and educates about automation, control and instrumentation technologies","publisher":{"@id":"https:\/\/www.controleng.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.controleng.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.controleng.com\/#organization","name":"Control Engineering","url":"https:\/\/www.controleng.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.controleng.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/12\/ce_logo.png","contentUrl":"https:\/\/www.controleng.com\/wp-content\/uploads\/2024\/12\/ce_logo.png","width":300,"height":93,"caption":"Control Engineering"},"image":{"@id":"https:\/\/www.controleng.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ControlEngineeringMagazine","https:\/\/x.com\/controlengtips","https:\/\/www.linkedin.com\/company\/control-engineering-magazine\/"]},{"@type":"Person","@id":"https:\/\/www.controleng.com\/#\/schema\/person\/7e45163f47bef11feefe6fd8a8264799","name":"Dulce Maria Varela","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.controleng.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/de17d9c739eb986b13cbfb41bf87daaf8dc99c35fb0eac2d25ac595ca882bb24?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/de17d9c739eb986b13cbfb41bf87daaf8dc99c35fb0eac2d25ac595ca882bb24?s=96&d=mm&r=g","caption":"Dulce Maria Varela"},"url":"https:\/\/www.controleng.com\/author\/dulce-maria-varela\/"}]}},"_links":{"self":[{"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/posts\/120267","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/users\/1604"}],"replies":[{"embeddable":true,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/comments?post=120267"}],"version-history":[{"count":0,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/posts\/120267\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/media\/120271"}],"wp:attachment":[{"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/media?parent=120267"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/categories?post=120267"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/tags?post=120267"},{"taxonomy":"tracking-metric","embeddable":true,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/tracking-metrics?post=120267"},{"taxonomy":"display-location","embeddable":true,"href":"https:\/\/www.controleng.com\/wp-json\/wp\/v2\/display-location?post=120267"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}