工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Bluetoothで複数サーボを制御:Arduino & Androidアプリ

必要な部品と材料

部品数量備考
Arduino UNO16個以上のサーボならMega推奨
HC-06 Bluetoothモジュール1または同等品
サーボモーター6テスト用なら1個でも可
ジャンパーワイヤーセット1
Android端末1制御アプリ用

プロジェクト概要

以前1サーボ制御アプリを作りましたが、今回は複数サーボ対応版を作成しました。Arduino側のコードも改良しています。

アプリ入手先: Google Play(要問い合わせでソースコード提供可能)

手順1:部品リストと配線

回路図通りに配線し、コードを書き込み、アプリをインストール、Bluetoothペアリング後接続すれば動作します。重要:RXD↔TX、TXD↔RXでクロス接続すること。書き込み時はBluetoothモジュールを外すこと。

手順2:HC-06の名前・PIN・ボーレート変更(任意)

USB-TTL変換アダプターでHC-06とPCを接続し、Arduino IDEのシリアルモニタでATコマンドを送信:

ソースコード

/* Danny van den Brande 作
   Androidアプリから複数サーボを制御。ピン数の許す限り追加可能。 */
#include <Servo.h>

Servo servo[10];  // 最大10個まで対応
byte serialA;

void setup() {
  servo[0].attach(9);  // サーボ1
  servo[1].attach(10); // サーボ2
  servo[2].attach(11); // サーボ3
  servo[3].attach(3);  // サーボ4
  servo[4].attach(5);  // サーボ5
  servo[5].attach(6);  // サーボ6
  // servo[6].attach(...); // 7個目以降はピン番号を指定して追加
  Serial.begin(9600);  // Bluetoothモジュールのボーレートに合わせる
}

void loop() {
  if (Serial.available() > 2) {
    serialA = Serial.read();
    Serial.println(serialA);
  }
  unsigned int servopos = Serial.read();
  unsigned int servopos1 = Serial.read();
  unsigned int realservo = (servopos1 * 256) + servopos;
  Serial.println(realservo);

  // サーボごとのコマンドレンジ:1000-1179, 2000-2179, 3000-3179...
  for (int i = 0; i < 6; i++) {
    int base = (i + 1) * 1000;
    if (realservo >= base && realservo < base + 180) {
      int angle = map(realservo, base, base + 180, 0, 180);
      servo[i].write(angle);
      Serial.print("servo "); Serial.print(i+1); Serial.println(" ON");
      delay(10);
      break;
    }
  }
  // 7個目以降はコメントアウト解除で追加可能
}

回路図

Bluetoothで複数サーボを制御:Arduino & Androidアプリ

製造プロセス

  1. シンプルPiロボット - Raspberry Piで2WD自律ローバーを構築
  2. Arduinoと1Sheeldで作る万能Androidリモコン──IR制御で家電を一括操作
  3. Arduino電源制御センター:N-FET/P-FET/リレー/RTC搭載キット
  4. Android加速度センサーで操作するラジコン車両:Raspberry Pi・Arduino・モーターシールド連携
  5. ArduinoとHC-SR04で作るサーボ駆動障害物回避ロボット
  6. ArduinoでBluetooth経由でLEDを制御 – シンプルDIYガイド
  7. DIY Arduino加湿器コントローラー:リレーを用いた安全な高電圧制御
  8. Arduino & MPU6050:SG90 & MG996Rサーボの精密制御
  9. Arduino UnoとBluetoothでラジコンカーを遠隔操作:ステップバイステップガイド
  10. サーボモーターの仕組みと重要性
  11. サーボモータ減速機の理解:機能、メリット、用途