{"id":57975,"date":"2026-09-22T15:05:46","date_gmt":"2026-09-22T19:05:46","guid":{"rendered":"https:\/\/www.oiq.qc.ca\/?post_type=publication&#038;p=57975"},"modified":"2026-09-22T15:05:47","modified_gmt":"2026-09-22T19:05:47","slug":"programmer-un-automate-coder-ou-faire-de-lingenierie","status":"publish","type":"publication","link":"https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/","title":{"rendered":"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie?"},"content":{"rendered":"<div class=\"block-wrapper wp-block-acf-wysiwyg\" data-block-name=\"Wysiwyg\">\n<div class=\"bloc-wysiwyg \">\n    <div class=\"container\">\n        <div class=\"wysiwyg \">\n\t<p>Tu travailles sur un automate, un outil d\u2019optimisation, un script de contr\u00f4le, un mod\u00e8le d\u2019IA. Tu codes. Tu testes. Tu ajustes. Tu r\u00e8gles des bogues.<\/p>\n<p>Pour toi, c\u2019est clair : tu codes. Tu programmes en langage Ladder, tu configures des tags, tu relies un \u00e9cran HMI, tu fais communiquer l\u2019automate avec une API ou tu r\u00e8gles un bogue dans une s\u00e9quence. Bref, pas besoin de sortir le grimoire de la <em>Loi sur les ing\u00e9nieurs<\/em>.<\/p>\n<p>Puis, quelqu\u2019un te demande de modifier un <em>setpoint<\/em>, d\u2019ajouter un <em>interlock<\/em>, de changer les conditions de d\u00e9marrage, de toucher \u00e0 une s\u00e9quence ESD ou de d\u00e9cider ce qui doit d\u00e9clencher une alarme.<\/p>\n<p>L\u00e0, ce n\u2019est plus seulement une question de syntaxe, de logique de code ou de bouton qui fonctionne. Quand tu choisis comment le proc\u00e9d\u00e9 doit r\u00e9agir, tu ne fais pas juste \u00ab\u00a0pondre du code\u00a0\u00bb\u2026<\/p>\n<h2>Ce qui est r\u00e9serv\u00e9 : d\u00e9finir la logique<\/h2>\n<p>Dans un proc\u00e9d\u00e9 industriel, la logique de contr\u00f4le n\u2019est pas un d\u00e9tail technique cach\u00e9 dans le code. C\u2019est ce qui d\u00e9termine comment le proc\u00e9d\u00e9 se comporte : quels seuils d\u00e9clenchent une alarme, quelles conditions permettent ou emp\u00eachent un d\u00e9marrage, quels dispositifs de verrouillage forcent un arr\u00eat, quelles \u00e9tapes doivent s\u2019encha\u00eener.<\/p>\n<p>Cette logique doit \u00eatre d\u00e9finie ou valid\u00e9e par une ing\u00e9nieure ou un ing\u00e9nieur parce qu\u2019elle influence directement <strong>la fa\u00e7on dont l\u2019\u00e9quipement ou le syst\u00e8me fonctionne et r\u00e9agit<\/strong>.<\/p>\n<h2>Ce qui n\u2019est pas r\u00e9serv\u00e9 : programmer ce qui est d\u00e9j\u00e0 d\u00e9fini<\/h2>\n<p>Une fois cette logique \u00e9tablie, la programmation elle-m\u00eame n\u2019est pas une activit\u00e9 r\u00e9serv\u00e9e. Si un.e ing\u00e9nieur.e a pr\u00e9par\u00e9 les directives, les param\u00e8tres ou la description fonctionnelle, une personne avec les connaissances techniques n\u00e9cessaires peut coder ce qui a \u00e9t\u00e9 d\u00e9fini.<\/p>\n<p>Autrement dit : \u00e9crire le code n\u2019est pas toujours l\u2019enjeu. L\u2019enjeu, c\u2019est de savoir qui a d\u00e9cid\u00e9 ce que le code doit faire.<\/p>\n\n<\/div>    <\/div>\n<\/div>\n<\/div>\n\n\n<div class=\"block-wrapper wp-block-acf-table\" data-block-name=\"Tableau\">\n<div class=\"table\">\n    <div class=\"container\">\n        <div class=\"table-wrap\">\n            <table>\n                                <thead>\n                    <tr>\n                                                <th scope=\"col\">Tu fais quoi?<\/th>\n                                                <th scope=\"col\">R\u00e9flexe<\/th>\n                                            <\/tr>\n                <\/thead>\n                                                <tbody>\n                                        <tr>\n                                                     \n                                <td data-label=\"Tu fais quoi?\">Tu programmes un automate \u00e0 partir d\u2019un algorithme \u00e9tabli.\n<\/td>\n                                                                                 \n                                <td data-label=\"R\u00e9flexe\">G\u00e9n\u00e9ralement OK.\n<\/td>\n                                                                        <\/tr>\n                                        <tr>\n                                                     \n                                <td data-label=\"Tu fais quoi?\">Tu corriges un bogue d\u2019interface.<\/td>\n                                                                                 \n                                <td data-label=\"R\u00e9flexe\">G\u00e9n\u00e9ralement OK.\n<\/td>\n                                                                        <\/tr>\n                                        <tr>\n                                                     \n                                <td data-label=\"Tu fais quoi?\">Tu modifies un seuil d\u2019alarme.\n<\/td>\n                                                                                 \n                                <td data-label=\"R\u00e9flexe\">Est-ce qu\u2019un.e ing\u00e9nieur.e a valid\u00e9 le nouveau seuil?<\/td>\n                                                                        <\/tr>\n                                        <tr>\n                                                     \n                                <td data-label=\"Tu fais quoi?\">Tu changes une s\u00e9quence automatis\u00e9e.\n<\/td>\n                                                                                 \n                                <td data-label=\"R\u00e9flexe\">Est-ce u.ne ing\u00e9nieur.e qui a d\u00e9fini le d\u00e9roulement de la s\u00e9quence?<\/td>\n                                                                        <\/tr>\n                                        <tr>\n                                                     \n                                <td data-label=\"Tu fais quoi?\">Tu ajoutes un interverrouillage.\n<\/td>\n                                                                                 \n                                <td data-label=\"R\u00e9flexe\">Est-ce un.e ing\u00e9nieur.e qui en a valid\u00e9 les conditions?<\/td>\n                                                                        <\/tr>\n                                        <tr>\n                                                     \n                                <td data-label=\"Tu fais quoi?\">Tu pr\u00e9pares une description fonctionnelle.\n<\/td>\n                                                                                 \n                                <td data-label=\"R\u00e9flexe\">Direction et surveillance imm\u00e9diates requises.<\/td>\n                                                                        <\/tr>\n                                        <tr>\n                                                     \n                                <td data-label=\"Tu fais quoi?\">Tu d\u00e9cides quand un syst\u00e8me doit s\u2019arr\u00eater.\n<\/td>\n                                                                                 \n                                <td data-label=\"R\u00e9flexe\">\u00c0 faire valider par un.e ing\u00e9nieur.e.<\/td>\n                                                                        <\/tr>\n                                    <\/tbody>\n                            <\/table>\n                    <\/div>\n    <\/div>\n<\/div>\n<\/div>\n\n\n<div class=\"block-wrapper wp-block-acf-wysiwyg\" data-block-name=\"Wysiwyg\">\n<div class=\"bloc-wysiwyg \">\n    <div class=\"container\">\n        <div class=\"wysiwyg \">\n\t<h2>Quand ce n\u2019est plus juste de la programmation<\/h2>\n<p>Tu n\u2019as pas \u00e0 te poser mille questions chaque fois que tu ouvres ton \u00e9diteur de code. Mais tu devrais poser la question si on te demande de modifier la logique du proc\u00e9d\u00e9, de fixer un seuil, de changer une condition d\u2019arr\u00eat, d\u2019ajouter une s\u00e9quence automatique ou de d\u00e9cider ce qui est s\u00e9curitaire ou acceptable.<\/p>\n<p>La question \u00e0 te poser est simple : <strong>\u00ab Est-ce que cette logique a \u00e9t\u00e9 d\u00e9finie ou valid\u00e9e par un.e ing\u00e9nieur.e? \u00bb<\/strong><\/p>\n<p>Ton <em>scrum master<\/em> peut t\u2019aider \u00e0 g\u00e9rer le sprint. Pas \u00e0 trancher une question d\u2019activit\u00e9 r\u00e9serv\u00e9e. Pour savoir si une d\u00e9cision technique doit \u00eatre supervis\u00e9e par un.e ing\u00e9nieur.e, adresse-toi \u00e0 la personne qui te supervise ou \u00e0 l\u2019ing\u00e9nieur.e responsable du projet. Et si la r\u00e9ponse reste floue, l\u2019Ordre peut aussi t\u2019aider \u00e0 y voir clair.<\/p>\n\n<\/div>    <\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"featured_media":0,"template":"","meta":{"_acf_changed":false,"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"programmer un automate, automate, programmation, logique de contr\u00f4le, ing\u00e9nieur, ing\u00e9nieure, activit\u00e9 r\u00e9serv\u00e9e, Loi sur les ing\u00e9nieurs, seuil d'alarme, s\u00e9quence automatis\u00e9e, description fonctionnelle, logique du proc\u00e9d\u00e9","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"","_relevanssi_noindex_reason":"","inline_featured_image":false,"footnotes":""},"type_publication":[259],"secteurs_activites":[],"categorie_publication":[292,306],"theme":[],"class_list":["post-57975","publication","type-publication","status-publish","hentry","type_publication-aide-a-la-pratique","categorie_publication-devenir-ingenieur-au-quebec","categorie_publication-stages-et-premiers-emplois"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie? - OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec (French only)<\/title>\n<meta name=\"description\" content=\"D\u00e9couvre quand programmer un automate rel\u00e8ve du codage et quand la logique de contr\u00f4le doit \u00eatre d\u00e9finie ou valid\u00e9e par un ing\u00e9nieur.\" \/>\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.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie? - OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec\" \/>\n<meta property=\"og:description\" content=\"D\u00e9couvre quand programmer un automate rel\u00e8ve du codage et quand la logique de contr\u00f4le doit \u00eatre d\u00e9finie ou valid\u00e9e par un ing\u00e9nieur.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/\" \/>\n<meta property=\"og:site_name\" content=\"OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-22T19:05:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.oiq.qc.ca\/wp-content\/uploads\/vignette-web.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/publication\\\/programmer-un-automate-coder-ou-faire-de-lingenierie\\\/\",\"url\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/publication\\\/programmer-un-automate-coder-ou-faire-de-lingenierie\\\/\",\"name\":\"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie? - OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/#website\"},\"datePublished\":\"2026-09-22T19:05:46+00:00\",\"dateModified\":\"2026-09-22T19:05:47+00:00\",\"description\":\"D\u00e9couvre quand programmer un automate rel\u00e8ve du codage et quand la logique de contr\u00f4le doit \u00eatre d\u00e9finie ou valid\u00e9e par un ing\u00e9nieur.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/publication\\\/programmer-un-automate-coder-ou-faire-de-lingenierie\\\/#breadcrumb\"},\"inLanguage\":\"en-CA\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/publication\\\/programmer-un-automate-coder-ou-faire-de-lingenierie\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/publication\\\/programmer-un-automate-coder-ou-faire-de-lingenierie\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/\",\"name\":\"OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec\",\"description\":\"Ordre des ing\u00e9nieurs du Qu\u00e9bec\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-CA\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/#organization\",\"name\":\"OIQ - Ordre des Ing\u00e9nieurs du Qu\u00e9bec\",\"url\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-CA\",\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.oiq.qc.ca\\\/wp-content\\\/uploads\\\/logo-oiq-696x696-yoast.png\",\"contentUrl\":\"https:\\\/\\\/www.oiq.qc.ca\\\/wp-content\\\/uploads\\\/logo-oiq-696x696-yoast.png\",\"width\":696,\"height\":696,\"caption\":\"OIQ - Ordre des Ing\u00e9nieurs du Qu\u00e9bec\"},\"image\":{\"@id\":\"https:\\\/\\\/www.oiq.qc.ca\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie? - OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec (French only)","description":"D\u00e9couvre quand programmer un automate rel\u00e8ve du codage et quand la logique de contr\u00f4le doit \u00eatre d\u00e9finie ou valid\u00e9e par un ing\u00e9nieur.","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.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/","og_locale":"en_US","og_type":"article","og_title":"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie? - OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec","og_description":"D\u00e9couvre quand programmer un automate rel\u00e8ve du codage et quand la logique de contr\u00f4le doit \u00eatre d\u00e9finie ou valid\u00e9e par un ing\u00e9nieur.","og_url":"https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/","og_site_name":"OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec","article_modified_time":"2026-09-22T19:05:47+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.oiq.qc.ca\/wp-content\/uploads\/vignette-web.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/","url":"https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/","name":"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie? - OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec","isPartOf":{"@id":"https:\/\/www.oiq.qc.ca\/en\/#website"},"datePublished":"2026-09-22T19:05:46+00:00","dateModified":"2026-09-22T19:05:47+00:00","description":"D\u00e9couvre quand programmer un automate rel\u00e8ve du codage et quand la logique de contr\u00f4le doit \u00eatre d\u00e9finie ou valid\u00e9e par un ing\u00e9nieur.","breadcrumb":{"@id":"https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/#breadcrumb"},"inLanguage":"en-CA","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.oiq.qc.ca\/en\/publication\/programmer-un-automate-coder-ou-faire-de-lingenierie\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.oiq.qc.ca\/en\/"},{"@type":"ListItem","position":2,"name":"Programmer un automate : coder ou faire de l\u2019ing\u00e9nierie?"}]},{"@type":"WebSite","@id":"https:\/\/www.oiq.qc.ca\/en\/#website","url":"https:\/\/www.oiq.qc.ca\/en\/","name":"OIQ - Ordre des ing\u00e9nieurs du Qu\u00e9bec","description":"Ordre des ing\u00e9nieurs du Qu\u00e9bec","publisher":{"@id":"https:\/\/www.oiq.qc.ca\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.oiq.qc.ca\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-CA"},{"@type":"Organization","@id":"https:\/\/www.oiq.qc.ca\/en\/#organization","name":"OIQ - Ordre des Ing\u00e9nieurs du Qu\u00e9bec","url":"https:\/\/www.oiq.qc.ca\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-CA","@id":"https:\/\/www.oiq.qc.ca\/en\/#\/schema\/logo\/image\/","url":"https:\/\/www.oiq.qc.ca\/wp-content\/uploads\/logo-oiq-696x696-yoast.png","contentUrl":"https:\/\/www.oiq.qc.ca\/wp-content\/uploads\/logo-oiq-696x696-yoast.png","width":696,"height":696,"caption":"OIQ - Ordre des Ing\u00e9nieurs du Qu\u00e9bec"},"image":{"@id":"https:\/\/www.oiq.qc.ca\/en\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/publication\/57975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/publication"}],"about":[{"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/types\/publication"}],"version-history":[{"count":3,"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/publication\/57975\/revisions"}],"predecessor-version":[{"id":58127,"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/publication\/57975\/revisions\/58127"}],"wp:attachment":[{"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/media?parent=57975"}],"wp:term":[{"taxonomy":"type_publication","embeddable":true,"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/type_publication?post=57975"},{"taxonomy":"secteurs_activites","embeddable":true,"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/secteurs_activites?post=57975"},{"taxonomy":"categorie_publication","embeddable":true,"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/categorie_publication?post=57975"},{"taxonomy":"theme","embeddable":true,"href":"https:\/\/www.oiq.qc.ca\/en\/wp-json\/wp\/v2\/theme?post=57975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}