Sisällysluettelo:
- Vaihe 1: Ohjelmistot ja materiaalit
- Vaihe 2: Yhdistä Arduinoosi ja määritä COM -portti
- Vaihe 3: Matlab -koodi
- Vaihe 4: Flex -anturin kytkentä
- Vaihe 5: Liitä Arduino nestekidenäyttöön
- Vaihe 6: Pehmeän potentiometrin liittäminen
- Vaihe 7: Testaa parannuksiasi Smart Rail -järjestelmässä
Video: LifeGuard 2.0: 7 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Oletko koskaan halunnut suorittaa matemaattisia toimintoja, ottaa anturilukemia, valvoa analogisia ja digitaalisia tuloja ja ohjata analogisia ja digitaalisia lähtöjä ilman aiempaa elektroniikkakokemusta? Jos kyllä, tämä projekti on juuri sinua varten! Käytämme mikro -ohjainta ja MATLABia luomaan laite, jolla voidaan valvoa ja parantaa EF Express SMART RAIL -järjestelmää. Mikro -ohjaimella tulo- ja lähtömahdollisuudet (kortille tuleva signaali/tieto ja kortilta poistuva signaali) ovat rajattomat. Käytämme tuloina flex -anturia ja potentiometriä. Niiden lähdöt ovat viesti LCD -näytön kautta ja LED -valot sekä summeri. Parannukset, jotka toivomme toteutettavan SMART RAIL -järjestelmään, liittyvät järjestelmän turvallisuuden parantamiseen. Tartu kannettavaan tietokoneeseesi ja mikrokontrolleriisi ja aloita!
Vaihe 1: Ohjelmistot ja materiaalit
Ohjelmistoa tarvitaan
1.) MATLAB
- Sinun on ladattava tietokoneellesi MATLABin paikallinen versio. Siirry osoitteeseen mathworks.com ja luo MATHWORKS -tili, lataa tiedostoja ja aktivoi lisenssi.
-Lataa ja asenna KAIKKI saatavilla olevat työkalupakit uusinta julkaisua varten (R2016a tai R2016b).
-Mac -käyttäjät: sinulla on oltava OSX 10.9.5 tai uudempi, jotta voit käyttää R2015b: tä, on OK ajaa MATLABin aiempi versio.
2.) Arduino -laitteiston tukipaketti:
-Asenna Arduino -laitteiston tukipaketti. Avaa MATLAB. Valitse MATLAB Home -välilehden Ympäristö-valikon Lisäosat Hanki laitteistotukipaketteja Valitse "MATLAB-tukipaketti Arduino-laitteistoon". Sinun on kirjauduttava sisään MATHWORKS -tilillesi
-Jos asennuksesi keskeytyy ja sinulla on peräkkäisiä epäonnistuneita yrityksiä/virheitä asennettaessa laitteistopakettia - etsi ja poista Arduino -latauskansio kiintolevyltä ja aloita alusta.
Tarvittavat materiaalit
1.) Kannettava tai pöytätietokone
2.) SparkFun Arduino Board
3.) Flex -anturi
4.) Potentiometri
5.) LCD -näyttö
6.) LED -valo
7.) SparkFun Inventor's Kit (Etsi verkossa)
8.) USB -kaapeli ja mini -USB
9.) Hyppyjohdot
10.) Pietsosummeri
Vaihe 2: Yhdistä Arduinoosi ja määritä COM -portti
(COM -portti saattaa muuttua joka kerta, kun liität sen.) Liitä Arduino -USB -kaapeli tietokoneeseen ja mini -USB Arduino -korttiin. Sinun on ehkä odotettava muutama minuutti, ennen kuin ohjaimet latautuvat.
Voit määrittää COM -portin seuraavasti:
PC: llä
Menetelmä 1: Käytä MATLABissa komentoa - fopen (sarja ('nada'))
-määrittääksesi porttisi. Saatat saada seuraavanlaisen virheilmoituksen: Virhe sarja/fopen -ohjelmaa käytettäessä (rivi 72) Avoin epäonnistui: Portti: NADA ei ole käytettävissä. Käytettävissä olevat portit: COM3. Tämä virhe osoittaa, että porttisi on 3.
-Jos menetelmä 1 epäonnistuu tietokoneellasi, avaa Laitehallinta ja laajenna Portit (COM ja LPT) -luettelo. Huomaa USB -sarjaportin numero. esim. 'USB -sarjaportti (COM *)' Portin numero on * tässä.
-Jos porttia ei näy, sulje MATLAB ja käynnistä tietokone uudelleen. Avaa MATLAB ja yritä fopen (sarja ('nada')) uudelleen.
-Jos tämä epäonnistuu, sinun on ehkä ladattava SparkFun -ohjaimet tiedostosta CDM_v2.12.00_WHQL_Certified.exe, avaa ja suorita CDM_v2.12.00_WHQL_Certified.exe -tiedosto ja valitse Pura. (Sinun on ehkä avattava tiedosto Explorerista, napsautettava hiiren kakkospainikkeella ja suoritettava Suorita järjestelmänvalvojana).
-Luo MATLAB -komentoikkunassa Arduino -objekti - a = arduino ('comx', 'uno'); % x on porttisi numero ylhäältä tietokoneille (ei edeltäviä nollia!)
Macissa
Tapa 1: MATLAB -komentoriviltä tai Mac -päätelaitteesta ja kirjoita: 'ls /dev/tty.*' Huomaa dev/tty.usbmodem*tai dev/tty.usbserial*-portin numero. Portin numero on * tässä.
-Jos menetelmä 1 epäonnistuu MAC -laitteessasi, sinun on ehkä tehtävä niin
-Poistu MATLABista
-Sulje Arduino -ohjelmisto ja irrota Arduino -USB -kaapeli
-asenna Java 6 Runtime
-asenna USB -ohjaimen ytimen laajennus
-Käynnistä tietokoneesi uudelleen
-Liitä Arduino -USB -kaapeli uudelleen
-Suorita MATLAB -komentoriviltä tai Mac -päätelaitteesta: ls /dev/tty.*
-Huomaa portin numero, joka on lueteltu dev/tty.usbmodem* tai dev/tty.usbserial*. Portin numero on * tässä.
-Luo MATLAB -komentoikkunassa Arduino -objekti - a = arduino ('/dev/tty.usbserial*', 'uno'); % * on porttisi numero ylhäältä MAC -laitteille tai '/dev/tty.usbmodem*'
Vaihe 3: Matlab -koodi
Tulot:
1.) Flex -anturi
2.) Potentiometri
Lähdöt:
1.) LCD -näyttö, jossa on viesti "Train Coming"
2.) LED -valo
3.) Pietsosummeri
Tässä vaiheessa rakennamme koodin, joka analysoi Arduino -kortin syötteet ja antaa tuloksia MATLABin analyysin tulosten perusteella. Seuraavan koodin avulla voit suorittaa useita toimintoja: kun potentiometri laukaistaan, pietsosummeri lähettää vaihtelevia taajuuksia ja punainen LED vilkkuu. Kun junaa ei tunnisteta, vihreä LED -valo syttyy. Kun Flex -anturi laukeaa, ahneuden merkkivalo sammuu, punainen LED -valo syttyy ja nestekidenäytössä näkyy viesti "Train Coming".
MATLAB -koodi:
%remery1, shornsb1, wmurrin
%Tarkoitus: Juna -varoitus
%IInput: potentiometri, flex -anturi
%lähtö: lcd, ääni, valo
%Jos korttia ei ole alustettu tai sillä on yhteysongelmia, suorita
%alle komentoja kommenteissa. Niitä ei tarvitse suorittaa joka kerta
%Tyhjennä
%sulje kaikki
%clc
%a = arduino ('/dev/tty.usbserial-DN01DXOM', 'uno');
%lcd = addon (a, 'EsimerkkiLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2');
%Määritä kortti, kun se on liitetty
configurePin (a, 'D8', 'pullup');%configure D8
configurePin (a, 'D9', 'PWM');%configure D9
aika = 50; %asetettu aika 50
clearLCD (lcd) %alustavat nestekidenäytön
%Käynnistä silmukka
kun aika> 0
%Flex -anturin jännite määrittää, onko valo vihreä vai valo
%on punainen ja LCD -näytössä näkyy "juna tulossa"
flex_status = readVoltage (a, 'A0'); Taivutusanturin lukemisjännite %
jos flex_status> 4 %, jos jännite on suurempi kuin 4, liipaisinsilmukka
writeDigitalPin (a, 'D12', 0) %sammuu vihreänä
writeDigitalPin (a, 'D11', 1) %palaa punaisena
printLCD (lcd, 'Train Coming') %näyttää "juna tulossa" nestekidenäytöllä
tauko (5) %Odota 5 sekuntia
clearLCD (lcd) %Poista viesti nestekidenäytöstä
writeDigitalPin (a, 'D11', 0) %Sammuta punainen LED
muu
loppuun
pe_status = lukujännite (a, 'A2'); %Lue potentiometrin jännite
jos pe_status> 2 %, jos jännite on suurempi kuin 2, liipaisinsilmukka
writeDigitalPin (a, 'D13', 1);%sytyttää punaisen LED -valon
playTone (a, 'D9', 400,.25);% Toista 400 Hz pietsosummerilla, 0,25 s
writeDigitalPin (a, 'D13', 0)%sammuttaa punaisen LED -valon
tauko (.25)%odota.25 sekuntia
writeDigitalPin (a, 'D13', 1) %Toista yllä, summerilla 200 Hz
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
tauko (.25)
writeDigitalPin (a, 'D13', 1);%Toista yllä
playTone (a, 'D9', 400,.25);
writeDigitalPin (a, 'D13', 0)
tauko (.25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
tauko (.25)
writeDigitalPin (a, 'D13', 1) %Toista yllä
playTone (a, 'D9', 400,.25);
writeDigitalPin (a, 'D13', 0)
tauko (.25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
tauko (.25)
writeDigitalPin (a, 'D13', 1) %Toista yllä
playTone (a, 'D9', 400,.25);
writeDigitalPin (a, 'D13', 0)
tauko (.25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
tauko (.25)
muu
writeDigitalPin (a, 'D12', 1)%, jos jännite on alle 2, sytytä vihreä LED
writeDigitalPin (a, 'D13', 0)%kääntyy punaista LEDiä
loppuun
loppuun
Vaihe 4: Flex -anturin kytkentä
Tarvittavat materiaalit
1.) 1 Flex -anturi
2.) 1 10K ohmin vastus
3.) 8 hyppyjohdinta
*Katso kuvia.
Tässä piirissä mittaamme joustavuutta. Joustotunnistin käyttää hiiltä muovinauhalla toimimaan muuttuvan vastuksen tavoin, mutta sen sijaan, että muuttaisit vastusta kääntämällä nuppia, muutat taivuttamalla komponenttia. Jännitteenjakaja vastuksen muutoksen havaitsemiseksi. Meidän tapauksessamme käytämme joustoanturia havaitsemaan junan ohi komennolla LCD -näyttöä (katso kuva) lukemaan viestin, jossa sanotaan "Juna tulee".
*Kuvissa, joissa esitetään Flex -anturin kytkentäohjeet, viittaa vain johtoihin, jotka liittyvät Flex -anturin johdotukseen. Ohita Servon johdotus.
Langan tapit seuraavasti:
Vaihe 1: Kytke Arduino -kortin POWER -osassa 1 johto tuloon 5V ja 1 johto tuloon GND (maa). Kytke 5 V: n johdon toinen pää piirilevyn positiiviseen (+) tuloon. Kytke GND-johdon toinen pää piirilevyn negatiiviseen (-) tuloon.
Vaihe 2: Kytke Arduino -kortin ANALOG IN -osiossa 1 A0 -tulo. Kytke johdon pää piirilevyn j20 -tuloon.
Vaihe 3: Kytke Arduino -kortin DIGITAL I / O -osan 1 johto tuloon 9. Kytke toinen pää tuloon a3.
Vaihe 4: Kytke piirilevyllä 1 johto positiiviseen (+) tuloon. Liitä toinen pää tuloon h24.
Vaihe 5: Kytke piirilevyllä 1 johto negatiiviseen (+) tuloon. Liitä toinen pää tuloon a2.
Vaihe 6: Kytke piirilevyllä 1 johto negatiiviseen (-) tuloon. Liitä toinen pää tuloon b1.
Vaihe 7: Kytke piirilevyllä 1 johto negatiiviseen (-) tuloon. Liitä toinen pää tuloon i19.
Vaihe 8: Aseta piirilevyllä vastus i20- ja i24 -tuloihin.
*Viimeinen kuva viittaa todellisiin sovelluksiin.
Vaihe 5: Liitä Arduino nestekidenäyttöön
*Seuraa tätä linkkiä (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) ja katso sitten alla antamiani ohjeita liittääksesi LCD-näytön Arduinoon:
Vaihe 1: Avaa zip -tiedosto
Vaihe 2: avaa ReadMe -tiedosto ja noudata ohjeita
Tarvittavat materiaalit
1.) 16x2 LCD, joka on samanlainen kuin tämä laite SparkFunista -
2.) Hyppyjohdot
*Katso kuvia.
Tässä vaiheessa näytetään, kuinka luodaan LCD-lisäkirjasto ja näytetään "Train Coming" nestekidenäytössä.
Langan tapit seuraavasti:
LCD -nasta -> Arduino -nasta
1 (VSS) -> Maa
2 (VDD) -> 5V
3 (V0) -> Flex -anturin keskitappi
4 (RS) -> D7
5 (R/W) -> Maa
6 (E) -> d6
11 (DB4) - D5 (PWM)
12 (DB5) -> D4
13 (DB6) -> D3 (PWM)
14 (DB7) -> D2
15 (LED+) -> 5 V
16 (LED-) -> Maadoitus
Vaihe 6: Pehmeän potentiometrin liittäminen
Tarvittavat materiaalit
1.) 1 LED
2.) 1 Pehmeä potentiometri
3.) Jännitejohdot
4.) 3 330 ohmin vastus
5.) 10K ohmin vastus
*Katso kuvia.
Tässä piirissä aiomme käyttää toisenlaista muuttuvaa vastusta, pehmeää potentiometriä. Tämä on ohut ja joustava nauha, joka tunnistaa, missä painetta käytetään. Painamalla nauhan eri osia alas, voit muuttaa vastusta 100 - 10 K ohmia. Voit käyttää tätä kykyä seurata liikettä potentiometrillä tai painikkeena. Tässä piirissä saamme pehmeän potentiometrin käyttöön ja ohjaamaan RGB -LEDiä.
Vaihe 1: Kytke Arduino -kortin DIGITAL I / O -osion 1 -nastainen tuloon 10 ja 1 -nastainen tuloon 11. Vastaavasti liitä näiden nastojen toinen pää tuloihin h6 ja h7.
Vaihe 2: Liitä piirilevyllä oleva LED tuloihin a4, a5, a6 ja a7.
Vaihe 3: Aseta piirilevylle 3330 ohmin vastukset tuloihin e4-g4, e6-g6 ja e7-g7.
Vaihe 4: Kytke piirilevyllä 1 nasta tuloon e5. Liitä tapin toinen pää negatiiviseen (-) tuloon.
Vaihe 5: Aseta piirilevyllä 10K ohmin vastus tuloihin i19-negatiivinen (-).
Vaihe 6: Liitä piirilevyllä 1 nasta j18: een. Liitä tapin toinen pää positiiviseen (+) tuloon.
Vaihe 7: Liitä piirilevyllä 1 nasta tuloon j20. Liitä tapin toinen pää negatiiviseen (-) tuloon.
Vaihe 7: Testaa parannuksiasi Smart Rail -järjestelmässä
Tässä vaiheessa MATLAB -koodisi pitäisi olla toimiva ja Arduino -kortti on liitettävä tarkasti kaikkien lisättyjen komponenttien kanssa. Kokeile sitä sertifioidulla Smart Rail -järjestelmällä ja katso, tekevätkö parannuksesi järjestelmän turvallisemmaksi.
Suositeltava:
DIY 37 Leds Arduino -rulettipeli: 3 vaihetta (kuvilla)
DIY 37 Leds Arduino Roulette Peli: Ruletti on kasinopeli, joka on nimetty ranskalaisen sanan mukaan, joka tarkoittaa pientä pyörää
Covid -suojakypärä, osa 1: johdanto Tinkercad -piireihin!: 20 vaihetta (kuvilla)
Covid -suojakypärä, osa 1: johdanto Tinkercad -piireihin!: Hei, ystävä! Tässä kaksiosaisessa sarjassa opimme käyttämään Tinkercadin piirejä - hauskaa, tehokasta ja opettavaista työkalua piirien toiminnasta! Yksi parhaista tavoista oppia on tehdä. Joten suunnittelemme ensin oman projektimme: th
Weasleyn sijaintikello neljällä kädellä: 11 vaihetta (kuvilla)
Weasleyn sijaintikello neljällä kädellä: Joten Raspberry Pi: n kanssa, joka oli pyörinyt jonkin aikaa, halusin löytää mukavan projektin, jonka avulla voisin hyödyntää sitä parhaalla mahdollisella tavalla. Löysin ppeters0502 tämän upean Instructable Build Your Own Weasley Location Clockin ja ajattelin, että
Ammattimainen sääasema käyttäen ESP8266- ja ESP32 -DIY: 9 vaihetta (kuvilla)
Ammattimainen sääasema käyttämällä ESP8266- ja ESP32 -DIY: LineaMeteoStazione on täydellinen sääasema, joka voidaan liittää Sensirionin ammattitunnistimiin sekä joihinkin Davis -instrumenttikomponentteihin (sademittari, tuulimittari)
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite