Все нормально работает modbus., У меня дома моха е2210 и он ей отлично управляет. Косяк где то у вас. У меня было такое с модулем systeminfo.
[Модуль] ModBus (modbus)
Модератор: immortal
-
- Сообщения: 48
- Зарегистрирован: Сб июл 21, 2018 9:08 pm
- Откуда: Калининград
- Благодарил (а): 10 раз
- Поблагодарили: 5 раз
Re: [Модуль] ModBus (modbus)
- tarasfrompir
- Сообщения: 3216
- Зарегистрирован: Ср мар 02, 2016 8:18 pm
- Откуда: Украина Пирятин
- Благодарил (а): 223 раза
- Поблагодарили: 816 раз
Re: [Модуль] ModBus (modbus)
Ну так в цикле нужно поставить проверку на корректность полученних данних. Ето одна строка кода в пхп...Vittaly писал(а): ↑Вт авг 11, 2020 4:14 pmПрошу помощи. @sergejey, Периодически останавливается цикл modbus. При запуске цикла вручную из консоли через некоторое время он вываливается вот с такими сообщениями:
Я понимаю, что иногда приходи некорректный ответ (есть ошибки на линии - это данность моей системы). Но можно ли сделать так, чтобы эта ошибка не приводила к остановке цикла?Код: Выделить всё
root@md:/var/www/scripts# sudo -u www-data php /var/www/scripts/cycle_modbus.php 14:53:49 running cycle_modbus.php ERROR: http:// Uncaught Exception: The input data should be an array of 2 or 4 bytes. in /var/www/modules/modbus/PhpType.php:205 Stack trace: #0 /var/www/modules/modbus/PhpType.php(66): PhpType::checkData(Array) #1 /var/www/modules/modbus/modbus.class.php(387): PhpType::bytes2signedInt(Array, false) #2 /var/www/modules/modbus/modbus.class.php(176): modbus->poll_device('1') #3 /var/www/scripts/cycle_modbus.php(41): modbus->readAll() #4 {main} thrown root@md:/var/www/scripts#
Спасибо нам ПОМОЖЕТ..!
-
- Сообщения: 118
- Зарегистрирован: Вт окт 14, 2014 9:19 pm
- Благодарил (а): 48 раз
- Поблагодарили: 12 раз
Re: [Модуль] ModBus (modbus)
Если бы я знал, в каком месте - я бы поставил...tarasfrompir писал(а): ↑Сб авг 22, 2020 5:32 pmНу так в цикле нужно поставить проверку на корректность полученних данних. Ето одна строка кода в пхп...Vittaly писал(а): ↑Вт авг 11, 2020 4:14 pmПрошу помощи. @sergejey, Периодически останавливается цикл modbus. При запуске цикла вручную из консоли через некоторое время он вываливается вот с такими сообщениями:
Я понимаю, что иногда приходи некорректный ответ (есть ошибки на линии - это данность моей системы). Но можно ли сделать так, чтобы эта ошибка не приводила к остановке цикла?Код: Выделить всё
root@md:/var/www/scripts# sudo -u www-data php /var/www/scripts/cycle_modbus.php 14:53:49 running cycle_modbus.php ERROR: http:// Uncaught Exception: The input data should be an array of 2 or 4 bytes. in /var/www/modules/modbus/PhpType.php:205 Stack trace: #0 /var/www/modules/modbus/PhpType.php(66): PhpType::checkData(Array) #1 /var/www/modules/modbus/modbus.class.php(387): PhpType::bytes2signedInt(Array, false) #2 /var/www/modules/modbus/modbus.class.php(176): modbus->poll_device('1') #3 /var/www/scripts/cycle_modbus.php(41): modbus->readAll() #4 {main} thrown root@md:/var/www/scripts#
Cubietrunck + Debian
- tarasfrompir
- Сообщения: 3216
- Зарегистрирован: Ср мар 02, 2016 8:18 pm
- Откуда: Украина Пирятин
- Благодарил (а): 223 раза
- Поблагодарили: 816 раз
Re: [Модуль] ModBus (modbus)
смотри вот отсюда -https://github.com/sergejey/majordomo-m ... s.php#L187Vittaly писал(а): ↑Вс авг 23, 2020 3:50 pmЕсли бы я знал, в каком месте - я бы поставил...tarasfrompir писал(а): ↑Сб авг 22, 2020 5:32 pmНу так в цикле нужно поставить проверку на корректность полученних данних. Ето одна строка кода в пхп...Vittaly писал(а): ↑Вт авг 11, 2020 4:14 pmПрошу помощи. @sergejey, Периодически останавливается цикл modbus. При запуске цикла вручную из консоли через некоторое время он вываливается вот с такими сообщениями:
Я понимаю, что иногда приходи некорректный ответ (есть ошибки на линии - это данность моей системы). Но можно ли сделать так, чтобы эта ошибка не приводила к остановке цикла?Код: Выделить всё
root@md:/var/www/scripts# sudo -u www-data php /var/www/scripts/cycle_modbus.php 14:53:49 running cycle_modbus.php ERROR: http:// Uncaught Exception: The input data should be an array of 2 or 4 bytes. in /var/www/modules/modbus/PhpType.php:205 Stack trace: #0 /var/www/modules/modbus/PhpType.php(66): PhpType::checkData(Array) #1 /var/www/modules/modbus/modbus.class.php(387): PhpType::bytes2signedInt(Array, false) #2 /var/www/modules/modbus/modbus.class.php(176): modbus->poll_device('1') #3 /var/www/scripts/cycle_modbus.php(41): modbus->readAll() #4 {main} thrown root@md:/var/www/scripts#
- За это сообщение автора tarasfrompir поблагодарил:
- Vittaly (Вт авг 25, 2020 9:16 am)
- Рейтинг: 1.16%
Спасибо нам ПОМОЖЕТ..!
Re: [Модуль] ModBus (modbus)
Может быть и не Modbus. Но я пробовал на дефолтной MDM, буквально: одно устройство, один объект, одно свойство и один метод с единственной строкой: say('Test',0);. Свойства дублируются, метод не выполняется. Какой то баг явно есть. Переделал обмен на mqtt.noname_npc писал(а): ↑Сб авг 22, 2020 1:06 pmВсе нормально работает modbus., У меня дома моха е2210 и он ей отлично управляет. Косяк где то у вас. У меня было такое с модулем systeminfo.
-
- Сообщения: 96
- Зарегистрирован: Сб май 19, 2018 11:08 pm
- Благодарил (а): 26 раз
- Поблагодарили: 3 раза
Re: [Модуль] ModBus (modbus)
Привет. Приобрел недавно Я такую вот интересную малину
https://ab-log.ru/forum/viewtopic.php?f=1&t=1719 и в ней есть
RS485 auto-flow, max 500kbps, до 128 устройств (GPIO32,33)
также приобрел SDM 220 (с Modbus)
Хочу с помощью этого всего выводить данные в Majordomo, но вот нигде не могу найти мануала, что бы это реализовать. Есть только с esp через wifi, но это не интересно.
Подскажите пожалуйста с чего начинать, и как реализовать мои хотелки.
https://ab-log.ru/forum/viewtopic.php?f=1&t=1719 и в ней есть
RS485 auto-flow, max 500kbps, до 128 устройств (GPIO32,33)
также приобрел SDM 220 (с Modbus)
Хочу с помощью этого всего выводить данные в Majordomo, но вот нигде не могу найти мануала, что бы это реализовать. Есть только с esp через wifi, но это не интересно.
Подскажите пожалуйста с чего начинать, и как реализовать мои хотелки.
-
- Сообщения: 118
- Зарегистрирован: Вт окт 14, 2014 9:19 pm
- Благодарил (а): 48 раз
- Поблагодарили: 12 раз
Re: [Модуль] ModBus (modbus)
Данный моуль вам не поможет. Он MODBUS TCP. А вам надо работать с физическим RS485 на плате, т.е. это MODBUS RTU. Штатного модуля в MJDM нет. Вам нужно самому либо найти PHP библиотеку, либо отдельную библиотеку на CLI, которая бы работала с MODBUS RTU.znachok88 писал(а): ↑Сб сен 26, 2020 2:06 pmПривет. Приобрел недавно Я такую вот интересную малину
https://ab-log.ru/forum/viewtopic.php?f=1&t=1719 и в ней есть
RS485 auto-flow, max 500kbps, до 128 устройств (GPIO32,33)
также приобрел SDM 220 (с Modbus)
Хочу с помощью этого всего выводить данные в Majordomo, но вот нигде не могу найти мануала, что бы это реализовать. Есть только с esp через wifi, но это не интересно.
Подскажите пожалуйста с чего начинать, и как реализовать мои хотелки.
Cubietrunck + Debian
-
- Сообщения: 96
- Зарегистрирован: Сб май 19, 2018 11:08 pm
- Благодарил (а): 26 раз
- Поблагодарили: 3 раза
Re: [Модуль] ModBus (modbus)
спасибо хоть на этом, а то мне нарозсказывали что это проще простого купи счетчик и все, а только потом показывают инструкции с esp и всякой хренью, которую городить вообще не охота и не буду.Vittaly писал(а): ↑Сб сен 26, 2020 2:53 pmДанный моуль вам не поможет. Он MODBUS TCP. А вам надо работать с физическим RS485 на плате, т.е. это MODBUS RTU. Штатного модуля в MJDM нет. Вам нужно самому либо найти PHP библиотеку, либо отдельную библиотеку на CLI, которая бы работала с MODBUS RTU.znachok88 писал(а): ↑Сб сен 26, 2020 2:06 pmПривет. Приобрел недавно Я такую вот интересную малину
https://ab-log.ru/forum/viewtopic.php?f=1&t=1719 и в ней есть
RS485 auto-flow, max 500kbps, до 128 устройств (GPIO32,33)
также приобрел SDM 220 (с Modbus)
Хочу с помощью этого всего выводить данные в Majordomo, но вот нигде не могу найти мануала, что бы это реализовать. Есть только с esp через wifi, но это не интересно.
Подскажите пожалуйста с чего начинать, и как реализовать мои хотелки.
-
- Сообщения: 108
- Зарегистрирован: Вс мар 29, 2020 11:20 am
- Благодарил (а): 47 раз
- Поблагодарили: 13 раз
Re: [Модуль] ModBus (modbus)
Да нет. Поможет, правда с некоторым ковырянием. Здесь, в теме, было сообщение https://mjdm.ru/forum/viewtopic.php?f=5 ... 775#p63775. Ну так с помощью него происходит перенос MODBUS RTU в MODBUS TCP. И уже из модуля можно раскидывать данные. Но вот сам модуль мажордома Модбас у меня работал как-то криво, часто валились какие-то ошибки, хотя из-под винды все работало хорошо и без ошибок. Потом я переделал работу счетчика через скрипт mbmd (есть на гитхабе) и брокер mqtt. Эта связка сейчас работаает второй месяц, стабильно и практически без ошибок.
Последний раз редактировалось Yevgen16 Сб сен 26, 2020 11:24 pm, всего редактировалось 1 раз.
Raspberry Pi4B (4Gb) + MegaD + Informer (skysilver)
-
- Сообщения: 108
- Зарегистрирован: Вс мар 29, 2020 11:20 am
- Благодарил (а): 47 раз
- Поблагодарили: 13 раз
Re: [Модуль] ModBus (modbus)
У меня чисто по проводам. Никаких esp. Но повозится пришлось пару дней. Счетчик SDM120, почти такой же, только поменьше и с токовым трансформатором.
Raspberry Pi4B (4Gb) + MegaD + Informer (skysilver)