StingyJack Inserito: 10 febbraio 2006 Segnala Share Inserito: 10 febbraio 2006 Quale è il miglior modo per testare la prestazione di velocità di calcolo di una CPU? In particolare per poter confrotare PLC della stessa classe ad esempio Siemens S7 400 con ControlLogix e con Schneider Modicon Quantum?Pensavo su operazioni di loop per accesso a puntatori...che ne dite? grazie anticipatamente a chi parteciperà alla discusione Link al commento Condividi su altri siti More sharing options...
Piero Azzoni Inserita: 10 febbraio 2006 Segnala Share Inserita: 10 febbraio 2006 sarebbe come dire:"il modo migliore per testare la diversa velocita' di due auto e' in un rettilineo libero lungo almeno 10 km"e dopo aver fatto questa prova selezionando accuratamente l'auto piu' veloce partecipare con questa ad una corsa su uno sterrato di montagna -----------------------------------------------------se non sono stato sufficentemente chiaro la velocita' pura su un puntatore e' uno dei tanti parametri, su certe applicazioni e' significativo su altre assolutamente no Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 10 febbraio 2006 Segnala Share Inserita: 10 febbraio 2006 Ogni costruttore prevede, sul manuale della CPU, una tabella dove riporta i vari tempi di esecuzione delle istruzioni. Basta confrontare questi tempi e si ha un'idea di dove una CPU è più rapida dell'altra. Confrontando PLC della medesima classe è difficile trovare modello che sia più veloce su tutti i tipi di istruzione. C'è chi risolve più velocemente le booleane, chi le aritmetiche, chi l'accesso alla memoria, etc. Link al commento Condividi su altri siti More sharing options...
Lorenzo B Inserita: 11 febbraio 2006 Segnala Share Inserita: 11 febbraio 2006 Ciao a tutti, Pero' posso chiedere al PLC di dirmi quante scansioni sta' eseguendo in quel momento.In un intervento precedente ho menzionato come fare con KERNEL, ma il medesimo sistema l'ho usato con tutti gli altri PLC. [http://www.plcforum.it/forums/index.php?showtopic=19640&view=getnewpost];;...... scrivevo ....Poi aggiungo un temporizzatore di un secondo, che ricomincia su se' stesso. E ad ogni giro di programma (ogni scansione di esecuzione) incrementa una Word (DATA_100). Ogni secondo salvo il numero delle scansioni effettuate in DATA_101, e azzero il conteggio. [come puoi vedere sotto];;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;LBL CONTASCANSIONILD_NOT TIM_00TIM 00,#100 ;UN SECONDO; il temporizzatore_00 ricomincia su se stessoLD_NOT TIM_00INC DATA_100; ; tutte le scansioni incremento il data di 1LD TIM_00MOV DATA_100,DATA_101; MOV #000,DATA_100; ; in una scansione il temporizzatore_00 si accendera' ; e quindi salvo il data in un altro ed azzero;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Se mando i due DATA_xxx a Video DLC o con il programma DEBUG in On-Line, in DATA_100 vedo la progressione delle scansioni in DATA_101 vedo le scansioni che ha eseguito in quel secondo di tempo appena trascorso.Ciao Lorenzo B. Link al commento Condividi su altri siti More sharing options...
Piero Azzoni Inserita: 11 febbraio 2006 Segnala Share Inserita: 11 febbraio 2006 non e' necessario quasi mai scrivere qualcosai vari software di programmazione di dicono gia' quale e' il tempo completo del ciclo Link al commento Condividi su altri siti More sharing options...
irpick Inserita: 11 febbraio 2006 Segnala Share Inserita: 11 febbraio 2006 Quale è il miglior modo per testare la prestazione di velocità di calcolo di una CPU?Leggere i manuali.I PLC da te menzionati hanno funzionalità diverse,quindi l'analisi andrebbe fatta in altro modo. Link al commento Condividi su altri siti More sharing options...
Lorenzo B Inserita: 12 febbraio 2006 Segnala Share Inserita: 12 febbraio 2006 (modificato) Ciao .... a tutti, prima fai il calcolo teorico sui manuali, ... ti spiegano che ... il software ti dice che ....... e poi quando arrivi a far funzionare il tutto trovi le sorprese .....Ciao Lorenzo B. Modificato: 12 febbraio 2006 da Lorenzo B Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 12 febbraio 2006 Segnala Share Inserita: 12 febbraio 2006 Se vuoi sapere in quanto tempo il PLC risolve un particolare blocco senza apprezzabili errori di misura puoi usare il metodo seguente.Inizio blocco: scrivi direttamente un valore alto su di un'uscita senza ritardo come, ad esempio un'uscita analogica, oppure se il pLC ne è dotato un'uscita veloce come quelle per PWM.Fine blocco: scrivi direttamente un valore basso sulla medesima uscita.Fai girare il programma e, con un oscilloscopio, misuri il tempo in cui l'uscita sta alta. E' l'unico metodo che conosco che non sia affetto da errori apprezzabili. Con tutti i metodi che si basano sulle misure del tempo effettuate o dalla CPU o dal PC di sviluppo, c'è sempre un errore di misura Link al commento Condividi su altri siti More sharing options...
BIT77 Inserita: 15 febbraio 2006 Segnala Share Inserita: 15 febbraio 2006 Sarò banale..ma la cosa migliore é leggere i manuali proprio perchè ogni CPU ha caratteristiche diverse (prezzo compreso) quindi valuta cosa devi scriverci sopra (la CPU)e decidi in base a quello..Insomma la ferrari é velocissima ma se devo fare un trasloco é meglio un furgone no? Link al commento Condividi su altri siti More sharing options...
walterword Inserita: 17 febbraio 2006 Segnala Share Inserita: 17 febbraio 2006 (modificato) cpu siemens S7-300/400In OB1 esiste una tendina , che se la espandi ti mette a disposizione delle variabili locali con amche le varie descrizioni Una di queste variabili ti dice in millisecondi , l'ultimo tempo del ciclo di scansione Viene usato per valutare alcune procedure quando si deve gestire qualcosa di sincrono e preciso , e quindi essendo il tempo di scansione variabile ad ogni ciclo , dovuto alla comunicazione ma anche alla comunicazione col pg che viene sempre sottovalutata.Poi in dignostica , stato dell'unita , tempo di ciclo ti viene detto il tempo dell'ultimo ciclo , il piu lungo ed il piu corto ciaop.s. come ti viene detto da livio e' il modo piu preciso e professionale Modificato: 17 febbraio 2006 da walterword Link al commento Condividi su altri siti More sharing options...
StingyJack Inserita: 25 febbraio 2006 Autore Segnala Share Inserita: 25 febbraio 2006 Ringrazio tutti per le risposte...nella mia domani era sottointeso che poi la scelta dipenda dal tipo di applicazione (scusate se non sono stato chiaro in merito...).per quel che concerne i manuali sono d'accordo sul consultarli per avere una risposta (come tutti facciamo) ...c'è sempre da tenere in considerazione che comunque i manuali o i datasheet sui quali basarsi in prima istanza nella scelta della CPU per la tal applicazione hanno alle spalle uno spirito commerciale che li anima e quindi.....ci siamo capiti...in questa affermazione mi trovo d'accordo con Lorenzo B nel messaggio del 12-02-2006..ed allora scusate qualcuno sa come viene effettuato il test che imputa la velocità di esecuzione di un'operazione booleana o aritmetica poi riportato a catalogo.....? ..per capirci meglio per fare delle misure che forniscono risultati per le prestazioni di un prodotto o di un componente esistono delle Normative o Regole che danno l'attendibilità del risultato riportato secondo precise condizioni...dove si possono consultare tali informazioni?...dove è possibile consultare il testo completo delle IEC61131-2 e IEC61131-4 in formato elettronico....?Grazie Link al commento Condividi su altri siti More sharing options...
Lorenzo B Inserita: 28 febbraio 2006 Segnala Share Inserita: 28 febbraio 2006 Ciao a tutti.e ciao a StingyJack.Se ti puo' essere utile (e' di alcuni anni fa') sulle normative che ho, c'e' scritto:CEI comitato elettrotecnicoCNR consiglio nazionale delle ricercheAEI associazione elettrotecnica ed elettronica italiana NORMA ITALIANA CEI CEI EN 61131 Controllori Programmabiliparte 1 - Informazioni generaliparte 2 - Specificazioni e prove delle apparecchiatureparte 3 - Linguaggi di programmazioneparte 4 - Raccomandazioni per l'utilizzatoreparte 5 - Specificazione di servizio di comunicazioneSede del punto di Vendita e di Consultazione 20126 MILANO - Via Monza, 261tel 0225773.1fax 0225773.222e-mail cei[at]ceiuni.itSono normative e ti danno l'indicazione o la raccomandazione che certe cose dovrebbero essere fatte cosi'. (...) L'unico sistema sicuro che abbiamo utilizzato quando abbiamo provato i temporizzatori millesimali (su porzioni di programma ... cioe' decine o centinaia di singole istruzioni, comprensivo della porzione di sistema operativo di base, e non su istruzioni singole) e' stato quello di prendere un oscilloscopio e di controllare un ingresso e un'uscita, oppure un'accensione e uno spegnimento di un'uscita. Molto simile a quello descritto da Livio.Con KERNEL puoi anche rinfrescare delle uscite in qualsiasi momento del programma o della subroutine, e quindi accenderle e spegnerle a piacimento. (Comando RFSH_OUT)Penso che sui manuali dei PLC sia scritto il calcolo puramente teorico, contando i cicli macchina del microprocessore per eseguire nell'insieme le singole operazioni. Lorenzo B. 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