Table des matières

Projets capteurs LPROB 2022

Organisation du projet

Le projet se déroule sur 1 séances de 4h durant la période P1 puis 6h pendant la période P2. Vous devrez mettre à profit le temps entre les 2 périodes pour avancer sur votre projet. Chaque binôme aura un sujet propre et devra prendre en main un capteur et l'intégrer sur une carte Arduino. Ensuite une caractérisation du capteur devra être menée et un document expliquant le travail réalisé devra être produit. L'évaluation du projet tiendra compte:

A la fin de la première séance, vous devrez rendre votre compte rendu sous forme informatique ainsi que des schéma de câblage et la liste du matériel nécessaire à l'application.

A la fin de la dernière séance, vous devrez rendre programme et un compte rendu du projet indiquant ce que vous avez produit sous forme informatique.

Etape 1: Présentation et attribution des projets

Nom du projet membre 1 du binôme membre 2 du binôme rapport 1 rendu rapport 2 rendu Note
LIDAR 3D VL6180X Time Of Flight distance sensor Ott Pestel OK OK 14
LIDAR 2D RPLIDAR Martin Desbois OK 8
Caméra capteur de positionnement infrarouge DFROBOT Recinos Ruis OK OK 14.5
Capteur de température Dallas DS18020 + RFID Alanique Pereira OK retard 2j OK 14
Caméra capteur de positionnement rouge CMUCAM3 → lidar Girola SEUL OK OK 12
Capteur de position et vitesse angulaire par codeur incrémental et commande barette de leds couleur WS2812 Boisteau Quadri OK OK 12
Télémètre ultrason HC-SR04 Aribert Muno OK OK 15.5
Capteur de couleur TCS230 + WS2812
Lecteur de carte RFID-RC522
GPS NMEA 0183
Asservissement de position angulaire

Etape 2: Recherche et lecture de documentation

Vous devez rechercher des documentations (datasheet constructeur, exemples d'utilisation, principe de fonctionnement et physique du capteur, information sur le bus de communication (si utilisé), librairies Arduino disponibles etc.

Lister ces documentations ainsi qu'un résumé de leur contenu et remplir un document texte récapitulant les informations (en copiant collant le contenu) du modèle de documentation à produire:

doc.txt
Liste des documentations consultées (avec adresses web + description succincte du contenu)
 
Fonction du capteur:
 
Grandeur(s) physique(s) mesurée(s):
 
Exemples d'utilisations:
 
tension d'alimentation:
 
Courant ou puissance d'alimentation nécessaire:
 
Tension admissible pour les entrées/sorties:
 
Valeur minimum de grandeur(s) physique(s) mesurée(s):
 
Valeur maximum de grandeur(s) physique(s) mesurée(s):
 
Distance minimum/maximum pour que le capteur puisse mesurer:
 
Cadence maximum des mesures:
 
Latence pour la mesure:
 
Communication via:
 
Librairie disponible pour Arduino:
 
Programme d'exemple disponible pour Arduino:
 
Tarifs et fournisseurs:
 
Questions/réponses proposées par les étudiants:
 
Questions/réponses proposées par l'enseignant:

Etape 3: Proposition d'une application et d'un schéma de montage pour l'utilisation du capteur

Etape 4: Caractérisation du capteur

Informations spécifiques aux projets

Cmucam 3

alimentée en 6V, 120mA

en ER2EN:

miniterm.py /dev/ttyS1 9600

RPLIDAR

https://github.com/slamtec/rplidar_sdk

cd ~
git clone https://github.com/slamtec/rplidar_sdk
cd ~/rplidar_sdk/ &&   make
cd output/Linux/Release/
./ultra_simple /dev/ttyUSB0 --channel  --serial /dev/ttyUSB0 115200
./simple_grabber --channel  --serial /dev/ttyUSB0 115200

En cas d'erreur de compilation:

src/arch/linux/net_socket.cpp:170:15: error: ordered comparison of pointer with integer zero (‘const char*’ and ‘int’)
170 |     return ans<=0?RESULT_OPERATION_FAIL:RESULT_OK;
    |            ~~~^~~

faire:

gedit ~/rplidar_sdk/sdk/src/arch/linux/net_socket.cpp

changer:

return ans<=0?RESULT_OPERATION_FAIL:RESULT_OK;

en:

if (ans<=(void*)0) return RESULT_OPERATION_FAIL; else return RESULT_OK;  

puis:

git add   sdk/src/arch/linux/net_socket.cpp
git commit -m"correction socket"

bvandepo@rapid:~/rplidar_sdk/sdk$ ll app/ultra_simple/main.cpp

amener cable Usb micro + rallonge

adapter programme “rplidar_sdk/app/ultra_simple/main.cpp” pour faire détection d'intrusion → nombre d'intrus et position angulaire/distance⇒ cartésienne

Copier le programme de démo en un programme à modifier par l'étudiant:

cp -r ~/rplidar_sdk/app/ultra_simple ~/rplidar_sdk/app/prog1

Ajouter dans la recette Makefile le nouveau programme, pour cela, modifier ~/rplidar_sdk/app/Makefile :

sed -i 's,MAKE_TARGETS := simple_grabber ultra_simple ,MAKE_TARGETS := simple_grabber ultra_simple prog1 ,g'  ~/rplidar_sdk/app/Makefile

Ajouter les nouveaux fichiers au suivi par l'outils de gestion de version:

git add ~/rplidar_sdk/app/prog1/main.cpp ~/rplidar_sdk/app/prog1/Makefile ~/rplidar_sdk/app/Makefile
git commit -m "projet pour étudiant"

pour compiler le programme:

cd ~/rplidar_sdk/ &&   make

pour exécuter le programme (CTRL+C pour quitter):

~/rplidar_sdk/output/Linux/Release/prog1 --channel  --serial /dev/ttyUSB0 115200

pour éditer le programme:

qtcreator ~/rplidar_sdk/app/prog1/main.cpp &

pour voir ce que vous avez changé par rapport au programme de départ:

cd  ~/rplidar_sdk/ && gitk &

——————–

Homographie

Lien vers la librairie pour l'estimation et l'application d'homographie: homographyarduino

Camera DF Robot

http://wiicanetouchgraphic.blogspot.com/2009/03/wii-remote-ir-sensitivity.html

http://wiibrew.org/wiki/Wiimote#IR_Camera

https://www.dfrobot.com/product-1088.html

https://www.digikey.fr/fr/datasheets/dfrobot/dfrobot-positioning_ir_camera_web

Projet capteur TOF

Commandes G-CODE: https://marlinfw.org/docs/gcode/G000-G001.html

datasheet capteur VL6180X: https://cdn-learn.adafruit.com/assets/assets/000/037/608/original/VL6180X_datasheet.pdf

capteur lidar pour mesurer la qualité d'extrusion sur imprimante rapide: https://www.youtube.com/watch?v=wKGIdjCsy-E