sondino Inserito: 26 settembre 2014 Segnala Inserito: 26 settembre 2014 (modificato) Salve a tutti, sto collaborando con un ragazzo che segue diversi robot kuka krc4 (o forse 2, non ricordo bene) e vorrei sapere se è possibile "filtrare" un ingresso come fronte di salita. Il robot deve eseguire il movimento solo dopo il fronte di salita di un proximiti. Il collega dice che non c'è la funzione, voi cosa dite? Modificato: 26 settembre 2014 da sondino
drugo66 Inserita: 27 settembre 2014 Segnala Inserita: 27 settembre 2014 Ciao, non conosco la programmazione del Kuka, ma comunque si puo' fare. in AWL del SIemens S7-300, sarebbe U I0.0 // Il tuo input UN M10.0 // Merker di appoggio = M1.0 // Questo è il fronte di salita di I0.0 U I0.0 // Questo serve per fare in modo che alla seconda scansione M1.0 (quindi il fronte) vada OFF = M10.0 // Merker di appoggio In C: if (!bInupt) // Il tuo ingresso è OFF - quindi resetti tutto { bMemInput = FALSE; // Memoria di appoggio bRisingEdgeInput = FALSE; // Fronte di salita } if (bInput && !bMemInput) // Il tuo ingresso è ON, ma la memoria è OFF, quindi il fronte è ON bRisingEdgeInput = TRUE; else // altrimenti lo metti OFF bRisingEdgeInput = FALSE; if (bInput) // Il tuo ingresso è ON, quindi la memoria va ON bMemInput = TRUE; Il trucco è nell'esecuzione, dall'alto in basso, delle istruzioni; quando l'ingresso si attiva, attivi anche il fronte (una variabile o merker qualunque), ma dopo attivi anche una memoria dell'ingresso, che sarà responsabile, nella scansione successiva (proprio perchè inserito in sequenza "dopo"), dell'azzeramento dello stesso fronte. Ottieni una memoria dell'ingresso ON attiva per solo una scansione del programma, quindi un fronte di salita dell'ingresso stesso. Con lo stesso concetto è possibile "creare" anche il fronte di discesa. E' un po' tardi, ma spero di essermi spiegato ...
sondino Inserita: 29 settembre 2014 Autore Segnala Inserita: 29 settembre 2014 La programmazione del robot mi sembra che non abbia niente a che fare con il plc. Usa un suo linguaggio e sue funzioni. Faremo una ricerca nel manuale delle istruzioni come delle giovani marmotte...
diglo Inserita: 17 novembre 2014 Segnala Inserita: 17 novembre 2014 nel kuka non c'è una funzione di rilevamento fronti. se eseguite questo check nel modulo sps.sub, che è il PLC interno al robot, allora dovete dichiarare un insieme di variabili globali per implementare voi la logica di rilevazione del fronte di salita, in codice: in un file .dat dichiarato PUBLIC: GLOBAL BOOL My_var=FALSE GLOBAL BOOL My_OSR=FALSE GLOBAL BOOL My_AUX=FALSE nel loop SPS: My_var=$IN[1]; variabile della quale vogliamo estrarre l'edge My_OSR=My_var AND NOT(My_AUX); My_OSR rimane a TRUE per un ciclo del SPS My_AUX=My_var
bulosh Inserita: 20 agosto 2015 Segnala Inserita: 20 agosto 2015 So che è vecchio come post ma rispondo nel caso servisse a qualcun altro: nel Kuka i fronti di salita (o di discesa) si possono rilevare attraverso gli interrupt. Inviato dall'app. Mobile di PLC Forum da iPhone7,2
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