Projet Réseau de capteurs

Architecture du Système

Carte Nucleo F103

Carte Nucleo F103

Périphériques

Environnement de Développement Eclipse

IDE Eclipse

Le Bus CAN

Le bus CAN est un une laison série :


Le Bus CAN

Format d’une Trame de Données (Data Frame)

Le Bus CAN

Format d’une Trame de Données (Data Frame)

Capture d’une Trame avec Analyseur Logique SALEAE :


Le Bus CAN

Arbitrage

Le Bus CAN

REMARQUE : Format Standard/Etendu

Le Bus CAN

Filtrage

Le Bus CAN

Modèle ISO du Bus CAN

La norme CAN spécifie les couches Physique et Liaison de données uniquement.
D’autres protocoles (devicenet, canopen, ..) spécifient les couches hautes.

Le Bus CAN

La Couche Physique

Le bit Stuffing

Le Bus CAN

La Couche Physique

Une liaison différentielle

Le Bus CAN

Les autres Trames

Trame de requête (Request Frame)

Le Bus CAN

Les autres Trames

Trame d’erreur (Error Frame)

Capteur de Pression MPL115A1

Rappels : le Bus SPI

Capteur de Pression MPL115A1

Mesure de la pression

Anemomètre SOMFY

Capteur de Luminosité / Distance VL6180x

Rappels Bus I2C

Capteur Centrale Inertielle 9 axes Invensense MPU9250

Capteur Centrale Inertielle 9 axes Invensense MPU9250

Traitement des Données

Angles d’Euler

Problème du “Gimbal Lock” (blocage de cardan)

Capteur Centrale Inertielle 9 axes Invensense MPU9250

Traitement des Données

Quaternions

\( Q=\begin{bmatrix} q _{0},\ q _{1},\ q _{2},\ q _{3}\ \end{bmatrix} \)

\( Q=\begin{bmatrix} cos(\frac{\theta} {2}),\ a.sin(\frac{\theta} {2}),\ b.sin(\frac{\theta} {2}),\ c.sin(\frac{\theta} {2})\ \end{bmatrix} \)

\( Q _{k+1}=Q _{k}+ \frac{1}{2}.T _{e}.\Omega _{k}.Q _{k} \)

Capteur Centrale Inertielle 9 axes Invensense MPU9250

Traitement des Données

Algorithme de Madgwick

code madgwick.c

Déroulement du Projet

Durée : 12UC
Salle : E021

Cahier des Charges

Liste des Objectifs

IHM

Tutoriel Qt Creator

Bus Can et Qt –> cf Qt Bus Can

Affichage 3D des données du capteur MPU9250 –> cf Qt OpenGL