Le forum français des radios FrSKY

[TUTO] Capteur de courant OpenXsensor pour $5

Voir le sujet précédent Voir le sujet suivant Aller en bas

[TUTO] Capteur de courant OpenXsensor pour $5

Message par Patrick74 le Ven 2 Mai 2014 - 18:11

Hello,

voilà un tuto pour confectionner un capteur de courant avec le soft OpenXsensor sur la base d'un circuit Arduino. La conception est compacte et légère, et pour même pas $5.

Voici les éléments nécessaires:
[Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir ce lien] ATmega328 5V 16MHz. Evitez de souder les pins sur le circuit, un simple contact sera suffisant pour le programmer.
[Vous devez être inscrit et connecté pour voir ce lien] Existe en +/-5A, +20, +30, et plus mais à faire soit même.
[Vous devez être inscrit et connecté pour voir ce lien]Préférez une version stable au lieu d'une Beta.
[Vous devez être inscrit et connecté pour voir ce lien] ici la version oXs compatible avec le Smart Port et récepteurs D. Télécharger tous les fichiers dans un dossier nommé "openxsensor".

A la base le soft a été ***çu pour un variomètre/Altimètre, il comporte aujourd'hui plusieurs autres sources de mesures, convertible en protocole HUB (récepteurs D) ou Smart Port. Il ouvre la voie à de multiples possibilités. Mais je me prononcerai ici que pour la partie qui m'intéressait, à savoir la mesure du courant via "Data In" du vario HighPrecision sur mon récepteur D4R-II.

Il existe plusieurs sortent de capteurs de courant. Mon intérêt se porte sur les faibles sources de courant, compte tenue que les 40A et 100A sont déjà existants en version hub ou s.port par la marque FrSky.

Concrètement au niveau hardware c'est assez facile. L'arduino ainsi que le capteur doivent être alimentés par une source de tension, habituellement ~5v provenant du contrôleur ESC ou d'un pack d'accus entre GND et VCC.


Le pin OUT est la lecture de la tension induite par le circuit. Le connecteur à gauche est la source de mesure.

Le câblage:
Connexion de l'Arduino au capteur:
Code:
   Arduino GND   --------------------- Current Sensor Module GND
   Arduino VCC   --------------------- Current Sensor Module VCC
   Arduino A2    --------------------- Current Sensor Module OUT

Connexion de l'Arduino :
Code:
=== Alimenter l'Arduino : ===
     Arduino GND   --------------------- Receiver GND (Servo Plug)
     Arduino RAW(VIN)  ----------------- Receiver +5V (Servo Plug)

=== Sortie des données vers le récepteur: ===
     Arduino Pin 4(D4) ----------------- Receiver RX Pin (If there is a RS232 Port on the receiver)
  or
     Arduino Pin 3(D3) ----------------- Receiver A1 or A2 (If there is NO RS232 Port on the receiver)

=== connecting the current sensor module to the receiver ===
     Arduino Pin A2   ------------------ Current Sensor OUT


C'est parti pour le paramétrage du code:
1) Installez et/ou executez le compileur Arduino.
2) Ouvrez le fichier openxsensor.ino
3) Allez à l'onglet oxs_config.h pour définir les variables

Il y a 7 catégories d'options. Je ne vais citer que celles qui sont susceptibles d'être paramétrées pour mon cas.

Le point 1 - Définit le protocole de sortie à utiliser HUB(série D) ou Smart Port (série X)
Code:
#define FRSKY_SPORT       //si le protocole est en mode s.port
//#define FRSKY_SPORT     //pour le protocole hub pour les récepteurs D
Gardez qu'une seule des deux lignes on est d'accord?

Point 2.3 - Activez la mesure du capteur de courant en supprimant les //.
Code:
#define PIN_CurrentSensor   2

Point 3.5 - On définit ici ce que nous voulons faire passer comme info en sortie et dans quel format. Je ne rentre pas dans les détails, mais pour ma part j'ai désactivé certains champs et laissé tout le reste par défaut.
Code:
#define SETUP_DATA_TO_SEND    \
                        DEFAULTFIELD , CURRENTMA , 10 , 1 , 0, \
                        FUEL_FIRST_ID , MILLIAH, -100 , 390 , 100, \
                        CELLS_FIRST_ID , CELLS_1_2 , 1, 1 , 0
//                        DEFAULTFIELD , ALTIMETER , 1 , 1 , 0 ,\
//                        DEFAULTFIELD , VERTICAL_SPEED , 1 , 1 ,0 , \

Rendez-vous au point 5.1 - Le courant va être mesuré en 1024 step avec une référence de tension interne (de 1.1v) ou provenant du BEC de votre ESC (généralement 5v). Dans le cas où vous utilisez des accus NiMh, il est conseillez de prendre la référence interne en supprimant les // ci-dessous. Car l'accu n'aura pas le même voltage du début à la fin.
Code:
//#define USE_INTERNAL_REFERENCE     // pour utiliser le VCC externe
#define USE_INTERNAL_REFERENCE       // pour utiliser la référence interne de 1.1v

Point 5.2 - C'est là que l'on va calibrer la lecture du capteur à la valeur voulue affichée. Pour un capteur +/- comme le 5A, indiquez 512 pour offsetCurrentSteps. Ce qui représente 1024/2 car VCC/2=0A pour mon capteur. C'est l'offset à indiquer pour obtenir 0A. Pour un capteur unidirectionnel le calcul est 1024*0.6/VCC. Si VCC=5v alors -> 1024*0.6/5v = 123

Pour mAmpPerStep il faut déterminer la tension que donne le capteur selon l'intensité du courant. Mesurez la tension OUT à 0 ampère, puis une autre par exemple à 1A ou 2A. Pour mon cas j'ai trouvé 190mv/A. Mesurez aussi votre VCC, 5v chez moi. Ensuite, appliquez ces calculs:
- 1023 steps -> VCC = 5 volt
- 1 step -> VCC / 1023 = 4.88758 mV
- 1000milliAmp -> 190 mv <-> 1023 / 5 * 0.190 = 38.874 steps
>> 1 step = 1000 / 38.874 = 25.72 mAmpPerStep

Voilà à ce stade on  peut vérifier la compilation en cliquant sur le Vu en haut à gauche et sauvegarder les fichiers. Ha j'oubliais de vous dire. Il faut paramétrer le compileur Arduino dans outils -> Type de carte, port, et programmateur type ex:USBasp

Il reste plus qu'à cliquer sur la flèche droite pour téléverser le code dans l'ATmega328 et tester votre montage.

Voilà, j'espère ne pas avoir trop dis de conneries ou fait d'erreurs. Au cas où voici les liens d'origines qui m'ont permis de faire le mien.
[Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir ce lien]

A+
Patrick

Patrick74

Messages : 476
Date d'inscription : 21/11/2013
Localisation : Boudry/CH

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par .AleX. le Ven 2 Mai 2014 - 19:16

Super, j'ai très brièvement survolé OpenXsensor car je prévois de faire de l’acquisition données pour un projet avec :
tension accu
régime moteur
niveau carburant
et en option tension accu 2

mais j'étais un peu perdu dans le code... on peut pas dire que ce soit super documenté Very Happy

Du coup, grâce à ton tuto, j'ai les grandes lignes de "là ou il faut que je cherche" Very Happy

_________________
Tout vole, ce n'est qu'une question de vitesse initiale...
avatar
.AleX.
Modérateur

Messages : 1199
Date d'inscription : 24/11/2013
Localisation : Clermont-Fd(63) ou parfois Annecy(74)

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Totof1965 le Ven 9 Mai 2014 - 8:19

je passe ce tuto en post it

_________________
Premier batch de Taranis, je suis conquis
Soyez sympa présentez vous, c'est plus cool : [Vous devez être inscrit et connecté pour voir ce lien]
Et si vous le souhaitez localisez vous sur la carte du forum : [Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir ce lien]
avatar
Totof1965
Admin

Messages : 930
Date d'inscription : 23/07/2013
Age : 52
Localisation : Blain

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Patrick74 le Ven 9 Mai 2014 - 8:49

Il faudrait presque faire un tuto général à OpenXsensor et le mettre lui en "Post It".

C'est vraiment de la balle ce OpenXsensor. On peut faire pas mal de chose. Je m’apprête à inclure à mon système la mesure de tension de l'accu, cellule par cellule comme pour les FLVS...  le tout pour 1 euro de plus. Toujours en Smart Port ou anciennement HUB pour les séries D.

J'ajouterai aussi que les capteurs de courant 20 ou 30A tiennent une intensité max de 100A. 20 ou 30 étant la gamme de mesure optimisée. Pour ces cas, on trouve des capteurs avec les bornes à souder. Et ainsi enlever les connecteurs pour un gain de poids et de place.

Patrick74

Messages : 476
Date d'inscription : 21/11/2013
Localisation : Boudry/CH

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Benoit35 le Mer 10 Sep 2014 - 20:23

Bonjour,
merci pour ce tuto. J'ai commandé les arduino mini pro, des capteurs de courant et un variometre... y a pu qu'a.
En attendant j'essaye d'utiliser un arduino mini pro pour utiliser la télémetrie d'une carte APM2.X (arducopter). voir [Vous devez être inscrit et connecté pour voir ce lien]
As tu déjà fait cette manip ?
J'ai flashé l'arduino, mais je n'obtiens rien sur mon écran de télémetrie sur la taranis. Avec le vario frsky, l'altitude est bien affiché (enfin quelque chose est affiché, je suppose que seul une variation d'altitude est exploitable)
Merci d'avance si tu as des info sur cette manip

Benoit35

Messages : 32
Date d'inscription : 04/07/2014

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par djsyl le Dim 11 Jan 2015 - 7:37

Benoit35 a écrit:Bonjour,
merci pour ce tuto. J'ai commandé les arduino mini pro, des capteurs de courant et un variometre... y a pu qu'a.
En attendant j'essaye d'utiliser un arduino mini pro pour utiliser la télémetrie d'une carte APM2.X (arducopter). voir [Vous devez être inscrit et connecté pour voir ce lien]
As tu déjà fait cette manip ?
J'ai flashé l'arduino, mais je n'obtiens rien sur mon écran de télémetrie sur la taranis. Avec le vario frsky, l'altitude est bien affiché (enfin quelque chose est affiché, je suppose que seul une variation d'altitude est exploitable)
Merci d'avance si tu as des info sur cette manip
 

De mon coté j'ai réaliser celui-ci :

[Vous devez être inscrit et connecté pour voir ce lien]

Il fonctionne avec des récepteurs de type X  en sport et récupère les infos mavlink 

ça fonctionne au 1er coup et le câblage est des plus simple ( 3 fils en direct sur le sport , 3 fils sur la liaison série AMP )
avatar
djsyl

Messages : 1322
Date d'inscription : 11/12/2014
Age : 58
Localisation : Yerres (91330)

http://club-aquilon.fr

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par francky1606 le Mer 28 Jan 2015 - 17:26

Salut à tous.
J'ai un DJI f550, d'origine avec 6 contrôleurs 30A.
Ma question est la suivante :
puis je utiliser le capteur 30A en sortie de ma lipo 4S afin d'envoyer le signal via arduino dans mon S-PORT?
J'ai peur d'essayer et si le capteur brule, le drone viendrait à tomber...
Merci d'avance pour votre réponses !!!

francky1606

Messages : 1
Date d'inscription : 07/01/2015
Localisation : nimes

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par djsyl le Mer 28 Jan 2015 - 22:19

Ca risque d'être un peut limite !!!

Frsky a sortit un capteur a induction 150A la aucun risque.

[Vous devez être inscrit et connecté pour voir ce lien]



avatar
djsyl

Messages : 1322
Date d'inscription : 11/12/2014
Age : 58
Localisation : Yerres (91330)

http://club-aquilon.fr

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Belov le Mer 28 Jan 2015 - 23:31

djsyl a écrit:Frsky a sortit un capteur a induction 150A la aucun risque
C'est un capteur à effet Hall. Les capteurs à induction ne fonctionnent qu'en alternatif.
(tu as réveillé le prof qui sommeille en moi )
avatar
Belov

Messages : 415
Date d'inscription : 01/01/2014
Age : 48
Localisation : Rennes

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par djsyl le Jeu 29 Jan 2015 - 6:10

c'est comme un transfo a une spire ou un électro aimant on fait passer du courant continu qui va produire un champ qui va être mesurer ...
avatar
djsyl

Messages : 1322
Date d'inscription : 11/12/2014
Age : 58
Localisation : Yerres (91330)

http://club-aquilon.fr

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par .AleX. le Jeu 29 Jan 2015 - 7:10

Que ce soit un transfo en courant ou un effet hall, ça reste de l'induction :p
Mais pour un courant continu, seul le capteur à effet Hall fonctionne.

Un capteur a effet Hall 30A ne va pas "cramer" si il voit passer un champ électrique plus important, il va saturer, et ne pourra pas faire de mesure fiable (il faudrait un énorme dépassement pour l’endommager)

_________________
Tout vole, ce n'est qu'une question de vitesse initiale...
avatar
.AleX.
Modérateur

Messages : 1199
Date d'inscription : 24/11/2013
Localisation : Clermont-Fd(63) ou parfois Annecy(74)

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Sacre100 le Jeu 29 Jan 2015 - 12:21

Belov a écrit:
djsyl a écrit:Frsky a sortit un capteur a induction 150A la aucun risque
C'est un capteur à effet Hall. Les capteurs à induction ne fonctionnent qu'en alternatif.
(tu as réveillé le prof qui sommeille en moi )

Effet de Hall ou effet Néel ?

(tu as réveillé l'élève qui sommeille en moi )
avatar
Sacre100

Messages : 1889
Date d'inscription : 30/11/2013
Age : 60
Localisation : Blonay - Suisse

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par .AleX. le Jeu 29 Jan 2015 - 18:17

Ben chais pas..
Au prix des capteurs à effet Hall, c'est une solution très souvent rencontrée.
Après, je sais pas si FrSky à employé une technologie plus 'extrême' Very Happy

_________________
Tout vole, ce n'est qu'une question de vitesse initiale...
avatar
.AleX.
Modérateur

Messages : 1199
Date d'inscription : 24/11/2013
Localisation : Clermont-Fd(63) ou parfois Annecy(74)

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Belov le Jeu 29 Jan 2015 - 22:04

Hall et Néel : même combat, mais différemment

Le terme induction est mal choisi pour l'effet hall mais c'est un vaste débat.
Pour que la tension de hall existe, il est nécessaire d'avoir un matériau semi-conducteur. La différence avec << l'induction >> est que l'effet Hall génère une tension (ie répartition d'électrons avec plus ou moins une grande concentration) alors que le courant induit est généré par la variation d'un champ magnétique. Le courant induit est proportionnel à la variation du champ magnétique (i~ ∂Ø/∂t) (ie un déplacement proportionnel d'électrons)
C'est pourtant clair scratch

Et toi là-bas au fond près du radiateur, au tableau !

Du moment que ça marche avec le continu c'est l'essentiel pour nous.
avatar
Belov

Messages : 415
Date d'inscription : 01/01/2014
Age : 48
Localisation : Rennes

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Sacre100 le Jeu 29 Jan 2015 - 22:23

Belov a écrit:Hall et Néel : même combat, mais différemment

Le terme induction est mal choisi pour l'effet hall mais c'est un vaste débat.
Pour que la tension de hall existe, il est nécessaire d'avoir un matériau semi-conducteur. La différence avec << l'induction >> est que l'effet Hall génère une tension (ie répartition d'électrons avec plus ou moins une grande concentration) alors que le courant induit est généré par la variation d'un champ magnétique. Le courant induit est proportionnel à la variation du champ magnétique (i~ ∂Ø/∂t) (ie un déplacement proportionnel d'électrons)
C'est pourtant clair scratch

Et toi là-bas au fond près du radiateur, au tableau !

Du moment que ça marche avec le continu c'est l'essentiel pour nous.

Question M'sieur, le cuivre c'est un semi-conducteur, pa'cqu'y disent qu'on peut utiliser un barreau rectangulaire de cuivre.

PS. Dimanche, j'ai révisé ça avec ma fille qui a eu lundi un examen de physique à l'uni.  
avatar
Sacre100

Messages : 1889
Date d'inscription : 30/11/2013
Age : 60
Localisation : Blonay - Suisse

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Belov le Jeu 29 Jan 2015 - 22:38

On a connu les maths modernes, il y a maintenant la physique moderne geek

Pour revenir au sujet, le capteur peut être connecté à un ampli opérationnel pour étendre la courbe de mesure et ensuite être connecté à une entrée tension FrSky
avatar
Belov

Messages : 415
Date d'inscription : 01/01/2014
Age : 48
Localisation : Rennes

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Sacre100 le Jeu 29 Jan 2015 - 23:13

Belov a écrit:On a connu les maths modernes, il y a maintenant la physique moderne geek

1879 découverte de l'effet de Hall (par Hall, on aurait pû s'en douter), dans un semi-conducteur, hum, hum ...
avatar
Sacre100

Messages : 1889
Date d'inscription : 30/11/2013
Age : 60
Localisation : Blonay - Suisse

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par windy75020 le Mar 21 Avr 2015 - 12:20

ce capteur pour amp ne peu pas être reprogrammé pour frsky ?

[Vous devez être inscrit et connecté pour voir ce lien]

ca me semble une alternative vraiement bon marché

windy75020

Messages : 1
Date d'inscription : 18/02/2015
Localisation : fontenay-sous-bois

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par .AleX. le Mar 21 Avr 2015 - 18:54

windy75020 a écrit:ce capteur pour amp ne peu pas être reprogrammé pour frsky ?

[Vous devez être inscrit et connecté pour voir ce lien]

ca me semble une alternative vraiement bon marché

A priori, rien de reprogrammable là dessus, ça semble juste est un shunt de mesure (peut-être avec un ampli op pour obtenir une tension équivalente au courant mais dans une plage plus facile à 'capturer' par l'APM)

En gros, c'est juste la sonde, pas la partie traitement.

_________________
Tout vole, ce n'est qu'une question de vitesse initiale...
avatar
.AleX.
Modérateur

Messages : 1199
Date d'inscription : 24/11/2013
Localisation : Clermont-Fd(63) ou parfois Annecy(74)

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par michelmotte le Dim 13 Déc 2015 - 19:23

Bonsoir
J'ai un capteur de courant FCS-40A (Sport Frsky) que je veux utiliser pour mesurer la
consommation de courant du moteur d'un avion electrique.
Companion et taranis  sont en version 2.1.3
Je ne trouve pas le parametre de telemetrie (en l'occurence Cnsp) a mettre dans interrupteur
logique.
Merci pour votre aide

michelmotte

Messages : 59
Date d'inscription : 28/07/2014

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Sacre100 le Dim 13 Déc 2015 - 20:31

michelmotte a écrit:...
Je ne trouve pas le parametre de telemetrie (en l'occurence Cnsp) a mettre dans interrupteur
logique.
...

As-tu fait la détection du capteur, si ce n'est pas le cas, fait-la.
avatar
Sacre100

Messages : 1889
Date d'inscription : 30/11/2013
Age : 60
Localisation : Blonay - Suisse

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Avionic78 le Dim 24 Sep 2017 - 12:10

L'un d'entre vous a t'il réalisé un script LUA pour recueillir la consommation de courant et évaluer l'autonomie restante en connaissant les caractéristiques de la batterie ?

Avionic78

Messages : 28
Date d'inscription : 13/07/2015
Localisation : Cogolin

Revenir en haut Aller en bas

Re: [TUTO] Capteur de courant OpenXsensor pour $5

Message par Avionic78 le Dim 24 Sep 2017 - 15:26

Merci

Avionic78

Messages : 28
Date d'inscription : 13/07/2015
Localisation : Cogolin

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum