RaspberryPi 3 RPIOでサーボモーターを動かす
RPIOをインストール
モーターは デジタル・マイクロサーボ SG90 を使いました
下記サイトを参考に github.com
こんな感じでインストール
cd ~ git clone https://github.com/metachris/RPIO.git --branch v2 --single-branch cd RPIO sudo python3.4 setup.py install
スクリプトを書く
root権限で実行しないといけないっぽい
from RPIO import PWM import time servo = PWM.Servo() pin = 14 def deg_to_width(deg): ''' 角度からパルス幅に変換 :param: deg 角度(-90~+90) :return: パルス幅 ''' center = 127 margin = 45 step = (center - margin) / 90.0 deg = max(-90.0, min(deg, 90.0)) return int(center + deg * step) * 10 while True: for x in [-90, 0, 90, 0]: servo.set_servo(pin, deg_to_width(x)) time.sleep(1)
ちなみにPWMとPCMは同時に使えないのでサーボ制御しながら音も出したいときはBluetoothスピーカーとかUSBサウンドカードを使ったほうがよさげ