Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Драйвер ModBus

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Драйвер ModBus

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      dito85 last edited by

      Aurodionov, ты, как я понял, подключаешь болидовское оборудование к iobroker? И насколько я помню, болид использует свой протокол "орион" и чтобы его перегнать в modbus нужно использовать C2000-ПП. А этот девайс работает с протоколом modbus rtu и не будет отвечать на modbus tcp. И если у тебя получилось интегрировать его в iobroker, значит ты нашёл решение и моей проблемы ). Расскажи что делал и получилось ли?

      1 Reply Last reply Reply Quote 0
      • E
        electric69 last edited by

        @dito85:

        Доброго всем дня! Вот решил вступить в ряды пользователей ioBroker. На данном этапе больше всего интересует протокол ModBus, драйвер установил и попробовал. Появился вопрос, ребят, а на данный момент реализован только протокол ModBus TCP? Или ModBus RTU тоже можно как то запустить? `
        Вроде на гитхабе https://github.com/ioBroker/ioBroker.modbus#iobrokermodbus "Actually only Modbus over TCP is supported"
        @dito85:

        И вот встала проблема выбора скады, а это, как оказалось, большая проблема. В отличии от промышленных скада-систем, скады для умного дома плохо знают промышленные протоколы (((. С самим проектом ioBroker знаком плохо, первое впечатление хорошее, но хочется понять подойдет ли он для моих хотелок. Поэтому и спрашиваю, как обстоит дело с протоколом ModBus RTU? Может я что то упустил и RTU можно прикрутить. `
        Могу поделиться опытом по надежности, запустил несколько объектов с ioBroker и контроллерами на основе ардуино и пр. по протоколу MQTT в основном. Некоторые работают уже более 100 дней без сбоев, вот прям щас посмотрел - аптайм 127 дней.

        В качестве сервера использую платку бананапи/кубитрак/кубибоард/оранжпи и образ системы http://www.armbian.com/.
        @dito85:

        Aurodionov, ты, как я понял, подключаешь болидовское оборудование к iobroker? И насколько я помню, болид использует свой протокол "орион" и чтобы его перегнать в modbus нужно использовать C2000-ПП. А этот девайс работает с протоколом modbus rtu и не будет отвечать на modbus tcp. И если у тебя получилось интегрировать его в iobroker, значит ты нашёл решение и моей проблемы ). Расскажи что делал и получилось ли? `
        Здесь http://forum.iobroker.net/viewtopic.php?f=33&t=2020 прост - MQTT)))

        З.Ы. У меня есть контроллер http://shop.entels.ru/index.php?route=product/product&path=20_80&product_id=230 (это тот же Овен http://www.owen.ru/catalog/programmiruemij_logicheskij_kontroller_oven_plk_100/opisanie, только исполнительная у него http://shop.entels.ru/index.php?route=product/category&path=60_65)

        Производитель вроде пишет, что должен работать по ModBUS TCP. Посоветуйте какой тестер модбаса - хотя бы попробовать…

        1 Reply Last reply Reply Quote 0
        • aurodionov
          aurodionov last edited by

          Как вариант использовать это

          OpenMODBUS/TCP to RS-232/485 MODBUS RTU gateway

          https://github.com/3cky/mbusd

          1 Reply Last reply Reply Quote 0
          • D
            dito85 last edited by

            Спасибо за ответы! Насколько я понял, если использовать MQTT, то к каждому контроллеру нужно тянуть витую пару для Ethernet, что в итоге приведет к большому количеству проводов. При использовании RS485, это всего два провода (питание не в счет).
            @aurodionov:

            Как вариант использовать это

            OpenMODBUS/TCP to RS-232/485 MODBUS RTU gateway

            https://github.com/3cky/mbusd `

            Если возможно, подскажи как и к чему это можно прикрутить?

            1 Reply Last reply Reply Quote 0
            • aurodionov
              aurodionov last edited by

              @dito85:

              Спасибо за ответы! Насколько я понял, если использовать MQTT, то к каждому контроллеру нужно тянуть витую пару для Ethernet, что в итоге приведет к большому количеству проводов. При использовании RS485, это всего два провода (питание не в счет).
              @aurodionov:

              Как вариант использовать это

              OpenMODBUS/TCP to RS-232/485 MODBUS RTU gateway

              https://github.com/3cky/mbusd `

              Если возможно, подскажи как и к чему это можно прикрутить? `
              Насчет mqtt возможно есть гейт в модбас

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

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                @electric69:

                Производитель вроде пишет, что должен работать по ModBUS TCP. Посоветуйте какой тестер модбаса - хотя бы попробовать… `
                Я думаю, что твой прибор работает в режиме slave.

                http://www.tuomio.fi/ananas/

                http://en.radzio.dxp.pl/modbus-master-simulator/

                1 Reply Last reply Reply Quote 0
                • Bluefox
                  Bluefox last edited by

                  @dito85:

                  Или ModBus RTU тоже можно как то запустить? `
                  Я тоже не с нуля писал, а использовал вот эту библиотеку:

                  https://github.com/TooTallNate/node-modbus-stack

                  Очень плохого качества и мне пришлось многое дописывать самому. Так что поддержку RTU мне придётся делать самому.

                  Есть ещё такой пакет:

                  https://www.npmjs.com/package/modbus-rtu

                  Но он только по последовательному порту. Я бы мог его прикрутить. У тебя RS485 на serial port?

                  1 Reply Last reply Reply Quote 0
                  • E
                    electric69 last edited by

                    @Bluefox:

                    Есть ещё такой пакет:

                    https://www.npmjs.com/package/modbus-rtu

                    Но он только по последовательному порту. Я бы мог его прикрутить. У тебя RS485 на serial port? `
                    Bluefox, а для ModBUS RTU есть варианты? Он вроде только через RS485/RS232 не?

                    А еще в документации к https://www.npmjs.com/package/modbus-rtu указано: NOTE! node-serialport doesn't support node 0.11.11+

                    Т.е. с версией ноды 0.12.7 уже не будет работать…

                    1 Reply Last reply Reply Quote 0
                    • H
                      Haus last edited by

                      @electric69:

                      @Bluefox:

                      Есть ещё такой пакет:

                      https://www.npmjs.com/package/modbus-rtu

                      Но он только по последовательному порту. Я бы мог его прикрутить. У тебя RS485 на serial port? `
                      Bluefox, а для ModBUS RTU есть варианты? Он вроде только через RS485/RS232 не?

                      А еще в документации к https://www.npmjs.com/package/modbus-rtu указано: NOTE! node-serialport doesn't support node 0.11.11+

                      Т.е. с версией ноды 0.12.7 уже не будет работать… `
                      Я не углублялся, гдето читал что стабильной считают node 0.10… и даже вроде с установкой iobroker в node 0.12 были warning

                      1 Reply Last reply Reply Quote 0
                      • Bluefox
                        Bluefox last edited by

                        @electric69:

                        @Bluefox:

                        Есть ещё такой пакет:

                        https://www.npmjs.com/package/modbus-rtu

                        Но он только по последовательному порту. Я бы мог его прикрутить. У тебя RS485 на serial port? ****Bluefox****, а для ModBUS RTU есть варианты?
                        Вроде как, ModBUS RTU over TCP (не путать с ModBUS TCP)

                        1 Reply Last reply Reply Quote 0
                        • D
                          dito85 last edited by

                          @Bluefox:

                          Есть ещё такой пакет:

                          https://www.npmjs.com/package/modbus-rtu

                          Но он только по последовательному порту. Я бы мог его прикрутить. У тебя RS485 на serial port `

                          Bluefox, если есть возможность прикрути, очень нужная вещь. Конечно слать запросы RTU по TCP было бы удобнее, но и с COM портом пойдет. Можно преобразователь на крайний случай поставить.

                          1 Reply Last reply Reply Quote 0
                          • E
                            electric69 last edited by

                            @dito85:

                            Bluefox, если есть возможность прикрути, очень нужная вещь. `
                            +1

                            Через некоторое время планирую подключать в систему ПЛК63 ОВЕН, там только RS485/RS232 и ModBUS RTU…

                            1 Reply Last reply Reply Quote 0
                            • V
                              vtec last edited by

                              @electric69:

                              Через некоторое время планирую подключать в систему ПЛК63 ОВЕН, там только RS485/RS232 и ModBUS RTU… `
                              По случаю достался? Или покупался. Если покупался, то для каких целей?

                              1 Reply Last reply Reply Quote 0
                              • E
                                electric69 last edited by

                                @vtec:

                                @electric69:

                                Через некоторое время планирую подключать в систему ПЛК63 ОВЕН, там только RS485/RS232 и ModBUS RTU… По случаю достался? Или покупался. Если покупался, то для каких целей?
                                По случаю мне досталось много чего - типа ПЛК-100, сименс лого и прочего, но мне ничего не понадобилось пока((

                                ПЛК-63 хочу использовать для управления отоплением в квартире.

                                Корпус под модульку (у меня шкаф из http://cs-cs.net/shhity-dlya-elektriki-edf -панелей).

                                Аналоговые входы 8 шт. - подключение термометров сопротивления (в теплые полы, на обратку, температура воздуха в помещении и пр.)

                                Дискретные входы/выходы - управление насосами/задвижками.

                                Аналоговые выходы - управление задвижками и приводами.

                                Порта Ethernet нету.

                                Но это только в планах))

                                А пока есть железки с которыми можно потренироваться…
                                4531_zwischenablage01.jpg

                                1 Reply Last reply Reply Quote 0
                                • F
                                  ford7 last edited by

                                  @electric69:

                                  По случаю мне досталось много чего - типа ПЛК-100, сименс лого и прочего, но мне ничего не понадобилось пока(( `
                                  Вот про сименс очень интересно что там "досталось", мне сейчас не хватает портов ввода для s7-1200, вдруг у вас без дела пылится?

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    dito85 last edited by

                                    Так как проблема с отсутствием в ioBroker ModBus RTU так и не решилась, вот один из вариантов как подключать устройства с RTU и интерфейсом 485 к ioBroker по ModBus TCP. Может кому пригодится. http://esp8266.ru/forum/threads/modbus- … erver.911/

                                    1 Reply Last reply Reply Quote 0
                                    • D
                                      dimon last edited by

                                      Всем привет!

                                      А есть хоть какая нибудь инструкция, как пользоваться этим драйвером? Никак не пойму.

                                      Есть шлюз MODBUS TCP - MODBUS RTU.

                                      Как передать значение 500 на устройство с ID 10 во 2 регистр?

                                      1 Reply Last reply Reply Quote 0
                                      • Bluefox
                                        Bluefox last edited by

                                        Есть 4 типа регистров:

                                        • бинарные read only

                                        • бинарные read/write

                                        • аналоговые регистры входа

                                        • holding регистры.

                                        О каких идёт речь? И какого типа аналоговый регистр: short, int32, float?

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          dimon last edited by

                                          @Bluefox:

                                          Есть 4 типа регистров:

                                          • бинарные read only

                                          • бинарные read/write

                                          • аналоговые регистры входа

                                          • holding регистры.

                                          О каких идёт речь? И какого типа аналоговый регистр: short, int32, float? `

                                          holding регистры.

                                          1 Reply Last reply Reply Quote 0
                                          • M
                                            MSapogov last edited by

                                            @dimon:

                                            @Bluefox:

                                            Есть 4 типа регистров:

                                            • бинарные read only

                                            • бинарные read/write

                                            • аналоговые регистры входа

                                            • holding регистры.

                                            О каких идёт речь? И какого типа аналоговый регистр: short, int32, float? `

                                            holding регистры. `
                                            Да… мини инструкции не хватает.

                                            Собрал переходник Modbus TCP RTU RS-485 http://esp8266.ru/forum/threads/modbus- … erver.911/

                                            Тоже думал осилю настройку драйвера методом тыка, но увы 😞

                                            Программой QModBus подаю запрос (Подсмотрел тут http://www.iobroker.net/?page_id=4643&l … ModBus_RTU)

                                            05 03 00 00 00 09

                                            В ответ получаю 9 строк со значением состояний входов и датчиков.

                                            При записи новых значений

                                            05 06 00 02 значения, меняются.

                                            Как теперь из запихнуть в IOB?

                                            Вот кусок кода из arduin-ки

                                            ! ````
                                            #include <simplemodbusslave.h>
                                            ! //////////////////// Макроопределения портов и настройки программы ///////////////////
                                            #define TxEnablePin 13 // Tx/Rx пин RS485
                                            #define baud 9600 // скоростьобмена по последовательному интерфейсу. (UART)
                                            #define Slave_ID 5 // Адрес Slave устройсва
                                            ! enum
                                            {
                                            // just add or remove registers and your good to go...
                                            // The first register starts at address 0
                                            P0,
                                            P1,
                                            P2,
                                            P3,
                                            P4,
                                            P5,
                                            P6,
                                            P7,
                                            P8,
                                            HOLDING_REGS_SIZE /// Это не удалять размер массива HOLDING_REGS.
                                            //общее количество регистров для функции 3 и 16 разделяет тотже самый массив регистров
                                            //т.е. то же самое адресное пространство
                                            };
                                            !
                                            unsigned int holdingRegs[HOLDING_REGS_SIZE]; // function 3 and 16 register array</simplemodbusslave.h>

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            637
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            25
                                            174
                                            49630
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo