Obsah:

Večírek bezpečný letos v létě s pohárkem LED reagujícím na krev a alkohol Arduino: 10 kroků
Večírek bezpečný letos v létě s pohárkem LED reagujícím na krev a alkohol Arduino: 10 kroků

Video: Večírek bezpečný letos v létě s pohárkem LED reagujícím na krev a alkohol Arduino: 10 kroků

Video: Večírek bezpečný letos v létě s pohárkem LED reagujícím na krev a alkohol Arduino: 10 kroků
Video: JAKSI TAKSI - Maturitní večírek ( official video - cenzurovaná verze - NÁPISY ), 2011 2024, Listopad
Anonim
Večírek bezpečný letos v létě s pohárkem LED reagujícím na krev a alkohol Arduino
Večírek bezpečný letos v létě s pohárkem LED reagujícím na krev a alkohol Arduino

Obtížnost na úrovni projektu: středně pokročilá

Potřebné dovednosti:

- Čtení a replikace diagramu

- Pájení, pokud se rozhodnete nekupovat předem pájené díly

Úvod do projektu

Ve Spojených státech a po celém světě představuje alkohol při nezodpovědné konzumaci vážné zdravotní riziko. Neodpovědná konzumace alkoholu může mít za následek úmrtí způsobená řízením pod vlivem alkoholu a poškození jater, jakož i dlouhodobé účinky, jako je možné poškození mozku a ledvin. Jen ve Spojených státech bylo kvůli zneužívání alkoholu ztraceno 250 miliard dolarů (NIAAA, 2010) a více než 88 000 lidí, což z alkoholu činí třetí hlavní příčinu úmrtí, které lze v zemi předcházet. Otázkou pro tento projekt je jako tvůrce, jak můžeme tento problém vyřešit a zajistit, aby zábavné oslavy s alkoholem jako večírky zůstaly bezpečné a zábavné?

Moje odpověď na tuto otázku byla najít způsob, jak odhadnout a poté vizualizovat předpokládaný BAC uživatele, aby jim umožnil lépe porozumět tomu, v jakém jsou stavu. Pro tento projekt jsem použil mikrokontrolér Arduino se snímačem hladiny vody, LED kroužkem a LCD obrazovkou, abych sledoval, kolik nápojů člověk konzumoval, a poté našel způsob, jak odhadnout obsah alkoholu v krvi (BAC) v uživatel na základě pohlaví a hmotnosti. Odhadovaný BAC v závislosti na tom, v jakém rozsahu se nacházel, určuje níže uvedenou animaci prstence LED. Rozsahy se pohybují mezi čtyřmi odlišnými oblastmi: Bezpečnými, oslabenými, intoxikovanými a smrtícími. Doufám, že vytvořením tohoto projektu vytvoříte nejen použitelný projekt Arduino, ale také lépe porozumíte tomu, jak metabolizujeme alkohol, a možná dokonce i nějaké základní programování, pokud se rozhodnete podívat se na komentovaný kód.

Jak pohár pozná, kolik nápojů jsem vypil?

Pokud analogová hodnota snímače hladiny vody překročí 300, booleovská hodnota představující šálek bude zaznamenána jako VYSOKÁ (plná). Pokud je analogová hodnota snímače nižší než 300, booleovská hodnota představující pohár bude zaznamenána jako NÍZKÁ (prázdná). Chcete -li zaznamenat přidání nápoje do šálku, musí se tato booleovská hodnota změnit z prázdného na plný.

Jak jste určili BAC?

Aby byl tento projekt co nejpřesnější, použil jsem údaje ze Saint Benedict & Saint John's University o tom, jak se BAC jednotlivce zvýšil na jeden vypitý nápoj. Tento program při výpočtu BAC uživatele bere v úvahu nejen váhu, ale také pohlaví uživatele. Důvodem je, že BAC je založen na tom, jak rychle je tělo schopné metabolizovat alkohol, což je rozdíl mezi muži a ženami a lidmi s různými váhami. Tabulky jsou k vidění zde.

Proč se rozsahy BAC u různých lidí liší?

Rozsahy BAC jsou založeny přímo na datech získaných z SBSJ University, která zvažuje, kolik alkoholu musí mít uživatel ve svém systému, aby mohl být v jednom ze čtyř rozsahů:

- Safe: Jediný bezpečný rozsah pro provozování vozidla (reprezentovaný duhovou animací)

- Znehodnoceno: Pokud provozujete vozidlo v tomto rozsahu (představováno oranžovou animací), může dojít k trestnímu stíhání

- Intoxikovaní: Pokud provozujete vozidlo v tomto rozsahu (představováno červenými světly), budou obviněni z trestného činu

- Smrtící: Pokud jste ještě neomdleli, jste v tomto rozmezí v bezprostředním zdravotním nebezpečí (reprezentováno blikajícími červenými a bílými světly)

Ale můžu dobře pít alkohol, je tedy tento pohár nepřesný?

Na tom, jak dobře jste schopni jednat po požití alkoholu, příliš nezáleží, pokud během jízdy překročíte zákonný limit. Data použitá v tomto projektu zvažují, jaké jsou právní a lékařské rozsahy BAC uživatele, a zároveň zvažují váhu a pohlaví uživatele.

Zásoby

Obecné dodávky elektroniky pro tento projekt zahrnují:

- Dvě tlačítka

- Propojovací vodiče

- 10k potenciometr

- 2 10k odpory

- 1 220 odpor

Speciální díly/moduly:

- Arduino (pro tento projekt jsem použil Uno, ale existuje mnoho levnějších alternativ)

- Senzor hladiny vody (POZNÁMKA: Tyto senzory jsou často nepřesné a rychle korodují, což byla velká frustrace při vývoji tohoto projektu. Dokázal jsem však najít řešení, takže se moje potíže s tímto projektem neprojevily ve vašich obtížích s tímto projektem.)

- LED kroužek (12 LED)

- LCD obrazovka

Nástroje:

- Páječka (Potřebné pouze při nákupu prstence LED bez záhlaví)

- 3D tiskárna (volitelně)

Krok 1: Stáhněte si Arduino IDE a zkopírujte požadovaný kód

Pro tento projekt není vyžadováno žádné počítačové programování, vše, co musíte udělat, je zkopírovat kód zde a vložit jej do Arduino IDE. Stažení Arduino IDE:

Stahování a konfigurace Arduino IDE:

- Navštivte webovou stránku Arduino a vyberte stahování pro svůj systém

- Jakmile je stahování dokončeno, získejte číslo portu COM pro Arduino. Připojte Arduino a přejděte do Správce zařízení. V části porty vyhledejte své Arduino a poznamenejte si číslo portu. Mělo by to vypadat nějak takto: COMx (kde x je číslo 1-9)

- Pomocí čísla portu COM nakonfigurujte IDE pro vaši desku a port otevřením IDE Arduino a výběrem „Nástroje“na horní liště. Vyberte „Board“a vyberte si svůj model. Dále zvolte „Port“a ve Správci zařízení vyberte port, který jste viděli pro své Arduino.

Získání kódu projektu

- Zkopírujte kód z tohoto kroku a vložte jej do bílé části IDE Arduino. Ujistěte se, že nejprve odstraníte vše na skice, například rutiny loop () a void (), protože jsou implementovány v kódu, který kopírujete a vkládáte.

Krok 2: Stáhněte si požadované knihovny z Arduino IDE

Mezi knihovny používané v tomto projektu patří „Wire“, „LiquidCrystal“a „Adafruit Neopixel“. Skica potřebuje tyto knihovny ke komunikaci s komponentami použitými v tomto projektu. Chcete -li stáhnout tyto knihovny:

- Na horní liště vyberte „Skica“

- V rozevírací nabídce vyberte možnost „Zahrnout knihovnu“

- Vyberte „Spravovat knihovny“

- Vyhledejte tři knihovny (Wire, tekuté krystaly a Adafruit Neopixel) použité v tomto projektu a každou stáhněte.

Pamatujte, že selhání stahování těchto knihoven bude mít za následek chybu při kompilaci skici. Po tomto kroku připojte kabel z Arduina k notebooku a stiskněte tlačítko se šipkou v levém horním rohu IDE. Tím se skica zkompiluje a nahraje do Arduina. Nyní, když jsme hotovi se všemi kroky souvisejícími s programováním, přejděte k zapojení!

Krok 3: (Volitelné) Pájecí záhlaví na součásti

Pokud jste se rozhodli zakoupit díly pro tento projekt, na které již nebyly připájeny kolíkové kolíky, budete to muset udělat sami. S touto částí si nedělejte příliš starosti, pájení pro tento projekt je velmi jednoduché.

- Vytvořte větrané prostředí pro pájení, nejlépe pomocí ventilátoru s filtrem. Pokud takový ventilátor nemáte, můžete udělat to, co já, otevřít okna a zapnout ventilátor nebo jít do garáže, když je otevřená.

- Zahřejte páječku a ujistěte se, že máte také mokrou houbičku, ze které otřete přebytečnou pájku.

- Nastavte záhlaví a část, do které chcete záhlaví připojit, pomocí pomocné ruky nebo jiného nástroje, který vám umožní uspořádat součásti a zároveň vám umožní držet páječku.

- Dotkněte se pájky páječky, zatímco jste na spojení mezi kolíkem záhlaví a částí, ke které pájíte kolíky. Žehličku sundejte, až se vytvoří dostatek pájky, aby byl zajištěn elektrický kontakt mezi kolíky záhlaví a částí. Přebytečnou pájku setřete na houbičce a tento postup opakujte pro všechny kolíky.

- Po pájení všech kolíků umístěte páječku do stojanu, otočte knoflíkem do polohy „vypnuto“a žehličku odpojte. Počkejte, až žehlička úplně vychladne, abyste ji mohli odložit.

Krok 4: Sledujte komponenty Arduino Picture and Wire

Sledujte Picture and Wire Arduino to Components
Sledujte Picture and Wire Arduino to Components

V tomto kroku budete muset použít propojovací vodiče pro připojení částí nezbytných pro projekt k Arduinu. Za tímto účelem jsem poskytl soubor Fritzing, který je v tomto kroku vidět. Níže naleznete seznam běžných otázek, které si pokládám, pokud narazím na problém s kabeláží:

- Jsou moje zemní a napájecí kolejnice správně propojeny navzájem a 5v a GND piny Arduina?

- Nepokoušel jsem se potenciometrem, pokud se nezobrazuje LCD displej? (Zkuste otočit potenciometr a změnit odpor, pokud se bílé znaky nezobrazují správně)

- Jsou GND a VCC připojeny ke každé části správně ke správnému pinu? Používá se nastavení 5 voltů? (Všechny senzory a komponenty v tomto projektu budou používat 5 voltů, ne 3,3 voltů.

- Byl vodič omylem umístěn o jeden spoj dál od místa, kde měl být?

POZNÁMKA: Při práci s elektronikou se vždy ujistěte, že obvod není při výměně napájen. Jinak by mohlo dojít k poškození součástí a při práci s vyšším napětím by mohlo dojít k úrazu

Krok 5: Sestavte projekt „Coaster“

Sestavte projekt
Sestavte projekt

Můžete si všimnout, že hlavičky prstence LED vyčnívají a nedovolují vám skutečně umístit šálek naplocho k povrchu. Abychom tento problém vyřešili, připojíme prsten LED k 3D tištěné části, která umožní, aby byl prsten umístěn naplocho na stůl. V tomto kroku najdete soubor 3d. Pokud nemáte 3D tiskárnu, nebojte se, tento tisk stál v místní knihovně 1,40. Pokud vaše místní knihovna 3D tiskárnu nemá, mezi další možnosti patří sponky a online prodejci. Je třeba také poznamenat, že určitá část, kterou jsem připojil, není jediná kompatibilní, je to jen způsob, jak pro mě udělat model. Pokud tedy umíte pracovat se dřevem nebo jinými řemesly, bylo by to více než přijatelné!

Pokud se rozhodnete vytisknout součást pro tento projekt:

- Stáhněte si soubor STL pro import do kráječe, jako je Cura

- Změřte průměr dna šálku podle vašeho výběru

- Upravte měřítko modelu (v milimetrech, pokud používáte Cura) podle svého měření

Krok 6: Připevněte podložku a senzor k šálku dle vašeho výběru

Připojte coaster a senzor na pohár dle vašeho výběru
Připojte coaster a senzor na pohár dle vašeho výběru

Dále si vezměte tácek a pomocí lepidla ho připevněte na dno šálku, který jste změřili. Nyní budou propojovací vodiče mít přístup k senzoru hladiny vody a kroužku LED a také budou ležet naplocho na stole. Nyní musíte připojit snímač. Je velmi pečlivé být ohleduplný k umístění senzoru, protože tyto senzory, i když jsou prodávány jako analogové, ve skutečnosti vydávají pouze dva signály- voda nebo žádná voda. To mi způsobilo mnoho problémů, ale dokázal jsem najít způsob, jak to vyřešit, aby ostatní nezažili stejné frustrace s tímto projektem. Klíčem je umístit senzor v horní části místa, kde bude kapalina, když je šálek plný. Tím zajistíte, že je senzor schopen zaregistrovat „prázdný“stav, a tedy i počítat další nalévaný nápoj.

Krok 7: Zkrášlete projekt a chraňte dráty

Zkrášlete projektování a ochranu vodičů
Zkrášlete projektování a ochranu vodičů

V tuto chvíli vám pravděpodobně zůstane shluk drátů a částí, který vypadá jako přiložená fotografie. Co uděláte, aby projekt vypadal lépe, je zcela na vás, pokud budete mít na paměti tato kritéria:

- Musíte být schopni připojit nabíječku k napájení Arduina

- Musíte vyříznout otvory nebo designové prostory, aby měl uživatel přístup k obrazovce LCD, tlačítkům, senzoru hladiny vody a kroužku LED.

- Elektronické součásti musíte chránit před navlhnutím, protože to je možnost, protože projekt se zaměřuje na nápoje.

Některé možnosti pro uzavření projektu jsou:

- Krabice od bot nebo karton

- Vodotěsný kryt elektroniky, jaký najdete zde

- 3D tištěný design (Tuto možnost jsem chtěl využít, ale vytisknout takový design v mé knihovně bylo příliš drahé)

Krok 8: Pijte zodpovědně

Pijte zodpovědně!
Pijte zodpovědně!

Po připojení šálku k tácku a vodnímu senzoru můžete vyrazit! Budete vědět, že vše funguje správně, když vás obrazovka LCD vyzve k zadání pohlaví a hmotnosti. Jedno tlačítko odpovídá váze, zatímco druhé odpovídá pohlaví. Před každým označením můžete kliknutím na každý z nich zjistit, o který se jedná. Po výběru správné hmotnosti (hodnoty jsou v krocích po 20) a pohlaví klikněte na obě tlačítka současně. Tím se spustí zbytek programu a uvidíte, jak kroužek LED bliká duhovým vzorem. Šálek je nyní připraven k tomu, abyste si mohli nalít nápoj. Jak budete konzumovat a nalévat další nápoje, program použije ke stanovení BAC tabulku BAC popsanou v úvodu. Tento program předpokládá jeden standardní nápoj pro každý šálek. Podívejte se na obrázek (University of South Alabama) nebo zde navštivte a podívejte se, jak se váš oblíbený nápoj překládá. Všimněte si také, že cílem tohoto projektu není podporovat jakoukoli nezákonnou činnost, ale podporovat bezpečné pití pro ty, kteří jsou dostatečně staří na konzumaci alkoholu. I když jsem velmi spokojený s tím, jak přesný odhad BAC předpokládá standardní nápoj, tento projekt je nástrojem, který vám pomůže pít bezpečně, ale nenese žádnou odpovědnost, pokud se po řízení jakéhokoli alkoholu rozhodnete řídit.

Krok 9: (Volitelné) Odstraňování problémů

(Volitelné) Odstraňování problémů
(Volitelné) Odstraňování problémů

- Chyba „Problém s nahráváním na desku“: Při pokusu o kompilaci a nahrání náčrtu do Arduina dojde k této chybě, pokud váš port COM není správně nakonfigurován (viz první krok, jak najít a nastavit správný port COM) nebo deska není zapojena.

- LCD obrazovka nezobrazuje bílé znaky: Pokud je modré světlo na vašem LCD zapnuté, ale po nahrání náčrtu nevidíte žádné bílé znaky, je to pravděpodobně kvůli problémům s kontrastem. Chcete -li to napravit, otočte potenciometr doprava (Otočte doleva, pokud vidíte bílé bloky se svými postavami).

- Projekt nepočítá nápoje správně: Tato chyba je problém se snímačem hladiny vody. Moduly snímačů hladiny vody rychle korodují a je o nich známo, že jsou velmi nepřesné. To by vás však pro tento projekt nemělo zajímat, protože jsem se senzorem zacházel spíše jako s digitálním než s analogovým. Viz krok šest, jak správně připevnit snímač hladiny vody.

- Modul je extrémně horký a neposílá správné hodnoty: Je to důsledek přerušení připojení GND nebo VCC, pravděpodobně při práci s jinými vodiči. Ujistěte se, že připojení GND a VCC k senzoru jsou kompletní a sledujte je na piny GND a 5v od komponenty, na prkénko, k Arduinu a hledejte chyby.

- Omylem jsem přešel přes svoji váhu: Nebojte se, nastavení hmotnosti se po 240 vrátí na 100, takže se můžete stále otáčet v možnostech, abyste se dostali zpět ke své váze.

Pokud problémy přetrvávají, připojte kabel z Arduina k notebooku, otevřete IDE a spusťte skicu. Během běhu náčrtu se na sériovém monitoru zobrazí několik hodnot, což vám umožní zjistit, co nefunguje tak, jak by mělo. Pro přístup k sériovému monitoru spusťte program a z rozbalovací nabídky „Nástroje“a poté „Sériový monitor“.

Krok 10: Odraz

Po stránce programování jsem velmi spokojený s tím, jak tento projekt dopadl. Chvíli trvalo, než jsem napsal, protože jsem stále začátečník, ale dokázal jsem se naučit mnoho nových knihoven a dosáhnout cíle predikce BAC, a mám pocit, že jsem při odhadu BAC nebral žádné zkratky, protože jsem používal jak sex, tak hmotnost (To tvořilo většinu náčrtu). Musím však schválit design. I když nevlastním 3D tiskárnu ani neznám zpracování dřeva, opravdu jsem chtěl, aby byl můj projekt představen lépe. Mám v úmyslu brzy získat Ender 3 a první věc, kterou udělám, je vrátit se zpět ke stejnému návodu na vylepšení designu. Jako můj vůbec první instruktáž mám pocit, že proces proběhl dobře a jsem velmi spokojený s tím, do jaké míry tento projekt reagoval na výzvu, kterou jsem vytvořil pro Party Challenge, ale navrhuji něco, k čemu bych se chtěl později vrátit, až budu mít zdroje.

Doporučuje: