Tartalomjegyzék:

Automatizált otthoni függönyök - Mini projekt a MakerChips BluChip (nRF51 BLE) moduljával: 7 lépés (képekkel)
Automatizált otthoni függönyök - Mini projekt a MakerChips BluChip (nRF51 BLE) moduljával: 7 lépés (képekkel)

Videó: Automatizált otthoni függönyök - Mini projekt a MakerChips BluChip (nRF51 BLE) moduljával: 7 lépés (képekkel)

Videó: Automatizált otthoni függönyök - Mini projekt a MakerChips BluChip (nRF51 BLE) moduljával: 7 lépés (képekkel)
Videó: Каким будет будущее работы - Подкаст Virtual Frontier E40 2024, Július
Anonim
Automatizált otthoni függönyök - Mini projekt a MakerChips BluChip (nRF51 BLE) moduljával
Automatizált otthoni függönyök - Mini projekt a MakerChips BluChip (nRF51 BLE) moduljával

Képzelje el, hogy felébred, és napsugarat szeretne kapni az ablakain, vagy becsukja a függönyöket, hogy tovább aludhasson, anélkül, hogy a függöny közelébe kerülne, hanem az okostelefon egyetlen gombnyomásával. Az automatizált otthoni függönyrendszerrel ezt 90 dollárnál nem magasabb alkatrészekkel érheti el!

Nézze meg ezt az oktatóanyagot a Githubon

1. lépés: A tervezés

A dizájn
A dizájn

Az automatizált otthoni függönyrendszer középpontjában a MakerChips BluChip modulja áll.

A BluChip egy apró, 16,6x11,15 mm -es Bluetooth modul, amely perifériaként szolgálhat az okostelefonokhoz a BTLE -n keresztül.

Kattintson ide a Bluetooth Low Energy (BTLE) bevezetéséhez.

A modul a Nordic Semiconductors nRF51 SoC -ból áll, amely nagyszerű platform a BLE alkalmazások számára, mivel számos integrált funkciót támogat mind az Android, mind az Apple alkalmazásokban.

2. lépés: BluChip Explorer Kit

BluChip Explorer készlet
BluChip Explorer készlet
BluChip Explorer készlet
BluChip Explorer készlet
BluChip Explorer készlet
BluChip Explorer készlet

Ennek a projektnek az elkészítéséhez beszereztem a BluChip Explorer Kit-et a MakerChips-től, amely 2 külön dobozban érkezett, az egyik a CMSIS-DAP programozóhoz, a másik doboz pedig a BluChip-et tartalmazza, 2 RGB LED-et, egy fényellenállást és egy CR2032 elemet tartalmazó kenyértáblán.

Amint észrevette, a BluChip modul rendkívül apró, így tökéletes a kis beágyazott, alacsony teljesítményű Bluetooth projektekhez. Elfér a kenyérsütő táblán csak 6 x 0,1 hüvelykes fejléceken, és további 0,05 hüvelykes fejlécekkel rendelkezik a tábla tetején, ami lenyűgöző egy kereskedelmi forgalomban kapható FCC tanúsítványú csomag esetében!

Íme néhány fő jellemzője a BluChipnek a MakerChips webhelyéről:

  • 14 hozzáférhető GPIO csap
  • ARM Cortex M0 32 bites processzor, 256 KB vaku és 32 KB RAM
  • 16,6 mm x 11,15 mm A rendelkezésre álló legkisebb kenyérsütő Bluetooth ® modul
  • A tápegység támogatja az 1,8 V - 3,6 V feszültséget
  • Bluetooth funkciók

    • BTLE - Bluetooth Low Energy - (BLE, BT 4.1)
    • Bluetooth® és Japán, FCC, IC minősítésű
    • Beépített 32 MHz -es rendszeróra
    • Kimeneti teljesítmény: +4dBm jellemző
    • Frekvencia: 2402 - 2480 MHz

      Beépített, nagy teljesítményű mintaantenna

    • Egy módú Bluetooth® intelligens slave/master
  • Támogatott interfészek: SPI, UART, I2C és 8/9/10bit ADC
  • Két programozótű készlet

    • .05 "fejlécek a könnyű csatlakoztatáshoz a CMSIS-DAP és a J-Link eszközökhöz
    • .1 "fejlécek a kenyértáblákkal való összekapcsoláshoz
  • Szoftverrel vezérelhető piros LED

3. lépés: NRF Connect alkalmazás

Image
Image
NRF Connect alkalmazás
NRF Connect alkalmazás
NRF Connect alkalmazás
NRF Connect alkalmazás

Amint kinyitja a BluChip felfedező dobozt, látja, hogy a villogó LED -ekkel megelevenedik, egészen lenyűgöző látvány, nem?

Ha meg szeretné tekinteni, hogy mit tartogat ez a BLE modul, menjünk előre, és telepítsük az nRF Connect alkalmazást a Google Playről vagy az App Store -ból.

Telefonunkkal csatlakozni fogunk a BluChiphez, ezért nyissa meg az nRF Connect alkalmazást, böngésszen az üdvözlőképernyőn, és érintse meg az Engedélyezés gombot a Bluetooth bekapcsolásához. Ezután érintse meg a Beolvasás gombot, és hamarosan felfedezi, hogy BluChip -eszköze a Szkenner lapon található.

Mielőtt ténylegesen csatlakoznánk a BluChip-hez, szerezzünk be egy LED-et, és helyezzük a kenyértáblára a 026 (+ve) és a 021 (-ve) csapok mellé. A LED -nek azonnal világítania kell, mert a 026 -os érintkező 3,3 V -ot (logikai szint HIGH) ad ki, míg a 021 -es tű LOGIKUS (föld).

Menjen előre, és érintse meg a Csatlakozás gombot, hogy kapcsolatot létesítsen az okostelefon és a BluChip között, amely az alkalmazás kliens lapjára vezet.

A BluChip kliens lapon megjelenik az eszközén elérhető összes szolgáltatás. Itt érdekli a BlueChip GPIO szolgáltatás (ismeretlen szolgáltatásként szerepel). Érintse meg, majd érintse meg a felfelé mutató nyilat a GPIO Modulation Characteristic (Ismeretlen karakterisztika) felirat mellett.

Megjelenik egy írási érték előugró ablak, amely lehetőséget ad arra, hogy adatokat küldjön a BluChip -eszközre. Esetünkben ki akarjuk kapcsolni a LED -et, ezért érintse meg a BYTE ARRAY melletti nyilat, és módosítsa az adatformátumot UINT 8 -ra. Elsőként a PIN -kódot küldjük el, ezért írja be a 21 -et a pin021 -hez. Érintse meg a hozzáadott értéket a következő adat elküldéséhez, amelynek állapotát a tűt be kell állítani (hexadecimális formátum). A LED kikapcsolásához a 021 -es tűt 3,3 V -ra állítjuk (magas logikai szint), ezért írja be a 01 -et, majd érintse meg a Küldés gombot.

A LED azonnal kialszik! A LED visszakapcsolásához küldjön 0x00 értéket (LOW logikai szint) a pin021 címre. Amint az a felsorolt jellemzők alatt látható, megjelenik a (0x) 15-01 elküldött értéke. {[(decimális UINT8) 21 = (hexadecimális BYTE) 0x15] + (hexadecimális BYTE) 0x01 => (hexadecimális BYTE) 0x1501}

Ha úgy dönt, hogy elmenti ezeket az értékeket az Írási érték felugró ablakban úgy, hogy nevet ad neki, majd megérinti a mentést, akkor a későbbiekben betöltheti őket előre beállított beállításként az egyszerű GPIO modulációhoz!

4. lépés: A BluChip programozása

A BluChip programozása
A BluChip programozása
A BluChip programozása
A BluChip programozása
A BluChip programozása
A BluChip programozása

