Показано с 1 по 7 из 7

Тема: Сохранение переменных.

  1. #1

    По умолчанию Сохранение переменных.

    Здравствуйте, коллеги!
    Помогите человеку, развращенному Тиа Порталом, разобраться, как организовать сохранение переменных в энергонезависимой памяти ПЛК210, полученных по Modbus RTU от панели Weintek.

    В чем проблема:
    Есть панель Weintek, подключенная к ПЛК210, она передает на ПЛК ряд переменных, которые должны сохраняться при отключении питания. У панели есть несколько объектов "Число" и несколько битовых переключателей. И тут возникает проблема: панель записывает их состояние в регистры временного хранения ПЛК (IW). Я их считываю оттуда и отправляю в ретайн переменную. При отключении питания и повторном его включении регистры временного хранения обнуляются, а записать сохраненную переменную я в них не могу, только в выходные регистры Modbus (QW). Теперь, чтобы сохраненная переменная отобразилась на панели, я вынужден читать выходной регистр ПЛК. Но считанная переменная не отправляется панелью автоматически в соответствующий регистр временного хранения ПЛК и там остается 0, который запишется в ретайн переменную, если считывать значение IW регистра в цикле программы. Можно конечно производить считывание только при изменении значения регистра IW, но тогда не получится поставить переменную равную 0, так как регистр и так имеет значение 0 и соответственно изменение не произошло и ретайн переменная не записалась.

  2. #2
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,028

    По умолчанию

    Цитата Сообщение от Александр Недашковский Посмотреть сообщение
    Здравствуйте, коллеги!
    Помогите человеку, развращенному Тиа Порталом, разобраться, как организовать сохранение переменных в энергонезависимой памяти ПЛК210, полученных по Modbus RTU от панели Weintek.

    В чем проблема:
    Есть панель Weintek, подключенная к ПЛК210, она передает на ПЛК ряд переменных, которые должны сохраняться при отключении питания. У панели есть несколько объектов "Число" и несколько битовых переключателей. И тут возникает проблема: панель записывает их состояние в регистры временного хранения ПЛК (IW). Я их считываю оттуда и отправляю в ретайн переменную. При отключении питания и повторном его включении регистры временного хранения обнуляются, а записать сохраненную переменную я в них не могу, только в выходные регистры Modbus (QW). Теперь, чтобы сохраненная переменная отобразилась на панели, я вынужден читать выходной регистр ПЛК. Но считанная переменная не отправляется панелью автоматически в соответствующий регистр временного хранения ПЛК и там остается 0, который запишется в ретайн переменную, если считывать значение IW регистра в цикле программы. Можно конечно производить считывание только при изменении значения регистра IW, но тогда не получится поставить переменную равную 0, так как регистр и так имеет значение 0 и соответственно изменение не произошло и ретайн переменная не записалась.
    Добрый день.
    См. видео для Modbus TCP:
    https://youtu.be/jPj2v3vAKRw

    Для Modbus RTU всё будет по аналогии, только вместо MB_TcpSlave надо будет использовать MB_SerialSlave и COM_Control.

  3. #3

    По умолчанию

    Цитата Сообщение от Александр Недашковский Посмотреть сообщение
    Здравствуйте, коллеги!
    Помогите человеку, развращенному Тиа Порталом, разобраться, как организовать сохранение переменных в энергонезависимой памяти ПЛК210, полученных по Modbus RTU от панели Weintek.

    В чем проблема:
    Есть панель Weintek, подключенная к ПЛК210, она передает на ПЛК ряд переменных, которые должны сохраняться при отключении питания. У панели есть несколько объектов "Число" и несколько битовых переключателей. И тут возникает проблема: панель записывает их состояние в регистры временного хранения ПЛК (IW). Я их считываю оттуда и отправляю в ретайн переменную. При отключении питания и повторном его включении регистры временного хранения обнуляются, а записать сохраненную переменную я в них не могу, только в выходные регистры Modbus (QW). Теперь, чтобы сохраненная переменная отобразилась на панели, я вынужден читать выходной регистр ПЛК. Но считанная переменная не отправляется панелью автоматически в соответствующий регистр временного хранения ПЛК и там остается 0, который запишется в ретайн переменную, если считывать значение IW регистра в цикле программы. Можно конечно производить считывание только при изменении значения регистра IW, но тогда не получится поставить переменную равную 0, так как регистр и так имеет значение 0 и соответственно изменение не произошло и ретайн переменная не записалась.
    А что мешает хранить переменные в энергонезависимой памяти панели Weintek. В панелях Weintek с энергонезависимой памятью все чики-пики.

  4. #4

    По умолчанию

    Сами себе проблемы и создаёте, храните переменные (уставки) в энергонезависимой памяти панели, ПЛК только их читать будет ( либо панель в ПЛК будет записывать)

  5. #5

    По умолчанию

    Большое спасибо - все получилось!

  6. #6

    По умолчанию

    Здравствуйте, коллеги.
    Есть ли возможность в ПЛК-210 сохранения переменных (в Retain, в файле или еще где-либо) по событию пропадания питания, как это было в ПЛК-100? Попробовал использовать задний фронт таргет-переменной TargetVars.stPlc210.xPowerInput1 - не получилось.

  7. #7
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,028

    По умолчанию

    Цитата Сообщение от Вадим Ижевск Посмотреть сообщение
    Здравствуйте, коллеги.
    Есть ли возможность в ПЛК-210 сохранения переменных (в Retain, в файле или еще где-либо) по событию пропадания питания, как это было в ПЛК-100? Попробовал использовать задний фронт таргет-переменной TargetVars.stPlc210.xPowerInput1 - не получилось.
    Добрый день.
    Значения RETAIN-переменных сохраняются в момент изменения любой из переменных.
    Соответственно, после пропадания питания они будут иметь те значения, которые имели до пропадания питания.

Похожие темы

  1. Сохранение(экспорт)-импорт переменных
    от ДаниилСПб в разделе СПК2хх
    Ответов: 1
    Последнее сообщение: 21.06.2017, 15:15
  2. Ответов: 4
    Последнее сообщение: 13.06.2017, 15:20
  3. Опрос переменных ПЛК 160 сохранение данных на ПК
    от Vasiliy Jabil в разделе Помощь Разработчикам
    Ответов: 1
    Последнее сообщение: 13.03.2014, 11:13
  4. Принудительное сохранение Retain переменных?
    от Сергей Борисович в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 23.04.2013, 15:22
  5. сохранение значений переменных
    от Лёша в разделе ПЛК1хх
    Ответов: 9
    Последнее сообщение: 12.11.2009, 11:37

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •