Interfaccia
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Master Card
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
SIOC

L'interfaccia è lo strumento che permette di pilotare esternamente FS200x dando la possibilità di collegare interruttori, pulsanti, rotativi e molti altri componenti.

Ci sono diverse interfacce allo scopo ma le più popolari sono la EPIC, IOCards ( http://www.opencockpits.com ) e  FSBUS ( http://www.fsbus.de ).

Personalmente ho scelto l'interfaccia IOCards di Opencockpits dato che più si avvicina al tipo di interfaccia che stavo cercando:

                           

            - supporto USB

            - possibilità di acquistare le schede

            - supporto alle reti

            - vari strumenti per implementare la logica di                        funzionamento dei sistemi di bordo

            - un linguaggio di programmazione per una                            modellazione dei sistemi di bordo avanzata

 

 

 

La Master Card è il cuore del sistema.

E' connessa alla porta parallela del computer (in opzione si possono collegare fino a 4 Master Cards alla scheda di espansione USB) e offre 72 ingressi digitali, 64 uscite digitali, un bus di collegamento per la connessione di schede servo, stepper, display ecc.

Ad un ingresso posso collegare un interruttore per comandare, per esempio, le luci di rullaggio oppure ad un'uscita posso collegare un LED per segnalare la posizione dei carrelli.

Ogni ingresso/uscita lavora in logica TTL, quindi un "1" logico è rappresentato da una tensione di 5 V e 0 V rappresenta uno "0" logico.

La Master Card è gestita da 3 programmi:

 

  - controlador.exe : programma diagnostico per verificare                                la comunicazione con il pc e testare                                  gli ingressi/uscite;

  - configiocard.exe: programma per l'implementazione                                      della logica del cockpit assegnando                                  le varie funzioni agli interruttori, tasti                                ecc.;

  - iocard.exe          : esegue il programma creato con                                      configiocard.exe interagendo con                                      FS200x.

 

Un potente e flessibile strumento per la programmazione della logica di bordo è il linguaggio SIOC.

SIOC è un linguaggio event-oriented (basato su eventi) specificamente scritto per dare la possibilità ai costruttori di un'avanzata modellazione dei vari sistemi di bordo del cockpit.

E' abbastanza semplice da imparare ma prima bisogna avere chiaro come funziona.

Poco sopra ho scritto che è un linguaggio "event-oriented": significa che eseguirà una data operazione (programmata dall'utente) solo quando un evento specifico avrà luogo.

Un esempio servirà a chiarire maggiormente il concetto: (questo piccolo esempio di codice accende un LED quando metto su ON un interruttore)

 

Var 1000, name LED, Link IOCARD_OUT, Output 15

Var 1001, name LEDSWITCH, Link IOCARD_SW, Input 1

{

  &LED = &LEDSWITCH

}

 

Leggiamo la prima riga:

dichiariamo una variabile "1000" chiamata "LED" e comunichiamo al programma che è assegnata all'uscita #15 ("Link IOCARD_OUT") dove il nostro LED è saldato.

L'uscita #15, quindi, assumerà il valore che la variabile "1000" conterrà: 5 V se il valore è "1", 0 V se "0".

 

La seconda riga:

dichiariamo una variabile "1001" chiamata "LEDSWITCH" e comunichiamo al programma che è assegnata all'ingresso #1  ("Link IOCARD_SW" dato che abbiamo collegato un interruttore od un tasto) dove il l'interruttore è saldato.

 

Ora la parte importante:

quando commuto l'interruttore su ON ("1") il codice tra "{" e "}" è eseguito e viene eseguito ogni volta che lo stato dell'interruttore cambia (ON->OFF or OFF->ON).

In questo caso la variabile "LED" assegnata al LED saldato all'uscita #15 assumerà il valore dell'interruttore: "1" (il LED si accenderà), "0" (il LED si spegnerà).

Facile, no?

Il codice tra "{" e "}", quindi, è eseguito solo quando l'evento "cambio di stato dell'interruttore" avrà luogo.

Quando hai capito come SIOC funziona, sarà facile programmare la logica del tuo cockpit.

Finora, con SIOC, ho programmato la sequenza di accensione dei motori, il comando carrelli con l'indicazione a LED (3 rossi, 3 verdi) della posizione, l'interruttore inserimento autopilota ed il comando transponder di IvAp (IVAO pilot client).