Оглавление:
- Шаг 1: Дизайн
- Шаг 2: Комплект BluChip Explorer
- Шаг 3. Приложение NRF Connect
- Шаг 4: Программирование BluChip
- Шаг 5: Создание автоматизированных штор
- Шаг 6: Конфигурация прошивки BluChip
- Шаг 7: Резюме
Видео: Автоматические домашние шторы - мини-проект с модулем MakerChips 'BluChip (nRF51 BLE): 7 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Представьте, что вы просыпаетесь и хотите, чтобы в окна проникал солнечный свет, или закрываете шторы, чтобы вы могли спать подольше, не пытаясь подойти к занавескам, а просто нажав кнопку на смартфоне. С автоматизированной системой домашних занавесей вы можете добиться этого с помощью компонентов, которые стоят не более 90 долларов!
См. Этот учебник на Github
Шаг 1: Дизайн
В основе автоматизированной системы домашних занавесей лежит модуль BluChip от MakerChips.
BluChip - это крошечный модуль Bluetooth размером 16,6x11,15 мм, который можно использовать в качестве периферийного устройства для смартфонов через BTLE.
Щелкните здесь, чтобы ознакомиться с технологией Bluetooth Low Energy (BTLE).
Модуль состоит из SoC nRF51 от Nordic Semiconductors, отличной платформы для приложений BLE, поскольку он поддерживает множество интегрированных функций в приложениях Android и Apple.
Шаг 2: Комплект BluChip Explorer
Для создания этого проекта я получил комплект BluChip Explorer от MakerChips, который прибыл в двух отдельных коробках: одна для программатора CMSIS-DAP, а другая - с BluChip на макетной плате с 2 светодиодами RGB, фоторезистором и батареей CR2032.
Как вы заметили, модуль BluChip чрезвычайно мал, что делает его идеальным для небольших встраиваемых проектов Bluetooth с низким энергопотреблением. Он умещается на макетной плате, занимая всего лишь 6x4 0,1-дюймовых разъемов, и имеет дополнительные 0,05-дюймовые разъемы на верхней части платы, что довольно впечатляюще для коммерчески сертифицированного корпуса FCC!
Вот некоторые ключевые особенности BluChip с веб-сайта MakerChips:
- 14 доступных контактов GPIO
- 32-битный процессор ARM Cortex M0, 256 КБ флэш-памяти и 32 КБ ОЗУ
- 16,6 мм x 11,15 мм Наименьший из имеющихся макетных модулей Bluetooth®
- Блок питания поддерживает 1,8 В - 3,6 В
-
Возможности Bluetooth
- BTLE - Bluetooth с низким энергопотреблением - (BLE, BT 4.1)
- Bluetooth® и квалификация FCC, IC в Японии
- Встроенные системные часы 32 МГц
- Выходная мощность: +4 дБм тип.
-
Частота: от 2402 до 2480 МГц
Встроенная высокоэффективная диаграмма направленности антенны
- Одномодовый Bluetooth® Smart Slave / Master
- Поддерживаемые интерфейсы: SPI, UART, I2C и 8/9/10-битный АЦП
-
Два набора программирующих контактов
- Заголовки 0,05 дюйма для удобного подключения к устройствам CMSIS-DAP и J-Link
- .1-дюймовые заголовки для подключения к макетным платам
- Программно управляемый красный светодиод
Шаг 3. Приложение NRF Connect
Как только вы открываете коробку BluChip explorer, вы видите, что она оживает с мигающими светодиодами, довольно увлекательное зрелище, не так ли?
Чтобы узнать, что ждет этот модуль BLE, давайте продолжим и установим приложение nRF Connect из Google Play или App Store.
Мы собираемся подключиться к BluChip с помощью нашего телефона, поэтому откройте приложение nRF Connect, просмотрите экран приветствия и нажмите «Включить», чтобы включить Bluetooth. Затем нажмите «Сканировать», и вскоре вы обнаружите, что ваше устройство BluChip указано на вкладке «Сканер».
Прежде чем мы действительно подключимся к BluChip, давайте возьмем светодиод и поместим его на макетную плату рядом с контактами 026 (+ ve) и 021 (-ve). Светодиод должен немедленно загореться, потому что вывод 026 выдает 3,3 В (высокий логический уровень), а вывод 021 - низкий логический уровень (земля).
Идите дальше и нажмите «Подключиться», чтобы установить соединение между вашим смартфоном и BluChip, после чего вы перейдете на вкладку клиента устройства в приложении.
На вкладке клиента BluChip отображаются все службы, доступные на вашем устройстве. Что нас здесь интересует, так это BlueChip GPIO Service (указанная как Unknown Service). Нажмите на него, а затем нажмите на направленную вверх стрелку рядом с характеристикой модуляции GPIO (указана как неизвестная характеристика).
Появится всплывающее окно со значением записи, в котором вы сможете отправить данные на ваше устройство BluChip. В нашем случае мы хотим выключить светодиод, поэтому нажмите на стрелку рядом с BYTE ARRAY и измените формат данных на UINT 8. Мы отправим номер пина в качестве первого значения, поэтому введите 21 для pin021. Нажмите на Добавить значение, чтобы отправить следующий фрагмент данных, состояние которого должен быть установлен (шестнадцатеричный формат BYTE). Чтобы выключить светодиод, мы установим контакт 021 на 3,3 В (высокий логический уровень), поэтому введите 01 и нажмите «Отправить».
Светодиод мгновенно гаснет! Чтобы снова включить светодиод, отправьте значение 0x00 (логический уровень LOW) на контакт 021. Как видно из приведенной ниже характеристики, отображается отправленное значение (0x) 15-01. {[(десятичный UINT8) 21 = (шестнадцатеричный БАЙТ) 0x15] + (шестнадцатеричный БАЙТ) 0x01 => (шестнадцатеричный БАЙТ) 0x1501}
Если вы выберете сохранить эти значения во всплывающем окне «Записать значение», присвоив ему имя, а затем нажав «Сохранить», вы сможете загрузить их в будущем в качестве предустановок для простой модуляции GPIO!
Шаг 4: Программирование BluChip
Из видео выше вы могли заметить, что имя устройства BluChip на моем телефоне отличается от вашего, так как же нам изменить его по своему вкусу?
Прошивка приложения, работающая на BluChip, служит периферийным устройством (подчиненным) через BLE для подключенных к нему центральных устройств (главных), таких как смартфоны. Чтобы изменить имя нашего устройства, давайте перейдем к прошивке прошивки приложения на наш BluChip.
В комплект BluChip Explorer входит программатор ARM (CMSIS-DAP). Компания MakerChips предоставила изящное руководство по деталям прошивки прошивки на BluChip с помощью CMSIS-DAP.
Чтобы скомпилировать прошивку в шестнадцатеричный файл и прошить его, нам понадобятся Keil, nRF51 Software Development Kit (SDK) и прошивка BluChip. Скачайте их по ссылкам в разделе «Программное обеспечение» на странице MakerChips «Программирование BluChip с помощью CMSIS-DAP и Keil».
Установите Keil, затем выполните шаги 1-3 в разделе «Создание шестнадцатеричного файла».
На этом этапе вы можете перейти к шагу 4, восстановление всех целевых файлов.
Если вы получите сообщение об ошибке относительно "core_cm0.h", вам нужно будет добавить его путь к проекту, чтобы скомпилировать его.
Нам просто нужно будет найти файл и найти его каталог, который называется «\ components / toolchain / gcc».
Включим этот путь в наш проект. Щелкните Options for Target, перейдите на вкладку C / C ++ и укажите путь, как показано на рисунке 16.
После включения необходимых зависимостей наш проект компилируется, и теперь мы можем просматривать скомпилированный вывод, настраиваемый шестнадцатеричный файл в "nRF51_SDK_10.0.0_dc26b5e / examples / ble_peripheral / ble_app_ahc-master / bluchip / s110_with_dfu / arm4 / _buildnrf5141_xxac_s".
Чтобы прошить шестнадцатеричный файл на BluChip, выполните шаги 1-8 в разделе «Передача шестнадцатеричного файла».
Теперь, когда вы загрузили прошивку на BluChip с пользовательским именем устройства, запустите приложение nRF Connect и выполните поиск своего устройства. Вы заметите, что теперь оно названо в честь того, что вы определили в DEVICE_NAME в прошивке!
На следующем этапе мы начнем настраивать оборудование, электронику и программное обеспечение нашей автоматизированной системы домашних штор.
Шаг 5: Создание автоматизированных штор
Ознакомившись с процессом компиляции и прошивки нашей прошивки, давайте перейдем к созданию наших собственных занавесок для bluetooth!
Шаговый двигатель будет использоваться для привода зубчатого ремня, который открывает и закрывает шторы. Шаговый двигатель приводится в действие микросхемой драйвера Half-H, которой будет управлять BluChip.
Для питания мы будем использовать стабилизатор напряжения постоянного и переменного тока 12 В, который подается на двигатель, вместе с регулятором напряжения постоянного и постоянного тока LM317 для понижения напряжения с 12 В до 3,3 В, которые будут питать микросхему BluChip и шагового драйвера.
Вы можете получить свой собственный модуль BluChip в новом магазине MakerChips на Tindie или на веб-сайте MakerChips.
Давайте возьмем перечисленные ниже детали в дополнение к BluChip Explorer Kit, чтобы начать сборку автоматических штор:
- Адаптер питания 12В 1А $ 3,40
- Баррель Джек $ 0,68
- Стабилизатор напряжения LM317T $ 0,80
- Резисторы (200 и 330 Ом) 1,69 $.
- Шаговый драйвер L293D $ 1,63
- Униполярный шаговый двигатель 8 долларов США (или 1,66 доллара США <= преобразование этого меньшего униполярного двигателя в биполярный шаговый двигатель)
- Ремень ГРМ 6мм $ 7.31
- Шестерня 6 мм $ 0,54 (или для 3D-печати из Thingiverse)
- Шкив 6 мм $ 1,17 (или его можно распечатать на 3D-принтере Thingiverse)
- Концевой выключатель x2 (опция) $ 1,34
- Коробка для приложений (опционально) $ 1,06
- Провода перемычки макетной платы $ 2,09
- Проволока для перемычек Dupont $ 2,80
- Резинки $ 1.13
- Галстуки-закрутки $ 3,22
- Провод 22 AWG (опционально) $ 1,22
- Застежки-молнии (необязательно) 0,63 $
- Термоусадочная трубка (опционально) $ 1,97
Инструменты (необязательно):
- Пистолет для горячего клея $ 3,75
- Паяльник $ 6,79
Загрузите Bill of Materials с GitHub (Amazon)
На рисунке 20 показано, как вы собираетесь подключить систему в зависимости от того, какие функции вы решите добавить. Если вы хотите более точное движение, вы должны добавить в проект концевые выключатели.
Концевые выключатели - это конечные точки на шторах, которые сообщают BluChip, когда он открывается или закрывается. Без концевых выключателей вам нужно было бы настроить прошивку, чтобы указать, как далеко сдвигаются ваши шторы, в следующем разделе «Конфигурация прошивки».
Рисунок 20 также включает дополнительный фоторезистор, который позволяет определять дневное и ночное время, также настраиваемый в разделе «Конфигурация прошивки».
Начните сборку оборудования с установки шагового двигателя, шкива и зубчатого ремня на верхнюю часть штор. (Рисунок 21)
Временно натяните ремень ГРМ резинкой. Позже, перед завершением проекта, вы собираетесь связать его молнией, чтобы удерживать его надолго.
Чтобы прикрепить занавески к ремню ГРМ, оберните петлю Wire Ties вокруг ремня и крючка для штор.
Чтобы лучше понять, как прикрепить шторы к ремню, следуйте рисунку 22. Вы привяжете левую шторку к задней части ремня ГРМ проволочной стяжкой, а правую шторку - к передней части ремня ГРМ. проволочной стяжкой.
Как только вы закрепите ремень и привяжете занавеску, снимите шаговый двигатель, чтобы мы могли приступить к сборке и тестированию электронной схемы, которая будет им управлять. Начните сборку электроники, поместив Bluchip, L293d IC и регулятор напряжения LM317t на макетную плату в соответствии с к рисунку 20.
Вставьте резисторы на 200 и 330 Ом в соответствии с рисунком 20. Резисторы регулируют выход LM317 так, чтобы он давал ~ 3,3 В. (Рисунок 24)
Вставьте перемычку, а затем подключите бочкообразный разъем, как показано на Рисунке 26.
Давайте подключим наш адаптер питания к настенной розетке и подключим адаптер к цилиндрическому разъему, чтобы проверить напряжение, как показано на рисунке 27.
После определения правильного напряжения снимите разъем питания и начните размещать оставшиеся перемычки на макетной плате в соответствии с рисунком 20.
Далее мы собираемся подключить наш биполярный шаговый двигатель к микросхеме L293d.
Сначала вставьте перемычки Dupont в разъем шагового двигателя, как показано на Рисунке 29.
Чтобы узнать, какой провод куда идет, следуйте схеме на рисунке 30.
Как видно на схеме, выводы одной катушки идут к контактам 2 и 6 L293D. Выводы от другой катушки идут на Pin11 и Pin14.
Модифицированный биполярный шаговый двигатель 28BYJ-48 имеет четыре цветных провода, как показано на рисунке 31.
Мы подключаем синий к контакту 3, желтый к контакту 6, оранжевый к контакту 11 и розовый к контакту 14 на L293d.
Основная схема готова!
Если вы хотите установить концевые выключатели, подключите выводы NO & C к проводу 22AWG. На другом конце прикрепите перемычки DuPont, чтобы сформировать выводы, которые поместятся на макетной плате. (Рисунок 32)
Вы можете закрепить их на карнизе, как показано на Рисунке 33, с помощью резиновых лент или, если у вас есть пистолет для горячего клея, вы можете прикрепить его к рейке молнией, а затем нанести большое количество горячего клея, чтобы он не двигался. около.
Чтобы получить представление о том, где их разместить, см. Рисунок 34.
Один концевой выключатель прикреплен к дальнему левому концу карниза, между первым крюком направляющей и вторым, так что, когда занавески открываются, крюк прижимается к переключателю и активирует его. Другой концевой выключатель расположен прямо в центре рельса, обращен влево. Таким образом, он активируется, когда шторы закрываются.
Вставьте выводы концевого выключателя на макетную плату, как показано на рисунке 20.
Наконец, если вы хотите, чтобы ваши шторы открывались при восходе солнца и закрывались, когда оно садится, вам необходимо подключить фоторезистор, как показано на рис. 36, и установить его близко к тому месту, где он имеет доступ к солнечному свету во время рассвета.
После того, как вы закончите настройку макетной платы, приготовьтесь и подключите свой программатор к BluChip, чтобы прошить прошивку. Загрузите прошивку с GitHub и извлеките ее в каталог SDK, как вы это делали раньше.
Загрузите ble_app_ahc.zip с Github.
Откройте проект, затем скомпилируйте и загрузите прошивку на BluChip.
Перед тестированием мы закроем макетную плату в коробку и проделаем отверстия для проводов и светодиода состояния шторки.
Поместите макетную плату в основание корпуса и сделайте отверстие для проводов. Это отверстие также служит точкой для связи BluChip с другими устройствами через антенну. (Рисунок 37)
Просверлите отверстие размером со светодиод на боковой стороне корпуса и установите на него светодиод. Подключите светодиод в соответствии с рисунком 20.
Найдите подходящее место для крепления монтажной коробки слева от карниза, рядом с розеткой. Снова установите двигатель и выполните окончательную проверку натяжения ремня ГРМ, убедившись, что нет провисания. (Рисунок 39)
Пришло время протестировать собранную нами систему. Вставьте адаптер питания и запустите приложение nRF Connect. Вы обнаружите устройство под названием Curtains. BluChip.
Подключитесь к нему, отправьте значение UINT8 1 (Открытые шторы) для Неизвестной характеристики в Неизвестной службе и наблюдайте, как открываются шторы!
Теперь, когда вы успешно протестировали свою систему, давайте посмотрим на настройку кода, запускающего шоу на BluChip.
Шаг 6: Конфигурация прошивки BluChip
Проект прошивки Automated Home Curtain состоит в основном из 4 файлов: main.c, ahc.c, ble_ahc_service.c и ble_ahc_service.h.
При создании электроники и оборудования у нас была возможность выбрать, хотим ли мы, чтобы концевые выключатели повышали точность нашей автоматизированной системы.
В коде из ahc.h мы видим #define для LIMIT_SWITCHES.
Компиляция и мигание кода с помощью #define LIMIT_SWITCHES позволяет использовать оба концевых выключателя для обнаружения, когда завесы открываются и закрываются.
Переименование на #undef LIMIT_SWITCHES необходимо, если вы решили не включать концевые выключатели в свой проект. В этом случае вам нужно будет точно настроить расстояние, на которое перемещается ваш занавес, в переменных CURTAIN_OPEN_STEPS и CURTAIN_CLOSE_STEPS. Отрегулируйте эти значения, чтобы увеличить или уменьшить расстояние перемещения полотна.
Другой вариант, добавление фоторезистора, можно включить, изменив #undef LDR на #define LDR. LDR означает светозависимый резистор, также известный как фоторезистор. Когда мы включаем LDR, фоторезистор знает, когда на улице светло или темно, и помогает вам закрывать или открывать шторы в начале или в конце дня.
Помимо настройки концевых выключателей и фоторезистора, давайте взглянем на некоторые другие основные блоки кода, которые позволяют автоматически открывать и закрывать шторы.
Файлы ble_ahc_service.c и ble_ahc_service.h содержат код, который передает данные с вашего телефона на BluChip.
Когда BluChip получает данные, он анализирует их в зависимости от того, отправлено ли значение 0 или 1. Затем он активирует светодиодный индикатор состояния, выполняет движение двигателя, а затем отключает светодиод, сигнализирующий о завершении.
Функция ahc_init () из ahc.h запускается в начале основного цикла, инициализируя все контакты на BluChip.
Шаг 7: Резюме
В заключение, это был чрезвычайно увлекательный и довольно простой проект для изучения основ BLE. Тот факт, что модуль коммутации BluChip плотно помещается на макетной плате, позволяет легко и быстро создать прототип на любой макетной плате, которая может быть у вас под рукой.
Я бы сказал, что после создания своих автоматических штор я уже думал о различных других вещах, к которым можно подключить BluChip, включая умные неопиксели, OLED для создания цифровых часов, робота, управляемого смартфоном, и многие другие маломощные электронные проекты. идеи, которые потребуют компактной беспроводной связи!
Любой, кто проявляет большой интерес к электронике и программированию, будет приятно удивлен тем, что предлагает BluChip, а также удобством настройки и внедрения BLE, чтобы превратить проекты в еще более крутые.
Сейчас я снова могу наслаждаться своими удобными автоматизированными домашними шторами.
Рекомендуемые:
Автоматические музыкальные рождественские огни своими руками (MSGEQ7 + Arduino): 6 шагов (с изображениями)
Автоматические музыкальные рождественские огни своими руками (MSGEQ7 + Arduino): поэтому каждый год я говорю, что собираюсь сделать это, и никогда не доберусь до этого, потому что я много откладываю. 2020 год - это год перемен, поэтому я говорю, что это год, чтобы сделать это. Надеюсь, вам понравится, и вы сделаете свои собственные музыкальные рождественские огни. Это будет
Бумажные карманные домашние животные: 5 шагов (с изображениями)
Paper Pocket Pets: Paper Pocket Pets (PPP) - это набор, предназначенный для создания интерактивных модульных и носимых игрушек. Он поощряет детей к движению и общению благодаря реакции питомца и позволяет детям создавать своего собственного репрезентативного питомца, а также менять
Автоматические рождественские огни: 6 шагов (с изображениями)
Автоматические рождественские огни: в этой инструкции я покажу вам, как построить автоматически мигающие рождественские огни при воспроизведении музыки! Проект состоит из 2 частей: электрической схемы и кода / алгоритма Arduino. Схема работает с использованием 8-канального реле для замыкания
Автоматизируйте домашние устройства с помощью MESH и Logitech Harmony: 5 шагов (с изображениями)
Автоматизируйте домашние устройства с помощью MESH и Logitech Harmony: вы ищете способ автоматизировать домашние устройства с минимальными усилиями? Вы устали использовать пульт дистанционного управления для включения устройств на вашем устройстве. и " ВЫКЛ "? Вы можете автоматизировать свои устройства с помощью датчика движения MESH и Logitech Ha
Автоматические трубчатые колокола: 6 шагов (с изображениями)
Автоматические трубчатые колокола: в этой инструкции объясняются основные шаги, которые я предпринял, чтобы построить первый прототип набора автоматических трубчатых колокольчиков, которые я построил в 2006 году. Характеристики автоматических музыкальных инструментов: - 12 колоколов (12 трубчатых колокольчиков) - Каждый колокольчик играет один нет