jmkys Inserito: 25 novembre 2012 Segnala Inserito: 25 novembre 2012 salve, ho un problema a riguardo degli interrupt, non riesco ad abilitarli e a farli funzionare, e nel manuale siamens non c'è scritto praticamente nulla. Grazie mille in anticipo!
Livio Orsini Inserita: 25 novembre 2012 Segnala Inserita: 25 novembre 2012 Gli inerrupts son legati ad OB ben precisi ed anche molto ben documentati. Se non specifichi a quali interrupts fai riferimento è molto difficile che t si possa aiutare.
jmkys Inserita: 25 novembre 2012 Autore Segnala Inserita: 25 novembre 2012 chiedo scusa, intendo interrupt di processo legati all' ob 40, ora sto utilizzando una cpu 314IFM ingressi interrupt dal 126.0 al 126.3 ( non ricordo se fino al 16.3 o 126.4)
77andreagas Inserita: 26 novembre 2012 Segnala Inserita: 26 novembre 2012 ciao, 314IFM è da un bel po di tempo che non ne sentivo parlare, da quello che ricordo puoi definire tu quale sia l'indirizzo E.. da usare l'importante è rispettare il collegamento fisico sugli ingressi che suppuorta la commutazione ad alta velocità.
jmkys Inserita: 26 novembre 2012 Autore Segnala Inserita: 26 novembre 2012 ok il problema è che li abilito tutti ma quando attivo gli ingressi non mi da l' uscita che voglio ma rimane attivo il programma dell'ob1 o dell' fc che il plc sta elaborando.
Livio Orsini Inserita: 27 novembre 2012 Segnala Inserita: 27 novembre 2012 Hai provato a mettere un merker di traccia per verificare che il programma passa dall'interrupt? Se si come hai configurato la traccia?
batta Inserita: 27 novembre 2012 Segnala Inserita: 27 novembre 2012 e nel manuale siamens non c'è scritto praticamente nulla. Diciamo che tu non hai trovato nulla, che è più corretto. Se non hai il manuale, vai sul sito Siemens e cerca "HB_CPU312IFM_bis_318-2DP_i.pdf". Vedrai che ci sono tutte le istruzioni necessarie per utilizzare gli ingressi di interrupt. ok il problema è che li abilito tutti ma quando attivo gli ingressi non mi da l' uscita che voglio ma rimane attivo il programma dell'ob1 o dell' fc che il plc sta elaborando. Qui proprio non ho capito cosa intendi dire. Se non ci dici cosa hai scritto in OB40, difficile capire dove sbagli. Le istruzioni base che dovresti mettere in OB40 sono le seguenti: 1) controllare se OB40 è stato avviato da un evento sugli ingressi di interrupt. Questo si fa controllando il valore della variabile OB40_MDL_ADDR. Se è 124 (7C Hex) OB40 è stato avviato da evento su ingressi di interrupt a bordo CPU, altrimenti l'interrupt che ha avviato OB40 arriva da altri moduli. 2) una volta appurato che OB40 è stato avviato da evento su ingressi di interrupt, si deve capire su quale ingresso si è verificato l'evento. Questo si fa leggendo la variabile OB40_POINT_ADDR. Il bit meno significativo (occhio all'allineamento dei byte) è relativo all'ingresso E126.0. Procedendo verso sinistra ci sono gli altri ingressi. Quanto sopra lo trovi descritto alle pagine 1-44 e 1-45 del manuale.
Luca Bab Inserita: 27 novembre 2012 Segnala Inserita: 27 novembre 2012 Ho fatto un'applicazione simile ma su una 313C 2P ( e credo che non cambia dalla tua CPU Confermo quanto scritto da batta Nel mio caso avevo configurato gli ingressi a bordo CPU con inizio da 0 e con l'ingresso in interupt su I0.2 controllo che #OB40_MDL_ADDR = 0 controllo che #OB40_POINT_ADDR = 2 quindi faccio cio' che mi serve , ma stai attento poiche' se lavori sulle uscite , devi aggiornare ( in OB40 ) le uscite fisiche esempio : il mio interupt fermava un motore con contattore collegato all'uscita Q3.5 quindi in OB 40 facevo il reset di Q3.5 poi il MOVE di QB3 su PQB3 ( sposto immagine delle uscite su uscite fisiche ) CiaoMi correggo l'input di interrupt era su I1.1 e comunque l'indirizzo da OB40 e' come scritto sopra 0 e 2 Ciao
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora