2011年4月アーカイブ

Arduinoで作る「車の運転優しさセンサ」(4)
二つの電源電圧

  Arduinoの電源電圧は5Vでこの電源電圧がアナログ入力のA-D変換の基準電圧となります。アナログ入力の入力値から電圧に変換するときに必要になります。
 3.3Vの電源は、三軸加速度センサの電源電圧となります。またこの加速度センサの各軸の±の変換点である原点の電圧が加速度センサの電源電圧の1/2 となります。この原点の電圧値を基に加速度を計算します。
 これらの実測値をスケッチで反映できるように、変数として定義します。
         
                   float VD=4.9;   // 電源電圧
                   float VDa=3.3;   // 加速度センサへの電源


 実際の電圧を測定し初期値として設定します。

PCとArduino間のコマンドの送信、ステータスの受信(3)
  2バイトのデータをコマンドおよびダミーデータなどとしてSCP1000に送信し、結果を受信しSerial.print()でPCに送信します。
 この処理の部分を次に示します。

HIH-4030の出力電圧から湿度を求める
 今回は、HIH-4030の出力電圧から湿度を求めるスケッチを作ります。
 スケッチで使用する変数を次のように設定します。
      電源電圧(V)を              vdd    float型
      アナログ・ポートからの入力     indata  int型
      入力値を変換した電圧値(mV) svout   float型
 この変数に対してスケッチの記述は、次のようになります。最初に各変数の型の定義と電源電圧によるvddの初期化を行っています

Arduinoで作る「車の運転優しさセンサ」(3)
 今回は、最初にLCDのライブラリを次の命令で読み込みます。この#includeでLiquidCrystal.hを読み込むことで、LCDライブラリに用意されている関数などが利用できるようになります。
   #include
 つぎに、実際のLCDの処理を行うために関数を利用するための枠組みを用意します。そのための処理は、次のLiquidCrystal型の変数を作るための命令で行います。

  Arduinoには、アナログ出力のセンサにはアナログ入力ポートが、ディジタル出力のセンサに対しては、SPI、I2Cなどのシリアル・インターフェースが用意されています。多くのセンサが利用できますので、現在入手できるセンサでいろんなものを測定してみます。
 まず湿度センサから始めます。最初はスイッチサイエンスから入手したHIH-4030湿度センサ・モジュールです。

HIH-4030湿度センサ
  HIH-4030湿度センサは、ハネウェル社のHIH-4030/31シリーズとして発売されている湿度センサのチップHIH-4030を、次に示すように小さな基板にはんだ付けし、プラス、マイナスの電源とセンサの出力の三つの端子を2.54mmピッチで用意しています。

skse010010.jpg

PCとArduino間のコマンドの送信、ステータスの受信(2)
 今回は、Arduino と SCP1000との間でコマンドとステータスのやりとりを次のように行います。
1. 2. はArduinoのシリアル・モニタの機能を利用します。3.ではPCのシリアル・モニタから送信されるデータは連続して送信されます。また伝送速度を9600bpsで行っていますので、最大でもバイトあたり1ms以下の速度ですから、これ以上の時間が経過して受信データの有無を調べ、受信データがなければ文字列の受信が終わったとします。

CD0190010.jpg

Arduinoで作る「車の運転優しさセンサ」(3)
  各軸の加速度の測定結果を表示するLCDのモジュールが必要になります。16文字2行のLCDモジュールは「気圧センサSCP1000を接続してみる(11)LCDモジュールの接続」で作成したLCDモジュールを接続するためのユニットを使用します。
  95mm×72mmのユニバーサル基板を半分に切断し、次に示すようにLCDモジュールと接続するための7ピン×1と7ピン×2のピンヘッダ、Arduinoのマイコン・ボードと信号線を接続するための6ピンのピンヘッダを用意してあります。LCDの電源はJSTの2ピンのコネクタで接続します。

lilypad460020.jpg

Arduinoで作る「車の運転優しさセンサ」(2)
加速度センサの電源電圧

   LilyPad三軸加速度センサはアナログデバイセズ社のADXL335が搭載されています。この電源電圧は1.8V~3.6Vの範囲で3.0Vが標準となっています。この電源はArduinoの標準ボードに用意されている3.3Vの電源を接続します。このセンサの各軸の出力は、加速度が加わっていない場合には電源電圧の1/2の電圧がセンサの出力となります。加わる加速度に対して、次の係数で決められた電圧が出力となります。
                        ± 0.3V/g (電源電圧が3Vの場合)
 また、出力電圧はセンサに加わった電圧以上になりません。センサの各軸の出力はArduinoのアナログ入力ポートに接続します。

                    センサのX軸出力   アナログ入力 0
                               Y軸出力   アナログ入力 1
                               Z軸出力   アナログ入力 2





マイコンと電子工作 No.6


マイコンと電子工作 No.4


マイコンと電子工作No.1
サポート・ページはこちら

カテゴリ

このアーカイブについて

このページには、2011年4月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2011年3月です。

次のアーカイブは2011年5月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Creative Commons License
このブログのライセンスは クリエイティブ・コモンズライセンス.