{"id":8052,"date":"2026-07-14T09:00:00","date_gmt":"2026-07-14T07:00:00","guid":{"rendered":"https:\/\/www.i-t-s.be\/?p=8052"},"modified":"2026-11-13T13:11:59","modified_gmt":"2026-11-13T12:11:59","slug":"plc-migration-end-of-life-5-steps","status":"publish","type":"post","link":"https:\/\/www.i-t-s.be\/index.php\/2026\/07\/14\/plc-migration-end-of-life-5-steps\/?lang=en","title":{"rendered":"Replacing an end-of-life PLC: the 5 steps of a successful migration"},"content":{"rendered":"\r\n<p class=\"wp-block-paragraph\"><strong>Technical corner \u00b7 Automation \u00b7 6 min read<\/strong><\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Spare parts no longer available, software that only runs on an old PC, nobody who really knows the program: many plants live with end-of-life PLCs. As long as the machine runs, the decision is postponed. Until the day a card fails and the stop lasts days instead of hours.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Replacing a PLC is not just a hardware swap. Well prepared, it is also an opportunity to make the machine more reliable and easier to troubleshoot. Here are the 5 steps of a successful migration.<\/p>\r\n\r\n\r\n\r\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 800 470\" role=\"img\" aria-label=\"The 5 steps of a PLC migration\" style=\"width:100%;height:auto;font-family:Arial,sans-serif\"><rect width=\"800\" height=\"470\" fill=\"#fff\"\/><text x=\"20\" y=\"38\" font-size=\"22\" font-weight=\"700\" fill=\"#13294B\">PLC migration: the 5 steps<\/text><circle cx=\"50\" cy=\"92\" r=\"22\" fill=\"#13294B\"\/><text x=\"50\" y=\"99\" font-size=\"20\" font-weight=\"700\" fill=\"#fff\" text-anchor=\"middle\">1<\/text><rect x=\"90\" y=\"60\" width=\"690\" height=\"64\" rx=\"6\" fill=\"#F3F4F6\" stroke=\"#13294B\" stroke-width=\"2\"\/><text x=\"110\" y=\"88\" font-size=\"17\" font-weight=\"700\" fill=\"#13294B\">Initial survey<\/text><text x=\"110\" y=\"110\" font-size=\"15\" fill=\"#5E6672\">existing program, diagrams, I\/O, links with other machines<\/text><path d=\"M50 116 V140\" stroke=\"#13294B\" stroke-width=\"3\"\/><circle cx=\"50\" cy=\"172\" r=\"22\" fill=\"#13294B\"\/><text x=\"50\" y=\"179\" font-size=\"20\" font-weight=\"700\" fill=\"#fff\" text-anchor=\"middle\">2<\/text><rect x=\"90\" y=\"140\" width=\"690\" height=\"64\" rx=\"6\" fill=\"#F3F4F6\" stroke=\"#13294B\" stroke-width=\"2\"\/><text x=\"110\" y=\"168\" font-size=\"17\" font-weight=\"700\" fill=\"#13294B\">Functional analysis<\/text><text x=\"110\" y=\"190\" font-size=\"15\" fill=\"#5E6672\">describe what the machine must do, with production and maintenance<\/text><path d=\"M50 196 V220\" stroke=\"#13294B\" stroke-width=\"3\"\/><circle cx=\"50\" cy=\"252\" r=\"22\" fill=\"#13294B\"\/><text x=\"50\" y=\"259\" font-size=\"20\" font-weight=\"700\" fill=\"#fff\" text-anchor=\"middle\">3<\/text><rect x=\"90\" y=\"220\" width=\"690\" height=\"64\" rx=\"6\" fill=\"#F3F4F6\" stroke=\"#13294B\" stroke-width=\"2\"\/><text x=\"110\" y=\"248\" font-size=\"17\" font-weight=\"700\" fill=\"#13294B\">Hardware choice and preparation<\/text><text x=\"110\" y=\"270\" font-size=\"15\" fill=\"#5E6672\">PLC, HMI, I\/O, updated electrical diagram, office testing<\/text><path d=\"M50 276 V300\" stroke=\"#13294B\" stroke-width=\"3\"\/><circle cx=\"50\" cy=\"332\" r=\"22\" fill=\"#13294B\"\/><text x=\"50\" y=\"339\" font-size=\"20\" font-weight=\"700\" fill=\"#fff\" text-anchor=\"middle\">4<\/text><rect x=\"90\" y=\"300\" width=\"690\" height=\"64\" rx=\"6\" fill=\"#F3F4F6\" stroke=\"#13294B\" stroke-width=\"2\"\/><text x=\"110\" y=\"328\" font-size=\"17\" font-weight=\"700\" fill=\"#13294B\">Planned changeover<\/text><text x=\"110\" y=\"350\" font-size=\"15\" fill=\"#5E6672\">short stop, pre-wired panel, communication with neighbouring machines<\/text><path d=\"M50 356 V380\" stroke=\"#13294B\" stroke-width=\"3\"\/><circle cx=\"50\" cy=\"412\" r=\"22\" fill=\"#F5C400\"\/><text x=\"50\" y=\"419\" font-size=\"20\" font-weight=\"700\" fill=\"#13294B\" text-anchor=\"middle\">5<\/text><rect x=\"90\" y=\"380\" width=\"690\" height=\"64\" rx=\"6\" fill=\"#F3F4F6\" stroke=\"#13294B\" stroke-width=\"2\"\/><text x=\"110\" y=\"408\" font-size=\"17\" font-weight=\"700\" fill=\"#13294B\">Commissioning and documentation<\/text><text x=\"110\" y=\"430\" font-size=\"15\" fill=\"#5E6672\">tests, tuning, training, status manual, as-built diagrams<\/text><\/svg>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">1. Survey the existing installation<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Gather everything that exists: program backup, electrical diagrams (often out of date), list of inputs and outputs, links with neighbouring machines. This is also the time to note known problems and the teams&#8217; requests.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">2. Write the functional analysis<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">This is the most often neglected step, and the most profitable. It describes what the machine must do: sequences, operating modes, safety functions, faults. Validated with production and maintenance, it becomes the reference for programming and testing.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">3. Choose the hardware and prepare<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">The choice depends on the size of the machine and the existing installed base: for example a Siemens S7-1200 G2 for a compact machine, an S7-1500 for a more complex line. The new electrical diagram and the operator panel are prepared, and the program is tested in the office, in simulation, before going on site.<\/p>\r\n\r\n\r\n\r\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 800 330\" role=\"img\" aria-label=\"Convert the existing program or rewrite it: comparison\" style=\"width:100%;height:auto;font-family:Arial,sans-serif\"><rect width=\"800\" height=\"330\" fill=\"#fff\"\/><text x=\"20\" y=\"38\" font-size=\"22\" font-weight=\"700\" fill=\"#13294B\">Convert the old program or rewrite it?<\/text><rect x=\"20\" y=\"58\" width=\"760\" height=\"44\" fill=\"#13294B\"\/><text x=\"36\" y=\"86\" font-size=\"16\" font-weight=\"700\" fill=\"#fff\">Criterion<\/text><text x=\"250\" y=\"86\" font-size=\"16\" font-weight=\"700\" fill=\"#fff\">Conversion<\/text><text x=\"525\" y=\"86\" font-size=\"16\" font-weight=\"700\" fill=\"#F5C400\">Rewrite<\/text><rect x=\"20\" y=\"108\" width=\"760\" height=\"44\" fill=\"#F3F4F6\"\/><text x=\"36\" y=\"134\" font-size=\"15\" font-weight=\"700\" fill=\"#13294B\">Engineering time<\/text><text x=\"250\" y=\"134\" font-size=\"15\" fill=\"#13294B\">shorter<\/text><text x=\"525\" y=\"134\" font-size=\"15\" fill=\"#13294B\">longer<\/text><text x=\"36\" y=\"178\" font-size=\"15\" font-weight=\"700\" fill=\"#13294B\">Original flaws<\/text><text x=\"250\" y=\"178\" font-size=\"15\" fill=\"#13294B\">kept<\/text><text x=\"525\" y=\"178\" font-size=\"15\" fill=\"#13294B\">fixed<\/text><rect x=\"20\" y=\"196\" width=\"760\" height=\"44\" fill=\"#F3F4F6\"\/><text x=\"36\" y=\"222\" font-size=\"15\" font-weight=\"700\" fill=\"#13294B\">Readability<\/text><text x=\"250\" y=\"222\" font-size=\"15\" fill=\"#13294B\">old structure<\/text><text x=\"525\" y=\"222\" font-size=\"15\" fill=\"#13294B\">clear, documented<\/text><text x=\"36\" y=\"266\" font-size=\"15\" font-weight=\"700\" fill=\"#13294B\">Diagnosis<\/text><text x=\"250\" y=\"266\" font-size=\"15\" fill=\"#13294B\">unchanged<\/text><text x=\"525\" y=\"266\" font-size=\"15\" fill=\"#13294B\">statuses and faults on screen<\/text><rect x=\"20\" y=\"284\" width=\"760\" height=\"44\" fill=\"#F3F4F6\"\/><text x=\"36\" y=\"310\" font-size=\"15\" font-weight=\"700\" fill=\"#13294B\">Suited if\u2026<\/text><text x=\"250\" y=\"310\" font-size=\"15\" fill=\"#13294B\">same brand, clean code<\/text><text x=\"525\" y=\"310\" font-size=\"15\" fill=\"#13294B\">other brand, poorly known code<\/text><\/svg>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Automatically converting the old program looks faster. But it keeps the original flaws and a structure that is hard to read. Starting again from the functional analysis gives a clear, documented program with a real diagnostic screen.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">4. Plan the changeover<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Everything that can be prepared in advance should be: cabinet or panel pre-wired, terminals labelled, communication with neighbouring machines tested. The on-site changeover then becomes a short, controlled stop rather than an adventure.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">5. Commission and document<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Function-by-function tests, tuning, training of operators and technicians, then handover of up-to-date documentation: diagrams, status manual, program backup. This is what will allow fast troubleshooting in the years that follow.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">A real example<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">On the <a href=\"https:\/\/www.i-t-s.be\/index.php\/works\/revamping-biko-unwinder-elis\/?lang=en\">Biko unwinder at Elis Belgium<\/a>, ITS replaced the B&amp;R PLC with a Siemens S7-1200 G2, rewrote the program from a functional analysis, installed a new diagnostic panel and delivered complete EPLAN electrical diagrams. Commissioning: 3 days.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">To go further on diagnosis, read also: <a href=\"https:\/\/www.i-t-s.be\/index.php\/2026\/05\/12\/reduce-machine-breakdown-diagnostic-time\/?lang=en\">Machine breakdowns: cut diagnostic time<\/a>.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\"><strong>An end-of-life PLC on one of your machines?<\/strong> <a href=\"https:\/\/www.i-t-s.be\/index.php\/contact-us\/?lang=en\">Let&#8217;s talk<\/a> before it breaks down.<\/p>\r\n\r\n\r\n","protected":false},"excerpt":{"rendered":"<p>Unavailable spare parts, poorly known program: replacing an end-of-life PLC needs preparation. Survey, functional analysis, hardware choice, planned changeover, documentation: the 5 steps of a successful migration.<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[126],"tags":[],"class_list":["post-8052","post","type-post","status-publish","format-standard","hentry","category-technical-corner"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/posts\/8052","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/comments?post=8052"}],"version-history":[{"count":1,"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/posts\/8052\/revisions"}],"predecessor-version":[{"id":8053,"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/posts\/8052\/revisions\/8053"}],"wp:attachment":[{"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/media?parent=8052"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/categories?post=8052"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.i-t-s.be\/index.php\/wp-json\/wp\/v2\/tags?post=8052"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}