Bonjour à tous,
Pour m'occuper les week-ends pluvieux, j'ai décidé de mettre au point un générateur de signaux piloté par Arduino. Je compte le valider sur breadboard puis faire graver le circuit. J'ai la proposition suivante mais comme il faut bien débuter quelque part, j'aimerais vos bonnes remarques et conseils pour l'améliorer :
- Est-ce que le digipot est bien protégé vu qu'il ne supporte pas d'autres tensions que celles de son alimentations en 0/5V ?
- Est-ce qu'il serait nécessaire d'ajouter un AOP suiveur en sortie ?
- Est-ce qu'il y aurait d'autres choses permettant de l'améliorer à moindre frais ? (hors condensateurs de filtrages HF sur toutes les sorties et toutes les alimentations de puces).
Pour l'explication détaillée :
L'objectif est de générer un signal sinusoïdal, carré ou triangulaire jusqu'à 1Mhz, d'amplitude crète-à-crète max de 24V et d'offset entre ±12V. La fréquence maximale va être limitée par la bande passante du digipot =1Mhz. (les potentiomètres motorisées ou les VGA : 1-J'en ai pas, 2-C'est trop cher pour moi).
Pour cela j'ai :
1. Un AD9833 qui génère un signal de 0 à 0.6V. Le type et la fréquence sont programmable via le bus SPI au hertz près.
2. Un premier amplificateur non-inverseur amplifie le signal à 5V. Cela permet de réduire l'erreur dans le digipot et de ménager le produit gain-bande du second étage d'amplification.
3. Le digipot piloté par SPI, ajoute un gain négatif au signal. Niveau résolution, sur 8bits, j'aurais une résolution de 0.1V en sortie. C'est suffisant pour moi.
4. Un condensateur de découplage et un pont diviseur ramène la moyenne du signal à 0. Pour bien coupler mes résistance R2 et R5, le pense utiliser un potentiomètre réglable pour ajouter un offset manuel fin.
5. Un dernier AOP inverseur (le signal à une moyenne de 0V), qui permet d'augmenter l'amplitude du signal jusqu'à 24V c-à-c. et de régler l'offset via la tension de l'entrée V-. Cette tension d'offset sera générée via une pin PWM de l'Arduino et une amplification passe-bas via un autre AOP type LM358. La résolution du PWM des arduino étant sur 8bits, j'aurais toujours 0.1V de résolution sur l'offset.
Vu que rien n'est parfait et que les AOP souffrent de nombreux défauts, je compte plus tard ajouter un étage de mesure pour mesurer via l'Arduino la tension moyenne réelle du signal et l'amplitude réelle du signal. Mais j'en suis pas encore là.
Merci pour votre aide et de m'avoir accordé un peu de votre temps.
J'espère que les idées de ce post pourront aussi servir aussi à d'autres.
-----