Obsah:

JavaStation (automatický kávovar IoT s automatickým dopĺňaním): 9 krokov (s obrázkami)
JavaStation (automatický kávovar IoT s automatickým dopĺňaním): 9 krokov (s obrázkami)

Video: JavaStation (automatický kávovar IoT s automatickým dopĺňaním): 9 krokov (s obrázkami)

Video: JavaStation (automatický kávovar IoT s automatickým dopĺňaním): 9 krokov (s obrázkami)
Video: WE BUILT A CABIN IN THE WOODS! 2024, Júl
Anonim
JavaStation (automatický kávovar IoT s automatickým dopĺňaním)
JavaStation (automatický kávovar IoT s automatickým dopĺňaním)
JavaStation (automatický kávovar IoT s automatickým dopĺňaním)
JavaStation (automatický kávovar IoT s automatickým dopĺňaním)
JavaStation (automatický kávovar IoT s automatickým dopĺňaním)
JavaStation (automatický kávovar IoT s automatickým dopĺňaním)

Cieľom tohto projektu bolo vyrobiť plnoautomatický hlasom ovládaný kávovar, ktorý sa automaticky doplní vodou a všetko, čo musíte urobiť, je nahradiť patrónov a vypiť kávu;)

Krok 1: Úvod

Úvod
Úvod

Pretože to bol môj druhý režim kávy, veľa som sa toho naučil, najmä to, že čím komplexnejší stroj upravíte, tým viac problémov/chýb, s ktorými sa stretnete počas každodennej prevádzky. Predchádzajúci stroj bol iba jednoduchý starý 1 -spínačový kávovar s reléovým režimom.

Circolo (plne automatická verzia) je špičkovým prémiovým strojom Dolce Gusto. Musel som stráviť hodiny hľadaním správneho stroja, pretože všetky ostatné stroje z tejto série používali hornú mechanickú páčku na prepínanie medzi prúdmi studenej a teplej vody, ako je to znázornené na obrázku.

Krok 2: Vyberte si správny stroj

Vyberte si ten správny stroj
Vyberte si ten správny stroj

Môj základný stroj nie je len plne automatický, ale má aj pozoruhodné funkcie, ako napríklad automatické vypnutie po 5 minútach a zapamätanie si posledného množstva kávy (čo neskôr v režime úpravy výrazne uľahčí). Základná prevádzka stroja:

1, tlačidlo napájania stlačené

2, Stlačené tlačidlo studenej vody (okamžite rozptýli vodu do šálky)

3, Stlačené tlačidlo teplej vody (ohreje kotol ~ 20-60 sekúnd a začne vypúšťať horúcu vodu do šálky) Kontrolka napájania bude počas pohotovostného režimu blikať načerveno, potom bude trvalo pripravený.

Tento stroj má tiež schopnosť rozpoznať nasledujúce chyby:

Nádrž na vodu je prázdna

Držiak pohára nie je na svojom mieste

V oboch prípadoch bude kontrolka napájania blikať medzi červenou/zelenou.

Krok 3: Hardvérové úpravy

Hardvérové úpravy
Hardvérové úpravy

V tomto písaní nebudem podrobne rozoberať a znova zostavovať prípad, pretože na YouTube sú o tom videá. Hlavný mikroprocesor je skrytý pod hlavným panelom, kde sú 2 prepínače. Kotol je na pravej strane puzdra oddelený od všetkého ostatného, panel čerpadla a zdroja je na ľavej strane.

Kávovar je náročným prostredím pre elektroniku, žiadna zo strán nie je úplne vhodná na integráciu obvodu. Hneď pri kotle je viac priestoru, ale budete sa zaoberať teplom, obvod sa očividne nemohol dotknúť platne kotla ani byť v jeho blízkosti. Vybral som si stranu napájania / čerpadla, ale tu sa musíte vysporiadať s ťažkou rezonanciou pochádzajúcou z prevádzky membránového čerpadla, ktoré môže zničiť riadiaci obvod / spôsobiť, že drôty časom vykĺznu z konektorov.

