Bonjour à tous, j'ai quelques questions concernant le stockage d'informations sur une carte micro SDHC.
Voilà, avec des amis, nous participons à un projet nommé CanSat. Le but est d'envoyer un mini satellite de la taille d'une canette à 1 km d'altitude. Lors de sa chute (freinée avec un parapente), cette canette devra relevée la température et la pression. Nous avons déjà réalisé le système avec arduino. Nous avons pour le capteur de pression et de température le BMP 280. Maintenant, nous avons besoin de pouvoir stocker les données que prendra ce capteur sur une carte micro SDHC. D'ailleurs, est-ce que quelqu'un pourrait m'expliquer quelle est la différence entre SD et SDHC ?
Pour cela, nous avons un adaptateur : Cdiscount
Et une carte micro SDHC: TS4GUSDC4: Carte mémoire MicroSDHC 4 Go, Transcend Classe 4 chez reichelt elektronik
Voici le code que nous avons fait pour la température, la pression et l'altitude :
#include <Wire.h>
#include <BMP180.h>
// création objet
BMP180 barometer;
// Utilisation du LED sur la carte pour indiquer si capteur OK
int indicatorLed = 13;
// Pression atmosphérique au niveau de la mer, voir météo locale pour cette donnée
float seaLevelPressure = 102100;
void setup()
{
// Démarrage de la communication avec le moniteur série
Serial.begin(9600);
// Démarrage de la communication I2C avec le capteur
Wire.begin();
// initialisation de la DEL.
pinMode(indicatorLed, OUTPUT);
// on démarre la fonction
barometer = BMP180();
// vérification si le capteur est présent et fonctionnel
if(barometer.EnsureConnected())
{
Serial.println("Connexion au BMP180 OK."); // Envoyer sur le moniteur série
digitalWrite(indicatorLed, HIGH); // Allumer la DEL
// Lorsque connecté, on réinitialise (reset) le capteur
barometer.SoftReset();
// On initialise le capteur
barometer.Initialize();
}
else
{
Serial.println("Pas de capteur.");
digitalWrite(indicatorLed, LOW); // Ferme la DEL
}
}
void loop()
{
if(barometer.IsConnected)
{
// Mesure de la pression en Pascal.
long currentPressure = barometer.GetPressure();
// Envoyer la pression au moniteur série
Serial.print("Pression: ");
Serial.print(currentPressure);
Serial.print(" Pa");
// Caclule de l'altitude (en mètre), nécessite la pression au niveau de la mer de votre position
float altitude = barometer.GetAltitude(seaLevelPressure);
// Envoyer l'altitude au moniteur série
Serial.print("\tAltitude: ");
Serial.print(altitude);
Serial.print(" m");
// Mesurer la température (°C)
float currentTemperature = barometer.GetTemperature();
// Envoyer la température au moniteur série
Serial.print("\tTempérature: ");
Serial.print(currentTemperature);
Serial.print("°C");
Serial.println(); // Démarrer une nouvelle ligne.
delay(1000); // Attendre 1 s avant prochaine lecture.
}
}
Notre objectif est donc de relier notre adaptateur avec la carte micro SDHC à l'arduino et de donc pouvoir en temps réel transférer les données sur la carte.
Est-ce que par hasard quelqu'un pourrait nous indiquer comment est-ce que nous pourrions y arriver ?
Merci d'avance à tous, bonne fin de soirée !
Bonsoir, merci beaucoup pour votre réponse ! Je pense qu'on ne vend plus que des cartes de minimum 1giga, pensez-vous que ça fera l'affaire ? Bonne fin de soirée
Les bibliothèques pour les cartes SD fonctionnent avec un formatage FAT32 et dépassent facilement le Go. Perso j'ai des cartes 8Go et je n'ai jamais eu de problèmes.
Il est en céramique, le parapente ? Vous savez que les engins qui rentrent dans l'atmosphère, par exemple avec des humains à bord, subissent un échauffement énorme. Cf l'accident de la navette américaine, où un défaut sur une tuile de protection a laissé entrer du plasma à 5000°C dans l'aile et a détruit l'engin.
[edit] J'ai relu... 1 km d'altitude, ça va pas se satelliser. OK. C'est le "Sat" dans le nom du projet qui m'a trompé.
C'est là que réside la subtilité ! Pour toutes les autres équipes qui participent au projet CanSat (très connu d'ailleurs, vous trouverez beaucoup d'informations sur le net), un simple parachute est suffisant pour freiner la chute de leur canette. Dans notre cas, c'est différent, notre expérience secondaire (propore à chaque équipe qui participe), consiste à faire atterrir notre canette dans une zone préalablement déterminée. Pour cela, nous avons imaginé un système d'engrenages actionnés par un servomoteur qui permettrait de tirer les cordes d'un... parapente. Car oui, un simple parachute ne nous permettrait pas de diriger notre canette, nous avons donc utiliser le terme "parapente" car il est plus adéquat. Nous venons de finir de le coudre, il fait 80cm sur 80cm, il n'a pas toutes les caractéristiques d'un parapente mais on est pas loin
cool. (c'est plus un "parachute directionnel" car le mot "pente" dans "parapente" sous entend que l'on part du sol pour décoller.)
Le pilotage n'est pas simple à réaliser en automatique mais en conditions météo "sympathiques" (pas de thermiques, pas de vent trop fort, pas de gradient) en connaissant la finesse de votre aile on peut commencer à faire des choses si bien sûr la zone cible n'est pas trop loin de la zone de largage.
Bien sûr, mais dans l'un je demande des détails pour le code et dans l'autre des détails concernant les branchements Mais je vais essayer de ne pas trop m'étaler.
Combien comptez vous faire de prise de mesure ... psk enregistrer ça directement dans la mémoire eeprom de la carte Feather MO pourrait faire l'affaire et vous enlèverez un consommateur.
Vous pouvez voir dans le message inital le code de notre température, pression et altitude. Il faut rejouter à celui là un code pour faire tourner un servomoteur, un code pour une carte GPS, un code pour une antenne émettrice et un code pour un interrupteur. Le tout devra fonctionner pendant plusieurs heures. Pensez-vous que la mémoire de la carte pourrait tout stocker ? Mais de toute façon, je pense que nous sommes obligés d'avoir un système de sauvegarde externe...
j'ai lu le règlement et effectivement ils disent bien
La température et la pression de l'air doivent être enregistrées au moins toutes les secondes sur une carte mémoire amovible. Contrairement à la campagne européenne et si les mesures sanitaires le permettent, le personnel d’ESERO France effectuera les lancements avec la présence des équipes sans radio en direct. Cette carte doit être facilement accessible/démontable pour les opérateurs de lancement