Absalon, che dire, ben venuto e buona permanenza su VR.
Ok. ora Bando alle ciance e mettiti a lavorare
Salve a tutti,
volevo salutare innanzitutto l'amico absalon e fargli un in bocca al lupo per l'esame.
Volevo condividere con voi un ragionamento che mi permetterebbe poi di definire la curva dei tempi di ritardo in base a quanto scritto dall'amico Andrea.
Allora prendiamo come riferimento il motore che gira a 250 giri/min.
Abbiamo che 250/60=4,16 giri/sec.
Se il motore compie 4,16 giri/sec, 1 giro lo compirebbe in 1/4,16=240 msec.
In 240 msec compie un giro e quindi 360°.
Se devo ritardare, come da curva di Andrea, di 3 gradi il punto di accensione rispetto al punto di posizionamento del pickup, avrei che 240msec:360°=Xmsec:363° da cui ottengo 2msec di ritardo dell'accensione dopo aver rilevato il segnale del pickup.
Il tutto va calcolato poi in funzione del numero di giri e del ritardo che si vuole a quel numero di giri.
Vol, pensaci un pò a fammi sapere.
Grazie
La vita senza una Vespa è come una miscela al 5%…............. solo tanto fumo.
Il tuo conto non fa una piega. Il passo successivo e' quello di trasformare il tempo in cicli di clock del micro.
La mia idea era quella di partire da un foglio excel, con due colonne, una che riguarda il numero di giri, l'altra che ha i valori di ritardo rispetto al segnale del pickup(ma definendo la posizione iniziale dello statore, detto anche anticipo statico si puo' lavorare con i gradi di anticipo), si puo' fare in modo che con opportune formule(vedi quelle che hai gia individuato), sapendo il periodo del clock del micro il file excel calcola direttamente la tabella di equivalenza e anche la mappa da inserire nella memoria. Al massimo serve qualche riga di codice per convertire un file csv in un file bin o hex.
Vol.
minchia ragazzi fate pauuuuraaaa !!
Groelandese arcaico.
Attenzione che lo schema che caricato probabilmente va modificato. Ieri sera ho fatto delle misure sulla bobina, ha una resistenza verso massa di 480 ohm. Cosi com'e' non puo' funzionare. Si deve "bufferizzare" l'uscita con un Op Amp in configurazione buffer. Se riesco questa sera faccio delle prove e domani carico la versione modificata.
Ciao,
Vol.
Sto seguendo con interesse tutto il thread.
Una domanda: avete tenuto conto/terrete conto (oltre ai ritardi che VOLETE introdurre) del ritardo che il PIC ha nell' eseguire l' elaborazione?
Ritardo che è comunque fisso a prescindere da quanto ritardo metterà a ciascun numero di giri.
e' per quello si deve tener conto anche del ritardo introdotto dai comparatori, ma finche non e' tutto assemblato non si puo' misurare. Anche se penso che il ritardo totale a 11000 giri non sara' maggiore di un quarto di grado. Tieni conto che a 14000 giri, un quarto di grado corrispondono a 4 microsecondi. i comparatori peseranno per qualche centinaio di nano secondi ed il micro tanto quanto.
Vol.
Ottimo il ragionamento non fa una piega.
Per semplificare darei la seguente formula (non sono un matematico)
Ritardo dal segnale del pikup=(60/RPM/360)*x°*1000[ms]
dove:
RPM= regime in giri/minuto
x°= gradi di ritardo rispetto ai gradi di anticipo fisso impostati sullo statore.
Se volete posso aggiornare il file excel che ho postato in precedenza aggiungendo anche il ritardo in ms rispetto al segnale del pikup oltre a quello già presente rispetto al PMS.
Andrea
Seguo con attenzione...
Finalmente un centralina seria
Io posso studiare un alloggiamento con adattamento all'impianto elettrico. Non prima che sia disponibile il primo prototipo.
ciao Vol,
ho elaborato questo foglio excel, al quale ho allegato anche quello dell'amico Andrea, per la visualizzazione della curva e del calcolo dei tempi di ritardo in funzione dei gradi di ritardo voluti rispetto all'anticipo fisso.
Una cosa che avrei bisogno di chiarire è questa:
Il PIC dovrebbe completare tutte le istruzioni in 4 cicli di clock con il quarzo da 4 Mhz. Detto questo i valori dei tempi da considerare vanno moltiplicati o divisi per 4?
Faccio un esempio, per 3500 giri/min il ritardo dovrenne essere 85 microsec.
Nel software bisogna mettere 85/4 oppure 85*4 ?
Grazie
La vita senza una Vespa è come una miscela al 5%…............. solo tanto fumo.
Non mi e' chiaro quello che intendi. Se hai un clock a 4 MHz, un ciclo di clock e' pari a 250ns. quindi per ottenere un ritardo di 85us devi contare
85u/250n che viene 340 cicli di clock.
Per contare questi 340 cicli di clock usi un timer. Non capsico dove entrano in gioco i 4 cilci di clock.
Vol.
Allora Vol,
se non ho capito male dal datasheet, la frequenza dell'oscillatore esterno viene presa divisa per 4 se il bit T0CS del opticon register è messo a 1.
Questo avviene nel TIMER0 prima del prescaler.
Questo dovrebbe significare che ogni 4 cicli di clock in TIMER0 incrementa di un passo il program counter. Il PIC dunque esegue un'istruzione ogni 4 cicli di clock.
La vita senza una Vespa è come una miscela al 5%…............. solo tanto fumo.
e poi ogni volta che partiamo è come se uscissimo dalla realtà..è come se lasciassimo tutto, le preoccupazioni, i problemi..Dal momento che partiamo è come se ci fossimo solo noi e il nostro viaggio, la nostra avventura..[La Muri] & VespaValeria
Ottimo lavoro, ma (non per fare lo spacca maroni) sarebbe bello poter definire per ogni regime i gradi di anticipo desiderati, scegliere il valore dell'anticipo statico poi far si che il foglio di calcolo, calcoli il ritardo in ms necessario per ottenere quel determinato anticipo dinamico.
Non so se mi sono spiegato.
Ciao,
Vol.
Allora, io non mastico piu di tanto i micro, ma il program counter dovrebbe scandire le istruzioni del micro, quindi non penso che il timer vada ad aggiornare il program counter.
Comuque adesso mi e' comunque piu chiara la tua domanda. Se il timer e' programmato per funzionare con il clock del micro diviso 4 allora il timer funziona a 1 MHz. Cio' significa che il timer si aggiorna ogni 1us. Quindi se vuoi misurare 85us, devi solo contare fino a 85.
Nel dubbio aspettiamo absalon.
Ciao.
Ho aggiornato lo schema dell'interfaccia.
Non ho ancora avuto tempo di costruirla, ma mi sono procurato tutti i componenti.
Vol.