O madonna quanto scrivete... a tutte le ore:
00:03 (il mio ultimo messaggio di ieri notte, anzi per voi sera !)
00:38 Kekko
02:57 Elettro
04:11 Bolle
04:39 Bolle
05:30 Bolle
06:36 Elettro
07:16 Inverter90
08:03 Bolle
08:11 Elettro
08:15 Bolle
08:43 Bolle
09:00 Elettro
...
E questo praticamente di notte !!!
Perdonatemi ma non credo di riuscire a raggiungere i vostri livelli...
Vediamo di rispondere a qualche post...
Quote:... gli Atmel hanno delle tabelle di priorità ...
Speravo in qualcosa del genere e vederla scritta mi fa pensare solo una cosa: FANTASTICO !!!
Grazie per la condivisione, le mie vedute e le mie idee continuano ad allargarsi...
Quote:Ricordiamo che già il codice di BellaEli sfrutta la possibilità di calcolo in più step, alzando una flag alla fine del calcolo, quindi nel confronto con un eventuale codice "Caotico" potremo recuperare 60microS nell'eventualità il calcolo termini a fine interrupt.
Nel mio codice viene accettato il nuovo vettore solo in presenza di due condizioni:
- Il flag è True (quindi il calcolo è completato);
- L'indice è a 0, cioè siamo all'inizio della semisinusoide positiva.
Ciò è fatto per un motivo preciso:
se parto con un nuovo vettore quando l'indice è 0 non introduco alcuna distorsione nell'onda, riesco a variare l'ampiezza e/o la frequenza senza distorcere l'onda stessa.
Per me distorcere vuol dire aggiungere armoniche e io non le voglio (almeno per ora...) !!!
Quindi tra una variazione e la successiva, per il momento, passano 20 mS.
Si può facilmente abbassare questo tempo a 10 ms, accettando il nuovo vettore anche con l'indice a 160, ma per il momento abbiamo altre priorità .
Quando affronteremo il discorso del feedback sicuramente saremo costretti a rivedere parecchie cose, tra cui queste !
Quindi Elettro, confrontando il mio codice con un eventuale codice caotico si potrebbero recuperare fino a 20 ms, accettando di distorcere l'onda... ma lo vediamo successivamente.
Quote:ma l'hardware è pronto per nuovi test (magari se vi adattate al mio PinOut)
Guardando velocemente mi sembra che usi lo stesso i Pin 9 e 10 per il PWM quindi sei già a posto (anche perchè essendo legati al Timer 1 dovrei chiamare l'Atmel per farli cambiare !!!), per la quadra, invece, non ci sono problemi, basta cambiarli nelle #define Quadra_1 e Quadra_2.
Comunque le tue schede sono FANTASTICHE, ordinate, piccole, dalle foto sono perfette: COMPLIMENTI !!!!
Quote:Non ho il compilatore, sto andando alla cieca, quindi non so se compila
Eccolo:
http://downloads.arduino.cc/arduino-1.6.3-windows.exe (~ 73 MB) Quote:ma se mi concedi di effettuare altre piccolissime varianti al tuo codice (ovviamente descrivendo anche le motivazioni)
Ma ci mancherebbe, certo che puoi e può chiunque abbia una idea che può migliorarlo !!!
Quote:Cmq visto dalla simulazione apparentemente sembra alto, probabilmente si può scendere e la precisione rimarrà praticamente la stessa. Non hai anche tu la stessa sensazione?
A parte che quel valore è legato alla frequenza del PWM e al tempo di campionamento, personalmente scenderei solo se quel valore mi porta qualche svantaggio.
Mi spiego: se scendiamo di sicuro perdiamo in precisione, se lo lasciamo com'è che svantaggi abbiamo ?
A parte il discorso perdite io non ne vedo...
Vettore più lungo ? Al momento siamo lontanissimi dal limite...
Rallentamenti di esecuzione ? Nessuno visto che ci pensa il Timer 1
L'unica potrebbe essere maggior tempo per ricalcolo del vettore ma mi sembra troppo poco per diminuire il 160...
Quote:continuo a vedere il mio intervento come fondazioni esterne al progetto...se e sempre se la struttura traballasse sarà tutto pronto per inserire un ulteriore trave di sostegno!
Beh se parliamo di "Caotico" vs "Timer" direi che un paragone più azzeccato sarebbe stato: ... traballasse sarà tutto pronto per utilizzare delle nuove fondazioni !
Quote:...se l'universo procede in modo caotico...ci sarà pure un motivo!
Il Quarzo, i Timer: con i micro non proprio tutto è caotico...
Quote:PS:Per lo svolgimento io propongo una cosa, il capo del progetto sarà BellaEli, tutti gli altri possono scannarsi, dire quello che vogliono...ma l'ultima decisione spetta a lui. Accendiamo anche questa seconda lampadina?
Questa è la cosa più bella che mi è capitata questa giornata:
ACCETTO !!!Mi occuperò di inserire i vari pezzi di codice che man mano verranno fuori, cercando di mantenere il codice pulito e comprensibile.
L'unica cosa che vi chiedo è di utilizzare un algoritmo "caotico" nei miei confronti, nel senso che implementerò le modifiche secondo gli impegni familiari e lavorativi...
Quote:Allego il file D...
Se Eli mi da l'ok effettuo altre inavvertibili varianti...
Vai tranquillo, tanto ti darò parere negativo !!!
Scherzo ovviamente, certo che puoi, fai tutto ciò che ritieni necessario e (se mi piace
) lo implementerò...
Per il codice che hai postato lo inserirò appena mi riesce, secondo l'ordine "caotico"
Quote:Discussione nuova o si prosegue su questa ?
Se vuoi aprire una discussione nuova devi trasferire almeno le ultime 30 pagine di topic (a occhio) e togliere ciò che non c'entra...
Altrimenti proseguiamo e alla fine del progetto postiamo il definitivo su una duscussione a se.
Quote:Gli indici, e cioè i valori di PWM per creare la sinusoide ce li fornisce in tempo istantaneo (costantemente e svincolati dal tempo che scorre) la nostra rete elettrica .....
Piccolo O.T.
Hai una capacità di pubblicizzare le tue idee che, forse, è superiore alle tua stessa preparazione !!!
Ma di mestiere fai il commerciale ?!?
Riesci quasi a incantarmi con i tuoi post che mi fai perdere di lucidità ...
Tornando a noi, mi piace la tua idea, tuttavia alzo alcuni dubbi:
1) Riesce l'ADC a campionare ogni (16.000.000 / 128) 8 microS ???
In un precedente post, Elettro ha affermato di non essere riuscito a scendere sotto i 250 microS, forse ha utilizzato le impostazioni standard di Arduino, ma 8 microS sembrano davvero pochi...
2) Prima di mandare l'onda Enel sull'ADC suppongo che la filtri adeguatametne, tuttavia continuo a nutrire perplessità sulla sua "pulizia"...
Voglio dire che quel segnale che va a finire sull'ADC proviene da una linea su cui ci può essere agganciata ogni tipo di apparecchiatura, dalla piccola lampadina al grande motore di un impianto industriale.
L'onda potrebbe essere distorta, sporca, non simmetrica.
Utilizzare come riferimento un'onda di cui non si ha certezza del contenuto mi sembra come se dovessi realizzare un orologio con un oscillatore RC !
Ricordo che a casa dei miei suoceri, prima che l'Enel cambiasse la linea che alimentava la sua zona, la tensione media a casa era tra i 160 e i 180 V (andava tutto più piano, fare un buco con il trapano impiegava il doppio del tempo !!!) ed erano evidenti i cambi di luminosità delle lampadine quando partiva il pozzo del vicino...
Come si comporterebbe la tua soluzione in tali circostanze ?
Per quanto riguarda messa in fase, frequenza e algoritmo caotico nulla da dire: semplice, efficace, preciso, dinamico, istantaneo...
A presto, Eligio.