SG90サーボ用の2軸カメラマウントが到着
先月末ごろに注文して、やっと届きました。
間に旧正月を挟んだからでしょうかね?3週間近くもかかって到着。
もう届かないんじゃないかと思って販売元(Amazonで注文)に連絡しようかと思った矢先だったので、間一髪でしたね。
中身はこれだけ。くみ上げ方もなく、一体どうやって組み立てるのかわからず。
下記サイトを参考に作ってみました。
Raspberry Piでサーボコントロール、Part1 上下・左右の2軸を動かす | ものづくりエクスペリメント
このカメラマウント以外に準備するのは、SG90サーボ2個と、サーボに付属のアームが2つ。
このマウント、サーボに付属のアームをこうやって取り付けて利用します・・・
が、そのままでは大きすぎてつきません。
大体このあたりくらいでカットして
なんとか収まりました。
というか、なんでSG90サーボ アームにあわせないでしょうねぇ・・・
ベースの部分なんてもっと悲惨で
こうしてアームをカットしただけでははまりません。
カッターで削ってどうにかはまる形状にしました。
ちっこい木ねじがあるので、このサーボアームと台座をこのねじで固定すればいいんですが、穴位置が微妙にずれてるため、1mmのピンバイスで穴を開けてつけます。
が、台座側につけるねじは3本だけ。
こっちに2本付けたら、1本足りません。
なんともアバウトな製品です。
このアーム部分にサーボを一個取り付け、長めの木ねじで固定。
マウント側につけるサーボも
やはり木ねじで固定。
ボルト&ナットがついてましたが、まるで使うことなく
完成。
参考にした記事とも違うつくり方で出来ちゃいましたけど、一体どういうつくり方が正解なんでしょうかね?この製品。
せっかく出来たので、早速テストです。
なお、PCA9685用のUSB電源ケーブルは、百均で充電専用microUSBケーブルを切ってつくりました。
こんな感じにつなげます。
マウント部分のサーボを0番に、ベース部分のサーボを1番につなげました。
スイッチオン!
ここから先は以下のサイトを参考にI2Cを有効化し
Raspberry Pi の I2C を有効化する方法 (2015年版) - 意識低い開発者のBlog
必要なソフトをあらかじめ入手して
sudo apt-get install i2c-tools
sudo apt-get install python-smbus
sudo apt-get install git
以下のコマンドを打ち込んでAdafruitのPWM Servo Driverを入手し
git clone https://github.com/adafruit/Adafruit-Raspberry-Pi-Python-Code.git
サンプルコードのあるディレクトリに移動します。
cd Adafruit-Raspberry-Pi-Python-Code/Adafruit_PWM_Servo_Driver
ここにある”Servo_Example.py”を以下のように書き換えます。
# ===========================================================================
# Example Code
# ===========================================================================
# Initialise the PWM device using the default address
pwm = PWM(0x40)
# Note if you'd like more debug output you can instead run:
#pwm = PWM(0x40, debug=True)
servoMin = 150 # Min pulse length out of 4096
servoMax = 600 # Max pulse length out of 4096
servoMid = 375 # Mid pulse length out of 4096
def setServoPulse(channel, pulse):
pulseLength = 1000000 # 1,000,000 us per second
pulseLength /= 60 # 60 Hz
print "%d us per period" % pulseLength
pulseLength /= 4096 # 12 bits of resolution
print "%d us per bit" % pulseLength
pulse *= 1000
pulse /= pulseLength
pwm.setPWM(channel, 0, pulse)
pwm.setPWMFreq(60) # Set frequency to 60 Hz
while (True):
# Change speed of continuous servo on channel O
pwm.setPWM(1, 0, servoMin)
time.sleep(1)
pwm.setPWM(1, 0, servoMax)
time.sleep(1)
pwm.setPWM(1, 0, servoMid)
time.sleep(1)
pwm.setPWM(0, 0, servoMax)
time.sleep(1)
pwm.setPWM(0, 0, servoMid)
time.sleep(1)
下のサーボを動作するところだけ書き換えました。簡単に言うと
1番(土台部分を回転するサーボ)は0度、90度、180度回転。
0番(マウント部分を回転するサーボ)は90度と180度回転。
マウント部のサーボは90度以下の回転をさせると間違いなく燃えるため、要注意。
最初だけは上のマウントをはずしてサーボのみで回転を確認しておいた方が無難ですね。
とりあえずテスト動作は
問題なく終了。
ただ、土台の部分がぴったりとはまりませんね。どうしてもちょっとゆがんだ位置でついてしまいます。
さて、これも買ったものの使い道を考えてませんね。
カメラマウントという製品名ですが、マウント部分もあまりカメラがつきそうな形してませんし。
何か使い道が沸いたら活用してみようかと思ってます。
« Y!mobileでiPhone 5s 16GBが月額3,980円で入手可能に!? | トップページ | 3Dスキャナ/プリンターが一体化したPCレスで3Dコピー可能な3Dプリンター”ZEUS” »
「Raspberry Pi・Arduino・電子工作」カテゴリの記事
- 名古屋 大須へ行ってきました(2024.04.28)
- Raspberry Pi 5用電源購入(2024.04.19)
- Interface 2024年5月号はRaspberry Pi 5特集(2024.03.26)
- Raspberry Pi 5とPCがつながらなかった理由は「プライバシーセパレーター機能」のせいでした(2024.03.12)
- Raspberry Pi 5に日本語LLM(ELYZA-Japanese-Llama-2-7b-fast-Instruct)を入れてみた(2024.03.10)
« Y!mobileでiPhone 5s 16GBが月額3,980円で入手可能に!? | トップページ | 3Dスキャナ/プリンターが一体化したPCレスで3Dコピー可能な3Dプリンター”ZEUS” »
コメント