Умный дом по радиоканалу

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
comparator
Сообщения: 516
Зарегистрирован: 20 окт 2012, 12:40
Откуда: Мюнхен

Re: Умный дом по радиоканалу

Сообщение comparator » 09 янв 2017, 19:49

wanvo писал(а):Можно-ли сделать мост между брокером Х13 и каким-нибудь облачным MQTT сервисом или другим MQTT брокером, например таким-же Х13 но более высоким в иерархии?
С X13 без проблем, это базовый функционал.
  • коротко:
  • тормозим сервер
  • открываем редактором файлик data\Engine.xst
  • отключаем собственный брокер
    <item name="Broker">
    <item name="enable" value="false" saved="True" type="bool" />
    </item>
  • Настраиваем клиента
    <item name="Client">
    <item name="_password" value="здесь пароль для главного сервера" saved="True" type="string" />
    <item name="_URL" value="адрес или IP главного сервера" saved="True" type="string" />
    <item name="_username" value="имя на главном сервере" saved="True" type="string" />
    <item name="enable" value="true" saved="True" type="bool" />
    <item name="TimeOffset" value="0" type="long" />
    <item name="verbose" value="false" saved="True" type="bool" />
    </item>
  • запускаем сервер
с другими брокерами не проверялось, не должно работать.

п.с. хексы получил, но еще не смотрел, чуть позже.

wanvo
Сообщения: 164
Зарегистрирован: 30 сен 2013, 09:45
Откуда: Russia, Rostov-on-Don

Re: Умный дом по радиоканалу

Сообщение wanvo » 09 янв 2017, 20:13

А зачем собственный брокер отключать?
Может я неверно выразил свои хотелки, но имелась ввиду именно иерархическая модель. То есть хотелось-бы чтобы собственный брокер обрабатывал подписчиков и публикаторов, но в то-же время мог подключиться к облаку(или более главному Х13) сам в качестве клиента и транслировать туда и оттуда определенные топики.
Или брокер так не умеет и нужен еще какой-то софт для этого?
А если брокера не отключать, он будет транслировать все топики на вышестоящий?
То есть как пример - пропал интернет и подключение к облаку оборвалось. Что будет в этом случае?

comparator
Сообщения: 516
Зарегистрирован: 20 окт 2012, 12:40
Откуда: Мюнхен

Re: Умный дом по радиоканалу

Сообщение comparator » 09 янв 2017, 21:18

wanvo писал(а):А зачем собственный брокер отключать?
Так как брокер в системе должен быть только один. Иначе они будут обрабатывать все события и соответственно рассылать все сообщения.
wanvo писал(а):Может я неверно выразил свои хотелки, но имелась ввиду именно иерархическая модель. То есть хотелось-бы чтобы собственный брокер обрабатывал подписчиков и публикаторов, но в то-же время мог подключиться к облаку(или более главному Х13) сам в качестве клиента и транслировать туда и оттуда определенные топики.
Для обмена данными между независимыми серверами существует WSSync
как раз и предназначен для обмена данными между независимыми X13 серверами, работает поверх http - необходим HttpServer.dll
wanvo писал(а):skip
То есть как пример - пропал интернет и подключение к облаку оборвалось. Что будет в этом случае?
тады ой, данные все останутся в облаке.

К сожалению на момент разработки MQTT не был настолько популярен как сейчас и используется только как внутренний протокол.
Так-же отсылка отсылка только определенных топиков в системе не предусмотрена.

wanvo
Сообщения: 164
Зарегистрирован: 30 сен 2013, 09:45
Откуда: Russia, Rostov-on-Don

Re: Умный дом по радиоканалу

Сообщение wanvo » 09 янв 2017, 22:23

comparator писал(а):Для обмена данными между независимыми серверами существует WSSync
как раз и предназначен для обмена данными между независимыми X13 серверами, работает поверх http - необходим HttpServer.dll
А вот это уже интересно!
Значит возможна иерархическая модель, а это отлично!
А отражение будет в обе стороны? И по publish и по suscribe? Ну то есть синхронизация топиков в обе стороны будет?
Или нужно два отражения делать?
На самом деле без облачного MQTT можно пока обойтись. Хотя вы верно выбрали внутренний протокол (да и я, когда подсел на вашу систему). В том смысле что все идет к тому, что MQTT как протокол взаимодействия в IoT скорее всего будет основным.
Я хотел к вашей системе прицепить какой-нибудь IoT MQTT dashboard. И цепляться им или к локальному брокеру, или к облачному, в зависимости от ситуации.

На самом деле у меня никакой конкретной задачи нет, все это просто очень интересно и хочется собрать систему просто потому, что очень хочется.
Хобби такое )

x13dev
Сообщения: 396
Зарегистрирован: 22 окт 2012, 11:40
Откуда: Бавария

Re: Умный дом по радиоканалу

Сообщение x13dev » 10 янв 2017, 11:31

wanvo писал(а): А вот это уже интересно!
Значит возможна иерархическая модель, а это отлично!
А отражение будет в обе стороны?
Да. На топики соответствующие маске делается subscribe и publish.

wanvo
Сообщения: 164
Зарегистрирован: 30 сен 2013, 09:45
Откуда: Russia, Rostov-on-Don

Re: Умный дом по радиоканалу

Сообщение wanvo » 13 янв 2017, 13:04

Здравствуйте уважаемые разработчики.

Заказал на али модули RFM69HW. А так как цена на них такая-же как и на более маломощные RFM69CW пришла мысль использовать более мощные HW везде, взять их за базу, а по мере необходимости просто снижать мощность программно.

Нашел в конфигураторе Х13 параметр, который предположительно устанавливает мощность излучения
XD_Power
А там оказалось еще больше десятка интересных параметров:

Xa_InMute
Xa_IPAddr
Xa_IPBrocker
Xa_IPMask
Xa_IPRouter
Xa_Key
Xa_MACAddr
XD_ADCintergrate
XD_Channel
XD_GateId
XD_Group
XD_Power
XD_SleepTime
XD_RSSI


Очень хочется почитать краткое описание функций каждого из них и диапазон валидных значений.
А также рекомендации по применению: в каких случаях их предполагается использовать.
Заранее благодарю!

comparator
Сообщения: 516
Зарегистрирован: 20 окт 2012, 12:40
Откуда: Мюнхен

Re: Умный дом по радиоканалу

Сообщение comparator » 13 янв 2017, 14:56

wanvo писал(а):Заказал на али модули RFM69HW. А так как цена на них такая-же как и на более маломощные RFM69CW пришла мысль использовать более мощные HW везде, взять их за базу, а по мере необходимости просто снижать мощность программно.
чтобы использовать высокую мощность, необходимо добавить в файл конфигурации определение RFM69_HW
wanvo писал(а):А там оказалось еще больше десятка интересных параметров:
Параметры только для чтения, либо для изменения только системой.
Xa_InMute - управляется PLC, указывает какие переменные передаются в головную систему, а какие используются только в устройстве, не трогать.
XD_RSSI - текущий уровень сигнала в дБ, только для чтения

Общие параметры, применяются сразу.
XD_ADCintergrate - время усреднения АЦП в 10 мс тиках. меньше 80(800мс) желательно не ставить.
XD_SleepTime - время в секундах, через которое нода уходит в спящий режим, если равна 0, то спящий режим не используется.

Остальные параметры применяются только после перезагрузки устройства.

Общие параметры для RF.
XD_Channel - номер канала, с сеткой 25 КГц. Частота = базовая частота(433000000/868000000) + номер канала * 25000, если частота вылетает за разрешенные границы, то выставляется базовая - 433,0/868,0.
XD_GateId - принудительно выставить адрес гейта, по умолчанию автоматический поиск.
XD_Group - номер подсети/группы, 2 байта

Параметры для RFM69
Xa_Key - AES ключ для радиоканала, 16 байт, если все байты равны 0x00 или 0xFF, то щифрование отключается. По умолчанию отключено.
XD_Power - уровень выходной мощности, для стандартной([C]W) от -18 до +13 dBm. Для варианта HW, от -2 до +17 dBm

Параметры для LAN, менять осторожно, некорректные настройки сбросить можно только стиранием устройства.
Xa_MACAddr - MAC адрес устройства, 6 байт от старшего к младшему.
Xa_IPBrocker - установить адрес брокера, полезно если брокер находится в другой подсети. Если не найден, то выполняется автоматический поиск в текущей подсети.
Xa_IPAddr - установить принудительно IP адрес устройства, 192.168.5.3 преобразуем в HEX - C0 A8 05 03. !! Использовать ОЧЕНЬ ОЧЕНЬ Аккуратно, если выставлен IP отключается DHCP.
Xa_IPMask - сетевая маска 255.255.255.0 преобразуем в HEX - FF FF FF 00. !! Использовать ОЧЕНЬ Аккуратно.
Xa_IPRouter - адрес роутера 192.168.5.1 преобразуем в HEX - C0 A8 05 01. !! Аккуратно.

wanvo
Сообщения: 164
Зарегистрирован: 30 сен 2013, 09:45
Откуда: Russia, Rostov-on-Don

Re: Умный дом по радиоканалу

Сообщение wanvo » 22 янв 2017, 12:43

Здравствуйте уважаемые разработчики.

Дошли руки до установки x13 на OrangePi. И возникло несколько вопросов:

1. По команде apt-cache search mono получаю огромнейший список пакетов. Вот некоторые из них, на мой взгляд имеющие
отношение к делу:

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

libmono-2.0-1 - Mono JIT library (Default version)
libmono-addins-cil-dev - addin framework for extensible CLI applications/librari                                                                                        es
libmono-addins-gui-cil-dev - GTK# frontend library for Mono.Addins
libmono-addins-gui0.2-cil - GTK# frontend library for Mono.Addins
libmono-addins-msbuild-cil-dev - MSBuild task library for Mono.Addins
libmono-addins-msbuild0.2-cil - MSBuild task library for Mono.Addins
libmono-addins0.2-cil - addin framework for extensible CLI applications/librarie                                                                                        s
libmono-cecil-cil - library to generate and inspect CIL assemblies
libmono-cecil-cil-dev - library to generate and inspect CIL assemblies
libmono-cecil-flowanalysis-cil - FlowAnalysis extension for Mono.Cecil
libmono-cecil-flowanalysis-cil-dev - FlowAnalysis extension for Mono.Cecil
libmono-cecil-vb0.9-cil - Visual Basic 2012 Cecil libraries for Mono
libmono-debugger-libs-cil-dev - Mono soft debugger interface libraries - develop                                                                                        ment headers
libmono-debugger-soft-cil - Mono soft debugger interface libraries - low level A                                                                                        PI
libmono-debugging-cil - Mono soft debugger interface libraries - API abstraction
libmono-debugging-soft-cil - Mono soft debugger interface libraries - Mono.Debug                                                                                        ging backend
libmono-fuse-cil - CLI binding for FUSE
libmono-microsoft-visualbasic10.0-cil - Visual Basic 2012 runtime libraries for                                                                                         Mono
libmono-profiler - Mono profiler libraries
libmono-profiler-gui-thread-check - Mono profiler library to debug GUI threading                                                                                         issues
libmono-reflection-cil - CLI reflection helper library
libmono-reflection-cil-dev - CLI reflection helper library
libmono-upnp-cil - client/server libraries for UPnP -- CIL assemblies
libmono-upnp-cil-dev - client/server libraries for the UPnP -- development files
libmono-zeroconf-cil-dev - CLI library for multicast DNS service discovery
libmono-zeroconf1.0-cil - CLI library for multicast DNS service discovery

и еще эти

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

mono-4.0-service - Mono service manager for CLI 4.0
mono-addins-utils - Command-line utility for Mono.Addins management
mono-apache-server - ASP.NET backend for mod_mono Apache module - default versio                                                                                        n
mono-apache-server4 - ASP.NET 4.5 backend for mod_mono Apache module
mono-basic-dbg - Mono Visual Basic, debugging symbols
mono-complete - complete Mono runtime, development tools and all libraries
mono-dbg - Mono debugging symbols
mono-dmcs - Mono C# 4.0 compiler for CLI 4.0 (transitional package)
mono-fastcgi-server - ASP.NET backend for FastCGI webservers - default version
mono-fastcgi-server4 - ASP.NET 4.0 backend for FastCGI webservers
mono-fpm-server - ASP.NET backend for FastCGI Process Manager
mono-jay - LALR(1) parser generator oriented to Java/CLI
mono-profiler - Mono profiler
mono-reference-assemblies-2.0 - Mono runtime - compiler compatibility for .NET 2                                                                                        .0
mono-reference-assemblies-3.5 - Mono runtime - compiler compatibility for .NET 3                                                                                        .5
mono-reference-assemblies-4.0 - Mono runtime - compiler compatibility for .NET 4                                                                                        .0
mono-tools-devel - Various development tools for mono
mono-tools-gui - Various GUI tools for mono
mono-upnp-bin - client/server libraries for UPnP -- executables
mono-vbnc - Mono Visual Basic Compiler (VB.NET)
mono-xsp - simple web server to run ASP.NET applications - default version
mono-xsp4 - simple web server to run ASP.NET 4.0 applications
mono-xsp4-base - base libraries for XSP 4.0
monobristol - simple GUI for Bristol
monodevelop - Development Environment for GNOME
monodevelop-database - Database plugin for MonoDevelop
monodevelop-nunit - NUnit plugin for MonoDevelop
monodevelop-versioncontrol - VersionControl plugin for MonoDevelop
monodoc-appindicator3-0.1-manual - compiled XML documentation for Appindicator3#
monodoc-avahi-manual - compiled XML documentation for the CLI bindings of avahi
monodoc-banshee-manual - Media Management and Playback application (developer do                                                                                        cumentation)
monodoc-base - shared MonoDoc binaries
monodoc-browser - MonoDoc GTK+ based viewer
monodoc-db4o-manual - compiled XML documentation for db4o
monodoc-gdata-manual - compiled XML documentation for GData
monodoc-gkeyfile-manual - compiled XML documentation for gkeyfile-sharp
monodoc-gmime2.6-manual - compiled XML documentation for GMime
monodoc-gnome-keyring-manual - CLI library to access the GNOME Keyring daemon -                                                                                         manual
monodoc-gtk2.0-manual - compiled XML documentation for GTK# 2.10
monodoc-gtk3.0-manual - compiled XML documentation for GTK# 3.0
monodoc-gudev-manual - compiled XML documentation for gudev-sharp
monodoc-hexbox-manual - Hex Edit Control for .NET developers - docs
monodoc-http - MonoDoc http based viewer
monodoc-hyena-manual - compiled XML documentation for Hyena
monodoc-manual - compiled XML documentation from the Mono project
monodoc-mono-fuse-manual - compiled XML documentation for mono-fuse
monodoc-mono-upnp-manual - Compiled XML documentation for mono-upnp
monodoc-mono-zeroconf-manual - compiled XML documentation for mono-zeroconf
monodoc-mysql-manual - compiled XML documentation for the MySql.Data library
monodoc-newtonsoft-json-manual - compiled XML documentation for Json.NET
monodoc-notify-sharp-manual - compiled XML documentation for notify-sharp
monodoc-notify3.0-manual - compiled XML documentation for notify-sharp
monodoc-nunit-manual - compiled XML documentation for NUnit - monodoc manual
monodoc-opentk-manual - Open Toolkit wrapper for OpenGL, OpenAL and OpenCL - Doc                                                                                        s
monodoc-poppler-manual - compiled XML documentation for Poppler Sharp
monodoc-soup2.4-manual - compiled XML documentation for Soup# 2.4
monodoc-taglib-manual - compiled XML documentation for taglib-sharp
monodoc-taoframework-manual - compiled XML documentation for all the Tao librari                                                                                        es
monodoc-webkit-manual - compiled XML documentation for webkit-sharp
monodoc-webkitgtk2.0-manual - compiled XML documentation for WebKit# (transition                                                                                        al package)
monodoc-webkitgtk3.0-manual - compiled XML documentation for WebKit#
monodoc-zeitgeist-manual - compiled XML documentation for zeitgeist-sharp
Вопрос такой: какие пакеты ставить? Просто пакета mono нет. Установки mono-complete должно хватить?

2. Нужно-ли устанавливать пакеты sqlite , lib-sqlite ?

x13dev
Сообщения: 396
Зарегистрирован: 22 окт 2012, 11:40
Откуда: Бавария

Re: Умный дом по радиоканалу

Сообщение x13dev » 22 янв 2017, 13:24

wanvo писал(а): Дошли руки до установки x13 на OrangePi. И возникло несколько вопросов:
Установки mono-complete должно хватить?
Должно, development вроде входит.
wanvo писал(а): 2. Нужно-ли устанавливать пакеты sqlite , lib-sqlite ?
Нет.

MSapogov
Сообщения: 312
Зарегистрирован: 13 май 2015, 08:44
Откуда: г. Томск

Re: Умный дом по радиоканалу

Сообщение MSapogov » 22 янв 2017, 18:21

А смогу ли я использовать Вашу систему без использования радиоканала, а только через "RS485 - Мультимастер TDMA"
Больше всего интересует скорость обработки нажатия кнопки на удаленном устройстве.
Если в ModBus это определялось скоростью pooling, то как происходит здесь.

Выходит мне необходим, если я правильно понял, некий шлюз RS-485(MQTT-S) - Ethernet(MQTT)
Тогда какое железо это сможет сделать?

Может ли в качестве удаленных устройств выступать Arduino Nano, mini... с подключением к ней RS-485 трансивера?

Прочитал не вникая все страницы (т.к. много чего непонятного). Правильно ли я понял, что используя конфигуратор (стр 66) можно и в Arduino Nano, Pro mini и др загрузить необходимую мне конфигурацию модуля? Но я не совсем удивил куда подключать RS-485 трансивер (просто к UART в A1Sn10).
Смогу ли я кроме кнопок, и реле на Arduino, подключить еще и вход как счетчик импульсов, PWM, DS18B20, BMP1180, DHT22, BME280 и др?
Как общаться с устройствами по I2S?

Может и глупые и несвязанные вопросы, но пока у меня огромная каша в голове, ведь скоро весна, а вопрос автоматизации бани, теплицы и полива на даче пока еще не решен. Пока только определился что это будет RS-485 в качестве физики.

x13dev
Сообщения: 396
Зарегистрирован: 22 окт 2012, 11:40
Откуда: Бавария

Re: Умный дом по радиоканалу

Сообщение x13dev » 22 янв 2017, 23:48

MSapogov писал(а):А смогу ли я использовать Вашу систему без использования радиоканала, а только через "RS485 - Мультимастер TDMA"
Да
MSapogov писал(а): Больше всего интересует скорость обработки нажатия кнопки на удаленном устройстве.
Если в ModBus это определялось скоростью pooling, то как происходит здесь.
Цикл опроса от 70 миллисекунд. Если шина не забита, то столько и останется.
MSapogov писал(а): Выходит мне необходим, если я правильно понял, некий шлюз RS-485(MQTT-S) - Ethernet(MQTT)
Тогда какое железо это сможет сделать?
Может ли в качестве удаленных устройств выступать Arduino Nano, mini... с подключением к ней RS-485 трансивера?
Нужен гейт: PHY1 - Ethernet, PHY2 - RS485. Думаю справится любое железо, но лучше подождать ответа @comparator
MSapogov писал(а):
Прочитал не вникая все страницы (т.к. много чего непонятного). Правильно ли я понял, что используя конфигуратор (стр 66) можно и в Arduino Nano, Pro mini и др загрузить необходимую мне конфигурацию модуля? Но я не совсем удивил куда подключать RS-485 трансивер (просто к UART в A1Sn10).
Конфигуратор для создания .h и .xst файлов. .h потом подсовывается компилятору.
MSapogov писал(а):
Смогу ли я кроме кнопок, и реле на Arduino, подключить еще и PWM?
Да

Поддержиаемые TWI:
  • LM75 - датчик температуры
  • CC2D - датчик температуры и влажности
  • HIH61xx - датчик температуры и влажности
  • SI7020/SHT21/HTU21D - датчик температуры и влажности
  • BMP180 - датчики давления и температуры
  • BME280 - датчики давления, влажности и температуры
  • BH1750 - датчик света
  • BlinkM - RGB контроллер
  • TWI Expander - 16 цифровых входов/выходов.
MSapogov писал(а):
вход как счетчик импульсов, DS18B20, DHT22
Нет

comparator
Сообщения: 516
Зарегистрирован: 20 окт 2012, 12:40
Откуда: Мюнхен

Re: Умный дом по радиоканалу

Сообщение comparator » 25 янв 2017, 13:13

немного подправлю/дополню ответ X13Dev
MSapogov писал(а):А смогу ли я использовать Вашу систему без использования радиоканала, а только через "RS485 - Мультимастер TDMA"
Больше всего интересует скорость обработки нажатия кнопки на удаленном устройстве.
Если в ModBus это определялось скоростью pooling, то как происходит здесь.
Выходит мне необходим, если я правильно понял, некий шлюз RS-485(MQTT-S) - Ethernet(MQTT)
Тогда какое железо это сможет сделать?
Да, варианты есть, например STM32F051 + ENC28J60 + RS485, получается конфигурация S2EMxx. То есть LAN на основном интерфейсе и RS485 на втором.
Скорость опроса. У RS485'го используется TDMA с размером кадра в 32 миллисекунды, таким образом события от каждой ноды могут проходить не чаще чем раз в 32 мс. Что на практике чуть лучше чем радиоканал.
MSapogov писал(а):Может ли в качестве удаленных устройств выступать Arduino Nano, mini... с подключением к ней RS-485 трансивера?
Прочитал не вникая все страницы (т.к. много чего непонятного). Правильно ли я понял, что используя конфигуратор (стр 66) можно и в Arduino Nano, Pro mini и др загрузить необходимую мне конфигурацию модуля? Но я не совсем удивил куда подключать RS-485 трансивер (просто к UART в A1Sn10).
Аппаратная поддержка RS485 есть у STM32F0/F3, но нет у STM32F1.
У атмелов аппаратной поддержки сигнала DE нет, необходимо делать эмуляцию. А для этого придется лезть в HAL и дописывать драйвер. Так что на текущий момент нет.
MSapogov писал(а):Смогу ли я кроме кнопок, и реле на Arduino, подключить еще и вход как счетчик импульсов, PWM, DS18B20, BMP1180, DHT22, BME280 и др?
счетчики на PLC можно реализовать, 20 герц считать реально, и допустим раз в минуту отправлять серверу что мы насчитали. 50 герц могут и не пролезть, будут отфильтрованы системой подавления дребезга.
Собственно на всех устройствах, есть PWM'ы у АТМ328 их 2-4 штуки, у STM'ов чуть более, от 5 и до десятков.
1Wire - можно подключить к серверу, но не к устройствам.
DHT22/DHT11 - есть адаптер на I2C, но на практике не используются. Мрут как мухи, плюс показывают цену на бананы непонятно в какой валюте.
I2C на STM'ах можно подключить практически любой, только пишем соответствующий драйвер в PLC.
I2C на атмелах, список был выше.

PLC гарантированно работает на текущий момент только на STM'ах. На меге 2560/2561 запускается, но не более того, при размере программы байт в 200 уже начинает вылетать в таймаут.
Для примера драйвер для BME280, занимает чуть больше килобайта.
MSapogov писал(а):Как общаться с устройствами по I2S?
Гнать аудио по довольно узким каналам, по моему не очень хорошая идея.

MSapogov
Сообщения: 312
Зарегистрирован: 13 май 2015, 08:44
Откуда: г. Томск

Re: Умный дом по радиоканалу

Сообщение MSapogov » 25 янв 2017, 18:45

comparator писал(а):немного подправлю/дополню ответ X13Dev
Спасибо за развернутые разъяснения...
comparator писал(а):
MSapogov писал(а):Как общаться с устройствами по I2S?
Гнать аудио по довольно узким каналам, по моему не очень хорошая идея.
Ох а I2C и I2S это оказывается разные вещи (вот это опечатался)....
Я имел ввиду интерфейс как у BME280. Но Вы про него ответили уже выше.

comparator
Сообщения: 516
Зарегистрирован: 20 окт 2012, 12:40
Откуда: Мюнхен

Re: Умный дом по радиоканалу

Сообщение comparator » 02 фев 2017, 15:25

2 MSapogov по поводу Atmel + RS485.
немного покопался, в принципе возможно, но с некоторыми ограничениями
  • Ограничения
  • Контроллер ATMega328P
  • Кварц только на 16,0М
  • остаются только 2 ШИМ'а
  • вывод DE, железно прописан на PD2

MSapogov
Сообщения: 312
Зарегистрирован: 13 май 2015, 08:44
Откуда: г. Томск

Re: Умный дом по радиоканалу

Сообщение MSapogov » 02 фев 2017, 19:59

comparator писал(а):2 MSapogov по поводу Atmel + RS485.
немного покопался, в принципе возможно, но с некоторыми ограничениями
  • Ограничения
  • Контроллер ATMega328P
  • Кварц только на 16,0М
  • остаются только 2 ШИМ'а
  • вывод DE, железно прописан на PD2
Спасибо огромное. Как раз такие модули и есть.
На бумаге уже изрисовал кучу реализаций задуманного, надеюсь скоро буду паять. Весна уже близко.

comparator
Сообщения: 516
Зарегистрирован: 20 окт 2012, 12:40
Откуда: Мюнхен

Re: Умный дом по радиоканалу

Сообщение comparator » 03 фев 2017, 11:06

MSapogov писал(а):
comparator писал(а):2 MSapogov по поводу Atmel + RS485.
немного покопался, в принципе возможно, но с некоторыми ограничениями, ATMega328P + 16.0M
Спасибо огромное. Как раз такие модули и есть.
На бумаге уже изрисовал кучу реализаций задуманного, надеюсь скоро буду паять. Весна уже близко.
Ок, тогда в следующие 2 недели оттестирую и будет добавлено в develop версию 2 конфигурации A1EM10 - LAN + RS485, и А1Mn10 - ноды на RS485.

sidr
Сообщения: 20
Зарегистрирован: 27 сен 2013, 09:45

Re: Умный дом по радиоканалу

Сообщение sidr » 12 апр 2017, 05:31

Доброго здравия!

Ищу подходящее железо для создания учебных стендов.
Стендов будет до 10-ти в пределах одной комнаты, на каждом будет питание, но отдельно тянуть витую пару не хочется. Поэтому смотрю в сторону радиоканала 868MHz. В меньшей степени - к HomePlug AV, так как стенды будут выездные, и не хочется зависеть от качества сети 220в.

На каждом стенде будет от 5 до 200 кнопок, соединенных по 1wire, а также от 1 до 10 метров адресной ленты WS1812B, которая зажигает светодиоды в зависимости от переданной последовательности байт
Также на одном из цифровых входов контроллера стенда будет кнопка для подключения/отключения стенда.

Бэкенд и фронтенд будет крутиться на малине на NodeJS + Redis

Задача перехватывать нажатия кнопок, передавать в NodeJS и зажигать ленту соответствующим образом

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

Вопросы такого плана.
1. Так как на каждом стенде будет отдельный контроллер, но они все будут иметь одинаковую конфигурацию 1wire+лента+кнопка, возможно ли автоматически добавлять их в сеть, то есть заранее подготовить конфигурацию и на лету изменть конфиги? Чтобы иметь возможность один раз прошить контроллеры, а затем уже на месте подключать нужное количество стендов.
2. Сможет ли центральный передатчик, тот, что в малине, подхватывать такие изменения на лету или потребуется перезагрузка малины?
3. Как перехватывать и передавать данные на контроллеры стендов? через pub/sub MQTT?
4. Не думали ли вы портировать код сервера c C# на NodeJS, чтобы вся серверная часть была на JS? А впоследствии и настройку лограм. Если да, то какие могут возникнуть сложности и потребуется ли помощь разработчика в этом направлении? За паяльник я хватаюсь совсем по дилетантски, во фьюзах путаюсь, но ноду и редиску знаю, и знаю, как из веб-интерфейса в виде JS, HTML, картинок и стилей сделать apk для android или ipa для iOS. Вероятно, мог бы поспособствовать развитию в этом направлении ))

x13dev
Сообщения: 396
Зарегистрирован: 22 окт 2012, 11:40
Откуда: Бавария

Re: Умный дом по радиоканалу

Сообщение x13dev » 12 апр 2017, 11:09

sidr писал(а): На каждом стенде будет от 5 до 200 кнопок, соединенных по 1wire
Устройства не поддерживают 1Wire, конфликтует по задержкам с радиоканалом.
Теоретически можно поставить DS2482-100 и управлять через неё по TWI.
sidr писал(а): а также от 1 до 10 метров адресной ленты WS1812B, которая зажигает светодиоды в зависимости от переданной последовательности байт
Для WS1812B нужен SPI или USART работающий как SPI.

Если отказаться от 1Wire, а кнопки подключить непосредственно к контроллеру, то нужно только написать драйвер для WS1812B и выглядит реализуемо.
sidr писал(а): 1. Так как на каждом стенде будет отдельный контроллер, но они все будут иметь одинаковую конфигурацию 1wire+лента+кнопка, возможно ли автоматически добавлять их в сеть, то есть заранее подготовить конфигурацию и на лету изменть конфиги? Чтобы иметь возможность один раз прошить контроллеры, а затем уже на месте подключать нужное количество стендов.
2. Сможет ли центральный передатчик, тот, что в малине, подхватывать такие изменения на лету или потребуется перезагрузка малины?
Подключать и отключать устройства можно в любое время.
На счёт конфигураций не понял. Если нужно менять алгоритм в процессе, то можно посмотреть в сторону EmbeddedJS - там можно готовые скрипты заливать в устройство.
sidr писал(а): 3. Как перехватывать и передавать данные на контроллеры стендов? через pub/sub MQTT?
Да. На сервере работает MQTT брокер.
sidr писал(а): 4. Не думали ли вы портировать код сервера c C# на NodeJS, чтобы вся серверная часть была на JS?
Серверную нет, а вот перевести клиента в браузер пытались.
sidr писал(а): Вероятно, мог бы поспособствовать развитию в этом направлении ))
Сейчас идёт разработка следущей версии. Если сможете занятся FrontEnd'ом через браузер, то мы будем безмерно благодарны.

sidr
Сообщения: 20
Зарегистрирован: 27 сен 2013, 09:45

Re: Умный дом по радиоканалу

Сообщение sidr » 13 апр 2017, 10:41

Если отказаться от 1Wire, а кнопки подключить непосредственно к контроллеру, то нужно только написать драйвер для WS1812B и выглядит реализуемо.
Кнопок может быть очень много, больше сотни, их количество может отличаться от стенда к стенду, и желательно последовательно, иначе весь стенд будет покрыт проводами
Теоретически можно поставить DS2482-100 и управлять через неё по TWI
Сейчас поддержки twi нет?
Подключать и отключать устройства можно в любое время.
На счёт конфигураций не понял. Если нужно менять алгоритм в процессе, то можно посмотреть в сторону EmbeddedJS - там можно готовые скрипты заливать в устройство.
Я про то, что на всех оконечных устройствах (контроллерах стенда) будет одинаковая настройка входов/выходов и одинаковое поведение. Поэтому хотелось бы запитать контроллер стенда, нажать на нем кнопку, после чего он должен добавиться в сеть и начать слать брокеру информацию о нажатых кнопках и подсвечивать ленту, получив от брокера соответствующее сообщение

Серверную нет, а вот перевести клиента в браузер пытались
А можно поподробнее, в каком виде пытылись сделать, и что именно не получилось?

x13dev
Сообщения: 396
Зарегистрирован: 22 окт 2012, 11:40
Откуда: Бавария

Re: Умный дом по радиоканалу

Сообщение x13dev » 13 апр 2017, 11:08

sidr писал(а): Кнопок может быть очень много, больше сотни, их количество может отличаться от стенда к стенду, и желательно последовательно, иначе весь стенд будет покрыт проводами
Можно поставить MCP23017 - 16 входов/выходов, управление по TWI, на шину можно подключить до 8 штук.
sidr писал(а): Сейчас поддержки twi нет?
TWI есть, нет драйвера для DS2482-100.
sidr писал(а): Я про то, что на всех оконечных устройствах (контроллерах стенда) будет одинаковая настройка входов/выходов и одинаковое поведение. Поэтому хотелось бы запитать контроллер стенда, нажать на нем кнопку, после чего он должен добавиться в сеть и начать слать брокеру информацию о нажатых кнопках и подсвечивать ленту, получив от брокера соответствующее сообщение
Без проблем.
sidr писал(а): А можно поподробнее, в каком виде пытылись сделать, и что именно не получилось?
Как-то так
В сравнении с WPF требуется слишком много усилий.

Ответить