Блок для ESP8266, Связь с миром по MQTT.

Разработка блока MQTT. FLProg 3.1.2

Создаем свой блок. Вопросы, помощь знатоков.
Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#101

Сообщение pipapsix » 03.09.2018{, 11:50}

starshoy81 писал(а):
03.09.2018{, 10:31}
pipapsix писал(а):
03.09.2018{, 07:48}
для проверки . да и мало ли что произойдет.
брокер это критически важная инфраструктура и должен работать надёжно. Связь, также, должна быть устойчивой. Процессы требующие оперативного реагирования, должны управляться по надежным каналам связи. Оборудование должно отвечать уровню решаемой задачи. В вашем случае это не так. Либо снижайте уровень решаемых задач, либо меняйте оборудование. Зачем вам, например, нексшон? Цифры можно и на lcd выводить, а график агрегировать на thingspeak или забирать с брокера клиентом.
У меня есть автоматика на экране LCD 20*4. управляется энкодером.
Но на некшн экране показалось удобнее, никаких кнопок тебе и крутилок, меньше паять, да и энкодер чета у меня не получилось подружить с ESP.
Канал связи стабильный, да и брокер потом сделаю на малинке, тоже стабильно будет. Просто на тот случай если отключать эл-во, а инкубатор запущу от генератора, то брокер будет не доступен, вот и затупит все.
User8 писал(а):
03.09.2018{, 11:22}
pipapsix, если с этими блоками будет тупить, то нужно смотреть проект.
сечас буду пробывать

Отправлено спустя 1 минуту 9 секунд:
Golan писал(а):
03.09.2018{, 09:48}
Я поставил на Апельсин, все четко работает, и файфай с отдельного роутера, не подключенного к сети
так у меня тоже все Ок пока брокер работает, о том и речь))

Отправлено спустя 47 минут 37 секунд:
вынес на отдельную плату блоки майн и публикация.
Сделал выполнение действия платы по условию.
Брокер отключен, запускаю есп, все работает, мигает греет, передача данных на брокер отключена, включаю передачу и все, конец, все тормозит.

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#102

Сообщение User8 » 03.09.2018{, 12:49}

pipapsix, Rtrig используется на входе En?
Последний раз редактировалось User8 03.09.2018{, 12:52}, всего редактировалось 2 раза.

Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#103

Сообщение pipapsix » 03.09.2018{, 12:51}

User8 писал(а):
03.09.2018{, 12:49}
pipapsix, Rtrig используется на входе En? Если нет, нужно использовать.
конечно

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#104

Сообщение User8 » 03.09.2018{, 12:53}

pipapsix, тупящий пример в студию. Если тупит после подключения к брокеру, то может есп не справляется как брокер?
Последний раз редактировалось User8 03.09.2018{, 13:36}, всего редактировалось 3 раза.

Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#105

Сообщение pipapsix » 03.09.2018{, 13:00}

User8 писал(а):
03.09.2018{, 12:53}
pipapsix, тупящий пример в студию. Если тупит после подключения к брокеру, то может есп не справляется как брокер?
наоборот, после отключение от брокера.
все дело в майн блоке.
сейчас вынес на отдельные платы блоки майн и публикация, публикация работает по условию когда есть подключение к брокеру.
значит когда нет подключения, публикация тупо отключена, все тормозитс блок майн если нет поключения.
Вон намудрил то))

Отправлено спустя 2 минуты 43 секунды:
User8 писал(а):
03.09.2018{, 12:53}
pipapsix, тупящий пример в студию. До этого тупило при отключенном, щас при подключенном...
всегда тупит при отключеном брокере. может где опечатался в обьяснениях.

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#106

Сообщение User8 » 03.09.2018{, 13:12}

pipapsix, можно файл примера?

Отправлено спустя 8 часов 24 минуты 24 секунды:
pipapsix, глянул, не понятно почему, но я грешу на дисплей nextion, непонятки с ним постоянно. Возможно какой-то конфликт.
Можно попробовать использовать блок "Статус wifi соединения", возможно поможет узнать что-то новое.

Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#107

Сообщение pipapsix » 04.09.2018{, 06:53}

Например. Что с ним сделать.

Отправлено спустя 1 час 49 минут 14 секунд:
так и есть не в экранах дело, вот подключил другой и то же самое.
пока есп пытается подключиться к брокеру, все виснет, потом данные на экране поменялись и опять виснет.
наверно это не победить.
только если сделать попытку переподключение к брокеру каждые 5 минут например.
Вложения
пробник.flp
(554.86 КБ) 99 скачиваний

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#108

Сообщение User8 » 04.09.2018{, 13:31}

pipapsix, добавил возможность выставить время, через сколько делать переподключение.

Отправлено спустя 13 минут 51 секунду:
pipapsix, а если слать показатели на дисплей не всегда, а например хотя бы каждую секунду? А то он постоянно шлет, возможно из-за этого.
Вложения
MQTT_ESP_Main_3_1_(CODE).ubi
(246.82 КБ) 96 скачиваний
Последний раз редактировалось User8 04.09.2018{, 15:53}, всего редактировалось 1 раз.

Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#109

Сообщение pipapsix » 04.09.2018{, 14:13}

User8,
Блин столько ответа написал и форум глюканул.
Да данные и так не очень часто передаются, и всего их три штуки.
Меня и этот вариант устраивает, благодарю. буду тестить.
Мне интересно, у остальных все нормально работает?

CraCk
Лейтенант
Сообщения: 632
Зарегистрирован: 10.09.2015{, 21:51}
Репутация: 10

Блок для ESP8266, Связь с миром по MQTT.

#110

Сообщение CraCk » 04.09.2018{, 14:23}

Anydy писал(а):
30.08.2018{, 08:36}
Ну ребята, уже неоднократно говорилось что ESP8266 в качестве микроконтроллера для более менее серьезных проектов не годится.
starshoy81 писал(а):
30.08.2018{, 11:23}
именно управляющего микроконтроллера, передача данных - сколько угодно. Изначально под это и задумывался, видимо, однако, стремление китайцев впихнуть невпихуемое, сыграло злую шутку.
Как бы все красиво основной МК про мини, общение с миром через ESP8266 по MQTT, связь между контролерами с помощью простого УАРТ или Модбас . Прошивка ESP8266 по воздуху есть. Но как реализовать прошивку по воздуху основного МК через ESP8266? То есть хочется такое как в esp-link реализовано.

Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#111

Сообщение pipapsix » 04.09.2018{, 14:33}

ой как не хочу два МК использовать, кто бы знал!!
На данный момент осталось добавить проветривание при перегреве и все, автоматика готова.
поставил переподключение через 1,5 мин. все нормально, не подключилась, подумала (сек 3-5) и пошла дальше работать ESP -шка.

CraCk
Лейтенант
Сообщения: 632
Зарегистрирован: 10.09.2015{, 21:51}
Репутация: 10

Блок для ESP8266, Связь с миром по MQTT.

#112

Сообщение CraCk » 04.09.2018{, 14:56}

pipapsix писал(а):
04.09.2018{, 14:33}
ой как не хочу два МК использовать, кто бы знал!!
Да верю ето не удобно. Но зато больше шансов яйцам выжить при любых сбоях.

Отправлено спустя 15 минут 41 секунду:
Или как вариант дождаться поддержки в flprog ESP32. Уже сейчас стоимость ESP32 6,5$ Практически выходит тоже самое что спаривать pro min и платку wemos.

starshoy81
Лейтенант
Сообщения: 530
Зарегистрирован: 05.04.2016{, 23:30}
Репутация: 29
Откуда: Санкт-Петербург
Имя: Илья

Блок для ESP8266, Связь с миром по MQTT.

#113

Сообщение starshoy81 » 04.09.2018{, 15:13}

CraCk писал(а):
04.09.2018{, 14:23}
Но как реализовать прошивку по воздуху основного МК через ESP8266? То есть хочется такое как в esp-link реализовано.
а смысл изобретать велосипед?

CraCk
Лейтенант
Сообщения: 632
Зарегистрирован: 10.09.2015{, 21:51}
Репутация: 10

Блок для ESP8266, Связь с миром по MQTT.

#114

Сообщение CraCk » 04.09.2018{, 15:16}

starshoy81 писал(а):
04.09.2018{, 15:13}
а смысл изобретать велосипед?
В параллельной теме esp-link обсуждались недостатки. А так получаем возможность ESP8266 конфигурировать под себя как за угодно.

Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#115

Сообщение pipapsix » 04.09.2018{, 15:17}

CraCk писал(а):
04.09.2018{, 15:11}
Или как вариант дождаться поддержки в flprog ESP32. Уже сейчас стоимость ESP32 6,5$ Практически выходит тоже самое что спаривать pro min и платку wemos
А вот до зимы она будет??поддержка.

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#116

Сообщение User8 » 04.09.2018{, 15:31}

Последний раз редактировалось User8 28.09.2018{, 17:41}, всего редактировалось 1 раз.

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#117

Сообщение User8 » 04.09.2018{, 17:49}

Последние версии блоков. В главном блоке добавил LWT сообщение. Т.к. теперь в настройках можно выставить время переподключения к брокеру, сделал чтобы он делал попытку при старте esp, а не при прошествию выставленного времени.

LWT - Last Will сообщение, которое будет отправлено в указанный топик, как только устройство отключится от брокера.
Пример: мы указали в настройках: willMessageOnline: 1; willMessageOffline: 0; willTopic: client1/status; willRetain: 1;
После старта esp и подключению к брокеру, в топик client1/status будет отправлено сообщение 1, а при отключении esp от брокера в топик client1/status будет отправлено сообщение 0.
По умолчанию клиент остается подключенным в течении 15 секунд, даже когда соединение уже разорвано, поэтому статус LWT сообщения обновляется только после 15 секунд. Если вы хотите уменьшить данный параметр, вам следует отредактировать файл библиотеки, он лежит в папке с программой flprog далее \ideV2\libraries\pubsubclient\src\PubSubClient.h нужно его открыть и отредактировать строчку #define MQTT_KEEPALIVE 15.
Вложения
MQTT_ESP_Main_3_2_(CODE).ubi
(256.55 КБ) 111 скачиваний
MQTT_ESP_Pub_2_5_(CODE).ubi
(18.81 КБ) 110 скачиваний
MQTT_ESP_Sub_2_3_(CODE).ubi
(9.24 КБ) 120 скачиваний
Последний раз редактировалось User8 05.09.2018{, 09:42}, всего редактировалось 11 раз.

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#118

Сообщение User8 » 04.09.2018{, 18:30}

pipapsix, можно попросить проверить последнюю версию блока main, будет ли тупить если отключить брокер и esp и подключить только esp, брокер пусть отключен.

Аватара пользователя
pipapsix
Лейтенант
Сообщения: 436
Зарегистрирован: 25.10.2016{, 21:26}
Репутация: 15
Откуда: Волгоградская обл.
Имя: СашкаСаняАлександр

Блок для ESP8266, Связь с миром по MQTT.

#119

Сообщение pipapsix » 04.09.2018{, 18:42}

User8 писал(а):
04.09.2018{, 18:30}
pipapsix, можно попросить проверить последнюю версию блока main, будет ли тупить если отключить брокер и esp и подключить только esp, брокер пусть отключен.
уже.
значит так.
1-брокер отключен, включаю есп, и изначально все тупит и не отпускает пока не подключишь брокер.
2-Все включено, отключаю брокер, несколько сек тупит, потом отпускает и работает нормально до следущей попытки подключиться

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Блок для ESP8266, Связь с миром по MQTT.

#120

Сообщение User8 » 04.09.2018{, 19:00}

pipapsix, выше обновил файл, можно проверить.

Отправлено спустя 33 минуты 56 секунд:
pipapsix, подумал и сделал лучше, обновил еще раз выше.

Ответить

Вернуться в «Разработка пользовательских блоков»