Друзья! Спасибо всем кто участвует в проекте.
У меня, как у новичка, возникли вопросы. В моей квартире имеется система управления силовыми реле, через которые организована система управления освещением и другими силовыми модулями в доме. Сейчас к этой системе прикручена еще и ардуинка, которая снимает показания по климатике в комнатах. Все это управляется собственной системой со своей бд и веб интерфейсом.
Далее я установил Majordomo. И настроил элементы управления в соответствии с рекомендациями в разделе Азбука (спасибо за это руководство, крайне полезно для начинающих). Т.е. сейчас созданы объекты (группы освещения: люстры, точечный свет, ночники, ...), подготовлена сцена с элементами управления и создана структура выключателей в "Меню управления". Настроены связи между объектами.
И далее у меня вопрос, как теперь это связать с силовыми блоками? Блоками можно управлять вызовом php функций или непосредственным внесением изменений в БД. Правильно ли я понимаю, что код управления (включения/выключения силового реле) необходимо вписывать в код методов turnOn/Off соответствующих экземпляров объектов? Или я ошибаюсь. Подскажите!
Схема (без majordomo):
http://iouri.tsimbalenko.ru/wp/comforta ... se-scheme/
Азбука, что дальше...
Модератор: immortal
-
- Сообщения: 708
- Зарегистрирован: Сб авг 18, 2012 10:21 am
- Благодарил (а): 26 раз
- Поблагодарили: 183 раза
Re: Азбука, что дальше...
Да, правильно. В мдм по умолчанию есть класс Relays, в методы turnOn и TurnOff соответствующих объектов пропишите ваши команды управления. После этого сможете управлять как напрямую вызывая эти методы так и через метод switch.iouri писал(а):Правильно ли я понимаю, что код управления (включения/выключения силового реле) необходимо вписывать в код методов turnOn/Off соответствующих экземпляров объектов? Или я ошибаюсь. Подскажите!
Re: Азбука, что дальше...
Спасибо за консультацию.
Тогда следующий вопрос. Силовые модули управляются через БД. Т.е. чтобы включить или выключить реле, мне необходимо вызвать функцию SQL, чтобы получить статус - выполнить select. Делать connect к mysql следует при каждом вызове turnOn/Off или я могу где-то авторизоваться (главный вопрос - где), а потом используя открытый сокет обращаться к базе?
Тогда следующий вопрос. Силовые модули управляются через БД. Т.е. чтобы включить или выключить реле, мне необходимо вызвать функцию SQL, чтобы получить статус - выполнить select. Делать connect к mysql следует при каждом вызове turnOn/Off или я могу где-то авторизоваться (главный вопрос - где), а потом используя открытый сокет обращаться к базе?
- lanket
- Сообщения: 1168
- Зарегистрирован: Вт окт 14, 2014 11:27 pm
- Откуда: Санкт-Петербург
- Благодарил (а): 260 раз
- Поблагодарили: 163 раза
Re: Азбука, что дальше...
Вы немного глубже смотрите чем надо.iouri писал(а):Спасибо за консультацию.
Тогда следующий вопрос. Силовые модули управляются через БД. Т.е. чтобы включить или выключить реле, мне необходимо вызвать функцию SQL, чтобы получить статус - выполнить select. Делать connect к mysql следует при каждом вызове turnOn/Off или я могу где-то авторизоваться (главный вопрос - где), а потом используя открытый сокет обращаться к базе?
В Мдм скуль вообще не надо трогать.
Вы просто запускаете методы turn on/Off или switch и они сами все делают.
Если св-ва объекта status связанны с млдулем-шлюзом общения с жедезом.
Вопрос как мдм взаимодействует с Вашим "нестандаиизированном в мдм" железом.
Если в вашем ПО, которое управляло реле, есть api то в св-ве status ставите галочку "запускать метод" прописываете метод обработки нового значения написанный отдкльгюно для вашего железа и, что то типа драйвера получиться, а в этом методе уже обращаетесь к API своего ПО имея уже данные об измененном состоянии.
Отправлено с моего HM NOTE 1LTEW через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
-
- Сообщения: 1115
- Зарегистрирован: Вс июн 14, 2015 11:08 am
- Благодарил (а): 85 раз
- Поблагодарили: 342 раза
Re: Азбука, что дальше...
Если я правильно понял, управление как раз и происходит через вызовы хранимок в сторонней БД.lanket писал(а): Вы немного глубже смотрите чем надо.
В Мдм скуль вообще не надо трогать.
Вы просто запускаете методы turn on/Off или switch и они сами все делают.
Если св-ва объекта status связанны с млдулем-шлюзом общения с жедезом.
Вопрос как мдм взаимодействует с Вашим "нестандаиизированном в мдм" железом.
Если в вашем ПО, которое управляло реле, есть api то в св-ве status ставите галочку "запускать метод" прописываете метод обработки нового значения написанный отдкльгюно для вашего железа и, что то типа драйвера получиться, а в этом методе уже обращаетесь к API своего ПО имея уже данные об измененном состоянии.
Попробуйте для начала подключение при каждом ВКЛ/ВЫКЛ. Не думаю, что это будет накладно.iouri писал(а):Спасибо за консультацию.
Тогда следующий вопрос. Силовые модули управляются через БД. Т.е. чтобы включить или выключить реле, мне необходимо вызвать функцию SQL, чтобы получить статус - выполнить select. Делать connect к mysql следует при каждом вызове turnOn/Off или я могу где-то авторизоваться (главный вопрос - где), а потом используя открытый сокет обращаться к базе?
Если же не устроит, думаю стоит поднять сервер с промежуточным API, который бы держал коннект на базу, а из вне слушал по TCP.
Re: Азбука, что дальше...
Да, управление через вызовы процедур в сторонней БД.olehs писал(а):Если я правильно понял, управление как раз и происходит через вызовы хранимок в сторонней БД.lanket писал(а): Вы немного глубже смотрите чем надо.
В Мдм скуль вообще не надо трогать.
Вы просто запускаете методы turn on/Off или switch и они сами все делают.
Если св-ва объекта status связанны с млдулем-шлюзом общения с жедезом.
Вопрос как мдм взаимодействует с Вашим "нестандаиизированном в мдм" железом.
Если в вашем ПО, которое управляло реле, есть api то в св-ве status ставите галочку "запускать метод" прописываете метод обработки нового значения написанный отдкльгюно для вашего железа и, что то типа драйвера получиться, а в этом методе уже обращаетесь к API своего ПО имея уже данные об измененном состоянии.
Попробуйте для начала подключение при каждом ВКЛ/ВЫКЛ. Не думаю, что это будет накладно.iouri писал(а):Спасибо за консультацию.
Тогда следующий вопрос. Силовые модули управляются через БД. Т.е. чтобы включить или выключить реле, мне необходимо вызвать функцию SQL, чтобы получить статус - выполнить select. Делать connect к mysql следует при каждом вызове turnOn/Off или я могу где-то авторизоваться (главный вопрос - где), а потом используя открытый сокет обращаться к базе?
Если же не устроит, думаю стоит поднять сервер с промежуточным API, который бы держал коннект на базу, а из вне слушал по TCP.
Ок, попробую коннектиться при каждом вызове.