Python
RaspberryPi

Raspberry Piでサーボモータ制御

ほとんど以下の記事そのままです。記事中でも言及されていますが、間違った情報が散見されるような気がするので、これで動きましたという意味でここにも掲載します。

http://bufferoverruns.blogspot.jp/2016/08/raspberry-pisg-90.html

もともとは以下のようにServoBlasterというライブラリを使用していましたが、Linuxカーネル変更の影響か、全く反応しなくなってしまって代替策を探してたどり着いています(jessieでもstretchでも動かなかったです)。

http://qiita.com/lumbermill/items/218944f816bdb0483e3c

というわけでプログラムは以下の通り。

import time

import RPi.GPIO as GPIO

GPIO.setmode(GPIO.BCM)

gp_out = 4
GPIO.setup(gp_out, GPIO.OUT)
servo = GPIO.PWM(gp_out, 50)

servo.start(0.0)

for i in range(10):
servo.ChangeDutyCycle(2.5)
time.sleep(0.5)

servo.ChangeDutyCycle(12.0)
time.sleep(0.5)

GPIO.cleanup()

参考: Arduinoでサーボ制御