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

Тема: ПЛК63 и MODBUS переменные

  1. #1

    По умолчанию ПЛК63 и MODBUS переменные

    В программе есть несколько переменных (счетчики с максимально возможной частотой обновления раз в секунду) объявленные как Retain (необходимо сохранение значений при пропадении питания)
    Как получить к ним доступ по Modbus в режиме Slave ПЛК?

    Вриант 1 - объявить параметр в конфигурации с запретом отображения и с разрешением доступа по сети с типом Конфигурационный - и использовать его непосредственно как счетчик

    Вриант 2 - объявить параметр в конфигурации с запретом отображения и с разрешением доступа по сети с типом Оперативный - и где-то в программе отображать значение из Retain переменной счетчика в этот параметр.

    Какой вариант правильный? Есть еще варианты?

    PS в описании отсутствует: количество перезаписи EEPROM?
    в какой памяти находится область из 448 байт Retain переменных?

  2. #2

    По умолчанию

    Вариант 1 категорически запрещен - вы протрете Flash. Запись во Flash - при каждом изменении.
    Пользуйтесь вариантом 2.
    P.S. Число перезаписей - считайте что не более 50тыс.
    Область Retain из программы не доступна.

  3. #3

    По умолчанию

    Тогда вопрос - в какой памяти сохраняется параметр конфигурации, объявленный как Оперативный и как правильно осуществлять запись в него?
    var retain
    count1 : uint;

    параметр конфигурации
    mdb_count1 : AT %QW4.3.54.0 UINT Оперативный, адрес modbus 332

    правильно ли
    if (событие)
    count1:=count1+1;
    mdb_count1:=count1;
    end_if;

  4. #4

    По умолчанию

    Цитата Сообщение от Alex989 Посмотреть сообщение
    Тогда вопрос - в какой памяти сохраняется параметр конфигурации, объявленный как Оперативный и как правильно осуществлять запись в него?
    Оперативный параметр не сохраняется в EEPROM. Именно поэтому он оперативный.

    Ваш пример правилен.
    К нему надо только одно дополнение. При старте контроллера Retain копируются в оперативные параметры. Для синхронизации. Во избежание...

  5. #5

    По умолчанию

    Это понятно
    Спасибо за исчерпывающий ответ!


    ps .. непонятно только почему не изменяется количество байт использованной оперативной памяти ("Использованно данных: 597 из 10240 Байт" - статистика из CoDeSys) при добавление n-ного количества оперативных параметров... Куда по его мнению они добавляются, блин..
    Последний раз редактировалось Alex989; 27.03.2011 в 18:14.

  6. #6

    По умолчанию

    Цитата Сообщение от Alex989 Посмотреть сообщение
    ps .. непонятно только почему не изменяется количество байт использованной оперативной памяти ("Использованно данных: 597 из 10240 Байт" - статистика из CoDeSys) при добавление n-ного количества оперативных параметров... Куда по его мнению они добавляются, блин..
    Почитайте в РП (не РЭ!) о размещении параметров.
    Для этого выделена отдельная область памяти, куда нет размещения обычных переменных. По ее величине и производится лицензирование RTM данного контроллера.

  7. #7

    По умолчанию

    Срасибо. Точно. Торможу.
    Кстати, описание корявое до нельзя.
    Нет бы сразу, в начале, описать все типы памяти и их распределение и адресацию. Все урывками и в разных местах..

Ваши права

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