Pages: [1]   Go Down
Author Topic: Oscillo et arduino  (Read 1423 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjours !
Je suis dans un projet ou j'utilise une carte arduino et  un module HMC 5883L (compas électronique)
Je cherche à observer son signal à l'oscillo mais je ne vois pas trop les branchements que je dois faire
et quel connecteur je devrais utiliser ? de simple pince croco sur les pins SDA SCL?
Je suis pas un adepte de l'oscillo  veuillez être compréhensif smiley-grin


Je voudrais observer l'influence d'un metal sur le composant (la perturbation du signal du fait de la perturbation du nord magnétique !?)

Une derniere question !! => a partir de ce module je suis capable de déterminer des coordonnées x,y,z mais je ne comprend pas comment cela est possible? quel repère est pris en compte?
Enfaite j'ai du mal a comprendre le fonctionnement de ce module smiley-confuse smiley-confuse ?

merci de votre patience  smiley
et pour votre aide
Logged

Ile-de-France (92 sud), France
Offline Offline
Edison Member
*
Karma: 24
Posts: 2055
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour Matsuru

C'est un composant I2C. Donc tu dois utiliser la bibliothèque Wire.h et les broches dédiées SDA (An4) et SCL (An5).
Le bus I2C requière aussi d'avoir sur chacun de ces signaux une résistance de pull-up d'environ 4K7 entre le signal et le VCC.

Tu peux utiliser un oscillo pour regarder les échange de données mais ces échanges sont à la demande de l'Arduino : le composant n'envoie rien de lui-même sur le buss.
Tu dois écrire le code (en utilisant Wire) pour le configurer et l'interroger.

Comme il s'agit d'échanges transitoires, et non pas d'un flux régulier, l'oscillo n'est pas forcément le plus adapté où alors un oscillo numérique à mémoire.
Avec SCL sur la voie 1 (déclencher sur un front bas de SCL) et SDA sur la voie 2.
Utiliser impérativement le mode "choppé" et pas le mode "alterné".

Le mieux étant un analyseur logique.

Mais pourquoi regarder les signaux avec un oscillo ?

Et pour ta dernière question, non un compas ne va pas te donner ta position. Ce n'est pas un GPS. Il va juste te donner les directions du champ magnétique terrestre (ou du moins du plus fort champ magnétique là où tu te trouve. Dans un labo d'imagerie médicale, il va plutot te donner la direction de l'IRM  smiley-grin)
Logged

Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

France
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3566
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Une derniere question !! => a partir de ce module je suis capable de déterminer des coordonnées x,y,z mais je ne comprend pas comment cela est possible?
Le composant contient 3 capteurs magnétiques, orientés selon 3 axes différents. Donc le HMC 5883L te retourne le champs magnétique mesuré par chacun des capteurs.

Quote
quel repère est pris en compte?
Le repère est relatif au boîtier (c'est à dire à la position des capteurs à l'intérieur du boitier). Ce repère est indiqué dans la datasheet du composant page 4 (http://www51.honeywell.com/aero/common/documents/myaerospacecatalog-documents/Defense_Brochures-documents/HMC5883L_3-Axis_Digital_Compass_IC.pdf)

En fait si tu veux voir à l'oscilloscope les variations du champs magnétique, le mieux serait de lire le composant en I²C comme te le suggère Barbudor et d'envoyer les 3 valeurs sur 3 sorties PWM, d'appliquer un léger filtrage (une résistance de qq kOhms et un condensateur d'un µF) ainsi l'oscilloscope verra des tensions proportionnelles au champs magnétique.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Merci de vos réponses! Jr comprend mieux

Quote
Mais pourquoi regarder les signaux avec un oscillo ?
Je ne vois pas d autres méthodes pour observer ces signaux ? Et vu que je peux en avoir un a disposition
autant s'en servir !! smiley

Pour ce qui est des branchements je viens de me rendre compte que j'avais mal branché les résistances en lisant trop vite (j'ai pris 2 résistances de 10k)mais je l'ai ai branché entre le SDA et A4 et SCL et A5 (tres malin x_x)
sur ce site=>> http://bildr.org/2012/02/hmc5883l_arduino/ il n'utilise pas de résistances d'ailleurs


Ps : au niveau du code j'arrive a afficher les coordonnées x y z la coordonnées z ne m’intéresse pas je l'oublie et j'ai traduit les
coordonnées x y en degré pour le suivit d'un cap !

« Last Edit: April 01, 2012, 11:23:45 am by matsuru75 » Logged

France
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3566
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
sur ce site=>> http://bildr.org/2012/02/hmc5883l_arduino/ il n'utilise pas de résistances d'ailleurs
Dans ce cas il faut activer les pullups internes sur les entrées utilisées. Mais ces pullups sont un peu élevés et, à mon sens, cela risque d'entrainer des mauvaises transmissions sur le bus I²C.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok Ok donc je vais suivre vos conseil !
Pour ce qui est du condensateur ? il est optionnel non?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quel est l’intérêt de ce montage de résistance "pull up" ?
 Sans cela l' I2C n'est pas censé fonctionner!?
Logged

France
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3566
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Pour ce qui est du condensateur ? il est optionnel non?
Je crains que nous nous soyons mal compris. Le condensateurs c'est pour mettre sur des sorties PWM qui permettraient de visualiser les composantes du champs magnétiques en analogique. Dans ce cas ils ne sont pas optionnels car sinon tu vas retrouver les créneaux du signal PWM sur ton oscilloscope.

Quote
Quel est l’intérêt de ce montage de résistance "pull up" ?
 Sans cela l' I2C n'est pas censé fonctionner!?
Sur le bus I²C, les sorties sont en collecteur ouvert. Il doit donc y avoir en un point du bus des résistances de tirage au plus. Un tour d'horizon de l'I²C http://www.aurel32.net/elec/i2c.php
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

La je suis un peu perdu sur le montage a effectuer pour voir les composantes du champs magnétique sur l'oscillo je l'avoue!

SI tu as encore du temps a me consacrer j'ai une autre question !?

Sans condensateur en approchant un métal (pour modifier le nord magnétique) ne verrions nous pas un modification de l'amplitude des créneaux du signal PWM?

J'essaie de minimiser les difficultés smiley-sad

Mes connaissances ne dépassent pas les circuits RLC AO et filtres x_x

Merci d avance
Logged

Bretagne
Offline Offline
Full Member
***
Karma: 2
Posts: 196
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonsoir,

les 2 résistances de tirages sont intégrées à la platine du module
  ( http://dlnmh9ip6v2uc.cloudfront.net/datasheets/BreakoutBoards/HMC5883L_Breakout-v11.pdf )
donc inutile d'en rajouter.

Si tu peux lire les données du cap, alors tu peux vérifier facilement l'influence des métaux, des sources électromagnétiques, .... la distance à respecter...
J'utilise un cousin, le HMC6352. Pas de problème avec des moteurs CC à 5 cm du capteur.
Logged

...ils embarquèrent la logique, coupèrent les cordons, alors, libérés de leurs chaînes, une immensité s'ouvrait devant eux...

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oui c'est pas faux ^^ !
Mais j'aurai voulu observer plus en détail le fonctionnement du capteur notamment par exemple avec un oscillo !
Logged

Pages: [1]   Go Up
Jump to: