Arduino & MPU6050:SG90 & MG996Rサーボの精密制御
必要な部品と材料
| Arduino UNO | ×1 |
| DFRobot 6軸センサー MPU6050 | ×1 |
| SG90 マイクロサーボモーター | ×1 |
使用するアプリ
- Arduino IDE
このプロジェクトについて
部品構成
- Arduino UNO
- MPU6050(ジャイロスコープ+加速度センサー)
- MG 996R サーボモーター(SG90でも動作)
- ジャンパーワイヤー
接続方法
添付の接続図を参照してください。MPU6050のSDA/SCLピンは、ArduinoのA4/A5ピンに接続することも可能です(I2C通信用)。
プログラミング
添付のライブラリ(GY6050.h)をArduino IDEにインクルードし、コードをアップロードしてください。
注意事項
詳細な理解のためには動画を参照し、チャンネル登録をお願いします。
ソースコード
MPU6050ライブラリ
ライブラリファイル(GY6050.h)はダウンロード専用です。GitHub等から入手してください。
メインプログラム
// hammadiqbal12@gmail.com
// https://www.youtube.com/watch?v=Cvtr3LKdqvk
#include <GY6050.h> // ジャイロライブラリ
#include <Wire.h> // I2C通信
#include <Servo.h> // サーボ制御
Servo myservo;
int X = 0;
int Y = 0;
GY6050 gyro(0x68); // MPU6050のI2Cアドレス
void setup() {
Wire.begin(); // I2C初期化
gyro.initialisation(); // ジャイロ初期化
delay(100);
myservo.attach(9); // サーボをピン9に接続
}
void loop() {
// ジャイロのX/Y軸データを-90〜90度からサーボの0〜180度にマッピング
X = map(gyro.refresh('A', 'X'), -90, 90, 0, 180);
Y = map(gyro.refresh('A', 'Y'), -90, 90, 0, 180);
myservo.write(Y); // Y軸の傾きでサーボを制御
delay(15);
}
回路図
製造プロセス
- Satellite CCRMAキットでセンサー駆動オーディオエフェクトを構築
- Python連携で信頼性向上: Arduino RFID勤怠管理システム
- DHT11温湿度センサーで作る温度アラート – LEDとピエゾブザーで視覚/聴覚通知
- Arduino Dueと3.2インチTFTで作る温度監視付きリアルタイムクロック
- ArduinoとHC-SR04で作るサーボ駆動障害物回避ロボット
- ArduinoとAndroidでRoomba Create 2をリモコン操作 ─ Bluetooth経由のステップバイステップガイド
- Bolt IoTとArduino UNOでLED輝度をシームレス制御
- u-blox LEA-6H 02 GPSモジュール: Arduino & Python 統合ガイド
- Arduino Dueでマスターする音声認識と音声合成
- Arduino Unoで8×8 LEDマトリックスを制御:ステップバイステップガイド
- サーボモーターの仕組みと重要性