Объявление

Свернуть
Пока нет объявлений.

AgavaScada. Modbus.

Свернуть
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Таушканов Константин
    Участник ответил
    Сообщение от Taхир Посмотреть сообщение
    Можно ли подключать доп. библиотеки С++?
    В AgavaSCADA используется собственный диалект С/С++, адаптированный под softlogic системы и имеющий некоторые отличия от привычного С/С++. Дополнительные библиотеки, если вы имели в виду произвольные, доступные в Internet, подключать нельзя, так как стандартов языка довольно много, в том числе под разные платформы.
    Последний раз редактировалось Таушканов Константин; 07-10-2024, 04:44 AM.

    Прокомментировать:


  • Таушканов Константин
    Участник ответил
    Сообщение от Taхир Посмотреть сообщение
    Вопрос относительно WORD или Int16, если я получаю слова состояния, в виде int или word, могу ли я разложить их на биты? Какими средствами это возможно сделать? Позволяет ли функционал АгаваСкада С++ сделать это? Можно ли подключать доп. библиотеки С++?
    Используйте битовые операторы:
    Код:
    & - битовое И
    | - битовое ИЛИ
    ^ - битовое ИСКЛ. ИЛИ
    << - сдвиг влево
    >> - сдвиг вправо
    Сообщение от Taхир Посмотреть сообщение
    Можно ли таким образом записать значение в Свойство узла?
    Да, можно. Подобным образом можно обращаться со со всеми простыми (численными, булевскими и строковыми) свойствами узлов.
    Последний раз редактировалось Таушканов Константин; 05-10-2024, 07:09 AM.

    Прокомментировать:


  • Taхир
    Участник ответил
    Вопрос относительно WORD или Int16, если я получаю слова состояния, в виде int или word, могу ли я разложить их на биты? Какими средствами это возможно сделать? Позволяет ли функционал АгаваСкада С++ сделать это? Можно ли подключать доп. библиотеки С++?
    Нажмите на изображение для увеличения. 

Название:	1.jpg 
Просмотров:	56 
Размер:	11.6 Кб 
ID:	2025
    Можно ли таким образом записать значение в Свойство узла?
    Последний раз редактировалось Taхир; 26-09-2024, 05:29 AM.

    Прокомментировать:


  • Taхир
    Участник ответил
    Добрый день!

    Сделал как описано выше. Забыл добавить у свойства Текст, у виджета "Текстовая метка", формат отображения, %f.

    Но теперь у меня значение в формате E0009 или E0008.

    Подскажите как быть что делать.

    UPD.

    Значение Int16 передает без проблем.

    Значение с плавающей точкой теперь отображены в виде E0009 или E0008.

    Можно ли сказать что это из-за того что, порядок байт не совпадает на Modbus_Slave. Я пытался менять порядок на эмуляторе, по идеи little-endian DCBA, со свапом должен был отработать.

    От сюда вопрос, есть ли возможности у встроенного Скрипта С++ возможность работы с побитовой логикой? или он лимитирован тем что указано в руководстве?Нажмите на изображение для увеличения.   Название:	Agavamodus.jpg  Просмотров:	14  Размер:	91.3 Кб  ID:	2022


    UPD.UPD. Решил проблему. Формат передачи имеет место быть, порядок регистров должен соответствовать тому что в Агаве.
    Последний раз редактировалось Taхир; 26-09-2024, 04:10 AM.

    Прокомментировать:


  • Таушканов Константин
    Участник ответил
    Добрый день!
    Если вы хотите вести опрос внешних устройств, например эмулятора Modbus Slave, в свойствах транспорта TCP-IP в свойстве "Режим работы" установите значение "Master".
    Далее в свойствах "IP адрес" и "IP порт" укажите адрес и порт, на которых слушает Modbus slave.
    Номер регистра ("Регистр чтения", "Регистр записи") указывается начиная с нуля (это не адрес ячейки).
    Если вы захотите чтобы панель была сервером (ведомым) Modbus-TCP, то режим работы нужно поставить "Slave".
    Обратите внимание, если у вас на панельке установлена прошивка 2023 года и новее, рекомендую вместо пары "транспорт"-"протокол" использовать "Транспорт Modbus-TCP". Он более функционален.
    Последний раз редактировалось Таушканов Константин; 10-09-2024, 07:27 AM.

    Прокомментировать:


  • Taхир
    Участник создал тему AgavaScada. Modbus.

    AgavaScada. Modbus.

    Добрый день!
    Нажмите на изображение для увеличения.   Название:	agavaError.png  Просмотров:	0  Размер:	480.9 Кб  ID:	2012

    Столкнулся с интересной проблемой.

    Modbus Slave генерирует значения в 40001 (0) регистре. На чтение пытался задать и 0 регистр и 40001 без результатно.

    На входе у меня E1001 можно уточнить как настраивается Modbus Slave в AgavaScada?
    Нажмите на изображение для увеличения.   Название:	reg1.png  Просмотров:	0  Размер:	9.9 Кб  ID:	2013
    Последний раз редактировалось Taхир; 09-09-2024, 12:30 PM.
Обработка...
X