Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Många tågstationer idag är osäkra på grund av bristande säkerhet, hinder och varning om att tåget kommer in. Vi såg ett behov av att det skulle åtgärdas. För att lösa detta problem skapade vi Safer Better. Vi använde vibrationssensorer, rörelsesensorer och ett nödlarmsystem på en Arduino Uno för att öka säkerheten på en tågstation.
Tillbehör som behövs:
- Arduino Uno
- Jumper Wires
- PIR -rörelsessensor
- Piezo -vibrationssensor
- LCD skärm
- Piezo -högtalare
- Fysisk switch
- Mjuk potentiometer
- 330 ohm motstånd
Av: Jacob Wimmer, Olivia Crawley, Jin Kim
Steg 1: Anslut styrelsen
Vi kopplade vår Arduino som diagrammet ovan.
Steg 2: 3D -utskrift LCD -stativ
Vi 3D -skrivit ut ett stativ för vår LCD -skärm för bättre synlighet.
Steg 3: Anslut till Arduino i Matlab
Det första steget för att skriva vår kod var att ansluta vårt Arduino -kort till Matlab. Detta görs genom att skapa ett Arduino -objekt. Vi använde följande kod:
a = arduino ('/dev/tty.usbmodem14201', 'Uno', 'bibliotek', 'ExempelLCD/LCDAddon');
Steg 4: Skriv kod i Matlab
Vi skapade ett program i Matlab för att köra vår Arduino. Efter att ha initierat vår LCD -skärm skrev vi kod för att styra vår tågstation. Vi använde ingångar som en vibrationssensor, rörelsessensor och fysisk omkopplare för att producera en mängd olika utgångar. Dessa ingångar, utgångar och motsvarande kod kommer att förklaras i stegen nedan.
Steg 5: Vibrationssensor
Vibrationssensorn är en analog sensor och använde därför Matlab -funktionen readVoltage.
val_vibro = readVoltage (a, 'A0'); T
han readVoltage -funktionen returnerade ett intervall av värden, men vi bestämde att ett värde över 0,5 var en anständig vibration och därför använde vi det som vårt basvärde. Om spänningen var över 0,5 betyder det att tåget kommer in i stationen. När detta värde upptäcktes skickas ett meddelande till LCD -skärmen. Meddelandet på LCD -skärmen är ett sätt att kommunicera till folk på stationen att ett tåg kommer.
Vi skrev på vår LCD -skärm med följande kod:
om val_vibro <= 0,5;
elseif val_vibro> 0,5;
printLCD (lcd, 'Train In 3 Min');
slutet
Steg 6: PIR -rörelsesensor
PIR -rörelsesensorn används för att säkerställa att föraren känner till hinder längs tågspåren. Sensorn tar bilder och jämför den nyaste bilden med den senaste tagna och om något har flyttat kommer Matlab att returnera värdet 1. När något detekteras på spåren dyker ett grafiskt användargränssnitt (GUI) upp för att meddela tågoperatören att något är på spåren. Operatören har då möjlighet att stoppa tåget eller fortsätta. När du har valt önskat alternativ visas ett bekräftelsemeddelande.
Följande kod användes för rörelsesensorn:
om val_opt == 1;
d1 = 'Ett objekt har detekterats på spåren i stationen';
op_input = questdlg (d1, 'Operatörsmeddelande', 'Stop Train', 'Keep Moving', 'Keep Moving');
b1 = strcmp (op_input, 'Stop Train');
b2 = strcmp (op_input, 'Keep Moving');
om b1 == 1
msgbox ('Tågstopp')
paus (3)
elseif b2 == 1
msgbox ('Tåg fortsätter')
paus (3)
slutet
elseif val_opt == 0;
slutet
Steg 7: Fysisk omkopplare
Vi tror också att tågstationer måste ha fler säkerhetsfunktioner. Vi bestämde oss för att ha en omkopplare som skulle larma på stationen. Vi gjorde detta genom att använda en fysisk switch. När denna omkopplare slås på ljuder ett larm genom en högtalare.
Vi gjorde detta med följande kod:
om s_val == 1 för i = 1:10
playTone (a, 'D10', 1800, 1)
paus (.1)
playTone (a, 'D10', 2000, 1)
paus (.1)
slutet
slutet