Overblog
Suivre ce blog Administration + Créer mon blog
18 mai 2022 3 18 /05 /mai /2022 09:55

Une nouvelle bestiole ajoutée à mon bestiaire!

 

Les détails de construction sont ici.

Partager cet article
Repost0
20 avril 2022 3 20 /04 /avril /2022 14:00

Mon dernier projet, plus ou moins utile 😁.

C'est documenté ici.

Partager cet article
Repost0
26 décembre 2021 7 26 /12 /décembre /2021 10:47

J'ai toujours été intrigué par ces tubes "Oeil Magique", indicateurs d'accord.
Quand j'ai eu l'occasion d'en récupérer un sur une veille TSF, la première chose que j'ai fait a été d'essayer ce tube.

J'ai acheté un convertisseur haute tension qui a confirmé que le tube fonctionnait bien, même s'il était peu lumineux.

Depuis quelques temps je suis fan de "sculptures électroniques", et l'idée a émergé de transformer ce vieux tube inutilisé en une créature bizarre faite de laiton.
Je la voulais ressemblant à un insecte prêt à sauter.

Tout d'abord, une démo du produit fini:
 

Voici ce qu'il vous faut pour faire le vôtre:
Un tube EM34 (on en trouve sur ebay.ca)
Vous pouvez utiliser un autre type de tube, en adaptant le schéma.

  • 2 résistances de 1M-Ohms
  • 1 petit interrupteur à glissière
  • 2 connecteurs de pile 9V
  • 1 convertisseur DC-DC réglable à base de MT3608
  • 1 convertisseur haute tension tel que celui-ci
  • Un peu de fil de cuivre isolé
  • environ 1m de fil de laiton de diamètre 1.5mm
  • quelques cm de fil de laiton de diamètre 1mm, pour les antennes.
  • 4 plaques de 10x10cm de contreplaqué de 5mm pour la base
  • de la teinte à bois couleur chêne foncé, et de la cire pour la finition.

Un fer à souder d'environ 100W avec une grosse panne (pas une panne pointue)

Je n'ai pas pris assez de photos pour faire un tuto détaillé, mais les étapes principales sont détallées ci-après.

Commencer par régler les convertisseurs de tension à l'aide d'une alimentation de labo.
Le convertisseur basse tension est réglé pour produire 12V avec une tension d'entrée de 9V
Le convertisseur haute tension est réglé pour produire 210V (il est au maximum) avec une tension d'entrée de 12V.

Nettoyer le tube!
J'ai enlevé la poussière puis poncé les connecteurs au papier de verre pour faciliter la soudure.

J'ai commencé par former et souder 2 anneaux en laiton, qui seront situés aux extrémités du tube.
J'ai ensuite fait un modèle approximatif des pattes en utilisant du fil de cuivre, pour déterminer les dimensions générales.
J'ai dessiné un schéma et formé les pattes avant selon ce schéma.
Les pattes avant ont été assemblées et maintenues avec de l'adhésif pour le soudage sur l'anneau.

J'ai utilisé de la colle chaude pour fixer temporairement les pattes sur une base temporaire en bois, ainsi que pour maintenir l'anneau avant sur le tube.


Ca a beaucoup aidé pour positionner la bête correctement et déterminer la position et taille des pattes arrières.
La soudure des pattes arrières n'a pas été facile!

La patte arrière gauche a été soudée à l'anneau arrière (ça sera le +9V)
La patte arrière droite doit être isolée de l'anneau arrière (ça sera la masse), son extrémité été entourée d'un peu de gaine thermo-rétractable, puis collée à la super-glue sur l'anneau arrière.
 

Le tube est orienté avec son marquage sur le dessus.
Ca fournit une vue sympa sur l'intérieur du tube et une belle orientation de l'iris de l'oeil.

J'ai utilisé ce schéma de câblage:

J'ai commencé par souder les résistances, puis l'alimentation du filament
J'ai choisi la polarité de l'alimentation afin de faciliter la connexion de la broche 8 à la masse.

Chaque fil de laiton a été pré-mesuré et pré-ajusté avant soudure.

Ensuite ce fut le tour de l'alimentation haute tension.
Le convertisseur a été collé sur le tube avec un peu de colle chaude.
Par chance les broches de sortie sont presque alignées avec celles du tube.

 

Le convertisseur basse tension est lui-aussi collé au tube.
Sa sortie est connectée à l'entrée du convertisseur haute tension.
Il a fallu courber les fils de laiton selon la courbure du tube et les faire se croiser.
L'alimentation du convertisseur basse tension est connectée à l'anneau arrière (masse) et à la patte arrière gauche (+9V).

Ne pas oublier la connexion entre les broches 7 et 8

Afin de rendre cette bête encore plus vivante je voulais pouvoir faire bouger son iris en touchant le laiton.
Le truc est d'appliquer sur la broche 4 (grille) un potentiel négatif, -9v en l'occurence, facile à obtenir avec deux piles 9V.
Le fil de laiton passe sous la ligne +12V. Toucher cette ligne provoque la "pleine fermeture" de l'iris, assez sympa à voir.
J'ai trouvé sympa que cette bête ait des antennes qui servent à faire bouger l'iris.
La broche 4 est donc connectée via une longue tige de laiton de 1.5mm, à une petite tige de laiton de 1mm en forme d'antennes, qui peuvent toucher l'anneau avant (connecté au -9v) on les touche.
 

Le câblage complet:

 

 

Il est alors temps de vérifier le câblage, connecter temporairement les piles aux pattes, et tester!

Souder le laiton peut parfois être difficile et peut conduire à des "soudures sèches" et à des contacts défectueux.
J'ai du re-vérifier la continuité et corriger certaines soudures, en particulier sur les joints en T.

Une fois que tout est OK, il reste à fabriquer la base, qui va héberger les piles.
J'ai utilisé 5 plaques de 10x10cm de contreplaqué de 5mm, découpées au laser et collées ensemble.
Elles ont été ensuite poncées, teintées et cirées.

Une fois la base prête, j'ai placé la sculpture en position, repositionné les pattes et marqué où percer des trous de 2mm, à l'endroit où les pattes touchent la base.
Ces trous serviront de passage aux fils d'alimentation.
Le 4ieme trou (patte avant-gauche) ne contiendra qu'un petit bout de fil servant à maintenir la patte.

Les fils sont soudés aux pattes, à l'endroit où elles touchent la base.

Le câblage des piles est trivial.
Une des piles va, à travers l'interrupteur, alimenter le filament et les convertisseurs de tension (pattes arrières).
Le + de l'autre pile est connecté au - de la première, et son - va à une des pattes avant, fournissant ainsi le -9v.

J'ai ensuite enlevé la colle chaude maintenant l'anneau avant sur le tube et remplacé celle-ci par un point de super-glue.

Et voilà, une créature de plus à mon bestiaire électronique!
 

Partager cet article
Repost0
25 décembre 2021 6 25 /12 /décembre /2021 15:56

J'ai passé mon Noël à imaginer et construire ceci:

Je n'ai pas le courage de traduire les instructions que j'ai faites pour Instructables, alors elles sont ici.

 

Partager cet article
Repost0
4 novembre 2019 1 04 /11 /novembre /2019 10:01

Cette année Halloween était encore à base de:

  • Arduino MKR1000
  • EasyDriver stepper driver
  • Laser commandé en DMX via Processing
  • Machine à fumée pilotée via un relais.
  • Gros son de monstre joué via Processing
  • Brumisateur à ultrasons

C'était cool, même si j'ai encore fait pleurer des enfants devil.

Un résumé en vidéo:

Partager cet article
Repost0
9 mai 2019 4 09 /05 /mai /2019 15:59

