Electronique > Réalisations > Production sonore > Orgue 012

Dernière mise à jour : 21/06/2020

Présentation

Cet orgue un peu étrange, bâti sur un PIC 24FJ32GA002, se joue avec un potentiomètre souple rectiligne. Cela vous intrigue ? C'est normal.


orgue_012_proto_001a

Cet orgue est une sorte de "reprise" de mon orgue 004 commencé en 2009 et jamais finalisé. Dès le début de l'étude de cette "mise à jour", j'ai eu l'intention d'y implanter d'office le MIDI, si possible de manière un peu plus évoluée que le simple envoi de notes...

Un potentiomètre souple rectiligne ou circulaire (ou autre forme, l'important est que ça existe) sert de "manette de commande". En promenant un doigt dessus (index ou autre, faites comme chez vous), on produit des notes. Ces notes sont délivrées sous deux formes :

Une des particularités de cet orgue est de pouvoir délivrer des notes justes, même si le doigt n'est pas posé exactement à la "bonne position". Une seconde particularité est de pouvoir définir l'étendue des notes grâce à deux potentiomètres "KeyMin" (note de départ) et "KeyMax" (note d'arrivée). Cette étendue peut être réglée entre 1 octave (bien pour les premiers entrainements) et 8 octaves (beaucoup plus drôle).

Remarque : toute ressemblance avec les ondes Martenot peut être écartée, vu que je n'ai jamais entendu parler de cet instrument présenté au public en 1928 par son inventeur Maurice Martenot dont je ne connais pas davantage le nom ni le prénom.


Schéma

A la base, ce montage fonctionnait avec seulement 3 composants, le PIC 24F, le condensateur C3 et le potentiomètre de jeu RV3.


orgue_012z

L'angoisse de vous présenter un système trop simple m'a contraint d'ajouter, avant l'ultime date de parution que je ne pouvais prévoir avant de la connaître vu que je la fixe moi-même, un nombre incalculable de composants (impossible à compter avec la moitié d'une main). Cette révision qui dans mon dos a provoqué la coulée de plusieurs litres de sueur prend la forme du schéma suivant.

En espérant que ce nouveau schéma réponde mieux à la complexité que vous attendez de moi sans l'exprimer ouvertement, je vous prie de croire, cher lecteur, en l'expression HTML de mes plus connectées considérations.


orgue_012


Arguments qui ont conduit à l'évolution du (trop simple) schéma 012z vers le schéma 012 :

Ils sont bien entendu nombreux...


Répartition des notes sur le clavier plat

Le potentiomètre souple utilisé ne possédant qu'une seule bande conductrice, il est impossible de prévoir deux zones dans le sens de la "profondeur" pour séparer touches blanches (notes non altérées) et touches noires (notes altérées dièse/bémol). Il faudrait pour bien faire utiliser deux potentiomètres placés côte à côte, un devant pour les touches blanches et l'autre derrière pour les touches noires. C'est tout à fait possible, mais on verra ça plus tard. Dans le temps qui nous préoccupe avant de nous occuper, il m'a donc fallu trouver une répartition "logique"... qui fasse penser à un clavier de piano, mais cela me semble difficile, sion impossible. J'ai pensé aux trois répartitions suivantes :


orgue_012_keys-modes

Dans la configuration du bas, les notes altérées ont été purement supprimées. Cela correspond à la vision préférée d'un ami batteur qui m'a dit que de toute façon les notes altérées ne servaient jamais et que leur absence ne gênait que de rares musiciens.


Pour l'heure, seule la configuration "centrale" est implémentée, même largeur octroyée à toutes les notes, altérées ou non.
(je n'écoute pas toujours les conseils avisés de mon ami batteur, qui par ailleurs vient d'échanger sa batterie contre une harpe)



Affichage de l'étendue de jeu et de la note jouée

Un afficheur LCD alphanumérique et 100% optionnel permet de connaître à tout instant la plage de jeu sélectionnée (de "Min Key" à "Max Key") ainsi que la note actuellement jouée (valeur de hauteur "pitch" transmise sur la sortie MIDI OUT, et fréquence du signal audio).


orgue_012_disp_001a  orgue_012_disp_001b  orgue_012_disp_001c  
Plage maximale, 128 notes réparties sur la piste de jeu : bon courage !

orgue_012_disp_002a  orgue_012_disp_002b  orgue_012_disp_002c  
Plage réduite à une étendue de 2 octaves (Do2 à Si3) : beaucoup plus facile à jouer !

Les valeurs numériques MIDI sont ici exprimées en décimal (valeurs de 0 à 127), mais elles pourraient aussi bien sûr l'être en hexadécimal (valeurs de $00 à $7F).


Fonctionnement du logiciel

Le logiciel du PIC lit en permanence la tension (donnée analogique) appliquée sur les entrées RA0/AN0, RA1/AN1 et RB2/AN4, grâce au convertisseur analogique numérique (ADC) intégré. Les deux premières tensions (KeyMin et KeyMax) déterminent l'étendue de jeu, de 1 à 8 octaves. La troisième tension (Key) détermine la hauteur de la note jouée. La fréquence de rafraichissement des notes est de 50 fois par seconde, ce qui suffit pour suivre les mouvements d'un musicien moyennement déchainé.

A chaque cycle de lecture de ces tensions analogiques, le logiciel détermine s'il y a lieu de démarrer une nouvelle note, de la conserver, de la modifier ou de l'arrêter. Ces décisions sont prises après comparaison des nouvelles valeurs de tension avec les précédentes. Les "notes de base" sont axées sur des valeurs fixes, aussi bien pour les notes MIDI que pour les sons délivrés sous forme audio. 

La plage totale de valeurs possibles pour la tension de commande Key est toujours la même, de 0 V à +3,3 V. Pour une étendue de jeu de 2 octaves, cela fait 24 notes à répartir entre ces deux valeurs extrêmes de tension, ce qui correspond à une "largeur" de 0,13 V pour chaque note.Pour une étendue de jeu de 5 octaves, cela fait 60 notes à répartir, ce qui correspond à une "largeur" de 0,055 V pour chaque note. Avec une telle étendue de 5 octaves, de petites variations de tensions produisent rapidement de nouvelles notes, ce qui bien sûr rend l'exercice plus délicat. Imaginez un piano de 88 touches dont les dimensions seraient celles d'un piano de 24 touches !

A cause du type de "capteur" utilisé, le mode de jeu ne peut pas être polyphonique. Le Theremin ne l'est pas non plus ;)

Pratique : lors de la mise sous tension, l'instrument délivre un bref LA3 (440 Hz), histoire de valider le bon démarrage du logiciel. Si vous constatez que la fréquence n'est pas exactement de 440 Hz, mais de 440,01 Hz ou 439,99 Hz, chauffez ou refroidissez légèrement le quartz en soufflant dessus pendant 3 secondes, puis redémarrez le système. Opérer autant de fois que nécessaire.


Sortie MIDI OUT

Actuellement, les notes MIDI sont délivrées de façon normale, sans variation possible de hauteur et donc sans possibilité de vibrato. De même, le capteur n'étant pas sensible à la vélocité, on ne peut guère envisager d'expression "dynamique". J'ai toutefois une idée en tête pour combler ce manque, idée qui comme vous devez vous en douter ne demande qu'à être mise en pratique ;)


Evolutions prévues

Plusieurs évolutions sont d'ores et déjà prévues :

Prototype

Prototype réalisé sur plaque sans soudure et sans l'afficheur LCD (comme quoi on peut bien s'en passer).


orgue_012_proto_001f orgue_012_proto_001g

Premiers essais avec un potentiomètre souple rectiligne de dimensions modestes...

orgue_012_proto_001b orgue_012_proto_001c

... suivis d'essais avec un potentiomètre souple rectiligne de plus grande longueur...

orgue_012_proto_001a orgue_012_proto_001d

... pour finir avec un modèle de potentiomètre souple circulaire.

orgue_012_proto_001e    

Marque des capteurs (potentiomètres souples) utilisés : SpectraSymbol

Premiers tests...

Le fonctionnement n'a pas été immédiat. Des notes justes sortaient en pressant le potentiomètre souple en divers endroits, mais d'étranges sons apparaissaient aussi de manière aléatoire, même quand je ne faisais rien. J'ai vite compris que le potentiomètre souple et long formait une magnifique antenne ! J'ai donc ajouté un filtre passe-bas rudimentaire sur l'entrée ADC du PIC (simple couple résistance + condensateur).

Malheureusement, cela n'a pas du tout réglé le problème et j'ai compris que ce que j'avais compris n'était pas ce que j'aurais du comprendre (c'était d'ailleurs à n'y rien comprendre). Il m'a donc fallu chercher ailleurs... et j'ai fini par trouver. Le souci venait en fait des deux tensions servant à définir l'étendue des notes qui n'étaient pas filtrées. Après filtrage hard par deux nouvelles cellules RC, tout est rentré dans l'ordre.


Eternel insatisfait !

Frustré de ne pas savoir quelles notes je jouais (je n'ai l'oreille absolue que pour les fréquences situées au-delà de 22 kHz), j'ai finalement ajouté mon afficheur facultatif LCD 4x20 (4 lignes de 20 caractères) à mon prototype.


orgue_012_proto_001h orgue_012_proto_001i orgue_012_proto_001j

Remarque : l'écran LCD est alimenté sous 5V et le PIC sous 3V3. Sur la photo de gauche ci-devant, tout le monde se contentait d'une tension de 3V3, mais l'écran n'affichait quasiment rien (et j'ai fait l'amer constat que même Photoshop n'y pouvait rien).

En me pliant en quatre pour voir ce qu'indiquait l'afficheur qui ne voulait pas rester en place, j'ai eu deux révélations :
- la présence de l'écran LCD ne corrige pas les erreurs de jeu;
- mon dos souffre plus quand je me plie en quatre.

Logiciel du PIC

Programme compilé pour PIC24 dans l'archive zip suivante.
Orgue 012 - PIC 24FJ32GA002 - (17/06/2020)
Si vous souhaitez recevoir par la poste un PIC préprogrammé et prêt à utiliser, merci de consulter la page PIC - Sources.

Circuit imprimé

Réalisé en double face, avec des trous pour placer les composants traversants. 

orgue_012_pcb_components_top orgue_012_pcb_3d_a orgue_012_pcb_3d_b 

Notez l'absence de trous là où aucun composant n'est requis.

Montage "en l'air" (sans circuit imprimé)
En marge des méthodes de réalisation sur plaque sans soudure ou avec un PCB pro, on peut aussi adopter le "montage en l'air", qui consiste à raccorder entre elles les broches des composants avec des fils électriques. Comme l'époque à laquelle on vit a vu évoluer la technique selon une loi logarithmique, j'ai pensé intéressant de remplacer les fils électriques par des pistes de cuivre fines (10 microns maximum) et de donner à l'ensemble un aspect plat, comme si les composants étaient assemblés sur un circuit imprimé. L'illusion est presque parfaite, comme en attestent les vues qui suivent :

orgue_012_pcb_3d_e  orgue_012_pcb_3d_f  

Le plus difficile dans cette méthode de réalisation est le positionnement correct des trous reliés à rien. A ce propos, je commence à douter sérieusement de l'utilité des quatre trous flottants (diamètre perçage 3,2 mm) destinés à la fixation du montage...

Historique

21/06/2020
- Première mise à disposition.