Aller au contenu


Contenu de Bacab

Il y a 108 élément(s) pour Bacab (recherche limitée depuis 04-mai 13)



#109089 Se débarasser d'un "HUM" sur un projet audio

Posté par Bacab sur 24 avril 2020 - 09:10 dans Electronique

 

ça ça ne m'étonne pas plus que ça =) 

Chercher du côté des convertisseurs était ma première hypothèse =) Mes tests proposés étaient uniquement pour te convaincre de chercher ailleurs que l'environnement externe =)  Tu peux essayer avec un convertisseur 5V externe à ton arduino =)  en passant par les broche GND et 5V de ta carte.

Ah, et bien tu as eu raison !

 

Et j'ai vérifié : lorsque j'observe la tension d'alimentation à l'oscilloscope j'ai de très jolies raies à 172.5 Hz et à 86 Hz

 

Je vais essayer ça et je vais aussi essayer avec un filtre passe très bas pour filtrer la tension d'alimentation.




#109087 Se débarasser d'un "HUM" sur un projet audio

Posté par Bacab sur 24 avril 2020 - 08:57 dans Electronique

Alors après essai couper le courant électrique n'a rien donné.

 

En revanche j'ai découvert que si je sépare l'alimentation de l'amplificateur et celle de l'Arduino alors le bruit disparait !

 

J'ai essayé en tout quatre configuration :

- Arduino alimenté par pile 9V et amplificateur sur le Vin de l'arduino ==> Hum présent;

- Arduino alimenté par pile 9V et amplificateur en parallèle ==> Hum présent;

- Arduino alimenté par pile 9V et amplificateur alimenté par alimentation stabilisé (masses communes) ==> aucun bruit;

- Arduino alimenté par alimentation stabilisé et amplificateur alimenté par pile 9V (masses communes) ==> aucun bruit.

 

Je vais maintenant regarder à l'oscilloscope la gueule de la tension d'alimentation de l'Arduino pour voire.




#109082 Se débarasser d'un "HUM" sur un projet audio

Posté par Bacab sur 24 avril 2020 - 07:14 dans Electronique

Du coup si tu es déjà pas sur le réseau ça conforte que  c'était du pas 50Hz à cause du réseau ^^

Sauf si je capte avec l'ampli le champ électromagnétique que provoque le réseau, non ?




#109080 Se débarasser d'un "HUM" sur un projet audio

Posté par Bacab sur 24 avril 2020 - 07:04 dans Electronique

pour compléter : 

Si tu en doutes, fais le test en tournant complètement sur batterie ...  

Par contre note que tu peux aussi avoir un convertisseur qui te pourri le truc ... Donc essaye en changeant de convertisseurs pour voir si ça te change la donne...

Je tourne déjà complétement sur batterie 9V.




#109076 Se débarasser d'un "HUM" sur un projet audio

Posté par Bacab sur 24 avril 2020 - 06:49 dans Electronique

Bonjour,

 