Le D-50 est un synthé mythique sorti en 1987. Une machine révolutionnaire pour l'époque, aux sonorités immédiatement reconnaissables. Ceci d'autant plus qu'il a été très largement popularisé par Jean-Michel Jarre, Enya, et bien d'autres.

Bref quand j'ai appris que celui d'un ami était en panne, c'est avec plaisir que j'ai proposé de le restaurer. Il s'allumait mais ne produisait aucun son.

En jouant avec le potard de volume, j'ai vu qu'il était défectueux, mais j'ai réussi à trouver une position qui fonctionne et me permette de tester le reste.

Et le moins qu'on puisse dire c'est qu'il était mal en point.

Dans la photo ci-dessous, j'ai mis une étiquette blanche sur les boutons et les touches qui ne fonctionnent pas.

S'agissant d'un synthé très populaire, on trouve beaucoup d'infos et tutos de réparation sur le net à son sujet. 

Ensuite, il s'agit de faire preuve de méthode au démontage, en particulier identifier où vont les vis, et les stocker dans des boîtes étiquetées afin de savoir où elles vont par la suite (carte mère, carte clavier, etc...).

Enfin, il faut s'armer de beaucoup de patience et de persévérance, mais le jeu en vaut la chandelle car c'est toujours un plaisir de ressusciter un instrument de musique.

Au-dessus la carte mère, le clavier et la carte de scan clavier, avec le ruban du contact d'aftertouch tout à gauche

 

Après avoir retiré le clavier et la carte mère, on a accès à la carte Bender, qui accueille entre autres les potentiomètres de volume et d'aftertouch. Ils accrochent et sont rouillés.

J'ai cru devoir les changer, mais la bombe contact a fait des miracles.  En pulvérisant à l'intérieur et en les faisant jouer plusieurs fois, et en répétant l'opération autant de fois que nécessaire, ils sont revenus à la vie. Et la rouille a même été éliminée au passage!

Le clavier

Une fois la carte de scan du clavier démontée, les touches s'enlèvent facilement.

Il faut trier les ressorts des touches noires et blanches, qui n'ont pas la même longueur afin d'avoir une pression identique malgré un bras de levier différent. Une fois la bande d'arrêt transparente retirée, les touches se démontent très facilement, en commençant par les blanches, puis les noires. 

Le ruban du contact d'aftertouch à gauche, et la bande transparente qui maintient les touches en place (en plus des ressorts)

Il est préférable de les garder triées une fois démontées car elles ne sont pas toutes identiques. Les plus particulières (Sol, La et Ré, sont toutefois repérées d'une lettre de la note en question).

Le clavier a sévèrement morflé. Le support du circuit imprimé est bon pour un coup de Frametto pour arrêter la rouille (je ne veux pas poncer pour éviter tout risque de court-circuit).

La membrane s'enlève facilement et révèle des contacts en bon état même si certains ne fonctionnent plus.

Un coup de bombe à contacts sur un chiffon doux et de l'huile de coude pour frotter les contacts et les pads de la membrane suffit souvent à régler le problème. Mais pas toujours. Dans ce cas, j'ai trouvé un tuto indiquant qu'on pouvait frotter les contacts avec un crayon à papier gras, pour y déposer une couche de graphite. Et en effet ça a fonctionné à merveille. Toutes les touches qui avaient un problème de fonctionnement intermittent ou de vélocité aléatoire ont retrouvé un fonctionnement normal après ce traitement.

Attention au sens de remontage de la membrane. J'avais remonté la membrane "à l'envers", à 180° de sa position normale, et j'avais alors une octave entière dont la vélocité était bloquée au maximum. C'est là encore un article traitant de réparation de ce genre de clavier qui m'a mis sur la bonne piste. Une fois la membrane dans le bon sens, plus de problème.

J'en ai profité pour restaurer le feutre qui manquait à certains endroits, en y collant des bouts de feutre jaune.

Chaque test nécessite le remontage/démontage de la carte mère et d'au moins 4 vis de fixation du clavier, ainsi que le branchement de la carte de scan clavier sur la carte mère.

J'ai du en faire au moins une vingtaine smiley (mais pas tous à cause du clavier, voir plus loin).

 

Les boutons

Une fois le clavier réparé, il est temps de s'attaquer aux 51 boutons.

Mais avant de pouvoir y accéder, il faut démonter la carte du panneau de contrôle (14 vis à enlever).

J'ai déjà réparé ce genre de bouton en les changeant, mais là le problème semblait plus lié à une oxydation (les pattes des boutons sont un peu rouillées) qu'à une usure due à un usage excessif. Ayant vu que la bombe contact était aussi utilisable dans ce cas, j'ai essayé. L'astuce consiste à utiliser un petit cylindre placé sur le bouton pour diriger le jet de produit, et de faire jouer le bouton pour que le produit s'y infiltre.

Il faut répéter l'opération plusieurs fois, et ensuite contrôler à l'ohm-mètre que le bouton fonctionne bien comme attendu. Généralement c'est OK, mais parfois un bouton se remet à ne pas fonctionner.

J'ai voulu éviter une vérification systématique à l'ohm-mètre, et bien ça n'était pas une bonne solution car ça m'a coûté de multiples montages/démontages de l'ensemble carte-mère, clavier et carte de panneau de contrôle avant d'avoir enfin tous les boutons qui fonctionnent correctement.

C'est rien de très compliqué, juste un gros jeu de patience smiley.

Une fois tous les boutons à nouveau fonctionnels, le plus dur était fait.

Il ne restait plus qu'à restaurer le boitier.

 

Le boitier

J'ai mis les vis rouillées à tremper 24h dans du vinaigre blanc. Un petit brossage plus tard elles en sont ressorties comme neuves.

On voit dans la photo ci-dessous que le support des connecteurs midi a souffert de l'humidité. Un coup de Frametto s'impose. J'en mettrai aussi sur tous les autres points de rouille de l'armature métallique interne.

Concernant la face avant, j'ai opté pour un premier nettoyage à l'eau savonneuse et chiffon doux, puis coton-tige humide et enfin tournevis fin entouré d'un chiffon humide pour déloger la poussière entre les boutons et les rainures à l'arrière.

S'en est suivi plusieurs passage au produit pour restaurer les plastiques automobiles qui a bien amélioré l'état de surface mais sans faire disparaître les points blancs disgracieux.

J'ai pu les éliminer au pinceau acrylique Posca noir suivi d'un "étalage de peinture au doigt" qui a fait se fondre la teinte d'une façon uniforme sur le fond. J'ai aussi repeint les éclats de plastique et les rayures.

Le résultat est plutôt convainquant je trouve.

Quant au résultat sonore, il est...époustouflant! Je joue peu de clavier mais voici une petite démo:

La Légende revit, au plus grand bonheur de son propriétaire wink.

Partager cet article
Repost0
30 décembre 2018 7 30 /12 /décembre /2018 13:55

Je cherchais un moyen d'utiliser des composants qui trainaient sur mes étagères depuis longtemps et puis à force de voir les réalisations de différents artistes, l'idée d'une sculpture animée en forme d'insecte a germé en moi.

Ce fut aussi l'occasion de découvrir FreeRTOS, excellent micro-noyau temps-réel vraiment très simple à mettre en oeuvre pour gérer des tâches concurrentes sur micro-contrôleur (en l'occurence un ATMEGA328P).

Le code source est disponible sur GitHub.

La bête en action: 

 

Partager cet article
Repost0
1 novembre 2018 4 01 /11 /novembre /2018 12:07

Cette année j'ai utilisé la base du montage de l'an dernier. En remplaçant le moteur électrique par de la fumée et une animation laser.

Ma machine à fumée n'étant pas pilotable en DMX, j'ai utilisé un relais branché en parallèle du poussoir de sa télécommande (Les LED témoins et le poussoir sont directement alimentés en 230V...bon elle n'était pas chère du tout cette machine à fumée, tout s'explique...).

Le projecteur laser est situé dans le coffre de ma voiture, piloté en DMX via un sketch Processing et cette interface. Sur réception d'une commande envoyée par l'Arduino MKR1000, le sketch lance la lecture d'un fichier ILDA stocké sur la carte SD du projecteur et le déplacement du faisceau. 

A toutes fins utiles, le voici (faudrait que je le mette sur mon Github un de ces jours):

import processing.net.*;
import opendmx.*;
OpenDmx openDmx = null;

Server srv;
Client client;
boolean pressed=false;

int universeSize=11; 
byte[] data = new byte[universeSize];
boolean initialized = false;

void setup()
{  
  frameRate(50);
  background(#dd0000);
          
  srv = new Server(this, 12346); 
  noStroke();
  
   try {
    openDmx = new OpenDmx(0);
    initialized = true;
    println("DMX Adapter found");
    } catch (FTDIException e) {
    initialized = false;
    println(e);
    // do something reasonable other than exit..
    println("LaserLess Mode");
  }
}

void draw(){ 
  //wait for a keypress or mousepress to trigger laser animation
 if (keyPressed == true && pressed == false) {
     mousePressed();
     pressed = true;
 }
 if(keyPressed == false){
   pressed = false;
 }
 
 //wait for an incoming TCP connection to trigger laser animation
 client = srv.available();
  if (client != null) {
      client.read();
      mousePressed();
      print("client.read()");
  }
  
}

void mousePressed()
{
  anim();
}

void anim(){
  println("animating laser");
  if (!initialized){
    println("Laserless mode on, skipping.");
    return;
  }
  int animationLength = 4000; //ms
  long t0 = System.currentTimeMillis();
  long t1 = 0;
  //prepare DMX Buffer
  for(int i=0;i<universeSize;i++){
    data[i] = 0;
  }
  data[0] = byte(150); //select manual DMX mode 
  data[2] = byte(130); //select 14th entry of PlayList.pla on SD CARD
  data[10] = byte(100); //zoom out a bit to make the bat smaller
  data[8] = byte(40);  //move beam to left
  
  openDmx.sendData(data, universeSize); 
   try{
      Thread.sleep(100);
    }catch(InterruptedException e) {}
  
  data[0] = byte(150); //select manual DMX mode 
  data[2] = byte(130); //select 14th entry of PlayList.pla on SD CARD
  
  data[8] = byte(140); //auto-translate to the right at medium speed
  data[10] = byte(100); //zoom out a bit to make the bat smaller
  
  //send DMX buffer for animationLength ms
  do{
    openDmx.sendData(data, universeSize);
    try{
      Thread.sleep(100);
    }catch(InterruptedException e) {}
    t1 = System.currentTimeMillis();
  }while(t1 - t0 < animationLength);    
}

Le système en action:

J'ai aussi fait un chaudron à bonbons, à l'aide d'un brumisateur comme celui-ci, placé dans un saladier.

J'ai fait une grille découpée au laser pour laisser passer le brouillard mais j'ai constaté qu'il se condense sur la grille. Il faut laisser libre le jet de brouillard sortant du brumisateur. L'effet est vraiment sympa, pour peu qu'on ait des bonbons water-proof. Ca chauffe aussi un peu alors faut pas laisser trop longtemps les chocobons dans le chaudron laugh.

La version améliorée de l'an prochain sera encore plus sympa.

 

Partager cet article
Repost0
2 juillet 2018 1 02 /07 /juillet /2018 21:28

If you've ever bought this cheap-but-quite-good chinese laser projector you may have noticed that the (not included but sent on-request) user manual is extremely hard to understand (it must have been auto-translated from Chinese) and the DMX section is absolutely incomprehensible!

I tried hard, but couldn't make any sense of it...

Same thing apply for the bundled laser show software. I'm a software engineer but couldn't make any sense of the GUI...

Fortunately it accepts standard ILDA files, as long as they are referenced in the correct files.

 

Using custom ILDA files:

The .ild files must be on the SD-CARD, in the PESLADER\ildfiles folder (or any folder referenced later)

The file name must not be longer than 8 characters (hello MS-DOS! :) ) and must only contain ASCII characters, otherwise they won't be seen by the projector firmare.

So let's say my custom file is birdfly.ild

 

It must first be added to an .eff file in the PlayList\ folder

The file name must be unique and  the file contains one line per .ild file to play in sequence, prefixed by a unique incrementing line number.

Associated to each files is a set of parameters (effects applied by the projector when playing the file) roughly described in the projector manual.

For instance, to display our birdfly.ild for 5 sec we'd have a file such as EFFEC001.eff containing an entry such as:

1,(ildfiles/birdfly.ild, TI=5)

 

This "Effect list" file must then be added to the PlayList.pla file.

Each line has a unique incrementing line number, followed by the "effect list" file to play.

For instance, this would play our .ild file(s) and automatically repeat at the end of the playlist:

1,(EFFEC001.eff)

 

To manually play this file, use the projector menu to navigate to the SD-Play mode and select something like 'single file' and the playlist line number to play.

 

Playing a custom ILDA file via DMX

I used this FTDI USB to DMX adapter and it was automatically recognised as a USB DMX Interface by Q Light Controller+, the great free DMX Softfware I'm using.

I then spend a lot of time tinkering with the projector DMX settings and trying hard to understand this very cryptic "user manual".

I finally set the projector to the DMX13ch then selected the SD-Play menu  and managed to get my EFFEC001.eff file playing by setting the following channels:

Ch 1: 150 (manual mode: Ch3 will select a file in PlayList.pla)

Ch3:  0 (index of entry of PlayList.pla to play - 1) * 10

 

Then I needed to zoom out the displayed pattern, which can be done with Channel 11.

Ch11: 100 (zoom out to specified value)

 

Then I needed to have the pattern moving from left to right repeatedly at a moderate speed. Channel 9 controls the horizontal position and speed (depending on value) of the displayed pattern.

Ch9: 140 (moderate left to right repeated translation)

 

That's all I needed for my current project but there are a lot of effects available via DMX. The built-in or SD-Card patterns can be played and tweaked. If you ever manage to understand how from the cryptic user manual...

 

Partager cet article
Repost0
2 janvier 2018 2 02 /01 /janvier /2018 22:11

Il est possible de faire un adaptateur USB => DMX simplement à l'aide d'un convertisseur TTL => RS485 tel que celui-ci et d'un vieil Adruino disposant d'un circuit convertisseur USB => Série tels que les vieux Arduino Duemilanove.

Pour cela, il suffit de câbler l'entrée DI du convertisseur TTL => RS485 sur la broche RX de l'Arduino et son entrée DE sur VCC (il faut bien sûr aussi alimenter le convertisseur entre VCC et GND).

Il n'y a pas besoin d'uploader un sketch particulier sur l'Arduino. J'y ai simplement mis un sketch qui ne fait qu'un delay(3600) dans le fonction loop().

Il reste ensuite à utiliser un logiciel DMX compatible avec le protocole Enttec Open DMX USB. C'est une implémentation du protocole DMX complètement logicielle.

Je ne suis parvenu à utiliser que Q Light Controller+.

J'ai fait un shield à base de plaque perforée qui me permet d'utiliser simplement le convertisseur soit via l'USB ou bien sur un autre microcontrôleur.

Arduino Duemilanove DMX Shield
Shield DMX Maison

Capture d'écran de la console de Q Light Controller+

Q Light Controller +

 

Partager cet article
Repost0