Драйвер протокола M-Bus

Просмотр 15 сообщений - с 16 по 30 (из 53 всего)
  • Автор
    Сообщения
  • #10759
    Taw
    Участник

    В Европе действительно распространен Wireless M-Bus (wM-Bus). Некоторые SCADA системы используют Data Acquisition Board (плата сбора данных), которые позволяют оцифровать, сохранить и обработать данные в удобном виде и представить на компьютер. И вообще роль Data Acquisition Board при взаимодействии со SCADA системами очень интересная. Можно ли адаптировать такие платы для сбора данных по M-Bus протоколу? Или тоже надо писать драйвер для M-Bus?

    #10760
    manjey73
    Участник

    Taw c wM-Bus все гораздо веселее, там вроде есть датчики, которые самостоятельно выходят на связь чуть ли не раз в месяц и передают данные в эфир, есть датчики, которые можно опросить, есть те, которые можно настроить сколько раз они будут выходить в эфир.

    Если я правильно понял, то wireless там всего лишь транспортный протокол, который обеспечивается железом (приемниками и передатчиками), а протокол данных все тот же M-Bus. У меня нет таких устройств и покупать как-то не планирую в ближайшем будущем.

    #10761
    manjey73
    Участник

    Скорее всего надо писать модуль для сервера, который будет сканировать эфир используя соответствующий приемник и как-то передавать данные в драйвер, ну или в базу, а драйвер будет брать данные из базы и превращать в теги Scada.
    Все возможно, если разобраться как это работает.

    • Этот ответ был изменен 5 лет, 5 месяцев назад от manjey73.
    #10770
    manjey73
    Участник

    Пытаюсь запустить драйвер на Raspberry и получаю такую ошибку

    2018-11-21 16:41:00 Инициализация линии связи 15 "Mbus"
    
    Registration key is valid. Expiration date is 24.11.2018 0:00:00
    Ошибка: Object reference not set to an instance of an object.
    
    Ошибка: Object reference not set to an instance of an object.
    2018-11-21 16:41:01 Запуск линии связи 15 "Mbus"
    
    2018-11-21 16:41:01 Открытие последовательного порта /dev/mydev/Com5
    
    2018-11-21 16:41:01 Сеанс связи с КП 22 "Weser", тип: KpMbus, адрес: 15713929
    2018-11-21 16:41:01 Ошибка при выполнении сеанса опроса КП: Object reference not set to an instance of an object.
    
    2018-11-21 16:41:01 Сеанс связи с КП 72 "SDM220_addr", тип: KpMbus, адрес: 1
    2018-11-21 16:41:01 Ошибка при выполнении сеанса опроса КП: Object reference not set to an instance of an object.

    Вопрос, с чем может быть связана и как ее найти ? Mono что-то не поддерживает ?

    #10775
    Mikhail
    Модератор

    т.к. средства отладки ограничены, нужно поставить try-catch в те Ваши методы, в которых происходит ошибка и написать примерно следующее:

    try
    {
    ...
    }
    catch (Exception ex)
    {
      WriteToLog(ex.ToString());
    }

    Это даст более подробную информацию, которая поможет найти место ошибки.

    Object reference not set to an instance of an object.

    Значит какой-то используемый объект равен null.

    #10778
    manjey73
    Участник

    Что-то у меня подозрение, что XML Serialization в Mono не работает. По крайней мере в 5.4 а в 5.16 не проверить, потому что вообще ничерта не работает.

    #10785
    Mikhail
    Модератор

    Сериализация в XML используется новым Администратором, в том числе на Моно. Нужно точно найти строку, в которой возникает ошибка.

    #10788
    manjey73
    Участник

    Завтра буду проверять, после обновления Дебиан9 + Моно 5.16 запустится или нет. Если что буду искать причину. Вроде в Моно были баги с сериализацией, в зависимости от кода.

    #10790
    manjey73
    Участник

    ЙЙЕЕСС, работает XML сериализация в Mono 5.16

    2018-11-23 10:29:48 Инициализация линии связи 15 "Mbus"
    
    Registration key is valid. Expiration date is 24.11.2018 0:00:00
    
    2018-11-23 10:29:51 Запуск линии связи 15 "Mbus"
    
    2018-11-23 10:29:51 Открытие последовательного порта /dev/mydev/Com5
    
    2018-11-23 10:29:51 Сеанс связи с КП 22 "Weser", тип: KpMbus, адрес: 15713929
    Отправка (17): 68 0B 0B 68 73 FD 52 29 39 71 15 FF FF FF FF A6 16
    Приём (1/1): E5
    OK!
    Отправка (5): 10 7B FD 78 16
    Приём (110/262): 68 68 68 68 08 00 72 29 39 71 15 73 51 9B 04 54 00 00 00 0C 06 39 44 14 00 8C 10 06 00 00 00 00 8C 20 13 00 00 00 00 0C 13 22 14 00 00 3C 2B 00 00 00 00 3B 3B 00 00 00 0A 5A 66 02 0A 5E 66 02 0A 62 00 F0 0A 27 04 12 04 6D 23 0B 57 2B 7C 03 91 34 00 00 7C 13 17 08 01 00 FC 10 06 00 00 00 00 FC 20 06 00 00 00 00 72 6C 00 00 B4 16
    OK!
    
    2018-11-23 10:29:53 Сеанс связи с КП 72 "SDM220_addr", тип: KpMbus, адрес: 1
    Отправка (5): 10 40 01 41 16
    Приём (1/1): E5
    Отправка (9): 68 03 03 68 53 01 B1 05 16
    Приём (150/262): 68 90 90 68 08 01 72 78 56 34 12 FF FF 01 02 55 00 00 00 0B FD 47 95 16 02 0B FD 47 00 00 00 0B FD 47 00 00 00 0B FD 47 00 00 00 0B FD 47 00 00 00 0B FD 47 00 00 00 0B FD 59 40 00 00 0B FD 59 00 00 00 0B FD 59 00 00 00 0B FD 59 00 00 00 0B 2A 86 00 00 0B 2A 86 00 00 0B 2A 00 00 00 0B 2A 00 00 00 0B FD 3A 00 00 00 0B FD 3A 00 00 00 0B FD 3A 00 00 00 0B FD 3A 00 00 00 0A FD 3A 00 10 0A FD 3A 00 10 0A FD 3A 00 00 0A FD 3A 00 00 0A FD 3A 00 50 CD 16
    OK!
    Отправка (5): 10 7B 01 7C 16
    Приём (99/262): 68 5D 5D 68 08 01 72 78 56 34 12 FF FF 01 02 55 00 00 00 0C 04 14 37 00 00 0C 04 14 37 00 00 0C 04 00 00 00 00 0C 04 00 00 00 00 0C 04 00 00 00 00 0C 04 00 00 00 00 0C FD 3A 90 01 00 00 0C FD 3A 00 00 00 00 0C FD 3A 90 01 00 00 0C FD 3A 00 00 00 00 0C FD 3A 00 00 00 00 0C FD 3A 00 00 00 00 8F 16
    OK!

    Вот опрос моих M-Bus счетчиков на Raspberry Pi3 Debian 9 + Mono 5.16

    #10792
    Mikhail
    Модератор

    Замечательно!

    #13341
    Mikhail
    Модератор

    Если для протокола Modbus, нам требуется карта регистров, чтобы подключить новое устройство, то какая информация от производителя прибора нам нужна, чтобы подключить прибор по M-Bus?

    #13344
    manjey73
    Участник

    Михаил, вы хотите где-то применить драйвер M-Bus ? надо бы его пересобрать и выложить по новой. А то из-за изменений в ScadaCommFunc там могут быть проблемы.

    Вообще в архиве есть файлы от производителей Eastron_SDM220-Mbus_protocol_V1_3.pdf например. Там как раз расписаны какими запросами необходимо выполнять опрос.

    Если что я помогу настроить. Ну и если будут ошибки, если в приборе есть функции, которые я не реализовал, то нужен будет доступ к прибору чтобы допилить.

    #13349
    manjey73
    Участник

    Пересобрал и обновил драйвер. Ссылка ведет на диск, так что он доступен.

    з.ы. неведома зверушка, ни разу никто не написал на почту с просьбой предоставить ключ 🙂

    #13362
    Mikhail
    Модератор

    Какая ссылка актуальна на данный момент? Ссылка на Google Drive в начале темы не работает.

    вы хотите где-то применить драйвер M-Bus ?

    Зависит от того, как какое оборудование в итоге влючат в проект. Хотел бы предварительно разобраться с темой M-Bus.

    Если что я помогу настроить. Ну и если будут ошибки, если в приборе есть функции, которые я не реализовал, то нужен будет доступ к прибору чтобы допилить.

    Наверняка что-то придётся допиливать. Так всегда бывает.

    #13363
    manjey73
    Участник

    Ссылку вы правили на папку RS-Driver — работает в Живом Демо или в русском варианте
    Главное меню — Плагины — Скачать.

    Проверил, там ссылки работают.

    На счет допиливания я знаю, недавно человек на другом форму настраивал шлюз ADFWeb с каким-то прибором. Вот в его приборе было текстовое поле — эту часть я не реализовывал так как мои приборы не поддерживают этот функционал

Просмотр 15 сообщений - с 16 по 30 (из 53 всего)
  • Вы должны авторизироваться для ответа в этой теме.