Je prépare pour faire une surprise à un ami une boîte à musique sur la base d'une Arduino Uno, d'un Shield Wave d'Adafruit (https://www.adafruit.com/product/94), d'un amplificateur (https://www.velleman...ts/view?id=9181) et d'un haut-parleur. Le tout est alimenté par une pile 9V.

 

Le principe est que lorsque mon ami appuiera sur un bouton, la boite jouera un morceau de musique ou un son qui a une signification particulière pour lui.

 

J'ai reçu, assemblé et testé le montage aujourd'hui et ça marche parfaitement à l'exception d'un "hum" audible même lorsque le shield n'envoie plus de musique à l'amplificateur. J'ai analysé le spectre du "hum" en question et voila ces caractéristiques :

spectro.png

On a donc des raies à :

- 172.5 Hz (3x57.5 Hz)

- 345 Hz (6x57.5 Hz)

- 517.5 Hz (9x57.5 Hz)

- 690 Hz (12x57.5 Hz)

je pense que vous voyez la logique.

 

Je suppose que le 57.5 Hz provient du réseau électrique : ais-je raison ou tord ?

Si oui comment puis-je protéger mon circuit (mes premiers essais avec de l'alu semblent améliorer la situation mais c'est pas Byzance) ?

 

Je vous remercie par avance pour vos réponses, conseils...




#108741 Blabla divers

Posté par Bacab sur 06 avril 2020 - 11:40 dans Bric-à-brac

Que veux tu faire? y a surement une solution a ton problème.

Ça dépends, s'il espérait faire le café avec, je pense qu'effectivement c'est rappé :)




#108726 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 05 avril 2020 - 06:06 dans Electronique

Voila le projet fini en utilisation :

J'ai fait ça un peu à l'arrache donc on voit pas super bien sur quoi j'appuie parce que j'ai la main dessus. N'hésitez pas à lire la description de la vidéo qui contient plus d'informations.




#108518 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 28 mars 2020 - 09:28 dans Electronique

Si tu mets ça en perspective par rapport au temps pour avoir le pcb je trouve ça court :P

C'est pas faux :)




#108512 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 27 mars 2020 - 09:23 dans Electronique

Du coup autant ne faire que réimprimer plutôt que refaire le pcb non ? 

Ben justement c'est ce que je fais, je réimprime le panneau et je garde le PCB. Par contre c'est long : la panneau 7h d'impression et la boîte 14 h.




#108507 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 27 mars 2020 - 07:33 dans Electronique

Quand je fais un PCB je commence toujours par positionner les 4 trous de fixations et dessiner le contour de ma carte ... 

Ou quand j'ai des composants qui se fixent dans un panneau je commence par placer ces composants en premier ... 

 

C'est quoi qui ne s'aligne pas dans ton cas? 

 

C'est toi qui a fait ton panneau ? 

Oui c'est moi qui ait fait le panneau. Ça ne s'alignait pas car je n'avais pas prévu d'avoir recours à un PCB au début (juste une plaquette de prototypage et des fils libres). J'ai fait le PCB après (pour résoudre une fois pour toutes ces problèmes de court-circuit) et à 1 mm près il ne s'alignait pas avec le panneau déjà imprimé. Ça plus une bourde de ma part (le PCB fait pile la taille du premier panneau, difficile de l'insérer dans sa boîte comme ça). Je suis donc partis pour réimprimer la boîte aussi. Mais ça avance :




#108491 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 27 mars 2020 - 01:40 dans Electronique

Sympa comme projet, tu aurais une vidéo en action avec ton "jeu" ?

J'en ferai une dés que l'habillage sera terminé : malgré mes efforts le PCB ne s'aligne pas correctement avec le panneau donc je dois refaire ce dernier ce qui va me prendre jusqu'à la fin de la semaine je pense.




#108393 La boulette de ma Prusa...

Posté par Bacab sur 25 mars 2020 - 07:05 dans Impression 3D et Imprimantes 3D

Aïe ! Bon courage pour la réparation.




#108388 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 25 mars 2020 - 05:46 dans Electronique

Du coup il y avait bien un écart entre le schémas et le réel ? Et quand tu mettais un potentiomètre en butté tu faisais un court circuit ? 

Il y avait sans doute un écart entre le schéma et le circuit que j'avais fait sur une carte pastillée de prototypage. Mettre un potentiomètre en butée causait certaines fois un problèmes mais pas tout le temps. Et de temps à autres il y avait des oscillations. Je me suis demandé s'il était possible qu'entre 2 pattes une capacité ait pu apparaître.




#108378 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 25 mars 2020 - 08:59 dans Electronique

Au final il y avait bien un court circuit et je ne l'avais pas trouvé car les sondes de mon multimètres ne fonctionnaient plus. J'ai changé les sondes et ça va beaucoup mieux. Et comme les PCB chinois c'est pas chère j'ai fini par en faire faire un pour ce montage aussi simpliste soit-il (ce qui fait gagner accessoirement beaucoup de place en réduisant le nombre de fils !).

Par contre avec la crise sanitaire j'ai attendu longtemps mon PCB mais bon il a fini par arriver, j'ai soudé et testé et c'est nickel :DSC_0037.JPG

 




#107498 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 26 janvier 2020 - 11:18 dans Electronique

Mea culpa  j'ai mal lu le schemas et fais un amalgame avec la lecture de la description du problème rencontré . 

Personnellement juste à la lecture du problème rencontré je chercherais à voir si il y a pas un décalage entre le schémas et la réalisation ... Genre un potentiomètre qui aurait eu deux fils inversé ...
Pour cela, sous tension, prendre un multimètre et vérifier manuellement chacune des voies sur l'ensemble de la plage du potentiomètre en mode " lecture du voltage " 

Ou bien hors tension, en mode lecture de la valeur de la résistance. 

 

Bon ben je connais le programme du week-end prochain. Merci !




#107493 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 25 janvier 2020 - 06:18 dans Electronique

Tu a pris quoi comme arduino ?

Pour faire quelque chose de similaire, j'ai pris une arduino Leonardo, plus adaptée pour ça, et elle a 12 entrées analogique donc même si j'en perds 2 il m'en reste encore mais pourquoi j'en perdrais :D .

Par contre je ne comprend pas pourquoi tu as ce problème avec la position des potentiomètres. :(

J'utilise une Arduino Uno car c'est ce que j'avais sous la main lorsque j'ai commencé ce projet. Au départ je n'avais pas saisi que le shield d'extension d'entrées numériques me priverait de deux entrées analogiques.

Je pensais que le plus dure serait de reprogrammer la puce qui fait la communication entre l'Arduino et le PC mais au final, grâce au code d'UnoJoy, je n'ai mis qu'un WE pour faire reconnaître l’Arduino comme un joystick à 6 axes et 24 boutons (seul 16 sont utilisés).




#107491 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 25 janvier 2020 - 05:58 dans Electronique

rajoute des petites résistances de chaque côté de tes potentiomètre. 
Avec un tel schémas tu n'as pas le droit d'aller en buté sur tes potientiomètres... Sinon c'est comme si tu court-circuit tes autres potentiomètres... 

Avec les petites résistance de chaque côté tu pourras aller en buté ça ne fera pas de court-circuit.  

Merci pour ta réponse mais je ne comprends pas pourquoi il y aurait-il un court circuit ? Peut importe la position du curseur la résistance entre la pin 1 (+5V) et la pin 3 (GND) de chaque potentiomètre est de 100k. Il n'y a que la pin 2 qui, lorsque le curseur est à 0, est directement reliée à l'entrée ADC de l'Arduino (si cette entrée est celle qui est transmise par le multiplexeur).




#107486 Problème avec un multiplexeur analogique et l'ADC de l'Arduino

Posté par Bacab sur 25 janvier 2020 - 12:54 dans Electronique

Bonjour,

 

Il y a quelques temps j'ai finis de fabriquer une "boîte à boutons" que je souhaiterais utiliser avec mes simulateurs d'avions sur mon ordinateur. La boîte comporte 16 boutons et 6 axes. Grâce au projet Unojoy j'ai pu reprogrammer mon Arduino pour la faire reconnaître comme un joystick par mon ordinateur et cela fonctionne très bien.

 

DSC_0032.JPG

 

Pour avoir 16 entrées numériques et 6 entrées analogiques j'ai utilisé un shield DFRobot qui utilise un multiplexeur géré par I2C. Par conséquent 2 entrées analogiques (A4 et A5 si je ne dis pas de bêtise) ne sont pas accessible et j'ai ajouté un multiplexeur analogique CD4051B pour quand même avoir mes six axes. L'entrée A1 de l'Arduino est donc toujours celle qui est lue. Comme les potentiomètres sont des 100k linéaires (erreur de ma part à la commande) j'ai mis 2 lectures consécutives de l'ADC et je ne garde que la seconde pour laisser le temps au condensateur de l'ADC de se charger (à ma connaissance il n'est pas possible de ralentir l'ADC de l'Arduino au delà de la valeur par défaut puisque le prescaler a 128 pour valeurs max.).

 

Je rencontre néanmoins un problème lorsque certains axes sont dans certaines positions. J'ai remarqué que si je mets un des axes à sa position maximum (1023 sur l'ADC) un autre axe se met à contrôler tous les axes en même temps. Autre bizarrerie : si je mets tous les axes à ~50% les lectures deviennent complètement erratiques (variation des valeurs lues très rapide entre 0 et 1023).

 

J'ai, en premier lieu, suspecté un court-circuit mais je ne le trouve pas. Est-ce qu'il y a une autre piste à explorer ?

 

Je vous remercie par avance pour votre aide.

 

Le code :

#include <clsPCA9555.h>
#include "UnoJoy.h"

int time_delay = 10;
int i = 0;
int prev_value[6] = {128,128,128,128,128,128};
PCA9555 ioport(0x20);

void setup()
{
  setupPins();
  setupUnoJoy();
}

void loop()
{
  delay(time_delay);
  // Always be getting fresh data
  dataForController_t controllerData = getControllerData(i, prev_value);
  prev_value[0] = controllerData.x_axis;
  prev_value[1] = controllerData.y_axis;
  prev_value[2] = controllerData.z_axis;
  prev_value[3] = controllerData.r_x_axis;
  prev_value[4] = controllerData.r_y_axis;
  prev_value[5] = controllerData.r_z_axis;
  setControllerData(controllerData);
  
  i++;
  if(i==6)
  {
    i=0;
  }
}

void setupPins(void)
{
  ioport.begin();
  ioport.pinMode(ED0, INPUT);
  ioport.pinMode(ED1, INPUT);
  ioport.pinMode(ED2, INPUT);
  ioport.pinMode(ED3, INPUT);
  ioport.pinMode(ED4, INPUT);
  ioport.pinMode(ED5, INPUT);
  ioport.pinMode(ED6, INPUT);
  ioport.pinMode(ED7, INPUT);
  ioport.pinMode(ED8, INPUT);
  ioport.pinMode(ED9, INPUT);
  ioport.pinMode(ED10, INPUT);
  ioport.pinMode(ED11, INPUT);
  ioport.pinMode(ED12, INPUT);
  ioport.pinMode(ED13, INPUT);
  ioport.pinMode(ED14, INPUT);
  ioport.pinMode(ED15, INPUT);
  pinMode(A0, OUTPUT);
  pinMode(A1, INPUT);
  pinMode(A2, OUTPUT);
  pinMode(A3, OUTPUT);
}

dataForController_t getControllerData(int axis_to_read, int* data_to_save)
{
  dataForController_t controllerData = getBlankDataForController();
  controllerData.x_axis   = data_to_save[0];
  controllerData.y_axis   = data_to_save[1];
  controllerData.z_axis   = data_to_save[2];
  controllerData.r_x_axis = data_to_save[3];
  controllerData.r_y_axis = data_to_save[4];
  controllerData.r_z_axis = data_to_save[5];
  switch(axis_to_read)
  {
    case(0):
      // cas 0 = 000
      digitalWrite(A0, LOW);
      digitalWrite(A2, LOW);
      digitalWrite(A3, LOW);
      analogRead(A1);
      controllerData.x_axis = analogRead(A1)>>2;
      break;
    case(1):  
      // cas 1 = 001
      digitalWrite(A0, HIGH);
      digitalWrite(A2, LOW);
      digitalWrite(A3, LOW);
      analogRead(A1);
      controllerData.y_axis = analogRead(A1)>>2;
      break;
    case(2):
      // cas 2 = 010
      digitalWrite(A0, LOW);
      digitalWrite(A2, HIGH);
      digitalWrite(A3, LOW);
      analogRead(A1);
      controllerData.z_axis = analogRead(A1)>>2;
      break;
    case(3):
    // cas 4 = 100
      digitalWrite(A0, LOW);
      digitalWrite(A2, LOW);
      digitalWrite(A3, HIGH);
      analogRead(A1);
      controllerData.r_x_axis = analogRead(A1)>>2;
      break;
    case(4):
      // cas 5 = 101
      digitalWrite(A0, HIGH);
      digitalWrite(A2, LOW);
      digitalWrite(A3, HIGH);
      analogRead(A1);
      controllerData.r_y_axis = analogRead(A1)>>2;
      break;
    case(5):
      // cas 7 = 111
      digitalWrite(A0, HIGH);
      digitalWrite(A2, HIGH);
      digitalWrite(A3, HIGH);
      analogRead(A1);
      controllerData.r_z_axis = analogRead(A1)>>2;
      break;
  }
  
  controllerData.btn_01 = !ioport.digitalRead(ED0);
  controllerData.btn_02 = !ioport.digitalRead(ED1);
  controllerData.btn_03 = !ioport.digitalRead(ED2);
  controllerData.btn_04 = !ioport.digitalRead(ED3);
  controllerData.btn_05 = !ioport.digitalRead(ED4);
  controllerData.btn_06 = !ioport.digitalRead(ED5);
  controllerData.btn_07 = !ioport.digitalRead(ED6);
  controllerData.btn_08 = !ioport.digitalRead(ED7);
  controllerData.btn_09 = !ioport.digitalRead(ED8);
  controllerData.btn_10 = !ioport.digitalRead(ED9);
  controllerData.btn_11 = !ioport.digitalRead(ED10);
  controllerData.btn_12 = !ioport.digitalRead(ED11);
  controllerData.btn_13 = !ioport.digitalRead(ED12);
  controllerData.btn_14 = !ioport.digitalRead(ED13);
  controllerData.btn_15 = !ioport.digitalRead(ED14);
  controllerData.btn_16 = !ioport.digitalRead(ED15);
  
  return controllerData;
}

Le schéma du montage (je n'ai mis que la partie analogique) :

schema_electrique.JPG

 

Contrairement à ce qui est affiché sur le schéma c'est bien un CD4051 que j'utilise (pas trouvé de schéma pour Spice donc j'ai mis un circuit équivalent). Le voltmètre avec la résistance d'un Meg en parallèle représente l'ADC de l'Arduino Uno.




#107311 Besoins de conseils : construction d'un enregistreur sous-marin

Posté par Bacab sur 13 janvier 2020 - 10:08 dans Electronique

Projet fini !

DSC_0034.JPG

DSC_0035.JPG

J'ai cherché pendant longtemps pourquoi j'avais des "trous" dans les enregistrements pour finalement réaliser que l'ogg n'est pas le format le mieux standardisé (3 softwares essayés, pas un qui lit la même chose que l'autre dans mon enregistrement de test). En revanche une fois converti en wav aucun problème.

Plus qu'à aller à la mer enregistrer quelque chose d'intéressant !

 




#107280 Traceur sonore

Posté par Bacab sur 11 janvier 2020 - 12:50 dans Electronique

Merci! 

 

Je ne partage pas les fichiers sources, juste les idées, résultat etc.

 

L'ampli audio est fini. Il sera posé sur des pointes de tests pour être programmé et testé. 

 

attachicon.gifbench0.PNG

 

J'attends de finir l'autre carte pour tout envoyer en fabrication.

Tant pis.




#107228 Traceur sonore

Posté par Bacab sur 06 janvier 2020 - 09:12 dans Electronique

Je trouve ton projet très intéressant. Pourrais tu partager le schéma de la partie filtrage/amplification avant numérisation s'il te plaît ?




#107197 Bonne année 2020

Posté par Bacab sur 04 janvier 2020 - 08:06 dans Bric-à-brac

Bonne année à vous tous !




#104906 Comment utiliser une pince à sertir

Posté par Bacab sur 26 août 2019 - 07:14 dans Réalisation de cartes éléctronique

J'ai fini par réussir, non sans avoir perdu patience plus d'une fois... C'est cette vidéo qui m'a le plus aidé au final :

Merci à tous pour vos réponses.




#104880 Comment utiliser une pince à sertir

Posté par Bacab sur 25 août 2019 - 08:22 dans Réalisation de cartes éléctronique

Merci je regarderai ça !




#104871 Comment utiliser une pince à sertir

Posté par Bacab sur 25 août 2019 - 05:06 dans Réalisation de cartes éléctronique

Ta pince sert pour ce genre de cosse :

attachicon.gifproxy.duckduckgo.com.jpeg

 

Il faut écraser le bout de la cosse (le petit tube en bout)

C'est ballo le kit que j'ai acheté (qui contenait la pince et les connecteurs) ne contient pas de connecteurs de ce type, uniquement ceux que j'ai pris en photo. Je crois que je me suis fait eu.