Разработка собственного железа

kalina
Сообщения: 180
Зарегистрирован: Пн фев 22, 2016 11:01 pm
Благодарил (а): 28 раз
Поблагодарили: 90 раз

Разработка собственного железа

Сообщение kalina » Вс май 15, 2016 1:50 pm

Доброго времени суток!

Расскажу немного о том, что заставило меня создать данный пост. Итак, если я нахожусь на данном форуме, думаю всем понятно, что тема умного дома и всего с ним связанного для меня не просто пустой звук))) Сам я инженер-электронщик, и имею опыт в разработке всякого рода девайсов. На протяжении долгого времени искал такую платформу как MD. Наконец нашёл и теперь хочу сосредоточиться на разработке устройств для данной платформы. Процесс разработки будет носить скорее радиолюбительский характер, хотя....если кто-то сможет на этом зарабатывать, я буду рад.
Многие люди могут сразу сослаться на ардуино и прочие готовые решения, так вот, кого это устраивает, могут дальше не читать.

Что я ожидаю от поста? Ответ следующий - найти похожих на себя людей, которые имеют видение отличное от уже готовых решений, возможно, имеют уже какие-то наработки своих решений и готовых вместе со мной развивать данную тему.

Чем я готов вложиться? Я готов сам (или совместно, если будут желающие) разработать Э3, п/п, изготовить экспериментальные образцы и начать их испытывать. Результатами своей работы я готов полностью поделиться с сообществом, т.е. все проекты и наработки, полученные в процессе, будут выложены. Если я не ошибаюсь, это называется open source)))

Что я ожидаю от участников? Хотелось бы побольше критики и обсуждений. Предложений о том, кто и что хотел бы видеть у себя и по каким соображениям? Иметь интерес самим вносить изменения в проекты, и, конечно, в дальнейшем использовать разработанные устройства у себя дома.

Работа, проделанная мною на текущий момент:

1. Разработано три типа исполнительных устройств на базе реле, симистора и реле.
RLD.png
RLD.png (640.23 КБ) 13576 просмотров
И в живую :
RLD_.png
RLD_.png (480.47 КБ) 13576 просмотров
Немного подробней...

Конструктив
- п/п не предусмотрена для установки в конкретный корпус;

Аппаратно
- микроконтроллер SAMD20E16
- радиоканал 433МГц на базе RFM69;
- безтрансформаторный БП на базе SR086;
- управление реле;
- управление симистором;
- управление полевыми транзисторами;

Программно:
- реализован bootloader по радиоканалу;
- управление реле, симистором и полевиками при получении команд по радиоканалу;

Данные девайсы я уже начал тестировать у себя дома. В процессе тестирования всплыли некоторые недостатки, но не будем о этом....)))

2. Разработан мост USB<>RFM, который должен выполнять функции связи MD с девайсами.
USB2RFM.png
USB2RFM.png (134.7 КБ) 13576 просмотров
И в живую :
USB2RFM_.png
USB2RFM_.png (884.86 КБ) 13576 просмотров
Конструктив
- установка в корпус G1901-438U (Gainta);

Аппаратно
- микроконтроллер SAMD20E16
- радиоканал 433МГц на базе RFM69;
- преобразователь интерфейса CP2102;

Программно:
- в разработке bootloader по UART;
- в разработке интерпретаор команд от MD;

Нахожусь в процессе написания софта. Проверил железо, всё работает. Правда с установкой в корпус возникли проблемы. В дальнейшем решим.


Планы на ближайшее будущее.

Разработать устройство для установки в распред и установочную коробки. Уже выбран их тип - это коробки 67/3 и KU 68 фирмы KOPOS.
Сделан контур печатной платы.
RLD-06.png
RLD-06.png (137.52 КБ) 13576 просмотров
Есть предварительный перечень планируемой комплектации платы (список большой он должен быть либо уменьшен, либо выполнен в модификациях плат):

- радиоканал RFM69 на 433МГц;
- спиральная антенна HopeRF на 433МГц;
- WiFi модуль ESP8266;
- БП HI-Link модель HLK-PM01;
- датчик напряжения 220В и тока на 15-20А;
- ИК передатчик;
- реле/симистор/полевик;
- датчики влажности/температуры/давления/освещения/...;
- светодиодная индикация;

Вот с этой разработки хотелось бы и начать обсуждение... :idea:

В принципе, я рассказал всё что хотел. Если что-то не так - прошу прощения. Если будут вопросы - пишите.
За это сообщение автора kalina поблагодарили (всего 2):
cg_shura (Вс май 22, 2016 6:34 pm) • ElectronicsInFocus (Пн июн 27, 2016 12:33 pm)
Рейтинг: 2.47%
Raspberry PI3 + образ 3.31 | MDMSGate | Lighting | LightingX2 | Power | Multisensor
AndrewS
Сообщения: 121
Зарегистрирован: Пт апр 15, 2016 10:18 am
Откуда: 21RU
Благодарил (а): 4 раза
Поблагодарили: 19 раз
Контактная информация:

Re: Разработка собственного железа

Сообщение AndrewS » Вс май 15, 2016 2:52 pm

Вечный вопрос - провода или радиоканал? Разработка интересная, но вот массово вряд ли заинтересует, почему?
1. Это не отдельное устройство, которое может работать автономно, возможно пока, но пока нет доступной документации и разумной стоимости, это дополнительный барьер.
2. Разработка интересна, если провода уже проложены и стены отделаны. А если нет, то проще проложить витую пару или 2-х проводную линию и по ней обмениваться с устройством сигналом. Это и дешевле и надежнее и можно в любое время изменить конфигурацию не меняя полностью конструкцию.
3. Вай-фай частоты не бесконечны, у меня вот в квартире только видимых за 20, у меня роутер не из самых плохих, но вай-фай отваливается, если долгое время нет связи, ставил и принудительно и автоматически и смотрел какие частоты менее загружены, но вот пока так. Уйдут все из дома-приходишь, связи нет, приходится перезагружать роутер.

Это критика, а если о положительных моментах, то вот наверно так и создаются проекты навроде лампочки LIFX
Слабость - велика, а сила - ничтожна.
ARMBIAN 5.38 stable Debian GNU/Linux 9 (stretch) 4.14.18-sunxi
System load: 2.03 1.85 1.78 Up time: 23 days
Memory usage: 65 % of 2014MB CPU temp: 37°C
Orange Pi Plus 2 H3 Quad Core 1.6GHZ 2GB
serghei
Сообщения: 2547
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 295 раз
Поблагодарили: 273 раза

Re: Разработка собственного железа

Сообщение serghei » Вс май 15, 2016 3:54 pm

kalina писал(а):найти похожих на себя людей.Хотелось бы побольше критики и обсуждений. Предложений о том, кто и что хотел бы видеть у себя и по каким соображениям?
Отличная тема! Вот только то,что Вы озвучили- это только вершина айсберга.Отдельно изготовленные деваисы в виде
печатных плат могут устроить только энтузиастов наподобие нас ну и инсталяторов-продавцов умных домов.
Моё мнение-сначала надо нарисовать всю систему как Вы её видите-начиная с сервера (малина,ноут,башня или что либо),потом какая платформа( МД или что нибудь другое),затем (а для конечного потребителя главное) интерфейс.
И вот когда мы будем знать и видеть все хотелки на экране-можно заниматься реализацией в железе.
Я сам уже полгода бьюсь над реализацией конструктива для АМС по части мониторинга электро энергии.Перепробовал
кучу вариантов и пока остановился на щитовом варианте " а-ля МЕГА-Д". АМС уже 2 недели стоит на боевом дежурстве.
И вообще-идей очень много,осталось успеть всё реализовать.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
kalina
Сообщения: 180
Зарегистрирован: Пн фев 22, 2016 11:01 pm
Благодарил (а): 28 раз
Поблагодарили: 90 раз

Re: Разработка собственного железа

Сообщение kalina » Вс май 15, 2016 6:55 pm

serghei писал(а): Моё мнение-сначала надо нарисовать всю систему как Вы её видите-начиная с сервера (малина,ноут,башня или что либо),потом какая платформа( МД или что нибудь другое),затем (а для конечного потребителя главное) интерфейс.
Да, согласен. Сейчас попробую изложить как я собираюсь реализовывать свой умный дом. Привожу черной набросок своего видения...
Concept.png
Concept.png (239.27 КБ) 13527 просмотров
1. За основу (сервер) я взял обычный китайский планшет ONDA V891. В ОС Windows установил программную платформу MD. Исходя из отсутствия знаний линукса, я решил что другого варианта для меня нет. Планирую его инсталлировать в месте, где обычно провожу больше всего времени - это между комнатой и кухней, т.е. в коридоре (на стене))) Планшет будет постоянно включен, а зарядка будет осуществляться через активный USB hub. Подключение к интернету посредством Wi-Fi. Для отладки платформы MD использую TeamViewer, очень удобно.

2. На телефонах членов своей семьи установил клиента MajorDroid. Связь с сервером через Wi-Fi (если дома) либо 3G(если за его пределами).

3. Посредством Wi-Fi планирую подключить IP камеру и смарт ТВ.

4. Также, благодаря USB хабу, есть возможность подключить популярные устройства известных производителей.

5. Ну и самое главное. Правая часть отображает то, что я хочу разработать. Это набор исполнительных устройств и различного рода датчиков. Отвечать за связь между разрабатываемыми устройствами и MD будет "мост" USB<>RFM (см. первый пост). Суть следующая: из MD, посредством сценария, будет приходить команда, которая через VCP попадает на "мост", далее микроконтроллер "моста" обрабатывает её и передаёт в эфир конкретному устройству (на определённый адрес). Устройство получит команду и выполнит её. Ответом от устройства будет служить подтверждение выполнение команды. Информация от датчиков будет приходить по радиоканалу на "мост", преобразовываться микроконтроллером и отправляться в MD.

Всё очень кратко. Если что-то не понятно - уточняйте.
serghei писал(а): Отдельно изготовленные деваисы в виде печатных плат могут устроить только энтузиастов наподобие нас ...
Они нас устроят, если мы их сделаем)))
serghei писал(а): Я сам уже полгода бьюсь над реализацией конструктива для АМС ...
А что такое АМС?
AndrewS писал(а): Вечный вопрос - провода или радиоканал?
Меня много лет назад беспокоил вопрос: С или ассемблер (под микроконтроллеры)? Ну, что я могу сказать, надо определяться...
AndrewS писал(а): Вай-фай частоты не бесконечны, у меня вот в квартире только видимых за 20, у меня роутер не из самых плохих, но вай-фай отваливается, если долгое время нет связи, ставил и принудительно и автоматически и смотрел какие частоты менее загружены, но вот пока так. Уйдут все из дома-приходишь, связи нет, приходится перезагружать роутер.
Wi-Fi жутко не люблю сам, но надо шагать в ногу со временем, иначе можно оказаться за бортом.
Raspberry PI3 + образ 3.31 | MDMSGate | Lighting | LightingX2 | Power | Multisensor
akouz
Сообщения: 244
Зарегистрирован: Ср июл 09, 2014 3:48 pm
Благодарил (а): 6 раз
Поблагодарили: 40 раз

Re: Разработка собственного железа

Сообщение akouz » Пн май 16, 2016 2:32 am

Железо сделать проблем нет. Проблема в том, какие протоколы использовать и откуда взять фирмварь и софт. Если ограничиться тем, что может потянуть один человек за более-менее разумное время, то система получится ограниченной. В частности, будет работать у разработчика в доме, и все, не будет ни переносимости, ни масштабируемости, ни дружелюбности к новым пользователям. А если замаxиваться на систему, сопоставимую, например, с KNX, в одиночку тяжело, практически невозможно. Именно из-за софта, а не из-за железа.

Я вот, например, зашился, ковыряю проводную систему помаленьку, конца-края не видно. А беспроводная у меня уже несколько лет назад была разработана, тоже на 433 МГц, со своим протоколом, с батарейным питанием узлов. Но забросил. Потому что батарейки менять будет лениво, а если к устройству приходит провод питания, то какой смысл в радиоканале.
akouz
Сообщения: 244
Зарегистрирован: Ср июл 09, 2014 3:48 pm
Благодарил (а): 6 раз
Поблагодарили: 40 раз

Re: Разработка собственного железа

Сообщение akouz » Пн май 16, 2016 4:16 am

kalina писал(а): 5. Ну и самое главное. Правая часть отображает то, что я хочу разработать. Это набор исполнительных устройств и различного рода датчиков. Отвечать за связь между разрабатываемыми устройствами и MD будет "мост" USB<>RFM (см. первый пост). Суть следующая: из MD, посредством сценария, будет приходить команда, которая через VCP попадает на "мост", далее микроконтроллер "моста" обрабатывает её и передаёт в эфир конкретному устройству (на определённый адрес). Устройство получит команду и выполнит её. Ответом от устройства будет служить подтверждение выполнение команды. Информация от датчиков будет приходить по радиоканалу на "мост", преобразовываться микроконтроллером и отправляться в MD.
То есть, вы делаете централизованную систему. Планшет с МД отключился - вся система загнулась.

Мне централизованные системы неинтересны. Я делаю децентрализованную систему, наподобие KNX или C-bus, которая будет продолжать работать если выйдет из строя центральный компютер, отвалится интернет, Wi-Fi, отрубится питание 220В, и т.п. Для начала я сделал автономное питание - довольно большой свинцовый аккумулятор, заряжаемый от солнечной батареи. Питание и сигналы - по кабелю Cat5.
eygen
Сообщения: 383
Зарегистрирован: Чт сен 25, 2014 5:37 pm
Откуда: Екатеринбург
Благодарил (а): 25 раз
Поблагодарили: 50 раз

Re: Разработка собственного железа

Сообщение eygen » Пн май 16, 2016 7:45 am

akouz писал(а):
kalina писал(а): 5. Ну и самое главное. Правая часть отображает то, что я хочу разработать. Это набор исполнительных устройств и различного рода датчиков. Отвечать за связь между разрабатываемыми устройствами и MD будет "мост" USB<>RFM (см. первый пост). Суть следующая: из MD, посредством сценария, будет приходить команда, которая через VCP попадает на "мост", далее микроконтроллер "моста" обрабатывает её и передаёт в эфир конкретному устройству (на определённый адрес). Устройство получит команду и выполнит её. Ответом от устройства будет служить подтверждение выполнение команды. Информация от датчиков будет приходить по радиоканалу на "мост", преобразовываться микроконтроллером и отправляться в MD.
То есть, вы делаете централизованную систему. Планшет с МД отключился - вся система загнулась.

Мне централизованные системы неинтересны. Я делаю децентрализованную систему, наподобие KNX или C-bus, которая будет продолжать работать если выйдет из строя центральный компютер, отвалится интернет, Wi-Fi, отрубится питание 220В, и т.п. Для начала я сделал автономное питание - довольно большой свинцовый аккумулятор, заряжаемый от солнечной батареи. Питание и сигналы - по кабелю Cat5.
Это уже очень интересно... Можете рассказать что и как у вас устроено? Особенно про автономку...
akouz
Сообщения: 244
Зарегистрирован: Ср июл 09, 2014 3:48 pm
Благодарил (а): 6 раз
Поблагодарили: 40 раз

Re: Разработка собственного железа

Сообщение akouz » Пн май 16, 2016 8:26 am

eygen писал(а): Это уже очень интересно... Можете рассказать что и как у вас устроено? Особенно про автономку...
Год назад было обсуждение: http://majordomo.smartliving.ru/forum/v ... f=8&t=2174

С тех пор я отказался от использования CAN и делаю интерфейс на обычных UART, но с шинниками CAN. Чтобы можно было узлы делать на Ардуино.
kalina
Сообщения: 180
Зарегистрирован: Пн фев 22, 2016 11:01 pm
Благодарил (а): 28 раз
Поблагодарили: 90 раз

Re: Разработка собственного железа

Сообщение kalina » Пн май 16, 2016 9:29 am

akouz писал(а):Железо сделать проблем нет. Проблема в том, какие протоколы использовать и откуда взять фирмварь и софт. Если ограничиться тем, что может потянуть один человек за более-менее разумное время, то система получится ограниченной. В частности, будет работать у разработчика в доме, и все, не будет ни переносимости, ни масштабируемости, ни дружелюбности к новым пользователям. А если замаxиваться на систему, сопоставимую, например, с KNX, в одиночку тяжело, практически невозможно. Именно из-за софта, а не из-за железа..
Насчёт протоколов, раз уж разрабатываем сами железо, то стыдно будет у кого-то заимствовать протокол, скорее всего можно будет что-то хорошее позаимствовать (ИМХО). У меня есть наброски своего протокола, я его оформлю и выложу.
Вот только не могу понять о каком софте вы говорите? Если это софт для микроконтроллера устройства, то его задача принять по радиоканалу команду и выполнить. Вроде ничего сложного. Конечно, можно добавить туда выполнение всякого рода скриптов, но это будет потом, а пока надо получить систему более простую и стабильную. Как я уже говорил, для микроконтроллера устройств уже разработан bootloader для работы по радиоканалу. Думаю это очень облегчит дальнейшую разработку. И, кстати, если кто-то имеет свой протокол - поделитесь... Еще раз насчёт софта, возможно вы не поняли главную суть, за всё это будет отвечать программная платформа MD, а это и переносимость и масштабируемость и дружелюбность к новым пользователям.
akouz писал(а): беспроводная у меня уже несколько лет назад была разработана, тоже на 433 МГц, со своим протоколом, с батарейным питанием узлов. Но забросил. Потому что батарейки менять будет лениво, а если к устройству приходит провод питания, то какой смысл в радиоканале.
Значит нам с вами есть о чём поговорить))) Про батарейки я пока (до получения стабильной и отлаженной работы системы) хочу забыть, ведь в места где будут устанавливаться устройства, уже будет подведено 220В (ведь надо что то коммутировать), а дальше это дело техники. Смысл есть, он заключается в том, что не надо вести цепи(шины) управления, для меня это важно, т.к. сделан ремонт. А вообще, какая разница??? На плату можно поставить микруху 485 и тяните куда угодно, на уровне устройства ему будет всё равно откуда получать данные...
Raspberry PI3 + образ 3.31 | MDMSGate | Lighting | LightingX2 | Power | Multisensor
akouz
Сообщения: 244
Зарегистрирован: Ср июл 09, 2014 3:48 pm
Благодарил (а): 6 раз
Поблагодарили: 40 раз

Re: Разработка собственного железа

Сообщение akouz » Пн май 16, 2016 10:07 am

kalina писал(а): Вот только не могу понять о каком софте вы говорите? Если это софт для микроконтроллера устройства, то его задача принять по радиоканалу команду и выполнить. Вроде ничего сложного.
Если устройство все время слушает эфир, то оно потребляет много энергии, миллиампер 15...20 как правило. Такое устройство с батарейным питанием делать неразумно, ему нужен какой-то иной источник питания.

Если же устройство питается от батареек и большую часть времени спит, а прослушивает эфир изредка, то начинаются всякие проблемы. Как с таким устройством связаться? Наиболее распространенный вариант - устройство просыпается, скажем, раз в минуту и посылает в эфир короткий запрос, мол, "какие будут указания"? Если никаких, то оно опять спит. А ели есть указания, то выполняет полученную команду. Так работает Зигби, например.

Ну и начинаются проблемы. А что будет если два или три устройства проснутся одновременно и пошлют запрос одновременно? А как часто должно просыпаться устройство, неужто всегда надо ждать целую минуту, чтобы включить релюшку? И так далее.
akouz писал(а): Про батарейки я пока (до получения стабильной и отлаженной работы системы) хочу забыть
А потом будет поздно.
akouz писал(а): А вообще, какая разница??? На плату можно поставить микруху 485 и тяните куда угодно, на уровне устройства ему будет всё равно откуда получать данные...
Простой радиоканал - это топология "звезда", один мастер в центре, все остальные - его слуги. Мастер по очереди разговаривает со слугами.

А вот, например, KNX или CAN - это совершенно иная идеология: "производитель - потребитель". Любое устройство может в любой момент времени получить канал связи в свое распоряжение и отправить широковещательное сообщение, которое одновременно получат и обработают все, кому эта информация интересна. При этом коллизий не возникает, они разрешаются на аппаратном уровне. На радиоканале такого сделать не получится. На RS485, кстати, тоже.
Ответить