Raspberry Pi Zero garázskapu -nyitó hardver: 10 lépés
Raspberry Pi Zero garázskapu -nyitó hardver: 10 lépés
Anonim
Raspberry Pi Zero garázskapu -nyitó hardver
Raspberry Pi Zero garázskapu -nyitó hardver

Ennek a projektnek az egyik inspirációja a Raspberry Pi 3 garázskapu -nyitó finom oktathatósága volt, és több más is megtalálható az interneten. Mivel nem vagyok tapasztalt elektronikai szakember, rengeteg további kutatást végeztem a Raspberry Pi -vel való interfészekkel kapcsolatban, és rengeteget tanultam a LED -es izzókkal és az összes GPIO -kábelezéssel rendelkező ellenállások fontosságáról. Megismertem a fel- és lehúzható hardveráramkörök előnyeit a beépített Pi funkcióval szemben.

Mivel ez a garázskapu-projekt valójában egy több részből álló folyamat, amely Pi-hardvert, szoftvert és a garázskapu-nyitó (k) val történő telepítést foglalja magában, úgy gondoltam, először a Pi hardverre összpontosítok, mivel minden más lépésnél szükség van rá.

Az én megközelítésem az, hogy nagyon alapvető legyek, összefoglalva a tanulást, amit azért tettem, hogy befejezhessem a hardvert. Kezdődik némi információval, majd áramköröket építünk egy kenyérpályára. Minden lépés finomítani fogja tervezésünket és tudásunkat, ami egy végleges hardvermegoldás kiépítésével végződik, amellyel a Pi -t relével és nádérzékelőkkel lehet összekötni.

Ezenkívül, más projektekkel ellentétben, úgy döntöttem, hogy egy Raspberry Pi Zero W -t használok, amelyet már régen eladtam, de még mindig kihasználatlanul ültem az asztalomon. Ennek előnye, hogy prototípus készítés közben, ha megsértettem a GPIO áramkörök bármelyikét, olcsó volt, és könnyen cserélhető, és megtartható a prototípus. A hátránya, hogy csak ARMv6 processzorral rendelkezik, így bizonyos dolgok, például a Java, nem lesznek használhatók.

A másik dolog, amit elhatároztam, hogy saját kiegészítő lapot hozok létre az áramkör számára, tehát ha ki kell cserélnem vagy cserélnem a Pi-t, amíg a pinoutok azonosak, a táblát könnyen be kell dugni az új Pi-be. Ez remélhetőleg minimalizálja a patkányok vezetékeinek fészkét.

Feltételezéseim a következők:

  • Kényelmes forrasztásod van
  • Már tudja, hogyan kell használni az alapvető terminálparancsokat a Raspberry Pi -n
  • Raspbian Buster vagy újabb verziót használ.
  • Van néhány interfésze a Pi parancssorhoz; vagy dedikált monitorral, billentyűzettel stb. ÉS/VAGY SSH használatával.
  • Ismeri az elektromos áramkörök tervezésének alapfogalmát; például ismeri a különbséget az áram és a föld között, és megérti a rövidzárlat fogalmát. Ha új konnektorba helyezheti otthonát, akkor képesnek kell lennie arra, hogy kövesse.

Kellékek

Attól függően, hogy mennyire elkötelezett a projekt iránt, minden lépésnél csak a szükséges dolgokkal kezdheti, és onnan folytathatja. Ezen alkatrészek nagy része elérhető a helyi elektronikai vagy barkács/készítő üzletben, de a leírások javítása érdekében Amazon linkeket is mellékeltem.

  • MakerSpot RPi Raspberry Pi Zero W Protoboard (a Pi utolsó kalapjának elkészítéséhez)
  • 2 csatornás egyenáramú 5 V-os relé modul (1 csatornás, ha egy ajtóval rendelkezik, 2 2 ajtóval stb.)
  • Felső ajtó kapcsoló, normál nyitott (NO) (Ha ebben az időben csak prototípusokat készít, és olcsó nádkapcsolókat szeretne használni az induláshoz, ez rendben van)
  • Elektronikus szórakoztató készletcsomag (ez tartalmazta az összes ellenállást, amire szükségem volt, valamint egy kenyérlap és egy tápegység, amely segít a prototípus elkészítésében, valamint a tesztelésben és a tanulásban az állandó tábla elkészítése előtt). Ha mindez már megvan, győződjön meg arról, hogy van néhány 10K, 1K és 330 ohmos ellenállás.
  • Breadboard jumper vezetékek (bármelyik megteszi)
  • Forrasztópáka kis heggyel
  • Kolofonmag-forrasztó
  • Forrasztópáka -tisztító
  • Tartalék 9V -os tápegység (a kenyérsütő tápellátásához)
  • Olcsó prototípuslapok forrasztáshoz (opcionális)
  • Funkcionálisan működő Raspberry Pi Zero vagy Pi
  • Fejléc csapok a Raspberry Pi számára (ha a tieteknél még nincs rajta a fejléc)
  • Egymásba rakható fejlécek a HAT protoboardon való használatra.
  • Kis tű orrfogó
  • Ékszerész csavarhúzó készlete
  • Kis oldalvágók (huzal vágásához forrasztás után)
  • Csipesz
  • Néhány kisméretű drót (én inkább a szilárd magot használom) a protoboardon való használatra
  • Egy kis szilikon (ha úgy dönt, hogy 1,8 mm -es felületre szerelt LED -eket használ a készletben lévő LED -ek helyett)
  • Azt tapasztaltam, hogy a nagyító lámpa nagyon hasznos volt a kis forrasztási munkák megtekintéséhez

1. lépés: Bevezetés a Raspberry Pi GPIO -ba

A Raspberry Pi -vel használt fő interfész a GPIO (General Purpose Input/Output).

Itt megtalálhatja a Pi megfelelő pihe -diagramját. Ez az utasítás a Pi Zero W v1.1 -re összpontosít.

