Différences entre versions de « Projets:Useless box »
(30 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
+ | {{Infobox projet | ||
+ | |Image principale=Ub o.png | ||
+ | |Description=Boite inutile ! | ||
+ | |Porteur de projet=Davidz | ||
+ | |Contributeurs=Davidz | ||
+ | |Fabmanager=Yo | ||
+ | |Référent documentation=Davidz | ||
+ | |Catégorie de handicap=Hors handicap | ||
+ | |Etat d'avancement=Réalisés | ||
+ | |Statut de la documentation=Partielle | ||
+ | |Relecture de la documentation=Non vérifiée | ||
+ | |Licence=by-sa | ||
+ | |Projet date=2021-09-07 | ||
+ | |Nom humanlab=Humanlab_MHK | ||
+ | }} | ||
== Description du projet == | == Description du projet == | ||
Ligne 7 : | Ligne 22 : | ||
== Equipe (Porteur de projet et contributeurs) == | == Equipe (Porteur de projet et contributeurs) == | ||
− | * | + | * Responsable de documentation et porteurs du projet : Zielinski David |
− | + | * Fabmanager référent : Véron Yohann | |
− | |||
− | * Fabmanager référent | ||
− | |||
== Matériel nécessaire == | == Matériel nécessaire == | ||
[[File:Uba0.png]] | [[File:Uba0.png]] | ||
+ | Cette boîte contient une carte Arduino UNO R3, deux servomoteurs (dans deux pattes de la peluche) ainsi qu’un interrupteur (fixé en façade au dessus du message « don’t touch »). | ||
− | + | ||
+ | [[File:Ub_b.png]] | ||
Cette carte est alimenté en 9 volts via une pile qui alimente (en 5V) les deux servomoteurs. | Cette carte est alimenté en 9 volts via une pile qui alimente (en 5V) les deux servomoteurs. | ||
Ligne 24 : | Ligne 38 : | ||
Une platine d’essai sans soudure est également présente afin de faciliter les différentes connections. | Une platine d’essai sans soudure est également présente afin de faciliter les différentes connections. | ||
La carte communique en tant que port de série avec un PC via un câble USB. | La carte communique en tant que port de série avec un PC via un câble USB. | ||
− | |||
− | |||
==Outils nécessaires== | ==Outils nécessaires== | ||
Ligne 34 : | Ligne 46 : | ||
==Fichiers source== | ==Fichiers source== | ||
+ | La version de l’IDE utilisé est la 1.8.12 sous Linux Mint 19.3 | ||
+ | Afin de vérifier rapidement que la carte fonctionne, utiliser/télécharger le fichier Blink dans la carte. Il est présent dans Fichier/Exemple/01.Basics/Blink de Arduino IDE. | ||
+ | |||
+ | Par la site pour une utilisation avec Node-red, on préférera télécharger d'abord un firmata dans la carte. Cette configuration permet de trouver les cinq valeurs nécessaires pour calibrer les deux servo moteurs. Celui qui est utilisé est le StandardFirmata.ino-2.5, il est également disponible dans les exemples. | ||
+ | L’utilisation du logiciel Firmata Test (http://firmata.org/wiki/Main_Page), permet également de vérifier simplement le branchement de l’ensemble via l’interface graphique. Dans notre configuration, le port sélectionné est /dev/ttyACM0. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |+Les GPIO Utilisées et leur mode de fonctionnement | ||
+ | |'''Firmata | ||
+ | |'''Pin | ||
+ | |'''Mode | ||
+ | |'''Commentaires | ||
+ | |- | ||
+ | |rowspan="9" |[[File:ub_g.png]] | ||
+ | |2 | ||
+ | |Input | ||
+ | |<s>''Pas utilisé''</s> | ||
+ | |- | ||
+ | |4 | ||
+ | |Output | ||
+ | |Le relais SRD 5V est branché en parallèle avec l’interrupteur, il permet de maintenir l’alimentation de la carte bien que l’interrupteur soit baissé. | ||
+ | |- | ||
+ | |5 | ||
+ | |Servo | ||
+ | |Dans la patte qui baisse l’interrupteur. | ||
+ | |- | ||
+ | |6 | ||
+ | |Servo | ||
+ | |Dans la patte qui ouvre/ferme le couvercle. | ||
+ | |- | ||
+ | |7 | ||
+ | |Output | ||
+ | |Le piezo pour le son. | ||
+ | |- | ||
+ | |11 | ||
+ | |Output | ||
+ | |Cette diode RGB dans un œil | ||
+ | |- | ||
+ | |12 | ||
+ | |Output | ||
+ | | | ||
+ | |- | ||
+ | |13 | ||
+ | |Output | ||
+ | |Correspond à la diode LED_BUILTIN de la carte. | ||
+ | | | ||
+ | |- | ||
+ | |16 | ||
+ | |Analog A2 | ||
+ | |<s>''Pas utilisé''</s> | ||
+ | |- | ||
+ | |} | ||
==Etapes de fabrication pas à pas== | ==Etapes de fabrication pas à pas== | ||
+ | {| class="wikitable" | ||
+ | | La sortie | ||
+ | | pour le relais de maintien d’alimentation | ||
+ | | DIGITAL 4 | ||
+ | |- | ||
+ | | La sortie PWM | ||
+ | | pour servo-moteur de la patte, qui baisse l’interrupteur est : | ||
+ | | DIGITAL 5 | ||
+ | |- | ||
+ | | La sortie PWM | ||
+ | | pour servo-moteur qui ouvre et ferme la boîte est : | ||
+ | | DIGITAL 6 | ||
+ | |- | ||
+ | | La sortie | ||
+ | | pour le son | ||
+ | | DIGITAL 7 | ||
+ | |- | ||
+ | | La sortie RGB | ||
+ | | pour diode RGB dans l’œil | ||
+ | D11 ,,, | ||
+ | D12 est relier à une LED | ||
+ | D13 correspond à la diode LED_BUILTIN de la carte. | ||
+ | | DIGITAL 11,12,13 | ||
+ | |- | ||
+ | | ± Alimentation | ||
+ | | Ces deux fils provenant de la carte Arduino, alimentent deux servo moteurs. | ||
+ | | POWER 5V POWER GND | ||
+ | |} | ||
+ | [[File:Ub c.png]] | ||
+ | {| class="wikitable" | ||
+ | | '''Le fil | ||
+ | | '''pour | ||
+ | | '''couleur | ||
+ | | '''image | ||
+ | |- | ||
+ | | Le fil | ||
+ | | permettre l’alimentation de la carte | ||
+ | l’interrupteur est connecté parallèle à un relais (pin 4) | ||
+ | | blanc | ||
+ | | [[File:Ub d.png|center]] | ||
+ | |- | ||
+ | | D4 | ||
+ | | le relais SRD 5V est branché en parallèle avec l’interrupteur | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | | D5 | ||
+ | | pour le servo-moteur qui pilote la patte | ||
+ | | orange | ||
+ | | [[File:Ub e.png|center|200px]] | ||
+ | |- | ||
+ | | D6 | ||
+ | | pour le servo-moteur qui pilote le couvercle | ||
+ | | blanc | ||
+ | | [[File:Ub f.png|center|200px]] | ||
+ | |- | ||
+ | | D7 | ||
+ | | Le piezo pour le son. | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | | D11 D12 D13 | ||
+ | | Pour la diode RGB dans l’œil | ||
+ | ''D13 correspond à la diode LED_BUILTIN de la carte.'' | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
− | = | + | '''Node red'''<br> |
+ | ''StandardFirmata''<br> | ||
+ | |||
+ | Télécharger dans la carte le StandardFirmata présent dans Fichier/Exemple/Firmata de Arduino IDE. | ||
+ | Ensuite quitter l’application IDE Arduino. | ||
+ | |||
+ | ''Node-red''<br> | ||
+ | Installer node red. (pour lancer le terminal (Ctrl+Alt+T)), | ||
+ | sudo apt-get install npm | ||
+ | sudo ufw allow 1880 | ||
+ | |||
+ | npm install node-red-node-arduino | ||
+ | Puis lancer l’interface : node-red | ||
+ | |||
+ | Dans l’interface flow, créer ou importer le fichier setup_flow.json | ||
+ | |||
+ | [[File:Ub h.png]] | ||
+ | le menu en haut à droite menu/import/select a file to import, click import | ||
+ | |||
+ | Il est maintenant possible le piloter la box via les deux pages web ui et flow | ||
+ | {| class="wikitable" center | ||
+ | | '''Flow | ||
+ | | '''UI | ||
+ | |- | ||
+ | |[[File:Ub i.png|center|400px]] | ||
+ | |[[File:Ub j.png|center|400px]] | ||
+ | |- | ||
+ | | center|http://127.0.0.1:1880/#flow | ||
+ | | center|http://127.0.0.1:1880/ui/ | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | [[File:Ub k.png]] | ||
+ | puis faire un '''Deploy'''<br> | ||
+ | L’utilisation de cette ui et de son flow permet de trouver cinq valeurs pour les commandes des deux servo-moteurs. | ||
+ | Les deux « slider » du « dashboard » (UI) permettent de modifier les valeurs qui sont nécessaire à l’enclenchement de l’interrupteur (CLICK/TOUCH/HIDE) et à la commande du couvercle (OPEN/CLOSE). | ||
− | == | + | Cinq « inject node » du « flow » positionne directement une valeur dans le servo-moteurs adéquate. |
+ | {| class="wikitable" | ||
+ | | '''Servo-moteurs | ||
+ | | '''Nom | ||
+ | | '''Valeur | ||
+ | | '''Image | ||
+ | |- | ||
+ | |rowspan="3" |Box | ||
+ | |Close | ||
+ | |133 | ||
+ | |[[File:Ub l.png|center|400px]] | ||
+ | |- | ||
+ | |Open | ||
+ | |85 | ||
+ | |[[File:Ub m.png|center|400px]] | ||
+ | |- | ||
+ | | | ||
+ | |<95 | ||
+ | |Passage possible de la girafe sans toucher le couvercle | ||
+ | |- | ||
+ | |rowspan="3" |Paw | ||
+ | |Hide | ||
+ | |138 | ||
+ | |[[File:Ub n.png|center|400px]] | ||
+ | |- | ||
+ | |Touch | ||
+ | |32 | ||
+ | |[[File:Ub o.png|center|400px]] | ||
+ | |- | ||
+ | |Click | ||
+ | |23 | ||
+ | |[[File:Ub p.png|center|400px]] | ||
+ | |- | ||
+ | |} | ||
+ | Platformio (Visual Studio Code)<br> | ||
+ | Cette environnement de développement est bien plus riche que l’IDE Arduino. | ||
+ | Installer platformio sur Visual Studio Code (une outil microsoft disponible sous linux et gratuit) | ||
+ | https://youtu.be/-2NhjhzFQsM | ||
+ | https://docs.platformio.org/en/latest/integration/ide/vscode.html | ||
+ | [[File:Ub q.png]] | ||
+ | Installer VSCode : https://code.visualstudio.com/ (voir : https://www.youtube.com/watch?v=0poh_2rBq7E) | ||
+ | Télécharger/Installer une version récente du paquet « Visual Studio Code » (ex :code_1.62.3-1637137107_amd64.deb) | ||
+ | Installer PlatformIO depuis les extensions danss VSCode | ||
+ | Dans Plalformio créer un projet pour une carte Arduino R3 | ||
− | + | ==Durée de fabrication du prototype final== | |
− |
Version actuelle datée du 27 juillet 2022 à 09:07
Useless box | |
---|---|
Informations | |
Description | Boite inutile ! |
Catégorie | Hors handicap |
Etat d'avancement | Réalisés |
Techniques | |
Durée de fabrication | |
Coût matériel | |
Niveau | |
Licence | by-sa |
Date de création | 2021-09-07 |
Équipe | |
Porteur de projet | Davidz |
Contributeurs | Davidz |
Fabmanager | Yo |
Référent documentation | Davidz |
Nom humanlab | Humanlab_MHK |
Documentation | |
Statut de la documentation | Partielle |
Relecture de la documentation | Non vérifiée |
Description du projet
Cahier des charges
Analyse de l'existant
Equipe (Porteur de projet et contributeurs)
- Responsable de documentation et porteurs du projet : Zielinski David
- Fabmanager référent : Véron Yohann
Matériel nécessaire
Cette boîte contient une carte Arduino UNO R3, deux servomoteurs (dans deux pattes de la peluche) ainsi qu’un interrupteur (fixé en façade au dessus du message « don’t touch »).
Cette carte est alimenté en 9 volts via une pile qui alimente (en 5V) les deux servomoteurs. !attention au câblage du relais et de l’interrupteur L’interrupteur qui est branché en parallèle avec un relais (piloté par la carte UNO), permet d’alimenter la carte. Une platine d’essai sans soudure est également présente afin de faciliter les différentes connections. La carte communique en tant que port de série avec un PC via un câble USB.
Outils nécessaires
Coût
Délai estimé
Fichiers source
La version de l’IDE utilisé est la 1.8.12 sous Linux Mint 19.3 Afin de vérifier rapidement que la carte fonctionne, utiliser/télécharger le fichier Blink dans la carte. Il est présent dans Fichier/Exemple/01.Basics/Blink de Arduino IDE.
Par la site pour une utilisation avec Node-red, on préférera télécharger d'abord un firmata dans la carte. Cette configuration permet de trouver les cinq valeurs nécessaires pour calibrer les deux servo moteurs. Celui qui est utilisé est le StandardFirmata.ino-2.5, il est également disponible dans les exemples. L’utilisation du logiciel Firmata Test (http://firmata.org/wiki/Main_Page), permet également de vérifier simplement le branchement de l’ensemble via l’interface graphique. Dans notre configuration, le port sélectionné est /dev/ttyACM0.
Etapes de fabrication pas à pas
La sortie | pour le relais de maintien d’alimentation | DIGITAL 4 |
La sortie PWM | pour servo-moteur de la patte, qui baisse l’interrupteur est : | DIGITAL 5 |
La sortie PWM | pour servo-moteur qui ouvre et ferme la boîte est : | DIGITAL 6 |
La sortie | pour le son | DIGITAL 7 |
La sortie RGB | pour diode RGB dans l’œil
D11 ,,, D12 est relier à une LED D13 correspond à la diode LED_BUILTIN de la carte. |
DIGITAL 11,12,13 |
± Alimentation | Ces deux fils provenant de la carte Arduino, alimentent deux servo moteurs. | POWER 5V POWER GND |
Le fil | pour | couleur | image |
Le fil | permettre l’alimentation de la carte
l’interrupteur est connecté parallèle à un relais (pin 4) |
blanc | |
D4 | le relais SRD 5V est branché en parallèle avec l’interrupteur | ||
D5 | pour le servo-moteur qui pilote la patte | orange | |
D6 | pour le servo-moteur qui pilote le couvercle | blanc | |
D7 | Le piezo pour le son. | ||
D11 D12 D13 | Pour la diode RGB dans l’œil
D13 correspond à la diode LED_BUILTIN de la carte. |
Node red
StandardFirmata
Télécharger dans la carte le StandardFirmata présent dans Fichier/Exemple/Firmata de Arduino IDE. Ensuite quitter l’application IDE Arduino.
Node-red
Installer node red. (pour lancer le terminal (Ctrl+Alt+T)),
sudo apt-get install npm
sudo ufw allow 1880
npm install node-red-node-arduino Puis lancer l’interface : node-red
Dans l’interface flow, créer ou importer le fichier setup_flow.json
le menu en haut à droite menu/import/select a file to import, click import
Il est maintenant possible le piloter la box via les deux pages web ui et flow
Flow | UI |
http://127.0.0.1:1880/#flow | http://127.0.0.1:1880/ui/ |
puis faire un Deploy
L’utilisation de cette ui et de son flow permet de trouver cinq valeurs pour les commandes des deux servo-moteurs.
Les deux « slider » du « dashboard » (UI) permettent de modifier les valeurs qui sont nécessaire à l’enclenchement de l’interrupteur (CLICK/TOUCH/HIDE) et à la commande du couvercle (OPEN/CLOSE).
Cinq « inject node » du « flow » positionne directement une valeur dans le servo-moteurs adéquate.
Servo-moteurs | Nom | Valeur | Image |
Box | Close | 133 | |
Open | 85 | ||
<95 | Passage possible de la girafe sans toucher le couvercle | ||
Paw | Hide | 138 | |
Touch | 32 | ||
Click | 23 |
Platformio (Visual Studio Code)
Cette environnement de développement est bien plus riche que l’IDE Arduino.
Installer platformio sur Visual Studio Code (une outil microsoft disponible sous linux et gratuit)
https://youtu.be/-2NhjhzFQsM
https://docs.platformio.org/en/latest/integration/ide/vscode.html
Installer VSCode : https://code.visualstudio.com/ (voir : https://www.youtube.com/watch?v=0poh_2rBq7E)
Télécharger/Installer une version récente du paquet « Visual Studio Code » (ex :code_1.62.3-1637137107_amd64.deb)
Installer PlatformIO depuis les extensions danss VSCode
Dans Plalformio créer un projet pour une carte Arduino R3