Tartalomjegyzék:

IronForge a NetBSD kenyérpirító: 9 lépés (képekkel)
IronForge a NetBSD kenyérpirító: 9 lépés (képekkel)

Videó: IronForge a NetBSD kenyérpirító: 9 lépés (képekkel)

Videó: IronForge a NetBSD kenyérpirító: 9 lépés (képekkel)
Videó: WoW Classic rogue Iron forge gank 2024, December
Anonim
IronForge a NetBSD kenyérpirító
IronForge a NetBSD kenyérpirító
IronForge a NetBSD kenyérpirító
IronForge a NetBSD kenyérpirító
IronForge a NetBSD kenyérpirító
IronForge a NetBSD kenyérpirító

Ez a projekt nem kenyérpirítóként indult, végül azzá vált.

Az ötlet akkor jött, amikor meghalt a konyhai számítógépem (egy régi Windows CE PDA), amelyet a főzési receptjeim megjelenítésére használtam. Először azon gondolkodtam, hogy létrehozok egy E-tintalapú, alacsony energiájú kijelzőt, amelyet a hűtőszekrényemre rögzítenek mágnesekkel, és nagyon sokáig lemerül az elemekről, de aztán egy régi 2.1-es surround rendszert kaptam a konyhába zenehallgatás céljából. Nos, arra gondoltam, hogy lehet, hogy egy számítógépnek kell lennie, amely mindkettőre képes, és akkor eszembe jut egy másik régi projekt:

www.embeddedarm.com/blog/netbsd-toaster-powered-by-the-ts-7200-arm9-sbc/

Az eredeti NetBSD kenyérpirító. Ez a projekt önmagában egy tréfa vicc azok számára, akik nem tudják:

"Régóta úgy tartják, hogy a UNIX-szerű OS NetBSD minden típusú géphez hordozható, kivéve talán a konyhai kenyérpirítót."

Akkor hozzunk létre egy kenyérpirítót, amely NetBSD -t futtat, és:

  • A hőmérséklet és a pirítási idő teljesen jól beállítható a felhasználó által
  • Bár nem pirítós, megjeleníti az időjárási adatokat 2 meteorológiai állomásról egy stílusos műszerfalon
  • Pirítás közben a grafikonon és számjegyekben is megjeleníti a hátralévő időt és hőmérsékletet
  • Ha nem pirít, ébresztőórának és zenét hallgathat, akár filmeket is játszhat rajta
  • Megjeleníti a főzési recepteket, vagy rendszeres böngészéshez használható

1. lépés: A kenyérpirító működése és a hardver kiválasztása

Kenyérpirító működése és a hardver kiválasztása
Kenyérpirító működése és a hardver kiválasztása
Kenyérpirító működése és a hardver kiválasztása
Kenyérpirító működése és a hardver kiválasztása
Kenyérpirító működése és a hardver kiválasztása
Kenyérpirító működése és a hardver kiválasztása
Kenyérpirító működése és a hardver kiválasztása
Kenyérpirító működése és a hardver kiválasztása

Itt, az előző kávézással ellentétben, nem hiszem, hogy jól választottam a kenyérpirítót, ezért röviden bemutatom a kenyérpirító belső működését, a kritériumok és a tapasztalatok egyéni megválasztását, és hagyom, hogy az olvasó válassza ki saját kenyérpirítóját erre a csapkodásra.

A kenyérpirítóval szemben az egyik fő kritériumom az volt, hogy egyszerre 4 szelet kenyeret készítsek, és automatikus legyen, így néhány órás német Ebay -en való átfutás után úgy döntöttem,

Severin AT 2509 (1400W) kenyérpirító

www.severin.de/fruehstueck/toaster/automati…

Ez egy széles körben elterjedt márka Németországban, körülbelül 40-50 EUR-ba került, amikor újként írták.

Főbb jellemzők, amelyeket a gyártó hirdet:

● Hőszigetelt rozsdamentes acél ház

● integrált tekercses pörkölés

● 2 hosszú résű pörkölőtengely akár 4 kenyérszelethez

● Sütési idő elektronika hőmérséklet -érzékelővel

● állítható barnulási fok

● Leolvasztási szint jelzőlámpával

● Bemelegítés további barnulás nélkül, ellenőrző lámpával

● külön kioldógomb jelzőfénnyel

● Kenyérszeletelő központosítás a kenyér mindkét oldalának egyenletes pirításához

● automatikus kikapcsolás kenyérlemez elakadása esetén

● morzsatálca

● Kábel visszatekerés

Bár a gyártó nem állította, hogy a hőmérséklet állítható, 2 félrevezető pontot tesz:

● Bemelegítés további barnulás nélkül, ellenőrző lámpával

● Sütési idő elektronika hőmérséklet -érzékelővel

Ezen állítások idézéséhez nézzük meg, hogyan működik a gép:

1, Normál állapotban a 230 V -os hálózat teljesen le van választva, a kenyérpirító egyetlen része sem kap áramot.

2, Amikor a felhasználó lehúzza a kart (amely szintén lehúzza a kenyeret), akkor mindkét oldalon összekapcsolja a fűtőelemet.

Most, amit itt csináltak, egy olcsó, de ügyes kivitel. A kenyérpirítóban nincs transzformátor, így kíváncsi lehet, hogyan éri el az alacsony (10V AC ~) feszültséget. A kenyérpirító bal oldalán van egy külön tekercs, amely az egyik fűtőelemmel van összekötve, és úgy működik, mint egy lefelé irányuló transzformátor, amely 10 V AC-t hoz létre.

Ezután egyetlen dióda egyenirányító segítségével 10 V egyenáramot hoz létre, amely táplálja a kenyérpirító fő vezérlőpaneljét.

3, Amire először gondoltam - hogy ez egy mágnesszelep + transzformátor -, egyetlen mágnesszelepnek bizonyult közvetlenül a kar alatt, amelyet most a vezérlőáramkör táplál, és csak egy dologért felelős (hogy a kart lehúzzák).

Amint ez a mágnesszelep elengedi az egész kenyeret, a kenyérpirító alapvetően lekapcsolja saját áramát, ezzel befejezve a pirítási folyamatot.

Joggal kérdezheti tehát, hogy melyek azok az igényes gombok és állítások az adatlapon, amelyek képesek leolvasztani, előmelegíteni, felmelegedni és bármi más … Azt mondanám, hogy ez tiszta marketing BS. Tehetnek rá időbeállítót és 1 egyetlen gombot, mert a nap végén ez az áramkör nem más, mint egy időzítő. Mivel ez az áramkör ugyanabból az áramforrásból táplálkozik, mint a fűtőelem, és nem tudja szabályozni az egyetlen dolgot ebben a gépben (a fűtőtestet), ezért nem is foglalkoztam az áramkör további módosításával, csak bedobtam a helyére. a szemetes.

Most, hogy a katonai szintű vezérlőáramkör nem áll rendelkezésre, vegyük a TELJES KONTROLLOT a kenyérpirító felett.

2. lépés: Hardverlista

Hardverlista
Hardverlista
Hardverlista
Hardverlista
Hardverlista
Hardverlista

Ez ismét nem teljes bom, nem tartalmazza az összes alapot, például a vezetékeket és csavarokat:

  • 1x AT 2509 (1400W) kenyérpirító vagy bármilyen más kenyérpirító
  • 1x Arduino Pro Micro
  • 1x 5 hüvelykes ellenálló érintőképernyős LCD kijelző HDMI a Raspberry Pi XPT2046 BE számára
  • 1x Málna PI 2 vagy Málna PI 3
  • 1x SanDisk 16GB 32GB 64GB Ultra Micro SD SDHC kártya 80MB/s UHS-I Class10 w adapter (a PI-hez)
  • 2x SIP-1A05 Reed kapcsoló relé
  • 1x 1db MAX6675 modul + K típusú hőelem hőmérséklet érzékelő Arduino -hoz (tartalék alkatrészek vásárlása ajánlott)
  • 1x kimenet 24V-380V 25A SSR-25 DA félvezető relé PID hőmérséklet-szabályozó
  • 1x Mini DC-DC Buck Converter Step Down modul tápegység Repülőmodellezéshez (vásároljon többet ezekből csere helyett).
  • 2x forgó kódoló modul téglaérzékelő fejlesztőlap Arduino számára (forgó + középső kapcsoló, ajánlott többet vásárolni ezekből a cserékhez)
  • 2x WS2812B 5050 RGB LED gyűrű 24Bit RGB LED
  • 1x 1mm A5 átlátszó Perspex akril lemez műanyag plexi vágás 148x210mm tétel
  • 1x12V 2A DC adapter (az 1A elegendő lesz a Pi+Screen+Ardu számára is, de jobb, ha biztos lesz abban az esetben, ha további eszközöket csatlakoztat USB -n keresztül, azok lemerítik az extra áramot)
  • 1 db PCS HC-SR501 IR piroelektromos infravörös IR PIR mozgásérzékelő modul
  • 2x áthidaló huzal 5 tűs hüvely -női Dupont kábel 20 cm Arduino számára (a forgókhoz érdemes többet vásárolni)
  • 2x alumíniumötvözet hangerőszabályzó gomb 38x22 mm 6 mm -es potenciométeres tengelyhez
  • 1x 230V relé
  • Egy csomó egysoros hüvelyes 2,54 mm + férfi törhető fejcsatlakozók a csatlakozásokhoz
  • Opcionális az Xbee mod esetében: 1X10P 10 tűs 2 mm -es női egysoros egyenes tűs fejléc XBee foglalat
  • Választható Xbee mod esetén: 1 Xbee
  • Opcionális az Xbee mod esetében: 1x Jumper vezeték 4 tűs hüvely -női Dupont kábel 20 cm Arduino számára (Xbee Raspi között)

