Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
Aujourd’hui — 25 juin 2024Flux principal

Utiliser AI Kit Raspberry avec les GPIO

Bonjour à tous,

L'AI Kit de la fondation Raspberry-Pi 5 est équipé d'une unité Neuronale Hailo 8L offrant 13 TOPS (Trillions d'opération par secondes).

AI Kit de la fondation Raspberry-Pi 5

Ce kit s'utilise bien entendu avec la caméra Pi pour identifier des objets des postures, etc.
François de Framboise314 à écrit un bel article à son sujet.

Utiliser le GPIO avec AI Kit

L'intérêt du kit AI utilisé avec un Raspberry-Pi et une caméra c'est de pouvoir agir... et donc de pouvoir utiliser le GPIO.

Le problème, c'est qu'une fois le kit en place, il n'y a plus moyen d'accéder aux GPIOs car il ne dépasse pas.

AI Kit sur Raspberry-Pi 5

Le kit AI (comme le HAT M2) utilise un connecteur à bas profile ce qui permet de placer le hat au dessus du refroidisseur actif.


La bonne nouvelle c'est qu'il reste un espace utilisable entre le stacking header et le HAT...


 

l'endroit idéal pour placer et souder un réplicateur de GPIO pour Raspberry-Pi sur le connecteur destiné au HAT

réplicateur de
GPIO pour
Raspberry-Pi

Ce qui permet d'avoir accès à une copie des GPIO.... prêt à utiliser.
En soudant le GPIO réplicator sur le stacking header, on ne dégrade pas le Pi.

réplicateur de GPIO pour Raspberry-Pi

Bonne journée,
Dominique

À partir d’avant-hierFlux principal

Next Level Maker : RétroFit et Contrôler une VW Polo avec Raspberry-Pi et Arduino

Bonjour à tous,

Enfermez des Makers dans un garage avec une VW Polo et voilà qu'ils décident de RetroFitter la Polo! 

Découvrez donc les aventures de Loïc, Thibault et Marc... des Makers avec des idées démesurées pour un projet hors normes. Merci à eux de partager leur expérience!

Qu'est-ce que le RetroFit ?

C'est une opération qui consiste à enlever le moteur thermique et le réservoir d'un véhicule pour remplacer le tout avec un moteur électrique et des batteries.


Grâce à Internet, il est aujourd'hui possible d'acheter des moteurs électriques de voiture, les batteries ad-hoc et même le BMS (gestion d'alimentation et contrôle moteur).

Ne vous attendez à des colis style Amazon mais plutôt à des livraisons au transpalette!

Piloter une Polo avec des Raspberry-Pi et des Arduino

Dans l'univers des Makers, il arrive régulièrement qu'on y croise des personnes aux idées qu'on pourrait parfois qualifier de farfelues... Loïc, Thibault et Marc entrent probablement dans cette catégorie de personnes qui décident de passer leur temps libre sur des projets inhabituels.

Ils se sont mis pour défi de prendre une Volkswagen Polo de 2007, d'y mettre un moteur électrique de Nissan Leaf de 2013 à l'intérieur, une batterie de Nissan nv200 et de modifier la polo pour la préparer en vue d'une conduite autonome en milieu contrôlé, rien que ça...

Un projet issu d'une réflexion sur la durabilité des véhicules

Le Retrofit de véhicule est présenté comme une des solutions possibles à la décarbonation du transport individuel. 

Le RetroFit permet de capitaliser sur l'empreinte carbone déjà existante du véhicule thermique en partant de l'hypothèse que le modifier pour rouler en électrique aura une empreinte carbone moins importante que d'acheter un tout nouveau véhicule électrique (et envoyer le véhicule existant à la casse).

Le terme "RetroFit" est également utilisé dans d'autres contextes, notamment pour l'augmentation d'engins de chantier ou agricoles avec de nouvelles technologies, comme par exemple de la conduite autonome, avec ou sans électrification de la motorisation, ou encore dans l'amélioration/conversion de machines lourdes industrielles, fixes ou mobiles.

La question que Loïc, Thibault et Marc se sont posée est la suivante: 

En pratique, quel est le coût et l'effort nécessaire pour le rétrofit d'un véhicule, que ce soit en terme de modifications mécaniques, logicielles et/ou technologiques au sens large, afin de l'amener au niveau des véhicules actuels ?". Avec une autre sous-question: "Est-ce que cela en vaut vraiment la peine ?

La question de la viabilité économique du RetroFit d'un véhicule est un sujet d'actualité. Bien que populaire dans certains pays pour la conversion de voitures personnelles qualifiées d'ancêtres, la question reste ouverte pour les véhicules plus récents sans oublier les véhicules plus lourds (camions, engins de chantiers, engins agricoles, bateaux).

Que l'on RetroFit n'importe quel véhicule, la démarche reste la même, mais l'espace et l'outillage nécessaire peuvent changer... Pour cette petite équipe de Makers, il était plus simple de travailler dans une garage sur une citadine que sur un semi-remorque.

Des choix techniques

Un des obstacles lorsque l'on change les composants d'une voiture par d'autres qui n'étaient pas prévus à l'origine, c'est de les faire communiquer ensembles...
Par chance, en 2007, une quantité importante de fonctions de la voiture communiquaient déjà sur un bus de communication toujours d'usage aujourd'hui, le bus de données CAN.

Le bus CAN est utilisé principalement dans l'automobile mais se rencontre aussi dans la plupart des machines industrielles et l'aéronautique.

Dans l'exemple qui nous occupe: placer un moteur électrique de Nissan dans une Polo  laisse entrevoir les premières incompatibilités. Les messages que la Polo échange sur son bus de données sont différents de ceux attendus par le moteur Nissan et vice versa. Il est donc nécessaire de créer un système de "traduction" entre les deux permettant à ces composants de s'échanger des informations. Tout composant ajouté à la voiture, et qui n'est pas supporté par celui-ci, doit passer par ce système de traduction.

Ce système de traduction est créé avec des Raspberry-Pi 4 et des Arduino R4 ! 

Une bonne dose de  rétro-ingénierie a été nécessaire pour identifier les messages CAN a supporter sur leur système. Les constructeurs n'étant pas très enclin à partager la documentation de ces messages avec le grand public !

Ainsi est né le projet OVCS : Open Vehicule Control System! 

Leur plateforme OVCS est composés de plusieurs éléments:

  • Le VMS : Vehicle Management System qui est le cerveau et s'occupe de la traduction et du routage des messages vers les bus de communications concernés. Tous les composants existants de la voiture y sont connectés, ainsi que les contrôleurs et l'infotainment.
  • Les contrôleurs : ils permettent d'augmenter des fonctions analogiques et/ou digitales de la voiture qui peuvent être ajoutés sur le bus de communication. Par exemple, permettre à la pédale analogique d'accélération de la Polo d'envoyer des messages sur le bus CAN. Ces contrôleurs peuvent aussi activer les relais de charge et de pré-charge du moteur.
  • L'infotainment : est un module optionnel qui permet d'ajouter un écran tactile. Cet écran fourni des informations utiles au conducteur et permettra de configurer des paramètres du véhicule. L'infotainment est également une interface de choix pour visualiser des informations de diagnostic.

 Le projet OVCS combine donc plusieurs bus de données agrégés par le VMS (Vehicule Management System), une architecture qui ressemble à ceci

Architecture du projet OCVS

Le VMS est constitué de:

  • 3x Raspberry-PI 4 (pour assurer de la redondance dans le futur)
  • 1x "hub" SPI fait maison permettant d'y connecter jusqu'à 12 bus de données CAN grâce à des MCP2518fd
  • 1x alimentation faite maison pour le tout

Les contrôleurs sont constitués de:

  • 1x Arduino R4 Minima
  • 1x module SPI CAN (mcp2515)

VMS à l'étape de prototype

Gros plan sur les Raspberry-Pi (aussi visible sur la gauche du panneau ci-dessus)


Les firmwares des Rasbpberry-Pi sont développés sur une plateforme appelée Nerves qui utilise un langage de haut niveau, basé sur Erlang et appelé Elixir.

Elixir est un langage particulièrement adapté à leur cas grâce au concept de programmation appelé "pattern-matching" (filtrage par motif) idéal pour le traitement des messages CAN envoyés en continu sur le bus.

Le code source d'OVCS est disponible sur le dépôt github d'OVCS.

Enfin pour gérer la charge et la décharge de la batterie, l'équipe s'est rabattue sur un Battery Management System Orion configurable (aussi appelé BMS).
Il est assez incroyable de pouvoir acheter un tel dispositif directement sur Internet.

Les modifications mécaniques

Trouver le moteur électrique qui pouvait rentrer correctement dans l'espace laissé disponible une fois le moteur diesel retiré n'aura certainement pas été chose facile.

Au delà de la problématique des échanges de données entre les composants de  marques différentes, il reste la question de la connexion physique. 


En effet, un moteur de Nissan n'aura pas les mêmes fixations de châssis que ceux disponibles dans la Polo pour son moteur diesel.

Le nouveau moteur n'a pas la même empreinte que l'ancien et est donc physiquement incompatible avec la boîte de vitesse de la Polo. Il faut fabriquer des pièces sur mesure pour cette combinaison exotique.

De nouvelles fixations pour le moteur électrique ont été soudés sur le châssis de la Polo. 

Moteur électrique monté sur les nouvelles fixations de la Polo

Deux pièces de connexion "sur mesure" furent fabriquées grâce à une découpeuse CNC et un tour à métaux. 

Coupleur fabriqué spécialement pour le projet

Empreinte prototype du socle côté moteur électrique

Découpe à la CNC

Essayage sur moteur

Brasure

Il est enfin possible de connecter le moteur électrique Nissan sur la boîte de vitesse de la Polo!

Il faut maintenant considérer l'ajout du BMS et des batteries qui représentent eux aussi un volume non négligeable.


D'autres modifications et fabrications ont été nécessaires pour placer les batteries. Trois bacs en aluminium ont été fabriqués afin d’accueillir les différentes cellules et des modifications de carrosserie ont été apportées à la voiture afin de placer les 3 bacs au mieux dans l'espace disponible:

  • Le réceptacle de la roue de secours a été enlevé afin de placer 2 bacs de cellules juste en dessous de la voiture
  • Le réservoir a été enlevé afin de permettre d'y insérer le troisième bac de cellules.

Ajout des bacs à l'arrière pour les batteries

Au delà de ces changements nécessaires pour la modification, les trains avant et arrières ont été complètement rénovés et la voiture a été équipée de nouveaux freins a disque aux 4 roues ainsi que de nouvelles suspensions.

Et ça roule ?

La voiture n'est pas encore sortie du garage mais les roues tournent ! 

La plateforme développée permet de tester la communication entre tous les composants et de faire tourner les roues lorsqu'on appuie sur la pédale d'accélération.

Voyez les deux vidéos suivantes disponibles sur GitHub: 

Plusieurs adaptations ont d'ailleurs été faites afin de rendre ce RetroFit le plus "naturel" possible:

  • La clé de la polo enclenche les relais permettant au moteur de tourner
  • L'indicateur de tours par minute sur le tableau de bord de la polo affiche bien les tours par minute du moteur électrique
  • L'infotainment indique le statut de plusieurs composants (frein à main, phares , ...)

La solution est pour le moment au stade de prototype fonctionnel.

L'équipe est occupée à recâbler la voiture et y connecte batteries et composants du système afin de pouvoir sortir la voiture du garage !

Etapes vers la conduite autonome

Il reste encore du chemin à parcourir avant d'en faire un véhicule d'expérimentation de conduite autonome, et en particulier:

  • Changer la colonne de direction:
    La colonne de direction d'origine ne permet pas le contrôle électronique.
  • Changer le système de freinage:
    Dans les anciennes voitures, les servo freins utilisent la dépression créée par le moteur pour activer un piston et fournir une assistance au freinage.
    Difficile à faire avec un moteur électrique...
  • Améliorer le logiciel:
    Poursuivre le développement et s'assurer suffisamment de redondance.

Plusieurs phases de tests en milieu contrôlé permettrons de tester la voiture en conduite manuelle... et peut-être, un jour, de tester la conduite autonome !

Le coût et les efforts

L'équipe à bien entendu son avis concernant les questions du coût d'un RetroFit et des efforts nécessaires pour mener un tel projet à bien!

Le plus lourd dans un rétrofit est l'élaboration du kit de conversion en lui même. Ce kit sera compatible avec un nombre très limité de composants et de modèles de voitures. Si on compare avec toutes les combinaisons possibles de modèles, de moteurs électriques et de batteries, on se rend vite compte que la mise à l'échelle de ce genre de conversion n'est pas une mince affaire. Sur le plan écologique, la conversion d'un véhicule reste la meilleure manière de capitaliser sur son empreinte carbone existante, mais économiquement, à part dans certains cas précis et à petite échelle, il est difficile de se dire que cela vaut vraiment le coup! Pour les ancêtres c'est une autre histoire, il y a souvent un aspect émotionnel qui transcende la question du prix consenti à la conversion. Pour les véhicules plus grands ou plus onéreux, cela peut avoir plus de sens. Un semi remorque avec 25 tonnes de charge utile peut se permettre de transporter 3 tonnes de batteries, sa charge utile restant encore de 22 tonnes. Au final, c'est le rapport coût/bénéfice qui dirigera le choix de RetroFitter ou pas des véhicules lourds.

Un accès grand publique aux protocoles CAN des ancêtres

Une manière de réduire le prix de la fabrication des kits serait d'avoir un accès plus facile aux spécifications des véhicules considérés en fin de vie par leurs constructeurs (+ de 10 ans par exemple). Ainsi une documentation publique ou sur demande des messages permettant de faire fonctionner les composants utilisés (les fameux messages CAN) éviterait une fastidieuse et coûteuse phase de retro-ingénierie. Malheureusement, ce n'est pas vraiment dans l'intérêt des constructeurs de fournir ces informations mais on peut se poser cette question légitime: Si on achète un véhicule ou un composant précis, ne devrait-on pas pouvoir utiliser chaque composant individuellement comme bon nous semble ?
La situation actuelle nous paraît contradictoire avec la notion de "right to repair" qui est de plus en plus poussée au niveau Européen. Nous verrons dans quelle mesure le secteur automobile sera impacté par les futures évolutions de ce côté là.

Découvrir, apprendre et partager

Au delà de l'aspect RetroFit, ce projet est avant tout une opportunité d'apprentissage énorme. On ne peut mener à bien ce projet que si l'on est une équipe pluridisciplinaire qui maîtrise à la fois la mécanique, la fabrication, le software et le hardware. Nous avons la chance d'avoir suffisamment de connaissances dans tous ces domaines pour mener un tel à bien.
Certains payent, parfois des sommes importantes, pour assister à des formations, nous avons choisi la voie de l'apprentissage par projet ! A chaque obstacle nous discutons ensemble des options, chacun apporte sa contribution, on teste et voit ce qui marche ou pas. A ce stade, nous ne savons pas encore jusqu'où va nous mener ce projet, mais cela nous donne déjà plusieurs idées sur le genre d'activités que l'on pourrait développer par la suite. On se donne encore quelques mois avant de faire le point. Tout le travail effectué sera documenté et rendu public.

Conclusion

Pour un projet démarré en 2024, je trouve que les résultats atteint en Juin 2024 sont particulièrement impressionnant.

Nous sommes loin du petit bricolage robotique du dimanche... juste quelques niveaux au dessus de nos bricolages de Makers.

En même temps, le projet est conduit dans un modeste garage avec des moyens mécaniques qui restent financièrement abordables.

Ceci étant, se lancer dans l'achat d'un moteur électrique, des batteries et d'un BMS de voiture pour réaliser un tel projet est franchement culotté.

Merci à Marc, Thibault et Loïc pour le partage de leur projet, information, vidéo et article.
Vivement la suite!

Ressources


Essai produit: GeeekPi Mini Tower Kit pour Raspberry-Pi 5

Bonjour,

Cédric F. qui se reconnaîtra nous à fait parvenir un boîtier pour Raspberry-Pi 5 afin de nous pencher dessus. 

Il s'est dit qu'entre passionnés de Raspberry-Pi nous trouverions ce boîtier digne d'intérêt. Il a bien raison, c'est une découverte intéressante.

Mini Tower Kit pour Raspberry-Pi 5 de GeeekPi

Commençons par le packaging qui est très soigné.


Le boîtier est livré en kit avec un excellent manuel de montage.
S'il n'est pas en français, il est très facile de suivre les différentes étapes.


En cours de montage, il est intéressant de noter que le kit est livré avec un réplicateur GPIO permettant de reporter le GPIO à l'extérieur du boîtier.

Délicate attention pour les amateurs de prototypage.


 Alors, une fois le pied assemblé sur le ventilateur, il faut extraire la base du boîtier (dévisser les 4 vis en dessous du boîtier).

Le ventilateur, le Raspberry-Pi et la base sont fixés ensembles grâce aux vis de fixation qui s'insère dans les 4 pieds de la base.

L'utilisation d'une base adaptée en fonction du modèle de RPi est une approche plutôt intelligente (cela permet au boîtier d'être adapté facilement).


Comme le ventilateur est branché sur le port "Fan" du Raspberry-Pi, celui-ci ne se mettra en marche que lorsque est vraiment nécessaire.

A noter qu'une fois mis dans le boîtier l'écran OLED se branche sur le GPIO.

Vue arrière


Il est possible de voir:

  • l'accès GPIO
  • les ouvertures de ventilation
  • l'ouverture arrière offrant l'accès à la carte SD, le connecteur PCIe et le bouton marche arrêt.

Vue avant

 Nous pouvons voir :

  • L'autre partie de la ventilation
  • L'accès au connecteur d'alimentation et HDMI
  • les port USB et Ethernet
  • Et l'écran OLED branché sur le GPIO du Raspberry-Pi

Ecran OLED

L'écran OLED de 128x32px permet d'afficher de nombreuses animations (voir documentation). Les exemples, écrits en Python, ne manquent pas!

Si l'affichage est très compacte, il permet aussi d'afficher quelques caractéristiques intéressantes du système en cours de fonctionnement.

La photo est malheureusement un peu floue (mais le contenu assez évocateur).  

Cliquer pour agrandir

Eclairage RGB

Le ventilateur est équipé de LEDs RGB variante, ce qui permet de profiter d'un bel effet de lumineux en cours de soirée.

Eclairage RGB

En bref

Un beau boîtier en rapport qualité prix tout a fait raisonnable.
Il est facile de se le procurer sur Amazon, les vendeurs ne manquent pas.

Points positifs

  • Design de qualité
  • Tous les ports sont accessibles (facile d'accès), y compris le GPIO
  • Exploite port ventilateur du Pi 5
  • Facile à monter
  • Ecran OLED pour statistique (ou autre affichage) et personnalisable grâce à Python

Points négatifs

Hat M.2 officiel pour Raspberry-Pi - installation et démarrage OS

Bonjour à tous,

Ca y est, la fondation Raspberry-Pi nous annonce son tout dernier produit: un Hat M.2 officiel pour Raspberry-Pi 5 .
Nous attendions ce produit depuis début 2023 car c'est le HAT M2 que nous voulions distribuer avec le Raspberry-Pi 5!

Hat M.2 officiel pour Raspberry-Pi 5 et
disque M.2 - 2242 avec Raspberry-Pi OS préinstallé

Sans surprise les performances offertes par le connecteur PCIe Gen 2 (4GBits/s) permettent de charger le système d'exploitation de façon quasi instantané.
C'est impressionnant mais aussi très fluide.

Le dernier firmware Raspberry-Pi (voir tuto de mise-à-jour) permet de détecter le disque M.2 au démarrage et démarrer l'OS depuis ce périphérique.

Par ailleurs, l'installation réseau du Firmware (lorsque la carte SD/disque M2 est non initialisé) permet de télécharger et installer le système d'exploitation depuis la connexion Ethernet filaire.

Personnellement, je préfère disque M.2 - 2242 avec Raspberry-Pi OS préinstallé car il ne reste plus qu'a terminer l'installation pour disposer d'une Pi entièrement fonctionnel.

Les points forts:

  • Un débit hallucinant autant en lecture qu'en écriture sur un disque M.2.
  • La possibilité d'utiliser un autre type module M.2 (un accélérateur A.I.) pour bénéficier du débit PCIe.
  • Passe au dessus de l'Activer Cooler officiel grâce aux entretoise de 16mm.
  • Ouverture pour le passage des Rubans DSI et CSI (caméra et écran). 
  • Plein accès au connecteur de la carte SD car le HAT est au dessus du PI

Les points faibles:

  • Ne rentre plus dans le boîtier officiel si on utilise l'Active Cooler!
  • Mise-à-jour du Firmware Raspberry-Pi impératif (voir tuto de mise-à-jour).

Installation du HAT M2

Avant de procéder à l'installation du Hat M.2, il faut absolument mettre le firmware du Raspberry-Pi à jour.

Cette mise-à-jour permettra de démarrer le système d'exploitation directement depuis un périphérique PCIe (donc di disque M.2).

Un fois fait, nous pouvons commencer le montage du HAT M.2 .

Etape 1:

Insérer le Header sur le connecteur du HAT.
Ne surtout pas l'enfoncer à fond mais seulement venir à affleurement de l'autre côté du connecteur.

Si cela n'est pas encore fait, placer le ruban PCIe sur le  Hat. Manipuler ce connecteur avec soin.

Glissez y le ruban avec les connexions électriques vers le haut. Le ruban doit être bien enfoncé dans le connecteur avec les contacts bien parallèle au connecteur.

Etape 2:

Visser les entretoises et présenter/aligner le Hat sur le GPIO.
Ne pas encore enfoncer le Hat sur le connecteur.

 

C'est le moment idéal pour fixer le ruban sur connecteur FPC du Raspberry-Pi.


Comme le Hat n'est pas encore enfoncé sur le GPIO, nous avons toute la latitude pour manipuler repositionner le ruban. Vu qu'il n'est pas très flexible, cela facilitera grandement le montage.

Etape 3:

Maintenant nous pouvons finir de mettre le Hat_M2 en place sur le GPIO.

Utilisez aussi les vis incluses avec le HAT pour fixer celui-ci sur les entretoises (ce que je n'ai pas encore fait sur l'image ci-dessus).

Etape 4:

Nous allons placer le disque M.2 sur le HAT. Il s'agit d'un disque au format 2242 de 128 Go avec l'OS pré-installer.

128 Go de stockage est plus que confortable pour un système Linux.

Disque M.2 de 128 Go (aussi disponible en 256 Go)

Le disque est présenté dans le connecteur avec un angle de 30 à 45°.
Il n'est pas nécessaire de forcer, le disque doit rentrer sans effort particulier.

Ensuite, utiliser la vis de fixation que l'on positionne correctement dans l'arc en demi-lune.
Il ne reste plus qu'a viser la vis pour abaisser la carte M.2 (ce qui assure le contact électrique) et maintient le disque en place.


Voilà,

Il ne reste plus qu'à mettre sous tension et terminer l'installation de Raspberry-Pi OS.

Où acheter

A tout bientôt,
Dominique


❌
❌