Module ACCEL3 accéléromètre 3 axes pour microcontrôleurs
Ce petit module intègre un accéléromètre 3 axes ADXL330 d'Analog Devices™ (gamme ±3 g) associé à un amplificateur opérationnel délivrant des tensions analogiques proportionnelles aux accélérations (ou inclinaisons) subies par le module.
Module accéléromètre 3 axes de chez MikroE basé sur un ADXL330 (Analog Devices™) associé à un amplificateur opérationnel afin de délivrer des tensions analogiques proportionnelles aux accélérations pour chacun des axes.
Le module s'alimente sous +5 V.
La présence de l'amplificateur opérationnel rail-to-rail MCP6284 assure une pré-amplification des signaux de mesures afin qu'ils puissent être directement exploitables par le biais des entrées de conversion "analogique/numériques" de votre microcontrôleur (non livré).
Très simple à mettre en œuvre, ce dernier est tout indiqué pour une utilisation dans le domaine de la robotique et des drones à l'aide des platines Arduino® ou compatible, mbed, Teensy, Photon, Chipkit, Flip & Click, Espuino, Pyboard, Feather, Cubloc, Picbasic, Omega2 Plus, Raspberry Pi, Arietta, Sparky, Banana Pi, PCduino, Cubie Board, BeagleBone, etc...
Vous trouverez en téléchargement des exemples pour PIC, AVR et dsPIC avec les compilateurs C, BASIC et PASCAL de chez Mikroe.
Voici une exemple d'application avec un module CUBLOC
Affichage des données d'un accéléromètre sur écran graphique
Présentation:
Cette application montre comment afficher les données en provenance d'un accéléromètre 3 axes à sorties analogiques sur un mini écran graphique couleur "UL144-G2-SGC".
Matériel nécessaire:
- 1 module CUBLOC "CB210" (réf.: CB210) + 1 câble USB standard (réf.: CW090A)
- 1 module accéléromètre 3 axes réf.: ACCEL3)
- 1 afficheur LCD couleur miniature (réf.: UL-144G2SGC)
Câblage de l'application:
Description du programme:
L'évolution de la tension des axes "x", "y" et "z" est représentée par l'intermédiaire de lignes à l'intérieur de différents cercles.
En absence de mouvement, les lignes sont à l'horizontal.
Lors du déplacement (ou de l'inclinaison) de l'accéléromètre, les lignes vont pencher à doite ou à gauche
(par rapport au centre du cercle).
Les 3 sorties analogiques du module accéléromètre sont racordées à 3 entrées de conversion "analogique/numérique" du "CB210". Le programme va (pour chacun des axes) vérifier si la tension en sortie du capteur a changé.
Si tel est le cas, la ligne est effacée puis via une
formule mathématique, sa prochaine position est
calculée, puis "tracée".
N'hésitez pas à visualiser la vidéo de cette application.
Code source:
'###############################################################
' Gestion d'un accelerometre ref: "ACCEL3"' @Lextronic 2012 - 28/06/2012 - version Cubloc Studio 3.3.4
'
' Programme donne a titre d'exemple. A utiliser dans le cadre d'une initiation aux modules CUBLOC
' (l utilisation commerciale de ce programme est interdite). Lextronic decline toute responsabilite en
' cas de prejudice resultant de l'utilisation de cette note d'application.
'###############################################################
Const Const Device = CB210
Dim x1 As Integer ' Coordonnees ligne axe x
Dim y1 As Integer
Dim x2 As Integer ' Coordonnees ligne axe y
Dim y2 As Integer
Dim x3 As Integer ' Coordonnees ligne axe z
Dim y3 As Integer
Dim VX As Integer ' Tension axe x
Dim VY As Integer ' Tension axe y
Dim VZ As Integer ' Tension axe z
Delay 500
Opencom 1,230400,3,10,70
Delay 500
Putstr 1,"U" ' Envoi caractere de synchronisation
Delay 500
Putstr 1,"E" ' Efface l'ecran
Delay 100
Putstr 1,"s",&h00,&h08,&h00,&h07,&hE0,"Axe x",&h00 ' Affiche le mot Axe x
Delay 5
Putstr 1,"C",30,30,30,&h07,&hE0 ' Affichage cercle axe x
Delay 220
Putstr 1,"s",&h10,&h08,&h00,&h03,&h1F0,"Axe y",&h00 ' Affiche le mot Axe y
Delay 5
Putstr 1,"C",97,30,30,&h00,&h1F ' Affichage cercle axe y
Delay 20
Putstr 1,"s",&h01,&h0F,&h00,&h0FF,&hE0,"Axe z",&h00 ' Affiche le mot Axe z
Delay 5
Putstr 1,"C",64,97,30,&hFF,&hE0 ' Affichage cercle axe z
Delay 20
VX = Tadin (0) ' Recupere tension capteur axe x
VY = Tadin (1) ' Recupere tension capteur axe y
VZ = Tadin (2) ' Recupere tension capteur axe z
' ############# Affichage axe x #############
Do
If VX <> Tadin (0) Then
Putstr 1,"L",x1,y1,59-x1,62-y1,&h07,&hE0 ' Efface trace de la ligne
Delay 1
VX = Tadin (0) ' Recupere tension capteur axe x
x1 = 30 - Cos((VX * 3.141593) / 180.0) * 28
y1 = 30 - Sin((VX * 3.141593) / 180.0) * 28
Putstr 1,"L",x1,y1,59-x1,62-y1,&h00,&h00 ' Affiche trace de la ligne
Delay 1
Endif
' ############# Affichage axe y #####
If VY <> Tadin (1) Then
Putstr 1,"L",x2,y2,194-x2,62-y2,&h00,&h1F ' Efface trace de la ligne
Delay 1
VY = Tadin (1) ' Recupere tension capteur axe y
x2 = 97 - Cos((VY * 3.141593) / 180.0) * 28
y2 = 30 - Sin((VY * 3.141593) / 180.0) * 28
Putstr 1,"L",x2,y2,194-x2,62-y2,&h00,&h00 ' Affiche trace de la ligne
Delay 1
Endif
' ############# Affichage axe z #####
If VZ <> Tadin (2) Then
Putstr 1,"L",x3,y3,130-x3,195-y3,&h0FF,&hE0 ' Efface trace de la ligne
Delay 1
VZ = Tadin (2) ' Recupere tension capteur axe z
x3 = 64 - Cos(((VZ-84) * 3.141593) / 180.0) * 28
y3 = 97 - Sin(((VZ-84) * 3.141593) / 180.0) * 28
Putstr 1,"L",x3,y3,130-x3,195-y3,&h00,&h00 ' Affiche trace de la ligne
Delay 1
Endif
Loop
Voir toutes les notes d'applications pour le module "CB210"