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

ServoTimer2ライブラリの使用方法(簡単な説明)Servo Sweep

コンポーネントと消耗品

サーボ(Tower Pro MG996R)
× 1
Arduino UNO
× 1
ジャンパー線(汎用)
× 1
UTSOURCE電子部品
× 1

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

はじめに

私は最近、ヒューマノイドロボットを作ろうとしています。つまり、サーボモーターを扱うことを意味します。ロボットをTALKにしようとする直前は、すべてうまくいきました。 TMRpcmライブラリを使用する必要がある場合。しかし、

のようないくつかのライブラリがあります
 #TMRpcm.h#VirtualWire.h  

ArduinoのTimer1を使用するライブラリです。両方が同じタイマーを使用している2つのデバイスを同時に使用することはできないようです...したがって、私のロボットが話している場合、サーボは機能しません。 Servo.hとTMRpcmはどちらもArduinoTImer1で動作するためです。これはめちゃくちゃです。両方を機能させたい場合は、サーボ用に別のライブラリを使用する必要があります。 ServoTimer2ライブラリはどれですか?これはArduinoでTimer2を使用しています...残念ながらインターネット上では、このServoTimer2ライブラリが実際にどのように機能するか、およびコードでどのように使用するかを理解するためのチュートリアルは見つかりませんでした。そこで、私のような人が理解しやすいようにチュートリアルを作ることにしました。このライブラリで1つのサーボモーターを使用し、簡単なサーボスイープコードを作成します

理解を深めるためにビデオを見ることができます。

ステップ1:部品と組み立て:

主要部分はサーボモーターです。

私はマイクロサーボsg90を使用していますが、どのモデルでも問題ありません。

次に、写真2のようにサーボアームを取り、それを硬いボール紙に接着し(これは、程度をよく把握するためです)、写真4のようにサーボモーターにアームを追加します。

ステップ2:ServoTimer2ライブラリをダウンロードしてArduinoに追加する

まず、ここhttps://github.com/nabontra/ServoTimer2からライブラリをダウンロードして、Arduinoライブラリフォルダーに貼り付ける必要があります。

次に、sketch> includelibrary>ライブラリフォルダからzip.fileを追加します。

これで準備完了です。

ステップ3:単純な回路を構築する

これが最も簡単な部分です

  • Arduino vcc(5v)へのサーボレッドワイヤー
  • 灰色-Gnd
  • オレンジ-デジタル6

ステップ4:コード。

ServoTimer2コードを理解する前に、Servo.hライブラリスイープを振り返ってみましょう。

(モーターは0度から90度まで回転します-1秒間待ちます-次に180度まで-1秒間待ちます)

  #include  Servoservo1; void setup(){servo1.attach(6); //セットアップコードをここに配置して1回実行} void loop(){//メインコードをここに配置して繰り返し実行する:servo1.write(0); delay(1000); servo1.write(90); delay( 1000); servo1.write(180); delay(1000);}  

このライブラリでわかるように、サーボを特定の位置に回転させたい場合は、次数を書き込むだけで、サーボは問題なく動作します。ただし、ServoTimer2ライブラリでは、サーボのパルス幅を書き込む必要があり、サーボはそれを使用してその位置に移動します。最も一般的には1500は90度を意味します。最大パルス幅は2250で、最小パルス幅は750です。つまり、750は0度、2250は180度です。しかし、私に言わせてください、これはサーボごとに異なります。値を送信して、何が起こるかを確認してください。これによってサーボモーターが少し破壊されたり損傷したりすることはありません。

次に、ServoTimer 2に対して同じコードを作成します。これにより、実際の違いがわかります。

  #include "ServoTimer2.h" ServoTimer2servo1; void setup(){servo1.attach(6); } void loop(){//メインコードをここに配置して、繰り返し実行します:servo1.write(750); // 0度の最小パルス幅delay(1000); servo1.write(1500); // 90度のパルス幅delay(1000); servo1.write(2250); //約180度の最大パルス幅delay(1000);}  

ここで、arduinoに電力を供給し、サーボがどれだけ回転するかを度目盛りで確認します。そして、これを行うことで、プロジェクトを進めることができます。 Happy Making.o2700でそれを成し遂げましょう。

ステップ5:最後-Arduinoの電源を入れて実験する

ここで、arduinoに電力を供給し、サーボがどれだけ回転するかを度目盛りで確認します。そして、これを行うことで、プロジェクトを成功させることができます。ハッピーメイキング。

コード

  • サーボseep.code
  • ServoTimer2.sweep.code
サーボseep.code C / C ++
 #include  Servoservo1; void setup(){servo1.attach(6); //セットアップコードをここに配置して1回実行} void loop(){//メインコードをここに配置して繰り返し実行する:servo1.write(0); delay(1000); servo1.write(90); delay( 1000); servo1.write(180); delay(1000);} 
ServoTimer2.sweep.code C / C ++
 #include "ServoTimer2.h" ServoTimer2servo1; void setup(){servo1.attach(6); } void loop(){//メインコードをここに配置して、繰り返し実行します:servo1.write(750); // 0度の最小パルス幅delay(1000); servo1.write(1500); // 90度のパルス幅delay(1000); servo1.write(2250); //約180度の最大パルス幅delay(1000);} 

回路図

ServoTimer2.sweep.code
https://github.com/ashraf-minhaj/Arduino-ServoTimer2-basic-sweep-/tree/code-sweep

製造プロセス

  1. モリブデンはどのように使用しますか?
  2. VHDL で関数を使用する方法
  3. Arduino + RaspberryPiロボットプラットフォームの作り方
  4. シンプルなパイロボット
  5. グラスファイバーの作り方
  6. C ライブラリの realloc() 関数:使い方は?構文と例
  7. C ライブラリの free() 関数:使い方は?例で学ぶ
  8. サーミスタの使い方は簡単ですか?!
  9. Solidworksでカッタウェイアニメーションを作成する方法
  10. 試作品の作り方
  11. カッターグラインダーの使い方