GR-CITRUS編 第2回 サーボモーターを試してみる

今回は、サーボ―モーターを0度~180度まで、10度ずつ繰り返し動かしてみます

準備するもの

準備画像

部品名 個数
GR-CITRUS 1個
サーボモーター(SG90) 1個
ブレッドボード 1個
ジャンパーワイヤー 3本
microUSBケーブル 1本

ページトップ

ブレッドボードへの接続

(1) ブレッドボードへの接続を行っていきます

サーボfritzing画像

今回は、GR-CITRUSの8番ピンをPWM、5VをVCC、GNDをGroundに接続しています
※ サーボモーターは配線の色が少しわかりにくいので、データシートで確認していただくのがいいと思います

秋月電子さんのデータシート参考 => サーボモーターのデータシート

ページトップ

プログラムの作成

(1) プログラムを作成します

servo.rb

#!mruby
ch = 0
servo_pin = 8
angle = 0
angle_int = 10
servo_status = 0

# 8番ピンをサーボ用ピンに割り当てる

Servo.attach(ch, servo_pin)

# サーボの角度設定
Servo.write(ch, angle)

# サーボを10度ずつ動かす
loop do
    delay(500)
    if servo_status == 0
        angle = angle + angle_int
    else
        angle = angle - angle_int
    end
    if angle >= 180
        servo_status = 1
    elsif angle <= 0
        servo_status = 0
    end

    Servo.write(ch, angle)
end

ページトップ

ビルドと実行

(1) ビルドをします

ビルド

(2) 実行します

実行

接続画像

ページトップ