UGV Platform (Prototype XL210423)

[Article en cours d'écriture]

Cette page présente le statut du projet "UGV Platform" en date du 23/04/21 et le 2ème prototype (premier prototype XL).

Ce premier prototype XL a été conçu autour d'un premier cas d'usage de tondeuse à gazon robotisée mais l'objectif de ce projet reste le même : Développer une plateforme (hardware/software) qui peut être déclinée pour différents usages.

Prototype XL210423
Vue de face

Capacités

Sur cette version, le véhicule n'embarque aucun capteur, ni aucune intelligence, il est piloté par l'intermédiaire d'une station de contrôle connectée en WiFi au véhicule. (Ce dernier se comporte comme un point d'accès WiFi)

Cette version avait pour unique but de valider le châssis et la propulsion.

Le système embarqué du véhicule expose les services suivants :

  • une WebAPI permettant :
    • le contrôle des déplacements :
      • Aller en avant / en arrière
      • Tourner à gauche / à droite
      • Tourner sur lui-même sens horaire / antihoraire
    • le contrôle Marche/Arrêt de la tondeuse

La station de contrôle permet de contrôler manuellement les déplacements du véhicule en utilisant une manette/joystick USB.

Demo

Dans la vidéo suivante, vous pourrez voir le contrôle des déplacements à l'aide d'un joystick USB.

Dans la vidéo suivante, vous pourrez voir le contrôle des déplacements à l'aide d'un Smartphone.

Evolutions

L'objectif est maintenant de passer d'un véhicule télécommandé en WiFi à un robot capable de "percevoir" son environnement pour s'y déplacer.

Il est donc nécessaire de lui ajouter quelques "sens". Le premier prototype "modèle réduit" 200407 disposant déjà, grâce à plusieurs capteurs embarqués, de la majorité de ces sens, il paraissait donc naturel de m'en inspirer pour cette nouvelle version XL.

  • LIDAR
    Un faisceau laser qui balaie autour de l'appareil et permet de mesurer les distances par rapport aux objets, obstacles ou murs qui se trouvent autour.
    Positionné au sommet du châssis, il sert à la perception moyenne/longue distance.
    Sur le prototype modèle réduit, il permettait de détecter les obstacles et, couplé à d'autres capteurs, d'adresser la problématique de "Cartographie et localisation simultanées" (en anglais SLAM pour "Simultaneous localization and mapping")
  • Capteurs ultra-son
    Ces capteurs fonctionnent selon le même principe que l'écholocalisation utilisée par les chauves-souris.
    Répartis sur la partie basse du châssis dans différentes directions, ils servent à la détection de proximité (détecter les objets proches, les marches, ...)
  • Centrale inertielle
    Un composant qui joue le rôle d'"oreille interne". Il contient différents capteurs permettant de connaître l'orientation dans l'espace, l'accélération, le champs magnétique terrestre.
    Placée au centre du plateau électronique, elle permet d'obtenir l'orientation et de mesurer le déplacement dans les 3 dimensions.
  • Récepteur GNSS (positionnement par satellite)
    Nous en utilisons tous au quotidien sous l'appellation générique "GPS". Ils nous permettent de connaitre notre position n'importe où à la surface de la terre, en mer ou dans l'air. Ils peuvent également fournir des informations sur la vitesse de déplacement.
    Dans le cas du modèle réduit, cette technologie n'avait pas particulièrement d'intérêt et était plus un gadget. La localisation par satellite est difficilement exploitable pour une utilisation Indoor et du fait du manque de précision, elle était inadaptée en regard de la taille du véhicule et des distances sur lesquelles il évoluait.
    Dans le cas d'un véhicule plus grand, évoluant à l'extérieur et sur des distances plus importantes, le localisation par satellite a beaucoup plus d'intérêt.

Informations techniques

Hardware

Structure / Propulsion

Contrairement au prototype précédent conçût à partir d'un châssis SmartCar DIY, il a fallu tout concevoir et fabriquer.

C'est la partie qui m'a pris le plus du temps. J'ai dû étudier les différentes possibilités de motorisation/transmission, concevoir, fabriquer et assembler tout le châssis à partir d'acier et de bois (découpe, soudage, perçage, ...).

  • Propulsion assurée par 2 moteurs M1016Z2 (issus de kits DIY pour transformer un vélo traditionnel en vélo à assistance électrique)
  • Roues de charriot de jardin
  • Transmission par chaîne à l'aide de coupleurs roue/roue dentée "fait-maison"

Contrôle

  • Raspberry Pi 3 Model B
  • PCA9685 16-channel 12-bit PWM Servo driver
  • 2 x BTS7960 High Power Motor Driver

Software

Système embarqué Station de contrôle
  • ASP .Net Core
  • ZeroMQ
  • C/C++
  • .Net Core
  • ZeroMQ
  • WPF
  • DirectX

Pour suivre le projet

En attendant de prochains articles, vous pouvez suivre l'évolution du projet au jour le jour à travers la page Facebook "UGV Platform".