![Tilgjengelighetsinformasjonssystem for togseter - FGC: 8 trinn Tilgjengelighetsinformasjonssystem for togseter - FGC: 8 trinn](https://i.howwhatproduce.com/images/001/image-191-86-j.webp)
Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
![Tilgjengelighetsinformasjonssystem for togseter - FGC Tilgjengelighetsinformasjonssystem for togseter - FGC](https://i.howwhatproduce.com/images/001/image-191-87-j.webp)
Dette prosjektet er basert på implementering, på en skala, av et tog som lar folk på stasjonen vite hvilke seter som er ledige. For å utføre prototypen brukes Arduino UNO -programvaren sammen med behandlingen for den grafiske delen.
Dette konseptet ville gjøre det mulig å revolusjonere offentlig transport, ettersom det ville optimalisere alle togstoler maksimalt, sikre bruk av alle vogner, sammen med muligheten til å samle inn data og utføre nøyaktige studier senere på.
Trinn 1: Design 3D -modell
![Design 3D -modell Design 3D -modell](https://i.howwhatproduce.com/images/001/image-191-88-j.webp)
Først av alt har vi gjort en omfattende undersøkelse av togmodeller. Med all informasjonen samlet, er GTW -toget (produsert av Stadler Rail) brukt på FGC (Ferrocarrils de la Generalitat de Catalunya) valgt.
Den ble senere designet med 3D -programvaren PTC Creo, modellen for den påfølgende 3D -utskriften.
Trinn 2: Skrive ut 3D -modell og ferdig
![Skriver ut 3D -modell og utførelser Skriver ut 3D -modell og utførelser](https://i.howwhatproduce.com/images/001/image-191-89-j.webp)
Når toget er designet, blir det overført til 3D -utskrift. Når stykket er trykt, må det poleres for å oppnå en glatt overflate.
Dette prosjektet kan også gjøres med eksisterende togmodeller.
Når de er skrevet ut, er de siste finishene gitt.
Trinn 3: Komponenter
![Komponenter Komponenter](https://i.howwhatproduce.com/images/001/image-191-90-j.webp)
Følgende komponenter er nødvendige for utviklingen av dette prosjektet:
- FSR 0.04-4.5LBS (trykksensor).
- 1.1K ohm motstander
Trinn 4: Koding (Arduino og prosessering)
![Koding (Arduino og prosessering) Koding (Arduino og prosessering)](https://i.howwhatproduce.com/images/001/image-191-91-j.webp)
![Koding (Arduino og prosessering) Koding (Arduino og prosessering)](https://i.howwhatproduce.com/images/001/image-191-92-j.webp)
![Koding (Arduino og prosessering) Koding (Arduino og prosessering)](https://i.howwhatproduce.com/images/001/image-191-93-j.webp)
Nå er det på tide å skrive Arduino -koden som lar sensorene sende et tegn til behandlingsprogramvaren som vil overføre informasjonen grafisk.
Som sensorer har vi 4 trykksensorer for arduino som varierer motstanden i henhold til kraften som påføres dem. Så målet er å dra nytte av signalet som sendes av sensorene (når passasjerene sitter) for å endre de grafiske skjermbildene i Processing.
Deretter lager vi den grafiske delen der vi har tatt hensyn til den grafiske utformingen av Ferrocarrils de la Generalitat de Catalunya, for å etterligne virkeligheten på best mulig måte.
Under behandlingen er det blitt skrevet en kode som er direkte koblet til arduino-programvaren, på denne måten, hver gang noen sitter på et sete, endrer den farge, slik at brukeren på togplattformen kan kjenne sanntid på tilgjengeligheten av seter.
Her kan du se kodingen
ARDUINO:
int pot = A0; // Koble den midterste potten til denne pinint pot2 = A1; int pot3 = A2; int pot4 = A3; int lectura1; // variabel for lagring av pottverdiene;
int lectura2; int lectura3; int lectura4;
void setup () {// initialisere seriell kommunikasjon med en 9600 baud rate Serial.begin (9600); }
void loop () {String s = ""; // // Llegir sensor1 lectura1 = analogRead (pot); // lectura den analoge verdien hvis (lectura1> 10) {s = "1"; forsinkelse (100); } annet {s = "0"; forsinkelse (100); } Serial.println (s);
}
BEHANDLING:
import behandling. serie.*; // dette biblioteket håndterer seriesamtalen String val = ""; PImage s0000, s0001, s0010, s0011, s0100, s0101, s0110, s0111, s1000, s1001, s1010, s1011, s1100, s1101, s1110, s1111; Seriell myPort; // Lag objekt fra serieklassen
void setup () // dette kjøres bare én gang {fullScreen (); bakgrunn (0); // sette bakgrunnsfarge til svart myPort = new Serial (dette, "COM5", 9600); // gi parametere til objektet i serieklassen, sett com som din arduino er koblet til og baudhastigheten
s0000 = loadImage ("0000.jpg"); s0001 = loadImage ("0001.jpg"); s0010 = loadImage ("0010.jpg"); s0011 = loadImage ("0011.jpg"); s0100 = loadImage ("0100.jpg"); s0101 = loadImage ("0101.jpg"); s0110 = loadImage ("0110.jpg"); s0111 = loadImage ("0111.jpg"); s1000 = loadImage ("1000.jpg"); s1001 = loadImage ("1001.jpg"); s1010 = loadImage ("1010.jpg"); s1011 = loadImage ("1011.jpg"); s1100 = loadImage ("1100.jpg"); s1101 = loadImage ("1101.jpg"); s1110 = loadImage ("1110.jpg"); s1111 = loadImage ("1111.jpg");
s0000.resize (displayWidth, displayHeight); s0001.resize (displayWidth, displayHeight); s0010.resize (displayWidth, displayHeight); s0011.resize (displayWidth, displayHeight); s0100.resize (displayWidth, displayHeight); s0101.resize (displayWidth, displayHeight); s0110.resize (displayWidth, displayHeight); s0111.resize (displayWidth, displayHeight); s1000.resize (displayWidth, displayHeight); s1001.resize (displayWidth, displayHeight); s1010.resize (displayWidth, displayHeight); s1011.resize (displayWidth, displayHeight); s1100.resize (displayWidth, displayHeight); s1101.resize (displayWidth, displayHeight); s1110.resize (displayWidth, displayHeight); s1111.resize (displayWidth, displayHeight);
val = trim (val);} void draw () {if (val! = null) {
if (val.equals ("0001")) {image (s0001, 0, 0); } annet if (val.equals ("0010")) {image (s0010, 0, 0); } annet if (val.equals ("0011")) {image (s0011, 0, 0); } annet if (val.equals ("0100")) {image (s0100, 0, 0); } annet if (val.equals ("0101")) {image (s0101, 0, 0); } annet if (val.equals ("0110")) {image (s0110, 0, 0); } annet if (val.equals ("0111")) {image (s0111, 0, 0); } annet if (val.equals ("1000")) {image (s1000, 0, 0); } annet if (val.equals ("1001")) {image (s1001, 0, 0); } annet if (val.equals ("1010")) {image (s1010, 0, 0); } annet if (val.equals ("1011")) {image (s1011, 0, 0); } annet if (val.equals ("1100")) {image (s1100, 0, 0); } annet if (val.equals ("1101")) {image (s1101, 0, 0); } annet if (val.equals ("1110")) {image (s1110, 0, 0); } annet if (val.equals ("1111")) {image (s1111, 0, 0); } annet {bilde (s0000, 0, 0); }}}
void serialEvent (Serial myPort) // når seriell hendelse skjer, kjører den {val = myPort.readStringUntil ('\ n'); // sørg for at dataene våre ikke er tomme før du fortsetter hvis (val! = null) {// trimmer mellomrom og formaterer tegn (som vognretur) val = trim (val); println (val); }}
Trinn 5: Krets
![Krets Krets](https://i.howwhatproduce.com/images/001/image-191-94-j.webp)
Etter all programmeringen er det på tide å koble alle sensorene med Arduino UNO -kortet.
Sensorene er plassert på 4 seter (som senere vil bli dekket av en klut) og sveiset til kabler som går direkte til hovedkortet til Arduino UNO. Signalet mottatt på kortet sendes til en datamaskin som er koblet til via USB som sender informasjonen til Processing i sanntid, og endrer fargen på setet.
Du kan se et skjema for tilkoblingene.
Trinn 6: Prototypetest
Når koden er lastet opp til arduino -kortet og behandlings- og arduino -programmet er slått på, testes sensorene. På skjermen vil du se endringene i setene på grunn av endring av bilder på displayet som informerer om setene som er okkupert og nei.
Trinn 7: Real Mock-up
![Ekte mock-up Ekte mock-up](https://i.howwhatproduce.com/images/001/image-191-95-j.webp)
![Ekte mock-up Ekte mock-up](https://i.howwhatproduce.com/images/001/image-191-96-j.webp)
![Ekte mock-up Ekte mock-up](https://i.howwhatproduce.com/images/001/image-191-97-j.webp)
![Ekte mock-up Ekte mock-up](https://i.howwhatproduce.com/images/001/image-191-98-j.webp)
Den virkelige applikasjonen ville prøve å installere den på tog og plattformer i FGC -nettverket for å betjene reisende.
Trinn 8: NYT
![NYT! NYT!](https://i.howwhatproduce.com/images/001/image-191-99-j.webp)
![NYT! NYT!](https://i.howwhatproduce.com/images/001/image-191-100-j.webp)
Du har endelig laget et Force Sensor Train (prototype) som lar brukeren på togplattformen vite hvilket sete som er tilgjengelig i sanntid.
VELKOMMEN TIL FREMTIDEN!
Prosjekt laget av Marc Godayol & Federico Domenech
Anbefalt:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
![Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn](https://i.howwhatproduce.com/images/001/image-458-22-j.webp)
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
![Trinn for trinn PC -bygging: 9 trinn Trinn for trinn PC -bygging: 9 trinn](https://i.howwhatproduce.com/images/001/image-52-15-j.webp)
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn
![Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn](https://i.howwhatproduce.com/images/001/image-227-26-j.webp)
Tre høyttalerkretser || Trinn-for-trinn opplæring: Høyttalerkretsen styrker lydsignalene som mottas fra miljøet til MIC og sender den til høyttaleren der forsterket lyd produseres. Her vil jeg vise deg tre forskjellige måter å lage denne høyttalerkretsen på:
Slik laster du fôr til kyr: 9 trinn
![Slik laster du fôr til kyr: 9 trinn Slik laster du fôr til kyr: 9 trinn](https://i.howwhatproduce.com/images/008/image-21524-j.webp)
Slik laster du fôr til kyr: Alt som lever trenger mat for å overleve. I vinter- og vårmånedene er det ikke gress for kyr å beite på. Dette gjør det veldig viktig at kuene blir matet skikkelig slik at de produserer sunne kalver. I de følgende trinnene vil pr
RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn
![RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn](https://i.howwhatproduce.com/images/010/image-28275-j.webp)
RC -sporet robot ved bruk av Arduino - Steg for trinn: Hei folkens, jeg er tilbake med et annet kult Robot -chassis fra BangGood. Håper du har gått gjennom våre tidligere prosjekter - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms og The Badland Braw