Vendredi, mai 6 2011

Fabriquer un sniffer série compatible 3V / 5V

Lors du développement d'interface série, il est toujours utile de savoir qui dit quoi, qu'envoi l'hôte à l'esclave, qu'envoi l'esclave à l'hôte, ça se fait très bien avec 2 interfaces séries mais encore faut-il en avoir 2, pour des signaux compatibles RS232 fluctuant entre -12V et +12V, pas de souci avec l'aide de 2 diodes comme dans le schéma ci-dessous, par contre, cela se corse lorsque les signaux sont à des niveaux TTL, voir en 3V.

rs232 sniffer (image de Embedded Freaks)

Mes essais avec des diodes rapides n'ont rien donné pour des tensions de 3 ou 5V, j'ai donc cherché une autre méthode pour coupler les lignes RX et TX, j'ai alors fouillé dans mes tiroirs et ai fini par dégoter un CD4001 (une quadruple porte NOR) qui attendait son tour, mais rien n'y a fait, cette série est bien trop lente, il me fallait du HEF, appel des réparateurs du coin, rien, passage express chez un pote, non plus, que des CD40XX, enfin, mon salut à été mon ancien lycée qui a pu me fournir un HEF4001 (fin de la paranthèse, « aventure pour un CMOS ») et là, aucun souci, la porte est suffisamment rapide, cela fonctionne parfaitement bien !

Voici le schéma de principe :

Rs232 sniffer Cmos

On oublie pas d'alimenter le CI et ça roule, on connecte les entrées RX et TX sur les lignes de données à sniffer et on retrouvera en sortie le mix des 2 permettant ainsi de voir les commandes envoyées par l'un et l'autre dans le bon ordre, rien de tel pour débugguer tranquillement... Notez que j'ai utilisé une quadruple porte NOR mais vous pouvez bien sûr utiliser n'importe quelle portes combinées ensemble du moment qu'au final, votre montage réalise bien une fonction OU, le mieux étant de se procurer un HEF4071 (quadruple porte OU) et éventuellement utilisé les portes restantes en buffer.

rs232 sniffer montage

Utilisé conjointement avec un Bus Pirate, on connecte l'alimentation du CMOS sur les broches GND et +5V du Bus Pirate, on active la ligne +5V (commande W), puis on branche la sortie de notre montage sur l'entrée RX (MISO), on entre dans le mode UART, on configure le tout, vitesse, etc...on bascule en mode « Live UART Monitor » et voilà, vous verrez alors défilez toutes les données circulant dans les lignes RX et TX de votre liaison série...

Rs232 sniffer Bus Pirate

Samedi, avril 23 2011

Régulateur à découpage à très faible coût

On utilise un peu partout les régulateurs de tension à découpage, ils permettent d'obtenir un rendement largement meilleur que les traditionnels régulateurs comme la célèbre série des 78xx qui se contentent de dissiper l'énergie sous forme de chaleur (à découvrir les régulateurs de tension de chez Mornsun qui nous annonce des rendements de plus de 96% compatible broche à broche avec les 78xx...)...

Créer une alimentation à découpage n'est pas vraiment ce qui se fait de plus simple, difficulté pour placer les composants, pour calculer les bonnes valeurs, pour trouver des composants de bonnes qualités (self, condos avec faible ESR...)
Tous ces points pris en considération, il devient intéressant de se procurer directement des alimentations toutes faites mais il faut alors payer chèr, trop chèr SAUF si on hack détourne l'utilisation originale d'un produit abordable comme on en trouve beaucoup sur internet, comme par exemple, cet adaptateur allume cigare / USB 1A pour moins de 1,5€ : Car Cigarette Powered 1000mA USB Adapter/Charger - Black (DC 12V)

sku_40470_1_small.jpg

Une attente d'1 mois après la commande et j'ai reçu quelques exemplaires de ces adaptateurs, peu de temps après, ils exhibaient leurs entrailles : sku_c2626c86f5304d2acb62b2708364c757.media.400x267.jpg

Les mesures ont révélées un rendement proche de 75%, ce qui est honorable pour le prix, le circuit utilisé, un XL1509 en version ajustable, permet en changeant 2 résistances de faire varier la tension de sortie, que demander de plus ?

Voici la page sur le wiki oû vous trouverez toutes les mesures et détails : Régulateur à découpage pas chèr

Vendredi, mars 11 2011

Intervallomètre, Acte 2 : Conception terminée

Voici la suite du billet précédent Intervallomètre, Acte 1 ou je décrivais la réalisation d'un intervallomètre programmable avec possibilité d'ajout de capteurs externes basé sur un article d'Elektor.

Je poursuis aujourd'hui l'article avec l'acte 2 et la fin de la réalisation du schéma de principe et du typon que vous pouvez voir ci-dessous.

Quelques explications sur le schéma :

  • Le bloc d'alimentation en haut à gauche, il est constitué d'un MAX1555 qui s'occupe de charger l'élément Lipo lorsqu'une alimentation externe est branchée, il est d'ailleurs possible de sélectionner le courant de charge en faisant un pont de IN_USB sur COMMON pour avoir un courant de charge de 100mA ou un pont de IN_DC à COMMON pour avoir 300mA, tout dépend de l'élément Lipo, mais 300mA devrait convenir dans la plupart des cas. La Led CHARGE permet comme son nom l'indique d'indiquer que l'élément est en charge. En sortie, on trouve un régulateur élévateur de tension à découpage (Switcher Step-Up Voltage Regulator) basé sur un LM2577, rien de particulier ici, notez juste que 2 potentiomètres sont reliés à la broche FeedBack, bien sûr, il ne faut en mettre qu'un des 2, cela permet de laisser le choix sur le type de potentiomètre (CMS ou DIP)
  • En dessous, on trouve un bloc « Optional », qui permet d'alimenter le montage en 12V, c'est un peu juste et ça risque de chauffer (12 - 5 * ~0,1A = 700mW à dissiper), le mieux aurait été d'avoir un régulateur à découpage comme celui décrit dans l'article Régulateur à découpage embarqué mais là, ça commençe à faire beaucoup...
  • Encore en dessous, le capteur de son, rien de particulier à part les 2 potentiomètres, même note qu'au dessus, on en met qu'un seul
  • Pour la partie controlleur, c'est la même chose que dans l'article originale, notez aussi qu'un seul des 2 mosfet doit être placé...

Intervallometre_-_schema_2.png

Pour le typon, les dimensions de la carte sont basées sur celle de l'afficheur, les boutons sont situés sur une autre platine.

Intervallometre_-_board_2.png

La suite, prochainement, sera pleine de soudure ;)...

Mercredi, mars 9 2011

Les CMS ? Bah en fait c’est pas si terrifiant (tutorial inside)

Quand j’ai débuté en électronique (y’as pas longtemps, ok :) ), je me faisait tout un monde de ces fameux composant CMS… Pfiouuu ça doit être dûr, comment tu reconnait le composant, comment tu le soude, etc….
La curiosité aidant, je m’y suis mis, histoire de voir de quoi il en retourne, et je dois avouer que pour le moment c’est plutôt plaisant. Imaginez : Toutes les valeurs de résistances courantes, dans une boite de 15cmx10cm, idem pour les condensateurs, etc…. De plus, la récup est encore plus facile que pour les composants plus classiques : ils sont partout ! Une simple carte mère de PC en contient plusieurs centaines ! (pour pas dire milliers sur certaines).

Boite de résistances CMS

Boite de résistances CMS

Bref, profitons de cet article pour tordre le cou a quelques idées reçues :

  • Il faut un équipement spécialisé (et très cher) pour souder les CMS.
    En fait, si on regarde de plus près la façon dont on soude un composant CMS, on se rend compte que c’est presque plus facile qu’avec un composant « classique » : Il faut au préalable bien étammer les pistes de cuivre, de préférence au fer plutôt qu’avec un bain d’étain, de manière à laisser une épaisseur un peu plus importante. Prenez ensuite le cms avec une pince 

    Pince pour CMS

    Pince pour CMS

    et positionnez le correctement, vous n’avez plus ensuite qu’à appliquer légèrement le fer à soufer sur les pattes pour réaliser la soudure. C’est là qu’on vois que finalement, chauffer un composant qui fais 0,5mm de large, c’est pas plus compliqué que de souder la patte d’un composant (qui doit faire dans les 0,2mm, à vu de nez)

  • Il est difficile de reconnaitre les différents composants.
    Effectivement, ce n’est « a priori » pas très évident, quand on ne sait pas comment la chose est codée. Mais en allant voir ici, on retrouve facilement ses petits. (Et pour les résistances, le code est très simple à comprendre, c’est comme le code couleur, mais avec les chiffres directement écrit à la place des couleurs)
  • On peut pas faire de prototypage avec des CMS
    Ben en fait, si :) Un morceau de platine qui traine (un vieux circuit simp leface par exemple), un peu de colle (j’utilise de la cyano, mais il doit y avoir moins toxique), quelques fils dénudés, on vous voilà parti pour faire un montage « en l’air », version miniature 

    Montage CMS en l'air

    Montage CMS en l'air

  • Ca fait mal aux yeux
    Là, je dis pas non, c’est petit, donc ça pique les yeux à la longue…. La solution : une lampe loupe, ça éclaire bien d’une jolie lumière blanche, et ça grossis pas mal les petits composants :)
    De même il existe plusieurs tailles de CMS, et vous êtes pas obligé de commencer par ceux qui sont plus petit qu’une tête d’épingle

Ok, je vous ai convaincu ? Alors comme je suis sympa, je vous ai préparé un petit montage tout simple pour vous entrainer : Un clignoteur à led qui alumera alternativement une led puis l’autre.

Schéma clignoteur à led

Schéma clignoteur à led

<edit> comme on me l’a fait remarquer en commentaire, j’ai oublié d’indiquer les valeurs sur mon schema, je vous les rajoute donc ici :

R1 et R4 : 470 ohms
R2 et 43 : 47k
C& et C2 : 47uF

Typon clignoteur à led

Typon clignoteur à led

Positionnement des composants

Positionnement des composants

Ps : si vous avez de la chance, tout les composants nécéssaires sont récupérables sur une seule carte-mère. Les transistors peuvent être remplacé par d’autres NPN, à tester au cas par cas (des fois ça oscille plus vite, des fois pas du tout)

Les CMS ? Bah en fait c’est pas si terrifiant (tutorial inside)

Quand j’ai débuté en électronique (y’as pas longtemps, ok :) ), je me faisait tout un monde de ces fameux composant CMS… Pfiouuu ça doit être dûr, comment tu reconnait le composant, comment tu le soude, etc….
La curiosité aidant, je m’y suis mis, histoire de voir de quoi il en retourne, et je dois avouer que pour le moment c’est plutôt plaisant. Imaginez : Toutes les valeurs de résistances courantes, dans une boite de 15cmx10cm, idem pour les condensateurs, etc…. De plus, la récup est encore plus facile que pour les composants plus classiques : ils sont partout ! Une simple carte mère de PC en contient plusieurs centaines ! (pour pas dire milliers sur certaines).

Boite de résistances CMS

Boite de résistances CMS

Bref, profitons de cet article pour tordre le cou a quelques idées reçues :

  • Il faut un équipement spécialisé (et très cher) pour souder les CMS.
    En fait, si on regarde de plus près la façon dont on soude un composant CMS, on se rend compte que c’est presque plus facile qu’avec un composant « classique » : Il faut au préalable bien étammer les pistes de cuivre, de préférence au fer plutôt qu’avec un bain d’étain, de manière à laisser une épaisseur un peu plus importante. Prenez ensuite le cms avec une pince 

    Pince pour CMS

    Pince pour CMS

    et positionnez le correctement, vous n’avez plus ensuite qu’à appliquer légèrement le fer à soufer sur les pattes pour réaliser la soudure. C’est là qu’on vois que finalement, chauffer un composant qui fais 0,5mm de large, c’est pas plus compliqué que de souder la patte d’un composant (qui doit faire dans les 0,2mm, à vu de nez)

  • Il est difficile de reconnaitre les différents composants.
    Effectivement, ce n’est « a priori » pas très évident, quand on ne sait pas comment la chose est codée. Mais en allant voir ici, on retrouve facilement ses petits. (Et pour les résistances, le code est très simple à comprendre, c’est comme le code couleur, mais avec les chiffres directement écrit à la place des couleurs)
  • On peut pas faire de prototypage avec des CMS
    Ben en fait, si :) Un morceau de platine qui traine (un vieux circuit simp leface par exemple), un peu de colle (j’utilise de la cyano, mais il doit y avoir moins toxique), quelques fils dénudés, on vous voilà parti pour faire un montage « en l’air », version miniature 

    Montage CMS en l'air

    Montage CMS en l'air

  • Ca fait mal aux yeux
    Là, je dis pas non, c’est petit, donc ça pique les yeux à la longue…. La solution : une lampe loupe, ça éclaire bien d’une jolie lumière blanche, et ça grossis pas mal les petits composants :)
    De même il existe plusieurs tailles de CMS, et vous êtes pas obligé de commencer par ceux qui sont plus petit qu’une tête d’épingle

Ok, je vous ai convaincu ? Alors comme je suis sympa, je vous ai préparé un petit montage tout simple pour vous entrainer : Un clignoteur à led qui alumera alternativement une led puis l’autre.

Schéma clignoteur à led

Schéma clignoteur à led

<edit> comme on me l’a fait remarquer en commentaire, j’ai oublié d’indiquer les valeurs sur mon schema, je vous les rajoute donc ici :

R1 et R4 : 470 ohms
R2 et 43 : 47k
C& et C2 : 47uF

Typon clignoteur à led

Typon clignoteur à led

Positionnement des composants

Positionnement des composants

Ps : si vous avez de la chance, tout les composants nécéssaires sont récupérables sur une seule carte-mère. Les transistors peuvent être remplacé par d’autres NPN, à tester au cas par cas (des fois ça oscille plus vite, des fois pas du tout)

Samedi, mars 5 2011

Indicateur de niveau de batterie

Ceux qui ont suivi auront constaté que mon petit labo mobile était équippé d’un onduleur, et donc d’une batterie, qui sert également de source de courant 12v pour mes montages. Il m’est apparu intéréssant de pouvoir visualiser la quantité d’énergie qui m’était encore disponible.

Indicateur de niveau de batterie

Indicateur de niveau de batterie

schema niveau de batterie

schema niveau de batterie

En fait, c’est assez simple, le LM3914 faisant pratiquement tout le travail pour nous :) L’important ici consiste à bien régler la plage de tension utile, car avec seulement 10 LEDs, il est important de bien cibler la zone intéréssante pour pouvoir visualiser la baisse de tension.

Quelques explications :

L’intensité du courant traversant les LEDs est définie par R1, selon la formule I=12,5/R1
La tension max (celle qui fera s’éclairer notre dernière LED) est définie par Uref = 1,25*(1+((R2+R3)/R1))      (*)
La tension minimum (celle qui fera s’éclairer notre première LED) est définie par R4+R5 (mais j’ai fait par tatonnement pour celle là, désolé ;) , ici elle correspond à 11v environ)     (*)

(*) du fait du diviseur de tension constitué par R6 et R7, la tension max et la tension min seront en fait la moitié de celles attendues : par exemple, dans le cas du schéma fourni ici, la tension max sera non pas de 1,25*(1+(2K/470)) = 6,57 mais 6,57*2=13,14, ce qui correspond à la tension max de notre batterie lors de la charge.

note : schéma grandement inspiré de celui-ci, ainsi que des schémas de référence constructeur

Indicateur de niveau de batterie

Ceux qui ont suivi auront constaté que mon petit labo mobile était équippé d’un onduleur, et donc d’une batterie, qui sert également de source de courant 12v pour mes montages. Il m’est apparu intéréssant de pouvoir visualiser la quantité d’énergie qui m’était encore disponible.

Indicateur de niveau de batterie

Indicateur de niveau de batterie

schema niveau de batterie

schema niveau de batterie

En fait, c’est assez simple, le LM3914 faisant pratiquement tout le travail pour nous :) L’important ici consiste à bien régler la plage de tension utile, car avec seulement 10 LEDs, il est important de bien cibler la zone intéréssante pour pouvoir visualiser la baisse de tension.

Quelques explications :

L’intensité du courant traversant les LEDs est définie par R1, selon la formule I=12,5/R1
La tension max (celle qui fera s’éclairer notre dernière LED) est définie par Uref = 1,25*(1+((R2+R3)/R1))      (*)
La tension minimum (celle qui fera s’éclairer notre première LED) est définie par R4+R5 (mais j’ai fait par tatonnement pour celle là, désolé ;) , ici elle correspond à 11v environ)     (*)

(*) du fait du diviseur de tension constitué par R6 et R7, la tension max et la tension min seront en fait la moitié de celles attendues : par exemple, dans le cas du schéma fourni ici, la tension max sera non pas de 1,25*(1+(2K/470)) = 6,57 mais 6,57*2=13,14, ce qui correspond à la tension max de notre batterie lors de la charge.

note : schéma grandement inspiré de celui-ci, ainsi que des schémas de référence constructeur

Vendredi, mars 4 2011

Intervallomètre, Acte 1

Dans un article d'Elektor du numéro de février est décrit un intervallomètre programmable nommé le TimeClick plutôt intéressant, rien de révolutionnaire mais l'interface à l'air plutôt bien conçue et il est possible de rajouter à peu près n'importe quel capteur pour déclencher les prises de vues.

De mon côté, m'essayant depuis peu à faire des TimeLapses (Mont-Royal Time Lapse #2, Fabriquer son propre Space Invader), la fabrication d'un tel appareil me simplifierait grandement les choses, cependant, pour mon utilisation personnelle, il manque quelques petits choses :

  • Il me le faut le plus petit possible pour tenir dans le sac d'appareil photo qui est déjà bien chargé, donc, utilisation au maximum de composants CMS, de plus, le choix de 6 piles 1,5V AA de la version originale n'est pas envisageable, je vais m'orienter vers une alimentation basé sur un seul élément Lipo associé à une alimentation à découpage dite « STEP-UP »
  • Dans le cas de TimeLapse très long, pouvoir être alimenté en 12V histoire d'y brancher directement une batterie au plomb.

Le schéma de principe ne devrait plus bouger, la phase de routage est en cours.
Intervallomètre - Schéma de principe Intervallomètre

- page 2 de 13 -