vitaminadhl Inserito: 2 febbraio 2009 Segnala Inserito: 2 febbraio 2009 Network 1LD I0.0AN T33TON T37, 20Network 2 LD I0.0AN T33= Q0.0Network 3 LD T37TON T33, SMW28Ho scritto, seguendo una guida, il codice sopra dove portando a on I0.0 l'uscita q0.0 deve lampeggiare.Ho fatto il test con il simulatore S7_200_ING ma quando attivo i0.0 luscita rimane attiva senza lampeggiare.Errore nel codice? Uso una cpu 214.Grazie
Savino Inserita: 2 febbraio 2009 Segnala Inserita: 2 febbraio 2009 (modificato) vitaminadhl,Prova cosi, non lo ho provato ma dovrebbe andare..Controlla che la SMW28 non sia a zero.Network 1 LD I0.0 AN T33 TON T37, 20 Network 2 LD I0.0 A T37 TON T33, SMW28 Network 3 LD I0.0 A T37 = Q0.0 Modificato: 2 febbraio 2009 da Savino
busanela Inserita: 3 febbraio 2009 Segnala Inserita: 3 febbraio 2009 Ciao,se non è importante la velocità di lampeggio e possono bastarti 0.5 sec. on e 0.5 sec. off di cadenza, puoi utilizzare lo SM0.5:LD I0.0 A SM0.5 = Q0.0Più semplice di così non c'è niente!
vitaminadhl Inserita: 3 febbraio 2009 Autore Segnala Inserita: 3 febbraio 2009 Innanzitutto GRAZIE per l'interessamento,ho provato il codice di Savino ma, almeno sul simulatore, sembra non funzionare... Il codice postato da busanela è valido ma purtroppo non consente di impostare un tempo di on/off.Se si trova una soluzione dove poter impostare il timer di on/off bene, altrimenti mi adatterò al codice con SM0.5!Grazie ancora
JumpMan Inserita: 4 febbraio 2009 Segnala Inserita: 4 febbraio 2009 SMB28 e SMB29 sono 2 byte che assumono un valore dipendente dalla posizione dei 2 potenziometri a bordo.Sei sicuro che il simulatore "simuli" anche i 2 potenziometri ?
Savino Inserita: 4 febbraio 2009 Segnala Inserita: 4 febbraio 2009 (modificato) vitaminadhl,ho provato il codice di Savino ma, almeno sul simulatore, sembra non funzionare Guarda, purtroppo non ne ho sotto il simulatore ne una CPU, ma il codice per S7300 sotto postato funziona.A meno che non mi sia sbagliato a trasformarlo per S7200, controlla che l'impostazioni della base per i timer sia giusta. Network 1 U E 0.0 UN T 33 L S5T#1S SE T 37 NOP 0 NOP 0 NOP 0 NOP 0 Network 2 U E 0.0 U T 37 L S5T#1S SE T 33 NOP 0 NOP 0 NOP 0 NOP 0 Network 3 U T 37 = A 0.0 KOP: T 37 | E 0.0 T 33 +-----------+ | | S_EVERZ | +--[ ]---[/]----+ S Q +----------- | | | | | | | S5T#1S + TW DUAL +.. | | | | | | | ..+ R DEZ +.. | +-----------+ | | | T 33 | E 0.0 T 37 +-----------+ | | S_EVERZ | +--[ ]---[ ]----+ S Q +----------- | | | | | | | S5T#1S + TW DUAL +.. | | | | | | | ..+ R DEZ +.. | +-----------+ | | | | | T 37 A 0.0 | +---[ ]-----------------------( )-----+ Lamapda | | | | | | Modificato: 4 febbraio 2009 da Savino
FattoreDiPotenza Inserita: 4 febbraio 2009 Segnala Inserita: 4 febbraio 2009 (modificato) Spesso il simulatore , emula la CPU , utilizzando una frequenza di elaborazione del programma se non uguale , quasi simile a quella dalla microporcessore del tuo PC.Fatto stà che la simulazione di tempi molto brevi o lampeggi , si possono rilevare inaspettatamente non funzionanti.Prova in "configuration"-->"adjust speed of simulation" e portalo al minimo.Prova anche dei trigger più generosi , dai 3 secondi in sù o più e vedi se funziona , ma dubito.Poi se funziona così deve funzionare anche nella realtà.Il codice di Savino è corretto , anche se la dizione che usa è più riconducibile ad un S5 o S7-300/400.In quello che tu hai postato nel primo messaggio ,personalmente ravvedo solo un errore nel segmento 3Scrivevi:Network 3 LD T37 TON T33, SMW28 Sarebbe più corretto prendere il valore di SMB.. farlo transitare in AC0 (primo accumulatore) ed usare AC0 come valore di caricamento timer. LD I0.0 MOVB SMB28, AC1 TON T37, AC1 Stai attento anche al numero di temporizzatore che usi , numeri diversi hanno base tempi diversi. Nell'esempio che hai riportato , usi un time base 10ms e un timer base 100ms. Vedi qui le tipologie. [b]Tipo Risoluzione Valore max. Numero del temporizzatore[/b] TONR 1 m 32,767 s T0, T64 10 ms 327,67 s T1-T4, T65-T68 100 ms 3276,7 s T5-T31, T69-T95 TON, TOF 1 ms 32,767 s T32, T96 10 ms 327,67 s T33-T36, T97-T100 100 ms 3276,7 s T37-T63, T101-T255 Modificato: 4 febbraio 2009 da FattoreDiPotenza
miro970 Inserita: 4 febbraio 2009 Segnala Inserita: 4 febbraio 2009 verificato il codice di savino su una vecchia cpu214 rel1.01 funzionail codice di vitaminadhl funziona se Network 2 LD I0.0AN T33A T37= Q0.0saluti
Savino Inserita: 4 febbraio 2009 Segnala Inserita: 4 febbraio 2009 verificato il codice di savino su una vecchia cpu214 rel1.01 funzionaGrazie mille miro970 per l'info.Comunque, penso che il problema di vitaminadhl potrebbe essere nella errata impostazione della base per i tempi oppure una ripetizione di qualche variabile nel resto del programma. Basterebbe fare un monitoraggio per capire.
vitaminadhl Inserita: 5 febbraio 2009 Autore Segnala Inserita: 5 febbraio 2009 Grazie Miro per la disponibilità, ho verificato anche io il codice postato da Savino su una 214 e funziona perfettamente, ho fatto la correzione al mio e funziona anche cosi.Nel simulatore anche se settavo SMB28 non funzionava! Credo sia un problema legato al simulatore!Grazie di cuore a TUTTI!
bartec Inserita: 7 dicembre 2010 Segnala Inserita: 7 dicembre 2010 Oppure si potrebbe scrivere.SEG1LD I0.1BTI SMB28,VW100 ; LEGGE IL POTENZIOMETRO ANALOGICO (O) E RIPORTA IL VALORE COME INTERO IN "VW100" SEG2LD I0.1AN T33TON T37,20SEG3LD I0.1A T37TON T33,VW100 SEG4LD I0.1A T37= Q0.0monitorando anche il secondo potenziometro si potrebbe regolare anche il T37. con un'altra VW.
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