domenica 2 febbraio 2014

Sella di lancio parte 2



Misura la velocità del vagone ed aziona i frenatoi.
La velocità ottimale del vagone deve essere di 8 km/h se superiore vengono azionati dei frentaoi, ciascuno capace di ridurre la velocità del 2%.





/* Legge gli impulsi di un oscillatore
esterno qualunque sia la durata dell'onda quadra.
File
 - Esempi
  -Digital
   -StateChangeDetection

L'oscillatore deve avere una f=1Hz ma per una
prova va bene un diodo led lampeggiante.

Le istruzioni antirimbalzo di START sono state sostituite 
dalla funzione incrementa e dalla successiva istruzione
if START maggiore o uguale a di 1*/

   
    # define START  2
    # define STOP   3
    # define AZZERA 4   
    # define OSCEXT 5 
    
   int ValueStart1  = 0;
   int ValueStart1a = 0;
   
   int ValueStop    = 0;
   int ValueAzzera  =0;
   int Spazio       = 20;
   float Velocita   = 0;
   int ValueOSC1    = 0;  
   int ValueOSC1a   = 0;  
   int ValueOSC1b   = 0;     


   void setup() 
              { pinMode(OSCEXT, INPUT);
                pinMode(START, INPUT);
                pinMode(STOP, INPUT);
                pinMode(AZZERA, INPUT);
                Serial.begin(9600);   }

   void loop() {
  //---------- Lettura AZZERA --------      
      int ValueAzzera= digitalRead(AZZERA);

         if (ValueAzzera== HIGH) 
            {(ValueOSC1 = 0);}
     
/*--Lettura di START con incrementa */ 

     ValueStart1a= digitalRead(START);

            if (ValueStart1a == HIGH )
              { ValueStart1++;  }
     
//------------- Lettura impulsi oscillatore-------        
     ValueOSC1a= digitalRead(OSCEXT);

         if (ValueOSC1a!= ValueOSC1b) 
            { if (ValueOSC1a == HIGH && ValueStart1 >=1 && ValueStop==LOW )
              { ValueOSC1++;
               Serial.println(ValueOSC1);  }}
        ValueOSC1b = ValueOSC1a;

//--------- Fine lettura impulsi esterni-----       
 
//---------- Lettura STOP --------      
      int ValueSTOP= digitalRead(STOP);

         if ( ValueSTOP== HIGH ) 
            { ValueStart1 = 0;
              Velocita = ((Spazio / ValueOSC1) *3.6);  
              Serial.print("Velocita km/h : ");
              Serial.println(Velocita); 
              ValueOSC1 = ValueOSC1 ;
              if (ValueOSC1 == 3)
                 {Serial.println("6 Frenatoi in azione");}
              if (ValueOSC1 == 4)
                 {Serial.println("5 Frenatoi in azione");}
              if (ValueOSC1 == 5)
                 {Serial.println("4 Frenatoi in azione");}
              if (ValueOSC1 == 6)
                 {Serial.println("3 Frenatoi in azione");}
              if (ValueOSC1 == 7)
                 {Serial.println("2 Frenatoi in azione");}
              if (ValueOSC1 == 8)
                 {Serial.println("1 Frenatoi in azione");}
               delay (500);}
           
        
        
}









sabato 1 febbraio 2014

Sella di lancio parte 1

Smistamento automatico di un convoglio ferroviario merci.
Si propone qui un economico lavoro scolastico di automazione e programmazione.

1 .Convoglio merci.
I convogli si formano agganciando vagoni lungo la tratta ferroviaria, la sua destinazione è uno scalo merci dove i vagoni verranno smistati a seconda della destinazione.

2 .Smistamento.
I vagoni sono stati smistati su tronchi di binari a seconda la destinazione qui indicata con dei colori

3. Procedura di smistamento.
All’arrivo allo scalo il locomotore 2 si stacca dal convoglio. Il locomotore1, prima posto in A, si posiziona in coda e spinge i vagoni all’interno dello scalo con numerose manovre di entra ed esci in ciascun tronco.

4 .Procedura di smistamento con “Sella di lancio” http://it.wikipedia.org/wiki/Sella_di_lancio
Un locomotore di manovra si posiziona dietro il carro, ma non viene agganciato, questi si mette in marcia fino a raggiungere una velocità di 8 km/h e subito dopo rallenta. Il vagone per la legge di conservazione del moto raggiungerà il tronco di binario di destinazione con velocità di 8 km/h in decremento.
La velocità di 8 km/h (o altra) è ritenuta valida come velocità d’urto contro un altro vagone fermo lungo la linea.

Se la velocità del vagone in arrivo è adeguata, i respingenti del carro, fermo e non frenato, sul binario sopporta senza danno l’impatto

4. Procedura in automatico.

Si tratta di accelerare e quindi di rendere economico la scomposizione e ricomposizione del convoglio.
La soluzione che si adotterà e del tutto simile allo scalo ferroviario della Amtrack di Boston (USA), presentato su SKY, sezione documentari, rubrica How it’s made.

Consiste nello spingere il convoglio su una collina artificiale, sganciare il primo vagone o i primi vagoni se hanno la stessa destinazione, spingerli lungo la discesa della collina indirizzandoli nel tronco binari corrispondenti. La velocità massima del vagone all’ingresso del tronco binario non può essere superiore ad 8 km/h, velocità massima d’impatto, ridotta dai respingenti dei vagoni senza che essi abbiano a subirne danno.
Se la velocità è superiore entrano in funzioni dei frenatoi ad aria compressa posti lungo il binario
T1 – Tratto di binario in cui si effettua la misura della velocità.
T2 – Tratto di binario cui sono posti i 10 frenatori.

L’altezza della collina, la pendenza, la lunghezzza dei tronchi e la velocità ottimale di scontro fra un vagone fermo (non frenato) ed il vagone in arrivo è una questione che riguarda l’ingegneria ferroviaria.
Nel documentario veniva citata una velocità di 8 km/h
Un adetto ha appena sganciato il vagone e comunicato in sala controllo la destinazione riportata sul fianco del carro

Il penultimo vagone è stato sganciato, i deviatoi sono stati azionati dalla sala controllo e sono nella giusta posizione, il vagone può avanzare per mettere in posizione l’ultimo vagone. Il locomotore, considerato le condizioni in cui lavora, è nella realtà telecomandato dalla sala controllo.

6 . Misura della velocità.
Essendo la distanza fra START e STOP nota e di valore fisso basta misurare e lavorare con la misura del
tempo. La barriera può essere costruita con un fotodiodo ad infrarosso recuperabile in vecchi
telecomandi ed un led ricevente recuperabile su vecchi chassis di televisori.

7. Frenatoi.

Una soluzione economica è quella della simulazione con diodi led, l’accensione di un led indica l’azione
di un dispositivo capace di ridurre la velocità del 10%...o una forza frenante pari a -2Km/h

8. Rilevatore di distanza
.
Segnale alla sala controllo il tronco di binario pieno ed impedisce il posizionamento del relativo deviatoio.
Usando ARDUINO UNO o equivalenti si può osare il misuratore di distanze ad ultrasuoni SRF05 con un
range da 3 cm a 4 metri
.

9. Deviatoi.

Per i deviatoi si vedano i siti di ferromodellismo.
Come dispositvi di sicurezza si prevedano blocchi per evitare deviazioni con vagone in movimento.

10. Sala controllo.

Il lavoro consiste nel ricevere la comunicazione della destinazione del carro, stabilire su quale tronco
Direzionarlo e premere un solo pulsante per azionare tutti i deviatoi interessati