Dac 16 bit i2c

Progetti Arduino
Avatar utente
Maxvarese
Messaggi: 1959
Iscritto il: mar 9 apr 2019, 23:53

Dac 16 bit i2c

Messaggio da Maxvarese »

Esiste un modulo DAC 16 bit controllato in i2c bus per arduino?
Avatar utente
pgv
Messaggi: 484
Iscritto il: gio 17 set 2020, 13:16
Località: Ginevra

Re: Dac 16 bit i2c

Messaggio da pgv »

Dato che DAC da 16 bit sono di solito "riservati" alla riproduzione sonora, probabilmente ne troverai con interfaccia I2S (o IIS) e non I2C:
https://en.wikipedia.org/wiki/I%C2%B2S
Sono bus seriali tutti e due, ma diversi. Questo e' un esempio (a 24 bit) per Raspberry Pi:
https://shop.pimoroni.com/products/audi ... 3184965715
Le schede Arduino con MCU a 32 bit (per esempio Arduino o Genuino Zero, MKRZero o MKR1000 con un SAMD21, e ovviamente una pletora di compatibili) sono in grado di gestire l'I2S a velocita' "da audio" ma ho paura che gli AVR no. Ho incontrato su Aliexpress anche questo orrendezzo:
https://www.aliexpress.com/item/1005006032657160.html
in cui hanno attaccato il bus di un Raspberry Pi a un Raspberry Pico (RP2040) che si programma con Arduino (o microPython). Altrimenti, uno schedino Adafruit come
https://shop.pimoroni.com/products/adaf ... 3041772627 ti offre almeno 16 bit di risoluzione e un amplificatore da 3W a seguire...
Non e' la risposta alla domanda che avevi posto, ma un suggerimento per una potenziale via alternativa. DAC I2C ne fa uno la Analog Devices con 16 bit di risoluzione ma non lo ho mai visto preparato per Arduino, il massimo che si trova "pronto" sono DAC I2C a 12 bit.
Avatar utente
Maxvarese
Messaggi: 1959
Iscritto il: mar 9 apr 2019, 23:53

Re: Dac 16 bit i2c

Messaggio da Maxvarese »

Grazie, si in effetti io ne ho già un di quei moduli a 12 bit, ma nel mio caso non basta.
Ho trovato su RS dei dac 16 bit a controllo seriale, molti dichiarati per uso audio, come hai giustamente riportato.
A me non importano le prestazioni dinamiche, perché dovrò generare una tensione continua che varia lentamente, ma è indispensabile la risoluzione e il basso rumore.
Non ho grande esperienza del mondo arduino, io sto utilizzando un clone di arduino mega della elegoo.
Il piano è fargli misurare una grandezza e restituire in uscita un tensione proporzionale da 0 a 10 Volt in 50.000 passi.
Avatar utente
pgv
Messaggi: 484
Iscritto il: gio 17 set 2020, 13:16
Località: Ginevra

Re: Dac 16 bit i2c

Messaggio da pgv »

Difficile da realizzare "bene" a meno di non avere tensioni completamente disaccoppiate, 10 V / 50,000 passi sono 200 microVolt, il rumore iniettato dal clock della CPU, lasciamo da parte quello del bus I2C, rischia di sopraffarti.
Potresti guardare questo DAC https://www.ti.com/product/DAC91001 che ha interfaccia SPI e non I2C ma insomma, fino a 20 bit monotonici e 16 bit "veri", e alimentazioni separate per l'analogico e il digitale. E' un po' una palla da utilizzare ma ci sono i suoi motivi.
Avatar utente
Maxvarese
Messaggi: 1959
Iscritto il: mar 9 apr 2019, 23:53

Re: Dac 16 bit i2c

Messaggio da Maxvarese »

Uhh come sempre c'è da studiare!!
Le tue considerazioni sul rumore sono corrette, ma ho un asso nella mancia.
Nell'applicazione che sto sviluppando so che la grandezza misurata può solo decrescere, quindi pensavo di inserire un "filtro" un approssimazione software che controllerà il dac per ottenere una variazione di tensione pulita "presunta" e solo in caso di grave scostamento dei dati mandare l'apparecchio in allarme.
Grazie intanto, se vuoi saperne di più ti do un link in privato per un piccolo video dimostrativo.
Avatar utente
pgv
Messaggi: 484
Iscritto il: gio 17 set 2020, 13:16
Località: Ginevra

Re: Dac 16 bit i2c

Messaggio da pgv »

Volentieri.
Avatar utente
Maxvarese
Messaggi: 1959
Iscritto il: mar 9 apr 2019, 23:53

Re: Dac 16 bit i2c

Messaggio da Maxvarese »

Ho trovato un dac 16 bit a controllo seriale, rigorosamente smd.
Ho già provveduto a montarlo su adattatore, ora devo provare a controllarlo con arduino mega.
Io ho acquistato un DAC 8550, ma sul componente c'è scritto d8021fs, sigla di cui non trovo nessuna corrispondenza ???
Se attaccando l'alimentazione esplode vuol dire che hanno sbagliato. :?
Allegati
20231104_150827_copy_480x360.jpg
20231104_150827_copy_480x360.jpg (36.21 KiB) Visto 488 volte
Avatar utente
pgv
Messaggi: 484
Iscritto il: gio 17 set 2020, 13:16
Località: Ginevra

Re: Dac 16 bit i2c

Messaggio da pgv »

Che ci hai messo/conti di metterci come VRef?
Avatar utente
Maxvarese
Messaggi: 1959
Iscritto il: mar 9 apr 2019, 23:53

Re: Dac 16 bit i2c

Messaggio da Maxvarese »

Per i primi esperimenti userò solo la stessa tensione d'alimentazione di 5 Volt prelevata da arduino.
Poi ho già un integrato della analog device che promette prestazioni eccezionali, tanto che in passato l'ho usato per verificare la precisione dei voltmetri.
Avatar utente
Maxvarese
Messaggi: 1959
Iscritto il: mar 9 apr 2019, 23:53

Re: Dac 16 bit i2c

Messaggio da Maxvarese »

Ho connesso Vref alla stessa tensione d'alimentazione fornita da Arduino di 5Volt attraverso un filtro RC.
Essendo che la scheda non è chiamata a pilotare carichi con elevati assorbimenti impulsivi, spero di non avere eccessivi disturbi sull'alimentazione.
Allegati
20231109_104539_copy_640x480.jpg
20231109_104539_copy_640x480.jpg (215.91 KiB) Visto 445 volte
Rispondi