{"id":344,"date":"2021-07-08T10:31:32","date_gmt":"2021-07-08T09:31:32","guid":{"rendered":"https:\/\/avionicsduino.com\/?page_id=344"},"modified":"2025-09-26T20:49:47","modified_gmt":"2025-09-26T19:49:47","slug":"lahrs","status":"publish","type":"page","link":"https:\/\/avionicsduino.com\/index.php\/fr\/lahrs\/","title":{"rendered":"L&rsquo;AHRS, le c\u0153ur de l&rsquo;EFIS"},"content":{"rendered":"\n<p style=\"font-size:10px\"><em>(L&rsquo;AHRS, page mise \u00e0 jour par Benjamin le 23\/03\/2024)<\/em><\/p>\n\n\n\n<p>L&rsquo;AHRS, pour \u00ab\u00a0Attitude and Heading Reference System\u00a0\u00bb est la partie de l&rsquo;EFIS la plus complexe. Ce n&rsquo;est pas en raison des composants qui le constituent (notamment les IMUs, cf. infra), car ils sont tr\u00e8s r\u00e9pandus, faciles \u00e0 trouver sur des cartes de prototypage et bon march\u00e9. C&rsquo;est en fait \u00e0 cause du logiciel qui fusionne les donn\u00e9es brutes des capteurs et en d\u00e9duit les angles qui permettent de d\u00e9crire la position de l&rsquo;a\u00e9ronef. Ce logiciel fait appel \u00e0 des notions math\u00e9matiques complexes, rarement ma\u00eetris\u00e9es par un amateur, m\u00eame averti.<\/p>\n\n\n\n<p>Le hardware est donc tr\u00e8s accessible et c&rsquo;est pour cela qu&rsquo;on voit fleurir sur le Web des r\u00e9alisations qui, pour certaines, peuvent sembler tr\u00e8s abouties, mais sans prendre le risque de se tromper, on peut dire que dans leur immense majorit\u00e9, elles n&rsquo;ont jamais \u00e9t\u00e9 test\u00e9es en vol avec succ\u00e8s.<\/p>\n\n\n\n<p>Le c\u0153ur d&rsquo;un AHRS est constitu\u00e9 d&rsquo;une centrale inertielle (gyrom\u00e8tre et acc\u00e9l\u00e9rom\u00e8tre, chacun sur 3 axes) g\u00e9n\u00e9ralement coupl\u00e9e \u00e0 un magn\u00e9tom\u00e8tre, \u00e9galement triaxial. Trois axes, qui permettent de fa\u00e7on g\u00e9n\u00e9rale de se rep\u00e9rer dans l&rsquo;espace et qui, pour les avions, ne sont pas choisis au hasard : l&rsquo;AHRS est \u00ab\u00a0cal\u00e9\u00a0\u00bb sur les axes de roulis, de tangage et de lacet.<\/p>\n\n\n\n<p>Les technologies actuelles ne font pas appel \u00e0 des gyroscopes m\u00e9caniques, mais \u00e0 des composants miniaturis\u00e9s semi-conducteurs, sans pi\u00e8ce en rotation, des MEMS, pour Micro Electro Mechanical Systems. On trouve ais\u00e9ment dans le commerce, pour quelques euros, des centrales \u00e0 inertie (ou  IMU, pour Inertial Measurement Unit) \u00e0 base de MEMS, associant un acc\u00e9l\u00e9rom\u00e8tre triaxial, un gyrom\u00e8tre triaxial, un magn\u00e9tom\u00e8tre triaxial et parfois un microcontr\u00f4leur 32 bits assurant la \u00ab\u00a0fusion\u00a0\u00bb des donn\u00e9es de ces 9 capteurs pour fournir en clair \u00e0 l&rsquo;utilisateur une orientation absolue sous la forme des 3 angles bien connus de tous les pilotes : inclinaison, assiette et cap. <\/p>\n\n\n\n<p>Les IMUs de ce type les plus connus sont le BNO055 de Bosch et le MPU9250 d&rsquo;Invensense. Il en existe bien d&rsquo;autres, plus r\u00e9cents et plus performants. Ces IMUs \u00e0 9 degr\u00e9s de libert\u00e9 sont utilis\u00e9s intensivement comme capteurs d&rsquo;orientation dans les contr\u00f4leurs de vol des drones multirotors, dans les smartphones, dans l&rsquo;industrie automobile, la robotique, etc. Mais lorsqu&rsquo;on cherche \u00e0 les utiliser dans un a\u00e9ronef \u00e0 voilure fixe, ils posent tous le m\u00eame probl\u00e8me r\u00e9dhibitoire. Et ce probl\u00e8me est intimement li\u00e9 \u00e0 la m\u00e9canique du vol des a\u00e9ronefs \u00e0 voilure fixe, laquelle n&rsquo;a rien \u00e0 voir avec celle des drones multirotors ou des v\u00e9hicules et applications terrestres, pour lesquels ces IMUs ont \u00e9t\u00e9 con\u00e7us.<\/p>\n\n\n\n<p>Prenons par exemple un BNO055, le plus connu et le plus r\u00e9pandu dans la communaut\u00e9 Arduino, et utilisons-le comme AHRS pour un horizon artificiel. Confortablement assis devant un bureau, tout se passe comme attendu. En statique, l&rsquo;attitude indiqu\u00e9e sur l&rsquo;\u00e9cran est strictement identique \u00e0 celle que l&rsquo;on impose manuellement \u00e0 cet \u00ab\u00a0AHRS\u00a0\u00bb, et avec une r\u00e9activit\u00e9 tr\u00e8s sup\u00e9rieure au besoin. Emportons maintenant ce m\u00eame syst\u00e8me en vol dans un avion (donc \u00e0 ailes fixes).<\/p>\n\n\n\n<p> En vol rectiligne horizontal stabilis\u00e9, l&rsquo;horizon artificiel reste parfaitement horizontal. Des petits mouvements sur les commandes de vols, vifs et de faible amplitude, avec retour rapide au vol horizontal rectiligne, sont parfaitement reproduits sur l&rsquo;\u00e9cran. Maintenant, mettons rapidement l&rsquo;avion en virage horizontal stabilis\u00e9 \u00e0 30\u00b0 d&rsquo;inclinaison. Au d\u00e9but du virage, l&rsquo;horizon semble suivre correctement le mouvement pendant un bref instant. Mais au bout d&rsquo;une ou deux secondes, il commence \u00e0 revenir vers une position sugg\u00e9rant un vol rectiligne horizontal, position qu&rsquo;il atteint finalement en deux ou trois secondes suppl\u00e9mentaires, pour s&rsquo;y maintenir ind\u00e9finiment, alors que l&rsquo;avion est toujours en virage \u00e0 30\u00b0 ! Un tel AHRS ne sert bien \u00e9videmment \u00e0 rien ! <\/p>\n\n\n\n<p>La raison de ce ph\u00e9nom\u00e8ne est la suivante : le BNO055, comme tous les autres IMUs \u00e0 6 ou 9 degr\u00e9s de libert\u00e9, ne peut pas distinguer l&rsquo;acc\u00e9l\u00e9ration due \u00e0 la gravit\u00e9 terrestre de celle, centrifuge, li\u00e9e au virage. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"885\" height=\"496\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2021\/07\/3_axesXYZ.jpg\" alt=\"\" class=\"wp-image-629\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2021\/07\/3_axesXYZ.jpg 885w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2021\/07\/3_axesXYZ-300x168.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2021\/07\/3_axesXYZ-768x430.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Fig. 1 : Les 3 axes X, Y, Z d&rsquo;un avion<\/figcaption><\/figure>\n\n\n\n<p>S&rsquo;il y a une acc\u00e9l\u00e9ration uniquement sur l&rsquo;axe Z, et aucune sur les axes X et Y (voir la figure 1), et c&rsquo;est le cas en virage coordonn\u00e9, le BNO055 et les autres IMUs de cette cat\u00e9gorie en d\u00e9duisent \u00e0 tort que l&rsquo;avion est horizontal dans le rep\u00e8re terrestre. L&rsquo;acc\u00e9l\u00e9ration r\u00e9sultant de la somme des vecteurs de la pesanteur et de l&rsquo;acc\u00e9l\u00e9ration centrifuge est interpr\u00e9t\u00e9e de fa\u00e7on erron\u00e9e comme \u00e9tant li\u00e9e \u00e0 la seule gravit\u00e9, puisque le pilote maintient le vecteur de cette acc\u00e9l\u00e9ration r\u00e9sultante dans le plan de sym\u00e9trie de l&rsquo;avion&#8230; gr\u00e2ce \u00e0 la bille! En IMC, notre oreille interne est tromp\u00e9e de la m\u00eame fa\u00e7on.<\/p>\n\n\n\n<p>Il manque donc \u00e0 ces IMU le moyen d&rsquo;isoler le vecteur inertiel du vecteur non inertiel, afin de pouvoir calculer  de fa\u00e7on fiable la position de l&rsquo;avion par rapport au rep\u00e8re terrestre galil\u00e9en (ou inertiel). <\/p>\n\n\n\n<p>Ceux qui s&rsquo;int\u00e9ressent \u00e0 la m\u00e9canique du vol des a\u00e9ronefs \u00e0 voilure fixe se souviennent qu&rsquo;on peut d\u00e9terminer l&rsquo;inclinaison d&rsquo;un avion en virage si on conna\u00eet le rayon du virage et la vitesse sur la trajectoire. En vol, il n&rsquo;est pas facile de mesurer le rayon du virage qu&rsquo;on est en train d&rsquo;effectuer (!) mais on peut le d\u00e9duire de la vitesse et de ce qu&rsquo;on appelait \u00ab\u00a0autrefois\u00a0\u00bb la cadence, c&rsquo;est-\u00e0-dire la vitesse angulaire, celle \u00e0 laquelle \u00ab\u00a0d\u00e9file\u00a0\u00bb le compas ou le conservateur de cap.<\/p>\n\n\n\n<p>Ces donn\u00e9es suppl\u00e9mentaires sont donc indispensables pour r\u00e9aliser le calcul de l&rsquo;angle de roulis. Les EFIS du commerce ont deux solutions pour r\u00e9cup\u00e9rer ces donn\u00e9es : soit ils utilisent, en sus des gyrom\u0117tres qui sont toujours affect\u00e9s d&rsquo;une d\u00e9rive plus ou moins rapide, un magn\u00e9tom\u00e8tre int\u00e9gr\u00e9 pour aider \u00e0 calculer la vitesse angulaire, et sont reli\u00e9s aux circuits de pressions statique ET dynamique pour calculer la vitesse de l&rsquo;avion, soit ils exploitent les donn\u00e9es d&rsquo;un GPS\/GNSS qui fourni (entre autres) la vitesse sol et la route vraie (track). Le plus souvent les deux solutions sont utilis\u00e9es, pour pouvoir compter sur au moins une source de donn\u00e9es en cas de d\u00e9faillance de l&rsquo;autre.<\/p>\n\n\n\n<p>Les calculs math\u00e9matiques n\u00e9cessaires \u00e0 cette fusion de donn\u00e9es font appel \u00e0 des notions <a href=\"https:\/\/www.pittnerovi.com\/jiri\/hobby\/electronics\/avionics\/ahrs_notes.pdf\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"maths fusion\">particuli\u00e8rement complexes<\/a>, hors de la port\u00e9e d&rsquo;un non-sp\u00e9cialiste. N&rsquo;ayant pas les comp\u00e9tences requises dans ce domaine, il fallait donc, pour notre EFIS, trouver une solution professionnelle. Elle nous a initialement \u00e9t\u00e9 apport\u00e9e par la Soci\u00e9t\u00e9 Naveol, qui nous a fourni un prototype int\u00e9grant un GNSS Ublox, une centrale inertielle 6 DOF STMicroelectronics (acc\u00e9l\u00e9rom\u00e8tre triaxial et gyrom\u00e8tre triaxial) et un microcontr\u00f4leur assurant la fusion des donn\u00e9es. Ce module \u00e9tait aliment\u00e9 en 5 volts, comme la carte Teensy (voir ici) utilis\u00e9e dans l&rsquo;EFIS. Il communiquait avec cette derni\u00e8re par la voie s\u00e9rie \u00e0 115200 bauds. En vol, il fournissait de fa\u00e7on parfaitement exacte et pr\u00e9cise les angles de tangage et de roulis, les vitesses angulaires sur les 3 axes, les acc\u00e9l\u00e9rations sur les 3 axes, la route GPS et la vitesse verticale (vario).<\/p>\n\n\n\n<p>Malheureusement, ce module n&rsquo;\u00e9tait ni open source ni open hardware. De plus, la version commerciale qui aurait pu voir le jour n&rsquo;a finalement jamais \u00e9t\u00e9 d\u00e9velopp\u00e9e, peut-\u00eatre en raison de l&rsquo;incertitude sur les d\u00e9bouch\u00e9s commerciaux, peut-\u00eatre aussi en raison d&rsquo;\u00e9ventuels probl\u00e8mes de responsabilit\u00e9. Comme nous l&rsquo;avait pr\u00e9cis\u00e9 NAVEOL, et cela convient bien au monde de l&rsquo;aviation non certifi\u00e9e : \u00ab\u00a0Cet AHRS n&rsquo;est pas certifi\u00e9, ni con\u00e7u pour apporter une quelconque aide aux pilotes. Aucune garantie n\u2019est fournie sur la pr\u00e9cision et la fiabilit\u00e9 des donn\u00e9es. Ce produit est d\u00e9riv\u00e9 de mat\u00e9riel pour mod\u00e8les r\u00e9duits\u00a0\u00bb. Ces caract\u00e9ristiques sont pr\u00e9cis\u00e9ment celles que nous recherchions, afin de respecter notre cahier des charges en ce qui concerne la ma\u00eetrise des co\u00fbts.<\/p>\n\n\n\n<p>Les constructeurs amateurs d&rsquo;avions sont habitu\u00e9s \u00e0 ce genre de restriction. Il en est de m\u00eame de leurs passagers qui, pendant le vol, ont sous les yeux le petit panneau r\u00e9glementaire qui pr\u00e9cise : <em>\u00ab\u00a0ATTENTION : cet a\u00e9ronef ne r\u00e9pond pas aux conditions de d\u00e9livrance du certificat de navigabilit\u00e9&#8230; etc . etc.\u00a0\u00bb<\/em><\/p>\n\n\n\n<p>Toujours est-il qu&rsquo;il nous a fallu chercher une autre solution. Elle est venue d&rsquo;un algorithme de fusion de donn\u00e9es de type Extended Kalman Filter (ou EKF) d\u00e9velopp\u00e9 par Adhika Lie de l&rsquo;Universit\u00e9 du Minnesota, et disponible en t\u00e9l\u00e9chargement dans le domaine public <a href=\"https:\/\/github.com\/FlyTheThings\/uNavINS\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"UNav INS\">via ce lien<\/a>. Cet algorithme (UNav INS) a \u00e9t\u00e9 modifi\u00e9 et adapt\u00e9 au monde Arduino\/Teensy par <a href=\"https:\/\/bolderflight.com\/team.html\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Bolder Flight System\">Brian R. Taylor<\/a> de la soci\u00e9t\u00e9 Bolder Flight Systems, et il a fait l&rsquo;objet d&rsquo;une discussion technique prolong\u00e9e sur le <a href=\"https:\/\/forum.pjrc.com\/threads\/48856-uNav-INS\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Forum PJRC\">forum PJRC<\/a>. De nombreuses am\u00e9liorations ont \u00e9t\u00e9 progressivement apport\u00e9es, la version la plus r\u00e9cente, celle qui est utilis\u00e9e dans notre AHRS, est disponible en t\u00e9l\u00e9chargement <a href=\"https:\/\/forum.pjrc.com\/threads\/48856-uNav-INS\/page31\/post#759\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"T\u00e9l\u00e9chargement UNav INS\">ici<\/a> (post #759).<\/p>\n\n\n\n<p>La centrale inertielle Invensense 9DOF  MPU9250 utilis\u00e9e dans les exemples fournis avec la biblioth\u00e8que UNav INS est obsol\u00e8te, et de plus en plus difficile \u00e0 trouver dans le commerce. De plus, les sites de vente en ligne sont inond\u00e9s de clones de provenance douteuse qui ne fonctionnent pas. Nous avons donc adapt\u00e9 l&rsquo;algorithme pour utiliser des capteurs STMicroelectronics plus r\u00e9cents et plus performants, tr\u00e8s faciles \u00e0 trouver dans le commerce : le  LSM6DSOX (acc\u00e9l\u00e9rom\u00e8tre triaxial et gyrom\u00e8tre triaxial) et le LIS3MDL (magn\u00e9tom\u00e8tre triaxial). Ces deux capteurs sont associ\u00e9s sur la carte <a href=\"https:\/\/www.adafruit.com\/product\/4517\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Adafruit 4517\">Adafruit 4517<\/a>.<\/p>\n\n\n\n<p>Notre AHRS (fig. 2) est architectur\u00e9 autour de ces capteurs et d&rsquo;un GNSS U-Blox NEOM9N  mont\u00e9 sur une <a href=\"https:\/\/www.sparkfun.com\/products\/15712\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Sparkfun NEOM9N\">carte SparkFun<\/a>. Le logiciel de fusion des donn\u00e9es tourne sur une carte Teensy 4.0. Pour pouvoir le tester rapidement avec l&rsquo;EFIS d\u00e9j\u00e0 install\u00e9 dans l&rsquo;avion, lui-m\u00eame con\u00e7u, c\u00e2bl\u00e9 et programm\u00e9 pour l&rsquo;AHRS NAVEOL, la connectique reprend celle du bo\u00eetier NAVEOL, avec une sortie UART s\u00e9rie (broches Tx et Rx). Mais il existe \u00e9galement une interface CAN Bus (broches CAN H et CAN L) qui doit \u00eatre utilis\u00e9e avec la version appropri\u00e9e du logiciel, voir le fichier README sur le d\u00e9pot GitHub. L&rsquo;avantage majeur de l&rsquo;AHRS AvionicsDuino par rapport au Naveol, c&rsquo;est qu&rsquo;il est int\u00e9gralement open source open hardware, tout peut \u00eatre modifi\u00e9 et personnalis\u00e9.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"589\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2-1024x589.jpg\" alt=\"\" class=\"wp-image-1868\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2-1024x589.jpg 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2-300x173.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2-768x442.jpg 768w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2-1536x884.jpg 1536w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2-1200x691.jpg 1200w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2.jpg 1800w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 2 : l&rsquo;AHRS AvionicsDuino qui a remplac\u00e9 l&rsquo;AHRS Naveol<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Installation dans l&rsquo;a\u00e9ronef<\/h3>\n\n\n\n<p>L&rsquo;AHRS doit \u00eatre parfaitement align\u00e9 avec les trois axes de roulis, de tangage et de lacet de l&rsquo;avion en ligne de vol horizontal rectiligne.<\/p>\n\n\n\n<p>L&rsquo;orientation est la suivante : les cartes Teensy et IMU sont sur le dessus, la carte GNSS est en dessous, et le connecteur de sortie \u00e0 6 broches est \u00e0 l&rsquo;arri\u00e8re.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">R\u00e9sultats<\/h3>\n\n\n\n<p>Les premiers tests en vol ont \u00e9t\u00e9 d&#8217;embl\u00e9e tr\u00e8s satisfaisants, l&rsquo;horizon de l&rsquo;EFIS AvionicsDuino avec l&rsquo;AHRS AvionicsDuino suit tr\u00e8s fid\u00e8lement celui de l&rsquo;EFIS Dynon D10A (vid\u00e9o 1), ainsi que l&rsquo;horizon naturel (vid\u00e9o 2). <\/p>\n\n\n\n<p>Les deux programmes EFIS et EMS qu&rsquo;on voit \u00e0 l&rsquo;\u0153uvre dans les vid\u00e9os ci-dessus sont des versions anciennes. De nombreuses am\u00e9liorations et corrections ont depuis \u00e9t\u00e9 ajout\u00e9es. Tous les param\u00e8tres affich\u00e9s par l&rsquo;EFIS ont \u00e9t\u00e9 valid\u00e9s rigoureusement, durant de nombreux autres vols d&rsquo;essai.<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"1088\" style=\"aspect-ratio: 1920 \/ 1088;\" width=\"1920\" controls src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/09\/AHRSV2_01bis.mp4\"><\/video><figcaption class=\"wp-element-caption\">Vid\u00e9o 1 : Comparaison EFIS AvionicsDuino et Dynon D10A<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"1920\" style=\"aspect-ratio: 1080 \/ 1920;\" width=\"1080\" controls src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2025\/07\/AHRSV2_03.mp4\"><\/video><figcaption class=\"wp-element-caption\">Vid\u00e9o 2 : Comparaison EFIS AvionicsDuino et horizon naturel<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">R\u00e9alisation pratique<\/h3>\n\n\n\n<p><a href=\"https:\/\/github.com\/bfrmd\/EFIS-AHRS-AvionicsDuino\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"T\u00e9l\u00e9chargement du programme de l'AHRS sur GitHub\">T\u00e9l\u00e9chargement du programme AHRS AvionicsDuino appropri\u00e9 depuis GitHub<\/a> <\/p>\n\n\n\n<p>La version 2.0 ou ult\u00e9rieure de ce logiciel ne doit \u00eatre utilis\u00e9e qu&rsquo;avec le logiciel de l&rsquo;EFIS_Remote_Module version 2.0 ou ult\u00e9rieure et le logiciel EFIS version 3.0 ou ult\u00e9rieure. Cela est d\u00fb aux modifications importantes de la configuration du bus CAN qui ont \u00e9t\u00e9 r\u00e9alis\u00e9es lorsque la ligne de communication s\u00e9rie UART qui reliait l&rsquo;EFIS \u00e0 l&rsquo;AHRS a \u00e9t\u00e9 ot\u00e9e et que l&rsquo;AHRS a \u00e9t\u00e9 raccord\u00e9 au bus CAN.<\/p>\n\n\n\n<p>La version 1.3 doit \u00eatre utilis\u00e9e avec le logiciel EFIS_Remote_Module V 1.0, le logiciel EFIS V 2.5 et une ligne de communication s\u00e9rie UART entre AHRS et EFIS. Ces versions anciennes ne seront plus mises \u00e0 jour.<\/p>\n\n\n\n<p>Il faut extraire les biblioth\u00e8ques Bolder Flight System (dossier 3rdPartyLib) dans le dossier des biblioth\u00e8ques Arduino.<\/p>\n\n\n\n<p>T\u00e9l\u00e9charger (<a href=\"https:\/\/github.com\/adafruit\/Adafruit_LSM6DS\" target=\"_blank\" rel=\"noreferrer noopener\">ici&nbsp;<\/a>et <a href=\"https:\/\/github.com\/adafruit\/Adafruit_LIS3MDL\" target=\"_blank\" rel=\"noreferrer noopener\">l\u00e0<\/a>) puis installer les biblioth\u00e8ques Adafruit dans le dossier des biblioth\u00e8ques Arduino.<\/p>\n\n\n\n<p>Le GNSS U-Blox Neo M9N doit \u00eatre <a href=\"https:\/\/avionicsduino.com\/?page_id=2697&amp;preview=true\" title=\"Configuration du GNSS NEO-M9N\">configur\u00e9 gr\u00e2ce au logiciel u-Blox u-Center<\/a>. <\/p>\n\n\n\n<p>Il est possible de le configurer manuellement en activant l&rsquo;un apr\u00e8s l&rsquo;autre les messages n\u00e9cessaires sur la sortie UART1, sortie qui doit elle-m\u00eame \u00eatre correctement configur\u00e9e. Cette configuration manuelle constitue un bon exercice pour bien comprendre le fonctionnement et la \u00ab\u00a0philosophie\u00a0\u00bb u-Blox. <\/p>\n\n\n\n<p>On peut \u00e9galement faire cette configuration plus simplement, \u00e0 l&rsquo;aide d&rsquo;un fichier de configuration t\u00e9l\u00e9chargeable ci-dessous. Attention, il faut utiliser un fichier de configuration correspondant \u00e0 la version du firmware du NEO-M9N. Voir sur la page <a href=\"https:\/\/avionicsduino.com\/index.php\/fr\/configuration-du-gnss-u-blox\/\" target=\"_blank\" rel=\"noopener\" title=\"Configuration du GNSS u-Blox\">Configuration du GNSS<\/a> la fa\u00e7on de proc\u00e9der \u00e0 la configuration automatis\u00e9e \u00e0 l&rsquo;aide de ce fichier. <\/p>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-ba0c37dd-1238-4683-9b1b-50332a9cc3d1\" href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2024\/02\/Configuration_NEOM9N_Avionicsduino_AHRS.txt\">Fichier de configuration pour firmware v 4.00<\/a><a href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2024\/02\/Configuration_NEOM9N_Avionicsduino_AHRS.txt\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-ba0c37dd-1238-4683-9b1b-50332a9cc3d1\">T\u00e9l\u00e9charger<\/a><\/div>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-5eae8c24-018b-484f-87bc-b89ee321ca20\" href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2024\/02\/Configuration_NEOM9N_Avionicsduino_AHRS_firmware404.txt\">Fichier de configuration pour firmware v 4.04<\/a><a href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2024\/02\/Configuration_NEOM9N_Avionicsduino_AHRS_firmware404.txt\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-5eae8c24-018b-484f-87bc-b89ee321ca20\">T\u00e9l\u00e9charger<\/a><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>La biblioth\u00e8que Bolder Flight Systems Ublox d\u00e9code les donn\u00e9es des messages suivants :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>UBX-NAV-DOP<\/li>\n\n\n\n<li>UBX-NAV-EOE<\/li>\n\n\n\n<li>UBX-NAV-POSECEF<\/li>\n\n\n\n<li>UBX-NAV-PVT<\/li>\n\n\n\n<li>UBX-NAV-VELECEF<\/li>\n\n\n\n<li>UBX-NAV-TIMEGPS<\/li>\n<\/ul>\n\n\n\n<p>Tous ces messages doivent donc \u00eatre activ\u00e9s dans le U-Center sur la sortie UART1 du GNSS. Cette sortie doit \u00eatre configur\u00e9e \u00e0 921600 bauds. Le param\u00e8tre CFG-RATE-MEAS doit \u00eatre r\u00e9gl\u00e9 sur 50 ms pour obtenir une fr\u00e9quence de sortie des messages de 20 Hz.<\/p>\n\n\n\n<p style=\"font-size:14px\"><a href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2022\/10\/AHRS_AvionicsDuino_V1_Kicad6_Files.zip\" title=\"Fichiers Kicad pour l'AHRS AvionicsDuino\">T\u00e9l\u00e9chargement des fichiers Kicad 6 de l&rsquo;AHRS AvionicsDuino V1<\/a><\/p>\n\n\n\n<p style=\"font-size:14px\"><a href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/05\/AHRS_Gerber_and_drill_files.zip\" title=\"T\u00e9l\u00e9chargement des fichiers Gerber et per\u00e7age\">T\u00e9l\u00e9chargement des fichiers Gerber et per\u00e7age<\/a><\/p>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-c9d3f9f5-272c-4c6d-80b1-693575e332e1\" href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/AHRS_01_BOM.zip\">AHRS_01 : T\u00e9l\u00e9chargement de la nomenclature des composants<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>(L&rsquo;AHRS, page mise \u00e0 jour par Benjamin le 23\/03\/2024) L&rsquo;AHRS, pour \u00ab\u00a0Attitude and Heading Reference System\u00a0\u00bb est la partie de l&rsquo;EFIS la plus complexe. Ce n&rsquo;est pas en raison des composants qui le constituent (notamment les IMUs, cf. infra), car ils sont tr\u00e8s r\u00e9pandus, faciles \u00e0 trouver sur des cartes de prototypage et bon march\u00e9. &hellip; <a href=\"https:\/\/avionicsduino.com\/index.php\/fr\/lahrs\/\" class=\"more-link\">Continuer la lecture<span class=\"screen-reader-text\"> de &laquo;&nbsp;L&rsquo;AHRS, le c\u0153ur de l&rsquo;EFIS&nbsp;&raquo;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-344","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages\/344","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/comments?post=344"}],"version-history":[{"count":94,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages\/344\/revisions"}],"predecessor-version":[{"id":5008,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages\/344\/revisions\/5008"}],"wp:attachment":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/media?parent=344"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}