gregorio Inserito: 15 novembre 2019 Segnala Share Inserito: 15 novembre 2019 Buon giorno, dovrei estrarre ora e minuti da un plc omron CP1L per abilitare una uscita ad un orario impostato. Ho trovato questo esempio ma non mi funziona, chi mi può chiarire come avere il valore e poter confrontare Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 15 novembre 2019 Autore Segnala Share Inserita: 15 novembre 2019 Ho provato anche con =DT ma non riesco a farlo funzionare, ho trovato questo esempio che dovrebbe confrontare ore e minuti per abilitare la uscita 100.0 ma mettendo qualsiasi valore su D400 non riesco a farlo funzionare. Nel mio caso devo comandare una uscita alle 5,30 di mattino, inoltre vedo che la funzione è in giallo. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 15 novembre 2019 Segnala Share Inserita: 15 novembre 2019 Allora, ci sono un po' di errori. Nel primo post sono errati i codici di controllo della MOVD. Per spostare i minuti (cifre 2 e 3 della A351) nella D300, devi mettere MOVD A351 #0012 D300. Per spostare le ore (cifre 0 e 1 della A352) nella D301, devi mettere MOVD A352 #0010 D301. A questo punto, fai dei confronti in BCD e funziona. Nel secondo post, in primis, le DT vogliono come word di controllo la mascheratura, cioè la non lettura, dei dati non necessari. Pertanto, per confrontare solo minuti e ore, non va messo #0006 (che invece ti esclude proprio i minuti e ore), ma #0039. Poi devi considerare che tali istruzioni confrontano un gruppo di 3 word strutturate come datario, per cui va bene A351 come primo parametro, ma D400 è solo la prima word (quindi avrai impegnato anche la D401 e la D402). Ergo, se devi sapere quando sono le 5:30, dovrai avere D400 a #3000 e D401 a #0005 (notare la scrittura dei valori in BCD) Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 15 novembre 2019 Autore Segnala Share Inserita: 15 novembre 2019 7 ore fa, Ctec ha scritto: Grazie, ho eseguito la funzione DT e funziona perfettamente, mi sarebbe utile scrivere il valore D400 e D401 direttamente da un pannello operatore NB Ho sbagliato a scrivere, ma il mio messaggio è quello sopra, se puoi essermi di aiuto grazie Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 16 novembre 2019 Autore Segnala Share Inserita: 16 novembre 2019 Ho provato anche con =DT ma non riesco a farlo funzionare, ho trovato questo esempio che dovrebbe confrontare ore e minuti per abilitare la uscita 100.0 ma mettendo qualsiasi valore su D400 non riesco a farlo funzionare. Nel mio caso devo comandare una uscita alle 5,30 di mattino, inoltre vedo che la funzione è in giallo. Preciso, le ore non ho problemi, metto il valore sul pannello e sul plc è corretto. I minuti non bisogna impostare 30 ma 3000, quindi impostando il valore 30 in una DM esempio D410 e poi nel plc facendo una moltiplicazione mi dà il valore corretto 3000 ma mi azzera la D401 come se la moltiplicazione sconfina in d401 Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 16 novembre 2019 Autore Segnala Share Inserita: 16 novembre 2019 (modificato) Ho provato anche con =DT ma non riesco a farlo funzionare, ho trovato questo esempio che dovrebbe confrontare ore e minuti per abilitare la uscita 100.0 ma mettendo qualsiasi valore su D400 non riesco a farlo funzionare. Nel mio caso devo comandare una uscita alle 5,30 di mattino, inoltre vedo che la funzione è in giallo. Preciso, le ore non ho problemi, metto il valore sul pannello e sul plc è corretto. I minuti non bisogna impostare 30 ma 3000, quindi impostando il valore 30 in una DM esempio D410 e poi nel plc facendo una moltiplicazione mi dà il valore corretto 3000 ma mi azzera la D401 come se la moltiplicazione sconfina in d401 Ho fatto cosi: non so se questa sia la soluzione più elegante, ma funziona I minuti li ho messi nella D410 e le ore nella D420 Modificato: 16 novembre 2019 da gregorio Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 16 novembre 2019 Segnala Share Inserita: 16 novembre 2019 Prima di scrivere il messaggio esegui un "Ctrl + z" così pulisci la finestra dell'editor, altrimenti riscrivi anche il messaggio precedente e la discussione diventa illeggibile. Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 17 novembre 2019 Autore Segnala Share Inserita: 17 novembre 2019 Non sapevo che con CTRL+Z si puliva lo schermo. Sono riuscito a completare il progetto e capire bene il funzionamento, ho adoperato anche i giorni della settimana al fine di escludere l'avvio di sabato e domenica. Grazie dell'aiuto. Un'ultima domanda: E' possibile modificare l'ora e i minuti nel caso siano errati tramite il pannello NB. Da quello che ho letto dal manuale mi sembra che non sia possibile, non conosco la precisione dell'orologio interno quindi è una cosa da valutare. Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 17 novembre 2019 Autore Segnala Share Inserita: 17 novembre 2019 Ho visto la funzione DATE, ho provato a modificare ora e minuti senza riuscirci Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 17 novembre 2019 Segnala Share Inserita: 17 novembre 2019 Ho perso un po' il controllo... Una parte l'hai risolta e ora hai bisogno di altro? Fammi una cortesia, ricapitola un po' cosa ti serve adesso. Mi pare di capire che vuoi correggere la data/ora nel PLC da pannello, giusto? In tal caso, la DATE è l'istruzione necessaria, ma deve essere composta a modino l'area di 4 word specificata nel comando. Devono essere composte tutte e quattro, non puoi semplicemente impostare i byte delle ore e minuti, altrimenti avrai un errore. Normalmente si legge l'area datario attuale di A351 e successivi in un'area temporanea, si fanno le modifiche necessarie in questa area temporanea, poi si esegue la DATE puntando a questa area. Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 17 novembre 2019 Autore Segnala Share Inserita: 17 novembre 2019 Mi sembra complicato, sono riuscito a comandare le uscite, visualizzare sul pannello NB ora e minuti del plc, ma non riesco nel caso di necessità modificare dal pannello NB ora e minuti. La funzione DATE mi sembra complicata, se mi puoi dare un esempio Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 17 novembre 2019 Autore Segnala Share Inserita: 17 novembre 2019 Ho messo i minuti in DM 140 e le ore in DM 160 Ho fatto l'istruzione MOVD con #211 e i minuti li mette al posto giusto, non riesco a mettere le ore al suo posto, quale è il valore da inserire Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 17 novembre 2019 Segnala Share Inserita: 17 novembre 2019 Ti ho fatto un esempio, perfettamente funzionante. Ho definito delle variabili (occhio agli array) per rendere più leggibile il programma. A presto Link al commento Condividi su altri siti More sharing options...
gregorio Inserita: 17 novembre 2019 Autore Segnala Share Inserita: 17 novembre 2019 Grazie, ho eseguito le istruzioni e funziona perfettamente vedrò di capire bene le istruzioni Link al commento Condividi su altri siti More sharing options...
Roberto massa Inserita: 3 maggio 2023 Segnala Share Inserita: 3 maggio 2023 Salve, mi aggancio a questo post per avere un consiglio. Vorrei aggiungere data e ora sul pannello HMI, come posso fare? Grazie Link al commento Condividi su altri siti More sharing options...
Livio Migliaresi Inserita: 3 maggio 2023 Segnala Share Inserita: 3 maggio 2023 @Roberto massa Perché accodarsi ad altrui discussione se puoi aprirne una propria. Questa discussione chiude; apri una tua discussione magari riportando il link di questa se pensi possa esserti utile. Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati