rapport de projet de fusée expérimentale athena
TRANSCRIPT
Rapport de projet de fusée expérimentale
Athena
Auteurs :
Xavier Lamboley : [email protected]
Julie Quèbre : [email protected]
30 septembre 2016
Eirspace – Enseirb-Matméca
1 Avenue du Dr Albert Schweitzer, 33400 Talence
1
Rapport d’activité 2015 - 2016
30/09/2016
Table des matières
1. Présentation du projet de l’équipe....................................................................................................................................... 3
1.1. Le projet ................................................................................................................................................................................ 3
1.2. Le C’Space ............................................................................................................................................................................. 3
1.3. Le cahier des charges et les RCE ................................................................................................................................. 4
1.4. StabTraj et le propulseur................................................................................................................................................ 4
2. Objectifs expérimentaux .......................................................................................................................................................... 6
2.1. Récupération de la fusée intacte ................................................................................................................................. 6
2.2. Éjection du rover ............................................................................................................................................................... 6
2.3. Etude stabilité des ailerons ........................................................................................................................................... 6
2.4. Transmission et stockage des données .................................................................................................................... 7
3. Réalisations ................................................................................................................................................................................... 7
3.1. Réalisations mécaniques ................................................................................................................................................ 7
3.1.1. Conception mécanique .......................................................................................................................................... 7
3.1.1. L’usinage du tube ..................................................................................................................................................... 9
3.1.2. Les ailerons et le tube de centrage ................................................................................................................ 11
3.1.1. La prise jack ............................................................................................................................................................ 12
3.1.2. Les profilés .............................................................................................................................................................. 13
3.1.3. Le panneau de contrôle ...................................................................................................................................... 13
3.1.4. Le module parachute ........................................................................................................................................... 14
3.1.1. Le parachute et la bague parachute .............................................................................................................. 15
3.1.2. L’évasement et la coiffe ...................................................................................................................................... 16
3.1.3. Le module d’éjection du rover ......................................................................................................................... 17
3.1.4. Le rover ..................................................................................................................................................................... 18
3.1.5. Les trappes parachute et rover ....................................................................................................................... 18
3.1.6. L’ogive ....................................................................................................................................................................... 19
3.1.7. Les patins ................................................................................................................................................................. 20
3.1.8. La peinture .............................................................................................................................................................. 21
3.2. Aspects électroniques ................................................................................................................................................... 22
3.3. Antenne .............................................................................................................................................................................. 23
4. Exploitation des données ...................................................................................................................................................... 23
5. Bilan financier ........................................................................................................................................................................... 26
6. Conclusion ................................................................................................................................................................................... 26
2
Rapport d’activité 2015 - 2016
30/09/2016
Remerciements
La réalisation d’une fusée expérimentale est un projet qui nécessite beaucoup de matériaux et de
compétences que nous n’avions pas toujours. Pour cette raison, nous tenions à remercier vivement toutes
les personnes qui nous ont aidées à réaliser ce projet, à savoir :
- Nos partenaires pour l’aide en management de projet ainsi que l’aide financière qu’ils nous
ont apportée.
- Antoine RENAUD, pour ses idées parfois un peu trop… audacieuses !
- Anthony GAUTIER, pour ses idées remarquables, son module indépendant, le prêt de son
imprimante 3D et sa grande disponibilité
- John NICOT, pour nous avoir sauvé lors du C’Space, pour toute l’aide en électronique ainsi que
pour avoir tenu le récepteur à bout de bras pendant plusieurs minutes
- M. Jacques BEHAR, pour nous avoir suivi tout au long du projet et nous avoir lancé sur le projet du
robot
- M. NOBILET pour toute l’aide technique qu’il nous a apportée et notamment la réalisation de
certaines pièces
- M. BENEY pour l’usinage de certaines pièces en carbone
- M. DESTOR pour la découpe et le perçage du tube en aluminium mais aussi pour son humour
- M. BOYER et Mme PIERRE pour la conception et la fabrication du robot embarqué
- M. LEMOINE pour l’aide sur la modélisation numérique de la fusée.
3
Rapport d’activité 2015 - 2016
30/09/2016
1. Présentation du projet de l’équipe
1.1. Le projet
Le projet Athena a été mené au sein du club EirSpace, le club aérospatial de l’école d’ingénieurs
ENSEIRB-MATMÉCA à Bordeaux. Ce club, qui participe de manière récurrente au C’Space, propose aux
étudiants des différentes filières de l’école (informatique, électronique, télécommunication et
mathématiques/mécanique) la construction de minifusées, cansats (minisatellites), drones ou encore
fusées expérimentales.
La formation s’étalant sur trois années, il est couramment proposé aux membres de 1ère année la
construction de mini-fusées, tandis que les 2ème année se lancent sur un projet plus conséquent de fusée
expérimentale, pour une durée de 2 ans.
Ce fut le cas pour la fusée Athena, qui fut initiée en septembre 2014 pour être lancée en juillet 2016.
Ce projet fut porté par trois étudiants ayant chacun leur domaine de compétence :
- Thibaut DESPOISSE, filière électronique
- Xavier LAMBOLEY, filière mathématiques et mécanique, chef de projet
- Julie QUÈBRE, filière mathématiques et mécanique
Cette équipe, très réduite, a bénéficié de l’aide de plusieurs anciens membres du club, dont
notamment John Nicot, ingénieur diplômé de la filière électronique, et Anthony Gautier, ingénieur
diplômé de la filière informatique. Plusieurs partenaires nous ont également apporté leur soutien pour la
fabrication des différents éléments de la fusée :
- M. Jacques BEHAR, d’Airbus Defense and Space pour nous avoir mis en contact avec le collège
Léon Drouyn et nous avoir supportés tout au long du projet
- M. NOBILET du CFAI (Centre de Formation d’Apprentis de l’Industrie) de Bruges pour l’usinage
de l’aluminium
- M. BENEY du lycée des Métiers de la Mer à Gujan-Mestras, pour l’usinage de certaines pièces en
carbone
- M. DESTOR au laboratoire IMS (Intégration du Matériau au Système) pour la découpe et le
perçage du tube en aluminium
- M. BOYER et Mme PIERRE du collège Léo Drouyn à Vérac pour la conception et la fabrication du
robot embarqué
- M. LEMOINE pour l’aide sur la modélisation numérique de la fusée
- Le groupe Bordeaux INP et l’ENSEIRB-MATMECA qui nous ont permis de bénéficier des locaux
et des financements nécessaires par l’intermédiaire du club EirSpace.
1.2. Le C’Space
Le C’Space est un concours international organisé par le CNES et PLANETE SCIENCES. Les
différentes catégories du concours sont : les fusées expérimentales, les minifusées, les CanSat ainsi que
les ballons expérimentaux.
Celui-ci s’est déroulé sur le camp militaire de Ger du 1er Régiment de Hussards Parachutistes
(RHP), près de Tarbes dans les Pyrénées. Il a eu lieu du 23 au 30 juillet 2016, et a accueilli près de 200
étudiants internationaux.
Le C’Space, est l’occasion pour les jeunes passionnés d’espace de mettre en œuvre un projet, de sa
conception jusqu’à sa réalisation, en intégrant des expériences scientifiques embarquées. Une journée
officielle étant le jeudi 28 juillet est plus particulièrement dédiée à la rencontre avec des professionnels
du spatial.
4
Rapport d’activité 2015 - 2016
30/09/2016
1.3. Le cahier des charges et les RCE
Toute fusée expérimentale développée dans le cadre des activités proposées par le CNES et
Planète Sciences doit répondre aux spécifications décrites dans un cahier des charges. Ce dernier est un
document qui regroupe des spécifications techniques pour la réalisation du projet.
Les animateurs de Planète Sciences et du CNES sont chargés de s’assurer, tout au long du
développement du projet, du respect des règles établies dans ce cahier des charges et de fournir un
soutien technique. Il est également demandé de participer aux Rencontres des Clubs Espace (RCE),
rendez-vous ayant pour but premier de constituer une Revue de Conception des projets en cours.
La fusée expérimentale, abrégée FUSEX, doit se conformer aux tests décrits dans ce cahier.
L’autorisation de lancement est donnée à l’issue des contrôles qui ont lieu durant le C’Space.
1.4. StabTraj et le propulseur
Le logiciel StabTraj, fourni par le CNES et Planète Sciences permet d’estimer la trajectoire de la
fusée et de valider sa stabilité, en fonction de ses caractéristiques techniques (dimension, centre de
masse…). Il permet également de définir les dimensions du parachute en fonction de la vitesse de
descente (Figure 1).
Figure 1: Stabtraj: verification stabilité
5
Rapport d’activité 2015 - 2016
30/09/2016
Planète-Sciences et le CNES ont fourni un propulseur de fabrication professionnelle de la gamme
Cesaroni : Pro 54 pour la fusée expérimentale. Tous deux assurent la mise en œuvre des opérations de
lancement dans le respect de la chronologie des clubs validée lors de la qualification. Lors de la campagne
internationale de lancements, Planète Sciences et le CNES mettent à disposition des pyrotechniciens
qualifiés, chargés de la mise en œuvre des propulseurs.
Figure 2: StabTraj, estimation de la trajectoire et dimensions du parachute
6
Rapport d’activité 2015 - 2016
30/09/2016
2. Objectifs expérimentaux
Athena est la troisième fusée expérimentale du club EirSpace. Ce projet comporte cinq objectifs expérimentaux:
Récupérer la fusée intacte
Aménager la structure de la fusée afin d'accueillir et d'éjecter un mini-rover
Etudier la stabilité des ailerons supérieurs
Utiliser une antenne fente pour la transmission des données Récupérer les données du vol Trois objectifs fixés initialement ont été complètement réussis, les deux autres l’ont été partiellement.
2.1. Récupération de la fusée intacte
Le principal objectif de cette fusée expérimentale fut de récupérer la fusée intacte après son vol.
Le moyen adopté fut une récupération par déploiement d’un parachute à l’apogée de la fusée. Le cahier
des charges, fourni par Planètes Sciences nous impose une descente sous parachute comprise entre :
5 𝑚. 𝑠−1 < 𝑉𝑑 < 15𝑚. 𝑠−1
Le parachute est contenu dans un module, et est maintenu en compression durant le vol. Lorsque
la trappe du parachute s’ouvre, celui-ci, qui était alors en compression, sort légèrement. L’air s’engouffre
alors et permet de déployer le parachute.
Un système d’anneau, fixé dans une plaque d’aluminium permet de relier le parachute à la fusée.
2.2. Éjection du rover
Un des objectifs majeurs de cette fusée, fut d’éjecter un mini-rover à l’apogée. Cet objectif est né
d’un partenariat avec le collège Léon Drouyn et de Monsieur Jacques Behar d’Airbus Defense and Space.
Le projet initial des élèves du collège partenaire était de concevoir un robot qui recherche de l’eau, sur le
modèle d’un robot qui se poserait sur la surface de Mars. Cependant l’implémentation de la recherche
d’humidité étant trop compliquée pour des élèves de collège, le projet a été redéfini et le robot se
contente d’avancer, puis de sonner. Il réitère cette boucle 10 fois puis s’arrête. Il aura son propre
parachute ce qui permettra de pouvoir le récupérer intact.
Les dimensions initiales fixées par notre équipe pour le rover au collège fut :
- Dimensions souhaitées : 100 ∗ 100 ∗ 100 𝑚𝑚
- Largeur max : 105 𝑚𝑚, largeur min : 100 𝑚𝑚.
- Poids max : 500g , poids min : 300 g
- Date limite de fabrication : avril 2016
2.3. Etude stabilité des ailerons
La forme atypique de la fusée, dûe à l’espace aménagé sous coiffe, destinée à accueillir le mini-rover,
a pour conséquence de réduire la stabilité de la fusée. Au début du projet en 2014, l’équipe à ce moment en
charge du C’Space nous a annoncé l’impossibilité de démontrer la stabilité de la fusée avec l’outil StabTraj. Par
conséquence une étude numérique de la stabilité de la fusée avec quatre ailerons supérieurs sera effectuée
7
Rapport d’activité 2015 - 2016
30/09/2016
sous OpenFOAM. L’objectif est de déterminer la géométrie optimale de ceux-ci afin d'une part de stabiliser la
fusée et d'autre part de réduire la traînée aérodynamique en régime turbulent. Le site Web consacré à ces
simulations est disponible à cette adresse, et contient tous les éléments de l’étude.
2.4. Transmission et stockage des données
La fusée intègre deux antennes pour transmettre les
données au sol. Le choix retenu a été un réseau de fentes usinés
directement dans le tube de la fusée. L’avantage d’une telle
antenne est que l’émission est omnidirectionnelle (Figure 3), ce
qui permet d’émettre au sol quelle que soit la position de la
fusée. Les données envoyées sont les mesures des différents
capteurs présents, à savoir accéléromètre-gyroscope,
thermomètre, et baromètre. Toutes les données émises sont
également stockées sur une carte SD, afin d’assurer une
redondance et de vérifier la qualité de la transmission.
L’émission se fait sur la bande ISM 868 MHz et plus précisément à la fréquence 869,5 MHz, où la
puissance de 500 mW est tolérée (figure 3). L’émission se fait grâce à un module XBee Pro. Pour
transmettre la puissance entre les deux fentes, une carte électronique est prévue pour intégrer un
diviseur de Wilkinson, qui a pour rôle de
répartir la puissance entre les deux fentes,
sans perte.
La longueur et la largeur des fentes
sont dimensionnées pour obtenir une
résonnance à la fréquence voulue (figure 4). La
station de réception au sol est composée d’un
module XBee configuré en récepteur, et d’une
antenne précédemment utilisée au club
EirSpace, notamment pour le projet Artémis en
2015.
3. Réalisations
3.1. Réalisations mécaniques
La fusée sera présentée de bas en haut en détaillant les méthodes de réalisation effectuée pour chaque
pièce mécanique.
3.1.1. Conception mécanique
La conception mécanique de la fusée a été effectuée avec le logiciel SolidWorks (Figure 5).
Les éléments principaux de cette structure sont détaillés sur la figure 5.
Figure 3: Diagramme de rayonnement du réseau de fentes
Figure 4: S(1, 1) en fonction de la fréquence
8
Rapport d’activité 2015 - 2016
30/09/2016
Athena a été conçue avec une peau porteuse en aluminium de la série 6000 de 100 𝑚𝑚 de diamètre et d’épaisseur 𝑒 = 2 𝑚𝑚.
À l’intérieur, un espace laissé vide a été attribué pour l’antenne. Deux fentes de dimensions 200 ∗ 3 𝑚𝑚 ont été modélisées et usinées de part et d’autre du tube. Un système de profilés permet de positionner les cartes électroniques. Un module a été créé, intégré au niveau de l’emplacement parachute, afin de faire passer les câbles électriques jusqu’en haut du module d’éjection. Le robot à éjecter est situé dans le module de diamètre 170 𝑚𝑚. La liaison entre le module et la peau porteuse est réalisée par un évasement.
Athena possède les dimensions et particularités suivantes :
- Hauteur : 1,77 m - Diamètre : 100 mm et 170 mm - Poids : 7,0 𝑘𝑔 sans le propulseur soit 8,6 𝑘𝑔 avec le propulseur - Apogée : 1500 𝑚 - Propulseur : Pro 54 - Système de récupération : parachute Il est à noter que l’élément mécanique n’ayant pas fait l’objet de re-conception est la plaque de
poussée. Celle-ci ayant été récupérée de la fusée expérimentale Artémis (fusex lancée en 2015). En effet cette dernière avait fait l’objet d’une optimisation topologique. La plaque de poussée a donc été reprise d’Artémis mais fabriquée de nouveau, avec le bon diamètre.
Figure 5: Organisation de la fusée et principaux matériaux utilisés
9
Rapport d’activité 2015 - 2016
30/09/2016
Le premier objectif dans la conception mécanique d’Athéna fut de déterminer la forme, les dimensions et l’allocation de la place pour chaque sous-ensemble à savoir : la case pour le mini-rover, le parachute, l’électronique et l’antenne puisque par la suite il a fallu vérifier la stabilité de la fusée. Les dimensions des ailerons bas ont été imposées par la forme et les dimensions de la fusée, afin de rendre cette dernière le plus stable possible.
Sur la figure 6, le schéma de droite est le diagramme des critères de stabilité qui démontre la stabilité de
la fusée.
3.1.1. L’usinage du tube
L’usinage du tube a été réalisé par Monsieur Denis NOBILET du CFAI Aquitaine et par Monsieur
DESTOR du laboratoire IMS, le laboratoire de l’Intégration du Matériau au Système.
Tout d’abord, notre partenaire au CFAI Aquitaine a usiné les ouvertures pour le parachute, pour le
panneau de contrôle ainsi que les fentes pour les ailerons. Les fentes pour les ailerons ont étaient usinées
avec une épaisseur de 1,5 𝑚𝑚. Par la suite Monsieur DESTOR a usiné les trous pour les vis ainsi que les
fentes pour l’antenne.
Figure 6: Une partie du Stab Traj de la fusée prouvant la stabilité
10
Rapport d’activité 2015 - 2016
30/09/2016
Lors de l’usinage avec M. DESTOR, il a fallu créer des demi cercles en imprimé 3D qui ont permis
de correctement positionner le tube pour son usinage. Deux anneaux en aluminium positionnés au niveau
de deux demi-cercles en imprimé 3D empêchaient le tube de tourner (Figure 7) et de faire un perçage
efficace.
Figure 7 : Anneau en aluminium et demi cercle en imprimé 3D
Une rosace permettant de positionner les trous à usiner les uns par rapport aux autres a été
positionnée en bout du tube (Figure 8 et 9). Cette rosace permet ainsi d’orienter convenablement le tube
avant l’usinage (Figure 10).
Figure 8 : Rosace et plan du tube
Anneau aluminium Demi-cercle en imprimé 3D
Figure 9 : Rosace en bout du tube
Figure 10 : Usinage du tube
11
Rapport d’activité 2015 - 2016
30/09/2016
Figure 11 : Dimensions caractéritiques
Figure 12 : Poncage des ailerons Figure 13 : Application de l’apprêt sur les ailerons
3.1.2. Les ailerons et le tube de centrage
Les ailerons, au nombre de 4, fabriqués en composite carbone par Monsieur BENEY du lycée des
métiers de la mer à Gujan-Mestras, sont rattachés au tube de centrage du propulseur. Ces deux pièces ne
constituent qu’un seul ensemble pour plus de rigidité et permettent un meilleur alignement des ailerons par
rapport au tube.
Les ailerons ont les dimensions caractéristiques suivantes (Figure 11) :
Emplanture 'm' : 300 mm
Saumon 'n' : 70 mm
Flèche 'p' : 226 mm
Envergure 'E' : 270 mm
Epaisseur : 3 mm
Position du bas : 1755 mm
Diamètre du tube au niveau de lesquels ils sont
positionnés : 100 𝑚𝑚
Une fois les ailerons réalisés, nous les avons poncés, afin de les rendre le plus lisse possible pour
une meilleure intégration dans l’air et donc une meilleure qualité de vol. Sur la figure 12 nous pouvons
voir le ponçage des ailerons et l’application de l’apprêt sur la figure 13.
Le tube de centrage, lui aussi en matériau composite carbone, est fabriqué par le lycée des Métiers
de la mer et a pour dimensions :
Diamètre intérieur : 54 mm
Diamètre extérieur : 58 𝑚𝑚
À l’extrémité basse du tube de centrage se trouve 4 entretoises reliant le tube de centrage et le
tube de la fusée. Ces entretoises permettent de maintenir le tube de centrage (Figure 14).
12
Rapport d’activité 2015 - 2016
30/09/2016
Figure 14 : Entretoises entre le tube de centrage et le tube de la fusée
À l’extrémité haute du tube de centrage se trouve une bague de centrage en contreplaqué.
3.1.1. La prise jack
Le système de détection du décollage est effectué par une prise Jack qui va déclencher les
temporisations. Pour ce faire, une pièce en bois a été fabriquée pour pouvoir y insérer la prise Jack
femelle. Cette dernière a été fixée par collage dans la pièce en bois.
Cet assemblage de pièces a ensuite été inséré dans le système de profilés au niveau de l’ouverture
prévue à cet effet dans le tube en aluminium (Figure 15).
Figure 15 : Intégration de la prise Jack dans le tube de la fusée
13
Rapport d’activité 2015 - 2016
30/09/2016
3.1.2. Les profilés
Les profilés, au nombre de 3, permettent de supporter les cartes électroniques. Ce système de
profilés permet de pouvoir retirer les cartes les unes séparément des autres. En effet des entailles ont été
réalisées permettant de glisser les cartes (Figure 16). De plus les cartes électroniques possèdent un
méplat ce qui permet de positionner le panneau de contrôle.
Figure 16 : Les 3 profilés
3.1.3. Le panneau de contrôle
Le panneau de contrôle sert d’interface homme machine. Il permet d’avoir accès aux interrupteurs
d’ouverture trappe parachute, d’éjection du robot, et d’ouverture trappe robot. Il est situé devant les
cartes électroniques, et collé sur deux profilés comme on peut le voir sur la figure 17. Il a été réalisé en
acrylique et a été découpé avec la découpe laser de l’ENSEIRB-MATMECA.
Figure 17 : Panneau de contrôle en acrylique
14
Rapport d’activité 2015 - 2016
30/09/2016
3.1.4. Le module parachute
Le module parachute permet de séparer le parachute des câbles et donc de faire passer les câbles
électriques depuis le logement des cartes électroniques jusqu’au module d’éjection du robot. Ce module
est imprimé avec une imprimante 3D Ultimaker2 Extended (Figure 18). Ce module se divise en 3 parties :
La partie soutien suspente parachute
Le logement passage de câble
Le logement batterie
Chaque partie possède des caractéristiques différentes d’impression en fonction des chargements
qu’il supporte durant le vol de la fusée.
La partie « soutien suspente parachute » est celle qui subit le plus gros choc lors du déploiement
du parachute de la fusée. Cette partie a été imprimée avec du PLA, 0,25 𝑚𝑚 d’épaisseur de couche, un
diamètre de buse de 0.4 𝑚𝑚 et 100% d’innfil.
Les deux autres parties ont été quant à elles imprimées avec seulement 30% de remplissage, étant
donné qu’elles ne subissent pas de choc.
Figure 18 : Partie passage de câble électronique, dans le tube (à gauche), vue de devant (milieu) et vue de derrière
passage câble (à droite)
La pièce « logement batterie » (Figure 19) est collée sur la pièce « passage de câble ».
15
Rapport d’activité 2015 - 2016
30/09/2016
Figure 20 : Partie "soutien suspente parachute"
Figure 17 : Partie « logement batterie »
3.1.1. Le parachute et la bague parachute
Le parachute de la fusée est dimensionné pour respecter la contrainte du cahier des charges, qui
impose une descente de 5 à 15 𝑚. 𝑠−1. L’outil StabTraj, qui propose un module permettant de calculer la
surface du parachute, permet de respecter cette contrainte. Le parachute choisi, qui est un parachute
provenant du site Fruity Chutes, possède les caractéristiques suivantes (Figure 10) :
- surface de 1,95 𝑚2
- coefficient de trainée de 2.2
- forme toroïdale
- matériau : nylon RipStop.
Le lien entre la fusée et le parachute est réalisé par une bague en aluminium d’épaisseur 𝑒 =
10 𝑚𝑚, visée par 6 vis M4 au tube de la fusée. L’attache se fait par un anneau qui est lui-même visé par
une tige de M10 dans la bague parachute, afin d’assurer la plus grande solidité dans le système de
maintien. En effet au moment du déploiement du parachute, la bague et l’anneau subissent un choc très
important.
Figure 21 : Déploiement du parchute de la fusée
16
Rapport d’activité 2015 - 2016
30/09/2016
3.1.2. L’évasement et la coiffe
L’évasement a été réalisé en fibre de verre avec des fibres tissées ainsi que de la résine et du
durcisseur. Les étapes de fabrication sont les suivantes (Figures 22 à 24) :
Impression 3D d’un moule extérieur et intérieur
Dépose de 2 mm de fibre de verre et résine sur le moule extérieur
Dépose du moule intérieur sur la fibre de verre déposée sur le moule extérieur
Encapsulage et vissage des deux moules
Attente séchage de la résine et durcisseur
Démoulage
La coiffe a été réalisée de la même manière que l’évasement, mais cette fois ci avec des fibres en
matériaux composites.
L’évasement et la coiffe ayant étaient réalisés en deux parties, il a fallu par la suite les assembler.
Pour cela la jonction a été réalisée par collage avec un renfort type fibre de verre.
Figure 22 : Découpe de la fibre de verre
Figure 23 : Dépose de fibre de verre entre l'évasement et la coiffe
Figure 24 : Coiffe et évasement terminés
17
Rapport d’activité 2015 - 2016
30/09/2016
3.1.3. Le module d’éjection du rover
Un système de propulsion est nécessaire pour éjecter le rover à l’apogée de la fusée. En effet, le
robot a une masse assez conséquente et ne sortirait donc pas tout seul à l’ouverture de la trappe. C’est
pourquoi un système d’éjection a été imaginé et mis en place.
Afin de faciliter l’intégration du système, le robot se trouve dans un module en PCB (voir
figure 25), qui possède les dimensions du rover, et qui est ensuite glissé dans la coiffe en fibre de verre.
L’éjection se fait alors par une barre montée sur ressorts, qui vient pousser le rover en dehors du
logement. Les ressorts ont été dimensionnés pour s’assurer que le rover sorte en entier du logement
lorsque la position de la fusée est positionnée de façon à ce que l’éjection se fasse vers le haut.
Une pièce en imprimé 3D a été conçue (Figure 26) pour retenir la barre et déclencher l’éjection au
moment voulu. Cette pièce permet de faire passer un fil tendu afin de retenir la barre. Cette pièce est
visée au fond du module en PCB. Elle possède un canal dans lequel passe le fil, qui vient se positionner
devant la barre pour la retenir. Au-dessus et en dessous de la barre, des trous latéraux ont été prévus
pour pouvoir fixer le fil avec des vis.
Ainsi, le système peut s’armer facilement :
- faire passer le fil dans le canal, en le faisant passer devant la barre
- fixer le fil au-dessus ou en dessous de la barre en vissant la vis appropriée
- remonter les ressorts et maintenir en position
- visser l’autre vis.
Une fois le système armé, l’éjection est déclenchée par la découpe du fil : une lame est placée sur le
palonnier du servomoteur placé en position pour trancher le fil et ainsi détendre les ressorts. Un
autre servomoteur est nécessaire pour retenir la trappe devant le rover. L’éjection s’effectue alors en
trois temps :
- 2 secondes avant l’apogée, ouvrir la trappe
- à l’apogée, couper le fil de retenue
- 2 secondes après l ‘éjection, faire revenir le servomoteur qui a coupé le fil en position initiale.
Cette étape est nécessaire pour pouvoir réarmer le système avec le servomoteur dans la bonne
configuration.
Figure 26 : Pièce en imprimé 3D pour retenir la barre d'éjection
Figure 25 : Sysème d'éjection armé
18
Rapport d’activité 2015 - 2016
30/09/2016
3.1.4. Le rover
Afin de garantir la compatibilité du robot avec le système d’éjection prévu, certaines contraintes
ont dûes être imposées au collège Léo Drouyn. Notamment, les dimensions sont de 100 𝑥 100 𝑥 100 𝑚𝑚
avec une marge de 5 𝑚𝑚, la masse doit être comprise entre 300 et 500 g.
Toutes ces conditions ont été assez bien respectées au moment de la livraison ; cependant,
certaines modifications ont dues être apportées avant le lancement, en particulier au niveau de
l’électronique du robot. Les fils qui se baladaient ont étaient supprimé étant donné qu’ils risquaient de se
casser ou de s’accrocher dans la fusée et donc empêcher le robot de sortir.
3.1.5. Les trappes parachute et rover
Les trappes parachute et robot, ne subissant pas d’efforts importants, ont été imprimées avec une
imprimante 3D. Elles sont donc plus légères. Ces deux trappes ont été imprimées avec du PLA, avec
0,25 𝑚𝑚 d’épaisseur de couche, un diamètre de buse de 0.4 𝑚𝑚 et 100% de remplissage.
La trappe parachute, étant plus longue que la taille de l’imprimante 3D, a due être imprimée en
deux fois. Les deux parties ont ensuite été fixées ensemble en les vissant et en les attachant entre elles par
un nœud de chaise afin de garantir une double sécurité (Figure 28).
Un système de languette en bas des deux trappes permet de les retenir dans le tube. Un
servomoteur permet de fermer le système : le palonnier se glisse dans une encoche de la trappe pour la
maintenir fermée. Pour ouvrir, il suffit de commander le servomoteur pour le faire pivoter de 90°, et la
trappe étant sous pression (le parachute ou le robot pousse sur la trappe), celle-ci tombe.
Figure 27 : Première version du robot embarqué
Figure 28 : Trappe parachute en position fermée
19
Rapport d’activité 2015 - 2016
30/09/2016
3.1.6. L’ogive
L’ogive de la fusée a été réalisée en fibre de verre sur une ogive en polystyrène PSE Qualité EM
que nous avons commandé chez Baticoffrage. Elle possède les caractéristiques suivantes :
Masse volumique 𝜌 = 19𝑘𝑔. 𝑚−3
Diamètre 𝑑 = 170 𝑚𝑚 Hauteur ℎ = 273,5 𝑚𝑚
Par la suite des bandes de tissu en fibres de verre ont été déposées sur l’ogive en polystyrène.
De la résine ainsi que du durcisseur ont été déposés au pinceau sur les fibres de verre (Figure 29). Une
embase a été créée afin de fixer l’ogive avec la coiffe.
Comme décrit dans la partie 3.1.3, l’ogive doit se fixer sur le haut du module d’éjection du rover. En
effet l’ogive vient se visser sur les vis du module d’éjection. Or la base de l’ogive étant en polystyrène, il a
donc fallu créer une embase en plaque de fibre de verre. Cette plaque, venant se visser sur le module
comporte trois encoches comme on peut le voir sur la figure 30.
Figure 29 : Dépose au pinceau de la résine sur les bandes de tissu de fibre de verre
20
Rapport d’activité 2015 - 2016
30/09/2016
Cette embase a été collée avec de la colle époxy bi-composant 3m sur la base de l’ogive.
Une fois l’embase collée et séchée, il a fallu rendre l’ogive la plus lisse possible afin de permettre
une meilleure intégration dans l’air de la fusée et donc un meilleur vol, plus stable et allant plus haut. Du
mastic a donc était posé sur l’ogive puis poncé (Figure 31). Cette opération a été effectuée jusqu’à ce que
l’ogive soit complètement lisse.
Après cette étape, il ne restait plus qu’à percer convenablement le polystyrène afin que les vis
puissent coulisser à l’intérieur, par les trous de l’embase en fibre de verre.
Les vis M4, ont été chauffées grâce à un chalumeau (Figure 32), puis insérées encore chaudes dans
le polystyrène. Celui-ci a fondu sous l’effet de la chaleur, les marques de la vis dans le polystyrène étaient
donc faites.
3.1.7. Les patins
La fusée, ayant deux diamètres différents a du se munir de deux patins permettant à la fusée de
glisser sur les rails de la rampe dans lequel elle est éjectée. Ces patins ont été imprimés avec du PLA, avec
0,25 𝑚𝑚 d’épaisseur de couche, un diamètre de buse de 0.4 𝑚𝑚. Ces patins subissant d’importants efforts
au moment du décollage ont dû être imprimés en 100%.
Figure 32 : Insertition des vis dans le poystyrène
Figure 30 : Embase de fibre de verre collée sur la base de l'ogive
Figure 31 : Ponçage de l'ogive
21
Rapport d’activité 2015 - 2016
30/09/2016
3.1.8. La peinture
La fusée porte le nom d’Athena, déesse grecque de la sagesse et du combat mais aussi la déesse
protectrice des artisans et de la cité d'Athènes. Ses attributs sont la chouette, la branche d’olivier, le
casque d’or ainsi que la lance d’or. C’est pourquoi nous avons décidé de dessiner une chouette sur l’ogive
de la fusée (Figure 33)
Figure 33: Chouette dessinée sur l'ogive d'Athena
La peinture de la fusée a été choisies volontairement colorée afin de la voir plus facilement dans le ciel et
au sol, dans l’herbe (voir Figure 34 et 35).
Figure 34 : Xavier et Julie devant Athena Figure 35 : Athena en rampe
22
Rapport d’activité 2015 - 2016
30/09/2016
3.2. Aspects électroniques
L’électronique de la fusée est composée de trois parties : le déploiement du parachute, la
télémétrie et les expériences, qui comprennent l’éjection du rover, les mesures des différents capteurs et
leur enregistrement (Figure 36). Nous avons donc mis en place trois cartes électroniques distinctes et
électroniquement indépendantes conformément au cahier des charges. Ces cartes électroniques sont
insérées dans le corps de la fusée dans un système de profilés métalliques (partie 3.1.2), qui assurent
d’une part leur immobilité dans la fusée mais également une masse électrique commune entre les
différentes cartes électroniques.
La première carte, qui gère le déploiement du parachute, est composée d’un micro-processeur
AtTiny2313 qui commande un servomoteur pour déclencher l’ouverture de la trappe parachute, ainsi
qu’une LED pour indiquer l’état d’alimentation de la carte (le programme est à cette adresse). Le système
retenu pour détecter le décollage de la fusée est un câble Jack, dont on détecte le branchement. Le
déclenchement de l’ouverture est programmé à 13 secondes après que le Jack soit débranché. Cette
méthode a été retenue pour sa simplicité. Une solution de conditions concurrentes (mesures d’altitude, de
vitesse…), plus efficace mais plus compliquée à mettre en œuvre, aurait permis de confirmer que le
parachute est bien éjecté à l’apogée.
La deuxième carte sert donc à gérer les expériences. L’unité de traitement est un Arduino Nano.
Les différents capteurs sont reliés à différentes entrées de l’Arduino selon leur type
(analogique/numérique). Le programme (disponible à cette adresse) écrit 5 fois par seconde les données
reçues des capteurs sur une carte SD. Cette carte gère également l’éjection du robot situé sous l’ogive, qui
est également déclenchée par la détection d‘un câble Jack. L’éjection s’effectue en deux temps :
- ouverture de la trappe par un servomoteur, après une temporisation de 11 secondes
- déclenchement du système de propulsion, après 2 secondes supplémentaires.
La carte expériences gère enfin deux LEDs, l’une qui indique l’état d’alimentation de la carte, et
l’autre l’état de connexion du Jack.
La troisième carte comprend quant à elle le module d’émission Xbee et est reliée au diviseur de
Wilkinson qui alimente les fentes.
Enfin, un module indépendant est également embarqué dans la fusée expérimentale à la demande
d’un ancien membre du club (Anthony Gauthier). Il effectue des mesures de pression, température,
accélération et altitude, qui sont stockées dans le module. Puisque cette partie ne peut pas être retirée
Figure 36 : Schéma électronique de la fusée
23
Rapport d’activité 2015 - 2016
30/09/2016
facilement du corps de la fusée, son autonomie est suffisante pour être effective de la qualification de la
fusée jusqu’à sa récupération après son lancement.
3.3. Antenne
La réalisation de l’antenne fente s’est faite conformément aux objectifs initiaux : on récupère les
données des capteurs sur un Arduino Nano, dont les pins Tx et Rx (données) sont branchées sur le XBee
d’émission.
Cependant, la carte prévue pour le diviseur de Wilkinson n’a pas pu être utilisée car ses
caractéristiques n’étaient pas suffisantes à la transmission (trop de pertes d’insertions dues à une
mauvaise adaptation d’entrée). À la place, nous avons utilisé un diviseur large bande dont l’adaptation
n’était pas optimale mais largement suffisante pour notre application (S11 < -10 dB sur la bande utilisée).
Au moment du lancement de la fusée, la télémétrie a correctement fonctionné durant quelques
minutes, puis s’est brusquement arrêtée sans possibilité de la relancer. Plusieurs hypothèses sont
envisageables pour expliquer ce dysfonctionnement : la première est un réglage erroné des XBees en
émission ou en réception, qui aurait permis un fonctionnement pendant quelques instants, puis aurait
cessé de fonctionner. Il est également envisageable que l’émission ait été perturbée par la fusée
précédente, causant des interférences et provoquant le dysfonctionnement de l’émission. Une autre piste
est un mauvais contact sur la carte électronique d’émission.
Nous avons tout de même pu utiliser les données des capteurs grâce au stockage sur carte SD,
prévu justement en cas de défaillance de la télémétrie.
4. Exploitation des données
Lors de son lancement au C'Space, Athena a dû se séparer de ses ailerons supérieurs pour passer
les qualifications, toutefois son vol a été un succès et elle a atteint l'altitude de 1257m. L’éjection du robot
a été un succès cependant on suppose que le parachute de celui-ci ne s’est pas correctement déployé.
L’antenne fente a correctement fonctionné jusqu’au lancement de la fusée précédente (voir partie 3.3).
Les données de vol n’ont donc malheureusement pas été envoyées au sol.
Figure 37 : Athéna en rampe (à gauche) , Xavier et Julie devant Athena (au milieu), Athena au décollage (à droite)
24
Rapport d’activité 2015 - 2016
30/09/2016
La fusée a pu être récupérée intacte (voir Figures 38 et 39) grâce à l’efficacité du parachute,
contrairement au rover qui a subi lui des dommages importants (voir Figure 40).
Les données enregistrées à bord de la fusée ont été récupérées permettant ainsi d'obtenir les
informations suivantes : - Poussée du propulseur : 3𝑠 - Temps pour atteindre l’apogée : 16 𝑠 - Altitude maximale : 1257 𝑚 - Durée totale du vol : 2 min 29 𝑠 - Accélération maximale : 7,9𝑔 - Vitesse verticale maximale : 166𝑚. 𝑠−1 - Température maximale dans la fusée : 35.7°
De plus, certains capteurs sont redondants dans la fusée, ce qui a permis de comparer les données
reçues. La figure 41 donne les accélérations dans les différentes directions ainsi que la température pour les données stockées sur carte SD et celles stockées sur le module Néo, du lancement à l’atterrissage de la fusée.
Figure 38 : Athéna sous parachute Figure 39 : Athena intacte après le vol
Figure 40 : Le rover après le vol
25
Rapport d’activité 2015 - 2016
30/09/2016
Figure 41 : Accélérations dans les trois directions et température du décollage à l'atterissage
26
Rapport d’activité 2015 - 2016
30/09/2016
On constate que les accélérations sont très proches entre les deux capteurs, ce qui permet de
valider ces données. L’accéléromètre stocké sur carte SD a saturé au moment du décollage à 2 g, mais
l’autre a permis de voir une poussée maximale du propulseur de presque 8 g.
La température semble baisser au cours de l’ascension de la fusée, avec cependant un grand écart entre
les deux capteurs. Cela peut s’expliquer par le défaut de calibrage du capteur stocké sur carte SD, ainsi
que par sa trop faible précision.
De plus, on peut voir sur l’accélération y, l’arrêt brusque de l’accélération, qui indique
probablement donc l’ouverture anticipée du parachute.
Enfin, on peut tracer l’altitude de la fusée et la pression grâce au capteur Néo :
5. Bilan financier
6. Conclusion
Malgré une équipe très réduite, le projet Athena a partiellement rempli ses objectifs, et a effectué
un vol nominal. Ce fut l’occasion pour l’équipe de mener à bien un projet ambitieux et de collaborer
avec différents partenaires, ce qui est particulièrement adapté aux formations de l’école d’ingénieurs
au sein duquel a eu lieu ce projet.
Concernant les objectifs initiaux fixés, la fusée a été récupérée intacte et l’éjection du rover s’est
correctement déroulée mis à part le déploiement de son parachute.
L’étude de l’influence des ailerons supérieurs a donné des résultats concluants. Cependant ces
ailerons n’ont malheureusement pas pu être implémentés, de ce fait l’étude n’a pas pu être vérifiée.
La télémétrie a fonctionné lors des essais au sol ainsi qu’avant le décollage de la fusée. Cependant
la transmission des données n’a pas fonctionné durant le vol mais les données ont tout de même pu
être récupérées grâce au stockage sur carte SD.
Un tel projet dans un club étudiant fut à la fois très formateur pour l’équipe, et a également permis
de transmettre les connaissances aux élèves qui nous suivent, en particulier pour éviter certaines
erreurs et ainsi permettre de réaliser des projets toujours plus aboutis.
Figure 42 : Pression (bleu) et altitude (rouge) du lancement à l'atterissage
27
Rapport d’activité 2015 - 2016
30/09/2016
Annexe 1 — Carte parachute
Programme de la carte parachute :
#define F_CPU 1000000UL
#include <avr/io.h>
#include <avr/interrupt.h>
#define TEMPS 13 // Temps de tempo en seconde
#define ITER_MAX TEMPS*10 // Evaluation nombre de boucles
#define COUNTER 0x62 // Valeur compteur0
#define PRESCALER 0x05 // Prescaler clk/1024 => start timer (!=0)
#define LED_TEMPO PD0
#define LED_SERVO PD2
#define JACK PD1
#define SERVO PB3
#define BP_CHANGE PD3
#define MIN_SERVO 0x24
#define MAX_SERVO 0x60
#define OPEN_DOOR MIN_SERVO
#define CLOSE_DOOR MAX_SERVO
int main() {
char started = 0;
int counter = 0;
int counter_max = ITER_MAX;
// Timer
TCCR0A = 0x02; // Clear Timer on Compare Match (CTC) mode
OCR0A = COUNTER; // Number to count up to
TCCR0B = PRESCALER; // Clock source CLK/1024, start timer
// Servo - PWM configuration
DDRB |= (1 << SERVO); // PWM output on PB3
TCCR1A = (1 << COM1A1) | (1 << WGM11); // Phase correct PWM mode
OCR1A = CLOSE_DOOR; // Initial servo position
TCCR1B = (1 << CS11); // Clock source = CLK/8, start PWM
DDRD &= ~(1 << BP_CHANGE); // BP change as input
PORTD |= (1 << BP_CHANGE); // set pull up
DDRD |= (1 << LED_TEMPO);
PORTD &= ~(1 << LED_TEMPO);
28
Rapport d’activité 2015 - 2016
30/09/2016
DDRD |= (1 << LED_SERVO);
PORTD &= ~(1 << LED_SERVO);
DDRD &= ~(1 << JACK);
PORTD |= (1 << JACK); // Pull up
// Allume la LED alim
PORTD |= (1 << LED_TEMPO);
PORTD &= ~(1 << LED_SERVO);
while (1) {
if (PIND & (1 << JACK)) { // Jack absent + pull up => état haut
if (!started) { // Debut temporisation
started = 1;
TCNT0 = 0;
}
if (TIFR & 0x01) { // Timer timed out?
TIFR |= 0x01; // Reset timer flag
if (counter == counter_max) {
OCR1A = OPEN_DOOR; // Faire tourner le servo
PORTD |= (1 << LED_SERVO);
counter = 0;
}
else counter++;
}
}
else {
if (started == 0) {
if (PIND & (1 << BP_CHANGE)) OCR1A = CLOSE_DOOR;
else OCR1A = OPEN_DOOR;
}
}
}
}
29
Rapport d’activité 2015 - 2016
30/09/2016
Annexe 2 — Robot
Programme du robot :
#include <Servo.h>
const int RELAIS_M = 3; // Brancher le fils de contrôle du relais moteur sur le pin 3
const int RELAIS_B = 5; // Brancher le fils de contrôle du relais buzer sur le pin 5
Servo servo;
int servo_tempo = 2;
int variableMoteur = 0;
// Active la broche donnée pendant la durée donnée
void allume_pendant(int relais, int alum, int att) {
digitalWrite(relais, HIGH);
delay(alum);
digitalWrite(relais, LOW);
delay(att);
}
void setup() {
pinMode(RELAIS_M, OUTPUT); // Configure la broche RELAIS_M en sortie
pinMode(RELAIS_B, OUTPUT); // Configure la broche RELAIS_B en sortie
servo.attach(5);
servo.write(0.);
}
void loop() {
// Fait avencer 10 fois le robot
while(variableMoteur <= 10) {
allume_pendant(RELAIS_M, 1000, 1000);
variableMoteur++ ;
}
// Tant que compteur est différent de 10
while(1) {
allume_pendant(RELAIS_B, 1000, 500);
allume_pendant(RELAIS_B, 1000, 500);
allume_pendant(RELAIS_B, 1000, 500);
delay(11500);
if (millis() * 1000 > servo_tempo) {
servo.write(90);
}
}
}
30
Rapport d’activité 2015 - 2016
30/09/2016
Annexe 3 — Carte expériences
Programme de la carte expériences :
/* Capteurs :
* • Capteur de température
* • Accéléromètre/Gyroscope 3 axes
* • Capteur de pression
* • Gyroscope 1-axe
* • Microphone -> non fonctionnel
*/
#include <Wire.h>
#include <Adafruit_MPL115A2.h>
#include <I2Cdev.h>
#include <MPU6050.h>
#include <Servo.h>
#include <SD.h>
// Peripheriques et fichiers
//Adafruit_MPL115A2 mpl115a2;
MPU6050 accelgyro;
File fil;
Servo servoRobot;
Servo servoDoor;
// Pins
const int ResetPin = 8;
const int TsensorPin = A0;
const int GsensorPin = A3;
const int MsensorPin = A7;
const int ServoRobotPin = 9;
const int ServoDoorPin = 3;
const int JackPin = 5;
const int LEDPin = 2;
const int SDPin = 10;
// Tempos
const int tempo_servo_robot = 11000; // millisecondes
const int tempo_servo_robot_back = 2000;
const int tempo_servo_door_back = 10000;
const int tempo_servo_door = 9000;
int led_blink = 1000; //
double temperature = 0.0;
double rotation = 0.0;
double sound = 0.0;
double pressureKPA = 0.0, temperatureC = 0.0;
31
Rapport d’activité 2015 - 2016
30/09/2016
int16_t ax = 42, ay = 0, az = 0;
int16_t gx = 0, gy = 0, gz = 0;
double AX = 42., AY = 0., AZ = 0., GX = 0., GY = 0., GZ = 0.;
unsigned long launch_time;
int Jack = 0;
int rope_cut = 0;
int servo_robot_done = 0;
int servo_door_done = 0;
int Jack_opened = 0;
int door_opened = 0;
int iter = 0.;
const int delay_servo_door = 10;
const int min_angle_servo_door = 70; // ferme
const int max_angle_servo_door = 150; // ouvert
void setup() {
Wire.begin();
// Open serial communications and wait for port to open:
Serial.begin(9600);
SD.begin(10);
fil = SD.open("log.txt", FILE_WRITE);
pinMode(TsensorPin, INPUT);
pinMode(GsensorPin, INPUT);
pinMode(MsensorPin, INPUT);
pinMode(LEDPin, OUTPUT);
pinMode(ResetPin, OUTPUT);
pinMode(JackPin, INPUT_PULLUP);
digitalWrite(LEDPin, LOW);
// Init servos
servoRobot.attach(ServoRobotPin);
servoDoor.attach(ServoDoorPin);
servoRobot.write(0.);
for(int pos = max_angle_servo_door - 40 ; pos >= min_angle_servo_door ; pos -= 1) {
servoDoor.write(pos);
delay(delay_servo_door);
}
sdprint("#\tHello!\n");
sdprint("#\tInitializing I2C devices...\n");
accelgyro.reset();
accelgyro.initialize();
accelgyro.setSleepEnabled(false);
sdprint("#\tTesting device connections...\n");
32
Rapport d’activité 2015 - 2016
30/09/2016
sdprint(accelgyro.testConnection() ? "#\tMPU6050 connection successful\n" : "#\tMPU6050
connection failed\n");
sdprint("#\tIter"); sdprint("\t");
sdprint("temp (*C)"); sdprint("\t");
sdprint("ax"); sdprint("\t");
sdprint("ay"); sdprint("\t");
sdprint("az"); sdprint("\t");
sdprint("gx"); sdprint("\t");
sdprint("gy"); sdprint("\t");
sdprint("gz"); sdprint("\t");
sdprint("rot (dps)"); sdprint("!\n");
fil.close();
}
void loop() {
fil = SD.open("log.txt", FILE_WRITE);
// Detection de l ouverture du Jack
Jack = digitalRead(JackPin);
if (Jack == 1 && Jack_opened == 0) {
launch_time = millis();
digitalWrite(LEDPin, HIGH);
sdprint("#\tJack opened\n");
Jack_opened = 1;
}
// Ouvre la porte
if ((Jack_opened == 1) && (door_opened == 0) && (millis() > (launch_time + tempo_servo_door)))
{
sdprint("#\tServo door: Opening\n");
for (int pos = min_angle_servo_door ; pos <= max_angle_servo_door ; pos += 1) {
servoDoor.write(pos);
delay(delay_servo_door);
}
door_opened = 1;
}
// Coupe le fil
if ((Jack_opened == 1) && (rope_cut == 0) && (door_opened == 1) && (millis() > (launch_time +
tempo_servo_robot))) {
servoRobot.write(165);
sdprint("#\tServo robot: Cutting the rope\n");
rope_cut = 1;
}
// Le servo fil reviens a sa position initiale apres 2 secondes
if ((rope_cut == 1) && (servo_robot_done == 0) && (millis() > (launch_time + tempo_servo_robot +
tempo_servo_robot_back))) {
33
Rapport d’activité 2015 - 2016
30/09/2016
servoRobot.write(0);
sdprint("#\tServo robot: Reverting to orginal position\n");
servo_robot_done = 1;
}
// La porte reviens a sa position initiale apres 10 secondes
if ((door_opened == 1) && (servo_door_done == 0) && (millis() > (launch_time +
tempo_servo_door + tempo_servo_door_back))) {
for (int pos = max_angle_servo_door ; pos >= min_angle_servo_door ; pos -= 1) {
servoDoor.write(pos);
delay(delay_servo_door);
}
sdprint("#\tServo door: Reverting to orginal position\n");
servo_door_done = 1;
}
// TMP36
temperature = TMP36GT_AI_value_to_Celsius(analogRead(TsensorPin));
// MPU6050
accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);
AX = ax * 9.81 / 16384.;
AY = ay * 9.81 / 16384.;
AZ = az * 9.81 / 16384.;
GX = gx * 250. / 16384.;
GY = gy * 250. / 16384.;
GZ = gz * 250. / 16384.;
// Accelero-gyro
rotation = gyroDPS(analogRead(GsensorPin));
sdprint("$"); sdprint("\t");
isdprint(iter); sdprint("\t");
isdprint(temperature); sdprint("\t\t");
fsdprint(AX); sdprint("\t");
fsdprint(AY); sdprint("\t");
fsdprint(AZ); sdprint("\t");
fsdprint(GX); sdprint("\t");
fsdprint(GY); sdprint("\t");
fsdprint(GZ); sdprint("\t");
isdprint(rotation); sdprint("\t");
sdprint("!"); sdprint("\n");
fil.close();
iter++;
}
void sdprint(const char* str) {
Serial.print(str);
34
Rapport d’activité 2015 - 2016
30/09/2016
fil.print(str);
}
void isdprint(const int16_t str) {
Serial.print(str);
fil.print(str);
}
void fsdprint(const double str) {
Serial.print(str);
fil.print(str);
}
// Convert Analog-input value to temperature
double TMP36GT_AI_value_to_Celsius(int AI_value) {
float voltage;
voltage = (AI_value * 5000.0) / 1024.;
return ((voltage - 750) / 10.) + 25; // Temperature according to datasheet: 750 mV = 25 °C, 10
mV / °C
}
// Convert Analog-input value to rotation
double gyroDPS(int AI_value) {
float voltage;
voltage = (AI_value * 5000.0) / 1024.;
return ((voltage - 1500) / 1.1); // Static value: 1500 mV = 0 dps, 1.1 mV / dps
}