Quoi de neuf 2014

From Eric

Revision as of 09:52, 28 February 2014 by Ejenn (Talk | contribs)
Jump to: navigation, search

Contents

Février 2014

  • 28/2/2014
    • Me voici de retour après une longue période de léthargie...
    • J'ai repris une idée de montage que j'avais eue l'année dernière : une horloge non linéaire. Il s'agit simplement de modifier une horloge électronique banale afin que son mouvement ne soit plus régulier mais reste "asymptotiquement" correct. "L'électronique" de commande utilise un Attiny13A, un module RTC à base de DS1307 (acheté sur e-bay pour trois fois rien) et un pont en H (pour la commande du moteur pas-à-pas de l'horloge).
Crazyclock-1.jpg
Crazyclock-2.jpg
Crazyclock-3.jpg
Crazyclock-4.jpg
    • Par ailleurs, voici un petit montage de controle par PID d'un moteur à courant continu. Le contrôle est ralisée au moyen d'ampli-ops. Le schéma suivra.
Motorpid-1.jpg
Motorpid-4.jpg
Motorpid-3.jpg


    • Et enfin, un début de carte à Z80. Ca me rappelle le bon vieux temps (aux alentours de 1983) : l'époque du ZX81 (hello Christophe!). Pour trouver un petit intérêt supplémentaire à l'exercice, j'ai décidé de mettre le peu de logique nécessaire à la génération des signaux de contrôle RAM, ROm et PIO dans un GAL (un 16V8D). Bon, ça n'est plus très à la mode mais pour de ptites choses... On trouvera quelques informations pratiques sur la programmation de ces choses dans la rubrique GALs. Voici une photo (sans intérêt) du montage actuel).
Z80-1.jpg
    • J'en ai profité pour acheter un petit programmateur universel : le "Genius" G540. Pour l'instant, il fonctionne plutôt bien.
G540-1.jpg


Janvier 2014

Néant.

Décembre 2013

Ensemble vide.

Novembre 2013

Nada.

Octobre 2013

Rien, rien de rien...

Septembre 2013

Aucune activité en électronique, faute de temps : achat d'une maison, déménagement, travaux...

Je vais tenter de suivre un MOOC. il s'agit de l' "Introduction to logic" sur coursera. A suivre.

Août 2013

Le quadcopter a maintenant 4 moteurs. J'ai repris le logiciel de contrôle (un truc tout simple en C++) qui communique avec l'Arduino embarqué au moyen d'une de ces fabuleuses puces de souris sans fil... Il reste désormais à attendre la réception d'un support d'hélice pour commencer les essais sérieux.

Au passage, déménagement en cours... Le dernier avant quelque temps, j'espère.

Trucs intéressants :

  • Odroid, des cartes à la sauce Raspberry, mais plus performantes (et plus chères, aussi). On pourra s'intéresser aussi à OLinuXino.
  • "La partie et le tout", d'Heisenberg.

Juillet 2013

Quelques travaux sur le quadcopter. Pas grand chose.

Juin 2013

  • 4/6/2013
    • Je suis enfin parvenu à obtenir une stabilisation du "balancier" sur mon "banc Quadcopter". L'asservissement n'est pas très rapide (ni très stable, ce qui est un comble), mais on va dire que ça fonctionne grosso modo. Je suis parvenu à quelque chose d'à peu près satisfaisant en ajoutant un I à mon PID. En effet, l'ESC réagit "par palier", ce qui induit soit une grosse erreur statique (si P est petit), soit d'horribles oscillations (si P est grand).
    • Je me suis fait une petite application Java pour pouvoir afficher la valeur des différents paramètres.
    • Bon, ça n'est pas génial mais ça me permet de passer à la phase 2 : utilisation de 4 moteurs et 4 hélices.
    • On trouvera quelques vidéos ici, , et encore .
    • Voila quelques photos. La première montre le banc en fonctionnement ; la deuxième montre le moniteur. La courbe très bruitée montre le signal d'angle retourné par l'accéléromètre ; le créneau montre la consigne d'angle. On constate que l'angle "suit" peu ou prou la consigne.
      Quadbench-1.jpg
      Quadbench-monit.jpg

Mai 2013

  • 15/5/2013
    • J'ai fait quelques premiers tests de la Kinect d'Xbox 360 dont j'ai fait l'acquisition sur ebay (50€ + 10€ pour l'alimentation externe 12V).
    • J'utilise pour l'instant le SDK sous Windows (avec Visual Studio Express 2012). C'est assez spectaculaire! Le SDK fournit permet non seulement d'accéder aux données brutes des capteurs (une caméra couleur, une caméra infrarouge), aux données de profondeur, mais aussi à des données plus élaborées relatifs à la position du corps (bras, jambes, tête, bouche,...).
    • Il existe aussi un driver et un ensemble de SDK utilisables sous Linux. Le driver est libfreenect ; l'API de base est OpenNI réalisée par la société qui a conçu le capteur ; l'API de plus haut niveau est NITE. Il existe de nombreux bindings : SimpleOpenNI pour Processing, Java, C#, etc. et même pour Common Lisp! Je n'ai encore rien utilisé de tout celà.
  • 9/5/2013
    • J'ai fait une première expérimentation de la bibliothèque de traitement d'image OpenCV. Je l'ai installée et recompilée sur un vieux Celeron. On trouvera quelques informations sur ce sujet dans la rubrique OpenCV. A partir de cette bibliothèque, on parvient par exemple très facilement à suivre un objet de couleur avec quelques lignes de code.
    • J'ai repris mes expérimentations sur les FPGA. A titre d'exemple, j'ai réalisé le pilotage d'un écran VGA (quelques lignes de VHDL). J'ai dans l'idée de faire un "pong" ou un "casse briques". Bref, quelque chose de très simple. (Les photos sont ici (zone privée).
    • A noter que je m'étais déjà frotté au VGA il y a deux ans, avec un DsPIC. J'étais alors parvenu à afficher quelque chose de très grossier (voir le journal à la date du 27/12/2011).
    • J'ai refait un petit récepteur infrarouge RC5.
  • 4/5/2013
    • Victor s'est cassé la clavicule...
  • 3/5/2013
    • J'ai réparé mon clone de "bus pirate" qui ne fonctionnait pas. La réparation est fort laide mais l'outil fonctionne désormais :
      Buspirate repaired.jpg
  • Date incertaine
    • J'ai dans l'idée de bricoler quelque chose avec une horloge à aiguilles. J'ai remplacé l'électronique de commande originelle par une simple électronique de commande du moteur pas-à-pas qui fait mouvoir les aiguilles (un pont en H à base de 2222 et 2907) :
      Crazyclock.jpg
    • Je pense faire une espèce d'horloge un peu déréglée dont l'aiguille des secondes avancerait à un rythme irrégulier tout en assurant une indication des minutes et des heures "exactes".
  • Date incertaine
    • Frédéric et moi avons commencé à construire notre "quadcopter". Le controle-commande sera réalisé par un Arduino.
    • Pour commencer, nous avons construit un petit balancier en aluminium afin de mettre au point l'asservissement de position horizontale. L'idée est de se faire la maine avec un seul moteur et un capteur d'accélération avant de faire quelque chose de plus gros (2 moteurs puis 4 moteurs). En voila une photo :
      Quadfredo-pic1.jpg
    • Les résultats ne sont pas trop mauvais. Nous avons réalisé un petit asservissement en PD. Les coefficients ont été fixés de façon empirique mais ça ne marche pas trop mal. La video que nous avons faite montre la réponse du système à une perturbation. Dans cette version, l'état d'équilibre est atteint assez lentement car (i) nous n'avons pas affiné les réglages et (ii) nous avons mis une batterie pour alourdir le système.
    • L'alimentation électrique est fournie par une alimentation à découpage de rack capable de délivrer 2x12A sous 12V (et 60A sous 5V !).
    • Cette première manipulation nous a permis de nous familiariser avec les ESC, et notamment avec les fonctions de programmations qu'ils offrent, ce que nous ignorions complètement jusqu'ici.
    • On trouvera plus d'information sur la page concernant le Quadcopter V1.
  • Date incertaine
    • A la demande de Frédéric, j'ai réalisé un petit boitier de commande de relais à partir d'une ligne série : l'utilisateur envoie des commandes du type "O1" pour ouvrir le relais 1, "C2" pour fernmer le relais 2, etc. Rien que de très évident... En voila cependant une photo :
      Relais.jpg

Avril 2013

Je crois bien que je n'ai rien fait...

Mars 2013

  • 9/3/2013
    • Assez peu d'électronique. Pas mal de Gap et un peu d'Haskell.

Février 2013

  • 4/2/2013
    • A force de lire des bouquins sur les asservissements, je me suis dit qu'il ne serait pas idiot d'en "fabriquer" un. Je me suis donc lancé dans la réalisation d'un régulateur de vitesse de moteur à courant continu. C'est l'exercice de base pour tout automaticien car (i) le matériel pour le réaliser est facile à obtenir, (ii) le modèle mathématique (fonction de transfert) est relativement simple.
    • Pour l'instant, je me suis contenté d'une approche empirique ; je traiterai "proprement" le problème plus tard...
    • Le système comporte un moteur à courant continu à balais (moteur de lecteur de CD) sur l'axe duquel j'ai collé un minuscule aimant au néodyme. La vitesse du moteur est obtenue au moyen d'un capteur à effet hall : lorsque l'aimant passe devant le capteur, un condensateur est déchargé ; il se recharge pendant que le rotor fait un tour. Vue la vitesse de rotation, l'exponentielle de chargement du condensateur est "très proche"" d'un segment de droite. Le signal en dent de scie est "recopié" au moyen d'un ampli-op monté en suiveur puis filtré à l'aide d'un filtre passe-bas discret. J'obtiens ainsi un signal dont la valeur reflète la vitesse de rotation (proche de VCC pour les petites vitesses lente car le condensateur est chargé pratiquement tout le temps et tendant vers 0 lorsque la vitesse augmente).
    • Le signal d'erreur (différence entre la vitesse de rotation et la consigne de vitesse) est calculé par un ampli-op monté en soustracteur.
    • Le signal d'erreur est amplifié (ampli-op monté en ampli inverseur); on y rajoute alors une tension d'offset (voir plus loin...) et on inverse le tout pour obtenir le signal de commande.
    • Le signal de commande est passé en entrée d'un montage darlington comprenant un transistor petits signaux et un transistor de puissance.
    • Voila ce à quoi ressemble le montage (;-)) :
Regulation vitesse moteur.jpg

Janvier 2013

  • 13/1/2013
    • Reprise de la "barrière infrarouge" à NE567 expérimentée l'année dernière :
      Capteur proximite schema.jpg
      Je vais rajouter un multiplexeur analogique pour pouvoir traiter plusieurs capteurs (utilisant un CD4051) et peut-être un PIC pour en faire un dispositif de détection autonome.
  • 4/1/2013
    • Je me suis amusé à installer un interpréteur basic sur ma carte à NXP1768 (arm). L'interpréteur s'appelle Jumentum. Cet interpréteur est accessible via Ethernet ou via une ligne série. Sur Ethernet, il est possible d'utiliser telnet ou un browser web. Jumentum propose un éditeur intégré assez puissant (plein écran). On trouvera quelques détails sur cette manip dans la rubrique intitulée "Interpréteurs sur microcontroleurs".
    • J'ai réalisé une toute petite expérimentation du chip MAX2606. Ce chip intègre dans un tout petit boitier SOT23-6 un oscillateur avec sa varicap. Il permet (notamment) de réaliser un adaptateur sortie audio -> FM. C'est ce que j'ai fait. On trouvera le détail dans la rubrique "Emetteurs radio". En attendant, voila une petite photo du montage comportant l'émetteur à MAX2606 et le récepteur à TDA7000 :
      Emetteur 2606 recepteur tda7000.jpg


Les années précédentes :

Personal tools