Créez votre propre machine inutile (« Useless Box ») !

Ce projet est celui d’une boite qui ne fait rien. Qui n’a aucune utilité. Un dispositif dont le seul but est de s’éteindre quand on l’allume.

Attention, hein, pas juste une boite vide, non non ! il y a véritablement tout un dispositif à l’intérieur pour remplir sa non-fonction !
La « useless box » (littéralement « boite inutile ») est un dispositif qui a été popularisé par Claude Shannon, le fameux auteur de la théorie de l’information… il a cependant été initialement créé par Marvin Minsky, professeur au MIT et pionnier de l’intelligence artificielle, lorsqu’étudiant il se trouvait aux Bell Labs en 1952 avec pour mentor Claude Shannon. L’auteur de science-fiction Arthur C. Clarke était fasciné par ce concept qu’il avait vu sur le bureau de Claude Shannon…

Créez votre propre machine inutile (« Useless Box ») !

By 16 avril 2023

premier test du dispositif... concluant 😉

on y va !

Instructions

1 - préparez la boite : j'ai coupé le couvercle en deux et ai fixé des charnières sur la partie non attachée

2 - imprimez les pieces suivantes. elles sont faites pour être accrochées sur un couvercle en bois d'épaisseur 5mm

fichier STL

3 - Montez l'interrupteur à levier sur le dessus de la boîte

4 - Fixez le servomoteur à l'intérieur de la boîte sur son support imprimé.

5 - Assemblez les composants de la manière suivante :

pour ma part j'alimente le dispositif au moyen d'une batterie démontée placée au fond de la boit et connectée au port USB de la nano : l'alimentation sur le port VIN n'a jamais fonctionné correctement pour une raison qui m'échappe...

6 - Programmation de l'Arduino
Programmez l'Arduino pour détecter l'état de l'interrupteur et activer le servomoteur en conséquence. Lorsque l'interrupteur est enclenché, le servomoteur doit pousser un bras pour désactiver l'interrupteur.

#include <Servo.h> //on appelle la bibliotheque qui gere les servomoteurs

Servo monservo1; //nom du servo
const int buttonPin = 2;
int buttonState = 0;

void setup() {
Serial.begin(9600);
monservo1.attach(9);
monservo1.write(0);
pinMode(buttonPin, INPUT);

}

void loop() {
buttonState = digitalRead(buttonPin); // Read the button position
if (buttonState == LOW) {
delay(1000);
monservo1.write(85);
delay(350);
monservo1.write(0);
delay(2000);
}
}

7 - une fois l'arduino actif , le servo est dans la bonne position initiale. vous pouvez insérer le bras imprimé en position basse.

8 - Testez votre "Useless Box" !

Print

Bon je dois reconnaitre que conceptuellement le dispositif présenté ici n’est pas entièrement « logique » puisque dans mon montage l’arduino doit être sous tension pour que le dispositif fonctionne, on ne l’allume pas à proprement parler en appuyant sur le levier… mais ca les utilisateurs n’en savent rien, c’est juste mon perfectionnisme qui parle 😉

Même si la « Useless Box » n’a pas d’utilité pratique, elle reste un excellent projet pour s’amuser avec les enfants… ou sans. C’est également un bon projet d’introduction à Arduino…

2 Responses to Créez votre propre machine inutile (« Useless Box ») !

  1. rafu

    Juste pour info, les entrées sont programmables en pull-up, m^me pas besoin de résistance.

    • fxf

      ah merci ! depuis une certaine époque ou j’ai grillé une série de composants je suis frileux sur la question 😉

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.