Vai al contenuto
PLC Forum


Richiamare Un Sottoprogramma E Non Solo...


matrixsellone

Messaggi consigliati

matrixsellone

SALVE A TUTTI.

SONO NUOVO DEL FORUM.

sono un ragazzo in procinto di terminare il progetto di esame.

si tratta di una macchina NC a 3 assi.

il mio,anzi,i miei quesiti sono:

1) se richiamo un sottoprogramma con un impulso (ad esempio tramite un pulsante),questo viene letto fin tanto che il pulsante rimane premuto,oppure basta l'impulso per una lattura completa del SUB?

2)per azzerare un encoder tramite impulso esterno (si considerò però che per esigenze di ingressi,ho utilizzato il MODE 9 su HC0 e HC4, e di conseguenza non vi è ingresso dedicato al reset) basta ad esempio trasferire il valore zero nel byte SMD38 (per HC0)?

grazie mille a tutti

Link al commento
Condividi su altri siti


Ciao, benvenuto nel forum.

1) Se richiami una SUB tramite fronte essa sarà elaborata completamente solo una volta al verificarsi del fronte, se la richiami con un pulsante o con un timer impulsivo sarà elaborata n volte (dipende dal tempo di ciclo del plc)

2) Se hai trovato SMD38 nel manuale dovresti aver letto anche che per confermare bisogna mettere SM37.6=1

Modificato: da JumpMan
Link al commento
Condividi su altri siti

matrixsellone

ottimo grazie!.

la funzione IPI mi ha salvato.

un'altra domandina :rolleyes:

per il contatore veloce hc4,che byte devo impostare come valore attuale di posizione? io ho messo SMD148 (e quindi SMB147)...può andare?

grazie mille

Link al commento
Condividi su altri siti

messina-dario

ciao matrix....

spiega un po meglio cosa ti serve fare??

Ad esempio, per i due encoder(uno per hc0 e uno per hc4) hai dei valori di set point precisi??ecc...

Spiegaci un po...E poi altro consiglio, l'assistente di istruzioni dello step7 ti aiuta molto in queste circostanze, io lh'o usato per la tesi di laurea e proprio di recente ho controllato due encoder incrementali....

Ecco perchè ti dico di esplicitare un po meglio la tua domandina.... ;)

Link al commento
Condividi su altri siti

matrixsellone

Cosi sia :lol:

ho la necessità di leggere due encoder incrementali.

per quanto riguarda il primo non ho problemi.

visualizzo facilemnte il valore di HC0 sul pannello.

il problema sorge con il secondo colegato a i0.3 ed i0.4.

Qaule Byte devo configurare per HSC4? può andare SMB147?

inoltre,il valore del contare è presente nel byte SMD148 oppure no?

grazie mille per l'interessamento

Link al commento
Condividi su altri siti

messina-dario

l'equivalente dell'hc0 per hsc4 è hc4...li torvi il valore attuale conteggiato dall'encoder...

In questo momento non ricordo a memoria i bit e registri da aggiornare per hsc4, comunque trovi tutto nell'. dello step7...

Comunque ripeto ,guarda l'ssistente per la configurazione delle funzione hsc...e noterai che è possibile al verificarsi del primo pv aggiornare il nuovo pv....

Questo ti è molto utile quando per esempio devi fare fermare

l'enoder in due posizioni bene precise....

Spero di esserti stato di aiuto...

comunque è bene leggere i manuali ;)

Saluti.

Link al commento
Condividi su altri siti

...comunque è bene leggere i manuali

No, non è bene è indispensabile! Sembra strano ( :lol: )ma sui manuali e, nel caso di microwin, con l'help on line si trovano le risposte al 99,9% dei problemi. L'unico inconveniente è che bisogna spendere un po' di tempo per leggere....mentre a domandare si fa meno fatica, però s'impara anche meno.

Modificato: da Livio Orsini
Link al commento
Condividi su altri siti

matrixsellone

concordo con quello che dici.

Ibyte di cui parlo li ho ricavati dalla lettura del manuale ala capitolo"Contatori Veloci".

Non potendo testare il programma,mi affido a voi.

Ci tengo a dire che per forza di cose devo leggere il manuale,perchè sostanzialemnte è da li che ho "imparato" qualcosa di programmazione.

Grazie mille

Link al commento
Condividi su altri siti

  • 1 month later...
matrixsellone

scusate se riapro questa vecchia discussione.

ho seguito alla lettera il manuale rigurado al contatore si I0.3 e I0.4 ma proprio non riesco a leggere l'encoder su questi ingressi.

non volgio avere la soluzione,ma solo qualche dritta sui byte da utilizzare.

ecco la mia configurazione:

SMB147=252

SMD148=0 //AZZERAMENTO

HSC4 MODE 9.

il tutto richiamato al primo ciclo.

grazie a tutti

Link al commento
Condividi su altri siti

Ciao,

gli SMB e SMD che stai usando sono quelli corretti per la programmazione di HSC4.

Se hai già verificato di aver effettuato lo spostamento di HC4 nella MD che utilizzi per leggere il valore corrente dell'encoder tramite l'istruzione di spostamento MOV_DW, probabilmente stai (col valore impostato nell' SMB 147) imponendo una continua reimpostazione di aggiornamento del valore attuale a 0 tramite SMD148: in parole povere, stai (con SM147.5=1) continuando ad aggiornare (azzerare, se preferisci) il valore di HC4.

Per vedere se il mio sospetto è fondato, posta il codice che hai fatto.

attendo con ansia vostre risposte

Non addirittura in ansia!!! ;)

Modificato: da busanela
Link al commento
Condividi su altri siti

matrixsellone

ciao,grazie per la risposta.

non so come postare il codice KOP :P,comunque,il sottoprogramma di lettura in HC4 lo richiamo tramite SM0.1,esattamente come faccio per Hc0.

poi effettuo una divisione del valore di HC4 e lo trasferisco (sempre come faccio per HC0,che non da problemi).

anche in SMB37 ho impostato 252 e tutto funziona.

grazie per l'attenzione

Link al commento
Condividi su altri siti

Ciao,

non so come postare il codice KOP

convertilo in AWL tramite il menù VISUALIZZA.

esattamente come faccio per Hc0
e tutto funziona.

Ma che cpu stai usando? Nei post precedenti non lo dici! Dalla 221 sono supportati 4 hsc, dalla 224, addirittura 6, ma se la versione è più vecchia ... <_<

Link al commento
Condividi su altri siti

matrixsellone

...scusate.

si tratta di una 224xp.

ecco il codice in awl

LD SM0.0

MOVB 252, SMB147 //Imposta bit di controllo: conta in avanti; resetta attività ALTA; velocità quadrupla; abilitato;

MOVD 0, SMD148 //Carica il VA

HDEF 4, 9 //Carica il VP

HSC 0

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...