INHOUDSOPGAWE:
- Stap 1: sagteware en materiaal
- Stap 2: Koppel aan u Arduino en bepaal die COM -poort
- Stap 3: Matlab -kode
- Stap 4: Bedrading van die buigsensor
- Stap 5: Koppel Arduino aan die LCD
- Stap 6: Koppel sagte potensiometer
- Stap 7: Toets u verbeterings op 'n slim spoorstelsel
Video: LifeGuard 2.0: 7 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Wou u al ooit wiskundige bewerkings uitvoer, sensorlesings neem, analoog en digitale insette monitor, en analoog en digitaal uitsette beheer sonder enige vorige elektroniese ervaring? Indien wel, is hierdie projek net vir jou! Ons sal 'n mikrobeheerder en MATLAB gebruik om 'n toestel te skep wat gebruik kan word om die EF Express SMART RAIL -stelsel te monitor en te verbeter. Met 'n mikrobeheerder is die moontlikhede vir insette en uitsette (sein/inligting wat op die bord ingaan en 'n sein wat die bord verlaat) eindeloos. Ons sal 'n buigsensor en potensiometer as insette gebruik. Hul uitsette is onderskeidelik 'n boodskap via 'n LCD -skerm en LED -ligte, sowel as 'n gonser. Die verbeterings wat ons hoop om in die SMART RAIL -stelsel in te stel, hou verband met die verbetering van die veiligheid van die stelsel. Gryp u skootrekenaar en mikrobeheerder, en laat ons begin!
Stap 1: sagteware en materiaal
Sagteware benodig
1.) MATLAB
- U moet 'n plaaslike weergawe van MATLAB op u rekenaar aflaai. Gaan na mathworks.com en skep 'n MATHWORKS -rekening, laai lêers af en aktiveer u lisensie.
-U moet ALLE beskikbare gereedskapskaste aflaai en installeer vir die nuutste weergawe (R2016a of R2016b).
-Mac -gebruikers: u moet OSX 10.9.5 of later hê om R2015b uit te voer; dit is goed om 'n vorige weergawe van MATLAB te gebruik.
2.) Arduino hardeware -ondersteuningspakket:
-Installeer die pakket Arduino Hardware Support. Maak MATLAB oop. Op die MATLAB-tuisblad, in die Omgewingsmenu, kies Byvoegings Kry hardewareondersteuningspakkette Kies die "MATLAB-ondersteuningspakket vir Arduino-hardeware". U moet by u MATHWORKS -rekening aanmeld
-As u installasie onderbreek word en u opeenvolgende mislukte pogings/foute ondervind tydens die installering van die hardeware -pakket, vind en verwyder die gids Arduino op u hardeskyf en begin van die begin af.
Materiaal benodig
1.) Skootrekenaar of tafelrekenaar
2.) SparkFun Arduino -bord
3.) Flex Sensor
4.) Potensiometer
5.) LCD -skerm
6.) LED -lig
7.) SparkFun Inventor's Kit (vind aanlyn)
8.) USB -kabel en mini -USB
9.) Springdrade
10.) Piezo -gonser
Stap 2: Koppel aan u Arduino en bepaal die COM -poort
(U COM -poort kan verander elke keer as u inprop) Sluit die Arduino USB -kabel aan op u rekenaar en die mini -USB op u Arduino -bord. Miskien moet u 'n paar minute wag voordat die bestuurders afgelaai word.
Om die COM -poort te bepaal:
Op die rekenaar
Metode 1: Gebruik in MATLAB die opdrag - fopen (serial ('nada'))
-om u com -poort te bepaal. U kan so 'n fout kry: Fout met gebruik van seriële/fopen (reël 72) Oopmaak misluk: Poort: NADA is nie beskikbaar nie. Beskikbare hawens: COM3. Hierdie fout dui aan dat u poort 3 is.
-As metode 1 op u rekenaar misluk, maak u Toestelbestuurder oop en brei die Ports (COM en LPT) lys uit. Let op die nommer op die USB -seriële poort. bv. 'USB Serial Poort (COM *)' Die poortnommer is die * hier.
-Sluit geen poort nie, sluit MATLAB en herbegin u rekenaar. Maak MATLAB oop en probeer weer fopen (serial ('nada')).
-As dit misluk, moet u moontlik die bestuurders van SparkFun aflaai van die lêer CDM_v2.12.00_WHQL_Certified.exe, die CDM_v2.12.00_WHQL_Certified.exe -lêer oopmaak en uitvoer en Uittreksel kies. (Miskien moet u die lêer van Explorer oopmaak, met die rechtermuisknop en 'Begin as administrateur').
-Maak 'n Arduino -voorwerp in die MATLAB -opdragvenster - a = arduino ('comx', 'uno'); % x is u poortnommer van bo vir rekenaars (geen voorafgaande nulle nie!)
Op 'n Mac
Metode 1: Vanaf die MATLAB -opdragreël of in 'n Mac Terminal en tik: 'ls /dev/tty.*' Let op die poortnommer vir dev/tty.usbmodem*of dev/tty.usbserial*. Die poortnommer is die * hier.
-As metode 1 misluk op u MAC, moet u dit moontlik doen
-Verlaat MATLAB
-Sluit die Arduino -sagteware en trek die Arduino USB -kabel uit
-installeer Java 6 Runtime
-installeer die USB -bestuurder se kernuitbreiding
-Herbegin u rekenaar
-Koppel die Arduino USB -kabel weer aan
-Loop vanaf die MATLAB -opdragreël of Mac Terminal: ls /dev/tty.*
Let op die poortnommer vir dev/tty.usbmodem* of dev/tty.usbserial*. Die poortnommer is die * hier.
-Maak 'n Arduino -voorwerp in die MATLAB -opdragvenster - a = arduino ('/dev/tty.usbserial*', 'uno'); % * is u poortnommer van bo vir MAC's, of '/dev/tty.usbmodem*'
Stap 3: Matlab -kode
Insette:
1.) Flex Sensor
2.) Potensiometer
Uitsette:
1.) LCD -skerm met die boodskap wat lui: "Trein kom"
2.) LED lig
3.) Piezo -zoemer
In hierdie stap bou ons die kode wat die insette van die Arduino -bord sal analiseer en uitsette sal lewer op grond van die resultate van die ontleding van MATLAB. Met die volgende kode kan u verskeie funksies uitvoer: wanneer die potensiometer geaktiveer word, sal die piëzo -zoemer afwisselende frekwensies uitstraal en die rooi LED sal flikker. As 'n trein nie opgespoor word nie, brand die groen LED. As die Flex Sensor geaktiveer word, sal die gulsige LED afskakel, die rooi LED sal brand en die LCD sal 'n boodskap vertoon wat lui "Train Coming".
MATLAB -kode:
%remery1, shornsb1, wmurrin
%Doel: Treinwaarskuwing
%Invoer: potensiometer, buigsensor
%uitset: lcd, klank, lig
%As die bord nie geïnitialiseer is of probleme met die verbinding het nie, voer die
%onder opdragte in kommentaar. Hulle hoef nie elke keer uitgevoer te word nie
%duidelik alles
%sluit almal
%clc
%a = arduino ('/dev/tty.usbserial-DN01DXOM', 'uno');
%lcd = addon (a, 'ExampleLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
%Stel die bord op sodra dit gekoppel is
configurePin (a, 'D8', 'pullup');%konfigureer D8
configurePin (a, 'D9', 'PWM');%konfigureer D9
tyd = 50; %stel tyd op 50
clearLCD (lcd) %initialiseer LCD
%Begin lus
terwyl tyd> 0
%Flex -sensorspanning bepaal of lig groen is of lig
%is rooi en LCD vertoon "trein kom"
flex_status = readVoltage (a, 'A0'); %lees spanning van flex sensor
as flex_status> 4 %as die spanning groter is as 4, aktiveer die lus
writeDigitalPin (a, 'D12', 0) %skakel groen af
writeDigitalPin (a, 'D11', 1) %skakel rooi aan
printLCD (lcd, 'Train Coming') %vertoon "trein kom" op LCD
pouse (5) %Wag 5 sekondes
clearLCD (lcd) %Duidelike boodskap vanaf LCD
writeDigitalPin (a, 'D11', 0) %Skakel Rooi LED uit
anders
einde
pe_status = readVoltage (a, 'A2'); %Lees potensiometer spanning
as pe_status> 2 %as die spanning groter is as 2, aktiveer die lus
writeDigitalPin (a, 'D13', 1);%skakel rooi LED aan
playTone (a, 'D9', 400,.25);% Speel 400Hz op Piezo -zoemer,.25 sek.
writeDigitalPin (a, 'D13', 0)%skakel rooi LED af
pouse (.25)%wag.25 sekondes
writeDigitalPin (a, 'D13', 1) %Herhaal hierbo, met gonser op 200Hz
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
pouse (.25)
writeDigitalPin (a, 'D13', 1);%Herhaal hierbo
playTone (a, 'D9', 400,.25);
writeDigitalPin (a, 'D13', 0)
pouse (.25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
pouse (.25)
writeDigitalPin (a, 'D13', 1) %Herhaal hierbo
playTone (a, 'D9', 400,.25);
writeDigitalPin (a, 'D13', 0)
pouse (.25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
pouse (.25)
writeDigitalPin (a, 'D13', 1) %Herhaal hierbo
playTone (a, 'D9', 400,.25);
writeDigitalPin (a, 'D13', 0)
pouse (.25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200,.25);
writeDigitalPin (a, 'D13', 0)
pouse (.25)
anders
writeDigitalPin (a, 'D12', 1)%as die spanning minder as 2 is, skakel die groen LED aan
writeDigitalPin (a, 'D13', 0)%draai van Rooi LED
einde
einde
Stap 4: Bedrading van die buigsensor
Materiaal benodig
1.) 1 Flex -sensor
2.) 1 10K Ohm Weerstand
3.) 8 Jumper Wires
*Verwys na foto's, onderskeidelik.
In hierdie stroombaan meet ons buiging. 'N Buigsensor gebruik koolstof op 'n plastiekstrook om op te tree soos 'n veranderlike weerstand, maar in plaas daarvan om die weerstand te verander deur aan 'n knop te draai, verander jy deur die komponent te buig. 'N Spanningsverdeler om verandering in weerstand op te spoor. In ons geval sal die flex sensor gebruik word om 'n trein op te spoor om 'n LCD -skerm te beveel (sien foto) om 'n boodskap te lees wat sê "Trein kom".
*Op die foto's wat die instruksies vir die bedrading van 'n Flex Sensor aandui, verwys slegs na die drade wat verband hou met die bedrading van die Flex Sensor. Ignoreer die bedrading vir die Servo.
Draai penne soos volg:
Stap 1: Sluit 1 draad aan op ingang 5V en 1 draad in ingang GND (grond) op die Arduino -bord in die POWER -afdeling. Steek die ander kant van die 5V -draad in 'n positiewe (+) ingang op die printplaat. Steek die ander kant van die GND-draad in 'n negatiewe (-) ingang op die printplaat.
Stap 2: Steek 1 op die A0 -ingang op die Arduino -bord in die ANALOG IN -afdeling. Steek die einde van die draad in die j20 -ingang op die printplaat.
Stap 3: Sluit 1 draad aan op ingang 9 op die Arduino -bord in die DIGITAL I / O -afdeling. Steek die ander kant in ingang a3.
Stap 4: Sluit 1 draad op die printplaat aan op 'n positiewe (+) ingang. Koppel die ander kant in ingang h24.
Stap 5: Sluit 1 draad op die printplaat aan op 'n negatiewe (+) ingang. Koppel die ander kant in invoer a2.
Stap 6: Sluit 1 draad op die printplaat aan op 'n negatiewe (-) ingang. Koppel die ander kant in invoer b1.
Stap 7: Sluit 1 draad op die printplaat aan op 'n negatiewe (-) ingang. Koppel die ander kant in input i19.
Stap 8: Plaas die weerstand op die printplaat op die i20- en i24 -insette.
*Die laaste prentjie verwys na werklike toepassings.
Stap 5: Koppel Arduino aan die LCD
*Volg hierdie skakel (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) en verwys dan na die stappe wat ek hieronder gegee het om 'n LCD aan te sluit op 'n Arduino:
Stap 1: Maak die zip -lêer oop
Stap 2: maak die ReadMe -lêer oop en volg die instruksies
Materiaal benodig
1.) 16x2 LCD soortgelyk aan hierdie toestel van SparkFun -
2.) Springdrade
*Verwys na foto's, onderskeidelik.
Hierdie stap sal wys hoe u 'n LCD-byvoegingsbiblioteek kan skep en 'Train Coming' op 'n LCD kan vertoon.
Draai penne soos volg:
LCD -pen -> Arduino -pen
1 (VSS) -> Grond
2 (VDD) -> 5V
3 (V0) -> Middelpen op Flex Sensor
4 (RS) -> D7
5 (R/W) -> Grond
6 (E) -> d6
11 (DB4) - D5 (PWM)
12 (DB5) -> D4
13 (DB6) -> D3 (PWM)
14 (DB7) -> D2
15 (LED+) -> 5 V
16 (LED-) -> Grond
Stap 6: Koppel sagte potensiometer
Materiaal benodig
1.) 1 LED
2.) 1 sagte potensiometer
3.) Jumper Wires
4.) 3 330 Ohm Weerstand
5.) Weerstand van 10K Ohm
*Verwys na foto's, onderskeidelik.
In hierdie kring gaan ons 'n ander soort veranderlike weerstand, 'n sagte potensiometer, gebruik. Dit is 'n dun en buigsame strook wat kan waarneem waar druk uitgeoefen word. Deur op verskillende dele van die strook te druk, kan u die weerstand wissel van 100 tot 10 K ohm. U kan hierdie vermoë gebruik om beweging op die potensiometer of as 'n knoppie op te spoor. In hierdie kring sal ons die sagte potensiometer aan die gang kry om 'n RGB -LED te beheer.
Stap 1: Steek 1 pen in die ingang 10 en 1 pen op die ingang 11. Op die Arduino -bord in die DIGITAL I / O -afdeling, steek die ander kant van die penne onderskeidelik in ingang h6 en h7.
Stap 2: Sluit die LED op die printplaat aan op ingange a4, a5, a6 en a7.
Stap 3: Plaas die 3 330 ohm weerstande op die printplaat in die insette e4-g4, e6-g6 en e7-g7.
Stap 4: Steek 1 pen in die ingang e5 op die printplaat. Koppel die ander kant van die pen aan 'n negatiewe (-) invoer.
Stap 5: Plaas die 10K ohm-weerstand op die printplaat in insette i19-negatief (-).
Stap 6: Steek 1 pen in die j18 op die printplaat. Koppel die ander kant van die pen aan 'n positiewe (+) invoer.
Stap 7: Steek 1 pen in die ingang j20 op die printplaat. Koppel die ander kant van die pen aan 'n negatiewe (-) invoer.
Stap 7: Toets u verbeterings op 'n slim spoorstelsel
Op hierdie punt moet u MATLAB -kode funksioneel wees en moet die Arduino -bord akkuraat verbind word met alle bygevoegde komponente. Probeer dit op 'n gesertifiseerde Smart Rail System en kyk of u verbeterings die stelsel veiliger maak.
Aanbeveel:
Neem wonderlike foto's met 'n iPhone: 9 stappe (met foto's)
Neem wonderlike foto's met 'n iPhone: die meeste van ons dra deesdae 'n slimfoon oral, daarom is dit belangrik om te weet hoe u u slimfoonkamera kan gebruik om fantastiese foto's te neem! Ek het net 'n paar jaar 'n slimfoon gehad, en ek hou daarvan om 'n ordentlike kamera te hê om dinge te dokumenteer wat ek
Raspberry Pi -boks met koelventilator met CPU -temperatuuraanwyser: 10 stappe (met foto's)
Raspberry Pi Box of Cooling FAN Met CPU Temperature Indicator: Ek het framboos pi (Hierna as RPI) CPU temperatuur aanwyser stroombaan in die vorige projek bekendgestel. Die kring wys eenvoudig RPI 4 verskillende CPU temperatuur vlakke soos volg.- Groen LED aangeskakel wanneer CPU temperatuur is binne 30 ~
Howto: Raspberry PI 4 Headless (VNC) installeer met Rpi-imager en foto's: 7 stappe (met foto's)
Howto: Raspberry PI 4 Headless (VNC) installeer met Rpi-imager en foto's: ek is van plan om hierdie Rapsberry PI te gebruik in 'n klomp prettige projekte in my blog. Kyk gerus daarna. Ek wou weer my Raspberry PI gebruik, maar ek het nie 'n sleutelbord of muis op my nuwe plek gehad nie. Dit was 'n rukkie sedert ek 'n Framboos opgestel het
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino - Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter - Rc Helikopter - Rc -vliegtuig met Arduino: 5 stappe (met foto's)
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino | Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter | Rc Helikopter | Rc -vliegtuig met Arduino: om 'n Rc -motor te bestuur | Quadcopter | Drone | RC -vliegtuig | RC -boot, ons het altyd 'n ontvanger en sender nodig, veronderstel dat ons vir RC QUADCOPTER 'n 6 -kanaals sender en ontvanger nodig het en dat die tipe TX en RX te duur is, so ons maak een op ons
Hoe om 'n rekenaar met maklike stappe en foto's uitmekaar te haal: 13 stappe (met foto's)
Hoe om 'n rekenaar uitmekaar te haal met eenvoudige stappe en foto's: dit is 'n instruksie oor hoe om 'n rekenaar uitmekaar te haal. Die meeste basiese komponente is modulêr en kan maklik verwyder word. Dit is egter belangrik dat u daaroor georganiseerd is. Dit sal u verhinder om onderdele te verloor, en ook om die montering weer