Obsah:
- Krok 1: Navrhnite 3D model
- Krok 2: Tlač 3D modelu a povrchových úprav
- Krok 3: Komponenty
- Krok 4: Kódovanie (Arduino a spracovanie)
- Krok 5: Okruh
- Krok 6: Prototypový test
- Krok 7: Skutočná maketa
- Krok 8: UŽÍVAJTE SI
Video: Informačný systém dostupnosti vlaku - FGC: 8 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:01
Tento projekt je založený na implementácii vlaku, ktorý umožňuje ľuďom na stanici vedieť, ktoré miesta sú voľné. Na vykonanie prototypu sa používa softvér Arduino UNO spolu so spracovaním grafickej časti.
Tento koncept by umožnil revolúciu vo svete verejnej dopravy, pretože by maximálne optimalizoval všetky miesta vo vlaku, zaistil používanie všetkých vozňov spolu s možnosťou zberu údajov a vykonania štúdií, ktoré sú presné, neskôr na.
Krok 1: Navrhnite 3D model
Najprv sme urobili komplexný výskum modelov vlakov. Na základe všetkých zhromaždených informácií bol vybraný vlak GTW (vyrobený spoločnosťou Stadler Rail) používaný na FGC (Ferrocarrils de la Generalitat de Catalunya).
Neskôr bol navrhnutý s 3D softvérom PTC Creo ako model pre následnú 3D tlač.
Krok 2: Tlač 3D modelu a povrchových úprav
Akonáhle je vlak navrhnutý, prejde na 3D tlač. Akonáhle je kus vytlačený, musí byť leštený, aby sa dosiahol hladký povrch.
Tento projekt je možné vykonať aj s existujúcimi modelmi vlakov.
Po vytlačení sú uvedené konečné úpravy.
Krok 3: Komponenty
Na vývoj tohto projektu sú potrebné tieto komponenty:
- FSR 0,04-4,5LBS (snímač tlaku).
- 1,1K ohmové odpory
Krok 4: Kódovanie (Arduino a spracovanie)
Teraz je načase napísať kód Arduino, ktorý umožní senzorom odoslať znak do spracovateľského softvéru, ktorý bude informácie prenášať graficky.
Ako senzory máme 4 snímače tlaku pre arduino, ktoré menia svoj odpor podľa sily, ktorá na ne pôsobí. Cieľom je teda využiť signál odoslaný senzormi (keď si cestujúci sadnú) na zmenu grafických obrazoviek v programe Processing.
Potom vytvoríme grafickú časť, v ktorej sme vzali do úvahy grafický návrh Ferrocarrils de la Generalitat de Catalunya, aby sme čo najlepšie napodobnili realitu.
Pri spracovaní bol napísaný kód, ktorý je priamo prepojený so softvérom arduino. Týmto spôsobom, zakaždým, keď sa niekto posadí na miesto, zmení farbu, čo používateľovi na nástupišti umožní v reálnom čase poznať dostupnosť miest na sedenie vlaku.
Tu vidíte kódovanie
ARDUINO:
int pot = A0; // Pripojte stredný pin hrnca k tomuto pinint pot2 = A1; int pot3 = A2; int pot4 = A3; int lectura1; // premenná na ukladanie hodnôt potu;
int lectura2; int lectura3; int lectura4;
void setup () {// inicializácia sériovej komunikácie pri prenosovej rýchlosti 9600 Serial.begin (9600); }
void loop () {String s = ""; // // Llegir senzor1 lectura1 = analogRead (pot); // lectura analógová hodnota if (lectura1> 10) {s = "1"; oneskorenie (100); } else {s = "0"; oneskorenie (100); } Serial.println (s);
}
SPRACOVANIE:
spracovanie importu.sériové.*; // táto knižnica zvláda sériové hovory String val = ""; PImage s0000, s0001, s0010, s0011, s0100, s0101, s0110, s0111, s1000, s1001, s1010, s1011, s1100, s1101, s1110, s1111; Sériový myPort; // Vytvorenie objektu zo sériovej triedy
void setup () // toto sa spustí iba raz {fullScreen (); pozadie (0); // nastavenie farby pozadia na čierny myPort = nový sériový (tento, "COM5", 9600); // poskytnutie parametrov objektu sériovej triedy, zadajte kód, ku ktorému je pripojené vaše arduino, a prenosovú rýchlosť
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 (šírka displeja, výška displeja); s0001.resize (šírka displeja, výška displeja); s0010.resize (šírka displeja, výška displeja); s0011.resize (šírka displeja, výška displeja); s0100.resize (šírka displeja, výška displeja); s0101.resize (šírka displeja, výška displeja); s0110.resize (šírka displeja, výška displeja); s0111.resize (displayWidth, displayHeight); s1000.resize (šírka displeja, výška displeja); s1001.resize (šírka displeja, výška displeja); s1010.resize (šírka displeja, výška displeja); s1011.resize (šírka displeja, výška displeja); s1100.resize (šírka displeja, výška displeja); s1101.resize (šírka displeja, výška displeja); s1110.resize (šírka displeja, výška displeja); s1111.resize (displayWidth, displayHeight);
val = trim (val);} neplatné kreslenie () {if (val! = null) {
if (val.equals ("0001")) {image (s0001, 0, 0); } else if (val.equals ("0010")) {image (s0010, 0, 0); } else if (val.equals ("0011")) {image (s0011, 0, 0); } else if (val.equals ("0100")) {image (s0100, 0, 0); } else if (val.equals ("0101")) {image (s0101, 0, 0); } else if (val.equals ("0110")) {image (s0110, 0, 0); } else if (val.equals ("0111")) {image (s0111, 0, 0); } else if (val.equals ("1000")) {image (s1000, 0, 0); } else if (val.equals ("1001")) {image (s1001, 0, 0); } else if (val.equals ("1010")) {image (s1010, 0, 0); } else if (val.equals ("1011")) {image (s1011, 0, 0); } else if (val.equals ("1100")) {image (s1100, 0, 0); } else if (val.equals ("1101")) {image (s1101, 0, 0); } else if (val.equals ("1110")) {image (s1110, 0, 0); } else if (val.equals ("1111")) {image (s1111, 0, 0); } else {obrázok (s0000, 0, 0); }}}
void serialEvent (Serial myPort) // kedykoľvek sa stane sériová udalosť, spustí sa {val = myPort.readStringUntil ('\ n'); // pred pokračovaním if (val! = null) {// uistite sa, že naše údaje nie sú prázdne {// orezanie medzier a formátovanie znakov (ako návrat vozíka) val = trim (val); println (val); }}
Krok 5: Okruh
Po všetkom programovaní je čas prepojiť všetky senzory s doskou Arduino UNO.
Senzory sú umiestnené na 4 sedadlách (ktoré budú neskôr zakryté látkou) a privarené ku káblom, ktoré smerujú priamo k základnej doske Arduino UNO. Signál prijatý na doske je odoslaný do počítača pripojeného cez USB, ktorý v reálnom čase odosiela informácie do Processing, pričom mení farbu sedadla.
Môžete vidieť schému prepojení.
Krok 6: Prototypový test
Po nahraní kódu na dosku arduino a zapnutí programu na spracovanie a arduino sa senzory testujú. Na obrazovke uvidíte zmeny na sedadlách v dôsledku zmeny obrázkov na displeji informujúcich o obsadených sedadlách a č.
Krok 7: Skutočná maketa
Skutočná aplikácia by sa ho pokúsila nainštalovať do vlakov a nástupíšť siete FGC, aby slúžila cestujúcim.
Krok 8: UŽÍVAJTE SI
Nakoniec ste vyrobili vlak snímača sily (prototyp), ktorý umožňuje používateľovi na nástupišti vedieť, ktoré sedadlo je k dispozícii v reálnom čase.
VITAJTE V BUDÚCNOSTI!
Projekt vytvorili Marc Godayol a Federico Domenech
Odporúča:
Tasmota Admin - Informačný panel IIoT: 6 krokov
Tasmota Admin - Informačný panel IIoT: TasmoAdmin je administratívna webová stránka pre zariadenia, ktorá bola nainštalovaná spoločne s Tasmotou. Nájdete ho tu: TasmoAdmin GitHub. Podporuje spustenie v kontajneroch Windows, Linux a Docker. Funkcie chránené prihlásením viacnásobný aktualizačný proces Vyberte zariadenia na aktualizáciu automatických
Streamovanie údajov z Tabuliek Google na informačný panel: 6 krokov
Streamovanie údajov z Tabuliek Google na informačný panel: Tabuľky vynikajú pri manipulácii s údajmi, ale pri ich nezobrazovaní. Práve preto sa začalo objavovať toľko špecializovaných spoločností na vizualizáciu dát a BI dashboard. Problém väčšiny týchto produktov je v tom, že sú zvyčajne drahé a
Vytvorte informačný panel o počasí pomocou rozhrania Dark Sky API: 5 krokov (s obrázkami)
Vytvorte informačný panel o počasí pomocou rozhrania Dark Sky API: Dark Sky sa špecializuje na predpovedanie počasia a vizualizáciu. Najlepším aspektom Dark Sky je ich API pre počasie, ktoré môžeme použiť na získanie údajov o počasí takmer z akéhokoľvek miesta na svete. Nie je to len daždivé alebo slnečné počasie, ale aj teplota
LTE Arduino GPS Tracker + informačný panel IoT (časť 1): 6 krokov (s obrázkami)
LTE Arduino GPS Tracker + Dashboard IoT (časť 1): Úvod Čo sa deje, chlapci! Tento návod nadväzuje na môj prvý návod na používanie štítu Botletics LTE/NB-IoT pre Arduino, takže ak ste to ešte neurobili, prečítajte si ho a získajte dobrý prehľad o tom, ako štít používať a čo to všetko je
LTE Arduino GPS Tracker + informačný panel IoT (časť 2): 6 krokov (s obrázkami)
LTE Arduino GPS Tracker + informačný panel IoT (časť 2): Úvod & Časť 1 Rekapitulácia, je čas na ďalší pokyn na sledovači GPS SIM7000 s Arduino a LTE! Ak ste to ešte neurobili, prečítajte si úvodný návod k štítu Botletics SIM7000 CAT-M/NB-IoT a prečítajte si to na Pa