Опять Ардуино и МД???

Проблемы/вопросы, связанные с запуском под различными платформами и конфигурациями.

Модератор: immortal

StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Опять Ардуино и МД???

Сообщение StryzhakA » Вс фев 21, 2016 11:33 pm

flair писал(а):после строчки с гетом

ПС чисто ИМХО но всеже - зря брали ДХТ 11 - врет собака неимоверно... 22ой сильно точнее
да полностью согласен, дхт22 намного дороже, но позже решил что поменяю. Кстати у меня есть один 22, но почему то, со временем, влажность начал показывать стабильно 1.4%, глюканул....
Кстати спасибо за скетч, помог, начало работать. Но есть проблема у меня в обьекте CirculationPump, нету метода statusChanged. Вы б немогли мне скинуть код этого метода, или подсказать как прописать гет указывая обьект и статус, обходя метод.
спасибо
flair
Сообщения: 198
Зарегистрирован: Сб янв 16, 2016 12:18 am
Откуда: Минск
Благодарил (а): 16 раз
Поблагодарили: 15 раз

Re: Опять Ардуино и МД???

Сообщение flair » Пн фев 22, 2016 12:19 am

этот метод можно заменить без проблем на свой.... у меня он пустой ибо делаются другие задачи. смысл в том что гет запускает этот метод-то есть отрабатывает программу на стороне МД- либо с параметром статус (может быть любой), либо без него... у меня работает по другому и дать просто нечего)
StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Опять Ардуино и МД???

Сообщение StryzhakA » Пн фев 22, 2016 9:09 am

Тогда подскажите другое:
у меня хотя и все заработало через отсылку запроса из ардуино на МД, но без того чтобы МД проверял статус пинов не обойтись, потому как в скетче ардуины есть сценарий когда реле не реагируют на любые внешние воздействия. В таком случае у меня на МД -я переключаю кнопку, а на самом деле статус реле не меняеться. Надо чтобы МД раз на 5 сек парсил состояние пинов.
Как это сделать?
спасибо
flair
Сообщения: 198
Зарегистрирован: Сб янв 16, 2016 12:18 am
Откуда: Минск
Благодарил (а): 16 раз
Поблагодарили: 15 раз

Re: Опять Ардуино и МД???

Сообщение flair » Пн фев 22, 2016 1:50 pm

как и писал выше
http://majordomo.smartliving.ru/Main/DevIpPower9223 в этой статье все есть - даже 2 способа как делать опрос портов
хотя про пять сек хз... может подвесить систему... надо у автора интересоваться.
или я не правильно понял вопрос?)
Jager
Сообщения: 708
Зарегистрирован: Сб авг 18, 2012 10:21 am
Благодарил (а): 26 раз
Поблагодарили: 183 раза

Re: Опять Ардуино и МД???

Сообщение Jager » Пн фев 22, 2016 5:04 pm

StryzhakA писал(а):Тогда подскажите другое:
у меня хотя и все заработало через отсылку запроса из ардуино на МД, но без того чтобы МД проверял статус пинов не обойтись, потому как в скетче ардуины есть сценарий когда реле не реагируют на любые внешние воздействия. В таком случае у меня на МД -я переключаю кнопку, а на самом деле статус реле не меняеться. Надо чтобы МД раз на 5 сек парсил состояние пинов.
Как это сделать?
спасибо
Попробуйте создать сценарий с таким кодом

Код: Выделить всё

$state = file_get_contents('http://192.168.254.5/command?39=STATUS');
$value = explode('/',$state);
sg('CirculationPump.status',substr($value[0],4));
 
Запускайте его через нужный интервал времени.
flair
Сообщения: 198
Зарегистрирован: Сб янв 16, 2016 12:18 am
Откуда: Минск
Благодарил (а): 16 раз
Поблагодарили: 15 раз

Re: Опять Ардуино и МД???

Сообщение flair » Пн фев 22, 2016 8:00 pm

Не подвесит ли это систему... С тем и вопрос к Сергею... Ибо как я понял топик стартеру. Как и всем . важна оперативность... А пускать проверку раз в 5-n сек....
Сам думаю как оптимизировать код для быстрой считки ds1990...
StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Опять Ардуино и МД???

Сообщение StryzhakA » Пн фев 22, 2016 11:24 pm

flair писал(а):Не подвесит ли это систему... С тем и вопрос к Сергею... Ибо как я понял топик стартеру. Как и всем . важна оперативность... А пускать проверку раз в 5-n сек....
Сам думаю как оптимизировать код для быстрой считки ds1990...

Согласен, опасения обоснованы. В принципе опрос можно делать не раз в 5 сек, а только в момент или после изменения статуса обьекта. То есть, как бы мы включаем реле и проверяем включилось ли оно. Но для меня эо слишком сложно, может Вы как опытные програмеры подскажите...
Jager
Сообщения: 708
Зарегистрирован: Сб авг 18, 2012 10:21 am
Благодарил (а): 26 раз
Поблагодарили: 183 раза

Re: Опять Ардуино и МД???

Сообщение Jager » Вт фев 23, 2016 8:51 am

StryzhakA писал(а):Согласен, опасения обоснованы. В принципе опрос можно делать не раз в 5 сек, а только в момент или после изменения статуса обьекта. То есть, как бы мы включаем реле и проверяем включилось ли оно. Но для меня эо слишком сложно, может Вы как опытные програмеры подскажите...
Если хотите контролировать фактическое включение можете использовать например это http://www.ab-log.ru/page.php?Cat=110&I ... 0%EE%F2166 повесите на вход вашей ардуины а она уже будет слать данные мдм.
StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Опять Ардуино и МД???

Сообщение StryzhakA » Вт фев 23, 2016 9:31 am

Jager писал(а):
StryzhakA писал(а):Согласен, опасения обоснованы. В принципе опрос можно делать не раз в 5 сек, а только в момент или после изменения статуса обьекта. То есть, как бы мы включаем реле и проверяем включилось ли оно. Но для меня эо слишком сложно, может Вы как опытные програмеры подскажите...
Если хотите контролировать фактическое включение можете использовать например это http://www.ab-log.ru/page.php?Cat=110&I ... 0%EE%F2166 повесите на вход вашей ардуины а она уже будет слать данные мдм.
Спасибо. Для целей безопасности -отличный вариант.
В данный момент, я хотел просто создать скрипт который синхронизировал положение кнопки в МД с фактическим состоянием переменной которая отвечает за роботу той же кнопки.
StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Опять Ардуино и МД???

Сообщение StryzhakA » Вт фев 23, 2016 9:37 am

Jager писал(а): Попробуйте создать сценарий с таким кодом

Код: Выделить всё

$state = file_get_contents('http://192.168.254.5/command?39=STATUS');
$value = explode('/',$state);
sg('CirculationPump.status',substr($value[0],4));
Запускайте его через нужный интервал времени.
Подскажите пожалуйста: а как и где задать часовой интвервал исполнения?
Ответить