strumenti:qpanelplus:qc104:mima1hmiqc104

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
Prossima revisioneEntrambe le parti successive la revisione
strumenti:qpanelplus:qc104:mima1hmiqc104 [2024/07/04 13:32] – [7.5.2 Utilizzo dei connettori da QView] qem218strumenti:qpanelplus:qc104:mima1hmiqc104 [2024/07/04 14:05] – [7.5.2 Utilizzo dei connettori da QView] qem218
Linea 796: Linea 796:
  
 **1. Creare varibile QCL**  **1. Creare varibile QCL** 
-<code pascal>GLOBAL+<code pascal> 
 +GLOBAL
  ;analog input variable  ;analog input variable
- glAI01 L+ glAI01 L
 </code> </code>
  
Linea 808: Linea 809:
 **4. Creare l'Azione** **4. Creare l'Azione**
 {{ :strumenti:qpanelplus:qc104:step5.png?nolink&600 |}} {{ :strumenti:qpanelplus:qc104:step5.png?nolink&600 |}}
 +
 === Caso Ingressi Usicite Digitali === === Caso Ingressi Usicite Digitali ===
 +Informazione essenziale: gli ingressi e le uscite digitali nel QC104 vengono salvati sottoforma di maschera di bit rispettivamente in "$INPL1" e in "$OUTL1". Tuttavia vengono inerpretate del QPaint come un numero digitale. 
 +Per esempio*: se fossero alzati gli ingressi 1, 2, 5. La bit mask sarebbe 0..0100101 e in $INPL1 riuslterebbe 19.
 +
 +Quindi per poter leggere Ingressi Digitali o settare Uscite Digitali è necessario seguire la seguente procedura.
 +
 +**1. Creare una varibile QCL per gli input e una per gli output** 
 +<code pascal>
 +GLOBAL
 + ;digital I_O bit mask
 + glINPL1 L   
 + glOUTL1 L 
 +</code> 
 +
 +2. Creare una variabile di tipo flag(F) per ciascuno degli input/output di cui si vuole visualizzare lo stato (0/1)
 +
 +3. Seguire la procedura generica del paragrafo sopra al fine di tener sempre aggiornato lo stato di glINPL1 e glOUTL1
 +
 +4. Creare una funzione che converta il valore di glINPL1 e/o glOUTL1 in binario per assegnare lo stato di ciascun bit al rispettivo ingresso/uscita
 +
 +
 +^                    ^      ^      ^      ^      ^      ^      ^      ^      ^      ^      ^      ^      ^      ^      ^      ^      ^^
 +|Maschera di Bit -> |  15  |  14  |  13  |  12  |  11  |  10  |  09  |  08  |  07  |  06  |  05  |  04  |  03  |  02  |  01  |  00  ||
 +|Id In/Output -> | IO16 | IO15 | IO14 | IO13 | IO12 | IO11 | IO10 | IO09 | IO08 | IO07 | IO06 | IO05 | IO04 | IO03 | IO02 | IO01 ||
 +|Esempio* (1,2,5) -> |  00  |  00  |  00  |  00  |  00  |  00  |  00  |  00  |  00  |  00  |  00  |<wrap hi>  01 </wrap> |  00  |  00  |<wrap hi>  01 </wrap> |<wrap hi>  01 </wrap> | = 2^4 + 2^1 + 2^0 = 16 + 3 + 1 = 19|
  
  
  • Ultima modifica: 2024/07/05 08:46