Taula de continguts:

Cortines domèstiques automatitzades: Mini projecte amb mòdul BluChip (nRF51 BLE) de MakerChips: 7 passos (amb imatges)
Cortines domèstiques automatitzades: Mini projecte amb mòdul BluChip (nRF51 BLE) de MakerChips: 7 passos (amb imatges)

Vídeo: Cortines domèstiques automatitzades: Mini projecte amb mòdul BluChip (nRF51 BLE) de MakerChips: 7 passos (amb imatges)

Vídeo: Cortines domèstiques automatitzades: Mini projecte amb mòdul BluChip (nRF51 BLE) de MakerChips: 7 passos (amb imatges)
Vídeo: Аудиокнига «Ромео и Джульетта» Уильяма Шекспира 2024, Juliol
Anonim
Cortines domèstiques automatitzades: Mini projecte amb el mòdul BluChip (nRF51 BLE) de MakerChips
Cortines domèstiques automatitzades: Mini projecte amb el mòdul BluChip (nRF51 BLE) de MakerChips

Imagineu-vos despertar-vos i voler fer un raig de sol a través de les vostres finestres o tancar les cortines perquè pugueu dormir més, sense l’esforç d’acostar-vos a les cortines, sinó més aviat amb un simple botó al telèfon intel·ligent. Amb el sistema automatitzat de cortines domèstiques, s’aconsegueix això amb components que no costen més de 90 dòlars.

Consulteu aquest tutorial a Github

Pas 1: el disseny

El disseny
El disseny

Al centre del sistema automatitzat de cortines domèstiques hi ha el mòdul BluChip de MakerChips.

El BluChip és un petit mòdul Bluetooth de 16,6x11,15 mm que pot servir de perifèric als telèfons intel·ligents mitjançant BTLE.

Feu clic aquí per obtenir una introducció a Bluetooth Low Energy (BTLE).

El mòdul consisteix en un SoC nRF51 de Nordic Semiconductors, una gran plataforma per a aplicacions BLE ja que admet moltes funcions integrades tant a les aplicacions d'Android com d'Apple.

Pas 2: kit BluChip Explorer

Kit BluChip Explorer
Kit BluChip Explorer
Kit BluChip Explorer
Kit BluChip Explorer
Kit BluChip Explorer
Kit BluChip Explorer

Per construir aquest projecte, vaig obtenir el BluChip Explorer Kit de MakerChips que va arribar en 2 caixes separades, una per al programador CMSIS-DAP i una altra caixa que contenia el BluChip en una placa amb 2 LED RGB, una foto-resistència i una bateria CR2032.

Com heu notat, el mòdul BluChip és extremadament reduït, cosa que el fa perfecte per a petits projectes incrustats de poca tecnologia Bluetooth. S'adapta a una petjada de només 6x4 capçaleres de 0,1 "en una placa de paret i té capçaleres addicionals de 0,05" a la part superior del tauler, bastant impressionant per a un paquet certificat comercialment per la FCC.

A continuació, es detallen algunes de les funcions clau del BluChip del lloc web de MakerChips:

  • 14 pins GPIO accessibles
  • Processador ARM Cortex M0 de 32 bits i 256 KB de flaix i 32 KB de RAM
  • 16,6 mm x 11,15 mm El mòdul Bluetooth ® més petit que es pot fer amb taulers disponibles
  • La font d'alimentació admet 1,8V - 3,6V
  • Funcions Bluetooth

    • BTLE - Bluetooth de baixa energia - (BLE, BT 4.1)
    • Qualificació Bluetooth® i Japó, FCC, IC
    • Rellotge del sistema integrat de 32 Mhz
    • Potència de sortida: + 4dBm típic
    • Freqüència: 2402 a 2480 MHz

      Antena integrada de patró d'alt rendiment

    • Esclau / mestre intel·ligent Bluetooth® de mode únic
  • Interfícies compatibles: SPI, UART, I2C i ADC de 8/9 / 10bit
  • Dos conjunts de pins de programació

    • Capçaleres de.05 "per facilitar l'acoblament a dispositius CMSIS-DAP i J-Link
    • Capçaleres.1 "per a la interfície amb taulers de suport
  • Programari LED vermell controlable

Pas 3: aplicació NRF Connect

Image
Image
Aplicació NRF Connect
Aplicació NRF Connect
Aplicació NRF Connect
Aplicació NRF Connect

Tan bon punt obriu la caixa de l’explorador del BluChip, veieu que cobra vida amb LEDs parpellejants, una visió fascinant, oi?

Per veure què hi ha a la botiga amb aquest mòdul BLE, anem a instal·lar l'aplicació nRF Connect de Google Play o App Store.

Ens connectarem al BluChip amb el nostre telèfon, així que obriu l’aplicació nRF Connect, navegueu per la pantalla de benvinguda i toqueu Activa per activar el Bluetooth. A continuació, toqueu Escaneja i aviat descobrireu que el vostre dispositiu BluChip apareix a la pestanya Escàner.

Abans de connectar-nos al BluChip, agafem un LED i el col·loquem a la tauleta de suport al costat dels pins 026 (+ ve) i 021 (-ve). El LED s’hauria d’il·luminar immediatament perquè el pin 026 surt a 3,3V (nivell lògic ALT) mentre que el pin 021 és lògic BAIX (terra).

Seguiu endavant i toqueu connectar per establir una connexió entre el telèfon intel·ligent i el BluChip, que us portarà a la pestanya client del dispositiu de l'aplicació.

La pestanya del client BluChip mostra tots els serveis disponibles al vostre dispositiu. El que ens interessa aquí és el servei BlueChip GPIO (que figura com a servei desconegut). Toqueu-hi i toqueu la fletxa cap amunt al costat de la característica de modulació GPIO (que apareix com a característica desconeguda).

Apareixerà una finestra emergent de valor d’escriptura que us permetrà enviar dades al vostre dispositiu BluChip. En el nostre cas, volem apagar el LED, de manera que toqueu la fletxa que hi ha al costat de BYTE ARRAY i canvieu el format de dades a UINT 8. Enviarem el número de pin com a primer valor, així que introduïu 21 per pin021. Toqueu el valor afegit per enviar la següent peça de dades, l'estat del qual s'ha d'establir el pin (format BYTE hexadecimal). Per apagar el LED, configurarem el pin 021 a 3,3 V (nivell lògic alt), així que introduïu 01 i toqueu Enviar.

El LED s'apaga instantàniament. Per tornar a encendre el LED, envieu un valor de 0x00 (nivell lògic BAIX) al pin021. Com es veu a sota de la característica indicada, es mostra el valor enviat de (0x) 15-01. {[(UINT8 decimal) 21 = (BYTE hexadecimal) 0x15] + (BYTE hexadecimal) 0x01 => (BYTE hexadecimal) 0x1501}

Si escolliu desar aquests valors a la finestra emergent Escriu valor donant-li un nom i després tocant Desa, podeu carregar-los en el futur com a presets per facilitar la modulació GPIO.

Pas 4: programació del BluChip

Programació del BluChip
Programació del BluChip
Programació del BluChip
Programació del BluChip
Programació del BluChip
Programació del BluChip

Al vídeo anterior us haureu adonat que el nom del dispositiu BluChip del meu telèfon és diferent del vostre, així que, doncs, com podem canviar-lo al nostre gust?

El microprogramari de l'aplicació que s'executa al BluChip serveix com a dispositiu perifèric (esclau) a través de BLE a dispositius centrals (mestre), com ara els telèfons intel·ligents connectats. Per canviar el nom del nostre dispositiu, aprofundim en el microprogramari de l'aplicació intermitent al nostre BluChip.

El kit BluChip Explorer inclou el programador ARM (CMSIS-DAP). MakerChips ha proporcionat una guia pràctica sobre els detalls del firmware intermitent al BluChip amb el CMSIS-DAP.

Per compilar el microprogramari en un fitxer hexadecimal i fer-lo flaix, necessitarem Keil, el kit de desenvolupament de programari nRF51 (SDK) i el microprogramari BluChip. Seguiu endavant i descarregueu-los des dels enllaços de la secció "El programari" a la programació de MakerChips del BluChip amb la pàgina CMSIS-DAP i Keil.

Instal·leu Keil i seguiu els passos 1-3 de la secció "Creació del fitxer hexadecimal".

En aquest moment, podeu continuar al pas 4, Reconstruint tots els fitxers objectiu.

Si obteniu un error relacionat amb "core_cm0.h", haureu d'afegir el seu camí al projecte per compilar-lo.

Simplement hauríem de cercar el fitxer i localitzar-ne el directori, que és "\ components / toolchain / gcc".

Incloem aquest camí cap al nostre projecte. Feu clic a Opcions de destinació, aneu a la pestanya C / C ++ i incloeu el camí tal com es mostra a la figura 16.

Després d'incloure les dependències necessàries, el nostre projecte compila i ara podem veure la sortida compilada, un fitxer hexadecimal personalitzat a nRF51_SDK_10.0.0_dc26b5e / examples / ble_peripheral / ble_app_ahc-master / bluchip / s110_with_dfu / arm4 / _buildnrf51422_xxac_s110.hex.

Per fer passar el fitxer hexadecimal al BluChip, seguiu els passos 1-8 de la secció "Transferència del fitxer hexadecimal".

Ara que heu carregat el microprogramari al BluChip amb un nom de dispositiu personalitzat, engegueu l'aplicació nRF Connect i cerqueu el vostre dispositiu. Notareu que ara porta el nom del que heu definit al DEVICE_NAME al firmware.

Al següent pas, començarem a configurar el maquinari, l'electrònica i el programari del nostre sistema automatitzat de cortines domèstiques.

Pas 5: construcció de les cortines automatitzades

Image
Image
Construint les cortines automatitzades
Construint les cortines automatitzades
Construint les cortines automatitzades
Construint les cortines automatitzades
Construint les cortines automatitzades
Construint les cortines automatitzades

Després d’haver revisat el procés de compilació i intermitència del nostre firmware, anem a construir les nostres pròpies cortines bluetooth.

S’utilitzarà un motor pas a pas per accionar una corretja de distribució que fa moure i obrir les cortines. El motor pas a pas està accionat per un controlador IC de mitja H que serà controlat pel BluChip.

Per obtenir energia, utilitzarem un regulador de voltatge de 12V AC-DC que s’alimenta al motor, juntament amb un regulador de voltatge DC-DC LM317 per baixar de 12V a 3,3V que alimentarà el CI del controlador BluChip i Stepper.

Podeu obtenir el vostre propi mòdul BluChip a la nova botiga de MakerChips a Tindie o al lloc web de MakerChips.

Obtenim les parts que es detallen a continuació, a més del BluChip Explorer Kit, per començar a muntar les cortines automàtiques:

  • Adaptador de corrent 12V 1A 3,40 $
  • Barrel Jack 0,68 dòlars
  • Regulador de tensió LM317T 0,80 $
  • Resistències (200 i 330 Ohm) 1,69 dòlars
  • L293D Stepper Driver 1,63 dòlars
  • Motor pas a pas unipolar 8,00 $ (o 1,66 $ <= modifiqueu aquest unipolar més petit en un pas bipolar)
  • Cinturó de distribució de 6 mm 7,31 dòlars
  • Engranatge de 6 mm 0,54 dòlars (o imprimible en 3D des de Thingiverse)
  • Politja de 6 mm 1,17 $ (o imprimible en 3D des de Thingiverse)
  • Interruptor de límit x2 (opcional) 1,34 USD
  • Caixa de tancament del projecte (opcional) 1,06 USD
  • Cable de pont de taulers de pa 2,09 $
  • Cavalls de pont Dupont 2,80 $
  • Bandes de goma 1,13 dòlars
  • Corbates Twist 3,22 $
  • 22 AWG Wire (opcional) 1,22 $
  • Corbates amb cremallera (opcional) 0,63 $
  • Tub retràctil (opcional) 1,97 USD

Eines (opcionals):

  • Pistola de cola calenta 3,75 dòlars
  • Soldadura de ferro 6,79 dòlars

Descarregueu la llista de materials de GitHub (Amazon)

La figura 20 mostra com connectareu el sistema, segons quines funcions trieu afegir. Si voleu un moviment més precís, afegiríeu interruptors de límit al projecte.

Els interruptors de límit són punts finals a les cortines que indiquen al BluChip quan s’obre o es tanca. Sense els interruptors de límit, haureu de configurar el firmware per indicar fins a quin punt es mouen les vostres cortines a la propera secció "Configuració del firmware".

La figura 20 també inclou una resistència fotogràfica opcional que permet la detecció de dia i de nit, també configurable a la secció "Configuració del microprogramari".

Comenceu el muntatge del maquinari muntant el motor pas a pas, la politja i la corretja de distribució a la part superior de les vostres cortines. (Figura 21)

Teneu temporalment la corretja de distribució amb una goma. Més endavant, abans de completar el projecte, el lligareu amb cremallera per mantenir-lo permanentment.

Per fixar les cortines al cinturó de distribució, fixeu els llaços de filferro al voltant del cinturó i el ganxo de la cortina.

Per obtenir una millor idea de com enganxar les cortines al cinturó, seguiu la Figura 22. Lligueu la cortina esquerra a la part posterior del cinturó de distribució amb un llaç de filferro i la cortina dreta a la part frontal de la corretja de distribució amb una corbata de filferro.

Un cop fixat el cinturó i lligat el teló, traieu el motor pas a pas per començar a muntar i provar el circuit electrònic que el conduirà. Comenceu a construir l'electrònica col·locant el regulador de voltatge Bluchip, L293d IC i LM317t a la placa a la figura 20.

Introduïu les resistències de 200 i 330 ohms segons la figura 20. Les resistències ajusten la sortida del LM317 de manera que proporcioni ~ 3,3V. (Figura 24)

Introduïu el cable de pont i, a continuació, una presa de canó amb cable, tal com es mostra a la figura 26.

Connectem l’adaptador de corrent a la presa de corrent i connectem l’adaptador a la presa de barril per provar els voltatges tal com es veu a la figura 27.

Un cop es comprovin els voltatges correctes, traieu la presa de corrent i comenceu a col·locar els cables de pont restants de la placa segons la figura 20.

A continuació, connectarem el nostre motor pas a pas bipolar a la IC L293d.

Primer, col·loqueu els cables del pont Dupont al connector del motor pas a pas, tal com es mostra a la figura 29.

Per saber quin cable va cap a on, seguiu l’esquema de la figura 30.

Com es veu a l'esquema, els cables d'una bobina van a Pin2 i Pin6 de la L293D. Els cables de l’altra bobina van a Pin11 i Pin14.

El motor pas a pas bipolar modificat 28BYJ-48 té quatre cables de colors utilitzables, tal com es veu a la figura 31.

Connectem de color blau a Pin3, groc a Pin6, taronja a Pin11 i rosa a Pin14 a la L293d.

Els circuits bàsics ja s’han completat.

Si voleu implementar interruptors de límit, connecteu el cable NO & C a un cable de 22AWG. A l’altre extrem, fixeu els ponts DuPont per formar cables que s’adaptin a la taula de treball. (Figura 32)

Podeu muntar-los al carril de la cortina tal com es mostra a la figura 33 amb gomes, o si teniu a mà una pistola de cola calenta, podeu lligar-la al carril amb una cremallera i, a continuació, col·loqueu una bona quantitat de cola calenta per assegurar-vos que no es mogui. al voltant.

Per fer-vos una idea d’on col·locar-los, consulteu la figura 34.

Hi ha un interruptor de límit fixat a l’extrem extrem esquerre del rail de cortina, entre el primer ganxo del rail i el segon, de manera que quan s’obren les cortines el ganxo pressiona contra l’interruptor i l’activa. L'altre interruptor de límit es col·loca directament al centre del carril, orientat a l'esquerra. D'aquesta manera, s'activa quan es tanquen les cortines.

Introduïu els cables de contacte de límit a la placa segons la figura 20.

Finalment, si voleu que les vostres cortines s’obrin quan surti el sol i es tanqui quan es pon, haureu de connectar la resistència fotogràfica tal com es mostra a la Figura 36 i configurar-la a prop d’on tingui accés a la llum solar durant l’alba.

Un cop hàgiu acabat de configurar el circuit de la placa, prepareu-vos i connecteu el programador al BluChip per fer flaixar el firmware. Descarregueu el microprogramari de GitHub i extreu-lo al directori SDK tal com feia abans.

Descarregueu ble_app_ahc.zip des de Github.

Obriu el projecte i, a continuació, compileu i pengeu el firmware al BluChip.

Abans de provar-ho, inclourem el tauler en una caixa i farem forats per als cables i el nostre LED d’estat de la cortina.

Col·loqueu la tauleta sobre la base de la caixa del tancament i feu una obertura per als cables. L'obertura també serveix com a punt perquè el BluChip es comuniqui a altres dispositius a través de la seva antena. (Figura 37)

Practicar un forat de la mida del LED al lateral del recinte i muntar-hi el LED. Connecteu el LED segons la figura 20.

Cerqueu un lloc adequat per muntar la caixa del tancament a l’esquerra del rail de la cortina, a prop d’una presa de corrent. Torneu a muntar el motor i feu una prova de tensió final de la corretja de distribució, assegurant-vos que no hi hagi joc. (Figura 39)

Ara és hora de provar el nostre sistema muntat. Introduïu l'adaptador de corrent i engegueu l'aplicació nRF Connect. Descobrireu un dispositiu anomenat Curtains. BluChip.

Connecteu-hi, envieu un valor de UINT8 1 (Obrir cortines) a la característica desconeguda a Servei desconegut i observeu com s’obren les cortines.

Ara que heu provat el vostre sistema amb èxit, fem una ullada a la configuració d'alguns dels codis que executen el programa al BluChip.

Pas 6: Configuració del microprogramari BluChip

Configuració del microprogramari BluChip
Configuració del microprogramari BluChip
Configuració del microprogramari BluChip
Configuració del microprogramari BluChip
Configuració del microprogramari BluChip
Configuració del microprogramari BluChip

El projecte de microprogramari Automated Home Curtain consisteix principalment en 4 fitxers: main.c, ahc.c, ble_ahc_service.c i ble_ahc_service.h.

En construir l'electrònica i el maquinari, vam tenir l'opció de triar si volíem que els interruptors de límit augmentessin la precisió del nostre sistema automatitzat.

Al codi de ahc.h, podem veure #define per a LIMIT_SWITCHES.

La compilació i el parpelleig de codi amb #define LIMIT_SWITCHES permet utilitzar els dos interruptors de límit per detectar quan s’han obert i tancat les cortines.

Cal canviar el nom a #undef LIMIT_SWITCHES si heu optat per no incloure interruptors de límit per al vostre projecte. En aquest cas, haureu d’afinar la distància a la qual es desplaça la vostra cortina a les variables CURTAIN_OPEN_STEPS i CURTAIN_CLOSE_STEPS. Ajusteu aquests valors per allargar o escurçar la distància de recorregut de la cortina.

L'altra opció, afegir un fotoresistor, es pot habilitar modificant #undef LDR a #define LDR. LDR significa resistència dependent de la llum, també coneguda com a fotoresistència. Quan activem LDR, el fotoresistor sap quan és brillant o fosc a l'exterior i us ajuda a tancar o obrir les vostres cortines al començament o al final del dia.

A més de configurar els interruptors de límit i la fotoresistència, fem una ullada a alguns dels altres blocs principals de codi que us permeten obrir i tancar automàticament les cortines.

Els fitxers ble_ahc_service.c i ble_ahc_service.h contenen codi que transmet dades del vostre telèfon al BluChip.

Quan el BluChip rep les dades, les analitza segons si s’envia un 0 o un 1. A continuació, activa el LED d'estat, realitza el moviment del motor i desactiva la finalització de la senyalització del LED.

La funció ahc_init () de ahc.h s'executa al començament del bucle principal, inicialitzant tots els pins del BluChip.

Pas 7: resum

Per concloure, aquest va ser un projecte extremadament divertit i bastant fàcil d’aprendre els conceptes bàsics de BLE. El fet que el mòdul d’informació de BluChip s’adapti perfectament a una taula de proves fa que sigui molt fàcil prototipar ràpidament a qualsevol tauleta de suport que pugueu tenir.

Diria que després de construir les meves cortines automatitzades, ja he pensat en altres coses per connectar el BluChip, inclosos els neopíxels intel·ligents, un OLED per crear un rellotge digital, un robot controlat per telèfon intel·ligent i molts altres projectes electrònics de baixa potència idees que necessitarien una comunicació sense fils compacta.

Qualsevol que tingui un gran interès per l'electrònica i la programació quedaria gratament sorprès del que el BluChip pot oferir, així com de la comoditat d'instal·lar i implementar BLE per convertir els projectes en projectes encara més frescos.

A partir d’ara, tornaré a gaudir de les meves pràctiques cortines domèstiques automatitzades..

Recomanat: