LoginSignup
7
7

More than 5 years have passed since last update.

BeagleBoneでPWM出力

Last updated at Posted at 2013-09-01

ubuntu 13.04をBeagleBoneに入れたらkernelが3.8になったせいか
/sys/devicesの構成が変わってpwm出力の方法が今までのと変わってたのでメモ

下ごしらえ

以下のコマンドで/sys/devices/ocp.2/pwm_test_P9_21.14にP9の21番ピンにPWM出力するためのファイルが出来上がる
/sys/devices/ocp.2/pwm_test_P9_21.14は環境で数字が違うかも

  • 要root
SLOTS=/sys/devices/bone_capemgr.7/slots
echo am33xx_pwm     > $SLOTS
echo bone_pwm_P9_21 > $SLOTS
cd /sys/devices/ocp.2/pwm_test_P9_21.14

PWM出力

10ms周期で2ms間オンにする

echo 10000000 > period
echo  2000000 > duty
echo 1 > run

runに1を書くと出力開始、0を書くと出力停止

サーボへの出力

サーボは大抵10〜20ms周期で1.5msで中立点

echo 2000000 > period
echo  150000 > duty
echo 0 > polarity
echo 1 > run

polarityは極性の設定。
初期値だと1になっていて、dutyで1.5msと設定としたら、1.5msオンで18.5msオフとなる。
それだとサーボが動かなかったので逆転しておく。
これで、dutyが100000〜200000くらいでサーボが動く

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7