MQTT управление

Использование протоколов Modbus, SPI, I2c и прочих, проблемы и решения
Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#1

Сообщение yopopol » 28.01.2017{, 01:50}

Всем привет.
Необходима помощь: настроил mqtt на управление ардуинкой из сервера (mojordomo), но не могу прикрутить кнопку к ардуино,чтобы управлять выходом этой кнопкой .прошу помочь ,уважаемые форумчане.
точнее кнопку прикрутил,но как настроить? (кнопка без фиксации: нажал,отпустил-лампа загорелась,еще нажал ,отпустил-погасла)

также хотелось бы ,что бы при нажатии на кнопку еще менялся статус на сервере.
Вложения
3932960.jpg



Слимпер
Майор
Сообщения: 1010
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 14
Откуда: Новосибирск

MQTT управление

#2

Сообщение Слимпер » 28.01.2017{, 06:48}

yopopol,  в другой теме выкладывал другую версию блоков для MQTT  протокола, может чем поможет.
Последний раз редактировалось Слимпер 28.01.2017{, 08:41}, всего редактировалось 1 раз.

Аватара пользователя
Sancho
Полковник
Сообщения: 2320
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 258
Откуда: Ярославль.
Имя: Александр
Контактная информация:

MQTT управление

#3

Сообщение Sancho » 28.01.2017{, 08:22}

Я правильно понимаю - ты хочешь управлять одним выходом и из mqtt и локально кнопкой?
При этом на сервере должно отображаться реальное состояние выхода?
Последний раз редактировалось Sancho 28.01.2017{, 08:37}, всего редактировалось 1 раз.
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#4

Сообщение yopopol » 28.01.2017{, 13:23}

Sancho писал(а):Я правильно понимаю - ты хочешь управлять одним выходом и из mqtt и локально кнопкой?При этом на сервере должно отображаться реальное состояние выхода?
 Да,именно так. Я наверно немного скомкано описал проблему, 2 часа ночи всё таки было ))

---------------------------------------------

Добавлено (28.01.2017, 13:23)
---------------------------------------------
Слимпер писал(а):yopopol,  в другой теме выкладывал другую версию блоков для MQTT  протокола, может чем поможет.
работает. но у меня трудность описать в Flprog логику одновременной работы кнопки и mqtt. 
Последний раз редактировалось yopopol 28.01.2017{, 12:44}, всего редактировалось 1 раз.

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#5

Сообщение yopopol » 28.01.2017{, 13:43}



так работает с кнопкой,но после изменения из сервера,кнопку приходится нажать два раза,что бы изменить состояние выхода
Вложения
2341921.jpg

Слимпер
Майор
Сообщения: 1010
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 14
Откуда: Новосибирск

MQTT управление

#6

Сообщение Слимпер » 28.01.2017{, 14:09}

Цитата yopopol () 200?'200px':''+(this.scrollHeight+5)+'px');">так работает с кнопкой,но после изменения из сервера,кнопку приходится нажать два раза,что бы изменить состояние выходаНу я бы сделал примерно так.
Вложения
0517999.png

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#7

Сообщение yopopol » 28.01.2017{, 14:43}

Слимпер писал(а):Ну я бы сделал примерно так.
  спасибо огромное!!! заработало!!!!

WZV
Сержант
Сообщения: 170
Зарегистрирован: 06.09.2015{, 14:31}
Репутация: 4

MQTT управление

#8

Сообщение WZV » 28.01.2017{, 19:36}

yopopol писал(а):настроил mqtt на управление ардуинкой из сервера (mojordomo)
Подскажите, через какой интернет шилд Вы подключились? И если можно схему подключения.

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#9

Сообщение yopopol » 28.01.2017{, 22:05}

ардуина 2560  и шилд w5100/
схемы нет,одно в другое вставляется

сервер mojordomo стоит на orange pi pc
Последний раз редактировалось yopopol 28.01.2017{, 22:07}, всего редактировалось 1 раз.

WZV
Сержант
Сообщения: 170
Зарегистрирован: 06.09.2015{, 14:31}
Репутация: 4

MQTT управление

#10

Сообщение WZV » 28.01.2017{, 22:52}

Благодарю за информацию все железки есть попробую.

Добавлено (28.01.2017, 22:52)
---------------------------------------------
Интересно , сколько можно таких блоков использовать в одном проекте?

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#11

Сообщение yopopol » 28.01.2017{, 23:36}

я сделал 16 выходов для реле и 16 кнопок с управлением по MQTT, заняло всего 8% памяти.

Слимпер
Майор
Сообщения: 1010
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 14
Откуда: Новосибирск

MQTT управление

#12

Сообщение Слимпер » 29.01.2017{, 06:43}

yopopol писал(а):я сделал 16 выходов для реле и 16 кнопок с управлением по MQTT, заняло всего 8% памяти.
Прошу оценку работы блоков, и замечания. А то я их в блоки пользователя не  выкладывал так как не было отзывов и результатах тестирования.
Последний раз редактировалось Слимпер 29.01.2017{, 06:52}, всего редактировалось 1 раз.

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#13

Сообщение yopopol » 29.01.2017{, 12:01}

пока второй день работы. Без сбоев!
Тестим дольше ))

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#14

Сообщение yopopol » 29.01.2017{, 14:13}

Добавил еще 10 топиков-переменных.Пока числа рандомятся, но потом на их место встанут какие нибудь данные (температура,влажность)
И заметил такую особенность: (на рисунке) при первом варианте данные отсылаются только один раз при старте ардуины, при втором варианте -переодически,согласно такту генератора.
Я новичек в этом деле,можт так и должно быть....

.

занимает всё это дело 10% памяти. данные принимаются влёт,без тормозов.
Вложения
1728550.jpg
Последний раз редактировалось yopopol 29.01.2017{, 14:16}, всего редактировалось 1 раз.

Слимпер
Майор
Сообщения: 1010
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 14
Откуда: Новосибирск

MQTT управление

#15

Сообщение Слимпер » 29.01.2017{, 14:25}

yopopol писал(а):Добавил еще 10 топиков-переменных.Пока числа рандомятся, но потом на их место встанут какие нибудь данные (температура,влажность)И заметил такую особенность: (на рисунке) при первом варианте данные отсылаются только один раз при старте ардуины, при втором варианте -переодически,согласно такту генератора.
Я новичек в этом деле,можт так и должно быть....
Так и должно быть:
Вход Send - по переднему фронту  на входе, публикует сообщение
Т.е. когда происходит переход из 0 (false) в 1 (true)

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#16

Сообщение yopopol » 29.01.2017{, 14:34}

Т.е. отсыл сообщения происходит только при переходе от 0 к 1 ?
Если  1 на входе Send постоянно,то отсыл происходит только один раз?

Слимпер
Майор
Сообщения: 1010
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 14
Откуда: Новосибирск

MQTT управление

#17

Сообщение Слимпер » 29.01.2017{, 14:40}

yopopol писал(а):Т.е. отсыл сообщения происходит только при переходе от 0 к 1 ?Если  1 на входе Send постоянно,то отсыл происходит только один раз?
Да именно так.

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#18

Сообщение yopopol » 07.02.2017{, 20:03}

Тогда всё норм,тестим дальше ))

Добавлено (04.02.2017, 13:27)
---------------------------------------------
прошла неделя,всё норм,работает стабильно.

Добавлено (07.02.2017, 20:03)
---------------------------------------------
обновил Flprog до 2/3/1, перезалил скетч и всё перестало работать (((
ардуинка даже на кнопки не реагирует ((

и при заливке ругается ,что pubsubclient.h отсутствует

WZV
Сержант
Сообщения: 170
Зарегистрирован: 06.09.2015{, 14:31}
Репутация: 4

MQTT управление

#19

Сообщение WZV » 10.02.2017{, 12:51}

yopopol писал(а):обновил Flprog до 2/3/1, перезалил скетч и всё перестало работать (((ардуинка даже на кнопки не реагирует ((
Очень интересуюсь этой темой, какова ситуация? Нашли причину?

Добавлено (10.02.2017, 12:51)
---------------------------------------------
Не могу залить скетч :
СпойлерПоказать
Arduino: 1.6.3 (Windows 7), Плата"Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"

pr6.ino:13:38: error: call of overloaded 'IPAddress(const char [14])' is ambiguous

pr6.ino:13:38: note: candidates are:

In file included from C:\Users\Vitia\Documents\Arduino\libraries\PubSubClient\src/PubSubClient.h:11:0,

from pr6.ino:1:

c:\Program Files\Flprog\ide\hardware\arduino\avr\cores\arduino/IPAddress.h:46:5: note: IPAddress::IPAddress(const uint8_t*) <near match>

IPAddress(const uint8_t *address);

^

c:\Program Files\Flprog\ide\hardware\arduino\avr\cores\arduino/IPAddress.h:46:5: note:   no known conversion for argument 1 from 'const char [14]' to 'const uint8_t* {aka const unsigned char*}'

c:\Program Files\Flprog\ide\hardware\arduino\avr\cores\arduino/IPAddress.h:45:5: note: IPAddress::IPAddress(uint32_t) <near match>

IPAddress(uint32_t address);

^

c:\Program Files\Flprog\ide\hardware\arduino\avr\cores\arduino/IPAddress.h:45:5: note:   no known conversion for argument 1 from 'const char [14]' to 'uint32_t {aka long unsigned int}'

c:\Program Files\Flprog\ide\hardware\arduino\avr\cores\arduino/IPAddress.h:28:7: note: IPAddress::IPAddress(const IPAddress&) <near match>

class IPAddress : public Printable {

^

c:\Program Files\Flprog\ide\hardware\arduino\avr\cores\arduino/IPAddress.h:28:7: note:   no known conversion for argument 1 from 'const char [14]' to 'const IPAddress&'

pr6.ino:18:28: error: expected ')' before 'm25'

Ошибка компиляции.

Это сообщение будет содержать больше информации чем
"Отображать вывод во время компиляции"
включено в Файл > Настройки
Нашёл причину: убрал кавычки с IP адреса      IPAddress ethernet_ip("192,168,1,113");
                        убрал кавычки с PubSubClient MQTTclient( ""m25.cloudmqtt.com"" , 1883 , callback,   ethClient);
их почему то по две.
Последний раз редактировалось WZV 10.02.2017{, 14:37}, всего редактировалось 1 раз.

Аватара пользователя
yopopol
Рядовой
Сообщения: 88
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

MQTT управление

#20

Сообщение yopopol » 10.02.2017{, 15:08}

пока пользуюсь версией 2.2.  проблем еще не было (с уже составленным скетчем)

на версии 2.3 ругается на библиотеку
а на 2.1 постоянные притензии к коду. причем заливает,но работает плата не корректно(помогла перезапиь загрузчика в плату.IDE ругается,но в итоге всё работает)
Последний раз редактировалось yopopol 10.02.2017{, 15:42}, всего редактировалось 1 раз.

Ответить

Вернуться в «Протоколы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость