Générateur de fonction
#21
Posté 13 avril 2012 - 02:44
Bien passons maintenant à l'intégration de la protection surintensité au régulateur de tension.
Tout d'abord, il va falloir définir l'endroit où placer la shunt.
On pourrait très bien la mettre après notre régulateur, mais dans ces cas-là, il y aurait une toute petite chute de tension quand l'intensité qui passe à travers la shunt est importante. Vous me direz que ce n'est pas grave car dans le cahier des charges, on tolère une chute de tension de 0.5V. Néanmoins, pourquoi se contenter de 14.5V alors que l'on pourrait avoir une sortie toujours fixé à 15V !
En effet, si on place la shunt à la sortie du régulateur, mais AVANT le pont diviseur de tension qui sert à asservir la tension, alors la chute de tension de la shunt sera prise en compte lors de l'asservissement et la sortie sera toujours fixe à 15V.
Maintenant, il nous faut pouvoir faire chuter la tension de sortie si une sur-intensité est détectée afin de ne jamais débiter plus de 1 Ampère.
Pour cela, il suffit de rajouter un transistor qui viendra drainer le courant de U1 si U2 détecte une surintensité. Comme ça, le darlington n'a plus assez de courant pour être en saturation et la tension de sortie chute.
Notre protection surintensité est donc fonctionnelle !
Il ne nous manque plus que la LED qui va nous prévenir de la surintensité.
J'en profite aussi pour rajouter quelques condensateurs de contre-réaction aux ampli-op ainsi qu'un condensateur de découplage en sortie de l'alim et d'une diode contre les déconnexions brutales de charges.
La prochaine fois, j'améliorerai ce montage afin qu'il marche réellement. Je reverrais aussi la partie "allumage d'une LED lors d'une surintensité" afin que l'allumage soit net et précis et ne dépendent plus de la charge de sortie.
++
Black Templar
Mon site internet : http://ferdinandpiette.com/
#22
Posté 13 avril 2012 - 11:02
Ce soir, j'ai fait un petit tour du côté des convertisseurs numériques => analogiques !
Au niveau des prix, ça coûte 1 à 2 € pour un circuit intégré d'une résolution de 8bits (256 valeurs) et une dizaine d'euro pour avoir une résolutions supérieur à 12 bits !
Ce n'est pas encore excessivement cher, mais je me suis demandé si je ne pouvais pas recréer un convertisseur numérique/analogique moi-même avec une série de résistance.
Je suis parti sur ce schéma tout simple :
La tension de sortie vaut en théorie V1/2 + V2/4 + V3/8 + V4/16
J'ai réalisé le montage avec un stock de résistance de 1.2kohm (tolérance 5%) qui trainait et voici mes résultats :
J'ai normalisé la commande et la tension de sortie pour qu'elles soient comprises entre 0 et 1V.
Ci dessous, c'est la courbe de la tension de sortie en fonction de la commande normalisé.
La régression linéaire est très proche de y=x (qui est le résultat optimum).
L'erreur est inférieur à 2%, ce qui est encourageant vu que mes résistances ne sont pas très précises !!! (tolérance 5%)
Ce qui veut dire qu'avec 48 résistances de tolérance 0.5 ou 1% et un AOP suiveur, je peux avoir un convertisseur numérique/analogique 24bits qui tiens la route ! Et tout ça, pour moins de 2€.
Je pense que je vais commander quelques résistances plus précises pour faire des tests plus poussés
++
Black Templar
Mon site internet : http://ferdinandpiette.com/
#23
Posté 14 avril 2012 - 07:49
Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)
#24
Posté 14 avril 2012 - 08:17
Une question : dans ton "cahier des charges" tu annonces une fréquence maxi bien faible, de 25kHz. Est-ce que c'est voulu de te limiter autant? Ca veut dire que ton montage est uniquement dédié à faire de l'audio?
Leon.
Salut Léon !
En ce moment, je fais (veux faire) pas mal d'audio, c'est pour ça que j'ai fixé la fréquence max à 25kHz.
De plus, je ne sais pas à combien je peux monter avec un microcontroleur...
Mais si ce n'est qu'une question de programmation, il sera extrêmement simple d'augmenter cette fréquence max.
Selon toi, quel serait la fréquence max qui permettrait d'avoir un générateur digne de ce nom ? (pour des applications classiques de robotique et non pour faire de la HF)
++
Black Templar
Mon site internet : http://ferdinandpiette.com/
#25
Posté 14 avril 2012 - 09:50
C est pas la même règle ADC/DAC fréquence échantillonnage /2?
allez je me lance dans un calcul rapide : 25 Khz donc période de 40us, en 8 bits tu devra donc générer 256 steps de 40/256=156 ns, la boucle du microcontrolleur devra donc durer moins que ces 156ns...
http://hmnrobots.blogspot.fr/
#26
Posté 14 avril 2012 - 12:03
Bonjour
C est pas la même règle ADC/DAC fréquence échantillonnage /2?
allez je me lance dans un calcul rapide : 25 Khz donc période de 40us, en 8 bits tu devra donc générer 256 steps de 40/256=156 ns, la boucle du microcontrolleur devra donc durer moins que ces 156ns...
Fmax = 25kHz, donc je dois envoyer mes informations à une fréquence minimum de 50kHz ! (Shanon)
Bien sûr, dans ce cas là, un signal à 25kHz ne contiendra que 2 points, ce qui n'est pas top... (on garde l'information fréquentielle de la fondamentale, mais on ne sait plus distinguer la forme du signal...)
Pour avoir un signal précis, il faut donc plus de points par fréquence.
Avec un ADC 8 bits, on peut générer 256 valeurs de tensions, ce qui ne veux pas dire qu'il faut toutes les utilisées forcement ! (il faut distinguer d'échantillonnage temporel et la quantification en amplitude ! On peut très bien utiliser un DAC de 24bits même si une période du signal n'en contient que 20, on sera tout de même plus précis).
156ns, ça fait quand même du 6Mhz...
Si déjà je pouvais monter à une boucle de 1Mhz, ça serait pas mal ! ça voudrait dire qu'une période à 25kHz contiendrait 40 points ! (et donc, l'information fréquentielle est conservé jusqu'à la 20ème harmonique pour un signal de 25kHz !)
Après, comme je l'ai dit plus haut, je ne sais pas estimer le temps que me prendrait le calcul de la valeur du signal et l'activation du DAC.
Tiens, je viens de tomber sur cette page : http://paulfjujo.fre...DDS/Sinedds.htm
Je n'ai pas encore eu le temps de la lire, mais apparemment, il arrive à générer de 20kHz avec un quartz de 10MHz (fréquence du quartz et non de la boucle !) sans problème !!! Par contre, je n'ai pas vu le temps que lui prenant un tour de boucle !
Vers la fin de la page, il arrive même à générer des signaux de 1Mhz avec un DAC 10 bits.
Affaire à suivre donc
Black Templar
Mon site internet : http://ferdinandpiette.com/
#27
Posté 14 avril 2012 - 12:32
Fmax = 25kHz, donc je dois envoyer mes informations à une fréquence minimum de 50kHz ! (Shanon)
Bien sûr, dans ce cas là, un signal à 25kHz ne contiendra que 2 points, ce qui n'est pas top... (on garde l'information fréquentielle de la fondamentale, mais on ne sait plus distinguer la forme du signal...)
Pour avoir un signal précis, il faut donc plus de points par fréquence.
Avec un ADC 8 bits, on peut générer 256 valeurs de tensions, ce qui ne veux pas dire qu'il faut toutes les utilisées forcement ! (il faut distinguer d'échantillonnage temporel et la quantification en amplitude ! On peut très bien utiliser un DAC de 24bits même si une période du signal n'en contient que 20, on sera tout de même plus précis).
156ns, ça fait quand même du 6Mhz...
Si déjà je pouvais monter à une boucle de 1Mhz, ça serait pas mal ! ça voudrait dire qu'une période à 25kHz contiendrait 40 points ! (et donc, l'information fréquentielle est conservé jusqu'à la 20ème harmonique pour un signal de 25kHz !)
Après, comme je l'ai dit plus haut, je ne sais pas estimer le temps que me prendrait le calcul de la valeur du signal et l'activation du DAC.
Tiens, je viens de tomber sur cette page : http://paulfjujo.fre...DDS/Sinedds.htm
Je n'ai pas encore eu le temps de la lire, mais apparemment, il arrive à générer de 20kHz avec un quartz de 10MHz (fréquence du quartz et non de la boucle !) sans problème !!! Par contre, je n'ai pas vu le temps que lui prenant un tour de boucle !
Vers la fin de la page, il arrive même à générer des signaux de 1Mhz avec un DAC 10 bits.
Affaire à suivre donc
Black Templar
Bien le lien; me rappelle une ancienne réalisation: pour aller vite et avoir une durée constante pour le calcul, les valeurs sont stockées dans une table en mémoire mais à l'époque les circuits DDS n'existaient pas
http://hmnrobots.blogspot.fr/
#28
Posté 14 avril 2012 - 02:55
Le résultat est conforme à mes espérances : de très mauvaise qualité
Cela est du d'une part au DAC qui est ni précis dans les valeurs (résistance de tolérance 5%) ni précis dans la résolution (4 bits = 16 valeurs de tension possible seulement ! :-o )
D'autre part à cause de l'alimentation de l'arduino qui fluctue beaucoup !
L'arduino est alimenté via le port USB avec des fluctuation de la tension d'alimentation de l'ordre de 100mV !! (j'ai réduit la fluctuation à 50mv à l'aide d'une capa)
ça ma permis de tester mon tout nouveau oscilloscope (et oui ! je l'ai enfin reçu )
Voila ce que j'obtiens !
Et si je rajoute un filtre passe bas en sortie, ça améliore énormément les choses :
Black Templar
Edit : au passage, j'ai réussi à cramer une LED ! première fois que ça m'arrive Oo
Mon site internet : http://ferdinandpiette.com/
#29
Posté 14 avril 2012 - 04:36
c'est quoi l'oscillo ?
http://hmnrobots.blogspot.fr/
#30
Posté 14 avril 2012 - 04:43
Je vais tout faire pour ne pas en avoir besoin ! Le seul filtre que je m'autorise, c'est un passe-bas fixe de fréquence de coupure = 10x la fréquence max du géné.c'est déjà pas mal, ça illustre bien la difficulté de l'entreprise et une nouvelle question : faudra t il donc un filtre de sortie variable ?
Un Owon PDS5022S à 25MHz de BPc'est quoi l'oscillo ?
Ils fournissent un logiciel pour pouvoir faire des captures d'écran de l'oscillo
Mon site internet : http://ferdinandpiette.com/
#31
Posté 14 avril 2012 - 05:59
Tu peux nous dire quel model tu as acheté, et également nous faire un petit bilan après quelques heures/jours de manipulation avec?ça ma permis de tester mon tout nouveau oscilloscope (et oui ! je l'ai enfin reçu )
Il faudrait que j'investisse également, mais ça coute vraiment cher, un oscillo USB de qualité.
La robotique se passe en général de ce genre d'appareil. Effectivement, un générateur de signaux, c'est très utile pour les montages audio, radio. La robotique, c'est essentiellement du tout numérique, et ça se contente d'instruments plus simple.Selon toi, quel serait la fréquence max qui permettrait d'avoir un générateur digne de ce nom ? (pour des applications classiques de robotique et non pour faire de la HF)
Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)
#32
Posté 14 avril 2012 - 07:09
Tu peux nous dire quel model tu as acheté, et également nous faire un petit bilan après quelques heures/jours de manipulation avec?
Il faudrait que j'investisse également, mais ça coute vraiment cher, un oscillo USB de qualité.
Comme je l'ai dis juste avant, c'est un "Owon PDS5022S" à 25MHz de Bande Passante.
Ce n'est pas un oscillo de compet, mais comme je ne compte pas travailler à plus de 1MHz, ça me va très bien ! (surtout qu'il coûte moins de 275€ !!)
Je ne l'ai pas encore utilisé beaucoup.
Pour le moment, les seuls retours que je peux faire sont de l'ordre du ressenti :
- L'écran est grand ! C'est très agréable !
- Le logiciel permet de récupérer les écrans sur le PC, mais malheureusement, ce n'est pas tu temps réel ! (on récupère les écrans à une fréquence d'environ 1Hz). C'est donc bien pour faire des capteurs d'écran, mais pas pour visualiser directement le signal sur le PC.
- J'ai été agréablement surpris que l'option fft est disponible ! fenêtres hamming, hanning, blackman et rectangulaire, amplitude linéaire ou log, moyennage 4, 16, 64, 128.
- Les options sont celle d'un oscillo classique : 2 voies, trigger extérieur disponible, curseurs, mesures automatiques (fréquence, moyenne, Vpp, et plein d'autre), menu mathématiques (-, +, *, /, fft), échelle de 5mV à 5V par div avec possibilité d'un coef multiplicateur x10, x100, x1000 pour sonde, échelle temporelle de 5ns à 100s, mode XY, YT, déclancheur
- On peut mettre aussi une batterie (non fournie) pour travailler sans alim secteur
- Le logiciel ne permet que de faire des captures en mode y(t) pour les autres modes, il faut être directement sur l'oscillo
Le couplage AC à l'air de bugué ... car mon signal est atténué de 15dB :-X :/fréquence de coupure du couplage AC inférieur à 2Hz- L'oscillo est livré avec 2 sondes ce qui m'a évité d'en acheter en plus
- Je ne peux pas utiliser les curseurs en mode XY !
En conclusion, il n'est pas parfait, mais je pense qu'il suffira pour l'utilisation que je vais en faire !
Je met en PJ deux petites captures d'écrans. (faut pas faire attention à la qualité du sinus ! je n'ai pas de GBF sous la main, je l'ai donc réalisé avec le DAC 4bits à résistances )
Je ferais plus de retour dans quelques mois quand je l'aurais pas mal utilisé ! Si tu as des questions précises dessus, n'hésite pas à les poser
Mon site internet : http://ferdinandpiette.com/
#33
Posté 15 avril 2012 - 12:44
J'ai complété la liste dans mon post précédent. Je trouve notamment dommage que les curseurs ne sont pas disponibles en mode XY...
Sinon, la qualité des mesures est très acceptable
J'ai réalisé un oscillateur à pont de Wien dont voici le schéma
La fréquence est d'environ 1.5kHz
J'ai rajouté un filtre passe bas du premier ordre pour tester le mode XY, mais malheureusement, aucun curseur dispo pour ce mode.
J'ai donc du mesurer le déphasage et le gain en mode y(t)...
(Fc = 1.5kHz => déphasage de 45° et amplitude de -3dB)
J'ai aussi pu testé la transformé de fourier. On a le choix de la fenêtre, ainsi que d'un éventuel moyennage. Du coup on peux réaliser des périodogrammes modifié
Enfin, des photos de ce que ça rend en vrai ^^
Voila voila !
Bon, il est temps d'aller dormir... Je ne vois pas le temps passer avec tout ça !
Bonne nuit,
Black Templar
Mon site internet : http://ferdinandpiette.com/
#34
Posté 15 avril 2012 - 07:15
Effectivement il était tard!Enfin, des photos de ce que ça rend en vrai ^^
Voila voila !
Bon, il est temps d'aller dormir... Je ne vois pas le temps passer avec tout ça !
Bonne nuit,
Black Templar
http://hmnrobots.blogspot.fr/
#35
Posté 16 avril 2012 - 10:22
Une fois que j'aurais fait les tests dont j'ai besoin avec les composants que je n'ai pas, je vous présenterais la solution finale (du moins j'espère) pour le bloc d'alimentation.
En attendant, et bien je fais mumuse avec mon oscilloscope !
Et aujourd'hui, j'ai testé pour vous, et en exclusivité un générateur triangulaire que j'ai conçu il y a maintenant ... 3 ans !
(Bon, ok, il existait déjà avant, mais ça, je ne le savais pas XD)
Le principe est à la fois simple et complexe en même temps !
Il s'agit de générer un signal triangulaire en intégrant un signal carré (et oui, l'intégrale d'une constante, ça fait une rampe )
La particularité du montage, c'est que le signal carré est lui-même généré à partir du signal triangulaire ! On compare ce signal triangle à un seuil, et ça nous donne un signal rectangle.
On se mord la queue me direz-vous et vous avez absolument raison
Lorsque le signal triangulaire atteint un certain seuil, le comparateur bascule et la pente du signal triangulaire s'inverse jusqu'à atteindre un second seuil. A ce moment, le comparateur bascule de nouveau et la pente du triangle s'inverse aussi, etc.
On a donc un système asservi ! Ce qui permet de contrôler l'amplitude du signal triangulaire de manière (assez) précise.
Trêve de bavardage, j'ai trouvé un site très bien expliqué (pour une fois).
Ce qu'il manque juste, peut-être, c'est le calcul de la fréquence, mais bon, faut pas trop en demander non plus !
http://www.esiee.fr/...iangulaire.html
J'ai donc réalisé ce montage avec les valeurs des composants suivantes :
- V+ = 7.4V ; V- = -7.4V
- R1 = 4.7k ; R2 = 10k : Ce qui me permet de déduire que l'amplitude du triangle sera de V+*R1/R2 = 3.7V (soit 7.4Volt pic-pic environ)
- C = 680nF ; R est un potentiomètre variant de 0 à 10k.
Les résultats en images !
Pour une fréquence de 1kHz
Pour une fréquence de 100Hz
On remarque que le résultat est loin d'être parfait et que le montage demande à être amélioré grandement !
Voila. C'était mon message de la soirée...
A très bientôt,
Black Templar
Mon site internet : http://ferdinandpiette.com/
#36
Posté 24 avril 2012 - 10:18
Théoriquement, je reçoit mes composants d'ici demain ! Je vais pouvoir commencer la phase de test.
Je vais présenter ici une petite amélioration du montage précédent.
On avait intégré la dernière fois un témoin lumineux qui s'allumait lors d'une sur-intensité. Le problème de cette méthode, c'est que la sortie du l'AOP de contrôle de l'intensité est proportionnel à la valeur de la charge qui crée le court-circuit.
Ainsi, pour une charge très importante, le transistor Q2 devra drainer suffisamment de courant pour faire chuter la tension fortement.
Au contraire, lorsque la charge est tous juste supérieur à la charge limite créant un court-circuit, alors le transistor Q2 ne drainera que très peu de courant, ce qui ne sera pas encore suffisant pour allumer la LED.
En conclusion, avec le montage précédent, l'intensité lumineuse de la LED sera proportionnel au niveau de court-circuit du montage. Ce que nous souhaitons plutôt, c'est que la diode s'allume lorsque l'on a dépassé le seuil de courant autorisé, un point c'est tout.
Pour réaliser cette fonction, je décidé de ne pas commandé la diode directement avec Q2, mais de commander plutôt un générateur de courant constant.
Ainsi, dès que Q2 conduit, le générateur de courant va débiter un courant constant à travers la diode. Ainsi, l'allumage de la diode sera assuré dès le premier milliampère dépassant le seuil de courant autorisé.
Le courant traversant la LED est fixé par R8 et vaut Vbe/R8 = 0.65/R8 = 0.65/33 = 20mA
La prochaine étape sera de définir la valeur des composants et de choisi la source d'alimentation des AOP.
++
Black Templar
EDIT : remarquez au passage que j'ai remplacé le transistor de ballaste par un transistor darlington et que j'ai déjà fixé la valeur de certains composant !
J'anticipe un peu la prochaine partie ^^
Mon site internet : http://ferdinandpiette.com/
#37
Posté 24 avril 2012 - 12:03
http://hmnrobots.blogspot.fr/
#38
Posté 24 avril 2012 - 12:08
ta simulation fonctionne ?
Parfaitement oui, moyennant quelques modifications supplémentaires que je détaillerais une fois passée la validation expérimentale.
J'ai mis en pj le schéma complet simulé (partie redressement après le transfo, asservissement en tension et intensité pour la partie positive et négative).
Niveau modif, j'ai alimenté les AOP en non symétrique directement avec la tension filtrée non régulé (moyennant un petit découplage), j'ai aussi ajouter 2 diodes en série pour commander la ballaste afin de pouvoir descendre sous les 2V lors d'un court-circuit.
Les tensions de références sont + et -5V (vu que j'en ai besoin pour la partie génération de signaux, autant prendre celles-là)
Fichier(s) joint(s)
Mon site internet : http://ferdinandpiette.com/
#39
Posté 24 avril 2012 - 12:37
Parfaitement oui, moyennant quelques modifications supplémentaires que je détaillerais une fois passée la validation expérimentale.
J'ai mis en pj le schéma complet simulé (partie redressement après le transfo, asservissement en tension et intensité pour la partie positive et négative).
Niveau modif, j'ai alimenté les AOP en non symétrique directement avec la tension filtrée non régulé (moyennant un petit découplage), j'ai aussi ajouter 2 diodes en série pour commander la ballaste afin de pouvoir descendre sous les 2V lors d'un court-circuit.
Les tensions de références sont + et -5V (vu que j'en ai besoin pour la partie génération de signaux, autant prendre celles-là)
hum bon j'ai juste jeté un oeil par curiosité ^^ je serais incapable de vérifier un tel montage sans plus d'indications -___-' et vu que j'ai pas lu tout les précédents posts ... !
mais il y a un petit truc tout bête que je comprend pas et je me demande si c'est pas une coquille : tu as si je ne m'abuse ton symbole de pile , rond , avec un + et un - avec très souvent un -5 ou 5 marqué au niveau des masses auquel les piles sont reliées. Pourquoi ?
Si mon commentaire vous a plus laissez nous un avis !
Nouveau sur Robot Maker ?
Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope aux articles, à la boutique et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être !
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!
#40
Posté 24 avril 2012 - 12:44
Normalement, si tu lis les post #2 #19 #20 #21 et #36, tu devrais être en mesure de comprendre le montage du post #38.hum bon j'ai juste jeté un oeil par curiosité ^^ je serais incapable de vérifier un tel montage sans plus d'indications -___-' et vu que j'ai pas lu tout les précédents posts ... !
Le 5 ou -5 qui est marqué, c'est la différence de potentiel entre le - et le + du générateur de tension.mais il y a un petit truc tout bête que je comprend pas et je me demande si c'est pas une coquille : tu as si je ne m'abuse ton symbole de pile , rond , avec un + et un - avec très souvent un -5 ou 5 marqué au niveau des masses auquel les piles sont reliées. Pourquoi ?
Ainsi, V11 génère du 5V et le + est relié à la masse, donc la tension à la borne - est de -5V.
De même, V12 à une tension de -5V et le - est relié à la masse. Ainsi, la tension à la borne + est de -5V. J'aurais pu inversé les bornes de V12 en lui demandant du 5V au lieu du -5V, ça aurait été pareil.
++
Black Templar
Mon site internet : http://ferdinandpiette.com/
Répondre à ce sujet
0 utilisateur(s) li(sen)t ce sujet
0 members, 0 guests, 0 anonymous users