{"id":233,"date":"2014-01-31T18:26:16","date_gmt":"2014-01-31T17:26:16","guid":{"rendered":"http:\/\/www.generationrobots.com\/blog\/?p=233"},"modified":"2023-03-28T15:20:34","modified_gmt":"2023-03-28T13:20:34","slug":"encodeurs-robotique-mobile","status":"publish","type":"post","link":"https:\/\/www.generationrobots.com\/blog\/fr\/encodeurs-robotique-mobile\/","title":{"rendered":"Les encodeurs pour la robotique mobile"},"content":{"rendered":"\n<html>\n <body>\n  <h2 class=\"wp-block-heading\" id=\"h-les-encodeurs-pour-les-robots-mobiles\">\n   Les encodeurs pour les robots mobiles\n  <\/h2>\n  \n  \n  <p>\n   Nous recevons r\u00e9guli\u00e8rement des questions concernant les encodeurs pour les roues des robots mobiles. Il nous appara\u00eet important de proposer un petit \u00e9tat des lieux.\n  <\/p>\n  \n  \n  <p>\n   Un encodeur est un dispositif \u00e9lectrom\u00e9canique qui g\u00e9n\u00e8re un signal \u00e9lectrique en fonction de la position ou du d\u00e9placement de l&rsquo;\u00e9l\u00e9ment mesur\u00e9. En robotique mobile, les encodeurs rotatifs sont utilis\u00e9s pour mesurer le d\u00e9placement (sens et vitesse de rotation) de chacune des roues du robot. On ne parlera pas des encodeurs lin\u00e9aires ici mais leur fonctionnement est semblable.\n  <\/p>\n  \n  \n  <p>\n   Un encodeur permet d\u2019obtenir une information en quasi-temps r\u00e9el sur la position et vitesse du moteur et donc d\u2019appliquer des corrections (on parle de\n   <strong>\n    boucle de contr\u00f4le\n   <\/strong>\n   ) si le comportement du moteur n\u2019est pas conforme \u00e0 l\u2019ordre qu\u2019on lui a transmis, ce qui arrive fr\u00e9quemment en fonction de la pente, de la capacit\u00e9 de la roue \u00e0 agripper sur le sol (la roue tourne plus vite si elle patine), de la charge utile\u2026\n  <\/p>\n  \n  \n  <p>\n   Sur un robot mobile \u00e0 deux roues (conduite diff\u00e9rentielle), la mesure effectu\u00e9e permet de d\u00e9duire le d\u00e9placement du robot, on parle d\u2019\n   <strong>\n    odom\u00e9trie\n   <\/strong>\n   . L\u2019odom\u00e9trie est utilis\u00e9e en conjonction avec d\u2019autres capteurs pour r\u00e9aliser des algorithmes de\n   <strong>\n    SLAM\n   <\/strong>\n   (\n   <em>\n    Simultaneous Localization and Mapping\n   <\/em>\n   ), largement \u00e9tudi\u00e9s en robotique mobile.\n  <\/p>\n  \n  \n  <p>\n   Vous l\u2019avez compris, un encodeur sur chaque roue de votre robot est indispensable !\n  <\/p>\n  \n  \n  <h2 class=\"wp-block-heading\" id=\"h-les-differents-types-d-encodeurs-pour-robots-mobiles\">\n   Les diff\u00e9rents types d\u2019encodeurs pour robots mobiles\n  <\/h2>\n  \n  \n  <p>\n   On distingue deux grands types d\u2019encodeurs incr\u00e9mentaux et absolus. Un encodeur incr\u00e9mental g\u00e9n\u00e8re un signal permettant de d\u00e9terminer sens et vitesse de rotation tandis qu\u2019un encodeur absolu g\u00e9n\u00e8re une information absolue indiquant la position du capteur.\n  <\/p>\n  \n  \n  <h2 class=\"wp-block-heading\" id=\"h-comment-fonctionne-un-encodeur-incremental\">\n   Comment fonctionne un encodeur incr\u00e9mental ?\n  <\/h2>\n  \n  \n  <p>\n   La plupart des encodeurs pour robots mobiles utilisent des capteurs optiques (mais il existe des encodeurs utilisant une information m\u00e9canique ou magn\u00e9tique). L\u2019id\u00e9e est de placer un disque alternant des zones transparentes et opaques devant un capteur de lumi\u00e8re et de rentre le disque solidaire de l\u2019axe de rotation de la roue. La fr\u00e9quence d\u2019apparition des zones blanches et noires (ou de tout autre principe offrant un contraste suffisant) devant le capteur de lumi\u00e8re va indiquer la vitesse de rotation. Le sch\u00e9ma suivant pr\u00e9sente le principe de fonctionnement basique de l\u2019encodeur :\n  <\/p>\n  \n  \n  <figure class=\"wp-block-image aligncenter\">\n   <a href=\"\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-FR.png\">\n    <img fetchpriority=\"high\" decoding=\"async\" width=\"300\" height=\"178\" alt=\"Sch\u00e9ma de fonctionnement d'un encodeur incr\u00e9mental\" class=\"wp-image-236\" src=\"http:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-FR-300x178.png\" srcset=\"https:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-FR-300x178.png 300w, https:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-FR.png 615w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/>\n   <\/a>\n  <\/figure>\n  \n  \n  <p>\n   Lorsque le disque tourne, les segments opaques bloquent la lumi\u00e8re alors que les segments transparents la laissent passer. Ceci g\u00e9n\u00e8re des impulsions d&rsquo;onde carr\u00e9e qui peuvent ensuite \u00eatre interpr\u00e9t\u00e9es comme position ou mouvement.\n  <\/p>\n  \n  \n  <p>\n   Si le fonctionnement pr\u00e9c\u00e9dent indique la vitesse de rotation, il n\u2019indique pas le sens de rotation. Ce probl\u00e8me est r\u00e9solu dans par l\u2019encodeur en quadrature (l\u2019encodeur en quadrature le nom que l\u2019on donne \u00e0 l\u2019encodeur rotatif incr\u00e9mental). L\u2019encodeur en quadrature comporte deux pistes de code dont les secteurs sont d\u00e9cal\u00e9s de 90 degr\u00e9s d&rsquo;une piste \u00e0 l&rsquo;autre. Ces deux pistes g\u00e9n\u00e8rent deux signaux de sortie. Si le premier signal devance le second alors le disque tourne dans le sens des aiguilles d&rsquo;une montre et dans l\u2019autre sens dans le cas contraire. Par cons\u00e9quent, en mesurant \u00e0 la fois le nombre d&rsquo;impulsions et les phases relatives des deux signaux on peut mesurer la position et la direction de la rotation des roues de votre robot.\n  <\/p>\n  \n  \n  <figure class=\"wp-block-image aligncenter\">\n   <a href=\"\/blog\/wp-content\/uploads\/2014\/01\/Quadrature.png\">\n    <img decoding=\"async\" width=\"300\" height=\"135\" alt=\"signal g\u00e9n\u00e9r\u00e9 par un encodeur rotatif incr\u00e9mental ou encodeur \u00e0 quadrature\" class=\"wp-image-234\" src=\"http:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Quadrature-300x135.png\" srcset=\"https:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Quadrature-300x135.png 300w, https:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Quadrature.png 482w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/>\n   <\/a>\n  <\/figure>\n  \n  \n  <h2 class=\"wp-block-heading\" id=\"h-comment-fonctionne-un-encodeur-absolu\">\n   Comment fonctionne un encodeur absolu ?\n  <\/h2>\n  \n  \n  <p>\n   La structure d\u2019un encodeur absolu est proche de celle d\u2019un encodeur incr\u00e9mental. Il y a le disque, la source de lumi\u00e8re et le capteur. La diff\u00e9rence r\u00e9side au niveau du disque. Au lieu de 2 ou 3 voies sur le disque comme dans l\u2019encodeur incr\u00e9mental, l\u2019encodeur absolu utilise un disque poss\u00e9dant de nombreux disques concentriques chacun comportant un motif diff\u00e9rent. La lecture de toutes les voies par un scan radial (c\u2019est-\u00e0-dire partant du centre du disque vers l\u2019ext\u00e9rieur) donne une information unique quel que soit l\u2019orientation du disque, information correspondant \u00e0 l\u2019orientation du disque.\n  <\/p>\n  \n  \n  <figure class=\"wp-block-image aligncenter\">\n   <a href=\"\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-absolu.png\">\n    <img decoding=\"async\" width=\"300\" height=\"150\" alt=\"Sch\u00e9ma d'un encodeur absolu\" class=\"wp-image-235\" src=\"http:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-absolu-300x150.png\" srcset=\"https:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-absolu-300x150.png 300w, https:\/\/www.generationrobots.com\/blog\/wp-content\/uploads\/2014\/01\/Encodeur-absolu.png 519w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/>\n   <\/a>\n  <\/figure>\n  \n <\/body>\n<\/html>","protected":false},"excerpt":{"rendered":"<p>Les encodeurs pour les robots mobiles Nous recevons r\u00e9guli\u00e8rement des questions concernant les encodeurs pour les roues des robots mobiles. Il nous appara\u00eet important de proposer un petit \u00e9tat des lieux. Un encodeur est un dispositif \u00e9lectrom\u00e9canique qui g\u00e9n\u00e8re un signal \u00e9lectrique en fonction de la position ou du d\u00e9placement de l&rsquo;\u00e9l\u00e9ment mesur\u00e9. En robotique[&#8230;]<br \/> <a class=\"button\" href=\"https:\/\/www.generationrobots.com\/blog\/fr\/encodeurs-robotique-mobile\/\" style=\"float:right;\">Read this article &gt;&gt;<\/a><\/p>\n","protected":false},"author":3,"featured_media":245,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10523],"tags":[],"class_list":["post-233","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-comparatifs-et-tests-produits"],"_links":{"self":[{"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/posts\/233","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/comments?post=233"}],"version-history":[{"count":11,"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/posts\/233\/revisions"}],"predecessor-version":[{"id":12089,"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/posts\/233\/revisions\/12089"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/media\/245"}],"wp:attachment":[{"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/media?parent=233"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/categories?post=233"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.generationrobots.com\/blog\/wp-json\/wp\/v2\/tags?post=233"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}