工作日記

忘備録として

Raspberry Pi でサーボモーターを動かしてみる①('ω')ノ

こんにちは!!今日はラズパイでサーボを動かしてみます('ω')ノ

手元にHDMI→miniHDMIの変換アダプタがないので、モニターの都合上4ではなく3のほうでやっていきます。

 

使用するのはタワープロのマイクロサーボSG90('ω')ノ

 

よく見る標準的なサーボモーターですね

サーボモータには3本の線がついていますが、

オレンジが制御信号

赤が電源+

黒が電源-

となっています('ω')ノ これを踏まえてさっそくうごかしていきましょう!!

 

まず端子にジャンプワイヤーを付けて

f:id:riderid:20210612123655j:plain

 

図のようにブレッドボードにつけます('ω')ノ

f:id:riderid:20210612123701j:plain

 

単に動かすためのコードは以下の通りです('ω')ノ

f:id:riderid:20210612124009j:plain

 

import RPI.GPIO as GPIO / GPIO.setmode(GPIO.BCM) はGPIOライブラリを使う上ではお決まりの言葉です('ω')ノ

GPIO内でピンの呼び方は2つあって、このBCMと他にBOARDというものがあります。今回はBCMを使ってます('ω')ノ

 

GPIO.setup(4, GPIO.OUT) 4ピンを出力ピンとして設定します。4ピンはオレンジを指しているので信号を送るピンでしたね

 

GPIO.PWM(4, 50)    (4ピン, 50Hz)という意味です('ω')ノ

4ピンは上の出力ピン、50HzはPWM信号の周期のことです。

PWMはPulse Width Modulationで、パルス幅変調とも言い、一定間隔で信号のローレベルとハイレベルを切り替えて、デジタル信号では本来表せないハイレベルとローレベルの中間の値を疑似的に表現する信号方式のことです。このPWM信号の周期に対するパルス幅の割合のことをデューティと呼びます('ω')ノ

(これについてはまた記事に出来たらなと思います)

 

p.start(0.0)はPWM信号を出力するメソッドで、()の中はデューティ比を浮動小数点で指定します('ω')ノ

 

p.ChangeDutyCycle(dc)はデューティ比を変更するメソッドです。

 

これを実行するとサーボは動きます('ω')ノ

これは単にサーボを動かすためのコードですが、次は角度を指定して色々動かしていきたいと思います。ではまた('ω')ノ

riderid.hatenablog.com