Panel napájania neobsahuje nič užitočného, ale dá sa použiť na vypustenie stabilných +5 V (ešte jeden palec hore pre tento stroj), ktoré je možné priamo pripojiť k kolíku VIN Arduina, ktorý obchádza regulátor napätia na palube.

Rýchly zoznam hardvéru (nie úplný kusovník, neobsahuje základy):

  1. Plne automatická verzia Dolce Gusto Circulo
  2. 5V 4-kanálový reléový modul s optočlenom pre PIC AVR DSP (odporúčam použiť 4x reléové relé SIP-1A05)
  3. Arduino Micro (v budúcnosti odporúčam použiť SparkFun Pro Micro alebo novší)
  4. 2PCS 4n35 FSC optočleny fototranzistor
  5. Elektromagnetický ventil 1/2 "pre vodný vzduch vzduch/vzduch normálne uzavretý DC 12V
  6. Ultrazvukový modul Snímač prevodníka na meranie vzdialenosti HC-SR04 (kúpte si nejaké doplnky, neskôr uvidíte, prečo)
  7. 2ks Modul snímača vlhkosti dažďovej kvapky Detekcia dažďa pre Arduino
  8. 1 Xbee
  9. Potrubné tvarovky pre vodné bloky (môžu sa líšiť v závislosti od domu, najlepšie je kúpiť ich v železiarstve a pred kúpou ich tam dať dohromady)

Krok 4: Hlavné pripojenia a doska ovládača

Hlavné pripojenia a doska ovládača
Hlavné pripojenia a doska ovládača
Hlavné pripojenia a doska ovládača
Hlavné pripojenia a doska ovládača
Hlavné pripojenia a doska ovládača
Hlavné pripojenia a doska ovládača

Je potrebné pripojiť nasledujúce body obvodu:

1, Horúce tlačidlo

2, studené tlačidlo

3, červená LED

4, zelená LED

5, Hlavný vypínač

6, zdieľaný GND

Bohužiaľ som stratil svoje poznámky/obrázky o tom, kam ich spájkovať na dosku, ale všetko sa dá ľahko vysledovať späť pomocou multimetra (na vysledovanie káblov späť použite režim testovania diódy). Spájkovanie nebolo príliš ťažké, vyberte body s nožičkami SMD a spájkujte tam drôty.

Červená/zelená dióda LED sú umiestnené vedľa seba na vypínači. Sú potrebné na stanovenie stavu zariadenia (zapnuté, pripravené na prípravu kávy (kotol sa zahrieva), chyba). Vybral som ich priamo z hlavnej dosky, pretože je ťažké sa pohrávať s malým obvodom okolo vypínača.

Na bezpečné prepojenie s Arduinom a čítanie stavov LED som používal optočleny 4N35. Pôvodný nápad bol použiť 5 z nich a vykonať aj čítanie a ovládanie prepínačov (vytvoriť úplne tichý obvod). Tento čip bohužiaľ nedokázal vytvoriť dostatočne nízky odpor na napodobnenie stlačenia tlačidla, takže som bol nútený používať relé. Použil som generický 4-kanálový reléový modul, ktorý som mal v ruke, ale ak by som mal tento projekt prerobiť, použil by som iba malé reléové relé (reléové relé SIP-1A05 s vnútornými diódami flyback), ktoré je možné priamo pripojiť k výstupu Arduino kolíky (zaťaženie ~ 7 mA), takže všetko je možné umiestniť na 2 -úrovňovú doskovú štruktúru.

Týchto 5 malých káblov je možné ľahko položiť vedľa napájacích káblov pod napájacou doskou.

Aby som priestor v zariadení využil efektívnejšie, rozhodol som sa rozdeliť elektroniku na 2 hlavné panely:

Vľavo je hlavná riadiaca doska, vpravo (to, čomu hovorím komunikačná doska) drží Xbee, a hoci to na obrázku nie je zobrazené, 2 vodné senzory (na detekciu pretečenia) stlačené za ním. V hornej časti sú hodiny v reálnom čase (voliteľné pre dobu prevádzky:)) a 4 -kanálová reléová doska, ktorá zaujala miesto vedľa pumpy v spodnej časti zabalená do špongie, a tiež trochu vystrelená na ochranu pred rezonanciou.

Pokiaľ ide o komunikačnú dosku, neobťažoval som sa tým, že by som vyrábal DPS iba pomocou bežného dosky, pretože sa tam toho veľa nedeje. Má 6 pripojení k základnej doske:

Vcc (5V), GND, Xbee (TX), Xbee (RX), snímač vody1 (údaje), snímač vody2 (údaje)

Krok 5: Kontrola prietoku vody a mechanizmus doplňovania

Kontrola prietoku vody a mechanizmus doplňovania
Kontrola prietoku vody a mechanizmus doplňovania
Kontrola prietoku vody a mechanizmus doplňovania
Kontrola prietoku vody a mechanizmus doplňovania
Kontrola prietoku vody a mechanizmus doplňovania
Kontrola prietoku vody a mechanizmus doplňovania

Tento stroj som navrhol s ohľadom na bezpečnosť, pričom znemožnil útočníkom/poruchám spôsobiť vážne škody na vode v dome, pretože stroj by bol pripojený k vodovodnému kohútiku aj k internetu 24/7. To robí nasledujúci ochranný obvod 555 na vrchu solenoidu.

Všimnite si tiež, že solenoid funguje z napájania 12 V, čo sa mi ešte podarilo stlačiť do spodnej časti kávovaru vedľa dosky čerpadla a relé. 4 -kanálová reléová doska neplytvá energiou, prepne sieťové napätie 230 V priamo na adaptér, ktorý potom zapne solenoid. Samozrejme existuje niekoľko mikrosekundových oneskorení, ktoré musíte vypočítať, aby ste zrútili magnetické pole na solenoide + na adaptéri pri vyťahovaní zástrčky.

Používam štandardný 3,5 mm konektor na pripojenie externého vodného bloku dlhým 3 m drôtom a PVC rúrkou s malým priemerom vychádzajúcou z bloku smerujúceho do kávovaru.

Horná časť nádrže na vodu je vyvŕtaná, aby sa do nej zmestilo toto potrubie, ktoré sa potom spustilo dole na dno nádrže. Poznamenal by som, že je veľmi dôležité privádzať potrubie po strane nadol k spodnej časti bez toho, aby ste prešli stredom a zasahovali do ultrazvukových senzorov.

Potom, čo sa solenoid zapne, obvod sa automaticky vypne po ~ 4 sekundách (čo by malo byť viac ako dosť času na úplné naplnenie nádrže) a zostane v tomto stave až do ďalšieho cyklu zapnutia. Tento obvod je poslednou obrannou líniou pred poruchou a funguje úplne samostatne od kávovaru. Ak by relé v stroji zlyhalo a zostalo zopnuté, voda by mohla zaplaviť dom, s touto ochranou sa to nikdy nemôže stať.

Ak to pre vás stále nie je dosť dobré alebo nie je možné zavrieť vodu, alebo sa nechcete pohrávať s vodnými blokmi, pozrite sa na môj projekt WasserStation, ktorý bol postavený presne na to, aby rozšíril malú nádržku na vodu v kávovare.

Krok 6: Detekcia povodní

Detekcia povodní
Detekcia povodní
Detekcia povodní
Detekcia povodní
Detekcia povodní
Detekcia povodní

Na ochranu sú k dispozícii ďalšie 2 snímače vody:

  • Senzor 1: na zadnej strane nádrže na detekciu pretečenia z nádrže
  • Senzor 2: v spodnej časti kávovaru na detekciu pretečenia šálky

Oba tieto senzory spustia prerušenie, ktoré okamžite vypne vodu, rozsvieti chybové svetlo a preruší spustenie programu, aby sa zabránilo útoku, ako je varenie milióna káv a zaplavenie domu. Po ukončení programu stroj už nebude na nič reagovať a musí byť ručne napájaný.