Ön észrevette volna a fenti videóból, hogy a BluChip eszköz neve a telefonomon eltér a tiédtől, tehát hogyan változtassuk meg saját ízlésünk szerint?

A BluChipen futó alkalmazás firmware perifériás eszközként (slave) szolgál a BLE -n keresztül a központi eszközökhöz (master), például a hozzá csatlakoztatott okostelefonokhoz. Eszközünk nevének megváltoztatásához mélyedjünk el az alkalmazás firmware -jének villogásával a BluChip -en.

A BluChip Explorer készlethez tartozik az ARM programozó (CMSIS-DAP). A MakerChips ügyes útmutatót adott a CMSIS-DAP segítségével a BluChip-re villogó firmware részleteiről.

Ahhoz, hogy a firmware -t hexafájlba fordíthassuk és villoghassuk, szükségünk lesz a Keil -re, az nRF51 Software Development Kit -re (SDK) és a BluChip firmware -re. Folytassa, és töltse le őket a MakerChips „A BluChip programozása CMSIS-DAP és Keil oldalon” „Szoftver” szakaszában található linkekről.

Telepítse a Keil programot, majd kövesse a "Hexa fájl létrehozása" szakasz 1-3 lépéseit.

Ezen a ponton folytathatja a 4. lépést, az összes célfájl újjáépítését.

Ha hibaüzenetet kap a "core_cm0.h" kapcsán, akkor hozzá kell adnia annak útvonalát a projekthez a fordításhoz.

Egyszerűen meg kell keresnünk a fájlt, és meg kell találnunk a könyvtárát, amely a "\ components / toolchain / gcc".

Vegyük ezt az utat a projektünkbe. Kattintson a Cél beállításai lehetőségre, lépjen a C/C ++ fülre, majd adja meg a 16. ábrán látható elérési utat.

A szükséges függőségek beillesztése után a projektünk lefordítja, és most megtekinthetjük az összeállított kimenetet, egy egyéni hexadecimális fájlt a "nRF51_SDK_10.0.0_dc26b5e" example / ble_peripheral / ble_app_ahc-master / bluchip / s110_with_dfu / arm4 / _buildnrf51410_xxac_s "címen.

A hex fájl BluChip-re történő villanásához kövesse a "Hex fájl átvitele" szakasz 1-8. Lépéseit.

Most, hogy a firmware -t betöltötte a BluChip készülékre egyéni eszköznévvel, indítsa el az nRF Connect alkalmazást, és keresse meg az eszközt. Észre fogja venni, hogy most a firmware -ben a DEVICE_NAME eszközben megadott név alapján nevezték el!

A következő lépésben megkezdjük az automatizált otthoni függönyrendszer hardverének, elektronikájának és szoftverének beállítását.

5. lépés: Az automatikus függönyök építése

Image
Image
Az automatikus függönyök építése
Az automatikus függönyök építése
Az automatikus függönyök építése
Az automatikus függönyök építése
Az automatikus függönyök építése
Az automatikus függönyök építése

Miután áttekintettük a firmware összeállításának és villogásának folyamatát, folytassuk a saját bluetooth függönyök építésével!

Léptetőmotorral vezérlik a vezérműszíjat, amely mozgatja a függönyöket nyitva és zárva. A léptetőmotort egy Half-H meghajtó IC hajtja, amelyet a BluChip fog vezérelni.

Az áramellátáshoz 12V AC-DC feszültségszabályozót használunk, amelyet a motor táplál, és egy LM317 DC-DC feszültségszabályozót, hogy lekapcsoljuk a 12V-ról 3.3V-ra, amely táplálja a BluChip és a Stepper Driver IC-t.

Saját BluChip modulját beszerezheti a MakerChips vadonatúj üzletében a Tindie -ben, vagy a MakerChips webhelyéről.

