POLYTECH’NICE SOPHIA COMMANDE PAR ORDINATEUR TRAVAUX DIRIGES AVEC MATLAB OU SCILAB, 2H DEPARTEMENT SCIENCES INFORMATIQUES COURS DE QUATRIEME ANNEE JEAN-PAUL STROMBONI, (17/04/2017) T.D. 2: Modélisation de Lunar Lander avec un logiciel de calcul scientifique (Matlab ou Scilab) On rappelle les données à utiliser pour modéliser l’alunissage de Lunar Lander : x a H Les équations différentielles sont : g lune y aV g lune ( aV ) x et y (en mètres) sont les coordonnées de Lunar Lander dans un repère dont l’origine se trouve en bas et à gauche sur l’écran de l’animation, g lune est l’accélération de la pesanteur lunaire : g lune 1.6ms 2 a H , aV (en kg s 1 ) sont les débits instantanés de carburant dans les réacteurs. Ces débits sont limités en valeur absolue à a Max 50 kg s 1 On convient que le carburant consommé durant Te vaut : C a H aV Te . Le débit de carburant introduit dans un réacteur a H par exemple induit une accélération aH fournie par le réacteur ( 0.5878 m s 1kg 1 est le rapport de la vitesse d’éjection des gaz v 4500 ms 1 à la masse totale de Lunar Lander : m 7655 .5kg ). L’alunissage débute à l’instant t 0s depuis l’état initial x( 0 ) x 0 45m , y 0 51m , dx ( 0 ) x 0 1 ms 1 , y 0 1 ms 1 . dt La période d’échantillonnage de l’ordinateur embarqué vaut Te 40 ms L’objectif de cette séance est de programmer les équations de Lunar Lander dans un script Scilab (ou Matlab) et de vérifier la cohérence de ce modèle avec les observations faites sur l’animation Flash. Dans la suite, on utilisera le modèle validé pour concevoir des lois de commande de Lunar Lander. 1. cohérence du modèle numérique et de l’animation Lunar Lander On utilise Matlab ou Scilab pour déterminer la trajectoire de Lunar Lander lâché à l’instant t 0s depuis la position x 0 , y 0 avec les vitesses horizontale et verticale x 0 , y 0 et sans réacteur. On comparera aux observations faites dans les mêmes conditions sur l’animation, durée de vol avant impact, vitesse d’impact, point d’impact, … pour valider les équations simulées. 2. commande de la vitesse de Lunar Lander Calculer avec Scilab (Matlab) le comportement de la commande de vitesse vue en cours si les gains de contre réaction valent k1 k2 42.5306 : quelles sont les valeurs propres ? La commande est-elle stable ? Réponse à un échelon de consigne : y a-t-il un écart avec la consigne ? Comparer à l’animation Flash (commande clavier ‘v’) où k1 k2 42.5306 . 3. commande de la position de Lunar Lander On impose la loi de commande par retour d’état u n K ( c n X n ) . Les valeurs de K se trouvent dans le fichier ‘Kre.txt’. Noter les dimensions de K, et relever ces valeurs que l’on pourra ensuite modifier. Pour évaluer le comportement de ce système dans l’animation, on utilise le mode ‘commande par retour d’état’ (‘e’ au clavier), et on fixe les consignes x et y avec les flèches directionnelles (pour visualiser la consigne, saisir ‘x’ au clavier’).