Csak a zöld GPIO csapokat fogjuk használni, elkerülve az SDA, SCL, MOSI, MISO stb. (Felfedeztem, hogy egyes GPIO csapok különleges célokat szolgálnak, ez az egyik előnye, hogy prototípusokat készítenek a kenyértáblán, ezért ragaszkodtam a GPIO 17 (pin #11), 27 (13 pin) és 12 (#32) csapokhoz, ahogy voltak jó pozícióban a kenyértáblámhoz.

A GPIO csapokat úgy tervezték, hogy digitális (bináris) kapcsolóként működjenek; logikailag két állapot egyikeként léteznek: 1 vagy nulla. Ezek az állapotok attól függenek, hogy a csap egy adott küszöbértéket (1) meghaladó feszültséget szolgáltat vagy fogad, vagy egy adott küszöb alatti feszültséget szolgáltat vagy fogad. (A küszöbökről később beszélünk.)

Fontos megjegyezni, hogy míg a Raspberry Pi 5V és 3,3V (3V3) feszültséget is képes szolgáltatni, a GPIO csapok akár 3,3V feszültséggel is működnek. Ennél több kárt okoz a GPIO -ban és esetleg a teljes vezérlőben. (Ezért prototípusokat készítünk kenyérsütőn, és a lehető legolcsóbb Pi -t használjuk!)

A csapok állapotát vagy szoftver (kimenet), vagy más, az állapotban tápláló eszközök (bemenet) kezelhetik.

Próbáljuk ki ezt néhány alapvető SYSFS paranccsal. Nem vagyok biztos benne, hogy ehhez szükség van -e WiringPi -re, de ha problémákba ütközik, érdemes telepíteni, ha a minimális Raspbian -képet használja.

Először is adjunk hozzáférést a GPIO 17 -hez:

sudo echo "17">/sys/class/gpio/export

Most nézzük meg a GPIO értékét:

sudo cat/sys/class/gpio/gpio17/value

Az értéknek nullának kell lennie.

Ezen a ponton a GPIO nem tudja, hogy bemenet vagy kimenet. Mint ilyen, ha megpróbálja manipulálni a GPIO értékét, akkor "írási hiba: A művelet nem engedélyezett" üzenet jelenik meg. Tehát csak mondjuk a csapnak, hogy kimenet:

sudo echo "out">/sys/class/gpio/gpio17/direction

És most állítsa az értéket 1 -re:

sudo echo "1">/sys/class/gpio/gpio17/value

Ellenőrizze újra az értéket, hogy lássa… és az értéknek 1 -nek kell lennie.

Gratulálunk, most hozta létre a GPIO kimenetet, és megváltoztatta az állapotot!

Most egy kicsit többről van szó, de először tanuljunk meg néhány dolgot.

2. lépés: Az ellenállások megértése

Tehát a Wikipédián kereshet ellenállásokat, de mit jelentenek ez számunkra? Elsősorban az alkatrészeinket védik.

Emlékszel, amikor a GPIO -ról beszéltünk, hogy 3.3V -ig működnek? Ez azt jelenti, hogy ha ennél többet adsz egy GPIO tűnek, megsütheted. Ez miért fontos? Néha apró túlfeszültségek vannak bármelyik áramkörben, és ha a maximum 3,3 V, minden kis csuklás problémákat okozhat. A maximális feszültséggel való üzemeltetés kockázatos ajánlat.

Ez különösen igaz a LED -ekre. A LED annyi energiát fogyaszt, amennyit csak tud. Végül a LED ki fog égni, de a jelentős áramfelvétel felhasználhatja az áramkör összes rendelkezésre álló áramát, ami meghibásodást okozhat.

Például: mi történne, ha villát helyezne az elektromos aljzat mindkét végébe? Kevés vagy egyáltalán nincs ellenállás, és megfújja a megszakítót. (És valószínűleg közben megsérül.) Miért nem teszi ezt meg a kenyérpirító? Mivel fűtőelemei ellenállást biztosítanak, és mint ilyenek nem húzzák le az áramkör teljes terhelését.

Tehát hogyan akadályozzuk meg, hogy ez megtörténjen egy LED -el? A LED meghajtásához használt áram mennyiségének korlátozásával ellenállás segítségével.

De mekkora ellenállás? Igen, elolvastam néhány internetes cikket, és végül egy 330Ω -os ellenálláson állapodtam meg 3,3 V -ra, LED -del. Elolvashatja minden számításukat, és maga is kitalálhatja, de néhányat kipróbáltam egy kenyérsütőn, és a 330 tökéletesen működött. Az egyik hivatkozás, amelyet ellenőriztem, a Raspberry Pi fórumokon volt, de a Google keresése sok más dolgot fedez fel.

Hasonlóképpen, a Pi GPIO csapok védelmet igényelnek a túlfeszültség ellen. Emlékszel, hogyan mondtam, hogy akár 3.3V -ot is használnak? Nos, egy kicsit kevesebb nem árt. A legtöbb projekt 1KΩ ellenállást használ, és én is ezt tettem. Ismét kiszámíthatja ezt maga, de ez nagyon népszerű választás. Ismét a Raspberry Pi fórumok szolgáltatnak néhány információt.

Ha ezt nem teljesen érti, olvasson tovább. Vagy csak kövesse az utasításokat. Bármelyik is működik neked.

Sok ellenállás fel van tüntetve a csomagoláson, de miután eltávolította őket, hogyan lehet megkülönböztetni őket? Az ellenállás kis színes csíkjai megmondhatják.

Ezután egy egyszerű LED -et kapcsolunk a kenyérsütő táblára, amellyel elindulhat a munka.

3. lépés: A LED bekötése

LED bekötése
LED bekötése

Az első lépés egy LED bekötése a kenyértáblára. Miután biztonságosan működni fogunk, csatlakoztatjuk a Raspberry Pi -hez, és a GPIO tűről vezéreljük.

Remélhetőleg a kenyértáblájához 3.3V -os tápegység érkezett. Ha nem, akkor mindent beköthet, és közvetlenül a Pi -hez csatlakoztathatja.

Keressen egy LED -et, és kösse be a kenyértáblához az ábrán látható módon 330Ω ellenállás segítségével. A LED hosszabb lába az anód, a rövidebb láb a katód. Az anód a 3,3 V -os hálózathoz csatlakozik, míg a katód a földhöz. Az ellenállás lehet a LED előtt; nem számít. A szabványos huzalszínek a következők:

  • Piros = 5V
  • Narancs = 3.3V
  • Fekete = föld

Miután bekötötték a kenyeretáblát és tápellátást kaptak, a LED -nek világítania kell. Ne folytassa, ha nem működik ez.

4. lépés: A LED csatlakoztatása a GPIO -hoz

A LED csatlakoztatása a GPIO -hoz
A LED csatlakoztatása a GPIO -hoz

Tehát most van egy működő LED ellenállással. Most itt az ideje, hogy csatlakoztassa ezt a LED -et a Raspberry Pi -hez. Célunk egy kimeneti GPIO létrehozása és a GPIO csatlakoztatása a LED -hez, hogy amikor engedélyezzük a GPIO -t, a LED kigyulladjon. Ezzel szemben, amikor letiltjuk a GPIO -t, a LED kialszik. (Ezt később áramkörként fogják használni, amely "megnyomja" a gombot a garázskapu kinyitásához.)

Húzza ki a tápellátást a kenyértáblából, és csatlakoztassa a Pi -t az ábrán látható módon. (Ezt a legjobb, ha a Pi is le van kapcsolva.) A GPIO 17 3.3V -os tápellátását és a földet az egyik földelőcsaphoz kötöttük.

Most indítsa el a Pi -t, és a LED -nek ki kell kapcsolnia. Végezze el ugyanazokat a parancsokat, amelyeket korábban a GPIO pin beállításához és az érték kiadásához:

sudo echo "17">/sys/class/gpio/export

sudo echo "out">/sys/class/gpio/gpio17/direction sudo cat/sys/class/gpio/gpio17/value

Az értéknek nullának kell lennie.

Most engedélyezzük a GPIO -t:

sudo echo "1">/sys/class/gpio/gpio17/value

Ennek be kell kapcsolnia a LED -et. A LED kikapcsolásához egyszerűen tiltsa le a GPIO -t az alábbiak szerint:

sudo echo "0">/sys/class/gpio/gpio17/value

Az egyik dolog, ami előfordulhat, az, hogy elegendő interferencia vagy a LED be/ki ciklusa esetén észreveheti, hogy a LED kissé világít. Ennek oka van, és erről egy későbbi lépésben beszélünk.

5. lépés: Relé használata a LED meghajtására

Relé használata a LED meghajtására
Relé használata a LED meghajtására

Amint azt az előző lépésben említettük, a LED a garázskapu "gombja". Bár a GPIO képes táplálni a LED -einket, nem tudja "megnyomni" a garázskapu gombot. A gombnyomás lényegében csak összeköti a két gombkapcsot, gyakorlatilag egy gombnyomást hajt végre. Ehhez a "sajtóhoz" egy relé szükséges.

A relé nem más, mint valami kapcsoló. Ebben az esetben a Raspberry Pi meg tudja mondani a relének, hogy "nyomja meg" a garázskapu gombot. A prototípusunk esetében a Raspberry Pi azt fogja mondani a relének, hogy kapcsolja be a LED -et … csak hogy tesztelhessük az áramkört.

Amit a reléről tudni kell:

  • A relé 5V -on működik. Ez a teljesítmény csak a relé működtetésére szolgál, és az áramkör más részeiben nem használják.
  • Azt akarjuk, hogy a relénk "normálisan nyitva" legyen. Ez azt jelenti, hogy a relé nyitva marad (nem kapcsolja össze a két vezetéket, vagy "nem nyomja meg a gombot"), amíg aktiválódik.
  • Ez a relé akkor aktiválódik, amikor a GPIO nulla áramot szolgáltat a relé 3.3V -os csatlakozójához. Valóban, ez visszamenőlegesnek tűnik. 3.3V -os tápfeszültség esetén a relé kiold. Tarts velünk ebben a projektben, és meglátod, hogyan működik ez.
  • A két relé terminál csatlakozás teljesen el van választva a Raspberry Pi -től. Ez azt jelenti, hogy bármilyen vezetékkel bármilyen névleges árammal kapcsolhat, mert az áramot egy másik áramforrásból kapja. Az egyszerű, apró Raspberry Pi 3,3 V és 5 V feszültséggel valóban képes egy sokkal nagyobb feszültséget vezérlő relét működtetni. Így irányíthatja a műszerfalon lévő apró kis gomb a nagy áramerősségű fűtött üléseket.

Tehát kezdjük.

Először csatlakoztassa vissza (de kikapcsolt állapotban) a külső tápegységet a kenyértáblához. Ez az energia fogja működtetni a LED áramkört, míg a Raspberry Pi vezérli a relét.

Ezután szünetet kell létrehozni a 3,3 V -os vonalon, amely táplálja a LED -et. (Kapcsolókkal és relékkel mindig a "forró" -t akarjuk kapcsolni, nem a földet.) Ezeket narancssárga és kék színnel jelöltük a diagramon.

Csatlakoztassa a Raspberry Pi -t az ábrán látható módon 5 V -os tápfeszültséggel a reléhez, 3,3 V -os kapcsolóként, és a föld visszatér a Raspberry Pi -hez. Ebben a példában a 3.3V -ot a GPIO 17 -hez kötöttem. Javaslom, hogy az ábrán látható módon csatlakoztasson 1KΩ -os ellenállást a GPIO -vezetékhez, hogy megvédje a GPIO -t a problémáktól. (Ezt az Ellenállások lépésben említettük.)

Kapcsolja be a kenyértáblát, és most kapcsolja be a Pi -t. A LED -nek világítania kell.

Most futtassa a következő parancsokat a Pi -n:

sudo echo "17">/sys/class/gpio/export

sudo echo "out">/sys/class/gpio/gpio17/direction sudo cat/sys/class/gpio/gpio17/value

Az értéknek nullának kell lennie.

Most engedélyezzük a GPIO -t:

sudo echo "1">/sys/class/gpio/gpio17/value

Ennek ki kell kapcsolnia a LED -et.

6. lépés: Felhúzó ellenállás hozzáadása

Felhúzó ellenállás hozzáadása
Felhúzó ellenállás hozzáadása

Ezen a ponton minden cuccnak működnie kell. De van egy dolog, amit nem beszéltünk meg a GPIO -kkal kapcsolatban, ez pedig az "úszó" feszültség, amely lehetséges a korábban említett küszöb alapján.

Míg a GPIO -k általában két logikai állapottal rendelkeznek (1 és nulla), ezeket az állapotokat az alapján határozza meg, hogy feszültsége a feszültségküszöb felett vagy alatt van, amint azt a GPIO részben említettük. A legtöbb GPIO problémája azonban a "lebegő" feszültség lehetősége; a Raspberry Pi esetében valahol nulla és 3,3 V között. Ez interferenciából vagy az áramkör feszültségnövekedéséből/-csökkenéséből adódhat.

Nem szeretnénk olyan helyzetet, amikor a garázskapu gomb reléje csak lebegő feszültség hatására aktiválódhat. Valójában azt akarjuk, hogy csak akkor aktiválódjon, amikor megmondjuk.

Az ilyen helyzeteket fel- és lehúzó ellenállások segítségével lehet megoldani egy adott feszültség érvényesítésére és az úszó feszültség elkerülésére. Esetünkben biztosítani akarjuk a tápfeszültséget, hogy megakadályozzuk a relé aktiválódását. Tehát szükségünk van egy felhúzó ellenállásra, hogy a feszültséget a küszöb fölé emeljük. (A küszöbök vicces dolgok … Próbáltam olvasni róluk, és meg akartam nézni, hogy jól definiáltak -e, és sok információt kaptam -e a fejem fölött, és néhányat, ami túl egyszerűnek tűnt. Elég, ha azt mondom, hogy multiméterrel látom a feszültség alacsonyabb volt, mint 3,3 V, de mivel minden úgy működött, ahogyan a prototípusomat elkészítettem, csak továbbléptem. A futásteljesítménye változhat, és ezért a végtermék forrasztása előtt ezt a panelt is betöltjük.)

Természetesen a Raspberry Pi rendelkezik belső felhúzó és lehúzó ellenállásokkal is, amelyeket kódban vagy indításkor állíthat be. Azonban nagyon érzékeny az interferenciára. Bár lehet használni őket, mivel már ellenállásokkal dolgozunk egy áramkörben, érdemes lehet a külső használat stabilitása.

Ennél is fontosabb, hogy ez létrehozza a felhúzást és elegendő feszültséget ad ahhoz, hogy a GPIO pin állapota 1-re legyen a Pi inicializálása előtt. Emlékszel, hogy a relénk aktiválták -e a LED -et, amikor először inicializáltuk a Pi -t, amíg ki nem kapcsoltuk? A felhúzás megakadályozza a relé aktiválódását indításkor, mivel a relé 3.3V bemenete feszültséget kap, miközben az 5V bemenet feszültséget kap. Ezt Pi -konfigurációban is megtehetjük, ha akarjuk, de ismét, mivel egyébként ellenállásokkal vezetékezünk, kevésbé tűnik sebezhetőnek az operációs rendszer frissítéseivel és terjesztéseivel szemben.

Különböző konfigurációkhoz különböző ellenállásokra lehet szükség, de egy 10 kΩ -os ellenállás működött a relével. A relém LED-je nagyon halvány volt indításkor, de a felhúzás elegendő feszültséget biztosított ahhoz, hogy megakadályozza a relé aktiválását.

Adjunk hozzá egy felhúzó ellenállást az áramkörünkhöz. A kenyértábla diagramján 10 kΩ -os ellenállást adtam hozzá a relé 3,3 V -os bemenete és egy 3,3 V -os forrás közé.

Most van egy áramkörünk, amely alkalmas a garázskapu gombjának "megnyomására"; a LED és a 330Ω ellenállás kicserélése a tényleges gombvezetékekre egyszerű legyen.

7. lépés: Reed kapcsoló érzékelő

Reed kapcsoló érzékelő
Reed kapcsoló érzékelő

Annyira nagyszerű, tudjuk, hogyan néz ki áramkörünk a garázskapu -nyitó aktiválásához. Azonban nem lenne jó tudni, hogy a garázsajtó zárva van, vagy nyitva van? Ehhez legalább egy nádkapcsolóra van szüksége. Néhány projekt kettőt javasol, de mindkettő ugyanazt az áramköri kialakítást fogja használni.

"Általában nyitott" (NO) nádkapcsoló konfigurációt használunk. Ez azt jelenti, hogy áramkörünk nyitva van, amíg a nádkapcsoló a mágnes közelébe nem kerül, ami lezárja az áramkört és lehetővé teszi az áram áramlását.

A fő különbségek az érzékelő és a relé beállításai között a következők:

  • Az érzékelőhöz csatlakoztatott GPIO érzékeli az energiát, tehát bemeneti GPIO lesz (míg a relé kimeneti GPIO -t használt, amely feszültséget szolgáltatott)
  • Mivel az alapértelmezett állapot általában nyitva van, ez azt jelenti, hogy áramkörünk nem lesz aktív. Mint ilyen, a GPIO állapotnak 0-nak kell lennie. Fordítva a reléáramkör felhúzó ellenállásának koncepciójával, meg kell győződnünk arról, hogy feszültségünk a küszöb alatt van, amikor az áramkör nyitva van. Ehhez lehúzható ellenállás szükséges. Ez alapvetően megegyezik a felhúzással, de áram helyett a földhöz van csatlakoztatva.

A reléáramkörhöz hasonlóan a kenyérsütő táblára fogjuk kötni a dolgokat, mielőtt csatlakoztatnánk a Pi -hez.

Használjuk a tápegységünket, és kössünk egy LED -et, 330Ω ellenállást és földelő vezetéket. Ezután csatlakoztassa a 3.3V -ot a nádkapcsoló egyik oldalához, és egy jumpert a nádkapcsoló másik oldaláról a LED -hez. (Ha olyan nádkapcsolója van, amely támogatja a NO és NC funkciót, használja a NO állást.) Távolítsa el a mágnest a nádkapcsolótól, és kapcsolja be a kenyérsütő tápellátását. A LED -nek nem kell világítania. Mozgassa a mágnest a nádkapcsoló felé, és a LED -nek világítania kell. Ha az ellenkezőjét teszi, akkor be van kötve az NC -hez (általában zárt)

8. lépés: A Reed kapcsoló csatlakoztatása a Pi -hez

A Reed kapcsoló csatlakoztatása a Pi -hez
A Reed kapcsoló csatlakoztatása a Pi -hez

Tehát most, hogy az áramkör Pi nélkül működik, eltávolíthatjuk az áramot a kenyértábláról, és összekapcsoljuk a Pi -t.

Újra használni fogjuk a GPIO17 -et, mert már tudjuk, hol van.

A reléáramkörhöz hasonlóan mi is megvédjük a GPIO csapot 1KΩ ellenállással; azonban 10 kΩ-os ellenállást fogunk használni a földeléshez a lehúzás létrehozásához.

Miután mindent bekötöttünk, távolítsuk el a mágnest a nádkapcsolótól, indítsuk el a P, i -t, és menjünk egy parancssorba, és inicializáljuk a GPIO -t, megjegyezve, hogy ezúttal egy bemeneti GPIO -t hozunk létre:

sudo echo "17">/sys/class/gpio/export

sudo echo "in">/sys/class/gpio/gpio17/direction sudo cat/sys/class/gpio/gpio17/value

Az értéknek nullának kell lennie. Mozgassa a mágnest a nádkapcsolóhoz. A LED -nek világítania kell, és az értéke 1.

Voálá! A nádkapcsolónkat a Pi -hez kötöttük!

9. lépés: Állandó megoldás készítése prototípus -táblán

Állandó megoldás létrehozása a prototípus -táblán
Állandó megoldás létrehozása a prototípus -táblán
Állandó megoldás létrehozása a prototípus -táblán
Állandó megoldás létrehozása a prototípus -táblán
Állandó megoldás létrehozása a prototípus -táblán
Állandó megoldás létrehozása a prototípus -táblán
Állandó megoldás létrehozása a prototípus -táblán
Állandó megoldás létrehozása a prototípus -táblán

Most, hogy tudjuk, hogyan kell kinézniük áramköreinknek, itt az ideje, hogy forraszthassunk egy állandó verziót egy prototípus -táblán. Mivel Pi Zero W -t használok, apró proto táblákat szereztem be.

Úgy gondoltam, jó lenne használni a Zero formátumot, és össze lehetne rakni egy vagy több táblát, egy kiegészítő modult, amelyet a Raspberry Pi HAT-nak (Hardware Attached on Top) nevez. Nos, technikailag, mivel nem rendelkezik semmilyen típusú EEPROM -mal, és nem regisztrálja magát, ez nem egy kalap, de el kell neveznem. De a formátum szépen rögzíthető és kiküszöböli a patkányok fészket a vezetékekből, szóval ez szép.

A kihívás az, hogy a proto táblák kicsik, így nem fér el rájuk sokat. Ezenkívül a lyukak egyike sem kapcsolódik sorokhoz, mint a nagyobb proto táblák. Bár ez kényelmetlennek tűnhet, valójában életmentő.

Arra gondoltam, hogy létrehozhatok egy kalapot minden garázsajtóhoz, amit irányítani szeretnék. Így kibővítheti ezt a projektet az igényeinek megfelelően.

A proto táblán azt tapasztaltam, hogy elegendő hely van három áramkör létrehozásához:

  1. relé áramkör
  2. érzékelő áramkör
  3. második érzékelő áramkör

Ez nagyon jó minden garázskapu -projekthez.

Tehát én a GPIO17 -et és a 27 -et használtam az érzékelőkhöz, és a GPIO12 -t a reléhez. Az igazán szép dolog ebben a proto -táblában az, hogy a GPIO -hoz vezethet anélkül, hogy megérintené a fejlécet. De igen, az ellenállások (és opcionálisan a LED -ek) mellett forrasztási fejlécet kell forrasztani.

Nagyjából újra létrehoztam azokat az áramköröket, amelyeket a táblán prototipáltunk. Mondhatod, hogy a forrasztásom nem tökéletes, de még mindig működik. (A következő táblák jobbak lesznek, mióta gyakoroltam.) Van egy Aoyue 469 -esem, és a hajszál fölött csak egy hajszállal volt a legjobb hőmérséklet a GPIO fejléc forrasztására vonatkozó ajánlások alapján.

A külső csatlakoztatott sorokat a földeléshez használtam, a belsőt pedig a 3.3V -hoz. És az ellenállás vezetéket használtam hídként, mivel nem volt összekötött sorunk. A többi átlós és oldalirányú, mert ez volt a legjobb módja annak, hogy illesszem őket a táblára.

Az L-R-ből (elölről, az ellenállás oldaláról nézve) az általam hozzáadott kimeneti csapok az érzékelő GPIO vezetékéhez, a második érzékelő GPIO vezetékhez és a relé GPIO vezetékhez tartoznak. Ahelyett, hogy közvetlenül a GPIO -hoz vezetne, amit a fejlécből megtehetnénk, ezek a tűk az összes ellenállásunkhoz csatlakoznak, és az érzékelők esetében egy microLED -et adtam hozzá. (Vegye figyelembe, hogy a LED teljesen külön hurokban van, tehát ha kiég, az áramkör továbbra is működik.)

A melléklet egy Fritzing fájl, de mivel az Instructablesnek problémái vannak a fájlok feltöltésével, beágyazásom érdekében hamis "txt" kiterjesztést kellett adnom.

10. lépés: Hivatkozások

Raspberry Pi garázskapu -nyitó projekt (az inspiráció)

Idióta útmutató a Raspberry Pi garázskapu -nyitóhoz

iPhone vagy Android garázskapu -nyitó

Használjak ellenállást vagy sem?

Pullup és Pulldown ellenállások használata a Raspberry Pi -n

Az SSH beállítása

Raspberry Pi Pin diagramok.

SYSFS parancsok

WiringPi

Ellenállások és LED -ek

Védelem (sic) GPIO csapok

Ellenállás színkód számológép és diagram

Fel- és lehúzó ellenállások

GPIO feszültségküszöbök

GPIO bemeneti feszültségszintek

GPIO vezérlés a config.txt fájlban

GPIO felhúzó ellenállás (sic)

Miért van szükségünk külső húzóellenállásokra, ha a mikrovezérlők belső húzóellenállásokkal rendelkeznek?

Mi az a Raspberry Pi HAT?

A Raspberry Pi Zero W GPIO csatlakozó forrasztása

Ajánlott: