INHOUDSOPGAWE:
- Stap 1: Versamel u materiaal
- Stap 2: PIR / Foto -weerstand - Kode
- Stap 3: PIR / Foto -weerstand - Elektriese skemas
- Stap 4: OLED / DHT - Kode
- Stap 5: OLED / DHT - Elektriese skema's
- Stap 6: Versamel data van OLED
- Stap 7: SD -kaart - kode
- Stap 8: SD -kaart - Elektriese skema's
- Stap 9: Versamel data vanaf die SD -kaart
- Stap 10: kombineer al die kode
- Stap 11: Voorstelle/probleemoplossing
- Stap 12: Ontwerp die model
- Stap 13: Toets alles saam
- Stap 14: Erkennings
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
Ligbesoedeling is iets wat ons almal regoor die wêreld raak. Sedert die gloeilamp uitgevind is, het lig baie meer gewild geword en is dit spesifiek in groot stede soos New York en Chicago gebruik. Al hierdie lig kan soveel verskillende soorte diere beïnvloed; Byvoorbeeld, baba -skilpaaie wat hul pad na die see moet vind deur die maan vir leiding te gebruik, mislei 'n gevaarlike straatlig vir 'n maan en gaan na die snelweg. Lig beïnvloed ook die migrasie van voëls en hul dekseisoene. Benewens al die diere wat ligbesoedeling beïnvloed, beïnvloed dit ons ook. Elke keer as ons snags buite loop en hierdie verblindende blou ligte sien, word ons gedagtes aangespoor om te dink dat dit bedags is. Daarom produseer ons brein nie melatonien nie; die chemikalie wat ons nodig het om te gaan slaap. Aangesien hierdie chemikalie nie soveel geproduseer word nie, word ons slaapskedule weggegooi, wat baie ander probleme veroorsaak.
Met ons Light Pollution Solution, Artemis, maak ons dit egter maklik om 'n beter môre te skep wat ligbesoedeling betref. Ons lig het 'n warm kleurtemperatuur sodat ons nie blou lig uitstraal om ons te laat dink dat ons laat in die nag moet wakker wees nie. Met die hulp van Arduino Uno, verskeie verskillende sensors en Snap Circuits, skakel ons lig aan of uit op grond van die aktiwiteite in die omgewing, die duisternis en meer. Met ons oplossing sal minder lig in die atmosfeer uitgestraal word, sodat ons saam met alle diere die skoonheid van die naghemel kan geniet wat ons omgewing salig hou.
Stap 1: Versamel u materiaal
Die eerste stap om Artemis te maak, is om materiaal in te samel.
Soos in die eerste prent hierbo gesien, is 'n lys van die fisiese materiaal wat u benodig:
-
Die Super Starter Kit Uno R3 -projek - dit bevat u mikrobeheerder, broodbord en al die sensors wat u benodig, sodat u dit kan gebruik om u lig te kodeer. U benodig spesifiek:
- 'N USB-Arduino-kabel (en 'n adapter as u nie 'n USB-poort in u skootrekenaar het nie)
- Man-manlike drade
- Man-vroulike drade
- Ekstra lang drade (om te sny indien nodig)
- Jumper kabels (om die Snap Circuits fotoresistor aan die broodbord te koppel)
- 'N Micro SD -kaart en leser
- 'N OLED -skerm
- 'N Arduino Uno -mikrobeheerder
- 'N PIR -sensor
- 'N DHT -sensor (humiditeit/temperatuur)
- 220k Om weerstande
- 'N Broodplank
- RGB LED's (4x) of gewone LED's (4x)
- 'N Fotoresistor
- 'N Snap Circuits Classic -stel (soos aangedui deur die handleiding hierbo). U benodig spesifiek 'n Snap Circuits -fotoresistor.
- Skêr
- Houtstokkies
- 'N Exacto-mes
- 'N Draadstroper
- 'N Skroewedraaier
- Swart skuimkern
- Konstruksie papier
- Soos in die tweede prentjie aangedui, benodig u die Arduino Genuino -toepassing op u lessenaar/skootrekenaar om die sensors te kodeer.
- Soos in die derde prentjie aangedui, benodig u 'n paar vriende om dit mee te doen!
Stap 2: PIR / Foto -weerstand - Kode
Die eerste kode wat u skep, is vir die PIR (bewegingsensor) en die fotoresistor. Deur hierdie twee sensors in een kode te kombineer, kan ons die lig laat reageer op beide die vlak van duisternis en die aktiwiteit (of gebrek daaraan) in die gebied. Dit is wat elke hooffunksie in die kode doen:
setup (): hierdie funksie aktiveer die seriële monitor en bepaal die LED -pen as 'n uitset en die PIR -pen as 'n invoer
loop (): hierdie funksie voer die funksie photo_value () en die checkPIRStatus () -funksie uit
NBhier (): hierdie funksie skryf in die LED's af as die bewegingsensor nie aan is nie
SBhere (): hierdie funksie skryf die LED's aan sodat hulle helder wys as die bewegingsensor aan is
checkPIRStatus (): hierdie funksie kry data van die sensor af, en kyk dan of die gerapporteerde waarde hoër is as 451. AS dit is en die sensor af is, word dit aangeskakel en SBhere () loop. As die gerapporteerde getal egter laag is en die sensor aan is, word die sensor afgeskakel en NBhere () loop.
photo_value (): hierdie funksie kyk of die getal hoog, medium of laag is en verander die intensiteit van die lig dienooreenkomstig.
Stap 3: PIR / Foto -weerstand - Elektriese skemas
Nadat u kode suksesvol saamgestel is, sluit u u broodbord aan op dieselfde manier as in die Fritzing -diagram hierbo. Nadat u klaar is, moet u seker maak dat alles behoorlik ingeprop is en dat niks verkeerd is nie. Benewens die 4 gewone LED's of RGB -LED's, benodig u:
- 'N PIR -sensor
- 'N Fotoresistor
- Drie man-vrou drade
- Man-manlike drade
- 4 220k Om -weerstande
Nadat u kode suksesvol na die bord gelaai is, waai u hand oor die PIR -sensor. Die ligte moet aanskakel en helder word, en as u u seriële monitor oopmaak, moet dit lees "Beweging opgespoor!". Sodra u u hand van die PIR afgehaal het, moet die seriële monitor "Beweging beëindig!" Lees, en die LED (of RGB -LED soos getoon in die fritzdiagram) moet dowwe en uitskakel:).
Wat die fotoresistor betref, moet die LED helderder word en/of aanskakel as u dit bedek, en sodra u u hand lig, moet die LED verdof. As u al die ligte in u omgewing aanskakel, moet die LED naby wees om uit te skakel.
Stap 4: OLED / DHT - Kode
As u klaar is met die PIR/fotoresistorsegment van die kode, is u gereed om na die OLED/DHT -kode te gaan! As die kode korrek werk, moet die humiditeits-/temperatuurdata uit die omliggende omgewing opgeneem word, en nadat die inligting op die seriële monitor vertoon is, moet dit die inligting, sowel as die status van enige ander sensors, op die OLED -skerm vertoon.
Dit is wat elke funksie in die kode doen:
setup (): hierdie funksie aktiveer die seriële monitor en initialiseer die biblioteke
loop (): hierdie funksie skep veranderlikes vir temp/humiditeit, en vertoon dan die inligting oor humiditeit/temp op die OLED -skerm en seriële monitor
Hier is die spesifieke biblioteke wat u moet aflaai om hierdie kode uit te voer:
U8g2 -biblioteek
Sidenote: die kode hierbo is beide vir die DHT/OLED en die SD -kaart, en die funksies wat gelys is, is die een wat die DHT/OLED -sensors uitsluitlik beheer.
Stap 5: OLED / DHT - Elektriese skema's
Nadat u kode suksesvol saamgestel is, sluit u u broodbord aan op dieselfde manier as in die Fritzing -diagram hierbo. Nadat u klaar is, moet u seker maak dat alles behoorlik ingeprop is en dat niks verkeerd is nie. Benewens die 4 gewone LED's of RGB -LED's, benodig u:
- 'N OLED -skerm
- 'N DHT -sensor
- Man-manlike drade
- 4 220k Om -weerstande
Nadat die kode suksesvol op die bord opgelaai is, moet die humiditeits-/tempinligting op die seriële monitor verskyn, en nadat die OLED -skerm sy Adafruit -skerm vertoon het, moet die humiditeitstemperatuurdata aan die bokant verskyn, met die status van elk van die sensors 'ON' of 'OFF' daaronder te sê:).
Stap 6: Versamel data van OLED
Deur die seriële monitor te gebruik, kon ons die humiditeits-/temperatuurdata omskakel in 'n grafiek. As u kode suksesvol werk en u die regte humiditeits-/tempinligting op die seriële monitor sien, klik dan op 'Tools' en dan op 'Serial Plotter'. Sodra u daarop gedruk het, moet u 'n grafiek van die data kry. Om data te versamel, koppel die DHT -sensor aan die broodbord, voer die finale kode uit en stel die DHT -sensor naby u venster of buite van sononder tot sonop om die data te kry.
In die grafiek regs van Celsius Temperatuur teenoor Tyd, neem die temperatuur geleidelik af namate die son sak. Hierdie data is tydens sonsondergang van 19:00 tot 22:00 versamel. Nagtyd lewer dit dikwels laer temperature in vergelyking met die dag, omdat die son die gebied nie meer direk warm maak nie. Hierdie metings is ingesamel met behulp van 'n DHT -sensor wat data oor temperatuur en humiditeit versamel.
Die grafiek aan die linkerkant is 'n meting van die persentasie humiditeit in die lug teenoor tyd. Die data is van 19:00 tot 22:00 versamel met behulp van die DHT -sensor. Met verloop van tyd het die humiditeit begin toeneem, wat moontlik dui op neerslag in die nabye toekoms. Neerslag is 'n belangrike faktor wat in ag geneem moet word by die ontwerp van ligte, omdat weersomstandighede soos reën, sneeu en mis die sigbaarheid kan verminder en ligverspreiding kan beïnvloed.
Stap 7: SD -kaart - kode
Noudat u die OLED/DHT -segment en die PIR/fotoresistorsegment suksesvol gekodeer het, is u gereed vir die laaste segment: die SD -kaartkode. Die doel van hierdie kode is om die SD -kaart die fotoresistordata te laat lees en enige beligtingstendense gedurende die dag te wys.
Dit is wat elke funksie in die kode doen:
setup (): hierdie funksie aktiveer die seriële monitor en teken alle data op die seriële monitor aan
loop (): hierdie funksie bepaal die timer
writeHeader (): hierdie funksie druk die opskrifte vir die data in die SD -kaartlêer
logData (): hierdie funksie teken die tyd, humiditeit en temperatuur in die SD -kaartlêer aan
Bykomende biblioteke wat u benodig:
- SD. FAT -biblioteek
- Eenvoudige DHT -biblioteek
Stap 8: SD -kaart - Elektriese skema's
Nadat u kode suksesvol saamgestel is, sluit u u broodbord aan op dieselfde manier as in die Fritzing -diagram hierbo. Nadat u klaar is, moet u seker maak dat alles behoorlik ingeprop is en dat niks verkeerd is nie. Jy sal nodig hê:
- 'N SD -kaartleser
- 'N Fotoresistor
- Man-manlike drade
- 1 220k Om -weerstand
Nadat die kode suksesvol opgelaai is, laat die fotoresistor by u venster of neem dit na u tuin. Laat dit daar sononder deur sonsopkoms, en as u terugkom, haal die micro SD -kaart uit. Laat u skootrekenaar dan die inligting inlees met 'n SD -kaartleser en maak 'n grafiek daarmee!
Stap 9: Versamel data vanaf die SD -kaart
Hierbo is 'n prentjie van die data wat ons versamel het uit die fotoresistorwaardes van die SD -kaart. Die doel van die versameling van hierdie data is om die beligtingstendense deur die nag te sien, sodat ons kan sien of daar 'n baie indringende bron van kunsmatige lig is wat die lewe van alle diere op aarde versteur.
Om data te versamel, koppel die fotoresistor aan u broodbord met behulp van die Fritzing -diagram en voer die finale kode in die zip -lêer aan die einde van die instruksies uit. Koppel u mikro -SD -kaart in die leser en stel die fotoresistor by u venster of buite van sononder tot sonop om u data te versamel.
Hierdie data is versamel deur 'n fotoresistor, wat die ligintensiteit meet. Die data is van 12:00 tot 06:45 ingesamel en sluit die sonsopkoms in. Toe die son opkom, het die intensiteit van die lig toegeneem, wat veroorsaak het dat die waardes wat deur die fotoresistor verkry is, toeneem. Hierdie data kan gebruik word om te bepaal wanneer kunsmatige beligting nodig is omdat die fotoresistor die intensiteit van natuurlike lig in sy omgewing bepaal en kan bepaal wanneer dit helder genoeg is om 'n sigbare landskap sonder kunsmatige lig te skep.
Stap 10: kombineer al die kode
Nadat u klaar is met die kodering van die drie afsonderlike komponente van die kode, is dit tyd om hulle almal bymekaar te sit! As u die drie komponente van u kode gebruik, moet u seker maak dat niks tussen die programme dieselfde is nie en dit dan in 'n ander program plaas. Maak daarna seker dat alles op u broodbord aangesluit is soos in die Fritzing -diagram en voer die program uit! Vir ons was daar 'n paar keer dat die kode nie gewerk het toe ons al die komponente gekombineer het nie, dus kyk na die probleemoplossingsgedeelte van hierdie Instructable as dinge aanvanklik nie werk nie.
Stap 11: Voorstelle/probleemoplossing
Hieronder is 'n paar voorstelle vir probleme wat u mag ondervind terwyl u aan u kode werk. Ons weet uit ervaring dat kode soms baie irriterend en stresvol kan wees, so hopelik kan hierdie wenke u help om ons * ligbesoedelingsoplossing * te herhaal:).
Algemeen:
- Maak seker dat al u drade aan die regte penne gekoppel is, wat u in die program vertel wanneer u veranderlikes definieer.
- Maak seker dat al u drade behoorlik verbind is (byvoorbeeld, miskien moet u negatiewe kant en positiewe kant van u LED verander word)
- Maak seker dat u nie RGB's in u broodbord het as u vir LED's kodeer nie en omgekeerd
As die programmeerder nie reageer nie:
- Herbegin Arduino en u mikrobeheerder
- Ontkoppel en koppel u USB weer aan
- Kontroleer of u poort die Arduino Uno is (gaan na 'Tools' en dan 'Port')
- Maak 'n nuwe, leë lêer oop en probeer om die oorspronklike kode uit te voer
Kan u nie hier 'n oplossing vind nie?
Gaan na https://www.arduino.cc/en/Guide/Troubleshooting2 (die amptelike Arduino -probleemoplossingswebwerf) en soek na u probleem.
Stap 12: Ontwerp die model
Gebruik die diagramme in die zip -lêer om die ligte te ontwerp en te druk ('n 3D -drukker is egter nie nodig nie). Om die model te ontwerp, sny 'n stuk skuimkern of plakkaat met 'n afmeting van ongeveer 56 cm x 37 cm. Om die bedrading makliker te maak, lig die bord deur warm houtblokke op die hoeke te plak. Skep u pad en gras deur stroke swart konstruksiepapier op die bord te plak en gate uit te sny waar die lampe moet wees. Ruim hulle ewe veel uitmekaar deur die lengte van die bord in 4 te deel en spasies in die basis uit te sny. bepaal ook die ligging van u sensors (fotoresistor en PIR) en die OLED -skerm, sodat u dele van die basis kan uitsny om die drade deur te voer na die arduino. Nadat al die gate gesny is, begin u die drade deurvoer sodat hulle onder die model deurloop en aan die arduino vasgemaak word. Sodra alles afgehandel is, plak die sensors en ligte met warm gom vas!
Stap 13: Toets alles saam
Aangesien die ontwerp-, elektriese en koderingskomponente klaar is, is dit tyd om u werk te toets! Laai u program op na die bord, en as dit werk, baie geluk !! Indien nie, gaan dan terug na die probleemoplossingsgedeelte van hierdie instruksies om te sien of u die probleem kan oplos.
Ligte besoedelingsoplossings soos Artemis is noodsaaklik om die naghemel vir almal terug te bring. Mense het eeue lank bang geword vir die naghemel en het die lig as 'n redder beskou, hoewel baie diere onder die oorvloed van lig naby hul natuurlike habitat ly. Deur hierdie oplossing vir ligte besoedeling te gebruik, kan ons 'n stap neem na 'n beter omgewing, sodat ons en al die ander diere op aarde nie deur hul natuurlike skedules ontwrig word nie, sodat ons almal gelukkig en gesond kan lewe!
Stap 14: Erkennings
Baie dankie dat u ons Instructable gelees het!:) Hierdie projek sou nie moontlik gewees het sonder die volgende groepe nie, so hier is 'n paar mense wat ons wil bedank:
- Jesus Garcia (ons instrukteur by die Adler ASW -program) om ons te leer hoe om hierdie sensors te gebruik en ons te help met die oplos van probleme!
- Ken, Geza, Chris, Kelly en die res van die Adler Teen Programs -span wat ons gehelp het met hierdie projek
- Gassprekers LaShelle Spencer, Carlos Roa en Li-Wei Hung vir fassinerende praatjies wat ons geïnspireer het om kreatief te bly met ons projekte
- Snap Circuits om 'n baie interessante kit vir ons te stuur wat ons gehelp het om meer te wete te kom oor stroombane en ons gehelp het met ons finale projek
- die Adler -skenkers omdat hulle na ons finale aanbieding gekyk en terugvoer gegee het:)
Hierbo is ook 'n zip -lêer met al die fritzing -diagramme, modelle, biblioteke en kode wat ons gebruik het om hierdie Light Pollution -oplossing te maak. Ons moedig u aan om dit af te laai as u dit tuis wil maak!
Laai ons hele bewaarplek vir hierdie oplossing vir ligte besoedeling hier af!