2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

第一個Phyphox-ESP32測距實驗

 新用戶5228KeDY 2021-10-10

第一個Phyphox-ESP32測距實驗

前些天得到Phyphox的BLE藍牙擴展庫,一直想找一點兒時間嘗試個例子。Phyphox自身有測量距離的功能,即聲吶(Sonar)測距實驗。不是太準確,但基本也可使用。

不使用手機傳感器而使用外接傳感器,測量距離的,首選激光飛行時間傳感器(Tof),其次超聲波傳感器(UltraSonic)。但不論哪種傳感器,不使用濾波和限幅,這些傳感器都不易直接使用。這里作為一個測試,用的超聲波傳感器,開發(fā)板是ESP32。

測量結果,緩慢在傳感器前方移動日記本,粗測移動速度,每秒1.4cm,和實際情況差不多:

很簡單的代碼創(chuàng)作的實驗,不設置緩存數(shù)據(jù),數(shù)據(jù)是不能導出的。估計以后能夠把實驗文件以.phyphox文件導出來,接著再導入到phyphox editor編輯器里面去,再進行一些專門的設置:

實際實驗使用的器材,超聲波是常見的HC-SR04,性能最弱的一種:

ESP32程序燒錄比Arduino UNO燒錄要麻煩一些,時間也要久。Arduino IDE燒錄log:

程序代碼:

#include <phyphoxBle.h> 

int TrigPin = 12;
int EchoPin = 14;
float dist;

void setup()
{
   Serial.begin(115200);
   pinMode(TrigPin, OUTPUT);
   pinMode(EchoPin, INPUT);
   
   PhyphoxBLE::start("MyDevice");

   //Experiment
   PhyphoxBleExperiment plotDtValues;   //創(chuàng)建一個實驗實例

   plotRandomValues.setTitle("Distance Number");
   plotRandomValues.setCategory("Arduino Experiments");
   plotRandomValues.setDescription("phyphox-ESP32-HCSR04 Distance");

   //View
   PhyphoxBleExperiment::View firstView;
   firstView.setLabel("FirstView"); //Create a "view"

   //Graph
   PhyphoxBleExperiment::Graph firstGraph;     
   firstGraph.setLabel("Distance over time");
   firstGraph.setUnitX("s");
   firstGraph.setUnitY("m");
   firstGraph.setLabelX("time");
   firstGraph.setLabelY("Distance");
   firstGraph.setChannel(0,1);

   firstView.addElement(firstGraph);
   plotRandomValues.addView(firstView);
   PhyphoxBLE::addExperiment(plotDtValues);

}


void loop()
{
  digitalWrite(TrigPin, LOW);
  delayMicroseconds(5);
  digitalWrite(TrigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(TrigPin, LOW);
  dist = pulseIn(EchoPin, HIGH) / 58.00;  
  float DisValue = dist/100.0;

  PhyphoxBLE::write(DisValue);
  delay(500);

  PhyphoxBLE::poll();
}

    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章