3 réponses
YCN-
Messages postés
116
Date d'inscription
mercredi 24 juin 2015
Statut
Membre
Dernière intervention
13 juillet 2017
12
28 juin 2017 à 09:56
28 juin 2017 à 09:56
Salut,
A) apprend à utiliser des servo moteur
B) apprend à utiliser HMC5883L
C) apprend à utiliser ton truc de pèche
D) met tout ensemble
Voilà je ne pense pas qu'on puisse faire beaucoup plus pour toi.
GIYF
A) apprend à utiliser des servo moteur
B) apprend à utiliser HMC5883L
C) apprend à utiliser ton truc de pèche
D) met tout ensemble
Voilà je ne pense pas qu'on puisse faire beaucoup plus pour toi.
GIYF
j'ai vraiment essayé plusieurs codes mais sans réussite, voici le code:
<#include <Wire.h>
#include <HMC5883L.h>
#include <Servo.h>
#define SERVO 9
#define CENTER 100
#define GOAL 0
HMC5883L compass;
int goal = GOAL;
float declinationAngle = 0.212; // Radians
Servo myservo;
void setup() {
Serial.begin(9600);
myservo.attach(SERVO);
Wire.begin();
compass = HMC5883L();
// Set scale to +/- 1.3 Ga
int error = compass.SetScale(1.3);
if (error != 0)
Serial.println(compass.GetErrorText(error));
// Set measurement mode to continous
error = compass.SetMeasurementMode(Measurement_Continuous);
if (error != 0)
Serial.println(compass.GetErrorText(error));
}
void loop() {
int angle = getDegrees();
int error = goal - angle;
if (error >= 180)
error -= 360;
if (error <= -180)
error += 360;
// Update servo and keep with range of +/- 60
if (error > 60)
error = 60;
if (error < -60)
error = -60;
myservo.write(CENTER + error);
delay(10);
}
int getDegrees () {
MagnetometerScaled scaled = compass.ReadScaledAxis();
// Calculate heading when the magnetometer is level, then correct for signs of axis.
float heading = atan2(scaled.YAxis, scaled.XAxis) + declinationAngle;
// Correct for when signs are reversed.
if(heading < 0)
heading += 2 * PI;
// Check for wrap due to addition of declination.
if(heading > 2 * PI)
heading -= 2 * PI;
// Convert radians to degrees for readability.
return (int) (heading * 180 / M_PI);
}/>
je veux savoir au moins est ce que ce code va avec mon projet ou pas?
d'avance Merci
<#include <Wire.h>
#include <HMC5883L.h>
#include <Servo.h>
#define SERVO 9
#define CENTER 100
#define GOAL 0
HMC5883L compass;
int goal = GOAL;
float declinationAngle = 0.212; // Radians
Servo myservo;
void setup() {
Serial.begin(9600);
myservo.attach(SERVO);
Wire.begin();
compass = HMC5883L();
// Set scale to +/- 1.3 Ga
int error = compass.SetScale(1.3);
if (error != 0)
Serial.println(compass.GetErrorText(error));
// Set measurement mode to continous
error = compass.SetMeasurementMode(Measurement_Continuous);
if (error != 0)
Serial.println(compass.GetErrorText(error));
}
void loop() {
int angle = getDegrees();
int error = goal - angle;
if (error >= 180)
error -= 360;
if (error <= -180)
error += 360;
// Update servo and keep with range of +/- 60
if (error > 60)
error = 60;
if (error < -60)
error = -60;
myservo.write(CENTER + error);
delay(10);
}
int getDegrees () {
MagnetometerScaled scaled = compass.ReadScaledAxis();
// Calculate heading when the magnetometer is level, then correct for signs of axis.
float heading = atan2(scaled.YAxis, scaled.XAxis) + declinationAngle;
// Correct for when signs are reversed.
if(heading < 0)
heading += 2 * PI;
// Check for wrap due to addition of declination.
if(heading > 2 * PI)
heading -= 2 * PI;
// Convert radians to degrees for readability.
return (int) (heading * 180 / M_PI);
}/>
je veux savoir au moins est ce que ce code va avec mon projet ou pas?
d'avance Merci
Chris 94
Messages postés
50978
Date d'inscription
mardi 8 janvier 2008
Statut
Modérateur
Dernière intervention
17 février 2023
7 334
27 juin 2017 à 16:39
27 juin 2017 à 16:39
Utilisateur anonyme
>
Chris 94
Messages postés
50978
Date d'inscription
mardi 8 janvier 2008
Statut
Modérateur
Dernière intervention
17 février 2023
28 juin 2017 à 07:30
28 juin 2017 à 07:30
Bonjour Chris,
en effet c'est mot pour mot la même question, on ne peut pas lui reprocher de la poser un peu partout.
en effet c'est mot pour mot la même question, on ne peut pas lui reprocher de la poser un peu partout.
Merci infiniment pour vos réaction.
j'ai presque fini avec la partie mécanique (95%) il me reste que quelque détails.
je ne peux pas marquer un avancement coté programmation car je suis nul.
a vrais dire, je commence a faire des essaye avec le langage Arduino mais je sais bien que je ne peux pas créer comme ce code dont j'ai posté au dessus.
c'est vrai que j'ai fais plusieurs post sur plusieurs forum, c'est par ce que je travaille sur ce projet plus que 6 mois.
Merci d'avance pour votre aide.
cordialement.
j'ai presque fini avec la partie mécanique (95%) il me reste que quelque détails.
je ne peux pas marquer un avancement coté programmation car je suis nul.
a vrais dire, je commence a faire des essaye avec le langage Arduino mais je sais bien que je ne peux pas créer comme ce code dont j'ai posté au dessus.
c'est vrai que j'ai fais plusieurs post sur plusieurs forum, c'est par ce que je travaille sur ce projet plus que 6 mois.
Merci d'avance pour votre aide.
cordialement.
28 juin 2017 à 10:44
De plus, comme il dit que que Kontiki doit être "construit", s'il le fabrique de toutes pièces, il va falloir qu'il s'assure de la flottabilité de sa construction, qu'il s'assure de l’étanchéité pour mettre les composants et batterie à l'abri, qu'il détermine la puissance nécessaire des moteurs pour assurer une navigation malgré les vagues et les courants, en tenant compte du tirant d'eau de l'appareil, qu'il gère l'énergie permettant au Kontiki de revenir à la plage, qu'il calcule la distance parcourue et la position de l'appareil en l'estimant (puisque le composant n'est qu'une boussole, pas un GPS), qu'il sache estimer une position et calculer un cap en tenant compte de la déclinaison magnétique, des courants de marée s'il y en a dans la zone de navigation, de la dérive due au vent,...
bref, c'est un beau projet, mais il faut travailler :-)
certainement, ajouter un composant capable de renvoyer une position GPS aiderait, surtout si l'appareil est sensé naviguer loin, comme le Kontiki de la vidéo qu'il poste sur l'autre forum, et qu'il n'a pas posté ici malgré son affirmation "voir PJ".
Dal