harl Inserito: 4 giugno 2016 Segnala Share Inserito: 4 giugno 2016 Salve a tutti................. so cercando di estrarre l'orologio da un cp1e ovvero tramite il comando MOVD a352 #12 d300 ovvero prendo l'area dove ha memorizzato giorno data a352 spsoto i digit che mi interessano e li muovo in una dm. il problema sta nel fatto che sul simulatore mi funziona tutto mentre quando lo invio al plc la dm che raccoglie i dati mi fornisce valori sbagliati Link al commento Condividi su altri siti More sharing options...
barby Inserita: 4 giugno 2016 Segnala Share Inserita: 4 giugno 2016 occhio che i flag sono come segue (supponiamo di numerare i digit 1234): A351: 12= minuti, 34= secondi A352: 12= giorno, 34= ora A353: 12= anno, 34= mese A354 12=non usato, 34= giorno della settimana quindi la tua istruzione precedente muove solo il giorno su D300 per avere l'ora in formato HH:MM su un unico DM devi fare ad esempio: MOVD A351 #113 D300 e poi MOVD A352 #210 D300 tieni presente che il formato è BCD ciao Link al commento Condividi su altri siti More sharing options...
harl Inserita: 4 giugno 2016 Autore Segnala Share Inserita: 4 giugno 2016 ti ringrazio dell'interessamento all'argomento, il mio peoblema maggiore è che mettendo il programma sul plc i valori si sfalsano mi scrive delle fesserie, mentre sul simulatore funziona correttamente e non capisco perchè Link al commento Condividi su altri siti More sharing options...
harl Inserita: 4 giugno 2016 Autore Segnala Share Inserita: 4 giugno 2016 se guardi le due immagini una è in run con il simulatore e va tutto bene , altra immagine è in run su plc e li i valori cambiano e non capisco il perchè Link al commento Condividi su altri siti More sharing options...
barby Inserita: 4 giugno 2016 Segnala Share Inserita: 4 giugno 2016 Forse nel PLC hai qualche altro dato scritto sul D252 ed inoltre hai la visualizzazione decimale mentre le date sono in BCD. Prova a pulire il D252 con un MOV #0000 prima di eseguire la MOVD e quando sei online commuta sulla visualizzazione esadecimale (icona occhialini 16) Link al commento Condividi su altri siti More sharing options...
harl Inserita: 4 giugno 2016 Autore Segnala Share Inserita: 4 giugno 2016 ok perfetto sembra vada per ora ti faccio sapere appena finisco tutto il programma grazie Link al commento Condividi su altri siti More sharing options...
Antonio Mascolo Inserita: 6 giugno 2016 Segnala Share Inserita: 6 giugno 2016 io ho usato nel movd #10 #0010 e #12 col valore #34 mi dava errore bohhh, comunque un modo veloce per resettare a zero tutte le dm in modo da non ricadere nello sbaglio di dm sporche che mi falsano i valori esiste ? Link al commento Condividi su altri siti More sharing options...
Antonio Mascolo Inserita: 6 giugno 2016 Segnala Share Inserita: 6 giugno 2016 il cp1 ha poi un comando per confrontare il suo calendario ? il cj1 mi sembra che dovrebbe avere un comando chiamato load !!!!!!!!!!!!!!!!!!!!!! praticamente ad un determinato orario impostato dovrei alzare un bit, per ora sto eseguendo dei confronti di uguale dove immetto l'ora che mi interessa ed alzo i bit, ma se qualcuno aveva un idea più pratica di come sviluppare la cosa sarei grato Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 7 giugno 2016 Segnala Share Inserita: 7 giugno 2016 Ciao Esistono dei comandi appositi. Sono dei confronti sulla data (quindi i vari >,<,=,<>,>=, <= seguiti da DT che sta per Date) che fanno tutto da soli. Hai la possibilità di mascherare la data in modo da fare i confronti su tutti i parametri della data oppure solo su alcuni (per esempio, fai il confronto solo su ore e minuti per far scattare un evento tutti i giorni alla solita ora). PS: Antonio, come mai hai cambiato nome utente? Link al commento Condividi su altri siti More sharing options...
harl Inserita: 8 giugno 2016 Autore Segnala Share Inserita: 8 giugno 2016 mi sono collegato semplicemente con accesso tramite facebook......................^_^ mascherare la data sarebbe ??????? devo tramite l'ora rilevare i pezzi in vari punti della linea salvarli ogni otto orecome parziale (un turno) tutto il giorno come totale e come giorno della settimana quindi questo comando è molto utile mi evito di riscrivere righe di comando, oggi lo provo subito, e vedrai che dopo mi servirà sapere come voi programmatori di professione e non burbe come me salvate i dati in un mese Link al commento Condividi su altri siti More sharing options...
harl Inserita: 8 giugno 2016 Autore Segnala Share Inserita: 8 giugno 2016 non ho capito il comando e non lo trovo sul mio manuale , sicuramente non è questo Link al commento Condividi su altri siti More sharing options...
RDA Inserita: 8 giugno 2016 Segnala Share Inserita: 8 giugno 2016 La funzione e quella giusta, e un pò ostica da parametrizzare ma va che e una bomba. Alla fine della fiera ti restituisce appunto un bit che sarà 0-1 in funzione della tabella oraria. Link al commento Condividi su altri siti More sharing options...
harl Inserita: 9 giugno 2016 Autore Segnala Share Inserita: 9 giugno 2016 un piccolo esempio su come parametrizzare la funzione per favore , non sono un gran programmatore ................................................. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 9 giugno 2016 Segnala Share Inserita: 9 giugno 2016 Dunque, le istruzioni di comparazione sulla data hanno tutte tre parametri, C, S1, S2. Il primo è C il canale di controllo, che permette di decidere su quali dati dell'orologio di sistema (la data) dovrà essere eseguito il confronto. L'area S1 (che va da S1 a S1+2) contiene la data attuale, e in genere la si imposta a A531, che è l'area che contiene l'orologio interno. L'area S2 (che va da S2 a S2+2) contiene la data di confronto, che servirà quindi da paragone. Se C=0, il confronto tra le due date S1 e S2 avverrà su tutti e sei i dati dell'orologio (dai secondi all'anno). I primi 6 bit consentono di "spegnere" quei dati dell'orologio che non vogliamo paragonare, nell'. in linea e nel manuale trovi la mappa (maschera). Se un bit è a 1, quel dato non sarà considerato per il confronto. Se tutti e 6 i bit sono a 1, non confronta un bel nienete e setta il bit di errore ER. Per esempio, se vogliamo comparare solo ora e minuti (faccio un timer che tutti i giorni alla stessa ora faccia partire qualcosa, magari una sveglia....), scrivo =DT #0006 A531 D300 in D300 bit 8-15 avrò i minuti e in D301 bit 0-7 avrò l'ora in cui voglio far partire quel qualcosa, nel resto non importa ci sia qualcosa (viene ignorato), e la word di controllo è impostata in modo che si confrontino solo ora e minuti (bit 1 e 2 attivi, quindi 0000000000000110b, che in esadecimale è #0006). Al tempo impostato, l'istruzione emetterà sulla sua destra un 1, eseguendo quindi quello che segue. Spero di essere stato chiaro Link al commento Condividi su altri siti More sharing options...
harl Inserita: 9 giugno 2016 Autore Segnala Share Inserita: 9 giugno 2016 andrea scusami specificami il manuale quello che ho io non ho trovato nulla o cosa devo scrivere nella guida in linea riguardo alle tue spiegazioni grazie Link al commento Condividi su altri siti More sharing options...
harl Inserita: 9 giugno 2016 Autore Segnala Share Inserita: 9 giugno 2016 scusate con la fretta non trovavo niente ora da casa ho trovato tutto , piccolo problema tale comando però funziona col cp1en ? Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 10 giugno 2016 Segnala Share Inserita: 10 giugno 2016 Si, è su tutti i CP1 Link al commento Condividi su altri siti More sharing options...
harl Inserita: 10 giugno 2016 Autore Segnala Share Inserita: 10 giugno 2016 andrea scusami ma non mi funziona;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;potresti dirmi un esempio per fare on uscita alle 5:00:00 per cercare di capire meglio perché sul manuale che ho io mi spiega differentemente e mi sa che ho fatto confusione da solo Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 10 giugno 2016 Segnala Share Inserita: 10 giugno 2016 Ecco l'esempio impostato per le 05.10.20 e funziona Link al commento Condividi su altri siti More sharing options...
harl Inserita: 11 giugno 2016 Autore Segnala Share Inserita: 11 giugno 2016 ho copiato spudoratamente il tuo esempio , cambiato orario del plc e niente da fare unica cosa strana il comando date è evidenziato in giallo Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 11 giugno 2016 Segnala Share Inserita: 11 giugno 2016 Non so che dire. A me a sempre funzionato, e funziona pure l'esempio. E' anche vero che i CP1E non li uso mai, ma in simulazione funziona lo stesso. Link al commento Condividi su altri siti More sharing options...
harl Inserita: 12 giugno 2016 Autore Segnala Share Inserita: 12 giugno 2016 ho fatto un esperimento simulando su un cj e funziona si vede che il cp1 non lo digerisce il comando o almeno il mio che ho qui in officina .................. grazie mille Andrea alla prossima Link al commento Condividi su altri siti More sharing options...
_kevin Inserita: 12 giugno 2016 Segnala Share Inserita: 12 giugno 2016 Il CP1E-E non ha la batteria e non può essere installata Il CPUE-N non ha la batteria ma può essere installata come opzione La batteria serve a mantenere il valore delle aree di memoria ritentive ( D e H solitamente ) e l'orologio Link al commento Condividi su altri siti More sharing options...
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