Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Lataa Arduino IDE ja kopioi vaadittu koodi
- Vaihe 2: Lataa pakolliset kirjastot Arduino IDE: stä
- Vaihe 3: (Valinnainen) Juotosotsikot osiin
- Vaihe 4: Noudata Picture and Wire Arduinoa komponentteihin
- Vaihe 5: Kokoa projekti "Coaster"
- Vaihe 6: Kiinnitä lasinaluset ja anturi valitsemaasi kuppiin
- Vaihe 7: Kaunista projekti ja suojaa johdot
- Vaihe 8: Juo vastuullisesti
- Vaihe 9: (Valinnainen) Vianmääritys
- Vaihe 10: Heijastus
Video: Juhlaturvallinen tänä kesänä Arduinon veri-alkoholireaktiivisella LED-kupilla: 10 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Projektitaso Vaikeusaste: Keskitaso
Tarvittavat taidot:
- Kaavion lukeminen ja toistaminen
- Juotos, jos et halua ostaa esijuotettuja osia
Projektin esittely
Yhdysvalloissa ja kaikkialla maailmassa alkoholi on aiheuttanut vakavia terveysuhkia, kun sitä käytetään vastuuttomasti. Vastuuttomasta alkoholinkäytöstä voi seurata kuolemantapaus alkoholin vaikutuksen alaisena ja maksavaurio sekä pitkäaikaiset vaikutukset, kuten mahdollinen aivo- ja munuaisvaurio. Pelkästään Yhdysvalloissa 250 miljardia dollaria menetettiin alkoholin väärinkäytön vuoksi (NIAAA, 2010) sekä yli 88 000 ihmistä, mikä teki alkoholista maan kolmanneksi johtavan ehkäistävän kuolinsyyn. Tämän projektin kysymys on päättäjinä, kuinka voimme käsitellä tätä ongelmaa ja varmistaa, että hauskat juhlat alkoholin kaltaisten juhlien kanssa voivat pysyä turvallisina ja hauskoina?
Vastaukseni tähän kysymykseen oli löytää tapa arvioida ja visualisoida käyttäjän ennustettu BAC, jotta he voisivat paremmin ymmärtää, missä tilassa he olivat. Tässä projektissa käytin Arduino-mikrokontrolleria, jossa oli vesitason anturi, LED-rengas ja LCD-näyttö, seurataksesi kuinka monta juomaa henkilö on kuluttanut ja sitten löytää tapa arvioida veren alkoholipitoisuus (BAC) käyttäjä sukupuolen ja painon perusteella. Arvioitu BAC sen mukaan, millä alueella se oli, määrittää alla olevan LED -renkaan animaation. Alueet jakautuvat neljään eri alueeseen: turvallinen, heikentynyt, päihtynyt ja tappava. Toivon, että luomalla tämän projektin olet paitsi luonut käyttökelpoisen Arduino -projektin, mutta myös saanut paremman käsityksen siitä, miten me metaboloimme alkoholia ja mahdollisesti jopa joitain perusohjelmointeja, jos päätät katsoa kommentoidun koodin.
Mistä kuppi tietää kuinka monta juomaa olen juonut?
Jos vedenkorkeusanturin analoginen arvo ylittää 300, kuppia edustava boolen arvo tallennetaan HIGH (täynnä). Jos anturin analoginen arvo on alle 300, kuppia edustava boolean -arvo tallennetaan LOW (tyhjä). Jotta juoma lisätään kuppiin, tämän boolen arvon on muututtava tyhjästä täyteen.
Miten määritit BAC: n?
Jotta tämä projekti olisi mahdollisimman tarkka, käytin Saint Benedict & Saint John's Universityn tietoja siitä, kuinka paljon yksilön BAC nousi kulutettua juomaa kohti. Tämä ohjelma ottaa huomioon painon lisäksi myös käyttäjän sukupuolen laskettaessa käyttäjän BAC -arvoa. Tämä johtuu siitä, että BAC perustuu siihen, kuinka nopeasti keho pystyy metaboloimaan alkoholia, joka on erilainen miesten ja naisten sekä eri painoisten ihmisten välillä. Kaaviot näet täältä.
Miksi BAC -arvot vaihtelevat eri ihmisillä?
BAC -alueet perustuvat suoraan SBSJ -yliopistosta saatuihin tietoihin, joissa otetaan huomioon, kuinka paljon alkoholia käyttäjällä on oltava järjestelmässään, jotta he voivat olla jollakin neljästä alueesta:
- Turvallinen: Ainoa turvallinen alue ajoneuvon käyttämiseen (sateenkaari -animaatio)
- Vammainen: Rikosoikeudellisia syytteitä voi aiheutua, jos käytät tällä alueella olevaa ajoneuvoa (jota kuvaa oranssi animaatio)
- Päihtynyt: rikosoikeudellisia syytteitä syntyy, jos käytät tämän alueen ajoneuvoa (jota edustavat punaiset valot)
- Tappava: Jos et ole jo sammunut, olet välittömässä lääketieteellisessä vaarassa tällä alueella (vilkkuvat punaiset ja valkoiset valot)
Mutta voin ottaa alkoholia hyvin, joten onko tämä kuppi epätarkka?
Sillä, kuinka hyvin pystyt käyttäytymään alkoholin nauttimisen jälkeen, ei ole väliä, jos ylität laillisen rajan ajon aikana. Tässä projektissa käytetyt tiedot ottavat huomioon käyttäjän BAC: n oikeudelliset ja lääketieteelliset alueet, mutta myös käyttäjän painon ja sukupuolen.
Tarvikkeet
Tämän hankkeen yleisiä elektroniikkatarvikkeita ovat:
- Kaksi painonappia
- Hyppyjohdot
- 10k potentiometri
- 2 10k vastukset
- 1 220 vastusta
Erikoisosat/moduulit:
- Arduino (käytin Unoa tässä projektissa, mutta monia halvempia vaihtoehtoja on olemassa)
- Vedenpinnan anturi (HUOMAUTUS: Nämä anturit ovat usein epätarkkoja ja syöpyvät nopeasti, mikä oli suuri turhautus tämän projektin kehittämisessä. Pystyin kuitenkin löytämään ratkaisun niin, että hankkeeni vaikeudet eivät muuttuneet vaikeuksiksesi tämän projektin kanssa.)
- LED -rengas (12 LEDiä)
- LCD -näyttö
Työkalut:
- Juotosrauta (tarvitaan vain, jos ostat LED -renkaan ilman otsikoita)
- 3D -tulostin (valinnainen)
Vaihe 1: Lataa Arduino IDE ja kopioi vaadittu koodi
Tähän projektiin ei tarvita tietokoneohjelmointia, sinun tarvitsee vain kopioida koodi täältä ja liittää se Arduino IDE: hen. Voit ladata Arduino IDE:
Arduino IDE: n lataaminen ja määrittäminen:
- Käy Arduinon verkkosivustolla ja valitse ladattava järjestelmä
- Kun lataus on valmis, hanki Arduinon COM -portin numero. Liitä Arduino ja siirry Laitehallintaan. Etsi porttien alta Arduinosi ja merkitse muistiin portin numero. Sen pitäisi näyttää tältä: COMx (missä x on numero 1-9)
- Määritä kortin ja portin IDE COM -portin numeron avulla avaamalla Arduino IDE ja valitsemalla yläpalkista "Työkalut". Valitse "Board" ja valitse malli. Valitse seuraavaksi "Portti" ja valitse portti, jonka näit Arduinollesi Laitehallinnassa.
Projektikoodin hankkiminen
- Kopioi koodi tästä vaiheesta ja liitä se Arduino IDE: n valkoiseen osaan. Muista poistaa ensin kaikki luonnoksesta, kuten silmukka () ja void () rutiinit, koska ne on otettu käyttöön kopioimassasi ja liitettävässä koodissa.
Vaihe 2: Lataa pakolliset kirjastot Arduino IDE: stä
Tässä projektissa käytettyjä kirjastoja ovat "Wire", "LiquidCrystal" ja "Adafruit Neopixel". Luonnos tarvitsee nämä kirjastot kommunikoidakseen tässä projektissa käytettyjen komponenttien kanssa. Voit ladata nämä kirjastot seuraavasti:
- Valitse yläpalkista "Sketch"
- Valitse avattavasta valikosta "Sisällytä kirjasto"
- Valitse "Hallitse kirjastoja"
- Etsi projektissa käytetyt kolme kirjastoa (lanka, nestekide ja Adafruit Neopixel) ja lataa jokainen.
Huomaa, että näiden kirjastojen lataamisen epäonnistuminen johtaa virheeseen luonnoksen kokoamisen aikana. Liitä tämän vaiheen jälkeen Arduinon kaapeli kannettavaan tietokoneeseen ja paina IDE: n vasemmassa yläkulmassa olevaa nuolipainiketta. Tämä kokoaa ja lähettää luonnoksen Arduinolle. Nyt kun kaikki ohjelmointiin liittyvät vaiheet on tehty, siirrytään johdotukseen!
Vaihe 3: (Valinnainen) Juotosotsikot osiin
Jos olet päättänyt ostaa tähän projektiin osia, joissa ei ole jo juotettuja otsatappeja, sinun on tehtävä tämä itse. Älä huolehdi liikaa tästä osasta, tämän projektin juottaminen on hyvin yksinkertaista.
- Luo juotettavaksi tuuletettu ympäristö, mieluiten tuulettimella, joka sisältää suodattimen. Jos sinulla ei ole tuuletinta, voit tehdä mitä minä teen ja avata ikkunat ja käynnistää tuulettimen tai mennä autotalliin sen ollessa auki.
- Kuumenna juotosraudasi ja varmista, että sinulla on myös märkä sieni ylimääräisen juotteen pyyhkimiseen.
- Aseta otsikot ja osa, johon haluat kiinnittää otsikot, käyttämällä apukädää tai muuta työkalua, jonka avulla voit järjestää osat samalla kun voit pitää kiinni juotosraudasta.
- Kosketa juotetta juotosraudalla, kun liität otsikkotapin ja sen osan välille, johon juotat tapit. Ota silitysrauta pois, kun juotosta on muodostunut riittävästi varmistaaksesi sähköisen kontaktin otsikkotappien ja osan välillä. Pyyhi ylimääräinen juote pois sienestä ja toista tämä prosessi kaikille nastoille.
- Kun kaikki nastat on juotettu, aseta juotin telineeseen, käännä nuppi "pois" ja irrota silitysrauta. Odota, kunnes silitysrauta on täysin jäähtynyt, jotta voit laittaa sen pois.
Vaihe 4: Noudata Picture and Wire Arduinoa komponentteihin
Tässä vaiheessa sinun on käytettävä hyppyjohtimia projektin tarvittavien osien liittämiseksi Arduinoon. Olen toimittanut tähän Fritzing -tiedoston, joka näkyy tässä vaiheessa. Alla on luettelo yleisistä kysymyksistä, joita kysyn itseltäni, jos törmään johdotusongelmaan:
- Onko maa- ja virtakiskoni liitetty oikein toisiinsa ja Arduinon 5v- ja GND -nastoihin?
- Olenko sekaisin potentiometrini kanssa, jos nestekidenäyttö ei näy? (Käännä potentiometriä ympäri muuttaaksesi vastusta, jos valkoiset merkit eivät näy oikein)
- Onko GND ja VCC kytketty kuhunkin osaan oikein oikeaan nastaan? Onko käytössä 5 voltin asetus? (Kaikki projektin anturit ja komponentit käyttävät 5 volttia, ei 3,3 volttia.
- Oliko johto vahingossa yhden liitännän päässä siitä, missä sen piti olla?
HUOMAUTUS: Kun työskentelet elektroniikan kanssa, varmista aina, että virtapiiri ei saa virtaa sen vaihdon aikana. Muutoin osat voivat vaurioitua ja suuremmalla jännitteellä työskenneltäessä seurauksena voi olla henkilövahinkoja
Vaihe 5: Kokoa projekti "Coaster"
Saatat huomata, että LED -renkaan otsikot tulevat ulos ja eivät salli kupin asettamista tasaiselle pinnalle. Tämän ongelman ratkaisemiseksi kiinnitämme LED -renkaan 3D -painettuun osaan, joka mahdollistaa renkaan asettamisen tasaiselle pöydälle. 3D -tiedosto löytyy tästä vaiheesta. Jos sinulla ei ole 3D -tulostinta, älä huoli, tämä tulostus maksoi 1,40 paikallisessa kirjastossani. Jos paikallisessa kirjastossasi ei ole 3D -tulostinta, muita vaihtoehtoja ovat niitit ja online -myyjät. On myös huomattava, että liittämäni osa ei ole ainoa yhteensopiva, se on vain tapa tehdä malli minulle. Joten jos olet hyvä puuntyöstö tai muut käsityöt, ne olisivat enemmän kuin hyväksyttäviä!
Jos päätät tulostaa tämän projektin osan:
- Lataa STL -tiedosto ja vie se Cura -kaltaiselle leikkurille
- Mittaa valitsemasi kupin pohjan halkaisija
- Säädä mallin asteikko (millimetreinä, jos käytät Curaa) mittauksesi mukaan
Vaihe 6: Kiinnitä lasinaluset ja anturi valitsemaasi kuppiin
Ota seuraavaksi lasinalusesi ja kiinnitä se liimalla mitatun kupin pohjaan. Nyt hyppyjohtimet pääsevät käsiksi vedenpinnan anturiin ja LED-renkaaseen ja voivat myös maata pöydällä. Nyt sinun on kiinnitettävä anturi. On erittäin varovaista harkita anturin sijoittelua, koska nämä anturit, vaikka niitä markkinoidaan analogisina, antavat vain kaksi signaalia- vesi tai ei vettä. Tämä aiheutti minulle monia ongelmia, mutta pystyin löytämään tavan ratkaista se niin, että muut eivät kokeneet samoja turhautumisia tämän projektin suhteen. Tärkeintä on sijoittaa anturi lähelle sitä paikkaa, jossa neste on, kun kuppi on täynnä. Tämä varmistaa, että anturi pystyy rekisteröimään "tyhjän" tilan ja näin ollen laskemaan seuraavan kaadetun juoman.
Vaihe 7: Kaunista projekti ja suojaa johdot
Tässä vaiheessa sinulla on todennäköisesti johtoja ja osia, jotka näyttävät liitetyltä valokuvalta. Se, mitä teet saadaksesi projektin näyttämään paremmalta, on täysin sinun vastuullasi, kunhan pidät nämä kriteerit mielessä:
- Sinun on voitava kytkeä laturi Arduinon virtalähteeseen
- Sinun on leikattava reikiä tai suunniteltava tilaa, jotta käyttäjä voi käyttää nestekidenäyttöä, painikkeita, vesitason anturia ja LED-rengasta.
- Sinun on suojattava elektronisia komponentteja kastumiselta, koska tämä on mahdollista, koska projekti keskittyy juomiin.
Joitakin vaihtoehtoja projektin liittämiseksi ovat:
- Kenkälaatikko tai laatikko
- Vedenpitävä elektroniikkaprojekti, kuten täällä
- 3D -painettu malli (tätä vaihtoehtoa halusin jatkaa, mutta tällaisen mallin tulostaminen kirjastoissani oli liian kallista)
Vaihe 8: Juo vastuullisesti
Kun olet kiinnittänyt kupin lasinalustaan ja vesianturiin, olet valmis lähtemään! Tiedät, että kaikki toimii oikein, kun nestekidenäytössä kysytään sukupuolesi ja painosi. Yksi painike vastaa painoa ja toinen sukupuolta. Voit napsauttaa kutakin, ennen kuin merkitset sen. Kun olet valinnut oikean painosi (arvot 20: n askeleella) ja sukupuolen, napsauta molempia painikkeita samanaikaisesti. Tämä käynnistää loput ohjelmasta, ja näet LED -renkaan vilkkuvan sateenkaarikuvion. Kuppi on nyt valmis juoman kaatamista varten. Kun kulutat ja kaatat enemmän juomia, ohjelma käyttää BAC -taulukkoa, jota käsitellään johdannossa BAC: n määrittämiseksi. Huomaa, että tämä ohjelma olettaa yhden vakiojuoman jokaista kuppia kohden, katso kuva (Etelä -Alabaman yliopisto) tai käy täällä nähdäksesi, miten suosikkijuomasi kääntyy. Huomaa myös, että tämän hankkeen tavoitteena ei ole edistää laitonta toimintaa, vaan edistää turvallista juomista niille, jotka ovat tarpeeksi vanhoja käyttämään alkoholia. Lisäksi, vaikka olen erittäin tyytyväinen siihen, kuinka tarkka BAC -arvio olettaa vakiojuoman, tämä projekti on työkalu, joka auttaa sinua juomaan turvallisesti, mutta ei ole vastuussa, jos päätät ajaa minkä tahansa alkoholin nauttimisen jälkeen.
Vaihe 9: (Valinnainen) Vianmääritys
- "Ongelma lähetettäessä levylle" -virhe: Kun yrität kääntää ja lähettää luonnoksen Arduinolle, tämä virhe ilmenee, jos COM -porttisi on määritetty väärin (katso vaihe 1 oikean COM -portin löytämisestä ja asettamisesta) tai korttia ei ole kytketty.
- Nestekidenäyttö ei näytä valkoisia merkkejä: Jos nestekidenäytön sininen valo palaa, mutta et näe valkoisia merkkejä luonnoksen lataamisen jälkeen, tämä johtuu todennäköisesti kontrastiongelmista. Korjaa tämä kääntämällä potentiometriä oikealle (käänny vasemmalle, jos näet valkoisia lohkoja hahmojesi kanssa).
- Projekti ei laske juomia oikein: Tämä virhe on vedenpinnan anturiongelma. Vedenkorkeusanturimoduulit syöpyvät nopeasti ja tunnetaan erittäin epätarkkoina. Tämän ei kuitenkaan pitäisi koskea sinua tässä projektissa, koska kohtelin anturia digitaalisena anturina eikä analogisena. Katso vaihe 6, kuinka vesitason anturi kiinnitetään oikein.
- Moduuli on erittäin kuuma eikä lähetä oikeita arvoja: Tämä johtuu joko GND- tai VCC -liitännän katkeamisesta, luultavasti muiden johtojen kanssa työskennellessä. Varmista, että GND- ja VCC -liitännät anturiin ovat täydelliset, ja seuraa niitä GND- ja 5 V -nastoihin komponentista, leipälevylle ja Arduinolle etsimään virheitä.
- Ylitin vahingossa painoni: Älä huoli, painoasetus palaa 100: een 240: n jälkeen, joten voit jatkaa pyörimistä vaihtoehtojen avulla palataksesi painoosi.
Jos ongelmat jatkuvat, kytke Arduinon kaapeli kannettavaan tietokoneeseen, avaa IDE ja suorita luonnos. Kun luonnos on käynnissä, sarjamonitorissa näkyy useita arvoja, joiden avulla voit nähdä, mikä ei toimi odotetulla tavalla. Päästäksesi sarjamonitoriin, suorita ohjelma ja "Työkalut" ja sitten "Sarjamonitori" avattavasta valikosta.
Vaihe 10: Heijastus
Ohjelmoinnin osalta olen erittäin tyytyväinen tämän hankkeen toteutukseen. Kirjoittaminen kesti jonkin aikaa, koska olen vielä aloittelija, mutta pystyin oppimaan monia uusia kirjastoja ja saavuttamaan tavoitteen ennustaa BAC, ja minusta tuntuu, että en käyttänyt pikavalintoja BAC: n arvioinnissa, kun käytin sekä seksiä että paino (tämä muodosti suurimman osan luonnoksesta). Minun on kuitenkin hyväksyttävä suunnittelu. Vaikka en omista 3D -tulostinta tai tiedän puuntyöstöä, halusin todella, että projektini esiteltäisiin paremmin. Aion hankkia pian Ender 3: n, ja ensimmäinen asia, jonka teen, on palata takaisin tähän samaan ohjeeseen parantaakseni suunnittelua. Ensimmäisenä ohjeistuksessani minusta tuntuu, että prosessi sujui hyvin, ja olen erittäin tyytyväinen siihen, missä määrin tämä projekti käsitteli Party Challengea varten luomaani kehotetta, mutta suunnittele jotain, johon haluaisin palata myöhemmin, kun minulla on resursseja.
Suositeltava:
Pysy lämpimänä tänä talvena: CPU -käsilämmitin: 4 vaihetta (kuvilla)
Pysy lämpimänä tänä talvena: Prosessorin käsilämmitin: Tässä pienessä projektissa näytän sinulle, miten käytin vanhaa AMD -prosessoria luodakseni pienen, kevyen ja helppokäyttöisen sähköisen käsilämmittimen. Pienen kannettavan virtapankin avulla tämä gadget voi lämmittää sinua noin 2 ja puoli tuntia ja helpottaa
Pysy viileänä tänä kesänä: PC Fan Mod: 4 vaihetta (kuvilla)
Pysy viileänä tänä kesänä: PC Fan Mod: Kenellä ei ole tusinaa näistä PC -faneista? Tässä rakennelmassa näytän, kuinka tuulettimien avulla saadaan aikaan mukava säädettävä tuuli kuumina kesäpäivinä. Ja se toimii vähintään 4 tuntia tavallisella 9 V: n akulla
Arduinon ohjelmointi toisen Arduinon avulla vieritettävän tekstin näyttämiseksi ilman kirjastoa: 5 vaihetta
Arduinon ohjelmointi toisen Arduinon avulla vieritettävän tekstin näyttämiseksi ilman kirjastoa: Sony Spresense tai Arduino Uno eivät ole niin kalliita eivätkä vaadi paljon virtaa. Jos projektillasi on kuitenkin virtaa, tilaa tai jopa budjettia, voit harkita Arduino Pro Minin käyttöä. Toisin kuin Arduino Pro Micro, Arduino Pro Mi
Tänä iltana musiikkivaikutelman pyörä: 7 vaihetta
Tonight Show's Wheel of Musical Impressions Machine: Tämän koneen inspiraatio on peräisin Tonight Show -segmentistä, jonka pääosassa Jimmy Fallon soittaa '' Musical Impressions Wheel ''. Kun painat ensin laatikon painiketta, se näyttää satunnaisen laulajan ja kappaleen nestekidenäytöllä. Sitten sinun täytyy jäljitellä
Pidä vauva viileänä tänä kesänä - hallitse tyhmiä faneja älykkäillä asioilla!: 6 vaihetta (kuvilla)
Pidä vauva viileänä tänä kesänä - hallitse tyhmiä faneja älykkäillä asioilla!: Kaksi viikkoa sitten tämän kirjoituksen aikana minusta tuli uskomattoman poikavauvan isä! Vuodenaikojen vaihtuessa, päivien pitenemisen ja lämpenemisen myötä ajattelin, että olisi hyvä saada jonkinlainen monitori