Positioning a shaft to indicate a value with a servo motor
We can use the mraa.Pwm
class to control PWM on the PWM capable GPIO pin labeled ~3, as we learned in Chapter 4, Working with a RESTful API and Pulse Width Modulation. However, this would require us to read the detailed specs for the servo. The upm
library includes support for both the SeeedStudio Grove Servo or the EMAX 9g ES08A High Sensitive Mini Servo in the pyupm_servo
module. The ES08A
class declared in this module represents any of the two mentioned servors connected to our board.
The class makes it easy to set the desired angle for the servo shaft and work with angles instead of duty cycles and other PWM details. The class works with the mraa.Pwm
class under the hoods to configure PWM and control the duty cycle based on the desired angle for the shaft.
We will take the code we wrote in the previous example and we will use this code as a baseline to add the new features. The code file for the sample was iot_python_chapter_08_02...