1. 程式人生 > >樹莓派控制S90舵機

樹莓派控制S90舵機

  1. #!/usr/bin/env python  
  2. # coding: utf-8  
  3. import RPi.GPIO as GPIO  
  4. import time  
  5. import signal  
  6. import atexit  
  7. atexit.register(GPIO.cleanup)    
  8. servopin = 21  
  9. GPIO.setmode(GPIO.BCM)  
  10. GPIO.setup(servopin, GPIO.OUT, initial=False)  
  11. p = GPIO.PWM(servopin,50) #50HZ  
  12. p.start(0)  
  13. time.sleep(2)  
  14. while(True):  
  15.   for i in range(0,181,10):  
  16.     p.ChangeDutyCycle(2.5 + 10 * i / 180) #設定轉動角度  
  17.     time.sleep(0.02)                      #等該20ms週期結束  
  18.     p.ChangeDutyCycle(0)                  #歸零訊號  
  19.     time.sleep(0.2)  
  20.   for i in range(181,0,-10):  
  21.     p.ChangeDutyCycle(2.5 + 10 * i / 180)  
  22.     time.sleep(0.02)  
  23.     p.ChangeDutyCycle(0)  
  24.     time.sleep(0.2)