Ritournelle : Différence entre versions

De fablabo
Aller à : navigation, rechercher
(MATÉRIELLE)
 
(69 révisions intermédiaires par 5 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 
{{Projet
 
{{Projet
|name = RITOURNELLE
+
|status=Prototype
|status = experimental
+
|status_pub=Publié
|image = autonome.JPG
+
|image=ritournelle_sur_breadboard_photo.jpg
|description = prototypage d'une interface MIDI pour contrôler tous types de jouets.
+
|description=Interface MIDI pour jouets électroniques
|license = GPL v3.0 / CC-NC-BY-SA
+
|license=GPL v3.0 / CC-NC-BY-SA
|contributeurs = Thomas
+
|contributeurs=ThomasB,Emoc
|ingrédients = electronique, code, Processing, Arduino
+
|ingrédients=electronique, code, Processing, Arduino
|url =  
+
|machines=FraiseuseCNC,
 +
|name=RITOURNELLE
 
}}
 
}}
==
+
 
 +
 
 
=INTERFACE M.I.D.I POUR OBJETS ÉLECTRONIQUES DÉTOURNÉS=
 
=INTERFACE M.I.D.I POUR OBJETS ÉLECTRONIQUES DÉTOURNÉS=
 +
 +
'''Le code et les schémas nécessaires sont téléchargeables ici : [https://github.com/emoc/ritournelle ritournelle]
 +
'''
 
==NOTE D'INTENTION==
 
==NOTE D'INTENTION==
Le but est de pouvoir contrôler en M.I.D.I n'importe quelle machine électronique fonctionnant sur faible voltage (12V maximum).<br />
+
Ritournelle est une interface électronique qui transforme un jouet électronique en instrument de musique. Le but est de pouvoir contrôler en M.I.D.I n'importe quelle machine électronique fonctionnant sur faible voltage (12V maximum).<br />
La plupart de ces machines peuvent se trouver à bas coût dans les vides greniers, ressourceries etc.<br />
+
La plupart de ces machines peuvent se trouver à bas coût dans les vides greniers, ressourceries etc. De cette façon, il est possible de créer des instruments de musique électronique soi-même à partir d’objets électroniques facilement accessibles et peu coûteux.<br />
Ça peut être par exemple des jouets électroniques, des petits claviers, des radios etc.<br />
 
  
Ainsi Ritournelle transforme tout type de rebut électronique en un potentiel instrument à intégrer à sa collection.<br />
+
Ainsi Ritournelle transforme tout type de rebut électronique en un potentiel instrument à intégrer à son équipement.<br />
 
C'est aussi une façon de prolonger la pratique du [https://www.youtube.com/watch?v=w6Pbyg_kcEk circuit-bending] en y ajoutant de nouvelles possibilités de jeu et de nouvelles pratiques de hacking :<br />
 
C'est aussi une façon de prolonger la pratique du [https://www.youtube.com/watch?v=w6Pbyg_kcEk circuit-bending] en y ajoutant de nouvelles possibilités de jeu et de nouvelles pratiques de hacking :<br />
Après avoir modifier certaines sonorités d'un jouet par exemple, en explorant son électronique, il est désormais possible de séquencer ce jouet avec un logiciel ou un séquenceur M.I.D.I.
+
Après avoir modifier certaines sonorités d'un jouet par exemple, en court-circuitant ses circuits électroniques ou en ajoutant d'autres, il est désormais possible de séquencer ce jouet avec un logiciel ou un séquenceur M.I.D.I.
 +
 
 +
Une des intentions également, est de pouvoir proposer un objet que l'on puisse réaliser soi même, sous licence libre, et avec un coût le plus bas possible en terme de composants par exemple. Un objet que l'on puisse produire chez soi ou dans l'atelier du coin en fonction de la demande, et en remerciant au passage les ouvriers de l'empire du milieu qui œuvrent à la production de condensateurs et autres transistors à bas coût tout en déversant moult solvants et acides dans leurs rivières.<br />
 +
 
 +
==JOURNAL DE BORD==
 +
Au-delà de cette documentation à destination de celles et ceux qui souhaitent soit utiliser, soit construire une Ritournelle, vous pouvez également accéder à ce journal de bord que je tiens à jour à chacune des résidences de travail sur ce projet.<br />
 +
[http://etherpad.pingbase.net/RA-ritournelle Le journal de bord est à cette adresse]
 +
 
 +
== PRINCIPE ==
 +
 
 +
Ritournelle reçoit des commandes MIDI entre 60 et 75 (16 sorties), chacune de ces commandes active un contact électrique, comme si l'on appuyait sur un des boutons du jouet.
 +
Le circuit permet d'activer 16 boutons sur un ou plusieurs jouets différents. Pour relier Ritournelle à un jouet sonore, deux fils sont nécessaires. Ils doivent être reliés au circuit imprimé du jouet, aux deux pôles du contact à déclencher.
 +
 
 +
==PARTIE MATÉRIELLE==
 +
 
 +
===Liste des composants===
 +
 
 +
* 2 x résistances 220 Ω
 +
* 1 x résistance 270
 +
* 1 x prise MIDI DIN 5
 +
* 1 x diode 1N4148
 +
* 1 x LED
 +
* 1 x optocoupleur 6N138
 +
* 4 x circuit intégré 4066 (quadruple interrupteur)
 +
* 1 x arduino nano (microcontrôleur)
  
Une des intentions également, est de pouvoir proposer un objet que l'on peut réaliser soi même, disposant des licences adéquates, et en ayant un coût le plus faible possible <br / >
+
==== MIDI ====
en terme de composants par exemple. Un objet que l'on puisse produire chez soi ou dans l'atelier du coin en fonction de la demande, et en remerciant au passage les ouvriers <br />
 
de l'empire du milieu qui œuvrent à la production de condensateurs et autres transistors à bas coût tout en déversant moult solvants et acides dans leurs rivières.<br />
 
  
==CONSTRUIRE UNE RITOURNELLE==
+
Ritournelle utilise le protocole de communication [https://fr.wikipedia.org/wiki/Musical_Instrument_Digital_Interface MIDI] qui est un protocole déjà ancien puisqu’il date de 1983. C'est un protocole qui a ses limites mais un de ses avantages est qu'il soit devenu une norme pour les instruments électroniques. C'est en quelques sorte, le jargon universel de la grande majorité de nos petites bébêtes électroniques disposant des fameuses prises DIN à 5 broches, permettant de les relier physiquement les unes aux autres.
  
Cette documentation vise à permettre la réalisation, dans les meilleures conditions possibles, d'une Ritournelle.<br />
+
Dans Ritournelle, le MIDI va permettre de relier un instrument qui peut générer des notes MIDI à un jouet électronique par exemple, et ainsi, le contrôler, lui envoyer des notes, en lui précisant la hauteur de la notes, la durée, etc.<br />
Elle donne les outils intellectuels et logiciels nécessaires à sa construction. <br />
+
Intégrer une entrée MIDI sur un microcontrôleur ATMEGA328 n'est pas quelque chose de bien compliqué. Pour cela, il faut ajouter quelques composants : un optocoupleur, une diode et deux résistances.
Reste à trouver un atelier dans lequel avoir accès aux outils matériels nécessaires pour la réalisation complète (fraiseuse, platine d'essai, composants etc.).
 
  
===MATÉRIEL NÉCESSAIRE===
+
=== Circuit électronique ===
  
Voici la liste de matériel nécessaire pour réaliser une Ritournelle (j'entends par la, une version abouti sur PCB), mais aussi la modifier.<br />
+
==== Schéma ====
Je donne ainsi une liste exhaustive de tout ce dont il est nécessaire pour comprendre la conception de Ritournelle. <br />
 
Si vous désirez uniquement fraiser un PCB vous pouvez aller directement à la partie '''''MARCHE À SUIVRE'''''.
 
  
===PARTIE LOGICIELLE===
+
[[File:ritournelle_circuit.png|700px]]
  
Une partie de la réalisation de Ritournelle est conçue sur un ordinateur aux capacités relativement modestes. <br />
+
==== Sur plaque d'expérimentation ====
Vous aurez besoin d'une connexion Internet et des 2 logiciels suivants pour accéder au programme et à la conception électronique de Ritournelle.
 
  
====ARDUINO====
+
Il est possible d'assembler Ritournelle sur deux plaques d'expérimentation.
À la fois, environnement de développement (IDE), langage de programmation et microcontrôleur, Arduino est la plateforme de conception Libre utilisée pour réaliser Ritournelle.<br />
 
Plus d'informations ici : http://fr.flossmanuals.net/arduino/vous-avez-dit-arduino/ <br />
 
Télécharger : http://arduino.cc/en/Main/Software (version 1 ou supérieure)<br />
 
Vous pouvez également télécharger le code que j'ai développé pour Ritournelle [https://gitorious.org/ritournelle/ritournelle/source/17c693b849731ca4c45e60cc8813a48f7ede262a: sur mon compte Gitorious].
 
  
====G.E.D.A====
+
[[File:ritournelle_sur_breadboard.png|700px]]
  
GEDA est une suite logicielle de conception assistée par ordinateur sous licence Libre. <br />
 
GEDA permet la réalisation de schémas électriques, de PCB et d'une multitudes de choses plus ou moins pointus dans le domaine de la conception électronique.<br />
 
la page wikipédia  : https://en.wikipedia.org/wiki/GEDA et le site officiel : http://www.geda-project.org/ <br />
 
Et enfin la page GEDA sur fablabo : http://fablabo.net/wiki/Geda <br />
 
Vous pouvez télécharger la dernière version du schéma électrique ainsi que du PCB de Ritournelle sur [https://gitorious.org/ritournelle/ritournelle/source/17c693b849731ca4c45e60cc8813a48f7ede262a: mon compte Gitorious].
 
  
===PARTIE MATÉRIELLE===
+
==== Sur circuit imprimé ====
  
La partie matérielle qui a permit la réalisation de Ritournelle est un vaste chantier en cours, dont je vous propose ici un instantané.<br />
+
En cours de réalisation
J'ai la plupart du temps travaillé avec une platine de prototypage afin d'effectuer des essais et de conceptualiser le modèle actuel.<br />
+
[[Fichier:Ritournelle circuit vue002a.png|700px]]
La catégorie ATMEL évoque plus précisément le microcontrôleur utilisé dans les Arduino UNO que j'ai utilisés pour prototyper mon programme et mon circuit.<br />
+
[[Fichier:Ritournelle circuit vue002b.png|700px]]
Enfin, il existe un ensemble de plus petits composants et matériel (résistances, fils etc.) que je n'ai pas spécifier ici et qui peut être identifié lors de la lecture des fichiers sources intégrés à cette documentation.<br />
 
  
====ATMEL ATMEGA328====
+
=== Circuit annexe, un testeur MIDI ===
  
Le microcontroleur d'Atmel ATMEGA328 est celui que l'on trouve le plus facilement à la date ou j'écris ces lignes, sur les Arduino UNO.<br />
+
Ce circuit envoie des commandes MIDI et peut être utilisé pour simuler un instrument si on n'en a pas un sous la main...
Ce qui peut dérouter dans un premier temps c'est le lien qu'il y a à faire entre les entrées/sorties d'Arduino, les numéros des pins de connections<br />
 
de la puce et le programme que l'on va utiliser dans Arduino IDE par exemple.<br />
 
Vous pouvez consulter la [http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf documentation] du ATMEGA328 qui explique tout ça en détail.
 
  
====M.I.D.I====
+
[[File:testeur_midi_sur_breadboard.png|700px]]
  
Ritournelle utilise le protocole de communication [https://fr.wikipedia.org/wiki/Musical_Instrument_Digital_Interface M.I.D.I] qui est un protocole déjà ancien puisqu’il date de 1983.<br />
+
==PARTIE LOGICIELLE==
C'est un protocole qui a ses limites mais un de ses avantages est qu'il soit devenu une norme pour les instruments électroniques.<br />
 
C'est en quelques sorte, le jargon universel de la grande majorité de nos petites bébêtes électroniques disposant des fameuses prises DIN à 5 broches, <br />
 
permettant de les relier physiquement les unes aux autres.<br />
 
Dans Ritournelle, le M.I.D.I va permettre de relier un instrument qui peut générer des notes MIDI à un jouet électronique par exemple, et ainsi, <br />
 
le contrôler, lui envoyer des notes, en lui précisant la hauteur de la notes, la durée etc.<br />
 
Intégrer une entrée M.I.D.I sur un microcontroleur ATMEGA328 n'est pas quelque chose de bien compliqué.<br />
 
Pour cela, il faut ajouter quelques composants:
 
: Un optocoupleur du type [http://www.vishay.com/docs/83725/4n25.pdf 4N25].
 
: une diode
 
: 2 résistances
 
<br />
 
Vous remarquerez dans la partie logicielle que j'ai utilisé une [https://github.com/FortySevenEffects/arduino_midi_library/releases/tag/4.2 librairie MIDI pour Arduino].
 
  
====4051====
+
'''Le code et les schémas nécessaires sont téléchargeables ici : [https://github.com/emoc/ritournelle ritournelle]'''
  
Le circuit logique 4051 est un 1-OF-8 SWITCH.  Comprenez que c'est un circuit intégré capable de relier un point de connexion à 8 autres, <br />
+
=== Micrologiciel pour arduino ===
en utilisant uniquement une combinaison de 3 "interrupteurs". C'est ce que l'on nomme dans l'idiome électronicien un multiplexeur démultiplexeur.<br />
 
Cette petite chose que l'on peut aisément se procurer pour la modique somme de 30 centimes, permet de contrôler 8 interrupteurs avec seulement 3 sorties Arduino.<br />
 
Mais ATTENTION, il faut que c'est 8 interrupteurs aient une base commune, d'où le 1-OF-8 SWITCH. <br />
 
Si ce n'est pas le cas sur le jouet électronique que vous voulez contrôler, alors il vaudra mieux peut-être se tourner vers une des versions alternatives de Ritournelle,<br />
 
telle que celle utilisant des 4066.<br />
 
<br />
 
En combinant deux 4051 comme c'est le cas actuellement dans cette version de Ritournelle, on augmente le nombre de points de connexion de façon exponentielle.<br />
 
Ainsi comme le montre le schéma emprunté à Little Scale, un des 4051 fonctionne en multiplexeur et le second, en démultiplexeur. <br />
 
Les deux sont reliés et c'est leur combinaison qui permet de contrôler jusqu'à 64 points de connexion sur un jouet.<br />
 
À noter qu'il est possible de contrôler plusieurs objets électroniques simultanément avec une seule Ritournelle - <br />
 
même si ce n'est pas conseillé avec ce modèle - et uniquement en utilisant des entrées séparées du multiplexeur.<br />
 
<br />
 
NB : Les 4051 sont des composants actifs, ils faut les alimenter dans votre circuit.<br />
 
  
===MARCHE À SUIVRE===
+
Le code est utilisable avec un arduino nano V3. Il est réalisé avec la [https://github.com/FortySevenEffects/arduino_midi_library/ library MIDI pour arduino]
Voici maintenant la marche à suivre à différentes étapes de la réalisation de Ritournelle.<br />
 
  
====ÉDITER LE CODE====
+
La dernière version du code est à télécharger sur le dépôt en lien ci-dessus.
Pour éditer le code, vous avez besoin du code déposé sur [https://gitorious.org/ritournelle/ritournelle/source/17c693b849731ca4c45e60cc8813a48f7ede262a: mon compte gitorious] <br />
 
ainsi que de l'IDE d'Arduino.<br />
 
Le code est commenté afin de comprendre à quoi chaque partie correspond. N'hésitez pas à faire des retours ou modifications. <br />
 
  
====MODIFIER LA PARTIE ÉLECTRONIQUE====
+
=== Séquenceur réalisé avec processing ===
=====MATÉRIELLE=====
 
En ce qui concerne la partie électronique matérielle, des modifications sont possibles en se basant sur la liste du matériel par exemple qui peut être changée en fonction<br />
 
des usages.<br />
 
Vouspouvez vous basez sur les photos et le schéma électrique disponible sur [https://gitorious.org/ritournelle/ritournelle/source/17c693b849731ca4c45e60cc8813a48f7ede262a:ritournelle_V_0_3_schema.ps mon compte gitorious].<br />
 
Dans les améliorations prévues à venir : <br />
 
: intégration d'un régulateur de tension.
 
  
=====LOGICIELLE=====
+
[[File:sequenceur_ritournelle_screenshot.png|700px]]
  
====GRAVER SON PCB====
+
La dernière version du code est à télécharger sur le dépôt en lien ci-dessus.
  
===DES VERSIONS ALTERNATIVES===
+
==EXEMPLE D’USAGE==
====4066====
 
===RESSOURCES===
 
====LITTLE SCALE====
 
====CASPER ELECTRONICS====
 
====HIGHLY LIQUID====
 
====SONELEC MUSIQUE====
 
  
==LICENCES==
+
Un jouet séquencé par P5
Le choix de la licence pour ce projet est multiple car les matériaux utilisés le sont également.
 
Ces choix tendent à être modifié dans un futur proche, car je suis désireux d'intégrer la licence PPL (Peer Production Licence).
 
http://p2pfoundation.net/Peer_Production_License
 
La partie logicielle, comprenant le code est sous licence GPL V 3.
 
La partie projet est elle sous licence Creative Commons CC-NC-BY-SA pour l'instant, dans la mesure ou on considère Ritournelle comme une prodution rattachée à la propriété littéraire et artistique. Dans la mesure ou Ritournelle aurait des intention d'industrialisation, alors le CC ne serait plus efficace et il faudrait trouver une autre façon de produire cet objet dans une dynamique de Culture Libre. Pour plus d'informations veuillez vous renseignez auprès de la C.E.P.I http://fablabo.net/wiki/CEPI
 
  
====LICENCE LIBRE GPL V3====
+
Un jouet séquencé par un séquenceur hardware
====PEER PRODUCTION LICENCE====
 

Version actuelle en date du 22 juillet 2021 à 12:01


Interface MIDI pour jouets électroniques

Ritournelle sur breadboard photo.jpg

Contributeur·ice·s

Statut du projet

Prototype

Statut de la publication

Publié

License

GPL v3.0 / CC-NC-BY-SA

Inspiration

Fichiers source

Machines

Lien





INTERFACE M.I.D.I POUR OBJETS ÉLECTRONIQUES DÉTOURNÉS

Le code et les schémas nécessaires sont téléchargeables ici : ritournelle

NOTE D'INTENTION

Ritournelle est une interface électronique qui transforme un jouet électronique en instrument de musique. Le but est de pouvoir contrôler en M.I.D.I n'importe quelle machine électronique fonctionnant sur faible voltage (12V maximum).
La plupart de ces machines peuvent se trouver à bas coût dans les vides greniers, ressourceries etc. De cette façon, il est possible de créer des instruments de musique électronique soi-même à partir d’objets électroniques facilement accessibles et peu coûteux.

Ainsi Ritournelle transforme tout type de rebut électronique en un potentiel instrument à intégrer à son équipement.
C'est aussi une façon de prolonger la pratique du circuit-bending en y ajoutant de nouvelles possibilités de jeu et de nouvelles pratiques de hacking :
Après avoir modifier certaines sonorités d'un jouet par exemple, en court-circuitant ses circuits électroniques ou en ajoutant d'autres, il est désormais possible de séquencer ce jouet avec un logiciel ou un séquenceur M.I.D.I.

Une des intentions également, est de pouvoir proposer un objet que l'on puisse réaliser soi même, sous licence libre, et avec un coût le plus bas possible en terme de composants par exemple. Un objet que l'on puisse produire chez soi ou dans l'atelier du coin en fonction de la demande, et en remerciant au passage les ouvriers de l'empire du milieu qui œuvrent à la production de condensateurs et autres transistors à bas coût tout en déversant moult solvants et acides dans leurs rivières.

JOURNAL DE BORD

Au-delà de cette documentation à destination de celles et ceux qui souhaitent soit utiliser, soit construire une Ritournelle, vous pouvez également accéder à ce journal de bord que je tiens à jour à chacune des résidences de travail sur ce projet.
Le journal de bord est à cette adresse

PRINCIPE

Ritournelle reçoit des commandes MIDI entre 60 et 75 (16 sorties), chacune de ces commandes active un contact électrique, comme si l'on appuyait sur un des boutons du jouet. Le circuit permet d'activer 16 boutons sur un ou plusieurs jouets différents. Pour relier Ritournelle à un jouet sonore, deux fils sont nécessaires. Ils doivent être reliés au circuit imprimé du jouet, aux deux pôles du contact à déclencher.

PARTIE MATÉRIELLE

Liste des composants

  • 2 x résistances 220 Ω
  • 1 x résistance 270
  • 1 x prise MIDI DIN 5
  • 1 x diode 1N4148
  • 1 x LED
  • 1 x optocoupleur 6N138
  • 4 x circuit intégré 4066 (quadruple interrupteur)
  • 1 x arduino nano (microcontrôleur)

MIDI

Ritournelle utilise le protocole de communication MIDI qui est un protocole déjà ancien puisqu’il date de 1983. C'est un protocole qui a ses limites mais un de ses avantages est qu'il soit devenu une norme pour les instruments électroniques. C'est en quelques sorte, le jargon universel de la grande majorité de nos petites bébêtes électroniques disposant des fameuses prises DIN à 5 broches, permettant de les relier physiquement les unes aux autres.

Dans Ritournelle, le MIDI va permettre de relier un instrument qui peut générer des notes MIDI à un jouet électronique par exemple, et ainsi, le contrôler, lui envoyer des notes, en lui précisant la hauteur de la notes, la durée, etc.
Intégrer une entrée MIDI sur un microcontrôleur ATMEGA328 n'est pas quelque chose de bien compliqué. Pour cela, il faut ajouter quelques composants : un optocoupleur, une diode et deux résistances.

Circuit électronique

Schéma

Ritournelle circuit.png

Sur plaque d'expérimentation

Il est possible d'assembler Ritournelle sur deux plaques d'expérimentation.

Ritournelle sur breadboard.png


Sur circuit imprimé

En cours de réalisation Ritournelle circuit vue002a.png Ritournelle circuit vue002b.png

Circuit annexe, un testeur MIDI

Ce circuit envoie des commandes MIDI et peut être utilisé pour simuler un instrument si on n'en a pas un sous la main...

Testeur midi sur breadboard.png

PARTIE LOGICIELLE

Le code et les schémas nécessaires sont téléchargeables ici : ritournelle

Micrologiciel pour arduino

Le code est utilisable avec un arduino nano V3. Il est réalisé avec la library MIDI pour arduino

La dernière version du code est à télécharger sur le dépôt en lien ci-dessus.

Séquenceur réalisé avec processing

Sequenceur ritournelle screenshot.png

La dernière version du code est à télécharger sur le dépôt en lien ci-dessus.

EXEMPLE D’USAGE

Un jouet séquencé par P5

Un jouet séquencé par un séquenceur hardware