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

DCモーター制御ライブラリ

コンポーネントと消耗品

>
Arduino UNO
× 1
汎用トランジスタNPN
× 2
汎用トランジスタPNP
× 2
抵抗1kオーム
× 2
1N4007 –高電圧、高電流定格ダイオード
× 4

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

>
Arduino IDE

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

<図> <図> <図> <図>

ここでは、DCモーターを制御するためのArduinoライブラリを紹介します。ライブラリには非常に多くの設備と柔軟性があり、必要な方法で任意のDCモーターを制御できます。ライブラリは、 産業用モーションコントロールに従って設計されています。 要件。ライブラリには16の異なる機能があり、最も用途の広い方法でモーターを制御できます。ライブラリ内の機能のリストは次のとおりです。

1.モーターの回転方向を制御します

2.モーターの速度を0〜100%に制御します

3. ソフトスタートを提供できます 指定された時間内にモーターに–モーター速度が0%から指定された時間内に希望のレベルまで増加することを意味します

4. スムーズな停止を提供できます 指定された時間内にモーターに-モーター速度が現在の速度から指定された時間内に0%に減少することを意味します

5. ジョグ制御を適用できます どちらかの方向にモーターを動かす–モーターが指定された方向にジャークすることを意味します

6.モーターにDCBREAK(即時または緊急停止を意味する)を適用できます

すべてのライブラリ関数の簡単な説明をここに示します。その後、このライブラリを使用してモーターを制御する方法を説明するいくつかの例を示します。これらの例のデモンストレーションを示す3つのビデオがあります。最後に、DCモーターの制御に広く使用されているHブリッジ回路を使用した回路を提案します。

このライブラリをarduinoスケッチで使用するには、 DC_Motor をコピーするだけです。 C:\ arduino-1.6.7 \ libraries のようなarduinoライブラリフォルダのルートディレクトリにフォルダを配置します

ライブラリ関数の説明:

1. DC_Motor(int pin1、int pin2): この関数は、DCモーターを駆動するarduinoピンを宣言します

2. DC_Motor(int pin1、int pin2、int speed_flag): この関数は、DCモーターを駆動するarduinoのアナログ出力ピンを宣言します

3. start_motor(int dir): この機能は、モーターを指定された方向に回転させ始めます。方向が1の場合、モーターは前方に回転し始め、その逆も同様です。

4. forward(): この機能はモーターを順方向に回転させ始めます

5. reverse(): この機能はモーターを逆方向に回転させ始めます

6. dc_break(): この機能はモーターの回転を瞬時に停止します*

7. stop_motor(): この機能はモーターの回転を停止します

8. jogg_full_speed(int dir): この機能は、必要な方向にフルスピードで5秒間モーターにジャークを適用します

*注:-この機能は、DCモーターにそのようなDCブレーク用の内部配置がある場合にのみ機能します。また、適切なモータードライバー回路は、ダイナミックブレーキ抵抗(DBR)を使用して設計する必要があり、モーターまたは回路が損傷しないように十分な注意を払う必要があります。

上記のすべての機能は、DCモーターに簡単な制御を提供します。それらはモーターの速度を制御しません。次の8つの機能は、モーターの速度と方向を制御します。ただし、これらの機能を使用するには、arduinoのアナログ出力ピンを選択する必要があります。 DCモーターは、速度フラグを1に設定して2番目の機能で初期化する必要があります

9. set_speed(int speed): この機能は、DCモーター速度を0〜100%の間に設定します

10. forward_with_set_speed(): この機能は、設定された速度でDCモーターを前方に回転させ始めます

11. reverse_with_set_speed(): この機能は、設定された速度でDCモーターを逆回転させ始めます

12. run_motor(int dir、int speed): この機能は、DCモーターを設定速度でいずれかの方向に回転させます

13. jogg_set_speed(int dir、int speed): この機能は、設定された速度でどちらの方向にもモーターにジャークを適用します

14. motor_speed_zero()*: この機能はモーター速度を0に下げます–モーターを停止することを意味します

15. soft_start(int dir、int speed、inttime_in_sec): この機能は、モーターの速度を0から任意の方向の指定された時間に希望のレベルまで上げます。時間は秒単位で選択する必要があります

16. Smooth_stop(int time_in_sec): この機能は、指定された時間内にモーター速度を現在の実行速度から0に下げます。時間は秒単位で選択する必要があります

*注:stop_motor()関数はデジタル出力を提供しますが、この関数はDCモーター速度をゼロにするための最小アナログ出力を提供するため、ここでは使用できません。 DCモーターを速度で制御する場合は、モーターを停止するだけでなく、速度をゼロにします。

例:

1)DCモーターを全速力で前後に回転させます(速度制御なし)

/ *このプログラムはDCモーターを5秒間前方に回転させます

次に2秒間停止し、モーターを再び逆回転させて

5秒間、2秒間連続停止

A M Bhatt(+ 91-9998476150)、グジャラート、インドによって作成されました

2016年12月10日

* /

#include

DC_Motormotor(8、12);

voidsetup()

{

}

void loop()

{

motor.forward();

delay(5000);

motor.stop_motor();

delay(2000);

motor.reverse();

delay(5000);

motor.stop_motor();

delay(2000);

}

2)DCモーターを設定速度で前後に回転させます(速度制御あり)

/ *このプログラムはDCモーターを5秒間前方に回転させます

40%の速度で停止し、2秒間停止してから、モーターを再び逆回転させて

継続的に80%の速度で5秒

A M Bhatt(+ 91-9998476150)、グジャラート、インドによって作成されました

2016年12月10日

* /

#include

DC_Motor motor2(9、10、1);

voidsetup()

{

}

void loop()

{

motor2.set_speed(40);

motor2.forward_with_set_speed();

delay(5000);

motor2.motor_speed_zero();

delay(2000);

motor2.set_speed(80);

motor2.reverse_with_set_speed();

delay(5000);

motor2.motor_speed_zero();

delay(2000);

}

3)速度制御の有無にかかわらず、モーターに両方向にジョグを適用します

/ *このプログラムは2つの異なるDCモーターにジョグを適用します

*それは両方向に全速力で1番目のモーターにジョグを適用します

*次に、逆方向に80%の速度で2番目のモーターにジョグを提供します

*方向と前進方向の30%の速度

* Ashutosh M Bhatt(+ 91-9998476150)、グジャラート(インド)によって作成されました

* 2016年10月22日

* /

#include

DC_Motorモーター(8、12);

DC_Motor motor2(9、10、1);

voidsetup()

{

}

voidloop()

{

motor.jogg_full_speed(1);

motor.jogg_full_speed(0);

motor2.jogg_set_speed(0、80);

motor2.jogg_set_speed(1、30);

}

4)モーターにソフトスタートとスムーズストップを適用します

/ *このプログラムはモーターにソフトスタートを与え、その速度を上げます

順方向に10秒で0から90%まで

その後、5秒で90%から0までスムーズに停止します

逆方向に6秒で0から50%まで再びソフトスタート

そして最後に3秒で50%から0までスムーズに停止します

A M Bhatt(+ 91-9998476150)、グジャラート、インドによって作成されました

2016年12月10日

* /

#include

DC_Motor motor2(9、10、1);

voidsetup()

{

}

voidloop()

{

motor2.soft_start(1、90、10);

delay(3000);

motor2.smooth_stop(5);

motor2.soft_start(0、50、6);

delay(3000);

motor2.smooth_stop(3);

}

コード

  • DCモーター制御ライブラリ
DCモーター制御ライブラリ Cヘッダーファイル
このライブラリは、すべてのタイプのDCモーターの速度と方向を制御します
プレビューなし(ダウンロードのみ)。

回路図

DCモーターの制御に使用されるArduinoUNOおよびHブリッジドライバー

製造プロセス

  1. 実際のセンサーで効果を制御する
  2. 自宅でDIY宿題ライティングマシンを作る
  3. ArduinoUnoを使用した人間検出ロボティクスシステム
  4. バイポーラステッピングモーターライブラリ
  5. ラズベリーモーターシールドを使用したAndroid制御玩具
  6. サーボモーター付きロボット回避障害物
  7. ラインフォロワーロボット
  8. ArduinoとAndroidデバイスでルンバロボットを制御する
  9. ArduinoとMPU6050によるサーボモーターの制御
  10. BoltとArduinoを使用したLEDの明るさの制御
  11. 超クールな屋内ナビゲーション用ロボット