このチュートリアルでは、サーボモーターとサーボをMSP430とインターフェースする方法について学習します。 MSP-EXP430G2は、開発ツールである LaunchPadの別名はによって提供 テキサス・インスツルメンツ 彼らのマイクロコントローラを使用する方法について学び、実践します。このボードは、すべてのMSP430シリーズマイクロコントローラーをプログラムできるMSP430バリューラインカテゴリに分類されます。MSPを初めて使用する場合は、MSP430チュートリアルの開始を確認してください。
サーボモーターとPWM:
詳細に入る前に、まずサーボモーターについて知っておく必要があります。
サーボモーターは、DCモーター、位置制御システム、およびギアの組み合わせです。サーボは現代の世界で多くの用途があり、それにより、さまざまな形状とサイズで利用できます。 このチュートリアルではSG90サーボモーターを使用 します。これは人気があり、最も安価なものの1つです。SG90は180度のサーボです。したがって、このサーボを使用すると、軸を0〜180度の範囲で配置できます。
サーボモーターは主に3本のワイヤーがあり、1本は正電圧用、もう1本はアース用、最後の1本は位置設定用です。 赤線は、 電源に接続され、 茶色ワイヤが グランドに接続され、 黄色 のワイヤ(又は白色)信号に接続されています。
各サーボモーターは異なるPWM周波数(このチュートリアルで使用される最も一般的な周波数は50HZ)で動作するため、モーターのデータシートを入手して、サーボモーターが動作するPWM周期を確認してください。
PWM(Pulse Width Modulated)信号の周波数は、サーボモーターのタイプによって異なります。ここで重要なのは、PWM信号のデューティ比です。この義務に基づいて、制御電子機器がシャフトを調整します。
下の図に示すように、シャフトを9時の位置に移動するには、ターンオン比が1/18である必要があります。18msの信号で1msのオン時間と17msのオフ時間。
<シャフトを12oクロックに移動するには、信号のオン時間は1.5ミリ秒、オフ時間は16.5ミリ秒である必要があります。この比率はサーボの制御システムによってデコードされ、それに基づいて位置を調整します。ここでのこのPWMは、MSP430を使用して生成されます。MSP430を使用したPWMの生成について詳しくは、こちらをご覧ください。
サーボをMSP430に接続する前に 、このサーボモーターテスター回路を使用してサーボをテストできます。以下のサーボプロジェクトも確認してください。
- Arduinoを使用したサーボモーター制御
- ArduinoDueによるサーボモーター制御
- 8051マイクロコントローラーとインターフェースするサーボモーター
- MATLABを使用したサーボモーター制御
- フレックスセンサーによるサーボモーター制御
- 重量によるサーボ位置制御(力センサー)
必要な材料:
- MSP430
- SG90サーボ
- オス-メスワイヤー
回路図と説明:
でMSP430、私たちは事前に定義されており、PWM機能がそのように、これらのライブラリにすでに書かれているライブラリを持って、我々は、PWM値を心配する必要はありません。シャフトを回転させたい角度を設定するだけで、残りはこれらのライブラリとマイクロコントローラーによって操作されます。
ここでは、MSP430のPWMピンであるPIN6、つまりP1.4を使用しています。ただし、任意のPINを使用できます。すべてのPWM機能はライブラリ自体に書き込まれるため、サーボにPWMピンを使用する必要はありません。
サーボ制御に使用するヘッダーファイルは「 servo.h 」です。
私たちは、使用するエネルギアIDEを我々のコードを記述すること。コードはシンプルで理解しやすいです。これはArduinoの場合と同じで、[例]メニューにあります。完全なコードとビデオを以下に示します。必要に応じてコードを編集し、MSP430にアップロードできます。
それだ!!私たちはしている PICマイクロコントローラとサーボモータをインターフェースし、今あなたがあなた自身の創造性を使用し、このためのアプリケーションを見つけることができます。サーボモーターを使用するプロジェクトはたくさんあります。