Les deux révisions précédentes
Révision précédente
Prochaine révision
|
Révision précédente
|
wiki:projets:are2018:fablab:projet2:camerathermique [2018/05/10 16:32] THOMAS Maud [Commande du mouvement du ou des capteurs] |
wiki:projets:are2018:fablab:projet2:camerathermique [2020/10/05 14:39] (Version actuelle) |
La première est une illustration du concept et de l'idée que l'on se faisait initialement de l'agencement des deux moteurs. La deuxième image est plus fidèle à la réalité. | La première est une illustration du concept et de l'idée que l'on se faisait initialement de l'agencement des deux moteurs. La deuxième image est plus fidèle à la réalité. |
| |
**Servo moteur DS04-NFC** | **Servo moteur DS04-NFC** |
| |
Moteur fonctionnement en START AND STOP. Engrenage fixable avec des visses. | Moteur fonctionnement en START AND STOP. Engrenage fixable avec des visses. |
| |
| |
**Shinano EM 488-266821G** | **Shinano EM 488-266821G** |
| |
Moteur pas à pas. | Moteur pas à pas. |
=== Matériels: === | === Matériels: === |
| |
**Arduino UNO** | **Arduino UNO** |
| |
[[https://www.arduino.cc/en/Guide/ArduinoUno|site]] | [[https://www.arduino.cc/en/Guide/ArduinoUno|site]] |
* dimensions: 74 x 53 x 15 mm | * dimensions: 74 x 53 x 15 mm |
| |
**Shield** | **Shield** |
| |
Un shield sert est une carte de puissance pour contrôler des moteurs pas-à-pas, des servo-moteurs et des relais, en alimentant via l’alimentation de l'arduino, soit par une alimentation externe. | Un shield sert est une carte de puissance pour contrôler des moteurs pas-à-pas, des servo-moteurs et des relais, en alimentant via l’alimentation de l'arduino, soit par une alimentation externe. |
=== Logiciel: === | === Logiciel: === |
| |
**Arduino** | **Arduino** |
| |
| |
| |
* La valeur nombre_d'incrément correspond au nombre de crans que doit faire le moteur, à la place de sens_de_rotation on entre FORWARD ou BACKWARD pour donner un sens de rotation, et on entre DOUBLE, SIMPLE ou COUPLE pour impacter le couple du moteur. | * La valeur nombre_d'incrément correspond au nombre de crans que doit faire le moteur, à la place de sens_de_rotation on entre FORWARD ou BACKWARD pour donner un sens de rotation, et on entre DOUBLE, SIMPLE ou COUPLE pour impacter le couple du moteur. |
| |
| |
===Schéma du balayage du capteur:=== | ===Schéma du balayage du capteur:=== |
{{:wiki:projets:are2018:fablab:projet2:schema_balayage_capteur.png?400|}} | {{:wiki:projets:are2018:fablab:projet2:schema_balayage_capteur.png?700|}} |
==== Traitement des données du ou des capteurs ==== | ==== Traitement des données du ou des capteurs ==== |
| |
**Capteur MLX90614** | **Capteur MLX90614** |
| |
[[https://www.dfrobot.com/wiki/index.php/IR_Thermometer_Sensor_MLX90614_SKU:_SEN0206 |Site web avec un exemple]] | [[https://www.dfrobot.com/wiki/index.php/IR_Thermometer_Sensor_MLX90614_SKU:_SEN0206 |Site web avec un exemple]] |
* Utiliser un connecteur | * Utiliser un connecteur |
| |
**Envoi des données de l'Arduino vers la RaspberryPi** | **Envoi des données de l'Arduino vers la RaspberryPi** |
| |
L'Arduino et la RPi communiqueront via une liaison série par câble USB grâce à plusieurs commandes (de l'Arduino vers la RPi) : | L'Arduino et la RPi communiqueront via une liaison série par câble USB grâce à plusieurs commandes (de l'Arduino vers la RPi) : |
| |
* ''START (taille de l'image en x) (taille de l'image en y)'' Commande pour | * ''START (taille de l'image en x) (taille de l'image en y)'' Commande pour |
* ''TOBJ (position en x) (position en y) temperature'' température de l'objet (à noter que les positions vont de 0 jusqu'à (taille_de_l_image - 1) | * ''TOBJ (position en x) (position en y) temperature'' température de l'objet (à noter que les positions vont de 0 jusqu'à (taille_de_l_image - 1) |
* ''TAMB temperature'' température ambiante | * ''TAMB temperature'' température ambiante |
* ''STOP'' affichage de l'image | * ''STOP'' affichage de l'image |
| |
Ces commandes sont interprétées par un programme en Python {{ :wiki:projets:are2018:fablab:projet2:rendu_de_l_image.py.zip |disponible ici}}. Ce programme à besoin des bibliothèques Python ``numpy``, ``matplotlib`` et ``pyserial`` (voir l'installation de la Raspberry Pi pour plus de détails sur leur installation). Le résultat est une image colorées en fonction des températures minimales et maximales. | Ces commandes sont interprétées par un programme en Python {{ :wiki:projets:are2018:fablab:projet2:rendu_de_l_image.py.zip |disponible ici}}. Ce programme à besoin des bibliothèques Python ``numpy``, ``matplotlib`` et ``pyserial`` (voir l'installation de la Raspberry Pi pour plus de détails sur leur installation). Le résultat est une image colorées en fonction des températures minimales et maximales. |
{{:wiki:projets:are2018:fablab:projet2:image_test_ligne_1.png?nolink&400 |}}{{ :wiki:projets:are2018:fablab:projet2:image_test_ligne_2.png?nolink&400 |}} | {{:wiki:projets:are2018:fablab:projet2:image_test_ligne_1.png?nolink&400 |}}{{ :wiki:projets:are2018:fablab:projet2:image_test_ligne_2.png?nolink&400 |}} |
| |
**Configuration de la Raspberry Pi** | **Configuration de la Raspberry Pi** |
| |
Modèle utilisé : Raspberry Pi A (faute de mieux) | Modèle utilisé : Raspberry Pi A (faute de mieux) |
{{ :wiki:projets:are2018:fablab:projet2:img_20180404_143822.jpg?nolink&400 |}} | {{ :wiki:projets:are2018:fablab:projet2:img_20180404_143822.jpg?nolink&400 |}} |
| |
**Câblage de la connexion série entre l'Arduino et la Raspberry Pi** | **Câblage de la connexion série entre l'Arduino et la Raspberry Pi** |
| |
Il faut prendre soin d'adapter les tensions entre les deux cartes électroniques ! | Il faut prendre soin d'adapter les tensions entre les deux cartes électroniques ! |
L'objectif c'est de concevoir un support en 3D pour le capteur thermique. Celui-ci devra relie le capteur au moteur pas a pas de façon à qu'il puisse faire des rotations autour de l'axe des x. Celui-ci sera relié au stepper et à un roulement à bille qui facilitera la rotation. | L'objectif c'est de concevoir un support en 3D pour le capteur thermique. Celui-ci devra relie le capteur au moteur pas a pas de façon à qu'il puisse faire des rotations autour de l'axe des x. Celui-ci sera relié au stepper et à un roulement à bille qui facilitera la rotation. |
| |
**Mesures pour pouvoir concevoir le support du capteur thermique** | **Mesures pour pouvoir concevoir le support du capteur thermique** |
| |
Ces mesures ont été faites avec un pied à coulisse qui possède une incertitude de 0,01 mm | Ces mesures ont été faites avec un pied à coulisse qui possède une incertitude de 0,01 mm |
{{ :wiki:projets:are2018:fablab:projet2:refonte.jpg?400 |}} | {{ :wiki:projets:are2018:fablab:projet2:refonte.jpg?400 |}} |
| |
**Dimensions de notre support en 3D (avec le servo moteur):** | **Dimensions de notre support en 3D (avec le servo moteur):** |
* Hauteur: 8,5cm | * Hauteur: 8,5cm |
* Longueur: 10 cm | * Longueur: 10 cm |
| |
| |
**Mesures pour pouvoir concevoir la boite** | **Mesures pour pouvoir concevoir la boite** |
| |
Pour créer la boite, on doit tenir en compte des dimensions de tous les éléments de notre objet à savoir la Raspberry; l'écran, la Shield, la carte Arduino et notre support en 3D. Voici le schéma montrant l'agencement de toutes les composantes (le 1 est celui que l'on avait conçu initialement, mais nous avons ajouter un écran etc. Nous avons de plus changer la façon de l'ouvrir, pour accéder aux différentes parties. Le 2 est donc celle que nous avons réellement faite). | Pour créer la boite, on doit tenir en compte des dimensions de tous les éléments de notre objet à savoir la Raspberry; l'écran, la Shield, la carte Arduino et notre support en 3D. Voici le schéma montrant l'agencement de toutes les composantes (le 1 est celui que l'on avait conçu initialement, mais nous avons ajouter un écran etc. Nous avons de plus changer la façon de l'ouvrir, pour accéder aux différentes parties. Le 2 est donc celle que nous avons réellement faite). |
Ainsi, sachant que notre support 3D va faire une rotation de 45° de chaque coté, on peut déduire que la longueur de notre premier compartiment va être de 6,2*2=12,4 cm. On va laisser une marge de 2 cm. | Ainsi, sachant que notre support 3D va faire une rotation de 45° de chaque coté, on peut déduire que la longueur de notre premier compartiment va être de 6,2*2=12,4 cm. On va laisser une marge de 2 cm. |
| |
**Dimensions du premier compartiment:** | **Dimensions du premier compartiment:** |
* hauteur= 12 cm | * hauteur= 12 cm |
* longueur= 14,5 cm | * longueur= 14,5 cm |
* larguer= 14 cm | * larguer= 14 cm |
| |
**Dimensions du deuxième compartiment:** | **Dimensions du deuxième compartiment:** |
* hauteur= 12 cm | * hauteur= 12 cm |
* longueur= 14 cm | * longueur= 14 cm |
* larguer= 14 cm | * larguer= 14 cm |
| |
**Dimensions de la boite dans sa totalité:** | **Dimensions de la boite dans sa totalité:** |
* hauteur= 12 cm | * hauteur= 12 cm |
* longueur=28,5 cm | * longueur=28,5 cm |
| |
[[http://www.arduinogeek.com/2016/12/how-to-control-ds04-nfc-servo-with.html/|Guide]] pour la relation arduino/ servo | [[http://www.arduinogeek.com/2016/12/how-to-control-ds04-nfc-servo-with.html/|Guide]] pour la relation arduino/ servo |
| |