_LORIS_ Inserita: 10 aprile 2006 Autore Segnala Inserita: 10 aprile 2006 grazie ancora a tutti.ah ixa io l'awl lo so leggere poco, siccome sono un "elettricista" mi rimane comodo covertirlo in KOP.quindi l'operazioene che ho fatto è copiare ed incolare in AWL e poi convertire in KOP (chiaramente anche dividendo in più segmenti altrimenti da errore). Però con il tuo programmino, pur ripartendolo in più rami, mi da un errore nel segmento... in AWL funziona, in KOP non capisco ho tentato il copiae incolla in più modi ma sembra che voglia qualcos'altro...
ixa Inserita: 10 aprile 2006 Segnala Inserita: 10 aprile 2006 loris, prova a scriverlo cosi.....dovrebbe convertirtelo;...spero!segmento1LD I0.0EU= M0.0segmento2LD M0.0AN Q0.1JMP 1segmento3LD M0.0S Q0.0, 1R Q0.1, 1JMP 2segmento4LBL 1segmento5LD M0.0S Q0.1, 1R Q0.0, 1segmento6LBL 2vedrai che il salto alle etichette è comodissimo!.....io ne faccio un grandissimo uso in tutti i miei programmi!
_LORIS_ Inserita: 10 aprile 2006 Autore Segnala Inserita: 10 aprile 2006 si ixa intuisco che sia utile, ora sono a casa ma domattina lo provo heheheeh per un principiante come me non avete idea di quanto mi fa comodo una discussione di questo tipo, imparo pure a saltare ora Poi ti faccio risapere ciao
batta Inserita: 11 aprile 2006 Segnala Inserita: 11 aprile 2006 tuttavia mi rimane abbastanza difficile da comprendere (c'è un bel raggiro), ma funzionaSe ti riferisci al ramo del flip-flop è proprio un OR esclusivo (XOR), come detto da ixa.Se non erro nel S7-200 non c'è la funzione XOR (esiste per byte, word e dword, ma non per operazioni booleane), e quindi la creo così.Per capirla devi pensare che un plc, a differenza di un impianto elettromeccanico, legge le istruzioni una alla volta, dalla prima all'ultima e poi ricomincia dalla prima.Partiamo quindi a ragionare supponendo che M0.1 sia OFF.Quando M0.0 viene attivato (ricorda che rimane ON per una sola scansione) diventa vera la prima condizione (LDN M0.1 AND M0.0), quindi M0.1 viene impostato ON. Non serve controllare la seconda condizione, basta che sia vera una delle 2 per mantenere ON M0.1.Alla successiva scansione ci troveremo con la prima condizione falsa, ma sarà vera la seconda condizione (LD M0.1 AND NOT M0.0), quindi M0.1 rimane ON.Quando verrà attivato nuovamente M0.0 (sempre per una sola scansione) saranno false entrambe le condizioni, quindi M0.0 verrà impostato OFF.Per quanto riguarda il contaore di cui parlavo, in realtà sarebbe un contasecondi. l'ho definito contaore nel senso che è qualcosa che conta il tempo di funzionamento.Quello che avevo proposto come esercizio consiste semplicemente nell'utilizzare due variabili a 32 bit (una per ogni pompa). Se la pompa 1 è in funzione incrementi una volta al secondo la variabile "contasecondi" della pompa 1. Stessa cosa per la pompa 2. Quando devi far partire una pompa, con una comparazione puoi determinare quale delle 2 ha lavorato meno e decidere di far partire proprio quella. Questo sistema è sempre valido, anche per un maggior numero di motori da gestire.Per quanto riguarda il funzionamento con contatore, nessuno ti vieta di usare quello, solo è uno spreco usare un contatore solo per fare un flip-flop, e mi sembra anche una soluzione più complessa.Non dimenticarti, come detto da Marco, di aggiungere altri controlli.
_LORIS_ Inserita: 12 aprile 2006 Autore Segnala Inserita: 12 aprile 2006 (modificato) ciao Batta scusa ma vorrei capire meglio la tua affermazione (e quella che hanno fatto altri)"solo che è uno spreco usare un contatore per fare flip-flop""non è la soluzione migliore"Allego un'immagine per farmi capire.Ecco vedi utilizzando un contatore CTU io (da principiante, per carità ) deduco queste cose:1) realizzo l'automazione in solo 3 segmenti2) semplice, semplice... quando è =0 va la pompa1, quando è =1 va la pompa 1 e infine quando è =2 resetta e si rincomincia... Quindi direi che è più immediata questa soluzione, che ne altre proposteChe ne dite?Che svantaggi avrebbe?... francamente non riesco a capire, a me risulta decisamente più semplice ragionare in questo senso... e tremendamente più difficile capire come ragionate voi (si fa per ragionare... sottinteso che ognuno ragiona in modo diverso).p.s.una domanda, nell'immagine allegata potrei fare a meno di utilizzare la transazione positiva |P| ?se la tolgo il programma funziona lo stesso....va bene? Modificato: 12 aprile 2006 da _LORIS_
MarcoEli Inserita: 12 aprile 2006 Segnala Inserita: 12 aprile 2006 (modificato) Allora chiariamo un pò di cose:il programma che hai scritto tu in 3 segmenti teoricamente funziona ma ti assicuro che così realizzato se ti va bene gli dai una settimana di vita alle tue pompe. Devi aggiungerne qualcuno è sicuramente arrivi alla pari degli altri.Il cambio del pilota fallo non quando arriva il pressostato ma quando hai la condizione di pompe ferme altrimenti rischi di cambiare il pilota troppe volte.Ricordati poi che quando si fanno una gestione di pompe si deve tenere conto di tanti altri particolari:=> La pompa non può fare più di un certo numero di avviamenti ora (con relativa pausa)=> Devi filtrare il pressostato (a meno che non abbia l'isteresi regolabile) perchè se no rischi di accendere e spegnere le pompe anche per un niente.=> Devi considerare che se ne si rompe una l'altra deve partire in automatico.Oltre a questi problemi "di programmazione" devi anche tener conto della parte idraulica specialmente se le pressioni in gioco sono alte, devi tener conto dei tempi di fermata delle pompe, del colpo di ariete ogni volta che la pompa si ferma........ Modificato: 12 aprile 2006 da MarcoEli
ixa Inserita: 12 aprile 2006 Segnala Inserita: 12 aprile 2006 Loris, .....scusa se mi intrometto: un conto è sperimentare"per curiosità" i più svariati metodi di programmazione.........altra cosa è la gestione di due o più compressori all' interno, magari, di un impianto complesso.Hai già avuto modo di automatizzare impianti?
_LORIS_ Inserita: 13 aprile 2006 Autore Segnala Inserita: 13 aprile 2006 (modificato) hehehehe non facciamo confusione.dunque io sto imparando, ho 28 anni e in questo forum semplicemente ho fatto delle domande su metodi di programmazione.Per quanto riguarda il programma vero è proprio, completo di tutti i controlli necessari che avete elencato, c'è il mio collega più anziano ed esperto che li fa.il programma l'abbiamo, lo facciamo da tempo ormai, funziona ed è sicuro.Quello che volevo dire in questa discussione è che per realizzare lo scambio pompe io ed il mio collega usiamo il contatore come spiegato nei precedentie a me da principiante mi rimane più semplice capire quella logica e chiedevo se andava bene.Poi mi son state spiegate altre soluzioni che faccio fatica a capire ma che intuisco, cerco d'impararare ragazzi ovviamente il programma allegato è solo una minima parte poi vanno tutti i controlli necessari e opportuni, ma non era mio intento approfondire nei dettagli. Modificato: 13 aprile 2006 da _LORIS_
batta Inserita: 13 aprile 2006 Segnala Inserita: 13 aprile 2006 Il programma migliore è quello che funziona e che piace di più.Non è importante poi se c'è un segmento in più o in meno, e nemmeno se uso un contatore in più o in meno.Io dico solo che concettualmente mi sembra sprecato usare un contatore per un semplice flip-flop, perché un contatore è un oggetto un po' più complesso di un semlice merker. Tutto qui.
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