IMA4 2018/2019 P4

De Wiki de Projets IMA
Révision datée du 22 octobre 2018 à 12:25 par Nhavard (discussion | contributions) (Objectifs)


Présentation générale

  • Nom du projet : [Projet CENTAURE]
  • Membre du projet : HAVARD Nicolas
  • Superviseurs du projet : REDON Xavier, BOE Alexandre et VANTROYS Thomas (professeurs de Polytech Lille)
  • Résumé :

Un robot de grande taille a été réalisé à partir de moteurs de fauteuil roulant. Le système de contrôle électrique a été détruit lors d'un précédent projet, il est à reprendre totalement. Le système de commande à base d'Arduino commandant des contrôleurs de moteurs de puissance doit être revu lui aussi. Il faut ensuite s'assurer d'un dispositif d'arrêt d'urgence en cas d'obstacle proche. Pour la détection d'obstacles vous pouvez vous appuyer sur des détecteurs infrarouges et sur une Kinect. Enfin le PC embarqué doit être configuré pour se connecter sur les points d'accès Wi-Fi de l'école et comporter un site Web permettant ainsi de le contrôler à distance avec les images des Webcam comme retour. Pour un déplacement dans tous les bâtiments de l'école, prévoir un dispositif pour appuyer sur les boutons des ascenseurs.





Description

Le projet Centaure est un robot de taille ? repris par différents élèves depuis 2005. Il se déplace sur trois roues et est équipé d'écrans et d'une caméra Kinect. Le robot avance à l'aide de deux moteurs 24V (des moteurs équipant habituellement des fauteuils roulants) qui permettent de faire tourner les deux roues arrières du robot. La roue avant, elle, est une roue folle qui suit le mouvement donné par les roues arrières. Ce projet ayant été repris pas de nombreux élèves, il s'appuie donc sur une certaine base existante et le châssis est ainsi déjà monté. Au début de ce projet, le robot a été récupéré vidé de toute l'électronique qu'il comportait. Quelques capteurs sont manquants et/ou cassés. Cependant, les moteurs et leur codeurs sont en place, ainsi que les deux écrans et la Kinect qui nécessitent seulement d'être connectés à l'ordinateur/serveur. Sur une table à côté du robot, les variateurs de vitesse permettant de piloter les deux moteurs sont commandés par un Arduino Mega et sa carte d'extension "Arduino MEGA Sensor Shield". Une partie électrotechnique et électronique est donc à prendre en compte dans un premier temps pour parvenir à utiliser les moteurs avant d'effectuer un coffrage pour l'étage "puissance" du robot. Il sera nécessaire de prévoir un système de sécurité capable de couper la puissance du robot en cas de problème.


Concernant la partie commande, les fonctions développées en langage Arduino l'année dernière permettant aux deux moteurs de faire reculer le robot semblent fonctionner. Les ordres que le robot doit effectuer à la fin du projet sont d'avancer, de reculer et de tourner à gauche ou à droite en fonction des touches sur lesquelles appuie un utilisateur via une télécommande dans un premier temps. Il sera donc nécessaire de programmer la lecture de la commande, la gestion des différents capteurs ainsi que la commande des deux moteurs en fonction de l'ordre reçu par l'utilisateur.
L'objectif final de ce projet étant d'intégrer un serveur au robot pour recevoir les ordres de l'utilisateur via le Wi-Fi, il est nécessaire de faire communiquer le cerveau du robot, l'Arduino, avec le serveur grâce à une connexion série. L'utilisateur pourrait alors se connecter sur son appareil (ordinateur, tablette, smartphone) et donner des ordres au robot sur une interface web plutôt que d'utiliser une manette reliée au robot par un câble. Afin de diriger le robot à distance, une caméra Kinect est intégrée au système pour transmettre à l'utilisateur l'image de l'environnement où se trouve le robot.




Ce projet ayant été travaillé par plusieurs équipes d'étudiants IMA, nous avons à notre disposition des archives :

  • cinq rapports papiers de 2005 à 2009
  • quatre CD-ROM
  • un wiki étudiant

Ces archives regroupent le travail fait par les différentes équipes en intégrant aussi le code écrit et quelques datasheets à propos des capteurs et des variateurs de vitesse.



Objectifs

Les objectifs de ce projet sont de remettre en état le robot. Ceci impliquant de refaire l'intégralité de l'étage de puissance comportant l'électronique de puissance pour déplacer le robot et les différents systèmes de sécurité (bouton d'arrêt d'urgence, fusibles). La visualisation du couple fournit par les moteurs ou encore l'état de charge des batteries pourront être des caractéristiques intéressantes à faire ressortir.

Une fois l'étage électrique terminé, un second étage permettant de commander le robot sera conçu : cet étage disposera de l'Arduino Mega reliée aux différents capteurs du robot ainsi que les variateurs de vitesse commandant les moteurs.

Pour finir, établir une connexion série fonctionnelle entre l'Arduino et l'ordinateur du Centaure afin d'anticiper l'échange d'informations entre ces deux appareils pour contrôler le robot via Wi-Fi à l'avenir.




Préparation du projet

Cahier des charges

  • Rendre le robot Centaure commandable à l'aide d'une manette avant le lundi 17 décembre
  • Permettre le relevé de données pouvant être utilisées telles que le couple des moteurs et le niveau de charge des batteries
  • Proposer un coffret en plexiglas pour les différents étages afin d'organiser le câblage entre les différents modules



Choix techniques : matériel et logiciel

Matériel à disposition :
Description Marque Nombre Commentaire
châssis du robot 1 Châssis monté avant le projet
batterie GF 12 22 Y (12V / 22 Ah (C5)) Sonnenschein 2 Environ 8V aux bornes des deux batteries initialement. 12 V après recharge
chargeur et testeur de batterie 12V GT6 ELEC 1
moteurs SRG0131 24V / 15.5 A / 0.35 kW / 10 km/h INVACARE 2 Déjà intégrés au châssis
roue 3 Une roue folle et deux roues de fauteuil roulant. Toutes déjà intégrées au châssis
codeur GC10K-04 11200 Baumer IVO 2 Déjà intégrés au châssis au niveau des roues arrières
variateur de vitesse 8CH2QM.2 Italsea 2 Sur la table, déjà reliés aux moteurs, aux batteries et aux relais
bouton d'arrêt d'urgence 1 En plusieurs parties en dehors du robot
Arduino Mega Arduino 1 Déjà équipée de la carte d'extension, reliée aux relais et prête à être programmée
Arduino MEGA Sensor Shield Arduino 1 Déjà fixé à l'Arduino et à la carte de relais
carte équipée de 4 relais KEYES ver. 4R1B Funduino 1 La carte est déjà reliée aux variateurs de vitesse sur la table
relai 12 VDC Tongling 1 Neuf, encore emballé
capteur infrarouge 2Y3A003 F SHARP 4 3 sont fixés sur l'avant du châssis, 1 détaché
capteur infrarouge 2Y0A02 SHARP 2 Un 2Y0A02 46 fixé à l'arrière du robot et un 2Y0A02 4X dont les fixations ont été détruites et les pins abimés
contacteur LC1D18 Telemecanique 1
convertisseur Tel 5-2422 18-36 VDC -> +/- 12 VDC TracoPower 1
convertisseur TEN40-2411 24 VDC -> 5 VDC (8 A) TracoPower 1 Légèrement abimé, dommages "esthétiques"
écran 4/3 ProLite E430 & E430S iiyama 2 Deux écrans dont un fixé à l'avant du robot
caméra Kinect Microsoft 1 Fixée à l'avant du robot en haut du mât



Matériel nécessaire au projet
Description Marque Nombre Prix Référence Documentation
bouton ou joystick TE Connectivity OU SparkFun 4 (boutons) ou 1 (joystick) 2,24 € (paquet de 20 commutateurs) OU 3.36 € (joystick) Achat sur RS OU Mouser PDF sur commutateurs
câble Decelect Forgos 2,5 m * 5 (4 boutons + vcc) ou 2,5 m de câble ethernet 4,18 € (cordon ethernet (2m)) ou 4,91 € (5m) 2 mètres OU 5 mètres sur RS PDF
résistance 3*2kOhm + 1*50 mOhm
capacité 1*1µF + 2*1nF
batterie 12 V / 35 Ah (les batteries 12V sont actuellement à plus de 12,5V mais semblent se décharger toutes seules. Batteries peut-être non nécessaires sur le court terme) 1er prix confiance de Norauto 2 99.9 € (2*49,95 €) site web de Norauto
convertisseur DDR-120B-12 : 24 VDC -> 12 VDC, 120 W et 10 A (légèrement sous dimensionné) ou convertisseur PV24S : 24 VDC -> 12 VDC, 288 W et 24 A (surdimensionné) MEAN WELL ou ALFATRONIX 1 55,81 € ou 144 € achat sur Mouser ou sur Farnell Datasheet des DD-120 et datasheet du PV24S
fuel gauge LTC2944 24V Analog Devices 1 5,28 € achat sur Mouser Datasheet du LTC2944
LED RGB (pour indiquer l'état de la charge) Kingbright 1 (par lot de 5) 0,908 € (4.54 € les 5) achat sur RS PDF
capteur IR 2Y0A02 (arrière robot) Sharp 1 ou 2 3,89 €/unité (Aliexpress) ou 14,86 €/unité (RS) Aliexpress ou RS Datasheet du GP2Y0A02YK0F
capteur de courant ACS712ELCTR-20A-T pour déterminer le couple des moteurs Allegro Microsystems 2 2*4,92 = 9,84 € (sur RS, sans bornier) OU 2*3 = 6 € (sur e.banana-pi.fr avec bornier, prêt à être utilisé) Achat sur RS OU sur e.banana-pi.fr Document PDF
Plaque plexiglas 1*1*0,0025 m^3 1 20,70 € Achat sur Leroy Merlin



Liste des tâches à effectuer

Ce projet sera donc découpé en 3 phases principales :


  • il me faudra tout d'abord regrouper les différentes archives sur un support en ligne afin qu'elles soient facilement accessibles à l'avenir, et en prendre connaissances afin de comprendre ce qui a été fait et pourquoi. L'analyse des besoins sera nécessaire afin d'effectuer la commande du matériel le 28 septembre 2018.

  • le montage du système électrique devra être effectué afin de reconstituer l'étage électrique. Un coffrage en plexiglas sera réalisé pour contenir les modules et les câbles de manière esthétique.

  • la partie commande du robot sera embarquée sur un second étage. Le cerveau du robot, une Arduino Mega, sera ainsi reliée aux différents capteurs du robot et devra envoyer les signaux nécessaires pour déplacer le robot. Cette partie commande devra donc être reliée à un ordinateur embarqué par le Centaure afin de communiquer avec les clients Wi-Fi.




Calendrier prévisionnel

20181012 planning previsionnel.png

Réalisation du Projet

Feuille d'heures

Tâche Heures S1 Heures S2 Heures S3 Heures S4 Heures S5 Heures S6 Heures S7 Heures S8 Heures S9 Heures S10 Heures S11 Heures S12 Heures S13 Total
Rédaction du wiki 0h30 3h30 1h 0h30
Récupération des archives 0h30
Analyse de l'existant (archives, état du système) 3h30 1h
Commande de matériel 5h30h
Documentation 3h 3h30
Rédaction de schémas 5h 5h 1h30
Montage électrique (tests moteurs, câble de puissance) 0h30 2h45 5h30 11h45
Programmation 0h15 0h15
Total 8h 13h30 8h 11h30 14h

Semaine 1 : Introduction au projet et récupération d'archives

  • Découverte du projet et de ses objectifs


  • Récupération des archives et regroupement des documents non papier (disques, wiki) sur un drive :

https://1drv.ms/f/s!Agdnb608xp_RifFzM-b3jDG6AuN4-Q
Les archives sont contenues dans le dossier "Archives" et le dossier "Init" contient des photos du robot et de son équipement au début du projet.

  • Étude des documents et du circuit existant

besoin de schémas



Semaine 2 : Commande du matériel nécessaire à la finalisation du projet

  • Rédaction du wiki de la semaine passée


  • acquisition d'un voltmètre et test des batteries. On obtient 8V à leurs bornes. Rechargement de ces dernières

APRES RECHARGEMENT, TENSIONS ENTRE 12,5 ET 13,2 V

  • commande de nouveau matériel
    • 4 boutons basiques pour donner les différents ordres au robot. Peut être remplacé par un joystick
    • 12,50 mètres de câble permettant d'obtenir 2,50 m pour chaque bouton et pour avoir le 5V de l'Arduino OU 2,50 mètres de câble ethernet permettant d'avoir la longueur de câble souhaitée déjà gainée
    • 1 ou 2 exemplaires de chaque capteurs IR (2 avant et 1 ou 2 arrière)
    • 2 nouvelles batteries 12 V OU une batterie de 24 V. Dans le but de limiter le coût à 100 € pour l'achat des deux batteries, nous optons pour des batteries "1er prix confiance" de Norauto. Caractéristiques de cette batterie :
      • Tension : 12 V
      • Capacité : 35 Ah
      • Dimensions h*L*l : 0,175*0,207*0,175 m^3
    • 1 convertisseur 24VDC -> 12VDC

D'après le bilan énergétique effectué par Haroun ABDELALI (voir semaine 4 de son wiki), les appareils connectés en 12 VDC nécessitent une puissance maximale totale de 125 W et un courant maximal de 12 A. Le robot ne nécessitant pas d'utiliser ses équipements à puissance maximale, nous choisissons donc un convertisseur pouvant délivrer une puissance de 120 W et un courant de 10 A en sortie.

Refaire le bilan énergétique

    • 1 fuel gauge afin de déterminer avec précision l'état de charge des batteries. Appareil mesurant tension, courant, coulomb et température. Nous choisissons un capteur mesurant des tensions jusqu'au moins 26 V afin de le brancher à l'ensemble des batteries.


  • validation des tests sur table. Nécessite cependant la recharge des batteries


  • les 2 câbles (jaune et violet) de petit diamètre concernent le frein moteur et doivent donc être reliés à la masse


convertisseur possibles :
convertissuer 24VDC->12VDC, 288W et 24A : 144 €
24VDC->12VDC, 150W et 14.4A : 122,26 € (16 semaines de livraison)
24VDC - > 12 VDC, 200W et 19.2 A : 158,12 € (16 semaines)





Semaine 3 à 5 : Début des tests du robot et de la rédaction des schémas électriques

La semaine des commandes ayant permis aux batteries d'être rechargées, nous pouvons ainsi débuter les tests du montage fait par les prédécesseurs. La première phase, afin de comprendre comment le variateur de puissance CH2QM fonctionne, sera réalisée sans la PWM de l'Arduino. Nous configurons donc le montage de la même manière qu'indiquée par les documents constructeurs, soit en plaçant une résistance variable de 5 kOhm entre les pins 5 et 7 du variateur de vitesse, le pin 6 étant relié à la troisième broche de la résistance variable. L'Arduino Mega nous permettra de changer l'état des relais afin de simuler un cycle de moteur : moteur à l'arrêt à l'état initial pour respecter les contraintes du variateur,avant d'appliquer une consigne de mouvement avant puis arrière.
Lors de ces tests, il est impératif que la résistance variable soit à 5 kOhm à l'état initial, avant de faire varier la résistance lorsque le moteur est en phase de mouvement. Ainsi, nous avons pu faire avancer à très faible vitesse les deux moteurs. Cependant, les câbles reliés à la batterie ont rapidement commencé à chauffer, malgré la faible vitesse des moteurs. Nous réitérerons donc l'expérience dans de meilleures conditions.


Concernant la rédaction des circuits, ils sont principalement basés sur les circuits existants en corrigeant les erreurs qui s'y trouvaient. Deux schémas ont été réalisés : un visuel avec des photos des composants et un plus technique aux normes.


  • penser à réaliser des chémas du cablage des moteurs/freins*

=>GM et GBle alimentent moteur droit / GV et GBla alimentent le moteur gauche / pV et pJ commandent respectivement les freins droit et gauche / GN devient 2 pN qui vont vers les deux freins (non polarisés ?)

• début de la programmation des capteurs qui semblent fonctionner correctement


Mesures de la vitesse de la roue ainsi que des tensions batterie/moteur/potar pour différentes valeurs de potar approximatives
Test du convertisseur 24-12

Documents Rendus

...

...