Go Down

Topic: [OT] richiesta di aiuto per programmino x Accordatore (Read 79595 times) previous topic - next topic

leo72


Campa1957

x Leo72

Quote

Dimmi se funziona e se fa cosa dovrebbe. Se vuoi usare 8 induttori, possiamo invertire i pin usati, quello non è un problema. 


mi era sfuggita questa parte del tuo messaggio, l'deale sarebbe 8L+8C oppure anche 7+7 però se la cosa incasina particolarmente il lavoro, non c'è probema, andiamo avanti così.
Sempre ricordando che oltre alle uscite L e C ci deve essere una uscita per la selezione di dove inserire i condensatori e una uscita che segnala il raggiungimento dell'accordo, direi, Led fisso valore di ROS ottenuto, Led lampeggiante veloce valore di ROS non raggiunto,e Led lampeggiante lento durante le prove di accordo.

Campa1957

testato

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

menniti


x iscrizione


Test, una domanda seria, ho imparato anchio ad usare i replies, almeno in prima battuta o quando ho poco tempo, ora però ci sono dei Topic verso i quali nel tempo ho perso interesse, attualmente li lascio per ultimi e poi li segno come già letti, sai se c'è un modo per non farli più uscire? Ovviamente non voglio eliminare tutti i miei post in questi Topic, non sarebb nemeno corretto.
Manuale "Arduino e le tecniche di programmazione dei microcontrollori ATMEL"
http://www.michelemenniti.it/manuale_di_programmazione.html
http://www.michelemenniti.it/offerta.html
Articoli ElettronicaIN
http://www.michelemenniti.it/elettronica_in.html

Campa1957

Ciao Michele,

spero tu non abbia perso interesse verso questo Topic  :)  :)  :)

salutoni

Campa1957

leo72

@campa:
oggi sono a lavoro, vedrò se ho del tempo libero di darci un'occhiata.

leo72

PS:
mi sono accorto che lo sketch che ti ho allegato per ultimo non è la versione 1.2 ma nuovamente la 1.0  :smiley-eek:


Vabbè, comunque, ora lo rivedo e poi te lo ripasso.

Campa1957

#157
Aug 04, 2013, 06:50 am Last Edit: Aug 04, 2013, 07:21 am by Campa1957 Reason: 1
Un piccolo chiarimento,
- il PRG si avvia per un valore di ROS superiore ad una soglia pre impostata ???
- Il PRG si ferma per il raggiungimento del miglior valore possibile di ROS oppure per aver raggiunto il valore di soglia pre impostato ???

- per la prima domanda penso di essere sicuro che il ciclo inizi se il calcolo fatto con la prima lettura è maggiore del valore impostato.
- per la seconda domanda, a mio avviso, il PRG dovrebbe sempre cercare il miglior valore di ROS, fermasi dopo i vari tentativi lasciando inserite tutte le uscite che ha inserito nei suoi calcoli, e con il Led che abbiamo inserito in questa ultima parte di lavoro segnalare accordato non accordato.

leo72

L'ultima versione (che tu non hai) faceva una lettura prima di avviare l'accordatura: se il ROS era giusto ovviamente non avviava la procedura.

Ah, stavo rifacendo i conti dei pin. Li abbiamo finiti e resta fuori qualcosa.. 8+8 per condensatori e induttori, poi 2 analogici per le letture, poi 1 led, poi un'uscita ed un pulsante. 21 in tutto su 20 disponibili.
O si elimina il pulsante oppure devi rivedere lo schema ed usare magari una coppia di ULN2803 comandati da una coppia di 74HC595.

Campa1957

#159
Aug 04, 2013, 07:49 am Last Edit: Aug 04, 2013, 08:13 am by Campa1957 Reason: 1
Quote

O si elimina il pulsante oppure devi rivedere lo schema ed usare magari una coppia di ULN2803 comandati da una coppia di 74HC595.


Direi di eliminare il pulsante, comunque i 2803 li ho già usati anche in questo schema per i 74HC595 se servono posso studiare il loro funzionamento, sicuramente il loro utilizzo potrebbe pormettere futuri sviluppi "futuribili" di questo progetto, (vedi un cambio banda utomatico).
Se rititeni che il loro utilizzo non complichi troppo la parte SW, per me andrebbe bene.

La cosa potrebbe funzionare così:
1) partenza all'accensione o al reset, senza nessun pulsante di start
2) calcolo della "L"
3) calcolo su dove inserire "C"
4) calcolo della "C"
5) temporizzazione se in un numero definito di secondi non accorda si ferma, Led lampeggia veloce, lascia inserite tutte le uscite comunque per il miglior ROS, in questa condizione non è arrivato all'accordo ma la situazione per il TX è sicuramente meglio di prima!
6) se il ROS varia, possono essere vari i motivi, compreso un cambio banda, si riparte dall'inizio. Questo lo deve fare sempre!

Campa1957

leo72


Campa1957

Ho aggiornato il mio post precedente mentre tu mi chiedevi lumi per il punto 3

Quote

Spiega il punto 3... smiley-wink

Finito il giro "L", si deve inserire il primo scalino "C", una volta inserito bisogna verificare se inserirlo all'inizio o alla fine della catena delle "L" ovvero, leggere il ROS nel primo punto di inserimento, attivare l'uscita in più per vedere se collegando lo stesso condensatore sul capo opposto della catena "L" il valore migliora, se migliora si lascia l'uscita alta se invece peggiore si riporta bassa l'uscita. Al termine di questa verifica si fà il giro dei "C" come per le "L" sempre con l'intento di raggiungre il miglior valore di ROS possibile.

Come detto nel mio precedente post se si rispsrmiano un po di uscite potrebbe essere utile per un "futuribile" ampliamento del progetto.

grazie

Campa1957

leo72

Dimmi come va.
Ripeto, sempre programma NON testato (sono a lavoro per cui non ho Arduini sottomano neanche per una simulazione sulla seriale). Però se hai da fare delle modifiche, puoi farle anche tu, ora. Il codice è abbastanza commentato. Ho messo tutti i pin in 2 array. Ah, ho rivisto anche la piedinatura del circuito, che è all'inizio dello sketch. Se vuoi cambiare qualcosa, basta farlo nelle dichiarazioni dei pin.

leo72

Non mi è chiaro se durante il test degli induttori e poi dei condensatori tutti i relé debbano essere disattivati. Io così ho fatto, se non ti sta bene, c'è una semplice modifica da fare, che consiste nel togliere la parte che azzera le variabili induttori e condensatori nella funzione checkAntenna.

Campa1957

1) all'avvio tutti i relè devono essere disattivati.
2) fatto il primo giro dei relè "L" tutti i relè il cui inserimento ha prodotto un abbassamento del valore del ROS devono rimanere attivati
3) dopo aver attivato il primo condensatore fa la verivica su dove inserire i condensatori e se necessario lascia inserito il relè di scelta
4) riparte da capo con il giro dei relè "C" e alla fine lascia inseriti i relè del giro "C" che hanno contribuito ad abbassare ulteriormente il valore di ROS
5) il Led in queste fasi potrebbe lampeggiare 'piano' in fase di accordatura, 'veloce' se il valore finale è superiore al valore stabilito inizialmente, 'fisso' se accordo è OK
6) sia il giro "L" che il giro "C" dovrebbero fermarsi indipendentemente dal valore raggiunto, ma comunque al miglior valore di ROS possibile.
7) la verifica del valore del ROS deve sempre essere eseguita anche quando la procedura di accordo, buono o meno che sia, è terminata. Ad un repentino cambio di valore del ROS si deve ripartire dal punto 1), dal TX si potrebbe aver fatto un cambio banda che deve portare alla ricerca di un nuovo punto di accordo.

Adesso provo il tuo sketch e ti faccio sapere.

Campa1957

Go Up