Отличие горячего перезапуска от холодной перезагрузки в программировании ПЛК заключается в процессе восстановления данных после сбоя электропитания. 1
Холодный перезапуск предполагает перезапуск ПЛК-системы и её прикладной программы после того, как все динамические данные (такие переменные, как образ ввода/вывода, внутренние реестры, таймеры, счётчики и т. д., а также программный контекст) переустановлены в предварительно определённое состояние. 1 Холодный перезапуск может быть автоматическим (например, после отказа электропитания, потери данных в динамическом сегменте(ах) памяти(ей) и т. д.) или ручным (например, с помощью нажимной кнопки и т. д.). 1
Горячий перезапуск — это перезапуск после отказа электропитания, который имел место в пределах зависящего от процесса максимально допустимого времени для восстановления ПЛК-системы, как если бы не было сбоя электропитания. 1 Все данные ввода/вывода и другие динамические данные, а также контекст прикладной программы восстанавливаются или остаются неизменными. 1
Таким образом, при холодном перезапуске все внутренние переменные принимают предварительно заданные значения из загрузочной памяти, а при горячем — выполнение программы возобновляется в точке останова программы, как если бы ПЛК не останавливался. 2