Ak vás zaujíma, čo by sa stalo, keby sa zaplavil ultrazvukový senzor (stalo sa to raz:))

Takto vracalo hladinu vody niekoľko dní, ale ani po vyschnutí to už nikdy nebolo presné a musel som to vymeniť. Stroj bol navrhnutý tak, aby bežal zo studenej vody z vodovodu, takže žiadne naparovanie z horúceho nepoškodí snímač. Tento senzor je presný iba vtedy, keď je hladina vody 2-3 cm od neho.

Eliptický tvar nádrže sťažoval výpočty hladiny vody, takže boli zmerané a naprogramované v programe tak, aby zodpovedali percentám.

Krok 7: Testovanie a konečná montáž

Testovanie a finálna montáž
Testovanie a finálna montáž
Testovanie a finálna montáž
Testovanie a finálna montáž
Testovanie a finálna montáž
Testovanie a finálna montáž

Stroj je v konečnom stave, takmer úplne skrýva stopy po hackovaní, a ak by tam neboli tri indikátory stavu a port USB na ladenie, nemohli by ste povedať, že sa vo vnútri deje niečo iné, a dokonca môže byť pripojené aj Wi -Fi Zemetrasenie server:)

Pri úprave zariadení vždy považujem ručné používanie za najvyššiu prioritu. Po hacknutí je stroj úplne použiteľný kýmkoľvek, ibaže nádrž na vodu nie je možné ľahko vybrať. Pokiaľ nedokončíte kompletnú časť konštrukcie vodnej automatizácie, môže byť stroj v tomto mieste naplnený iba kombináciou malého potrubia a lievika.

Krok 8: Kód na kontrolu kávy

Kontrolný kód kávy
Kontrolný kód kávy

Kompletný zdrojový kód Arduino nájdete v prílohe nižšie.

Stručné vysvetlenie kódu:

Hlavná slučka volá funkciu xcomm (), zodpovednú za spracovanie príkazov, prípravu kávy a zapnutie/vypnutie zariadenia.

Kód pod ním je dostupný iba v prípade manuálneho ovládania. Zvyšuje počítadlo štatistík, aby sledoval, koľko káv bolo vyrobených, a automaticky plní nádrž na vodu.

Príkazy je možné odosielať cez Xbee alebo cez USB port (na začiatku musí byť povolené ladenie). Keď príde komunikácia, buď oranžová dióda sekundy bliká, aby sa zobrazila aktivita siete. Sú implementované nasledujúce príkazy:

1, CMSTAT - štatistika dotazov z počítača

Zariadenie ukladá štatistiky o tom, koľko bolo vyrobených horúcich/studených/manuálnych káv, a tiež získava prevádzkyschopnosť z RTC, ktorý po 3 dňoch nepretečie, takže môže trvať roky: P

2, CMWSTART - začína prípravou kávy a teplých nápojov s horúcou vodou

3, CMCSTART - začne pripravovať ľadový čaj a studené nápoje so studenou vodou

Horúce a studené procesy začínajú vyvolaním funkcie standby (), ktorá vykoná ďalšie kontroly, a potom stlačí tlačidlo napájania. Potom program počká na zelené svetlo (keď je kotol zahriaty) a potom emuluje stlačenie tlačidla horúci/studený. Potom počká 50 sekúnd (čo je viac ako dosť aj na najväčšiu šálku kávy) a potom vypne napájanie. Nebolo by to ani potrebné, pretože tento vynikajúci stroj sa automaticky vypne 5 minút po príprave kávy, ale prečo plytvať energiou? Mimochodom, pohotovostná spotreba energie stroja aj po úprave je nižšia ako 2 watty.

Doplnenie vody a zabezpečenie

Tento stroj bol navrhnutý s ohľadom na bezpečnosť, takže by bolo nemožné, aby útočník, ktorý získa kontrolu, zaplavil celý dom vodou. Porucha hardvéru by tiež nespôsobila vážne škody. Vedľa hardvérových senzorov sú v kóde zabudované ochrany pre náplň. Počítadlo, ktoré spustí rutinu ISR, ak sa stroj nenaplní do x sekúnd (k tomu môže dôjsť napríklad vtedy, ak by ultrazvukový snímač zlyhal a po x sekundách by sa vydal 20% po spustení doplňovania).

Neexistuje žiadna autentifikácia, stroj môže používať ktokoľvek v rádiovom dosahu, kto pozná príkazy, takže som zmenil predvolené ID piconetu Xbee na niečo iné, tiež ERR_INVALIDCMD je možné komentovať a zariadenie bude ignorovať všetky neznáme príkazy.

Ploštice

Dvojitá chyba kávy: Najnepríjemnejšou vecou na tejto chybe je, že sa to začalo diať niekoľko mesiacov po použití zariadenia s rovnakým kódom. Po vydaní príkazu na kávu uvaril kávu, vypol a znova zapol a pokračujte v príprave 1 ďalšej kávy s rovnakým patroon.

Musel som začať ladiť duplikáciu príkazov z úrovne systému Android, pretože som implementoval opätovné odoslanie do kódu v prípade straty paketov. Ukázalo sa, že za to nemôže Xbee, ani android, riadiaci softvér C ani linuxové jadro na raspi2.

Po vydaní ozveny „CMCSTART“>/dev/ttyACM0 na riadiaci uzol vyjde dvakrát na druhý koniec. Dospel som k záveru, že moje spektrum 2,4 GHz v mojom dome sa začalo nasýtiť mnohými rádiovými zariadeniami v tomto rozsahu, čo spôsobilo, že Xbee vyvolal nejaký druh opätovného odoslania v rádiovej vrstve a údaje boli odoslané dvakrát (nie vždy). Akonáhle príde prvý príkaz do strojov, funkcia xcomm () ho začala spracovávať, ale druhý príde hneď potom, čo čakalo v medzipamäte Xbees a keď sa slučka skončila, začalo spracovávať druhý príkaz. Aby som sa tomuto problému vyhol, zaviedol som do kódu 3 prahy, aby bolo nemožné pripraviť viac ako 1 kávu za 2 minúty. CMSTAT je tiež obmedzený, ale aby nezasahoval do riadiaceho kódu C/Android, bude jednoducho skracovať reakcie na 2 sekundy.

Posledná prahová hodnota bola zadaná pre ručný pult na kávu, pretože akonáhle sa prístroj dostal do stavu pripravenosti (kotol sa zahrial, zelené svetlo), zaznamenal zelenú udalosť stokrát, čím sa zvýšil počet káv.

Krok 9: Úvahy o návrhu a konečné myšlienky

Po mnohých problémoch s komunikáciou Xbee by som Xbee pre tento projekt neodporučil. Buď použite štandardné lacné 433 MHz rádio s VirtualWire a zníženými Bps pre stabilitu, alebo vložte Raspberry PI Zero s Wifi pripojením priamo do kávovaru.

Keďže dátum ukazuje, že je to starý projekt, ospravedlňujem sa za chýbajúce malé detaily, ako je pripojenie z riadiaceho obvodu k presným kolíkovým nohám na základnej doske. Tento projekt vyžaduje určitú úroveň technických znalostí, aby ste ho mohli vykonávať sami. Ak nájdete nejaké chyby/problémy alebo by ste chceli prispieť do tohto tutoriálu, dajte mi vedieť.

Ovládací softvér, metódy hlasového ovládania, je ďalšou časťou, ktorá vám umožní pripraviť si kávu jednoduchým hlasovým príkazom, ešte než vstanete z postele.

Teraz som dokončil dokumentáciu svojho systému skladovania vody (WasserStation) a aktualizoval som CoffeeControlCode na najnovšiu verziu, ktorá obsahuje aj automatické doplňovanie. Ak na stavbu použijete ten istý stroj, náplň bude fungovať bezchybne (bez akejkoľvek úpravy kódu), pretože hladiny vody boli kalibrované do vodnej nádrže Circolo.

Odporúča: