Что такое RETAIN-переменные в ПЛК? Зачем они нужны?

Что такое RETAIN-переменные в ПЛК? Зачем они нужны? Оставить комментарий

В состав любого ПЛК входит память. Емкость памяти определяет количество переменных, задействованных в программе контроллера. Для работы ПЛК используется два вида памяти: загрузочная (ПЗУ) и рабочая (ОЗУ).

Рисунок 1. Минимальный состав ПЛК
Рисунок 1. Минимальный состав ПЛК

Загрузочная память выполняется на базе различных видов памяти: ROM — Read Only Memory или EEPROM — Electrically Erasable Programmable ROM — электрически стираемая перепрограммируемая память. В качестве загрузочной памяти также может использоваться флеш-память, принцип действия которой основан на хранении заряда в конденсаторе, образованном плавающим затвором и подложкой МОП-транзистора.

Недостатком всех ПЗУ является низкое быстродействие и ограниченное количество циклов чтения и записи.

Рабочая память может выполняется на SRAM (Static Random Access Memory) — статическая память с произвольным доступом или DRAM (Dynamic Random Access Memory) — динамическая память с произвольным доступом.

Недостатком ОЗУ является энергозависимость, то есть при включении память будет пустой.

При разработке программ необходимо иметь память, которая бы не стиралась при выключении питания. Допустим, в программе используются уставки, и если не принять специальных мер, то придется каждый раз при включении контроллера вводить их заново. Либо необходимо запомнить режим работы оборудования, работающего до сбоя или выключения ПЛК.

Для этого используются Retain-переменные. Это такие переменные, значение в которых по событию пишется в ПЗУ и восстанавливается при включении ПЛК. Событием для записи может быть, например, выключение питания ПЛК. При возникновении события выключения ПЛК за счет батарейки в контроллере или конденсатора перезаписываются значения из ОЗУ в ПЗУ. Возможна принудительная запись по команде из программы.

Рисунок 2. Выдержка из руководства
Рисунок 2. Выдержка из руководства

Для использования в своей программе необходимо указать в свойствах переменной, что она будет Retain, и операционная система ПЛК будет знать, как нужно обращаться со значением этой переменной.

Таким образом, выполнение программ не будет замедлено из-за времени записи значений в ПЗУ, ПЗУ не будет «изнашиваться» постоянным перезаписыванием. Но в то же время значения переменных будут восстановлены при включении ПЛК.

Вам также будет интересно:

Вам интересны статьи о ПЛК?

Pin It on Pinterest

Share This