Spécifications du système « Fraise »

https://github.com/MetaluNet/Fraise

 

Fraise (FRAmework for Interfacing Software and Electronics) est un kit Open Hardware développé et conceptualisé par Antoine Rousseau. Le réseau Fraise est constitué d’un contrôleur maître (le pied), relié par USB à l’ordinateur hôte, qui exécute un patch Pure Data pilote. Le pied nécessite (1) une alimentation dédiée, qui alimente ensuite tout le bus fraise (2) des cartes périphériques (les fruits) ayant chacune leur patch pilote. Chaque carte, fruit ou pied, possède 2 connecteurs femelles, et toutes les cartes sont reliées les unes à la suite des autres, depuis le pied jusqu’au dernier fruit. L’ordre de connexion n’importe pas. Les entrées/sorties sont indifférenciées. Le bus conduit les informations à la vitesse de 250 kbit/s bien supérieure au protocole MIDI (31,25 kbit/s) habituellement utilisé dans ce genre d'applications. La communication est de type half-duplex, c’est-à-dire dans les deux sens mais pas en même temps. Elle alterne donc très rapidement entre des communications ordinateur→pied→fruit et fruit→pied→ordinateur. Les circuits électroniques utilisés limitent théoriquement le réseau à 31 fruits sur un même bus. La limite fixée par le protocole est de 126 fruits sur un même pied. La longueur maximum cumulée du bus est d’environ 400 m, distances de transmission impossibles à réaliser avec des cartes Arduino, par exemple. Il existe plusieurs variétés de fruits ; chacune est spécialisée par la présence de certains circuits la rendant apte à des fonctions spécifiques. Par exemple telle variété sera capable de commander des moteurs d'un type et d'une puissance donnés, telle autre sera équipée de commandes et d’indicateurs (boutons poussoirs, potentiomètres, voyants leds, écran LCD) la transformant en une interface de contrôle. Un fruit, pour pouvoir fonctionner, doit être muni d’un programme (firmware) adapté à la variété du fruit, lui permettant potentiellement de réaliser des fonctions très diverses, que ce soit un asservissement de moteur avec gestion de contacts de fin de course, ou un contrôleur de gradateur lumière commandé en DMX512, par exemple. Les processus de compilation et de transfert du firmware ainsi que le pilotage du réseau sont entièrement écrits en langage C et en Pure Data, et l'ensemble du système (software et hardware) est diffusé en open source.