BaroneRosso.it - Forum Modellismo

BaroneRosso.it - Forum Modellismo (https://www.baronerosso.it/forum/)
-   Circuiti Elettronici (https://www.baronerosso.it/forum/circuiti-elettronici/)
-   -   Sommatore invertente -problemi- (https://www.baronerosso.it/forum/circuiti-elettronici/350633-sommatore-invertente-problemi.html)

faustog_2 16 dicembre 15 21:00

Sommatore invertente -problemi-
 
1 Allegato/i
buona sera,

ogni tanto con Arduino faccio qualcosa di interessante, mi auguro!
dunque tempo fa mi sono costruito un software per arduino che sfrutta il timer1 per la cattura e la misura di segnali digitali, in questo caso mi volevo convogliare i 4 pin dei segnali di una ricevente, seguendo i consigli di questo forum, ho impastato un circuito che tranquillamente non funzionava!

detto questo mi sono detto ma perchè non usare un integrato già pronto che magari mi permette di semplificare le cose e che funzioni?

Bene ho usato un uA741 sfruttandolo come sommatore invertente, tanto a me interessa leggere la durata dei segnali se poi esso è invertito o meno non importa !!

bene anche con questo, tranquillamente non funziona!

dunque sono una frana in elettronica, però nonostante tutto volevo confrontarmi con voi. In attach vi invio lo schema che ho adottato usando resistenze da 1k ohm pare che nel caso invertente (il più semplice) basta usare resistenze uguali tra Rf e Rn

Ho fatto la prova anche con resistenze d 10 k ohm,
Ho fatto la prova anche ad usare lo schema non invertente anche se le resistenze vanno calcolate con più attenzione .

Grazie per eventuali vostre idee

romoloman 17 dicembre 15 13:02

Sai che non ho capito che cosa vuoi fare ?
Primo: i segnali sono sincroni (ovvero tutti con lo stesso inizio) oppure sono asincroni ?) Se sono asincroni non funzionerà mai...

Come faccia un sommatore a darti una durata lo sa solo Dio, a meno che tu non lo usi in funzione di integratore ed allora dato un segnale l'integratore ti da un valore che è mediamente proporzionale alla sua durata media.

Perché il circuito con arduino non funzioni non lo so, ma normalmente beccare le durate di un segnale ppm con arduino è più che fattibile quindi il problema è nel codice.
Rimane sempre il problema di come hai fatto il circuito e se i segnali sono asincroni o sincroni (in questo caso sarebbe meglio fossero asincroni). A quel punto vai su un solo pin (tipicamente il 2 o il tre che hanno la possibilità di gestire l'external interrupt) con 4 bei diodi che ti portano il segnale e risolvi così... (il verso dei diodi dipende dalla logica del segnale, attivo alto o attivo basso)

FPVxfun 17 dicembre 15 15:05

anche a me sembra che:
- siano state mixate 2 diverse richieste apparentemente non correlate
- sia stata fatta molto confusione

Unica nota che mi sento di darti è che, quello che non si evince dal tuo schemino è la necessità di avere una tensione di alimentazione duale sull'amplificatore operazionale.

A che cosa ti serve l'amplificatore invertente?

Archi 18 dicembre 15 11:34

Da quel poco che ho capito, sta cercando di convertire 4 normali uscite di una ricevente in un'uscita seriale PPM, in modo tale da convogliare 4 canali su un unico ingresso dell'Arduino.

Il primo problema è capire se i segnali della ricevente siano o meno sincroni, se non lo sono, la cosa è abbastanza fattibile con una rete di buffer, altrimenti serve una circuiteria molto più sofisticata.

Per quel che riguarda il sommatore invertente, non è così semplice. All'operazionale serve l'alimentazione duale, però se gliela dai poi esce con tensione negativa e questo potrebbe non piacere molto all'arduino.

Direi che la strada degli operazionali non è quella buona.

Ciao.

FPVxfun 18 dicembre 15 11:40

Citazione:

Originalmente inviato da Archi (Messaggio 4798235)
Da quel poco che ho capito, sta cercando di convertire 4 normali uscite di una ricevente in un'uscita seriale PPM, in modo tale da convogliare 4 canali su un unico ingresso dell'Arduino.

Il primo problema è capire se i segnali della ricevente siano o meno sincroni, se non lo sono, la cosa è abbastanza fattibile con una rete di buffer, altrimenti serve una circuiteria molto più sofisticata.

Per quel che riguarda il sommatore invertente, non è così semplice. All'operazionale serve l'alimentazione duale, però se gliela dai poi esce con tensione negativa e questo potrebbe non piacere molto all'arduino.

Direi che la strada degli operazionali non è quella buona.

Ciao.


Se è veramente come dici, sono d'accordo con te. Gli operazionali configurati in quel modo lavorano in analogico, non in digitale, come le uscite della rx, con tutte le non-idealità che ci si porta dietro.

Volendo serializzare le uscite della rx in PPM esistono già moduli di basso costo: inutile inventare quello che c'è già e costa poco.

RMILEC High-Precision PWM/PPM/SBus Signal Converter V2

questa è la versione DIY fatta con Arduino:

DIY PWM to PPM Converter for 2.4GHz Receiver using Arduino - OscarLiang.net

romoloman 19 dicembre 15 00:18

Citazione:

Originalmente inviato da FPVxfun (Messaggio 4798240)
Se è veramente come dici, sono d'accordo con te. Gli operazionali configurati in quel modo lavorano in analogico, non in digitale, come le uscite della rx, con tutte le non-idealità che ci si porta dietro.

Volendo serializzare le uscite della rx in PPM esistono già moduli di basso costo: inutile inventare quello che c'è già e costa poco.

RMILEC High-Precision PWM/PPM/SBus Signal Converter V2

questa è la versione DIY fatta con Arduino:

DIY PWM to PPM Converter for 2.4GHz Receiver using Arduino - OscarLiang.net

Per serializzare delle uscite asincrone bastano dei diodi...

FPVxfun 21 dicembre 15 12:40

Citazione:

Originalmente inviato da romoloman (Messaggio 4798828)
Per serializzare delle uscite asincrone bastano dei diodi...


si vabbeh, questo è quello che ti insegnano alla prima lezione di elettronica alle scuole superiori. I diodi più resistenza di carico non li ho mai visti impiegati nella pratica perchè sono soggetti ad una molteplicità di effetti indesiderati (impedenza di uscita della sorgente, effetti capacitivi e non idealità dei diodi, ...).

romoloman 21 dicembre 15 15:33

Citazione:

Originalmente inviato da FPVxfun (Messaggio 4800198)
si vabbeh, questo è quello che ti insegnano alla prima lezione di elettronica alle scuole superiori. I diodi più resistenza di carico non li ho mai visti impiegati nella pratica perchè sono soggetti ad una molteplicità di effetti indesiderati (impedenza di uscita della sorgente, effetti capacitivi e non idealità dei diodi, ...).

Veramente li ho visti usare in infinite applicazioni anche militari dove evidentemente si preferisce usare roba più difficile a rompersi e più facile a ritrovarsi...

CarloRoma63 21 dicembre 15 17:46

Citazione:

Originalmente inviato da romoloman (Messaggio 4800350)
Veramente li ho visti usare in infinite applicazioni anche militari dove evidentemente si preferisce usare roba più difficile a rompersi e più facile a ritrovarsi...

Questo risolve http://www.nxp.com/documents/data_sh...F4072B_CNV.pdf, disaccoppiando l'uscita dagli ingressi.

Carlo

Mrk89 21 dicembre 15 18:06

Ragazzi con queste soluzioni (a meno di quella con arduino) non risolverebbe nulla.
Questo perchè il segnale pwm variabile dal 5% al 10% che serve per pilotare il singolo servocomando se ricomposto con diodi/OR/sommatori/resistenze/qualsiasi altra cosa, creerebbe un segnale sempre "on" a meno della finestra di sincronizzazione del segnale PPM, e non il segnale PPM originale.

[IMG]http://api.ning.com/files/WmjViE3faLYy73Ry7eTzn4XMryr8qlAMeb*edCbrzW1BVUPtR1 iXBIGgsS93iG1x5roVRkAWHqg7V3FAhK*o8NYsajr5nW7G/RC_Receiver_Timing_Diagram1.jpg[/IMG]

Per ricreare il segnale PPM bisogna discriminare il fronte di salita di ogni PWM che esce dal canale della ricevente, e mandare alta l'uscita per un periodo di tempo breve minore di 1 ms (400 ms nei ppm in genere), e quindi a parte arduino o qualsiasi micro controllore (che dovrà avere un ingresso dedicato per ogni canale) a componenti discreti e/o integrati la cosa diventa un tantino più impegnativa.
Ora non sono a casa, se vuoi posso disegnarti uno schemino per discriminare i fronti di salita con delle porte logiche nand.

ElNonino 21 dicembre 15 19:37

Citazione:

Originalmente inviato da Mrk89 (Messaggio 4800517)
Ragazzi con queste soluzioni (a meno di quella con arduino) non risolverebbe nulla.
Questo perchè il segnale pwm variabile dal 5% al 10% che serve per pilotare il singolo servocomando se ricomposto con diodi/OR/sommatori/resistenze/qualsiasi altra cosa, creerebbe un segnale sempre "on" a meno della finestra di sincronizzazione del segnale PPM, e non il segnale PPM originale.

[IMG]http://api.ning.com/files/WmjViE3faLYy73Ry7eTzn4XMryr8qlAMeb*edCbrzW1BVUPtR1 iXBIGgsS93iG1x5roVRkAWHqg7V3FAhK*o8NYsajr5nW7G/RC_Receiver_Timing_Diagram1.jpghttp://api.ning.com/files/WmjViE3faLYy73Ry7eTzn4XMryr8qlAMeb*edCbrzW1BVUPtR1 iXBIGgsS93iG1x5roVRkAWHqg7V3FAhK*o8NYsajr5nW7G/RC_Receiver_Timing_Diagram1.jpg[/IMG]

Per ricreare il segnale PPM bisogna discriminare il fronte di salita di ogni PWM che esce dal canale della ricevente, e mandare alta l'uscita per un periodo di tempo breve minore di 1 ms (400 ms nei ppm in genere), e quindi a parte arduino o qualsiasi micro controllore (che dovrà avere un ingresso dedicato per ogni canale) a componenti discreti e/o integrati la cosa diventa un tantino più impegnativa.
Ora non sono a casa, se vuoi posso disegnarti uno schemino per discriminare i fronti di salita con delle porte logiche nand.


Ne sei proprio sicuro sicuro sicuro ?

A me pare che i servocomandi riconoscano la durata del Ton come setpoint (1ms..2ms nominali) e non il deltaT fra i fronti di salita del PPM, quindi se le uscite della Rx sono in sequenza (asincrone) .....

:yeah:

romoloman 21 dicembre 15 21:42

Citazione:

Originalmente inviato da Mrk89 (Messaggio 4800517)
Ragazzi con queste soluzioni (a meno di quella con arduino) non risolverebbe nulla.
Questo perchè il segnale pwm variabile dal 5% al 10% che serve per pilotare il singolo servocomando se ricomposto con diodi/OR/sommatori/resistenze/qualsiasi altra cosa, creerebbe un segnale sempre "on" a meno della finestra di sincronizzazione del segnale PPM, e non il segnale PPM originale.

[IMG]http://api.ning.com/files/WmjViE3faLYy73Ry7eTzn4XMryr8qlAMeb*edCbrzW1BVUPtR1 iXBIGgsS93iG1x5roVRkAWHqg7V3FAhK*o8NYsajr5nW7G/RC_Receiver_Timing_Diagram1.jpg[/IMG]

Per ricreare il segnale PPM bisogna discriminare il fronte di salita di ogni PWM che esce dal canale della ricevente, e mandare alta l'uscita per un periodo di tempo breve minore di 1 ms (400 ms nei ppm in genere), e quindi a parte arduino o qualsiasi micro controllore (che dovrà avere un ingresso dedicato per ogni canale) a componenti discreti e/o integrati la cosa diventa un tantino più impegnativa.
Ora non sono a casa, se vuoi posso disegnarti uno schemino per discriminare i fronti di salita con delle porte logiche nand.

Hai perfettamente ragione in caso di segnale sincrono, ma non di segnale asincrono (pensaci bene e poi dimmi se ho torto...)

La soluzione con arduino inoltre comunque a mio giudizio avrebbe qualche piccolo problema di risoluzione, visto come fa a leggere le singole porte (polling)
Diverso se si usasse qualcosa come una teensy che ha a disposizione 8 interrupt esterni.

ElNonino 21 dicembre 15 22:02

Giusto per..........

esser sicuro, (ne ero certo ma meglio verificare) ho acceso una Rx Spektrum AR9000 ed un Tx MC22 con modulo Spektrum, le uscite dei canali sono asincrone e la variazione degli stick fa variare il Ton, quindi con x diodi ed una resistenza si ricostruisce perfettamente il PPM, volendo esagerare con un paio di schmitt trigger si ricostruisce un segnale perfetto.

Il timing riportato da Mr89 nel mio caso (e credo per il 90% delle Rx) non vale assolutamente.

Se vi fidate bene se no posso pubblicare le schermate del oscilloscopio.

Quali Rx comuni hanno un uscita sincrona ? Credo che solo alcuni flybarless od alcune ECU per multirotori abbiano le uscite sincrone ma non ho condotto prove e quindi non ne sono certo.


:yeah:

ElNonino 21 dicembre 15 22:28

Per la mia filosofia progettuale utilizzare 8 interrupt sincroni non lo vedo molto bene, forse utilizzando anche 8 canali DMA, però....

Non conosco come il teensy gestisca gli interrupt ma penso che abbia una tabella di priorità e comunque debba salvare qualche registro e program counter per ognuno; di certo il determinismo del programma principale non credo venga garantito e si verifichino jitter importanti.

:yeah:

Mrk89 22 dicembre 15 02:20

Ciao elnonino, potrei chiederti il favore di postare uno screen dei segnali? È qualche anno che costruisco circuiti a micro controllore ma poche volte mi è capitato di gestire più canali contemporaneamente.
Ho sempre fatto in quella maniera per radio ppm, pensavo fosse l'unica, non sapevo dell'esistenza di segnali sincroni ed asincroni. Potresti spiegarmi?
Grazie

ElNonino 22 dicembre 15 11:33

A gentile richiesta:

http://win.wallytech.it/public/PPM_SetUp.JPG

http://win.wallytech.it/public/PPM_01.bmp

http://win.wallytech.it/public/PPM_02.bmp

http://win.wallytech.it/public/PPM_03.bmp

http://win.wallytech.it/public/PPM_04.bmp

I tre canali sono collegati a tre uscite della ricevente; probabilmente, come già detto, su alcuni sistemi flybarless le uscite sono sincrone perchè comandate da un microprocessore opportunamente gestito, è utile sugli elicotteri 3D perchè non si ha il ritardo di 3ms..5ms fra il setpoint del primo ed ultimo servocomando del piatto.

:yeah:

ElNonino 22 dicembre 15 12:37

E per finire in bellezza i tre canali sommati con tre 1N4148 ed una resistenza da 15kohm:

http://win.wallytech.it/public/PPM_sum.bmp

:yeah:

romoloman 22 dicembre 15 13:53

Citazione:

Originalmente inviato da ElNonino (Messaggio 4801103)
E per finire in bellezza i tre canali sommati con tre 1N4148 ed una resistenza da 15kohm:

http://win.wallytech.it/public/PPM_sum.bmp

:yeah:

A volte le lezioni che insegnano ad elettronica in prima superiore sono valide :lol::lol::lol::lol:

faso90vr 22 dicembre 15 14:33

Giusto per chiarire sull'operazionale, il 741 come tutta la famiglia tl07X, può, e in questo caso deve, lavorare a tensioni positive... Se alimentato tra 0 e 5v come in questo caso, l'uscita spazierà tra quei due valori, e visto che l'ingresso è in quel range i problemi di alimentazione non sussistono, si usa normalmente anche in applicazioni audio farli lavorare in regime di tensione positiva, e si costruisce un buffer per simulare una massa virtuale da dare come riferimento all'ingresso non utilizzato per traslare il segnale a v/2.
I capolavori del giapponese Sjosae lavorano tutti su questo principio.
Comunque sia il circuito con operazionale è una versione fine di quello che fanno resistori e diodi, userei però resistori da 10k al posto di 1k, così configurato il circuito funziona, l'avevo fatto io stesso perché avevo problemi con multiwii, quindi rivedi il firmware su arduino che il problema sta la...


Inviato dal mio iPhone utilizzando Tapatalk

romoloman 22 dicembre 15 14:43

Citazione:

Originalmente inviato da faso90vr (Messaggio 4801184)
Giusto per chiarire sull'operazionale, il 741 come tutta la famiglia tl07X, può, e in questo caso deve, lavorare a tensioni positive... Se alimentato tra 0 e 5v come in questo caso, l'uscita spazierà tra quei due valori, e visto che l'ingresso è in quel range i problemi di alimentazione non sussistono, si usa normalmente anche in applicazioni audio farli lavorare in regime di tensione positiva, e si costruisce un buffer per simulare una massa virtuale da dare come riferimento all'ingresso non utilizzato per traslare il segnale a v/2.
I capolavori del giapponese Sjosae lavorano tutti su questo principio.
Comunque sia il circuito con operazionale è una versione fine di quello che fanno resistori e diodi, userei però resistori da 10k al posto di 1k, così configurato il circuito funziona, l'avevo fatto io stesso perché avevo problemi con multiwii, quindi rivedi il firmware su arduino che il problema sta la...


Inviato dal mio iPhone utilizzando Tapatalk

Più che versione fine, direi versione UCAS....
Non capisco mai perchè andare a tirare in ballo porte logiche, operazionali quando con metodi molto più semplici si ha lo stesso risultato, se proprio si vuole fare una soluzione fine si scelgono dei diodi schottky al posto di normali diodi al silicio.

ElNonino 22 dicembre 15 14:51

Citazione:

Originalmente inviato da faso90vr (Messaggio 4801184)
Giusto per chiarire sull'operazionale, il 741 come tutta la famiglia tl07X, può, e in questo caso deve, lavorare a tensioni positive... Se alimentato tra 0 e 5v come in questo caso, l'uscita spazierà tra quei due valori, e visto che l'ingresso è in quel range i problemi di alimentazione non sussistono, si usa normalmente anche in applicazioni audio farli lavorare in regime di tensione positiva, e si costruisce un buffer per simulare una massa virtuale da dare come riferimento all'ingresso non utilizzato per traslare il segnale a v/2.
I capolavori del giapponese Sjosae lavorano tutti su questo principio.
Comunque sia il circuito con operazionale è una versione fine di quello che fanno resistori e diodi, userei però resistori da 10k al posto di 1k, così configurato il circuito funziona, l'avevo fatto io stesso perché avevo problemi con multiwii, quindi rivedi il firmware su arduino che il problema sta la...


Inviato dal mio iPhone utilizzando Tapatalk

Ottimo sistema per risolvere in modo complicato un semplice problema, la mia firma non viene mai presa in considerazione. :o:

Mi pare che le nuove leve dell'ingegneria elettronica non si preoccupino di conoscere il passato recente..... se non si usano microprocessori o circuiti sofisticati non si è "a la page" od allo stato dell'arte. :wink:

:yeah:

romoloman 22 dicembre 15 15:24

Citazione:

Originalmente inviato da ElNonino (Messaggio 4801213)
Ottimo sistema per risolvere in modo complicato un semplice problema, la mia firma non viene mai presa in considerazione. :o:

Mi pare che le nuove leve dell'ingegneria elettronica non si preoccupino di conoscere il passato recente..... se non si usano microprocessori o circuiti sofisticati non si è "a la page" od allo stato dell'arte. :wink:

:yeah:

Siamo noi che siamo vecchi e che facciamo cose che sebbene qualcuno dica che non funzioneranno mai alla fine funzionano sempre.
Il mio trucco è non dire mai ad un circuito che non può funzionare. Se non lo sa funziona e non rompe le balle...

CarloRoma63 22 dicembre 15 15:28

Citazione:

Originalmente inviato da ElNonino (Messaggio 4801213)
Ottimo sistema per risolvere in modo complicato un semplice problema, la mia firma non viene mai presa in considerazione. :o:

Mi pare che le nuove leve dell'ingegneria elettronica non si preoccupino di conoscere il passato recente..... se non si usano microprocessori o circuiti sofisticati non si è "a la page" od allo stato dell'arte. :wink:

:yeah:

Nulla di tutto questo... :)
Io avevo indicato l'uso di una porta logica (un OR con quattro ingressi) solo per disaccoppiare il carico, nel caso che fosse necessario, o per garantire un livello logico "1" ben definito in uscita, sempre se fosse necessario.
Se non servono queste precauzioni, allora sono daccordo che bastano 4 diodi ed una resistenza.

Carlo

p.s. le porte logiche le ho studiate a scuola nel lontano a.s. 1981-82, non mi pare che si parli di tecnologia "all'ultima moda".

CarloRoma63 22 dicembre 15 15:29

Citazione:

Originalmente inviato da romoloman (Messaggio 4801240)
.
Il mio trucco è non dire mai ad un circuito che non può funzionare. Se non lo sa funziona e non rompe le balle...

Mi ricorda la storia del coleottero che, secondo la fisica, non dovrebbe essere in grado di volare. Siccome lui la fisica non la conosce, vola lo stesso :icon_rofl:icon_rofl

Carlo

ElNonino 22 dicembre 15 19:38

@CarloRoma63: se '63 è il tuo anno di nascita non sei una "nuova leva".... :D

:yeah:

Mrk89 22 dicembre 15 20:08

Grazie Elnonino, non avendo a disposizione un oscilloscopio e non avendo quasi mai progettato sistemi che necessitassero di più canali contemporaneamente, mi ero sempre basato sull'immagine che ho postato qualche post indietro considerandola corretta.

CarloRoma63 22 dicembre 15 20:31

Citazione:

Originalmente inviato da ElNonino (Messaggio 4801425)
@CarloRoma63: se '63 è il tuo anno di nascita non sei una "nuova leva".... :D

:yeah:

Visto che ho studiato elettronica e mi sono diplomato nell'82.... è evidente che hai ragione !!!!
:approved::old::old::old::happy2::yeah:

Carlo

romoloman 22 dicembre 15 21:00

Citazione:

Originalmente inviato da Mrk89 (Messaggio 4801449)
Grazie Elnonino, non avendo a disposizione un oscilloscopio e non avendo quasi mai progettato sistemi che necessitassero di più canali contemporaneamente, mi ero sempre basato sull'immagine che ho postato qualche post indietro considerandola corretta.

Solo una considerazione: a volte bisognerebbe essere meno assoluti nell'esprimere pareri.
Magari qualcuno le soluzioni che suggerisce le ha anche già provate.... :wink::wink:

Mrk89 26 dicembre 15 11:10

Piccola considerazione, ricomponendo i segnali PWM all'uscita dalla RX si ha un segnale che pur mantenendo le informazioni del ppm originale, ppm non è. :P

:D

romoloman 26 dicembre 15 11:35

Citazione:

Originalmente inviato da Mrk89 (Messaggio 4803975)
Piccola considerazione, ricomponendo i segnali PWM all'uscita dalla RX si ha un segnale che pur mantenendo le informazioni del ppm originale, ppm non è. :P

:D

E perchè di cortesia ?
guardati questo schema di una ricevente in FM e poi risponditi da solo...
http://www.speedy-bl.com/empf.gif


Tutti gli orari sono GMT +2. Adesso sono le 11:55.

Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002