Szerezzük be az alább felsorolt alkatrészeket a BluChip Explorer Kit mellett az automatikus függönyök összeszerelésének megkezdéséhez:

  • 12V 1A hálózati adapter $ 3.40
  • Hordó Jack 0,68 dollár
  • LM317T feszültségszabályozó $ 0.80
  • Ellenállások (200 és 330 Ohm) 1,69 USD
  • L293D léptetőgép 1,63 dollár
  • Unipoláris léptetőmotor 8,00 USD (vagy 1,66 USD <= módosítsa ezt a kisebb egypólusúat bipoláris léptetővé)
  • 6 mm -es vezérműszíj $ 7.31
  • 6 mm -es fogaskerék $ 0,54 (vagy 3D nyomtatható a Thingiverse -től)
  • 6 mm -es szíjtárcsa 1,17 USD (vagy 3D nyomtatható a Thingiverse -től)
  • X2 végálláskapcsoló (opcionális) $ 1.34
  • Projekt szekrény (opcionális) $ 1.06
  • Breadboard jumper vezetékek $ 2.09
  • Dupont Jumper vezetékek 2,80 USD
  • Gumiszalagok 1,13 USD
  • Twist Ties $ 3.22
  • 22 AWG huzal (opcionális) 1,22 USD
  • Cipzár (opcionális) $ 0.63
  • Zsugorcső (opcionális) 1,97 USD

Eszközök (opcionális):

  • Forró ragasztópisztoly $ 3.75
  • Forrasztópáka $ 6.79

Töltse le az anyagjegyzéket a GitHub -ról (Amazon)

A 20. ábra azt mutatja, hogyan fogja bekötni a rendszert, attól függően, hogy mely funkciókat választja. Ha pontosabb mozgást szeretne, akkor vegyen fel végálláskapcsolókat a projektbe.

A végálláskapcsolók a függöny végpontjai, amelyek jelzik a BluChip -et, amikor kinyitják vagy bezárják. A végkapcsolók nélkül be kell állítania a firmware -t annak jelzésére, hogy a függönyök milyen messze mozognak a következő "Firmware konfiguráció" részben.

A 20. ábra egy opcionális fotóellenállást is tartalmaz, amely lehetővé teszi a nappali és éjszakai észlelést, és a "Firmware konfigurálása" részben konfigurálható.

Indítsa el a hardver összeszerelését úgy, hogy a léptetőmotort, a szíjtárcsát és a vezérműszíjat a függöny tetejére szereli fel. (21. ábra)

A vezérműszíjat ideiglenesen húzza meg gumiszalaggal. Később, mielőtt befejezi a projektet, össze fogja kötni, hogy véglegesen megtartsa.

A függönyök vezérműszíjhoz való rögzítéséhez húzza meg a drótkötéleket az öv és a függönyhorog körül.

Ahhoz, hogy jobban megértse, hogyan kell a függönyöket az övre rögzíteni, kövesse a 22. ábrát. A bal függönyt drótkötéllel a vezérműszíj hátuljához köti, a jobb függönyt pedig a vezérműszíj elejéhez drótkötéllel.

Miután rögzítette az övet és lekötötte a függönyt, távolítsa el a léptetőmotort, hogy elkezdhessük összeszerelni és tesztelni az azt vezérlő elektronikus áramkört. Kezdje el az elektronika építését úgy, hogy a Bluchip, L293d IC és LM317t feszültségszabályozót a kenyérsütő táblára helyezi. a 20. ábrához.

Helyezze be a 200 és 330 ohmos ellenállásokat a 20. ábra szerint. Az ellenállások úgy állítják be az LM317 kimenetét, hogy ~ 3.3V feszültséget biztosítson. (24. ábra)

Helyezze be az áthidaló vezetéket, majd egy huzalozott csőcsonkot a 26. ábra szerint.

Csatlakoztassuk a hálózati adaptert a fali aljzathoz, és csatlakoztassuk az adaptert a csőcsatlakozóhoz, hogy teszteljük a feszültségeket a 27. ábrán látható módon.

Miután megállapította a megfelelő feszültséget, húzza ki a tápkábelt, és kezdje el elhelyezni a fennmaradó kenyérpult -áthidaló vezetékeket a 20. ábra szerint.

Következő lépésként bekötjük a bipoláris léptetőmotorunkat az L293d IC -hez.

Először helyezze a Dupont áthidaló vezetékeket a léptetőmotor csatlakozójába, a 29. ábra szerint.

Ahhoz, hogy megtudja, melyik vezeték hova megy, kövesse a 30. ábra sematikus ábráját.

Amint az a sematikus ábrán látható, az egyik tekercs vezetékei az L293D Pin2 és Pin6 csatlakozóira mennek. A másik tekercsből származó vezetékek a 11 -es és a 14 -es csaphoz kerülnek.

A módosított 28BYJ-48 bipoláris léptetőmotor négy használható színes vezetékkel rendelkezik, amint a 31. ábrán látható.

Az L293d -n a kéket a Pin3 -ra, a sárgát a Pin6 -ra, a narancsot a Pin11 -re és a rózsaszínt a Pin14 -re kötjük.

Az alapvető áramkör most kész!

Ha végálláskapcsolókat szeretne megvalósítani, kösse az NO & C vezetékeket egy 22AWG vezetékhez. A másik végén rögzítse a DuPont áthidalókat a kenyérlapra illeszkedő vezetékek kialakításához. (32. ábra)

Rögzítheti őket a függönyrúdra a 33. ábrán látható módon, gumiszalaggal, vagy ha kéznél van egy forró ragasztópisztoly, akkor cipzárral kötheti a sínhez, majd kenje be jó mennyiségű forró ragasztóval, hogy ne mozduljon el körül.

Ha szeretné elképzelni, hol kell elhelyezni őket, olvassa el a 34. ábrát.

Az egyik végálláskapcsoló a függönyléc bal szélső végéhez van rögzítve, az első sínhorog és a második között, így amikor a függöny kinyílik, a kampó a kapcsolóhoz nyomja és aktiválja. A másik végálláskapcsoló közvetlenül a sín közepén, balra néz. Így a függöny bezárásakor aktiválódik.

Illessze a végálláskapcsoló vezetékeket a kenyérlapra a 20. ábra szerint.

Végül, ha azt szeretné, hogy a függönyök kinyíljanak, amikor a nap felkel, és bezárul, amikor lenyugszik, be kell kötni a fotóellenállást, amint az a 36. ábrán látható, és közel ahhoz, ahol hajnalban napfény érhető el.

Miután befejezte a kenyérpirító áramkör beállítását, készüljön fel, és csatlakoztassa a programozót a BluChiphez a firmware frissítéséhez. Töltse le a firmware -t a GitHub -ból, és bontsa ki az SDK könyvtárába, mint korábban.

Töltse le a ble_app_ahc.zip fájlt a Github webhelyről.

Nyissa meg a projektet, majd fordítsa le és töltse fel a firmware -t a BluChip -re.

Mielőtt kipróbálnánk, bezárjuk a kenyeretáblát egy dobozba, és lyukakat készítünk a vezetékekhez és a függöny állapot LED -hez.

Helyezze a kenyeretáblát a szekrény dobozának aljára, és tegyen egy nyílást a vezetékekhez. A nyílás arra is szolgál, hogy a BluChip az antennáján keresztül kommunikáljon más eszközökkel. (37. ábra)

Fúrjon egy lyukat a LED méretére a ház oldalán, és szerelje rá a LED -et. Csatlakoztassa a LED -et a 20. ábra szerint.

Keresse meg a megfelelő helyet a szekrény dobozának felszerelésére a függönyléc bal oldalán, közel a konnektorhoz. Szerelje vissza a motort, és végezze el a vezérműszíj utolsó feszítési vizsgálatát, ügyelve arra, hogy ne legyen laza. (39. ábra)

Most itt az ideje, hogy teszteljük az összeállított rendszert. Helyezze be a hálózati adaptert, és kapcsolja be az nRF Connect alkalmazást. Felfedez egy Curtains. BluChip nevű eszközt.

Csatlakozzon hozzá, küldjön UINT8 1 (Nyitott függöny) értéket az Ismeretlen karakterisztikához az Ismeretlen szolgáltatás alatt, és nézze meg, hogyan nyílnak a függönyök!

Most, hogy sikeresen tesztelte a rendszerét, nézzük meg a BluChipen a műsort futtató kód néhány konfigurálását.

6. lépés: A BluChip firmware konfigurálása

BluChip firmware konfiguráció
BluChip firmware konfiguráció
BluChip firmware konfiguráció
BluChip firmware konfiguráció
BluChip firmware konfiguráció
BluChip firmware konfiguráció

Az Automated Home Curtain firmware projekt főleg 4 fájlból áll: main.c, ahc.c, ble_ahc_service.c és ble_ahc_service.h.

Az elektronika és a hardver építése során választhattunk, hogy szeretnénk -e végálláskapcsolókat növelni automatizált rendszerünk pontosságát.

Az ahc.h kódból a #define kifejezést láthatjuk a LIMIT_SWITCHES számára.

A kód összeállítása és villogása a #define LIMIT_SWITCHES funkcióval lehetővé teszi mindkét végálláskapcsoló használatát a függönyök nyitásának és zárásának észlelésére.

Átnevezése #undef LIMIT_SWITCHES névre van szükség, ha úgy döntött, hogy nem tartalmazza a végálláskapcsolókat a projekthez. Ebben az esetben a CURTAIN_OPEN_STEPS és CURTAIN_CLOSE_STEPS változókban finomhangolnia kell a függöny által megtett távolságot. Állítsa be ezeket az értékeket, hogy meghosszabbítsa vagy lerövidítse a függöny haladási távolságát.

A másik lehetőség, a fényellenállás hozzáadása, engedélyezhető az #undef LDR módosításával #define LDR értékre. Az LDR a fényfüggő ellenállást jelenti, más néven fotoellenállást. Amikor engedélyezzük az LDR -t, a fotorezisztor tudja, hogy kint világos vagy sötét van, és segít lezárni vagy kinyitni a függönyöket a nap elején vagy végén.

A végálláskapcsolók és a fotorezisztor beállítása mellett nézzünk meg néhány egyéb kódtömböt, amelyek lehetővé teszik a függönyök automatikus kinyitását és bezárását.

A ble_ahc_service.c és ble_ahc_service.h fájlok olyan kódot tartalmaznak, amely adatokat továbbít a telefonról a BluChip -re.

Amikor a BluChip megkapja az adatokat, akkor annak megfelelően elemzi, hogy 0 -t vagy 1 -et küld. Ezután aktiválja az állapotjelző LED -et, végrehajtja a motor mozgását, majd kikapcsolja a LED -jelzés befejezését.

Az ahc.h ahc_init () függvényét a fő hurok elején futtatja, inicializálva a BluChip összes csapját.

7. lépés: Összefoglalás

Összefoglalva, ez egy rendkívül szórakoztató és meglehetősen könnyű projekt volt a BLE alapjainak elsajátításához. Az a tény, hogy a BluChip kitörési modulja szorosan illeszkedik a kenyérsütő táblára, megkönnyíti a prototípus gyors elkészítését bármilyen kenyérsütőn, amelyet esetleg lefektet.

Azt mondanám, hogy az automatikus függönyök megépítése után már sok más dologra is gondoltam, amellyel összekapcsolhatom a BluChip -et, beleértve az intelligens neopixeleket, egy OLED -et digitális óra létrehozásához, egy okostelefonnal vezérelt robotot és sok más alacsony energiafogyasztású elektronikus projektet. ötletek, amelyekhez kompakt vezeték nélküli kommunikációra lenne szükség!

Bárki, akit érdekel az elektronika és a programozás, kellemesen meglepődne a BluChip kínálatán, valamint a BLE beállításának és megvalósításának kényelmén, hogy a projektek még hűvösebbekké váljanak.

Mostantól kezdve újra élvezhetem a praktikus, automatizált otthoni függönyöket.

Ajánlott: