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

Тема: ПЛК210 + МВ210-202 + Энкодер

  1. #1

    По умолчанию ПЛК210 + МВ210-202 + Энкодер

    Коллеги, доброго времени суток!
    Опять у меня проблема возникла, прошу подсказки. Счётчик кабеля реализован на энкодере, который подключен к модулю МВ210-202 а модуль к ПЛК210. Вывод информации о количестве импульсов, пересчёт в метры, скорость всё норм. Но вот при отключении системы от питания счёт обнуляется и никак я не пойму как сохранить счёт и потом к нему уже прибавлять новые импульсы?
    Попробовал записывать в энергонезависимую память значения импульсов и потом к нему прибавлять новые импульсы, так само по себе потом начинает все прибавляться даже когда счетчик стоит)
    Помогите советом
    Изображения Изображения

  2. #2

    По умолчанию

    Может так попробовать:

    dwOldLength - предыдущее значение
    dwLength - текущее значение от МВ210-202
    diTotalLength - накопленное энергонезависимое
    ton - таймер обновления

    Код:
    ton(IN := TRUE, PT := T#1s);
    IF ton.Q THEN
      IF dwLength - dwOldLength > 0 THEN               // Счет вперед
        IF dwLength - dwOldLength > 4000000000 THEN // Переполнение при счете назад
          diTotalLength := diTotalLength - (4294967295 - dwLength + dwOldLength);
        ELSE
          diTotalLength := diTotalLength + (dwLength - dwOldLength);      // Накапливаем
        END_IF
      ELSE IF dwOldLength - dwLength > 0 THEN       // Счет назад
        IF dwOldLength - dwLength > 4000000000 THEN  // Переполнение при счете вперед
          diTotalLength := diTotalLength + (4294967295 - dwOldLength + dwLength);
        ELSE
          diTotalLength := diTotalLength - (dwOldLength - dwLength);      // Накапливаем
        END_IF
      END_IF
      dwOldLength:=dwLength;  // Сохраним текущую позицию
      ton(IN:=FALSE);              // Перезапустим таймер
    END_IF
    Последний раз редактировалось EFrol; 18.06.2024 в 10:43.

  3. #3

    По умолчанию

    Всем привет! Решил проблему с памятью, оказалось всё просто, на всякий случай прикреплю скрин рабочего кода, может кому пригодиться
    Счётчик импульсов с памятью.png

Похожие темы

  1. ПЛК210 + МВ210-202 + Энкодер
    от Vadim_71 в разделе ПЛК2хх
    Ответов: 2
    Последнее сообщение: 16.06.2024, 18:04
  2. Ответов: 4
    Последнее сообщение: 02.02.2024, 10:24
  3. ПЛК210 + МВ210 + СП310-Р по Modbus TCP
    от Ворон226 в разделе ПЛК2хх
    Ответов: 2
    Последнее сообщение: 20.07.2023, 20:32
  4. МВ210 + энкодер
    от Brandon_heat_dre в разделе Мх210
    Ответов: 8
    Последнее сообщение: 23.12.2020, 11:32

Ваши права

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