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

AndroidアプリでArduinoロボットアームを制御する

コンポーネントと消耗品

LittleArm
× 1
Arduino UNO
× 1
HC-05Bluetoothモジュール
× 1
Androidデバイス
× 1
LittleArm-フルキット
× 1

アプリとオンラインサービス

Android
Arduino IDE

このプロジェクトについて

このチュートリアルは、このページのリソースに基づいています。

LittleArmは、従来、WindowsおよびLinuxで実行される無料のデスクトップコンピューターアプリケーションを使用して制御されます。ただし、これには、LittleArmを制御対象のコンピューターに接続する必要があります。ついにLittleArmのアプリが完成し、BluetoothでArduinoをワイヤレスで制御できるようになりました。

このアプリを使用すると、LittleArmのすべてのDOFを制御できるだけでなく、コマンドのセットを記録して再生することもできます。 Arduinoのコードは、ここからのソフトウェアパッケージの従来のコードから変更されていません。

このプロジェクトのLittleArmアプリはここからダウンロードできます。

<図>

コード

  • Arduinoコード
Arduinoコード Arduino
このコードは、Bluetoothまたはusb
 #include  // arduino library#include  // standard c library#define PI 3.141Servo baseServo;を介して、デスクトップまたはAndroidアプリで使用できます。サーボshoulderServo;サーボelbowServo;サーボgripperServo; intコマンド; structjointAngle {int base; intショルダー; int elbow;}; intdesiredGrip; intgripperPos; intdesiredDelay; intservoSpeed =15; intready =0; structjointAngledesiredAngle; //サーボの望ましい角度// +++++++++++++++関数宣言++++++++++++++++++++++++ +++ intservoParallelControl(int thePos、Servo theServo); // +++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++ void setup(){Serial.begin(9600); baseServo.attach(9); //ピン9のサーボをサーボオブジェクトshoulderServo.attach(10);に接続します。 elbowServo.attach(11); GripperServo.attach(6); Serial.setTimeout(50); // arduinoが長すぎるシリアルを読み取らないようにしますSerial.println( "started"); baseServo.write(90); //サーボの初期位置shoulderServo.write(150); elbowServo.write(110); ready =0;} //プライマリarduinoloopvoid loop(){if(Serial.available()){ready =1; desiredAngle.base =Serial.parseInt(); desiredAngle.shoulder =Serial.parseInt(); desiredAngle.elbow =Serial.parseInt(); desiredGrip =Serial.parseInt(); desiredDelay =Serial.parseInt(); if(Serial.read()=='\ n'){//最後のバイトが 'd'の場合、読み取りを停止してコマンドを実行します 'd'は 'done'を表しますSerial.flush(); //バッファに蓄積されている他のすべてのコマンドをクリアします//コマンドの完了を送信しますSerial.print( 'd'); }} int status1 =0; int status2 =0; int status3 =0; int status4 =0; int done =0; while(done ==0 &&ready ==1){//サーボを目的の位置に移動しますstatus1 =servoParallelControl(desiredAngle.base、baseServo、desiredDelay); status2 =servoParallelControl(desiredAngle.shoulder、shoulderServo、desiredDelay); status3 =servoParallelControl(desiredAngle.elbow、elbowServo、desiredDelay); status4 =servoParallelControl(desiredGrip、gripperServo、desiredDelay); if(status1 ==1&status2 ==1&status3 ==1&status4 ==1){done =1; }} // whileの終わり} // ++++++++++++++++++++++++++++++関数の定義++++++++ ++++++++++++++++++++++++++++++++++ intservoParallelControl(int thePos、Servo theServo、int theSpeed){int startPos =theServo.read(); //現在の位置を読み取りますintnewPos =startPos; // int theSpeed =speed; //コマンドに対して位置がどこにあるかを定義します//現在の位置が実際の移動よりも小さい場合if(startPos <(thePos-5)){newPos =newPos + 1; theServo.write(newPos); delay(theSpeed); 0を返します。 } else if(newPos>(thePos + 5)){newPos =newPos-1; theServo.write(newPos); delay(theSpeed); 0を返します。 } else {1を返す; }} 

回路図


製造プロセス

  1. Arduino、1Sheeld、Androidを使用したユニバーサルリモコン
  2. Arduinoでコインアクセプターを制御する
  3. IoTを使用してロボットアームをリモート制御する
  4. サーボモーター付きロボット回避障害物
  5. LEDを制御するBluetoothを搭載したArduino!
  6. ArduinoとAndroidデバイスでルンバロボットを制御する
  7. Nunchuk制御ロボットアーム(Arduino付き)
  8. Arduino Nano:ジョイスティックで2つのステッピングモーターを制御
  9. Littlearm 2C:3DプリントされたArduinoロボットアームを構築する
  10. ThimbleKrox-指でマウスを操作する
  11. Arduinoでゴキブリを30ドル未満でコントロール