Overblog Suivre ce blog
Administration Créer mon blog
6 juin 2013 4 06 /06 /juin /2013 11:00

Voici l'ultime billet concernant cette horloge, juste pour en résumer l'histoire:

horloge.jpg

C’est au hasard d’une discussion avec un collègue que j’ai découvert l’horloge Qlocktwo et ses nombreux clones.

Il s’agit d’une horloge qui affiche l’heure en toutes lettres en allumant certains caractères pré-disposés sur un cadran. Cela faisait longtemps que j’entendais parler de l’Arduino et je me suis dit que c’était là une bonne occasion de m’y mettre et de faire ma propre version de ce qu'on appelle une word clock.

Etant aussi passionné de Chinois je me suis dit qu’elle serait encore plus belle avec un cadran dans cette langue, et qu’elle ferait bon effet accroché au mur de mon salon.

J’y ai aussi ajouté quelques fonctionnalités au passage:

  • Réglage automatique de la luminosité en fonction de la luminosité ambiante
  • Réglage automatique de l’heure via un récepteur DCF77
  • Détecteur de mouvement qui permet une extinction du cadran au bout d’un certain temps ainsi qu’un rallumage automatique dès qu’une présence est détectée.
  • Modes « démo » permettant de faire défiler l’heure en accéléré.
  • Optimisation de la consommation électrique de l’ensemble

Techniquement l’horloge est construite autour d’un micro-contrôleur AVR ATMega 328, issu d’une carte Arduino Duemilanove, utilisée pendant la phase de développement. Les LED sont pilotées via un Max7219 qui permet de piloter une matrice de 8×8 LED (le cadran comporte 5*8 LED).

L’horloge RTC est une breakout board à base de DS1307 et la mise à l’heure automatique est assurée par un récepteur DCF77 récupéré sur une station météo achetée quelques euros chez un soldeur (c’est moins cher que d’acheter le récepteur DCF77 seul…).

Le logiciel a été développé en C et C++ avec Atmel Studio, mon environnement de développement Arduino de prédilection.

 

J’ai aussi trouvé une aide précieuse sur le forum Arduino.cc francophone, dont un membre m’a même proposé de me faire le circuit imprimé final, permettant ainsi de faire tenir le tout dans le boîtier choisi. Bricoleurs d'AVR, je vous encourage à aller visiter son site.

 

Mettre au point le logiciel n’a pas été la partie la plus difficile.

La réalisation du cadran et de la matrice de LED a nécessité de nombreuses heures de travail, et plusieurs tentatives. Le cadran est peint à la main, sur un calque sur lequel seul le contour des caractères a été imprimé. Il y a plusieurs couches passées au stylo à peinture. Une couche de papier sulfurisé forme un diffuseur de lumière.

La matrice de LED est en carton de boite à chaussure collée à la colle chaude, avec une couche de feutre bleu pour limiter les pertes de lumière. Elle porte les stigmates des diverses tentatives effectuées:

2012 09 20 4603

Les LED rouges utilisées ont été dépolies à la meule afin de mieux diffuser la lumière.

 

2012 09 19 4605 cadre

Le résultat final est visible dans la vidéo ci-dessous:


 

Enfin pour les plus curieux, le schéma électrique (Fritzing) est celui-ci:

cibiao 1.6

 

Le code source (C++) devrait être bientôt disponible sur GitHub.

Repost 0
Published by breizhmakers - dans horloge
commenter cet article
9 mai 2013 4 09 /05 /mai /2013 18:35

Ca faisait un moment que j'avais envie d'un oscilloscope, même limité aux capacités d'une carte son, alors après quelques recherches, j'ai opté pour l'excellent Soundcard Oscilloscope. C'est vraiment un logiciel très complet et surtout simple à utiliser. Il fait aussi spectrographe et générateur de fréquences.

 

Niveau hardware, je me suis basé sur ce schéma, trouvé ici:

http://www.sciencetronics.com/geocities/bilder/images/electronics/projects/soundcard_input_sch.gif

Mais j'y ai apporté quelques modifications:

  • J'ai remplacé le CA3140 par un TL072, car j'avais ça qui trainait dans un tiroir. C'est un double ampli-op.
  • J'ai ajouté une protection contre les surtentions sur les entrées non-inverseuses des AOP, à base de diode zener 4.7v montées tête-bèche.
  • Enfin j'ai aussi prévu une alim soit via une alimentation stabilisée, soit via le port USB, avec une diode de protection contre les inversions de polarité et les court-circuits de l'alim externe quand on utilise l'alimentation via l'USB. Par contre je n'ai pas protégé le port USB si jamais on branche en même temps l'alim externe.

Le schéma définitif est le suivant:

interface sound card oscilloscope schema

Les composants sont:

C1,C2,C3,C6: 22µF, 16V

C4,C5: 100 nF

R1,R2,R3,R4: 2.2MΩ

R5,R6: 2.2KΩ

D1,D2,D3,D4: Zener 4.7V telle que 1N4732A

TL1: TL072

 

Niveau circuit imprimé, c'est du fait main sur une plaquette pré-perforée:

2013 05 09 5169

A gauche on a les câbles pour les deux canaux, à droite le jack de sortie, l'alim USB et l'alim externe.

De plus près ça donne ça:

2013 05 09 5170

 

Et au dos, eh bien c'est comme toujours pas très propre pour ce genre de montage, mais ça marche:

2013 05 09 5171

 

J'ai même fait un boitier, dans le genre fait maison vintage. J'ai souvent fait des boitiers dans des boîtes de pellicules photo. Là j'ai recyclé un boîtier d'un montage que j'avais fait il y a une bonne vingtaine d'années et qui ne servait plus.

(Parce que les boîtes de pellicule photo c'est un truc qui a disparu depuis quelque années déjà).

Voici donc le système avec le canal A utilisé:

2013 05 09 5173

 

J'utilise l'appli Android FuncGen comme générateur de signaux. C'est simple, pratique et gratuit.

2013 05 09 5174

Essai avec un signal triangulaire:

2013 05 09 5175

 

Me voilà équipé!

Ca devrait pouvoir m'aider, surtout à diagnostiquer des signaux logiques (trains d'impulsions par exemple).

Repost 0
Published by breizhmakers
commenter cet article
9 avril 2013 2 09 /04 /avril /2013 22:20

C'est lors du Jardin Numérique #2 que j'ai découvert le projet Makey Makey.

La carte Makey-Makey est en fait un Arduino Leonardo customisé et les inventeurs ont eu la bonne idée de rendre leur logiciel open-source. Ce sont des entrées à haute impédance. La carte est vue comme un clavier et une souris USB.

 

J'ai eu envie d'essayer la chose. Plutôt qu'acheter une Makey-Makey à 50 euros j'ai acheté un Arduino Leonardo à 25 Euros et je me suis fait un shield Makey-Makey, en quelque sorte.

L'idée est de faire un instrument de musique en utilisant de vrais champignons comme clavier!

 

Le shield Makey-Makey est essentiellement constitué de résistances de pull-up de 20 MOhms. (2 résistances de 10MOhms en série sur chaque entrée). Il y a aussi quelques LED témoins.

Voilà ce que ça donne sur ma plaque de prototypage:

 

2013 04 09 5052

 

C'est artisanal mais ça marche. C'était la première fois que je faisais un circuit double face avec ce genre de plaque!

2013 04 09 5053

 

Ensuite il restait à faire le clavier.

Le voilà à l'endroit. Les pointes vont servir à fixer les champignons ainsi que la clémentine qui servira à changer d'instrument. Les punaises sont les embases des boutons de sélection. On remarque aussi le plan de masse ainsi que le bracelet lui aussi relié à la masse, qui sert à pouvoir jouer avec les deux mains.

2013 04 09 5049

 

Le câblage du clavier:

2013 04 09 5050

 

Restait à faire le logiciel côté PC.

J'ai découvert récemment le langage Scratch, un langage graphique développé par des ingénieurs du MIT pour aider à l'enseignement de la programmation. C'est vraiment sympa et facile d'accès. Mon fils de 11 ans adore (il est en train de se faire un casse-brique, avec un peu d'aide tout de même).

 

J'ai donc développé un logiciel d'éveil musical qui permet soit de jouer librerment, soit d'apprendre une comptine parmi 4 possibles. La gamme est limitée à la gamme de Do majeur sur une octave.

 scratch

Les enfants adorent.

Une petite démo avec ma fille au clavier:

 

 


 

 

Ca va faire un tabac à la fête de l'école!

Repost 0
Published by breizhmakers - dans Arduino
commenter cet article
5 avril 2013 5 05 /04 /avril /2013 12:07

Je viens d'envoyer un article de présentation de mon horloge chinoise pour publication sur le blog de semageek.com, une référence pour les fans de bricolages électronico-informatiques comme moi.

Repost 0
Published by breizhmakers - dans horloge
commenter cet article
26 février 2013 2 26 /02 /février /2013 15:28

J'ai encore eu une idée folle dans un moment d'ennui au boulot: 

Construire une machine de Rube-Goldberg avec les différents jouets et objets de récupération qui traînent à la maison.

Sur le thème de l'aviation et pilotée par un Arduino (Leonardo en l'occurence).

J'ai profité d'une pause déjeuner pour gribouiller une esquisse:

arduiRG1

L'idée a un peu évolué depuis suite à différents tests de faisabilité.

*Au départ il n'y a pas d'ascenceur mais une rampe sur laquelle est positionné un camion de pompier.

*En fin de rampe un contact déclenche l'allumage d'une lumière (un DC3 lumineux).

*Mais comme l'avion solaire n'est pas assez puissant pour avancer avec cette lumière, on va le faire tracter par un treuil jusqu'à l'hélicoptère.

*L'hélicoptère radiocommandé décolle (guidé par un systèmes à base de fils de nylon tendus) et à une certaine hauteur, il libère une bille qui dévale alors une rampe en spirale.

*En bas de la rampe, la bille déclenche l'avion radio-commandé pour bébé qui va avancer jusqu'au bout de la piste.

*Quand il atteind le bout de la piste, l'avion en attente de décollage décolle (il décolle vraiment via un système de guides à base de fils en nylon).

*En fin de course un mécanisme arrête l'avion et l'empêche de revenir en arrière.

 

L'Arduino est là pour coordonner et piloter le tout (via un mélange d'entrées/sorties numériques et servos qui à leur tour vont piloter les radio-commandes IR, Radio et Infra-rouge des différents jouets).

 

Y'a plus qu'à continuer les tests des différents modules .

Repost 0
Published by breizhmakers - dans Arduino
commenter cet article
25 février 2013 1 25 /02 /février /2013 17:14

Je n'ai pas posté depuis longtemps, c'est que le projet avance très doucement...et qu'il fait très froid dans le garage .

Donc voici où on en est:

  • L'algo de pilotage principal du camion est OK, reste juste la gestion de la direction des roues à implémenter.
  • Reste aussi plein de réglages à faire une fois que tout sera intégré sur le camion.
  • Le mini-servo est fixé sur la grue, reste à assembler la tourelle finale et à câbler le tout.
  • La cabine est prête à recevoir la carte Arduino et le bouton de redémarrage d'un cycle de recherche de feu.
  • La pompe est réparée et fonctionne correctement.
  • L'emplacement du capteur à ultra-sons est percé, reste à modifier la découpe de la calandre.

 

Reste à:

  • Remplacer le MOSFET qui commande la pompe par un transistor bipolaire adapté à la commande en TTL.
  • Vérifier ce qui ne va pas dans la commande de la sirène (j'ai augmenté le courant de base, à tout hasard, à retester).
  • Vérifier ce qui ne va pas dans la commande des moteurs via le double pont en H. Ca tourne mais beaucoup trop lentement malgré une commande en tout ou rien. Faut que fasse une seconde vérification et que je teste la continuité des liaisons de masse, parce que là je sèche...quand je ne branche que de LED sur les sorties, ça fonctionne comme attendu!

 

J'ai ausi deux nouveaux projets à base d'Arduino en cours de démarrage.

J'en parlerai bientôt.

 

Edit:

Ca va beaucoup mieux en alimentant les moteurs en 6 ou 7V. On va donc opter pour cette tension d'alim.

Repost 0
Published by breizhmakers - dans robot
commenter cet article
25 novembre 2012 7 25 /11 /novembre /2012 19:10

Aujourd'hui j'ai encore un peu avancé sur la paramétrage des lois de commandes du camion.

Il ya quelque temps déjà je suis tombé sur une excellente librairie de logique floue par Arduino.

Elle a aussi l'avantage d'avoir beaucoup plus de documentation que les autres que j'avais pu trouver (pour lesquelles la doc était inexistante...).

En plus ça compile et ça marche du premier coup.

 

Enfin le plus dur est d'établir les différents ensembles flous ainsi que les règles entre les entrées et sorties.

Je n'avais pas vraiment pigé le truc à l'école il y a... damned, 20 ans!... alors je me suis beaucoup documenté et c'est maintenant plus clair.

 

J'ai simulé la mesure de distance avec une  fonction et à l'aide du simulateur d'AVR d'AVRStudio j'ai pu tester les sorties de mon algorithme en fonction de la distance mesurée.

Pas évident mais j'ai un truc qui devrait fonctionner.

Reste à faire de même avec le pilotage de la direction du camion.

Repost 0
Published by breizhmakers - dans robot
commenter cet article
25 novembre 2012 7 25 /11 /novembre /2012 19:00

Hier j'ai reçu le kit Proto-Shield et le pont en H (SN754410) pour commander les moteurs, commandés chez Sparkfun.

On a donc profité de ce Dimanche après-midi pour souder le kit et y mettre les composants nécessaires au camion.

Il reste à câbler le pont en H.

Il y a un MosFet pour commander la pompe à eau et un transistor bipolaire pour commander le circuit qui gère la sirène et les lumières.

 

Il n'y a déjà plus de place sur la mini-breadboard:

2012-11-25_4756.JPG

 

On a commencé à voir les découpes nécessaires pour mettre le capteur à ultra-sons dans la calandre du camion.

On a aussi réfléchi à la fixation du mini-servo de la tourelle oscillante.

Ca prend forme.

Repost 0
Published by breizhmakers - dans robot
commenter cet article
31 octobre 2012 3 31 /10 /octobre /2012 17:26

Schéma complet du camion-robot:

CamionRobot schemaV0.4

 

Je vais aussi probablement ajouter un module carte SD que j'utiliserai comme logger pour aider à la mise au point une fois le système monté sur le camion.

Repost 0
Published by breizhmakers - dans robot
commenter cet article
28 octobre 2012 7 28 /10 /octobre /2012 20:38

J'ai encore bien avancé ce week-end.

Après plusieurs tentative je suis parvenu à:

  • Rendre l'algorithme de détection de souce de chaleur indépendant de la luminosité ambiante, via un auto-étalonnage.
  • Implémenter un suivi de source de chaleur qui fonctionne, même s'il reste améliorable.

Voilà ce que ça donne en vidéo:

 


 

Je vais diminuer un peu la "dead zone" lors du mode track pour tenter d'éviter certaines oscillations.

Je vais aussi essayer de mettre une régulation PID pour avoir un suivi plus précis et plus doux.

 


Repost 0
Published by breizhmakers - dans robot
commenter cet article