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

Тема: Передать дату и время с СП310 на ПЛК110 в формате децимал

  1. #1
    Пользователь Аватар для Serhioromano
    Регистрация
    15.09.2015
    Адрес
    Бишкек
    Сообщений
    265

    По умолчанию Передать дату и время с СП310 на ПЛК110 в формате децимал

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

    Код:
    Write(PLC, 1, MODBUS_RTU_REG_4X, 106, 0, TYPE_WORD, PSW[33]); // hour
    Write(PLC, 1, MODBUS_RTU_REG_4X, 107, 0, TYPE_WORD, PSW[34]); // min
    Write(PLC, 1, MODBUS_RTU_REG_4X, 108, 0, TYPE_WORD, PSW[31]); // month
    Write(PLC, 1, MODBUS_RTU_REG_4X, 109, 0, TYPE_WORD, PSW[32]); // day
    Write(PLC, 1, MODBUS_RTU_REG_4X, 110, 0, TYPE_WORD, PSW[30]); // year
    Но данные хранятся в хексе. То есть 2018 в хексе а в децимал это будет 8216. Вот эти 8216 и передаются.

    Вопрос, как мне сконвертировать перед отправкой, или уже на ПЛК что бы было получить переменную INT и значение 2018?

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

    По умолчанию

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

    Код:
    Write(PLC, 1, MODBUS_RTU_REG_4X, 106, 0, TYPE_WORD, PSW[33]); // hour
    Write(PLC, 1, MODBUS_RTU_REG_4X, 107, 0, TYPE_WORD, PSW[34]); // min
    Write(PLC, 1, MODBUS_RTU_REG_4X, 108, 0, TYPE_WORD, PSW[31]); // month
    Write(PLC, 1, MODBUS_RTU_REG_4X, 109, 0, TYPE_WORD, PSW[32]); // day
    Write(PLC, 1, MODBUS_RTU_REG_4X, 110, 0, TYPE_WORD, PSW[30]); // year
    Но данные хранятся в хексе. То есть 2018 в хексе а в децимал это будет 8216. Вот эти 8216 и передаются.

    Вопрос, как мне сконвертировать перед отправкой, или уже на ПЛК что бы было получить переменную INT и значение 2018?
    Добрый день. В РП есть примеры конвертации - п. 8.5.

  3. #3
    Пользователь Аватар для Serhioromano
    Регистрация
    15.09.2015
    Адрес
    Бишкек
    Сообщений
    265

    По умолчанию

    Спасибо, все работает.

Похожие темы

  1. Ответов: 11
    Последнее сообщение: 21.04.2016, 19:13
  2. Системное время в формате DATE
    от Columbariy в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 11.10.2014, 00:54
  3. Ответов: 2
    Последнее сообщение: 21.03.2014, 20:50
  4. Не могу прочитать дату и время из ИП320
    от nestor в разделе Панели оператора (HMI)
    Ответов: 10
    Последнее сообщение: 17.08.2013, 23:14
  5. ПЛК160: узнать дату и время в DATE_AND_TIME
    от Yegor в разделе ПЛК1хх
    Ответов: 13
    Последнее сообщение: 07.11.2012, 08:35

Ваши права

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