diff --git a/MDK-ARM/Project.uvoptx b/MDK-ARM/Project.uvoptx index 6277f4f..5cb1497 100644 --- a/MDK-ARM/Project.uvoptx +++ b/MDK-ARM/Project.uvoptx @@ -75,7 +75,7 @@ 1 0 - 1 + 0 18 @@ -305,7 +305,7 @@ 1 0 - 0 + 1 18 @@ -350,7 +350,7 @@ 0 DLGDARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=120,153,415,450,0)(120=204,207,625,634,0)(121=-1,-1,-1,-1,0)(122=896,89,1317,516,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=248,17,842,768,0)(131=521,17,1115,768,0)(132=709,34,1303,785,0)(133=-1,-1,-1,-1,0)(160=251,288,699,702,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0) + (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=120,153,415,450,0)(120=204,207,625,634,0)(121=-1,-1,-1,-1,0)(122=896,89,1317,516,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=248,17,842,768,0)(131=521,17,1115,768,0)(132=709,17,1303,768,0)(133=-1,-1,-1,-1,0)(160=251,288,699,702,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0) 0 @@ -389,7 +389,7 @@ 0 31 1 -
134222722
+
134223390
0 0 0 @@ -405,7 +405,7 @@ 0 32 1 -
134222726
+
134223394
0 0 0 @@ -421,16 +421,16 @@ 0 77 1 -
134222758
+
0
0 0 0 0 0 - 1 + 0 ..\Src\Voilier.c - \\NUCLEO_F103RB\../Src/Voilier.c\77 + diff --git a/Src/Voilier.c b/Src/Voilier.c index fd2170c..4994abf 100644 --- a/Src/Voilier.c +++ b/Src/Voilier.c @@ -52,14 +52,12 @@ void Envoi3s(){ * @retval None */ void Task100ms(){ - //Voiles - TendreVoile(CalculerTension(RecupAllure())); //on tend la voile grace à la tension obtenue a partir du calcul et de l'allure lue - - //Gouvernail - CommanderMoteur(LireTelecommande()); //On commande le moteur pour aller à la vitesse lue a la télécommande - - //Anti-Chavirement + + int dangerRoulis = 0; //Variable qui permet de ne pas tendre les voiles si il y a trop de roulis + + //Anti-Chavirement if(CalculerDangerChavirement(RecupRouli())){//renvoi boolean : int à 0 si faux et 1 si vrai + dangerRoulis = 1; //Pour pas retendre directement les voiles juste après. TendreVoile(90); //si il y a danger on relache les voiles (relacher les voiles = les mettre � 90) EnvoiExceptionnel("Risque de chavirement, voiles choquées");//Et on prévient l'utilisateur } @@ -68,6 +66,14 @@ void Task100ms(){ if(CalculerDangerNiveauBatterie(RecupNiveauBatterie())){//renvoi boolean : int à 0 si faux et 1 si vrai EnvoiExceptionnel("Batterie faible");//Et on prévient l'utilisateur } + + //Voiles + if (!dangerRoulis){ //On vérifie qu'il n'y ait pas de roulis avant de tendre les voiles selon l'allure + TendreVoile(CalculerTension(RecupAllure())); //on tend la voile grace à la tension obtenue a partir du calcul et de l'allure lue + } + + //Gouvernail + CommanderMoteur(LireTelecommande()); //On commande le moteur pour aller à la vitesse lue a la télécommande } void SysTick_Handler(void) { /* SysTick interrupt Handler. */