Arduinoのレーダー

たくさんのセンサーを使って、私はarduinoを目にしました。 まばたきとアナログ読み取りで十分に遊んだので、私は自分のボードを買うことを考えました。 既製のシールドのリストを一目見た後、ebayを開き、Funduino Mega2560( arduino mega 2560の類似 )とそれに追加のデバイスをいくつか注文しました。







最も興味深い順序付けられた色合いの中には、解像度320x240のカラーTFT ディスプレイがあり、16ビットバスと抵抗膜方式のタッチスクリーンがあります。 後で判明したように、ディスプレイは移行シールドを介してメガに接続する必要がありましたが、この点を見逃したため、アダプターは注文されませんでした。 その結果、深刻なワイヤーの山と一定数の神経細胞の助けを借りて、ディスプレイが巻き上げられ、標準ライブラリが取り上げられ、実験が始まりました。 実際には、後者の結果について説明します。



画像

今これは「ママ」です



超音波距離センサーとカラーディスプレイを手に持っているため、距離の英数字の値だけを扱うのは本当に悲しいので、センサーが「見た」ものをグラフィカルに認識するというアイデアは時間の問題でした。 最新の産業用レーダーステーションでは、2D空間での拡張のために、アンテナはその軸を中心に回転できるプラットフォームに配置されています。 私は他に何も思いつきませんでしたが、単に超音波センサーをホットメルト接着剤、サーボ推力に接着しました。



画像

それでも、10mWのレーザーと-ハエを恐れる!!!



結果として得られるユニットであるレーダーレーダーがより安定するように、メガネの下のガラススタンドに固執することにしました。 実験では、それは十分すぎることが判明し、再現性は良好です。 だから、再び、仕事の原則。 サーボは、取り付けられている距離センサーを左右に回転させます。 サーボ角度が変わるたびに、センサーの動作インパルスが伴います。 言い換えれば、サーボの各コーナーはセンサーの読み取り値に対応しています。 さらに、このデータは超音波センサーのライブラリによって読み取り可能な形式に変換され、センサーの角度と読み取り値に応じて、ディスプレイにドットが描画されます。

仕事の原理を示す小さなアニマシカ。

画像



コードをできる限り単純化しました。 ただし、より安定したバージョンでは、センサーエラー修正プログラムが追加されます。 超音波は定期的に超越データを送信し、現在の値に2000mmを加算します。 さらに、前の値と後続の値は通常の制限内です。 そのため、近隣のデータを分析して、コードでエラーを修正します。



#include <UTFT.h>//   #include <Servo.h>//   #include <Ultrasonic.h>//   Servo servoMain; //   Ultrasonic ultrasonic(5, 6);//   UTFT myGLCD(ITDB32S, 38,39,40,41);//  int i = 0; //     int dist_cm = 0;//     boolean trig = false; //  void setup() { servoMain.attach(3); //    3  myGLCD.InitLCD(); //   myGLCD.clrScr();//  Serial.begin(9600);//   .  } void loop() { if(!trig){i++;}// trig false  i     if(trig){i--;}// trig true  i     dist_cm = ultrasonic.Ranging(CM); //     myGLCD.setColor(55,255,55); //      myGLCD.fillCircle(i, (99 - dist_cm)*2, 2);//   2 ,   x = i, y =   if(i==319) // i    { trig = true;//  trig  true myGLCD.clrScr();//  } if(i==0) { trig = false;//  trig  false myGLCD.clrScr();//  } delay(5);//  5.         servoMain.write(i/2); //    i/2 delay(5);//  5.         }
      
      







しかし、いくつかの問題がありました。 USBによって生成された電流は、超音波センサーを備えたサーバーは言うまでもなく、arduinoとディスプレイのみに完全に電力を供給するのに十分ではないことが判明しました。 さらに9ボルトPSUからボードに電力を供給しなければなりませんでした。 ただし、この場合でも、超音波は誤ったデータを生成し、その測定限界は深さ50 cmに制限されていました。 そして、これはセンサーからの最終データに混入した干渉の質量をカウントしていません。 干渉の原因は判明したとおり、サーボマシンであり、回転中に超音波センサーに深刻な干渉を与えました。 その結果、サーボは、2番目の電源から電力を供給され、マイナス線のみを共通の回路に接続しました。 すべての対策を講じましたが、干渉は部分的に残っており、センサーからのデータとディスプレイからの画像の両方で顕著です。



All Articles