少しのお金でロボットアームを作る方法

ロボットアームの最終結果の画像

確かに、サイエンス フィクション映画で、科学者やオタクがすべてを制御し、あたかも人間であるかのように物体を持ち上げたり、機能を実行したりできるロボット アームを持っているのを見たことがある人は多いでしょう。おかげでますます可能になったこと Hardware Libre そしてArduinoプロジェクト。しかし、ロボットアームとは何でしょうか?このガジェットにはどのような機能がありますか?ロボットアームはどのように作られるのでしょうか?以下では、これらすべての質問に答えていきます。

ロボットアームとは

ロボットアームは、完全にプログラム可能な電子ベースを備えた機械式アームです。。 さらに、このタイプのアームは単一の要素にすることができますが、ロボットまたは他のロボットシステムの一部にすることもできます。 他のタイプの機械要素と比較したロボットアームの品質は、 ロボットアームは完全にプログラム可能ですが、デバイスの他の部分はプログラム可能ではありません。 この機能により、XNUMXつのロボットアームでさまざまな操作を実行したり、Arduinoボードなどの電子ボードのおかげで実行できるさまざまなさまざまなアクティビティを実行したりできます。

ロボットアームの機能

おそらく、ロボットアームの最も基本的な機能は、補助アーム機能です。 一部の操作では、人が何かを構築または作成できるように、いくつかの要素をサポートするXNUMX番目のアームが必要になります。 この機能では、特別なプログラミングは必要なく、デバイス自体の電源を切るだけで済みます。

ロボットアームはさまざまな素材で作ることができるため、危険な操作の代わりに使用できます。 汚染された化学元素の操作のように。 ロボットアームは、丈夫で抵抗力のある素材で構成されている限り、重い作業や適切な圧力を必要とする作業を実行するのにも役立ちます。

その建設に必要な材料

次に、すべての人のために、高速、シンプル、経済的な方法でロボットアームを構築する方法を説明します。 ただし、このロボットアームは、映画で見られるアームほど強力でも有用でもありませんが、その操作と構造について学ぶのに役立ちます。 そのため、 このデバイスを構築するために必要な材料は次のとおりです。:

  1. プレート  Arduino UNO REV3以降。
  2. XNUMXつの開発ボード。
  3. 並列のXNUMX軸サーボ
  4. XNUMXつのマイクロサーボ
  5. 並列のXNUMXつのアナログ制御
  6. 開発ボード用のジャンパー付きケーブル。
  7. テープ
  8. スタンド用の段ボールまたはフォームボード。
  9. カッターとはさみ。
  10. 多くの忍耐。

アセンブリ

このロボットアームの組み立ては非常に簡単です。 まず、フォームでXNUMXつの長方形を切り抜く必要があります。 これらの長方形はそれぞれ、ロボットアームの一部になります。 画像でわかるように、これらの長方形は必要なサイズにする必要がありますが、 そのうちの16,50つのサイズは3,80x11,40cmです。 3,80番目の長方形のサイズはXNUMXx XNUMXcmです。.
サーボモーターをロボットアームに配置します。

長方形ができたら、各長方形またはストリップの一方の端で、各サーボモーターをテープで固定します。 これを行った後、 泡の「U」をカットします。 これは、腕の保持部分または端部として機能し、人間にとっては手になります。 この部品を最小の長方形にあるサーボモーターに結合します。

ロボットアームのパーツを結合する

次に、下部またはベースを作成する必要があります。 このために、同じ手順を実行します。 次の画像のように、正方形のフォームを切り取り、XNUMX軸サーボモーターを並列に配置します。:

ロボットアームベース

次に、すべてのモーターをArduinoボードに接続する必要があります。 ただし、最初に、接続を開発ボードに接続し、これをArduinoボードに接続する必要があります。 黒の線をGNDピンに接続し、赤の線を5Vピンに接続し、黄色の線を-11、-10、4、および-3に接続します。。 また、ロボットアームのジョイスティックまたはコントロールをArduinoボードに接続します。この場合、画像は次のようになります。

ロボットアーム接続図

すべてを接続して組み立てたら、プログラムをArduinoボードに渡す必要があります。そのために、Arduinoボードをコンピューターまたはラップトップに接続する必要があります。 プログラムをArduinoボードに渡したら、次のことを確認する必要があります。 ケーブルをArduinoボードに接続しますが、いつでも開発ボードを続行してすべてを分解できます、後者は、学習したいだけの場合です。

操作に必要なソフトウェア

ロボットアームの製作は終了したようですが、実はまだまだ先がたくさんあり、最も重要なことがあります。 ロボットアームに生命を与えるプログラムを作成または開発します。プログラムがなければ、サーボモーターは意味のない回転をする単純な時計メカニズムであることに変わりはありません。

これは、Arduinoボードをコンピューターに接続し、プログラムを開くことで解決されます Arduino IDE、コンピュータをボードに接続し、次のコードを空のファイルに書き込みます。

#include <Servo.h>

const int servo1 = 3;       // first servo

const int servo2 = 10;      // second servo

const int servo3 = 5;       // third servo

const int servo4 = 11;      // fourth servo

const int servo5 = 9;       // fifth servo

const int joyH = 2;        // L/R Parallax Thumbstick

const int joyV = 3;        // U/D Parallax Thumbstick

const int joyX = 4;        // L/R Parallax Thumbstick

const int joyP = 5;        // U/D Parallax Thumbstick

const int potpin = 0;      // O/C potentiometer

int servoVal;           // variable to read the value from the analog pin

Servo myservo1;  // create servo object to control a servo

Servo myservo2;  // create servo object to control a servo

Servo myservo3;  // create servo object to control a servo

Servo myservo4;  // create servo object to control a servo

Servo myservo5;  // create servo object to control a servo

void setup() {

// Servo

myservo1.attach(servo1);  // attaches the servo

myservo2.attach(servo2);  // attaches the servo

myservo3.attach(servo3);  // attaches the servo

myservo4.attach(servo4);  // attaches the servo

myservo5.attach(servo5);  // attaches the servo

// Inizialize Serial

Serial.begin(9600);

}

void loop(){

servoVal = analogRead(potpin);

servoVal = map(servoVal, 0, 1023, 0, 179);

myservo5.write(servoVal);

delay(15);

// Display Joystick values using the serial monitor

outputJoystick();

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyH);

servoVal = map(servoVal, 0, 1023, 0, 180);     // scale it to use it with the servo (result  between 0 and 180)

myservo2.write(servoVal);                         // sets the servo position according to the scaled value

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyV);

servoVal = map(servoVal, 0, 1023, 70, 180);     // scale it to use it with the servo (result between 70 and 180)

myservo1.write(servoVal);                           // sets the servo position according to the scaled value

delay(15);                                       // waits for the servo to get there

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyP);

servoVal = map(servoVal, 0, 1023, 70, 180);     // scale it to use it with the servo (result between 70 and 180)

myservo4.write(servoVal);                           // sets the servo position according to the scaled value

delay(15);                                       // waits for the servo to get there

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyX);

servoVal = map(servoVal, 0, 1023, 70, 180);     // scale it to use it with the servo (result between 70 and 180)

myservo3.write(servoVal);                           // sets the servo position according to the scaled value

delay(15);                                       // waits for the servo to get there

/**

* Display joystick values

*/

void outputJoystick(){

Serial.print(analogRead(joyH));

Serial.print ("---");

Serial.print(analogRead(joyV));

Serial.println ("----------------");

Serial.print(analogRead(joyP));

Serial.println ("----------------");

Serial.print(analogRead(joyX));

Serial.println ("----------------");

}

保存してからプレートに送ります Arduino UNO. コードを完成させる前に、ジョイスティックが機能することを確認するために適切なテストを実行します また、コードにエラーがないこと。

私はすでにそれをマウントしました、今何ですか?

確かに多くの人はこのタイプのロボットアームを期待していませんでしたが、それが何であるか、それが持つコスト、そしてロボットの作り方を教える方法の基本から理想的です。 ここからすべてが私たちの想像力に属しています。 つまり、材料やサーボモーターを変更したり、プログラミングコードを完成させたりすることができます。 言うまでもなく Arduinoボードモデルを、リモコンを接続できるより強力で完全なモデルに変更できます またはスマートフォンで作業します。つまり、さまざまな可能性が考えられます。 Hardware Libre そしてロボットアーム。

詳しくは - Instructables


コメント、あなたのコメントを残してください

コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ホルヘ·ガルシア

    間違いなく3Dプリントは素晴らしいものへの扉です。 私は自分のデザインでLion2と協力してきましたが、その結果に魅了されました。 私はそれについて読むことを勧められたので http://www.leon-3d.es それはすでに私の注意を引きました、そして私がそれを試みて、そして最終結果のセルフレベリングと詳細を目撃したとき、私は私がどんなに良い投資をしたかを知っていました。