kucaio Inserito: 9 luglio 2007 Segnala Inserito: 9 luglio 2007 Salve,vi volevo segnalare un problema rilevato con un plc della siemens ( S/ 200 cpu 226 ) e vorrei sapere, se possibile, un'eventuale soluzione a tale problema.per il calcolo dello spazio percorso uitilizzo la seguente stringa al livello di concetto.ho un ingresso analogico ( prelevato da un potenziometro dal momento che non vi è la presenza di un encoder sulla macchina).campiono questo volare di ingresso ad ogni ciclo di programma e lo moltiplico per il tempo di ciclo stesso (Ianalogico/60)* (k) * ciclo di programma.dove k è il coefficiente di adeguamento alla velocità lineare.una volta calcolato il tempo percorso in un ciclo di programma lo vado a scrivere di una dword, tale dword ciclicamente si va a sommare con un altra dword che è definita contatore totale.L'applicazione funziona sino a che non si arriva al valore di 16384 mt percorsi allorchè il contatore si blocca se ilvalore analogico di riferimento di velocitrà =< 2 volt mi si sbocca se il valore di riferimento analogico di velocità > 2 volt.Spero di essere stato chiaro saluti.
Livio Orsini Inserita: 9 luglio 2007 Segnala Inserita: 9 luglio 2007 la tua descrizione è sufficientemente chiara fino al punto in cui cerchi di spiegare il blocco. Non si capisce cosa fa.A parte il fatto che miglioreresti la precisione, semplificando anche i conti, se tu leggessi il valore del trasduttore da un interrupt causato dal timer del sistema. Potresti stabilire un valore di campionameto che semplifica i conti ma, soprattutto, avresti più precisione nella misura (il tempo di ciclo non è mai preciso).Comunque apparentemente il guaio sembrerebbe dovuto ad errori di calcolo, anche se non è chiaro cosa centri il riferimento di velocità.Sarebbe oppurtuno, per evitare errori di arrotondamento, usare variabili in real ed usare l'aritmetica relativa.
kucaio Inserita: 9 luglio 2007 Autore Segnala Inserita: 9 luglio 2007 Grazie provero' ad usare i tuoi consigli poi ti faccio sapere,Il riferimento di velocità mi serve per capire la velocità del a cui stà andando il traino.S= V x tper sdapere la velocità uso il riferimento di velocità poi lo moltiplico per il tempo di ciclo e trovo lo spazio percorso nel temop di ciclo.Ciao e grazie.
tavazzi Inserita: 9 luglio 2007 Segnala Inserita: 9 luglio 2007 A prescindere da tutto, 16384 e' il massimo valore intero positivo per una variable INT, mi pare. Non sarebbe anche il caso di cambiare tipo di variabile ?
Livio Orsini Inserita: 9 luglio 2007 Segnala Inserita: 9 luglio 2007 x tavazzile variabili intere di microwin rispondono allo standard IEC, quini valgono da -32768 a +32767 se con segono o 65535 se senza segno.x cukaioOra è più chiaro! quindi la tua è una stima dello spazio percorso che si basa sul riferimento di velocità, supponendo che la velocità reale sia eguale al riferimento impostato.A maggior ragione è conveniente usare un timer basato sull'interrpt, così almeno la misura del tempo trascorso è reale.Poi usando i numeri reali apprezzi anche le piccolissime variazioni che, integrate nel tempo, ti danno una misura un poco meno imprecisa.I
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