{"id":3118,"date":"2021-11-07T17:55:45","date_gmt":"2021-11-07T16:55:45","guid":{"rendered":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-moteur-pas-a-pas\/"},"modified":"2022-01-05T22:41:55","modified_gmt":"2022-01-05T21:41:55","slug":"utilisation-dun-servomoteur","status":"publish","type":"page","link":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/","title":{"rendered":"Utilisation d&rsquo;un servomoteur"},"content":{"rendered":"\n<p>L&rsquo;initialisation se fait par la m\u00e9thode <strong>set_pin_mode_servo(pin)<\/strong>.<\/p>\n\n\n\n<p>L&rsquo;\u00e9criture se fait par la m\u00e9thode <strong>servo_write(pin,angle)<\/strong>.<\/p>\n\n\n\n<p><em>Exemple d&rsquo;utilisation des touches du clavier<\/em><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">from pymata4 import pymata4\nimport sys\nimport time\nimport keyboard\n\n#------------ Les notes \u00e0 jouer\ndef on_left():\n    global angle\n    angle=0\n    carte.servo_write(Servo_pin,angle)\ndef on_right():\n    global angle\n    angle=180\n    carte.servo_write(Servo_pin,angle)\ndef on_up():\n    global angle\n    angle=90\n    carte.servo_write(Servo_pin,angle)    \ndef on_plus():\n    global angle\n    if angle&lt;=175:\n        angle=angle+5\n    else :\n        angle=180\n    carte.servo_write(Servo_pin, angle)\ndef on_moins():\n    global angle\n    if angle>=5:\n        angle=angle-5\n    else :\n        angle=0\n    carte.servo_write(Servo_pin,angle) \n\ncarte = pymata4.Pymata4()\n\nprint(\"--------------- D\u00e9but --------------\")\n# Constantes\nServo_pin = 7 # port du Servo : D7\nangle=0\n\n#----------------  programme principal\ntry :\n    keyboard.add_hotkey(\"left\",on_left)\n    keyboard.add_hotkey(\"right\",on_right)\n    keyboard.add_hotkey(\"up\",on_up)\n    keyboard.add_hotkey(\"+\",on_plus)\n    keyboard.add_hotkey(\"-\",on_moins)\n    carte.set_pin_mode_servo(Servo_pin)\n    time.sleep(1)\n    carte.servo_write(Servo_pin,angle)\n    while True:\n        time.sleep(1)\nexcept KeyboardInterrupt : # si on tape Ctl + C\n    print(\"--------------- Fin --------------\")\n    carte.shutdown()\n    sys.exit(0)\n    <\/pre>\n\n\n\n<p><em>En utilisant une classe<\/em><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">from pymata4 import pymata4\nimport sys\nimport time\nimport keyboard\n\n\n#------------------------ classe Servo\nclass Servo:\n    def __init__(self,pin,board):\n        self.pin=pin\n        self.angle=0\n        self.carte=board\n        \n        self.carte.set_pin_mode_servo(self.pin)\n        time.sleep(1)\n        self.maj_angle()\n        keyboard.add_hotkey(\"left\",self.on_left)\n        keyboard.add_hotkey(\"right\",self.on_right)\n        keyboard.add_hotkey(\"up\",self.on_up)\n        keyboard.add_hotkey(\"+\",self.on_plus)\n        keyboard.add_hotkey(\"-\",self.on_moins)       \n\n    def maj_angle(self):\n        self.carte.servo_write(self.pin,self.angle)\n    #------------ Les notes \u00e0 jouer\n    def on_left(self):\n        self.angle=0\n        self.maj_angle()\n    def on_right(self):\n        self.angle=180\n        self.maj_angle()\n    def on_up(self):\n        self.angle=90\n        self.maj_angle()   \n    def on_plus(self):\n        if self.angle&lt;=175:\n            self.angle=self.angle+5\n        else :\n            self.angle=180\n        self.maj_angle()\n    def on_moins(self):\n        if self.angle>=5:\n            self.angle=self.angle-5\n        else :\n            self.angle=0\n        self.maj_angle()\n    \n\ncarte = pymata4.Pymata4()\n\nprint(\"--------------- D\u00e9but --------------\")\n# Constantes\nServo_pin = 7 # port du Servo : D7\n\n#----------------  programme principal\ntry :\n    servo = Servo(Servo_pin,carte)\n    while True:\n        time.sleep(1)\nexcept KeyboardInterrupt : # si on tape Ctl + C\n    print(\"--------------- Fin --------------\")\n    carte.shutdown()\n    sys.exit(0)<\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p class=\"has-text-align-center\"><a href=\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/\">Retour \u00e0 la rubrique<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>L&rsquo;initialisation se fait par la m\u00e9thode set_pin_mode_servo(pin). L&rsquo;\u00e9criture se fait par la m\u00e9thode servo_write(pin,angle). Exemple d&rsquo;utilisation des touches du clavier En utilisant une classe Retour \u00e0 la rubrique<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3046,"menu_order":8,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3118","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Utilisation d&#039;un servomoteur - Maths &amp; Num\u00e9rique<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Utilisation d&#039;un servomoteur - Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"og:description\" content=\"L&rsquo;initialisation se fait par la m\u00e9thode set_pin_mode_servo(pin). L&rsquo;\u00e9criture se fait par la m\u00e9thode servo_write(pin,angle). Exemple d&rsquo;utilisation des touches du clavier En utilisant une classe Retour \u00e0 la rubrique\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/\" \/>\n<meta property=\"og:site_name\" content=\"Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"article:modified_time\" content=\"2022-01-05T21:41:55+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/\",\"url\":\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/\",\"name\":\"Utilisation d'un servomoteur - Maths &amp; Num\u00e9rique\",\"isPartOf\":{\"@id\":\"https:\/\/wordpress.callac.online\/#website\"},\"datePublished\":\"2021-11-07T16:55:45+00:00\",\"dateModified\":\"2022-01-05T21:41:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/wordpress.callac.online\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/python\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Arduino en Python : le module Pymata4\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Utilisation d&#8217;un servomoteur\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wordpress.callac.online\/#website\",\"url\":\"https:\/\/wordpress.callac.online\/\",\"name\":\"Maths & Num\u00e9rique\",\"description\":\"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique\",\"publisher\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wordpress.callac.online\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\",\"name\":\"dlefur\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"caption\":\"dlefur\"},\"logo\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\"},\"description\":\"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo\",\"sameAs\":[\"http:\/\/wordpress.callac.online\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Utilisation d'un servomoteur - Maths &amp; Num\u00e9rique","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/","og_locale":"fr_FR","og_type":"article","og_title":"Utilisation d'un servomoteur - Maths &amp; Num\u00e9rique","og_description":"L&rsquo;initialisation se fait par la m\u00e9thode set_pin_mode_servo(pin). L&rsquo;\u00e9criture se fait par la m\u00e9thode servo_write(pin,angle). Exemple d&rsquo;utilisation des touches du clavier En utilisant une classe Retour \u00e0 la rubrique","og_url":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/","og_site_name":"Maths &amp; Num\u00e9rique","article_modified_time":"2022-01-05T21:41:55+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/","url":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/","name":"Utilisation d'un servomoteur - Maths &amp; Num\u00e9rique","isPartOf":{"@id":"https:\/\/wordpress.callac.online\/#website"},"datePublished":"2021-11-07T16:55:45+00:00","dateModified":"2022-01-05T21:41:55+00:00","breadcrumb":{"@id":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/utilisation-dun-servomoteur\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/wordpress.callac.online\/"},{"@type":"ListItem","position":2,"name":"Python","item":"https:\/\/wordpress.callac.online\/index.php\/python\/"},{"@type":"ListItem","position":3,"name":"Arduino en Python : le module Pymata4","item":"https:\/\/wordpress.callac.online\/index.php\/python\/arduino-en-python-le-module-pymata4\/"},{"@type":"ListItem","position":4,"name":"Utilisation d&#8217;un servomoteur"}]},{"@type":"WebSite","@id":"https:\/\/wordpress.callac.online\/#website","url":"https:\/\/wordpress.callac.online\/","name":"Maths & Num\u00e9rique","description":"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique","publisher":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wordpress.callac.online\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":["Person","Organization"],"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940","name":"dlefur","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","caption":"dlefur"},"logo":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/"},"description":"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo","sameAs":["http:\/\/wordpress.callac.online"]}]}},"_links":{"self":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/3118","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/comments?post=3118"}],"version-history":[{"count":4,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/3118\/revisions"}],"predecessor-version":[{"id":3133,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/3118\/revisions\/3133"}],"up":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/3046"}],"wp:attachment":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/media?parent=3118"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}