Tápellátáshoz 12 V -ot kell használnia 5 V helyett, mert a mágnesszelep nem fogja tartani ezt az alacsony feszültségszintet, ne felejtse el hozzáadni a visszaugró diódát a mágnesszelephez.

Ha úgy dönt, hogy más alkatrészeket használ, pl.: különböző buck modul a feszültség leállításához 12V-> 5V-ról, akkor újra kell terveznie a táblát, az adott kis négyzet alakú konverterhez készült.

3. lépés: A tok módosítása: hátul az előlap

A tok módosítása: hátul az elülső
A tok módosítása: hátul az elülső
A tok módosítása: hátul az elülső
A tok módosítása: hátul az elülső
A tok módosítása: hátul az elülső
A tok módosítása: hátul az elülső

A fő vezérlőáramkör eltávolítása után még mindig egy nagy csúnya lyuk nézett ki a kapcsolók helyére, ezért úgy döntöttem, hogy csak ezt az oldalt fogom használni hátulként, és rögzítem az SSR (Solid State Relay -> fűtésvezérlés) + 230 V AC relé (teljesítményérzékeléshez) + a 12 V -os adapter, amely az egész áramkört táplálja.

Ezt a kenyérpirító modellt nehéz volt szétszedni és összeszerelni. Nem találtam más módot a tok eltávolítására, mint a behúzást egy mélységgel a fő lehúzó kar alatt, hogy fel lehessen emelni a burkolatot a karok lecsavarása és eltávolítása után (szerencsére, mivel ezen a részen van egy külső műanyag bevonat ez észrevehetetlen lesz).

Behelyeztem a MAX6675 hőelem érzékelő végét a kenyérpirító aljába, a főkarral ellentétes szélére (ahol ellentétes lenne a kar mechanizmusával).

A belső tok finom alumínium, nem is kell fúrni, egy kis lyuk könnyen kitágítható csavarhúzóval, majd behelyezve az érzékelőt, a trükkös rész az volt, hogy a belső oldalról ellencsavarja. Ehhez egy okos megoldást kell találnom, amit a képek mutatnak.

A fő belső kenyérpirító burkolatának eltávolítása a fűtőelemmel csak erős idegzetű emberek számára ajánlott, és nem ajánlott. Egyébként nincs más tennivalója odabent.

A MAX6675 vezetékei éppen elég hosszúak voltak ahhoz, hogy könnyen át lehessen vezetni a gép alján a lyukba, ahová a kábeleket kivezették.

Az összes szükséges kábel átvitele egyikből a másikba az egyik legnagyobb kihívást jelentő módosítási feladat volt. Nem kellett újabb lyukat fúrnom a (most hátsó) oldalon, mert a kábelek csak a kapcsolókból származó lyukat használhatják. Ezután a kábeleket a ház falához kell rögzíteni, le kell vezetni az aljára egy nagyon szűk helyen keresztül, ahol a nagyfeszültségű vezérlőpanel pár további vezetékével összekapcsolódnak, nevezetesen:

  • 1 vezeték a fűtőelemtől -> SSR -re megy
  • 1 vezeték a 230 V -tól (lehetőleg forró barna pont) -> SSR -re megy
  • 2 vezeték a 230 V -ról, zárt állapotú kapcsolóval -> Ugrás az indítóreléhez
  • 2 vezeték a 230V -os főbemenetből -> 12V -os adapterhez megy hátul
  • Árnyékolt vezetékek a hőérzékelőből

És ez minden, amire szüksége van a kenyérpirító vezérléséhez.

Az ipari forrasztás miatt úgy döntöttem, hogy egyszerűen elvágom a vezetéket a fűtőelem és a fővezeték egyik vége között (a kapcsoló után), és sorkapocsokkal csatlakoztatom az SSR -hez.

230V -ról (hálózati feszültség) működő relére lesz szükség. Ez az indítórelé, amely tudatja az Arduino -val, hogy a felhasználó lehúzta a kart, azaz elindította a pirítóst. Ne felejtse el, hogy a vezérlőáramkör már nincs a helyén, a mágnesszelep nem kap áramot, ami lenyomná a kart, és a fűtés is le van kapcsolva (az SSR -en keresztül vezérelve). Mindez innentől kezdve az Arduino feladata lesz.

A 12 V -os egyenáramú adapter közvetlenül a fővezetékhez van kötve (hátul egy extra be-/kikapcsolóval bővítettem). Ez állandó áramellátást biztosít az áramkör számára. A kenyérpirító készenléti állapotban csak fogyaszt: 5,5 W bekapcsolt képernyővel és 5,4 W kikapcsolt állapotban.

4. lépés: Elülső arciklikus tábla

Arciklikus elülső tábla
Arciklikus elülső tábla
Arciklikus elülső tábla
Arciklikus elülső tábla
Arciklikus elülső tábla
Arciklikus elülső tábla

Nem vagyok szakértője ennek az anyagnak a kezelésében, azt a tanácsot kaptam, hogy vágja le rajta a lyukakat nagy fordulatszámú dremmel-rel folyó víz alatt, de nem akartam túl tökéletesíteni, így csak a normál fúrást végeztem. lyukak, teljesen add fel, hogy a Raspi és a képernyő közötti részt ki kell törni, ehelyett csak a képernyő távtartóin és a Raspi csatlakozóján fúrtam lyukakat, majd a maradék anyagot négyzetre fúrtam, hogy a csatlakozó illeszkedjen keresztül.

Látható, hogy a plexitáblán apró repedések vannak egyes fúrások körül, így tudja, mit kell kerülni, ha a tökéletes dizájnra törekszik.

Ennek ellenére a hőség miatt nincs lehetőség a kenyérpirító tokjába tenni semmit, minden elektronikát biztonságos távolságra kell felszerelni a fűtőtesttől.

Nem készítettem megfelelő tervezési rajzokat a 148x210 mm -es plexilaphoz, csak megpróbáltam mindent szimmetrikusra és egy vonalba állítani, ezért elnézést kérek, hogy nem tudok semmilyen sémát megadni ehhez a részhez, ezt egyedül kell elvégeznie. Viszont van egy tanácsom:

Mielőtt felragasztaná a LED -gyűrűket, kapcsolja be őket Arduino -val, és világítson, és jelölje meg tollal az ELSŐ és az UTOLSÓ LED -et a hátoldalon, hogy végül ne kelljen kissé elforgatva szerelni őket, mint én (ez azonban szoftveresen javítható))

6 távtartó van kialakítva, amelyek a teljes elülső panelt a helyükön tartják, de a végén, mivel a forgások rövid hossza miatt a két alsó nem kerül át a panelen.

Rendszeres PC alaplapi távtartókat használtam a forgók és a plexi panel között, és még 2-2-et a forgó mögött, hogy további stabilitást nyújtsak, amikor a gombokat benyomják.

5. lépés: Kenyérpirító vezérlő áramkör

Kenyérpirító vezérlő áramkör
Kenyérpirító vezérlő áramkör
Kenyérpirító vezérlő áramkör
Kenyérpirító vezérlő áramkör
Kenyérpirító vezérlő áramkör
Kenyérpirító vezérlő áramkör

Ez egyike volt azoknak a projekteknek, amelyek valóban kihasználták az ÖSSZES Arduino tűt:) az RX és a TX a kommunikációs modul jövőbeli bővítésére volt fenntartva.

A fő áramköri lap mindenről energiát biztosít egy buck konverteren keresztül (Arduino, Raspi, Screen, SSR, Relays). Itt megjegyezném, hogy ez a feszültségszabályozó nem éppen a legkorszerűbb, nem mehet túl a 12 V egyenáramú bejövő feszültségen. Ha úgy dönt, hogy pontosan ugyanazt a típust használja, győződjön meg arról, hogy az adapter stabil 12 V -os nyitott áramkört biztosít (nem úgy, mint a WRT54G adapter, ezzel pillanatok alatt látni fogja a varázslatos füstöt).

A táblát a lehető legmodulárisabbá tettem, ahol csak tudtam, aljzatokat használva. A 2 reed relén kívül minden más könnyen cserélhető.

Mindkét kiváló nád relé beépített flyback diódákkal érkezik, és legfeljebb 7 mA -t fogyasztanak, így közvetlenül csatlakoztathatók bármely Arduino csaphoz (ezeket a jövőben is ajánlani fogom). A relék funkciója:

Az egyik a mágnesszelep bekapcsolása a pirítási folyamat kezdetén (hogy a kar le legyen húzva).

Az egyik a képernyő automatikus be- és kikapcsolása, ha mozgást észlel.

Úgy gondoltam, hogy a HDMI -képernyő 24 órás, 24 órás működtetése nem biztosít hosszú élettartamot (különösen az általam használt csak olcsó hamisítvány, nem az eredeti WaveShare:

És a PC is bekapcsolhatja a képernyőt, amikor belép a szobába? Szerintem nem, a BSD kenyérpirító képes!

A képernyő alapvetően egy 10 perces időzítőn van, amely automatikusan felpattan, amikor újra mozgás történik. Tegyük fel, hogy be van kapcsolva, és 9 perc múlva ismét mozgás van, ami azt jelenti, hogy további 10 percig bekapcsolva marad. A be- és kikapcsolás az SSR kivételével semmilyen áramkör számára nem egészséges.

Ez elvezet minket a fűtés vezérlésének harmadik és utolsó vezérlőeleméhez. Ezeket a kis eszközöket kifejezetten arra tervezték, hogy sokat be- és kikapcsoljanak, hogy ellenőrizzék a hőmérsékletet. Amit én választok, az közvetlenül az Arduino kimeneti csapból fog működni.

Az eredeti kivitelben egy másik relé lett volna a táblán a 2.1 hangszóró bekapcsolásához, mielőtt a Raspberry pi lejátssza a riasztási hangot reggel (szintén nagyon könnyű hozzáadni egy dalt a pirítás befejezésekor), de mivel ez az IoT miért zavar? Csak egy másik raspit kér a hálózatomon, hogy ezt tegye meg helyettem egy normál 433 MHz -es RCSwitch -el.

Ahogy általában, kisebb hibák is előfordultak a tábla 0,4 -es verziójában, ami a képeken is látható. Ugyanis további 2 5V -os csatlakozó és egy bemeneti relé csatlakozója maradt ki az Arduino 10 -es tűn.

Ezeket kijavítottam a 0.5-ös verzióban, és készítettem egy nem Xbee verziót is.

Mivel ez egy kétrétegű tábla pusztán ezeknek az elrendezéseknek a letöltésével, és a barkácsolás nehéz lenne, pontosan ki kell nyomtatnia a két oldalt, maratnia kell a táblát, és meg kell találnia az oldalak összekapcsolásának módját, így később bekapcsolom az Easyeda megosztott projektbe. Javasoljuk, hogy közvetlenül tőlük rendelje meg.

6. lépés: Xbee Mod

Az Xbee csak azért van itt, hogy közvetlenül keresztül vezesse a kávéfőzőt, mert viszonylag közel van hozzá, és nincs akadály a kettő között.

Ennek semmi köze a kenyérpirítóhoz vagy a kenyérpirító kódjához.

Az Xbee modról: ez teljesen opcionális, ezért is csatolom ennek a táblának a rajzát az Xbee -vel és anélkül. Az Xbee közvetlenül a Raspberry PI RX/TX hardver UART -portjába (ttyAMA0) van forrasztva, amelyet ugyan kivetítenek a képernyő csatlakozóira, de a képernyő nem használja azt (SPI interfészt használ az érintési koordináták közléséhez a PI és saját maga között).

Külön soros portot rendeltem a PI -n az Xbee kommunikációhoz, ahelyett, hogy az üzeneteket a Raspberry -> Arduino -> 5v3v konverter -> Xbee -> más eszközökön keresztül továbbítanám. Így az sem jelent problémát, hogy a pirítós folyamat blokkolja az egész MCU -t.

7. lépés: Kenyérpirító vezérlőkód

A kód meglehetősen egyszerű, ami annak a ténynek köszönhető, hogy alapvetően egyirányú kommunikáció van az Arduio -> Raspberry PI között.

Ezt a készüléket a kávéfőzővel ellentétben nem lehet telefonról vagy számítógépről csak kézzel vezérelni néhány divatos vezérlővel.

A PI egyetlen funkciója itt az adatnaplózás és a szép grafikonok megjelenítése. Ez nem üveg a kenyérpirító működéséhez, teljesen kikapcsolható vagy akár eltávolítható a projektből, az Arduino elvégzi a munkát.

Az elején a kód visszaállítja a led gyűrűket, elindítja a különböző tartási időzítőket, és minden hurokban a 2 forgó kapcsoló bemenetéről néz. Ez a bemenet jelentheti az óramutató járásával megegyező vagy az óramutató járásával ellentétes irányba történő elforgatást vagy a 2 kapcsoló bármelyikének megnyomását (amely készenléti állapotban csak egy IRONFORGE_OFF_ALARM parancsot küld a számítógépnek, majd visszatér normál IRONFORGE_OFF állapotba).

A rotary_read_temp () és a rotary_read_time () belsejében a global_temp és a global_time változók módosulnak. Ez az egyetlen hely a kódban, ahol ezek az értékek megváltoztathatók, és a pirító események között tárolják értékeiket.

Mindkét függvényen belül a rotary_memory () meghívásra kerül, amint a pozíciók megváltoznak. Ez arra szolgál, hogy visszahelyezze a led állapotokat a gyűrűkre, mert a pirítás után azok visszaállnak feketére, nem vesztegetik az energiát és meghosszabbítják élettartamukat.

A LED -lámpák időnként 10 percenként le is kapcsolnak, ha nem történt forgó esemény.

E két funkció együttes alkalmazása a következő eredményeket eredményezi:

1, tétlen állapot feltételezése

2, Bármelyik forgó elmozdult (ha korábban módosították, akkor ezek az értékek visszaállnak a memóriából és megjelennek a LED -eken)

3, Ha a pirítási folyamat nem indul el, és nincs több beállítási esemény, a fények ismét kialszanak

Ezeket külön visszatartási időzítőn is áthelyeztem a képernyőről, mert a számítógépet sokat fogják használni az időjárási adatok megjelenítésére, de nem szeretném, ha a forgó LED -ek folyamatosan helyreállnának, mert nem akarok egymillió pirítóst készíteni nap.

A főzés (Arduino Side):

Ez akkor indul el, amikor a rendszer aktiválódik a bemeneti indító (230V) reléből (és mind az idő, mind a hőmérséklet eltér a nullától). A program folyamata a következő az Arduino oldalon:

1, Kapcsolja be a mágnesszelepet a kar lenyomásához

2, Kapcsolja be az SSR -t a felmelegedéshez

3, Az időtől függően indítson el egy pirító hurkot, amely visszaszámol. Minden ciklusban küldje el a következő adatokat a számítógépnek:

-HŐMÉRSÉKLET (eredetileg lebegőpontos érték, de 2 CSV -karakterláncként kerül elküldésre)

-TIME marad (másodpercben, ez vissza lesz konvertálva mm: ss formátumba a másik végén)

4, Minden ciklusban a beállított hőmérséklettől függően kapcsolja be vagy ki az SSR -t a pirítási folyamat vezérléséhez

5, A pirítós ciklus végén az IRONFORGE_OFF parancs elküldésre kerül a számítógépre

6, Kapcsolja ki az SSR -t és engedje el a mágnesszelepet

7, Játssz LED játékot a bemutatóhoz (itt zenelejátszást vagy bármilyen más műveletet is hozzáadhatsz)

8, sötétítő ledek

Amint azt korábban mondtam, a főzési pirítóhurok teljesen blokkolja az MCU -t, ezalatt más feladat nem végezhető el. Ezenkívül figyelmen kívül hagyja a forgó bemeneteket ebben az időszakban.

A főzés (Raspberry PI Side):

A málna pi a C fej vezérlőprogramot futtatja egy jogosulatlan felhasználóval, aki felelős az asztalon végrehajtott összes interakcióért.

Úgy döntöttem, hogy a Conky -t használom az összes grafikonon, mert egy évtizede használom, és úgy tűnt, hogy a legegyszerűbb használni a feladathoz, bár van néhány fogása:

-A grafikon szemcsézettségét nem lehet megváltoztatni, a grafikon túl finom, még a maximális pirítási idő (5 perc) után is csak a rúd felére jut

-Conky szeret lezuhanni, különösen akkor, ha folyamatosan megöli és újratölti

A második oknál fogva úgy döntöttem, hogy minden felügyeletet külön felügyeleti eljárással hozok létre, hogy megvédjem.

Az alapjárati alapjáratú lua 2 különálló koncyt használ (az egyik az időjárási adatokat, a másik az órát).

Amint a pirítás elkezdődik:

1, Az Arduino jelzi a málna pi C programot az IRONFORGE_ON sorozaton keresztül

2, A Control C program leállítja a 2 conky szálat, és betölti a 3. conky lua -t a pirításhoz

3, A Control C program mind a hőmérséklet, mind az idő értékeket kiírja a ramdisk -en található szöveges fájlok elkülönítésére (hogy ne végezzen szükségtelen RW műveleteket az SD -kártyán), amit a conkies beolvas és automatikusan megjelenít. A program felelős az MM: SS formátumig hátralévő idő megteremtéséért is.

4, A pirítás végén a C program leállítja az aktuális pirítószálat, és újraindítja a 2 süteményt, amelyek visszatérnek az időjárás és az idő kijelzéséhez

5, A riasztás észlelése érdekében a C program közvetlenül leállíthatja a zenét a cronból, ha készenléti állapotban bármelyik forgószár be van nyomva

8. lépés: Minden pirítósunk a miénk: NetBSD vs Raspbian

Minden pirítósod ránk tartozik: NetBSD vs Raspbian
Minden pirítósod ránk tartozik: NetBSD vs Raspbian

Bár a kenyérpirító főleg a NetBSD és a képernyő megjelenítésére készült, a hang, az Arduino mind együttműködik vele, nincs érintőképernyős támogatás. Nagyra értékelném a segítséget mindenkitől, akit érdekel, hogy írjon ehhez egy illesztőprogramot.

Az LCD érintő chipje XPT2046. A képernyő SPI használatával küldi vissza a kurzor beviteli koordinátáit a Málnához.

www.raspberrypi.org/documentation/hardware…

  • 19 TP_SI SPI adatbevitel az érintőpanelen
  • 21 TP_SO SPI adatkimenet az érintőpanelen
  • 22 TP_IRQ Az érintőpanel megszakítása, alacsony szintű, miközben az érintőpanel érzékeli az érintést
  • 23 TP_SCK SPI óra az érintőpanelen
  • 26 TP_CS Érintőképernyős chipkiválasztás, alacsony aktivitású

Az írás idején nem tudok olyan Raspberry PI kompatibilis (pajzs) érintőképernyőről, amely működő NetBSD illesztőprogrammal rendelkezik az érintőpadhoz.

9. lépés: Zárás és teendők listája

Zárás és teendők listája
Zárás és teendők listája

Mint mindig, minden segítséget, közreműködést, javítást a kódban szívesen fogadunk.

Ez egy nemrég befejezett hack volt, így később frissítem a projektet a hiányzó kódrészletekkel (Raspberry pi C vezérlőkód, Conky luas stb.). Azt is tervezem, hogy automatikusan átméretezhető 8 GB/16 GB-os sdcard-képeket készítek, amelyek mindent tartalmaznak. Mivel a Raspberry PI szabványos hardver, bárki, aki úgy dönt, hogy felépíti a projektet, csak letöltheti a képeket, kiírhatja őket egy sdcardra, és a kenyérpirító ugyanúgy működik, mint az enyém. A hálózat beállítására csak a megfelelő idő (NTP) és a hőmérséklet kijelzése szükséges.

Az egyik hátralévő lépés az lesz, hogy FLIR -rel megmérjük a belső hőmérsékletet, és hozzáadjuk a beállításokat a MAX termoérzékelő leolvasásához, mert úgy gondolom, hogy túl lassan melegszik fel a kis, maximum 5 perces pirítási időszakhoz.

Azt is tervezi, hogy a beállított hőmérséklettől függően hozzáadja az automatikus skálázási időt, hogy meghosszabbíthassa ezt az 5 perces maximális időablakot, ha a hőmérséklet csökken.

Ajánlott: