2a edizione Valleambrosia Model Show Rozzano 10/11 maggio 2025

Ben arrivato! Fai login o registrati per fruire di tutte le funzionalità del forum e del sito.
Se eri già registrato e non ti ricordi la password usa questo link per recuperare l'accesso.
Sito e forum dedicati al fermodellismo, il nostro hobby viene praticato in molte maniere diverse, tutte ugualmente valide: hai un plastico? oppure sei un collezionista? oppure un semplice appassionato? Non esitare a scrivere nel forum, tutti gli interventi sono benvenuti... Postate foto e video del vostro plastico e chiedete aiuto per ogni problema o curiosità inerente al nostro hobby.
Rinnovo/Iscrizione/Donazioni GAS TT - 2025

Arduino Uno

Tutto ciò che è elettricità applicata al fermodellismo.

Moderatori: MrMassy86, adobel55, lorelay49

Messaggio
Autore
Avatar utente
giuseppe_risso
Socio GAS TT
Messaggi: 7722
Iscritto il: giovedì 27 ottobre 2011, 22:44
Nome: Giuseppe
Regione: Liguria
Città: Chiavari
Stato: Non connesso

Re: Arduino Uno

#51 Messaggio da giuseppe_risso »

:cool: :cool: :cool: :cool: :cool: :cool: :cool: :cool: :cool: :cool: :cool:

[xx(]



Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 5076
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 60
Stato: Non connesso

Re: Arduino Uno

#52 Messaggio da Edgardo_Rosatti »

Abbi pazienza Giuseppe...
ED

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 5076
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 60
Stato: Non connesso

Re: Arduino Uno

#53 Messaggio da Edgardo_Rosatti »

Riprendo i post in quest'aera del forum per parlare di un'applicazione che voglio tentare di realizzare e anche per dare qualche info in più su Processing che ha lasciato un po' di normale perplessità.

L'idea è quella di comandare il traffico ferroviario di una stazione usando il pc eliminando tutti i pulsanti e spie che normalmente andrebbero montati sul banco del capostazione.
Il comando e controllo di scambi, segnali e treni potrebbe essere così gestito semplicemente con un mouse e Arduino in tutta sicurezza.

Per ora sto approntando il programma di un simulatore per iniziare a capire come gestire le varie logiche, ho scelto un tipo di stazione semplice e che consente di avere un discreto numero di possibilità. Cioè una stazione con binario di precedenza promiscuo.

In figura è visibile un primissimo abbozzo di come dovrebbe essere il programma e la stazione:

Simulatore:
Immagine
70,19 KB

I binari della stazione sono in blu dove si vedono anche i sezionamenti dei circuiti di binario.
I segnali sono 6 numerati secondo la logica del pari e dispari.
Infine vi sono degli scudi con all'interno lettere e numeri romani per rappresentare inizio e fine degli itinerari.

Attualmente non sono previsti instradamenti per le manovre coi segnali bassi, ma è mia intenzione inserirli in seguito.

Il motivo per cui ho scelto questa tipologia di stazione è la simmetria del tracciato in verticale e orizzontale che è di facile lettura.

Come dicevo, nel disegno sono presenti degli scudi con lettere e numeri romani in particolari punti del tracciato:
"I" è il primo binario o binario numero 1.
"II" e "III" sono il secondo e terzo binario o binari 2 e 3.
Questi tre binari sono gli stazionamenti per la sosta dei treni.
Poi ci sono gli scudi con lettere: A, B, C, D, E, F; questi scudi sono posti in corrispondenza dei punti di origine dei treni.

Per esempio, un treno che arriva sul primo binario da A, avrà un itinerario A-I (A-primo).
Se lo stesso treno dovrà dare la precedenza, sarà mandato sul secondo binario ed avrà come itinerario A-II (A-secondo).
Per la successiva ripartenza gli itnerari sarano I-B (primo-B) o II-B (secondo-B).
Per i treni che transitano sul terzo binario il concetto non cambia, cambiano solo i numeri e le lettere.
Si nota come i punti di origine non siano solo le lettere, ma anche numeri.

Durante il il funzionamento del programma, i circuiti di binario (blu) cambierebbero di colore in base al loro stato:
- itinerario predisposto, colore bianco;
- treno in transito sul circuito di binario (occupazione), colore rosso.

Questo è quello che più o meno succede nella realtà e una volta appreso il concetto diventa facile gestire la stazione.

Ora il difficile, come mettere in pratica tutto questo?
Naturalmente con Processing e Arduino, non serve altro.
Processing è un software di sviluppo gratuito che consente di programmare il pc ed è disponibile per le piattaforme Windows, Linus e Mac. Esso è stato pensato per realizzare programmi che fanno uso della grafica anche 3D, inoltre è in grado di controllare Arduino e di realizzare applicazioni per Android.

Qui sotto ho inserito un paio di link per il download di Processing e del programma del simulatore ACEI-ACS .
Il programma del simulatore attualmente non è funzionante, ma è utile per vedere come funziona Processing e permette di fare un po' di esperienza su come funziona l'ambiente di sviluppo.

Per installare Processing basta scaricarlo da qui, scompattare il file e copiare la cartella "Processing" in qualsiasi posizione del vostro pc.
http://www.processing.org/download/

Per installare il programma ACEI-ACS scompattare il file seguente in "Documenti"

ACEI_virtuale.zip (37,47 KB)

Qui ci sono due guide in pdf che fanno un po' da manuale per Processing.

m12614.pdf (163,08 KB)

processing2.pdf (1705,98 KB)

Per aprire il programma avviare Processing e selezionare dal menù "File-Sketchbook" ACEI_viruale e premere il tasto "play" in alto a sinistra per eseguirlo; se tutto è andato bene dovrebbe apparire una finestra col sinottico della stazione.

Ciao
ED

Avatar utente
masmoric
Messaggi: 5
Iscritto il: martedì 13 novembre 2012, 19:59
Nome: Massimo
Regione: Umbria
Città: Fossato di vico
Stato: Non connesso

Re: Arduino Uno

#54 Messaggio da masmoric »

Bravo Edgardo, ti sei bloccato oppure e' solo questione di tempo?
questa discussione e' molto interessante ho provato a lanciare il programmino della stazione
ma mi da errore, (al momento per me indecifrabile) a te funziona?
Massimo

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 5076
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 60
Stato: Non connesso

Re: Arduino Uno

#55 Messaggio da Edgardo_Rosatti »

Ciao e grazie Massimo, il progetto è sempre attivo.
Se mi dai qualche informazione in più sui messaggi di errore che ti compaiono al lancio dell'applicazione posso aiutarti.
Ti garantisco che il programma funziona; se non si avvia puoi verificare la presenza di Java necessaria per il funzionamento
dell'applicazione.
Per verificarlo prova questo link:
http://www.java.com
"Io ho Java?" ti aggiorna il pc con l'ultima versione di Java disponibile in automatico.

Dai un occhio anche al link di Processing; http://www.processing.org

Rimango a disposizione per delucidazioni :smile:

Ciao
Edgardo
ED

Avatar utente
Alex Corsico
Messaggi: 175
Iscritto il: lunedì 24 settembre 2012, 14:22
Nome: Alessandro
Regione: Lombardia
Città: Pavia
Stato: Non connesso

Re: Arduino Uno

#56 Messaggio da Alex Corsico »

Ti faccio qualche appunto...... :)

Attualmente gli impiannti non sono numerati con lettere e numeri romani, ma con numeri Arabi (01-02-05-06-03d-04d ecc) i segnali si chiamano con il nome del punto, i cdb sono numerati con le decine a partire dal numero del punto di linea interessato esempio la punto 01 partiranno i cdb 10-11-12-13 ecc sino ad arrivare allo stazionamento sempre in n° romano.

I deviatoi sono numerati con numeri dispari a sx e numeri pari a dx partendo dalla linea verso gli stazionamenti.

Oltre all'occupazione dei CdB hai implementato il controlo dei deviatoi?

Ciao..... se vuoi qualche dritta sul funzionamento degli ACEI sono qui.

Ah dimenticavo il bravo per l'impegno e ai buoni risultati a cui stai arrivando.
Alex Corsico. Ferrovie e Tranvie Locali - Direzione d'Esercizio - PAVIA
--------------------------------
FTL We move your mind

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 5076
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 60
Stato: Non connesso

Re: Arduino Uno

#57 Messaggio da Edgardo_Rosatti »

Grazie per le segnalazioni Alex, premetto che sono macchinista di metropolitana in quel di Milano e che in tutte le linee metropolitane (milanesi) il senso di marcia legale è la destra.
Quindi l'esatto opposto delle ferrovie convenzionali.
Legale ed illegale, pari e dispari; come districarsi in queste definizioni?
Tutto è relativo :smile:

Una cosa sono gli itinerari ed un'altra gli instradamenti; i primi sono percorsi prestabiliti nell'ambito di una stazione o fermata, percorsi da un treno in servizio.
Gli instradamenti sono manovre o movimentazioni di treni in "fuori servizio".

Questa distinzione non è casuale ed è molto importante ai fini della circolazione treni.

L'itinerario di arrivo è compreso tra il segnale di protezione e quello di partenza di una stazione.
L'itinerario di partenza è compreso dalla coda del treno di massima composizione e la piena linea o segnale di partenza.
Infine l'itinerario di transito è la somma dell'itinerario di arrivo e di partenza.
Detto questo, ti garantisco che sui banchi Acei i numeri arabi sono usati solo ed esclusivamente per le manovre,
mentre per gli itinerari si usano lettere e numeri romani racchiusi in scudi.
Nel mio progetto non pretendo che vengano implementate anche le manovre.

Per es. un treno che parte dal primo binario avrà un itinerario tipo IA (primo A);
un treno che parte dal secondo binario avrà un itinerario tipo IIA (secondo A);

Pensiamola come un esperimento ed un banco di prova.

Mi viene un dubbio; non è che si fanno critiche senza aver visto bene come funziona l'app?
Ditemelo se ci sono problemi.
Può darsi che l'app non funzioni bene sul pc, in caso contrario sono disponibile per discuterne e rivedere il tutto

Continuate così che va bene...

Ciao :grin:
ED

Avatar utente
magin81
Socio GAS TT
Messaggi: 304
Iscritto il: lunedì 5 novembre 2012, 23:42
Nome: Davide
Regione: Campania
Città: Cellole
Stato: Non connesso

Re: Arduino Uno

#58 Messaggio da magin81 »

Ciao Edoardo,
anche io e crystal ci siamo accorti di queste potenzialità di arduino. Entrambi abbiamo comprato l'arduino uno che useremo per muovere tutti i servo del plastico. Nel compilatore, ha già le righe di comando per muovere il servo e devi solo cambiare qualche valore, come l'angolo di rotazione del servo.
Crystal13, alias gianfranco, ha già realizzato il movimento per un pl da lui costruito. Tutta la programmazione e realizzazione è sua mentre io mi sono divertito con lo studio cinematica del meccanismo e disegno 3D. Guarda un pò il video


Per il mio plastico prevedo almeno 20 servo e due arduino uno, risparmiando non poco rispetto ai prodotti commerciali appositi per l'azionamento di servo
Ciao
Davide

Avatar utente
gianfranco.p
Messaggi: 733
Iscritto il: lunedì 28 gennaio 2013, 23:13
Nome: Gianfranco
Regione: Lazio
Città: Cassino
Stato: Non connesso

Re: Arduino Uno

#59 Messaggio da gianfranco.p »

Ciao Davide e grazie per avermi citato. Mi sono impegnato molto per questo progetto PL completamente fai da te e sono contento di esserci riuscito. Conduco tutt'ora una battaglia con tutti gli elettronici vecchio stampo (uno su tutti, roy) per dimostrare quanto sia valido questo microcontrollore. Purtroppo spesso mi perdo davanti le loro mostruose conoscenze di elettronica ventennale e non posso confrontarmi appieno.

Conosco il software piu dell'elettronica e per adesso tento di "combattere" con quest'ultima.

Incollo qui quello che scrissi gia da un po di tempo su altri forum...

E' partito tutto come una piccola sfida: riuscire a gestire tutti o quasi gli oggetti che sono sottoplancia ad un plastico con un unico dispositivo elettronico. La motivazione della mia ricerca era dovuta al fatto che ho autocostruito un PL e volevo per esso un movimento quanto più possibile realistico: alzamento e abbassamento della sbarra in 8-9 secondi.

Poichè in commercio non esiste alcun motore in grado di offrire tale prestazione a meno che non sia controllato elettronicamente, la prima risposta è stata quella di collegare un servo motore ad un microcontrollore: il PIC. Tuttavia, l'utilizzo di un PIC richiedeva lo studio di un circuito ad hoc con determinati componenti, la stampa del PCB, la foratura del PCB, la saldatura del componenti...e, sperando che tutto funzioni, poi bisognava programmare il PIC in visual basic, che ormai è un linguaggio morto da anni...oltre al fatto che il PIC necessita di un programmatore apposito. Morale della favola, ho lasciato perdere.

Ho allora analizzato lui: Arduino, che finora ne avevo solo sentito parlare.

Per chi non lo conosce Arduino è un oggetto hardware già realizzato e commercializzato (è open source, open hardware) che è dotato di un microcontrollore abbstanza potente. Si parte da una versione economica (15€) a 14 ingressi/uscite (di cui 7 PWM) ad una versione piu avanzata (39€) a 54 ingressi/uscite (di cui 14 PWM). Questo vuol dire che nel secondo caso si riesce a controllare contemporaneamente fino a 54 dispositivi tra servomotori (per scambi, PL,...), led (semafori, lampioni,...) senza pulsanteria oppure fino a 27 dispositivi considerando un pulsante ciascuno. Ovviamente è possibile fare anche tante altre cose, di cui però non posso parlare perché non ho tanto una visione d'insieme per ciò che riguarda un plastico. L'unica difficoltà è che arduino va programmato (collegandolo con un cavo USB ad un PC) utilizzando il suo IDE (gratuito, essendo open source). Ma va fatto una volta e basta...e in rete ci sono tantissimi esempi per pilotare un servo. Uno su tutti, il blog di Mauro: http://www.mauroalfieri.it/elettronica/ ... servo.html, che mi ha aiutato a capire come programmarlo.

Qui potete vedere un video del mio primo test:


I collegamenti sono banali:
alimentatore da 9V <-> arduino <-> servo motori (alimentati a parte)

Ho fatto fare al servo una rotazione di 90° in 0,9 secondi; ma sono riuscito a fargli fare anche una rotazione di 90° in 9 secondi. Più realistico di così...


Se questi vantaggi non bastano, veniamo a quello lampante: il confronto con il DCC. (Ok, ora picchiatemi pure!!! :lol: :lol: :lol: )
Per gestire in DCC gli oggetti sottoplancia occorrono dei decoder DCC tipo gli switchpilot. Ognuno di questo sapete che gestisce fino a 4 dispositivi contemporaneamente. fatevi un rapido calcolo di quanti decoder occorrono per gestire 27 dispositivi...ne occorrono 7. Ognuno costa almeno 25€ (gli switchpilot costano fino a 35€)...per cui la cifra da spendere va 175€ a 245€... :mrgreen:

Penso che non ci sia altro da aggiungere...per il momento. Attendo vostre considerazioni... 8)
Ciao!
Gianfranco




Schema dell'utilizzo di Arduino con servo motori:
Immagine

questo è il codice da inserire in Arduino (copia e incolla nel suo IDE) per il movimento del singolo servo motore.

Codice: Seleziona tutto

#include 

Servo myservo;
int pos = 0;

void setup()
{
  myservo.attach(9);
}

void loop()
{
  for(pos = 0; pos < 90; pos += 1)
  {
    myservo.write(pos);
    delay(15);
  }
  for(pos = 90; pos>=1; pos-=1)
  {
    myservo.write(pos);
    delay(15);
  }
}
[/b][/i]


ARDUINO FOR PRESIDENT!!!!!
Ciao, Gianfranco

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 5076
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 60
Stato: Non connesso

Re: Arduino Uno

#60 Messaggio da Edgardo_Rosatti »

Ciao Davide e Gianfranco,
il bello di Arduino è che chiunque abbia un minimo di volglia ed intraprendenza può fare un qualcosa per risolvere problemi.
E voi lo avete dimostrato molto bene :grin:

Che si tratti di muovere un servo o di interfacciarsi con altre apperecchiature, con Arduino si può fare, soprattutto grazie
alla forza dell'Open Source e alla facilità relativa nell'uso dell'IDE.

Certo, un minimo di nozioni di programmazione ci vuole, ma non è poi così difficile, basta applicarsi un po' :wink:

Il progetto del passaggio a livello ne è secondo me una prova vera e ne approfitto per farvi i complimenti.
Tramite la libreria "servo" è possibile sfruttare una semplice uscita analogica per comandare un servocomando attraverso semplici comandi di base.

Nelle mie esperienze, ho usato Arduino UNO per gestire l'impianto luci del plastico di Carnate che è stato esposto all'ultimo Hobby Model Expo di Novegro.
In questo progetto, ho usato Arduino come controller per comandare una serie di diodi e striscie a led, quindi solo in modalità OUT.

Devo dire che per i tre giorni dell'expo il circuito ha retto molto bene e ha fatto tutto quello per cui era stato progettato.
Qui tutta la storia del plastico e dell'impianto elettico+luci:
http://www.scalatt.it/plastico%20CARNATE.htm

In questa storia è evidenziato anche l'uso di Processing (il padre dell'IDE di Arduino), che mi ha permesso di operare in tempo reale sugli eventi/luci dell'intero plastico.

Carnate a parte, seguo sempre con interesse questo th su Arduino/Processing.

Il progetto della stazione è sempre attivo; qualsiasi idea in merito è sempre la benvenuta.
E grazie ancora per aver portato il vostro contributo al forum!

Ciao
Edgardo
ED

Avatar utente
MrPatato76
Socio GAS TT
Messaggi: 5738
Iscritto il: lunedì 27 agosto 2012, 11:14
Nome: Roberto
Regione: Lombardia
Città: Nova Milanese
Stato: Non connesso

Re: Arduino Uno

#61 Messaggio da MrPatato76 »

Già vedo Edgardo implementare il comando dei tuoi moduli con Arduio.... :cool: :cool: :cool:

Ciao
Roberto :cool:
Roberto - Socio GasTT - Socio CMP

Avatar utente
Stanislao61
Messaggi: 60
Iscritto il: martedì 27 marzo 2012, 15:16
Nome: Stanislao
Regione: Lazio
Città: Roma
Stato: Non connesso

Re: Arduino Uno

#62 Messaggio da Stanislao61 »

Volevo dare un mio piccolo contributo alla causa di Arduino, e anche per magari far capire anche a cosa possa essere utile.

In altro topic ho detto che mi sono comprato/costruito la stampante 3D, ebbene è gestita da un Arduino (è un Arduino Mega 2560 R3) quindi permette di controllare i motori Step che fanno spostare il piatto di stampa e la testina secondo i tre assi, interpretando il codice di stampa che gli viene passato, inoltre gestisce la temperatura del piatto di stampa, la temperatura e la quantità di materiale che deve fuoriuscire dall'estrusore, e anche altri segnali presenti sulla stampante e il tutto automaticamente.

Diciamo che tutta la logica di controllo della stampante è gestita da un Arduino tramite un programma.

Può fare proprio tante cose.
Ultimamente ho comprato un Arduino UNO, e mi sto attrezzando per poter fare la logica di controllo di un PL automatico, e poi stampare i pezzi del PL con la stampante 3D.

Appena tutto sarà pronto magari farò un bel tutorial d come farsi un PL con stampa 3D e Arduino.


Saluti
Stanislao

Avatar utente
gianfranco.p
Messaggi: 733
Iscritto il: lunedì 28 gennaio 2013, 23:13
Nome: Gianfranco
Regione: Lazio
Città: Cassino
Stato: Non connesso

Re: Arduino Uno

#63 Messaggio da gianfranco.p »

interessante...in che materiale sarà, e soprattutto, dove gli metterai il meccanismo di motorizzazione?
Ciao, Gianfranco

Avatar utente
gianfranco.p
Messaggi: 733
Iscritto il: lunedì 28 gennaio 2013, 23:13
Nome: Gianfranco
Regione: Lazio
Città: Cassino
Stato: Non connesso

Re: Arduino Uno

#64 Messaggio da gianfranco.p »

bene bene...anche qualcuno dagli States inizia ad aprire gli occhi....

e se lo fanno loro....

(occhio in basso a sinistra sulla copertina)

Immagine
Ciao, Gianfranco

Avatar utente
sma835_47
Messaggi: 682
Iscritto il: lunedì 27 agosto 2012, 0:25
Nome: Saverio
Regione: Lombardia
Città: Pavia
Stato: Non connesso

Re: Arduino Uno

#65 Messaggio da sma835_47 »

Ho appena ricevuto Arduino 1 e vorrei cominciare a metterci le mani sopra appena possibile. Progetto iniziale: il controllo degli scambi della stazione di Pavia in fase di costruzione. Detti scambi (oltra 45 di cui molti sccambi inglesi dobbi) sono gestiti con il sistema ad itinerari per un totale di oltre 60 itinerari diversi. La consolle, che deve essere ancora realizzata, è prevista con commutatori rotativi e pulsanti, ma mi piacerebbe sostituire il sistema con un Arduino (non so se con Arduino 1 sarà possibile in funzione del numero limitato di output) e tastierina.
Ciao
Saverio
Saverio - C.M.P. Club Modellismo Pavese

Avatar utente
gianfranco.p
Messaggi: 733
Iscritto il: lunedì 28 gennaio 2013, 23:13
Nome: Gianfranco
Regione: Lazio
Città: Cassino
Stato: Non connesso

Re: Arduino Uno

#66 Messaggio da gianfranco.p »

Ciao Saverio, se mi dici il numero di scambi che vuoi pilotare ti aiuto io.

Hai gia scritto lo sketch per pilotare gli scambi?

Gianfranco
Ciao, Gianfranco

Avatar utente
sma835_47
Messaggi: 682
Iscritto il: lunedì 27 agosto 2012, 0:25
Nome: Saverio
Regione: Lombardia
Città: Pavia
Stato: Non connesso

Re: Arduino Uno

#67 Messaggio da sma835_47 »

XGianfranco
Ti ringrazio dell'aiuto offerto. La situazione è la seguente. Attualmente tutti i motori (Tortoise) degli scambi sono pilotati da circuiti elettronici (in pratica flip flop realizzati con dei 556) gli ingressi dei quali sono pilotati da una matrice di diodi in modo da formare gli itinerari voluti. Quindi con un solo comando (verso massa) piloto già tutti gli scambi per formare uno degli itinerari prescelti. Logicamente essendo una sessantina gli itinerari possibili dovrei avere una sessantina di pulsanti per il comando. In realtà pensavo di utilizzare una serie di commutatori rotativi per una quarantina di itinerati (sono quelli che servono per eseguire delle manovre in stazione) e una ventina di pulsanti (più immediati) per gli itinerari di ingresso ed uscita dalla stazione. Sistema sicuro, semplice e non molto complicato. Avendo conosciuto Arduino vorrei come prima applicazione (a mio avviso semplice dal punto di vista programma) inserire una tastiera mediante la quale formare il numero dell'itinerario prescento e dare il comando di formazione dello stesso. Sono conscio che non è una grande applicazione, ma l'avrei scelta solo per far pratica con Arduino (ho esperienza di programmazione in Fortran e Assembler risalente a quando i programmi dei calcolatori dovevano essere scritti dagli utenti). Il vero target finale, se questa prima fase riesce, sarebbe di inserire anche i dati della rivelazione dell'occupazione delle varie tratte ed i controlli dei segnali, per realizzare un programma che controlli la logica di sicurezza del movimento dei convogli.

Quindi in questa prima fase il programma dovrebbe semplicemente accettare i segnali da una tastiera numerica (numeri da 1 a 60 per identificare l'itinerario), al comento di "esegui" dare il comando al relativo itinerario. Logicamente essendo le uscite di Arduino 1 solamente 14 (se ricordo bene), dovrò demultiplexare il segnale per indirizzarlo all'itinirario prescelto.

Successivamente, modificherei il modo di dare il comando d'ingresso: non più il numero dell'itinerario, ma due numeri, il primo per identificare da quale binario inizia il movimento ed il secondo dove il convoglio deve andare. Questo sistema sicuramente è molto più semplice da usare per non doversi ricordare i numeri identificativi di una sessantina di itinerari.

Ciao e grazie
Saverio
Saverio - C.M.P. Club Modellismo Pavese

Avatar utente
gianfranco.p
Messaggi: 733
Iscritto il: lunedì 28 gennaio 2013, 23:13
Nome: Gianfranco
Regione: Lazio
Città: Cassino
Stato: Non connesso

Re: Arduino Uno

#68 Messaggio da gianfranco.p »

Per capire come funziona Arduino, la prima cosa che ti consiglierei è di partire dalla cosa piu semplice, perche capita e fatta funzionare quella, ti puoi divertire come ti pare con il tastierino.

Dunque, fossi in te partirei col far muovere un servo tramite due pulsanti. I collegamenti li ho postati sopra, ma da come parli, forse gia sai come fare.

Lo sketch che ho caricato è il seguente:

Codice: Seleziona tutto

#include <Servo.h>

#define servoPin 5
#define swClose  2
#define swOpen   3

#define posMin 0
#define posMax 20

boolean statoPL=false;
int currentGrad=posMax;

Servo myservo;

void setup()
{
  pinMode( swClose,INPUT );
  pinMode( swOpen,INPUT );
  
  myservo.attach(servoPin);
  myservo.write(currentGrad);
}

void loop()
{
  if ( digitalRead(swClose) == HIGH ) { statoPL = true;  }
  if ( digitalRead(swOpen) == HIGH )  { statoPL = false; }

  if ( statoPL == true && currentGrad > posMin) {
     while (currentGrad > posMin) {
        currentGrad--;
        myservo.write(currentGrad);
        delay(200);
     }
  }

  if ( statoPL == false  && currentGrad < posMax) {
     while (currentGrad < posMax) {
        currentGrad++;
        myservo.write(currentGrad);
        delay(200);
     }
} 
}
ci capisci? se no, lo analizziamo....

sostanzialmente dici al servo di quanti gradi si deve muovere (define posMax) e in quanto tempo (delay) semplicemente variando rispettivamente i valori 20 e 200.

ps. ti confermo i 14 pin di I/O di Arduino. Anche io ho preso una UNO per gli esperimenti, in previsione di prendere poi una MEGA (56 pin di I/O). Tutto dipende da quanti dispositivi vuoi gestire, e come.

coraggio :geek:
Ciao, Gianfranco

Avatar utente
sma835_47
Messaggi: 682
Iscritto il: lunedì 27 agosto 2012, 0:25
Nome: Saverio
Regione: Lombardia
Città: Pavia
Stato: Non connesso

Re: Arduino Uno

#69 Messaggio da sma835_47 »

Grazie Gianfranco.
Oggi e domani sono impegnato e quindi non potrò fare nulla; ne riparliamo la settimana prossima.
Ciao
Saverio
Saverio - C.M.P. Club Modellismo Pavese

Avatar utente
Digtrain
Messaggi: 1621
Iscritto il: giovedì 20 dicembre 2012, 23:47
Nome: Walter
Regione: Lombardia
Città: Casarile
Stato: Non connesso

Re: Arduino Uno

#70 Messaggio da Digtrain »

Ciao Saverio, :wink:
se oltre al tastierino ti serve anche il display guarda quì:
http://www.ebay.it/itm/Arduino-IIC-I2C- ... 2c5f0941eb

Ciao Walter :geek:
Walter - Club Modellismo Pavese - Steamtown National Historic Site - Het Spoorwegmuseum Utrech - Loxx Berlino - "Il mio fisico è stato scolpito e modellato nelle migliori trattorie della Lomellina"

Avatar utente
marioscd
Messaggi: 4514
Iscritto il: lunedì 23 luglio 2012, 12:56
Nome: Mario
Regione: Lombardia
Città: Valera Fratta
Stato: Non connesso

Re: Arduino Uno

#71 Messaggio da marioscd »

Arduino ha cominciato ad interessare parecchio anche me... peccato che mi servirebbe un'altra vita per avere tempo di dedicarmi a tutto! Comunque non demordo... prima o poi ci metto le mani anche io.
Credo di essere anche io un "elettronico vecchio stampo" come ci ha definiti Gianfranco... in effetti la mia elettronica è ancora quella dei C-MOS e delle logiche sequenziali e combinatorie, degli operazionali, dei 555, dei transistor open collector... Però mi rendo conto che oggi grazie alle PIC ed agli oggetti complessi come Arduino si possono realizzare cose molto più complesse e sofisticate con meno hardware e quindi più economiche. Credo, però, che esista una linea di demarcazione tra ciò che conviene essere realizzato "alla vecchia maniera" rispetto a ciò che conviene essere elaborato con questi mezzi hardware/firmware. Se devo far lampeggiare due LED o se devo mettere qualche sicurezza a flip/flop io preferisco ancora il caro vecchio 555 o le porte logiche... Ma se si tratta di applicazioni più complesse allora i vantaggi di questi sistemi sono innegabili!

ciao
Mario Scuderi - C.M.P. Club Modellismo Pavese ...ciò che è piccolo a volte diventa grande...

Avatar utente
sma835_47
Messaggi: 682
Iscritto il: lunedì 27 agosto 2012, 0:25
Nome: Saverio
Regione: Lombardia
Città: Pavia
Stato: Non connesso

Re: Arduino Uno

#72 Messaggio da sma835_47 »

Per l'amico Walter: non mettiamo troppa carne al fuoco che si brucia e poi fa male alla pancia!!
Per l'amico Mario: il tempo è sempre tiranno ma bisogna per forza tirarlo fuori!! sono d'accordo con te che per cose semplici basta uno o due integrati, ma quando l'affare s'ingrossa allora occorre andare su altre soluzioni.
Ciao
Saverio
Saverio - C.M.P. Club Modellismo Pavese

Avatar utente
Alex Corsico
Messaggi: 175
Iscritto il: lunedì 24 settembre 2012, 14:22
Nome: Alessandro
Regione: Lombardia
Città: Pavia
Stato: Non connesso

Re: Arduino Uno

#73 Messaggio da Alex Corsico »

Edgardo_Rosatti ha scritto:

Grazie per le segnalazioni Alex, premetto che sono macchinista di metropolitana in quel di Milano e che in tutte le linee metropolitane (milanesi) il senso di marcia legale è la destra.
Quindi l'esatto opposto delle ferrovie convenzionali.
Legale ed illegale, pari e dispari; come districarsi in queste definizioni?
Tutto è relativo :smile:


Azz questa me l'ero persa..... :)

Che combinazione ho lavorato in Metropolitane 13 anni poi sono passato a miglior vita.... in che linea lavori?
Io ho collaborato alla realizzazione della linea 3 (tutta) Famagosta, Abbiategrasso, Dep Famagosta, alla ristrutturazione della linea MM1 ecc...

ciao
Alex Corsico. Ferrovie e Tranvie Locali - Direzione d'Esercizio - PAVIA
--------------------------------
FTL We move your mind

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 5076
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 60
Stato: Non connesso

Re: Arduino Uno

#74 Messaggio da Edgardo_Rosatti »

Alex Corsico ha scritto:
Edgardo_Rosatti ha scritto:

Grazie per le segnalazioni Alex, premetto che sono macchinista di metropolitana in quel di Milano e che in tutte le linee metropolitane (milanesi) il senso di marcia legale è la destra.
Quindi l'esatto opposto delle ferrovie convenzionali.
Legale ed illegale, pari e dispari; come districarsi in queste definizioni?
Tutto è relativo :smile:


Azz questa me l'ero persa..... :)

Che combinazione ho lavorato in Metropolitane 13 anni poi sono passato a miglior vita.... in che linea lavori?
Io ho collaborato alla realizzazione della linea 3 (tutta) Famagosta, Abbiategrasso, Dep Famagosta, alla ristrutturazione della linea MM1 ecc...

ciao


Ciao Alex, io lavoro sulla linea 1, "la rossa" che come immagino saprai, dopo la ristrutturazione ora è completamente automatica e utilizza il sistema ATC di Alstom. La linea 3, "la gialla" usa un sistema simile progettato da Siemens e la nuovissima linea 5 "la lilla" usa un sistema di Alstom ancora più avanzato di ATC senza macchinista.
Gli unici veri macchinisti si possono trovare sulla linea 2, "la verde", in quanto conducono i treni ancora in modo manuale...
Fatta eccezzione per la linea 5 che è una metropolitana di tipo leggero, fortunatamente per me, sulla linea 1 e sulla 3 c'è ancora bisogno di un macchinista in cabina di guida che preme un pulsante, in quanto è una metropolitana di tipo pesante e per legge deve essere presenziata.

Tornado in topic, devo dire che anche se nella realtà la tecnologia tende a sostituire un po' le figure professionali con "archibugi" sempre più sofisticati, nel fermodellismo sto vedendo con piacere che è di stimolo per trovare delle soluzioni ai problemi più disparati.
Quando 18 mesi fa ho aperto questa discussione su Arduino non avrei mai immaginato che potesse destare un certo interesse. Tuttavia, ho notato con molto piacere e di persona, che anche chi non conosce l'elettronica ne ha sfruttato la tecnologia con ottimi successi. E ora siete/siamo qui a fare progetti o almeno ci si prova :grin:

Ho divagato un po'[:I]
Magari in occasione del prossimo Expo di Novegro a Settembre possiamo portare delle breadboard e chiavette USB allo stand del GASTT per condividere i progetti tempo permettendo; il pc lo porto io con un Arduino Mega :wink:

Ciao neh!
ED

Avatar utente
Digtrain
Messaggi: 1621
Iscritto il: giovedì 20 dicembre 2012, 23:47
Nome: Walter
Regione: Lombardia
Città: Casarile
Stato: Non connesso

Re: Arduino Uno

#75 Messaggio da Digtrain »

Ciao a tutti, :grin:
riporto questo post in evidenza perchè ho visto che da un po' di tempo non viene più scritto nulla in merito.
Come sapete io e mio figlio siamo più orientati verso i PIC, però la mia curiosità mi porta ad interessarmi anche di altri prodotti per l'automazione.
Ho potuto osservare che tramite Arduino potete, tramite pulsanti, muovere scambi, servocomandi ed altro.
E se io volessi azionare un servocomando non solo dai pulsanti del pannello di controllo del plastico, ma anche tramite Multimaus?
Servirebbe quindi un collegamento con la rete xpressnet, eccolo qua:
http://ilplasticomodulare.blogspot.it/2 ... ssnet.html.


@ Edgardo se vuoi implementarlo il circuito integrato MAX485 te lo do io.

E il collegamento con loconet, pronto:
http://spcoast.com/wiki/index.php/Ardui ... t_Example1.

Le ricerche sono state effettuate con Google:
1) arduino e xpressnet
2) arduino e loconet
C'è molta documentazione in rete.

Cosa ne pensate?


Ciao Walter :geek:
Walter - Club Modellismo Pavese - Steamtown National Historic Site - Het Spoorwegmuseum Utrech - Loxx Berlino - "Il mio fisico è stato scolpito e modellato nelle migliori trattorie della Lomellina"

Torna a “COLLEGAMENTI ELETTRICI”