Show Posts
Pages: [1] 2 3
1  International / Hardware / Re: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot on: December 03, 2012, 01:31:35 pm
Quote
Questo è un semplice progetto per un DDS realizzato con un ATmega, facilmente adattabile ad Arduino, modificando opportunamente la tabella dei campioni può sintetizzare qualunque forma d'onda, unico limite è la limitata frequenza massima e la risoluzione che non è nemmeno lontanamente paragonabile a quella dei DDS con sommatore a 48-64 bit tipici dei generatori da laboratorio di un certo livello (=$$$).
Molto interessante, lo studierò con cura ... smiley-cool
Grazie Astrobeed, preciso e utilissimo come sempre.

Ti posso chiedere un piccolo favore?   Puoi aprire la saracinesca?
Grazie.
2  International / Hardware / Re: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot on: December 02, 2012, 06:35:08 am
Quote
Collegare un condensatore direttamente tra l'out di un gate logico e gnd a seconda della frequenza, e della capacità del condensatore, può diventare un vero e proprio corto visto che l'impedenza può calare fino a 0, o meglio fino al valore della sua ESR, portando a condizioni di corrente eccessiva (overload).
Si hai perfettamente ragione, infatti non ci avevo pensato  smiley-roll-sweat

Il problema è quando studi la teoria è una cosa.
Quando invece ti ritrovi in laboratorio con il saldatore in mano, le cose cambiano...

Credo che sia ormai chiaro che la scritta newbie sotto il mio avatar non sia un caso,
quindi gente, DIFFIDATE dagli schemi che ho proposto ... smiley-confuse
3  International / Hardware / Re: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot on: December 02, 2012, 05:46:13 am
Quote
l'overload delle porte logiche
Intendi la  logica contenuta in Arduino o quella che sta a valle?
Per quali motivi ci potrebbero essere danni ? Potresti essere più specifico?
Grazie

Riflettendoci lo schema con le resistenze che ho postato non vale un fico secco : attualmente non lo consiglierei al mio peggior nemico. smiley-red smiley-red
Penso di interfacciarmi con un chip DAC   smiley-cool oppure con una cosa chiamata DDS (mi sto documentando a riguardo ...)
4  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: December 02, 2012, 05:37:27 am
Quote
For higher frequency I suggest you use a proper DAC rather than your home-made one. If you only want sine wave output then try this http://www.ebay.co.uk/itm/New-AD9850-DDS-Signal-Generator-Module-0-40MHz-Test-Equipment-/180820399452?pt=UK_BOI_Electrical_Test_Measurement_Equipment_ET&hash=item2a19bc555c.

Yes,actually  the concept of my schematic is very poor. (it sucks  smiley-sweat)
:

I will try this Digital Device System
Thank you very much for the suggest, very appreciated.

Best regards.

5  International / Hardware / Re: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot on: December 02, 2012, 05:28:29 am
Ho risolto il discorso overshoot con una semplice condensatore verso massa   smiley-mr-green smiley-mr-green
Comunque,in tutta franchezza, lo schema da me proposto fa veramente pena.
Come avete intuito la mia esperienza è molto limitata... smiley-kiss smiley-kiss smiley-kiss
Mi sono documentato ed ho scoperto che esistono dei chip in grado di svolgere egregiamente la funzione di Dac e/o generatore di funzioni.
Un esempio è questo:
http://www.analog.com/en/rfif-components/direct-digital-synthesis-dds/ad9850/products/product.html

Comunque, resta il beneficio del dubbio...
6  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: December 01, 2012, 10:43:30 am
I did the following modification in the schematic, so no more overshoots now.  smiley-twist


The resistor is 47 ohm, the capacitor is 10 nF

The current input of the switch is almost zero.

I'm working with analog devices  adg419

http://www.analog.com/static/imported-files/data_sheets/ADG419.pdf

The problem is the frequency.

Now with arduino duemilanove I'm working @ 10 khz but in future I will arrive at 1 mhz or more, so don't know if this is the right switch design for HF.

The biggest trouble now is the op-amp : it works perfectly for 10 minuts and after go on strike!
I have already burned two.  smiley-cry smiley-cry smiley-cry

So, where is the problem now?

Anyway, I solved the  problem of topic : I NEED THIS RC NETWORK.

100000 thanks smiley-cool
7  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: November 29, 2012, 05:21:11 pm
Quote
1) gate capacitance: as long as you have mosfets, you have gate capacitance, especially when they are undampened
Yes, I will put a dump resistor between the gate and the ground, to protect the mos.

If i connect directly the probe to arduino i have this behaviuor:



A probe grounded with a spring have  a better result:



So the problem IS the probe.

I the weekned i will post some results ...
8  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: November 29, 2012, 05:00:35 pm
Quote
Take 5 resistors: tie your four output pins together through 4 reistors, R0..3, and from there tie them to ground through Rg. Buffer the output from where the resistors meet, with a jfet or an opamp.

The output voltage is = (V0/R0 + V1 / R1 + V2 / R2 + V3 / R3) / (1 / R0 + 1/R1 + 1 / R2 + 1 / R3 + 1 / Rg). V0..3 is either 0 or 5v, representing the output from your mcu.

Yes, I am sure of this, but this kind of design is useless for my application.

I need a design as this:



My problem is about the implementation of the switch.
The c-mos are working in this case, but maybe there are better design available... i need to study this part yet.  smiley-roll

But my topic now are the spikes from arduino.
I only need to put the right capacitor at the right place ... smiley-roll-sweat smiley-roll-sweat smiley-roll-sweat
9  International / Hardware / Re: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot on: November 29, 2012, 12:08:50 pm
Quote
Per curiosità, in cosa ti stai laureando ?
Ing. elettronica / telecomunicazioni.
Diciamo che il problema di fondo  è l'aver azzardato la misura su un prototipo reale.
Prima di arrivare fin qui ho simulato tutto, prima in ambiente matlab e poi con pspice.
La maggior parte dei miei colleghi si ferma sulle simulazioni, quindi la prova su strada la vedo come una sfida.

Inoltre l'aver utilizzato Arduino, seppur con tante limitazioni, per "prototipare" un progetto simile, mi regala molte soddisfazioni.



10  International / Hardware / Re: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot on: November 29, 2012, 11:31:35 am
Quote
Ti allego le schermate del mio oscilloscopio, i fronti di salita sono molto rapidi, circa 20ns, quindi col mio oscilloscopio da 100MHz potrei perdermi qualcosina.

Ti ringrazio infinitamente per la disponibilità e per il tempo prezioso che mi hai dedicato.

Quindi, mi sembra di concludere che, se disponessi di una maggiore banda (forse c'è qualche setting da fare  sull' agilent) e magari di una sonda decente (senza il marchio TNT e magari dotata di molla), dovrei ottenere la lettura tanto sperata smiley-roll smiley-roll

Il collo di bottiglia sembra essere questo, poichè nonostante la topologia discutibile del circuito, nonostante l'operazionale scarsissimo, in uscita ottengo la mia onesta sinusoide "quadrettata" con un picco per ogni transizione.
I dovrei fare un' analisi spettrale di questa sinusoide a gradini e stimare la larghezza di banda utile.
Però gli overshoots (dovrebbero essere 8 per ogni periodo) mi sporcano terribilmente il segnale

Bello il tuo scope. Pensavo di prendermi anch'io un Rigol. Penso che come rapporto qualità prezzo siano imbattibili

Grazie ancora, vi tengo aggiornati
11  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: November 29, 2012, 10:49:47 am
[
Quote
When you mention the "problem", are you saying that you already have an end result that shows the effects of the overshoot of the square wave or that you are just predicting that the overshoot will affect your end result?

Yes.
I want to generate a squared "sinusoidal" wave summing 4 weighted digital signals.
But,
every signal have  overshoots so the results is a "dirty" sinusoid.
This is my problem, not a prediction.
My priority is to eliminate the overshoots from Arduino.
Maybe there is something wrong in my probe.

Thanks.
12  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: November 29, 2012, 10:11:24 am
Quote
If you are trying to build a DAC with some sort of custom weighting

Yes, that's correct.

This a project about an alternative design of a "DAC ".
The circuit is incomplete and the weighted resistors value is WRONG (I need to calculate the right value yet ).

I posted the schematic, only to explain the kind of topology of the net.

Anyway, the problem is the signal for arduino, or maybe the probe of the scope.
I am sure about this.

Thanks.

Giorgio.
13  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: November 29, 2012, 10:02:45 am
Hi, Grumpy Mike, may I contact you in PM ?

Quote
You haven't said where you are measuring this signal.

The measure is between the digital port of arduino and the ground.

I need a square wave, almost 50% , about 10 kHz of frequency.

I read a square wave with spikes, as show in the pictures.

Quote
I would not use a 9V battery like that as it will very soon drain, you will get no more than a few hours from it.

But  a 9V battery is the safest way to prevent ground loops.
I power up Arduino, just a moment, to take the measure.
Anyway, the battery in  brand new.
14  International / Hardware / Re: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot on: November 29, 2012, 09:45:03 am
Quote
Ogni oscilloscopio fornisce un segnale rettangolare per calibrare la sonda. Misurando quel segnale Ti da anche quei picchi o hai un segnale pulito?
E' la prima cosa che faccio ogni volta quando collego la sonda.

Quote
Guarda facciamo così, pubblica lo sketch o quelle poche righe che utilizzi per generare il treno di onde quadre, lo faccio girare anch'io sul mio arduino e ti mando una schermata del mio oscilloscopio. Se fosse un problema di campionamento è più probabile che non vedresti il picco o comunque non tutta la sua dinamica.

Saresti molto gentile e ti ringrazio anticipatamente.
Prima lanci questo sketch (programmi la ROM)

Code:
/*
 * EEPROM Write
 *
 * Stores values read from analog input 0 into the EEPROM.
 * These values will stay in the EEPROM when the board is
 * turned off and may be retrieved later by another sketch.
 */

#include <EEPROM.h>


void setup()
{
}
int write = 1;
void loop()
{
  if (write == 1)
  {
EEPROM.write(    0 , B10000000 );
EEPROM.write(    1 , B10000000 );
EEPROM.write(    2 , B10001010 );
EEPROM.write(    3 , B10001010 );
EEPROM.write(    4 , B10101000 );
EEPROM.write(    5 , B10101000 );
EEPROM.write(    6 , B10100010 );
EEPROM.write(    7 , B10100010 );
EEPROM.write(    8 , B10100010 );
EEPROM.write(    9 , B10100010 );
EEPROM.write(   10 , B10101000 );
EEPROM.write(   11 , B10101000 );
EEPROM.write(   12 , B10001010 );
EEPROM.write(   13 , B10001010 );
EEPROM.write(   14 , B10000000 );
EEPROM.write(   15 , B10000000 );
EEPROM.write(   16 , B00101010 );
EEPROM.write(   17 , B00101010 );
EEPROM.write(   18 , B00100000 );
EEPROM.write(   19 , B00100000 );
EEPROM.write(   20 , B00000010 );
EEPROM.write(   21 , B00000010 );
EEPROM.write(   22 , B00001000 );
EEPROM.write(   23 , B00001000 );
EEPROM.write(   24 , B00001000 );
EEPROM.write(   25 , B00001000 );
EEPROM.write(   26 , B00000010 );
EEPROM.write(   27 , B00000010 );
EEPROM.write(   28 , B00100000 );
EEPROM.write(   29 , B00100000 );
EEPROM.write(   30 , B00101010 );
EEPROM.write(   31 , B00101010 );
  }
 
 write = 0;
 


}


poi carichi questo

Code:

#include <EEPROM.h>
int addr = 0;
int k=0;


void setup()
{
 
  DDRD = B11111111; //tutti i pin sono uscite
 
}

void loop()
{
  while (k<100)
{
 PORTD = EEPROM.read(addr);
   
    ++ addr;
   
    if (addr > 31)
{addr = 0;}

}

  }


Poi colleghi la sonda tra digital 7 e gnd come vedi nella foto.

Dovresti avere l'onda quadra di  circa 10 kHz che sfarfalla (lo sfarfallamento è dovuto al codice, che devo riscrivere, però adesso ho altre priorità ...).

Il mio sospetto è che le commutazioni di Arduino sono troppo rapide, la sonda che uso introduce un carico induttivo ( il cavetto di massa a banana) e quindi si crea il picco.

Grazie ancora.

Giorgio.


15  Using Arduino / Project Guidance / Re: Electrical impedance of Dout port on: November 28, 2012, 08:43:56 pm
Quote
the switches are wrong.
Could you be more specific?

Thanks.

Pages: [1] 2 3