Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Piirin rakentaminen:
- Vaihe 2: Arduinon ohjelmointi:
- Vaihe 3: Pythonin ohjelmointi Arduinon graafisten tietojen kuvaamiseen:
- Vaihe 4: Lopullinen ohjelma valon voimakkuuden tarkistamiseksi huoneessa
- Vaihe 5: Tulos:
Video: Valon intensiteetin piirtäminen Arduinon ja Pythonin Arduino -pääkirjaston avulla: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Arduino on taloudellinen mutta erittäin tehokas ja toimiva työkalu, ja sen ohjelmoiminen Embedded C: hen tekee projektien tekemisestä työlästä! Pythonin Arduino_Master -moduuli yksinkertaistaa tätä ja antaa meille mahdollisuuden suorittaa laskelmia, poistaa roska -arvot ja piirtää kaavion tietojen visuaaliseksi esitykseksi.
Jos et vielä tiedä tästä moduulista, asenna se komennolla pip install Arduino_Master
Älä huoli, jos et osaa käyttää tätä moduulia, käy tästä linkistä => Arduino_Master
Tämän projektin koodi on kuitenkin aina käytettävissä tässä ohjeessa.
Tarvikkeet
Tätä projektia varten tarvitset seuraavat:
- Arduino
- Valosta riippuvainen vastus (LDR) ja
- Python 3 asennettu tietokoneellesi.
Vaihe 1: Piirin rakentaminen:
Käytämme Arduinon nastaa A1 syöttötietojen saamiseen. Voit myös käyttää Arduinon 5V- ja GND -nastoja akun sijaan. Tee liitäntä seuraavasti:
- Liitä LDR: n toinen pää 5 V: n akun positiiviseen napaan tai Arduinon 5 V: n napaan.
- Liitä LDR: n toinen pää rinnakkain napaan A1 ja akun negatiiviseen napaan tai Arduinon GND -nastaan.
- Käytä vastusta varmistaaksesi, että kaikki virta ei virtaa GND: hen, minkä seurauksena et saa tarpeeksi voimakasta signaalia Arduinon A1 -liittimessä. (Käytän 10k ohmin vastusta).
Vaihe 2: Arduinon ohjelmointi:
Arduino_Master -moduuli käyttää Arduinon sarjamonitoria tietojen lähettämiseen ja vastaanottamiseen. Tämän moduulin käytön etuna on, että kun olet ohjelmoinut Arduinosi, voit muuttaa python -ohjelmaa yksin eri projekteihin, koska ohjelmointi pythonissa on suhteellisen helppoa!
Koodi:
// LDR_1 -muuttujaa käytetään Arduinon nastan A1 merkitsemiseen.
int LDR_1 = A1;
// A1: ltä vastaanotetut tiedot tallennetaan kohteeseen LDR_Value_1.
float LDR_Value_1;
Merkkijonotulo;
mitätön asennus ()
{pinMode (LDR_1, INPUT); // LDR_1 on asetettu INPUT -nastaksi. Sarja.alku (9600); // Tiedonsiirtonopeus on 9600.}
tyhjä silmukka ()
{if (Serial.available ()> 0) // jos sarjamonitorissa on tuloa, jatka sitten. {input = Serial.readString (); // Lue syöte merkkijonona. if (input == "DATA") {LDR_Value_1 = analogRead (LDR_1) * (5.0 / 1023.0); // (5/1023) on muuntokerroin arvon saamiseksi volteina. Serial.println (LDR_Value_1); // Jos tulo on yhtä suuri kuin "DATA", lue tulo LDR_1: stä ja tulosta se Serial Monitorille. } muu int i = 0; // jos tulo ei ole sama kuin "DATA", älä tee mitään! }
}
Vaihe 3: Pythonin ohjelmointi Arduinon graafisten tietojen kuvaamiseen:
Jokaisella LDR: llä olisi omat vastusarvonsa, ja meidän on muistettava, että ei elektronisille komponenteille ovat koskaan täysin identtisiä toiminnassa. Siksi meidän on ensin löydettävä jännite eri valon voimakkuuksilla.
Lataa seuraava ohjelma python IDE: hen ja suorita se:
Tee tämä eri valon voimakkuuksille ja tee kaavion avulla johtopäätös, esimerkiksi jos voimakkuus on alle 1, huone on liian pimeä. Voimakkuuden 1 ja 2 välillä huone on huomattavasti pimeä. Jos voimakkuus on suurempi kuin 2, valo kytketään päälle.
# Tuodaan Arduino_Master -moduulia
Arduino_Master -tuonnista *
# kerätä dataa
data = suodatin (ardata (8, squeeze = epätosi, dynaaminen = totta, msg = "DATA", rivit = 30), odotettu_tyyppi = 'numero', raja = [0, 5])
# raja on asetettu 5: ksi, koska käytämme 5 V: n akkua.
# Arvojen piirtäminen
Kaavio (data, stl = 'dark_background', label = 'Light Intensity')
Vaihe 4: Lopullinen ohjelma valon voimakkuuden tarkistamiseksi huoneessa
Kun olet tehnyt johtopäätöksen saamistasi tiedoista, lataa seuraava ohjelma ja muista muuttaa rajoituksia johtopäätöksesi mukaan.
# Tuodaan Arduino_Master -moduulia
Arduino_Master -tuonnista # datatietojen kerääminen = suodatin (ardata (8, squeeze = False, dynamic = true, msg = "DATA", lines = 50), odotettu_tyyppi = 'num', limit = [0, 5]) # luokittelutiedot perustuu johtopäätökseen info = i: lle alueella (len (data)): intensiteetti = data jos intensiteetti 1 ja intensiteetti = 2: info.append ('Light ON') # Kaavion piirtäminen. compGraph (data, tiedot, stl = 'dark_background', label1 = 'Light Intensity', label2 = 'State')
Vaihe 5: Tulos:
Ohjelman suorittaminen kestää minuutin tai kaksi, koska luet 50 hetkellistä arvoa Arduinolta.
Jos haluat nopeuttaa prosessia, kokeile muuttaa ardata -funktion rivit -parametria. Muista kuitenkin, että mitä vähemmän havaintoja, sitä huonompi on tietojen laatu.
Huomaa: Jos yllä olevan kuvan koko kaavio ei ole näkyvissä, katso Johdanto -osan yläpuolella olevaa kaaviota.
Suositeltava:
Lämpötila -anturin reaaliaikaisten tietojen piirtäminen (TMP006) MSP432 LaunchPadin ja Pythonin avulla: 9 vaihetta
Lämpötila -anturin (TMP006) reaaliaikaisten tietojen piirtäminen MSP432 LaunchPadin ja Pythonin avulla: TMP006 on lämpötila -anturi, joka mittaa kohteen lämpötilan ilman tarvetta koskettaa kohdetta. Tässä opetusohjelmassa piirrämme reaaliaikaiset lämpötilatiedot BoosterPackista (TI BOOSTXL-EDUMKII) Pythonin avulla
Kasvojen tunnistus ja tunnistus - Arduino -kasvotunnus OpenCV Pythonin ja Arduinon avulla .: 6 vaihetta
Kasvojen tunnistus ja tunnistus | Arduino -kasvotunnus OpenCV Pythonin ja Arduinon avulla .: Kasvontunnistus AKA -kasvotunnus on yksi tärkeimmistä ominaisuuksista matkapuhelimissa nykyään. Joten minulla oli kysymys " voinko saada kasvotunnuksen Arduino -projektilleni " ja vastaus on kyllä … Matkani alkoi seuraavasti: Vaihe 1: Pääsy
Suuntautumisen opiskelu Raspberry Pi: n ja MXC6226XU: n avulla Pythonin avulla: 6 vaihetta
Suuntautumisen opiskelu Raspberry Pi: n ja MXC6226XU: n avulla Pythonin avulla: Äänet ovat yksinkertaisesti osa ajoneuvon työskentelyä. Hyvin viritetyn ajoneuvomoottorin humina on upea ääni. Renkaiden kulutuspinnat nurisevat tietä vasten, tuuli huutaa peilien, muovikappaleiden ja kojelaudan kappaleiden ympäri
DIY "PC -käyttömittari ROG Base" Arduinon ja Pythonin avulla: 5 vaihetta (kuvien kanssa)
DIY "PC -käyttömittari ROG Base" Arduinon ja Pythonin avulla: ************************************* +Ensinnäkin tämän ohjeen oli kirjoittanut muu kuin äidinkielenään englantilainen puhuja …… Ei englantilainen professori, joten ilmoita kaikista kieliopillisista virheistä ennen kuin teet minusta hauskaa.: P +Ja älä jäljittele
Valon/kotivalojen hallinta Arduinon ja Amazon Alexan avulla: 16 vaihetta (kuvilla)
Valon/kotivalojen hallitseminen Arduinon ja Amazon Alexan avulla: Olen selittänyt, kuinka ohjata UNO: hon kytkettyä ja Alexan ohjaamaa valoa