色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用TFMini LiDAR傳感器和Arduino實現激光測距

芯情觀察猿 ? 來源:芯情觀察猿 ? 作者:芯情觀察猿 ? 2022-07-19 10:34 ? 次閱讀

LiDAR測距應用越來越普及,例如行人檢測、車輛檢測、障礙物探測等自動駕駛應用,以及道閘防砸、高度計等。本項目以北醒TFMini-S Micro LiDAR傳感器為例,演示LiDAR傳感器與Arduino的連接,以及測距結果及顯示。本項目BOM如下:

Arduino Nano開發板 1

TFMini-S LiDAR傳感器 1

JHD162A 16X2 LCD顯示器 1

10K電位器 1

面包板 1

跳線 22


基于激光的精確測距能力,LiDAR是一種精確的激光探測及測距器件。LiDAR工作原理與無線電雷達沒有區別,即由雷達發射系統發送一個信號,經目標反射后被接收系統收集,通過測量反射光的運行時間而確定目標的距離。至于目標的徑向速度,可以由反射光的多普勒頻移來確定,也可以測量兩個或多個距離,并計算其變化率而求得速度。


poYBAGLWGEiAJn8WAAC2OUmaU7A93.jpeg?source=d16d100b

?

項目采用的TFmini-S是一款基于TFmini升級的單點測距雷達,盲區降低為10cm,室外測距性能進一步提升,不同反射率的測距精度得到優化,可以實現穩定、精準、高靈敏和高速的距離測量。


連接TFMini-S LiDAR傳感器與Arduino


TFMini-S LiDAR可通過UARTI2C接口與Arduino連接。本項目采用UART。


pYYBAGLWGEiAfemCAACe3yRkudU96.jpeg?source=d16d100b

?

將TFMini傳感器的VCC & GND引腳連接到Arduino開發板的5V & GND引腳,Tx、RX引腳連接到Arduino開發板的D2 & D3引腳。


poYBAGLWGEmACbDoAADHEPvEYxk14.jpeg?source=d16d100b

當然,也可以把Tx and Rx連接在其他引腳上,只要支持軟件串口即可。


源代碼及例程庫


北醒官網、Github都提供有TFMini-S LiDAR傳感器庫文件和例程,具體如下:

include

#include "TFMini.h"

TFMini tfmini;

SoftwareSerial SerialTFMini(2, 3); //The only value that matters here is the first one, 2, Rx

void getTFminiData(int* distance, int* strength)

{

static char i = 0;

char j = 0;

int checksum = 0;

static int rx[9];

if (SerialTFMini.available())

{

rx[i] = SerialTFMini.read();

if (rx[0] != 0x59)

{

i = 0;

}

else if (i == 1 && rx[1] != 0x59)

{

i = 0;

}

else if (i == 8)

{

for (j = 0; j < 8; j++)

{

checksum += rx[j];

}

if (rx[8] == (checksum % 256))

{

*distance = rx[2] + rx[3] * 256;

*strength = rx[4] + rx[5] * 256;

}

i = 0;

}

else

{

i++;

}

}

}

void setup()

{

Serial.begin(115200); //Initialize hardware serial port (serial debug port)

while (!Serial); // wait for serial port to connect. Needed for native USB port only

Serial.println ("Initializing...");

SerialTFMini.begin(TFMINI_BAUDRATE); //Initialize the data rate for the SoftwareSerial port

tfmini.begin(&SerialTFMini); //Initialize the TF Mini sensor

}

void loop()

{

int distance = 0;

int strength = 0;

getTFminiData(&distance, &strength);

while (!distance)

{

getTFminiData(&distance, &strength);

if (distance)

{

Serial.print(distance);

Serial.print("cm\t");

Serial.print("strength: ");

Serial.println(strength);

}

}

delay(100);

}


pYYBAGLWGEmADL1JAACwmwtciao63.jpeg?source=d16d100b

這下,Serial monitor開始顯示距離和信號強度,把手在傳感器前面來回移動可觀察到距離在變化,盲區從30cm縮減到10cm。


poYBAGLWGEqAC4mYAACFbmClVk410.jpeg?source=d16d100b

?

如果希望通過LCD顯示測量結果,就需要在前述電路的面包板上加一個16x2 LCD顯示器,并通過10K電位器來調節LCD的對比度。這樣,本項目就實現了便攜式涉及,可以裝起來帶去戶外體驗了。


pYYBAGLWGEqARcdYAADtWrggnRQ50.jpeg?source=d16d100b

#include

LiquidCrystal lcd(12, 11, 10, 9, 8, 7);

#include

#include "TFMini.h"

TFMini tfmini;

SoftwareSerial SerialTFMini(2, 3); //The only value that matters here is the first one, 2, Rx

void getTFminiData(int* distance, int* strength)

{

static char i = 0;

char j = 0;

int checksum = 0;

static int rx[9];

if (SerialTFMini.available())

{

rx[i] = SerialTFMini.read();

if (rx[0] != 0x59)

{

i = 0;

}

else if (i == 1 && rx[1] != 0x59)

{

i = 0;

}

else if (i == 8)

{

for (j = 0; j < 8; j++)

{

checksum += rx[j];

}

if (rx[8] == (checksum % 256))

{

*distance = rx[2] + rx[3] * 256;

*strength = rx[4] + rx[5] * 256;

}

i = 0;

}

else

{

i++;

}

}

}

void setup()

{

lcd.begin(16, 2);

Serial.begin(115200); //Initialize hardware serial port (serial debug port)

while (!Serial); // wait for serial port to connect. Needed for native USB port only

Serial.println ("Initializing...");

SerialTFMini.begin(TFMINI_BAUDRATE); //Initialize the data rate for the SoftwareSerial port

tfmini.begin(&SerialTFMini); //Initialize the TF Mini sensor

}

void loop()

{

int distance = 0;

int strength = 0;

getTFminiData(&distance, &strength);

while (!distance)

{

getTFminiData(&distance, &strength);

if (distance)

{

Serial.print(distance);

Serial.print("cm\t");

Serial.print("strength: ");

Serial.println(strength);

lcd.setCursor(0, 0);

lcd.print("Dis: ");

lcd.print(distance);

lcd.print(" cm");

lcd.setCursor(0, 1);

lcd.print("Str: ");

lcd.print(strength);

}

}

delay(500);

lcd.clear();

}


結果顯示,TFMini-S LiDAR傳感器最大測距為12m,由于戶外障礙物比室內少很多,測距準確度高達90%。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2550

    文章

    51035

    瀏覽量

    753077
  • 激光測距
    +關注

    關注

    9

    文章

    157

    瀏覽量

    27544
  • Arduino
    +關注

    關注

    188

    文章

    6468

    瀏覽量

    186952
  • LIDAR
    +關注

    關注

    10

    文章

    326

    瀏覽量

    29414
收藏 人收藏

    評論

    相關推薦

    proteus中可以什么組合來實現具有激光測距傳感器的功能

    proteus中可以什么組合來實現具有激光測距傳感器的功能
    發表于 05-20 14:58

    baumer激光測距傳感器獨特應用

    簡單的統計學原理,即平均法則實現了1mm的分辨率,并且能保證響應速度。BAUMER堡盟傳感器遠距離激光測距儀在工作時向目標射出一束很細的激光
    發表于 04-27 12:32

    激光測距傳感器的應用

    `汽車防撞探測:一般來說,大多數現有汽車碰撞預防系統的激光測距傳感器使用激光光束以不接觸方式用于識別汽車在前或者在后形勢的目標汽車之間的距
    發表于 11-12 11:07

    【北醒TFmini-S 測距/避障激光雷達傳感器免費試用連載】基于北醒TFmini-S 測距/避障激光雷達傳感器關鍵地區人員靠近防撞提醒裝置

    項目名稱:基于北醒TFmini-S 測距/避障激光雷達傳感器關鍵地區人員靠近防撞提醒裝置試用計劃:申請理由本人在嵌入式和電路領域有五年多的學習和開發經驗,曾設計過北斗和GPS定位救生裝
    發表于 05-28 17:29

    【北醒TFmini-S 測距/避障激光雷達傳感器免費試用連載】傳送帶貨物監測

    TFmini-S 測距/避障激光雷達傳感器完善生產線貨物監測功能。項目計劃①根據文檔,對傳感器使用快速入門②在開發板上開發
    發表于 05-28 17:31

    【北醒TFmini-S 測距/避障激光雷達傳感器免費試用連載】基于FPGA平臺的YOLO-Complex點云數據加速

    開發驗證。項目計劃①基于YOLO-Complex算法,開發RTL工程,實現點云算法,目前完成度80%;②學習北醒TFmini-S 測距/避障激光雷達
    發表于 05-28 17:32

    【北醒TFmini-S 測距/避障激光雷達傳感器試用連載】——上位機測試

    更是吃驚,非常小巧的傳感器,非常輕便。作為一款激光雷達,小巧輕便會非常有優勢。如果運用在重量控制嚴格、位置空間有限的無人機上,優勢會非常明顯。通過對比我們可以看到,它的大小基本只有學生的橡皮擦那么大
    發表于 06-13 22:08

    LDS激光測距傳感器

    比較全的傳感器產品介紹 激光測距傳感器獲取距離信息。當激光投射到障礙物上時,會在傳感器里形成光斑
    發表于 09-14 07:44

    LiDAR激光雷達技術原理及Arduino示例代碼糾錯

    激光雷達(Light Detection and Ranging,LiDAR)即激光探測和測距,又稱光學雷達,是自動駕駛領域的一種基礎感測技術。LI
    的頭像 發表于 07-21 09:29 ?4828次閱讀
    <b class='flag-5'>LiDAR</b><b class='flag-5'>激光</b>雷達技術原理及<b class='flag-5'>Arduino</b>示例代碼糾錯

    什么是LiDAR激光探測與測距

    LiDAR激光探測與測距LiDAR是Light Detection And Ranging(激光探測與
    的頭像 發表于 04-30 14:41 ?3821次閱讀
    什么是<b class='flag-5'>LiDAR</b>(<b class='flag-5'>激光</b>探測與<b class='flag-5'>測距</b>)

    如何選擇激光測距傳感器

    激光測距傳感器是一種廣泛應用于工業、測量和科學領域的高精度測量設備,它可以通過激光束測量目標距離。但是,如何選擇適合自己需要的激光
    的頭像 發表于 10-10 17:11 ?1096次閱讀
    如何選擇<b class='flag-5'>激光</b><b class='flag-5'>測距</b><b class='flag-5'>傳感器</b>?

    激光測距傳感器的原理和應用實例

    激光測距傳感器原理和應用實例 激光測距傳感器是一種通過激光
    的頭像 發表于 03-05 16:29 ?1618次閱讀

    lidar傳感器激光測距傳感器的區別

    LiDAR傳感器激光測距傳感器是兩種不同類型的傳感器,它們在原理、應用和性能方面存在一些區別。
    的頭像 發表于 08-29 15:56 ?525次閱讀

    激光測距傳感器輸出什么信號

    激光測距傳感器輸出的信號類型多樣,這些信號類型根據應用場景、傳輸距離、抗電磁干擾能力等因素進行選擇。 一、激光測距
    的頭像 發表于 08-29 16:08 ?574次閱讀

    激光測距傳感器怎么接線

    激光測距傳感器是一種利用激光技術進行距離測量的傳感器,廣泛應用于工業自動化、機器人導航、無人駕駛等領域。 一、
    的頭像 發表于 08-29 16:13 ?766次閱讀
    主站蜘蛛池模板: 精品四虎国产在免费观看| 日韩 国产 欧美视频二区| 亚洲精品无码久久久久A片空| 岛国精品在线观看| 欧美激情视频一区二区| 1000视频在线播放| 久久久久久久伊人电影| 亚洲视频国产| 国内精品七七久久影院| 丫鬟粗大狠狠贯穿h| 国产精品久久久久久久久久久 | 91视频夜色| 快播黄色电影| 在线免费观看国产精品| 久久精品动漫99精品动漫| 亚洲在线中文无码首页| 好男人好资源视频高清| 亚洲国产免费观看视频| 国产亚洲精品久久无码98| 午夜国产精品视频| 国产精品无码亚洲网| 午夜视频在线观看国产| 国产三级在线观看视频| 小黄文污到你湿| 国产亚洲精品字幕在线观看| 亚洲爆乳无码精品AAA片蜜桃| 国产乱子影视频上线免费观看| 午夜影院一区二区三区| 国产私拍福利精品视频| 亚洲精品白色在线发布| 精品国产人成亚洲区| 永久免费在线视频| 就去色一色| 99久久99久久免费精品蜜桃| 欧美另类极品videosbest| 扒开校花粉嫩小泬喷潮漫画| 日本艳妓BBW高潮一19| 古风H啪肉NP文| 亚洲AV蜜桃永久无码精品红樱桃| 国产在线精品国自产拍影院午夜 | 挠黑色超薄丝袜脚心vk40分钟|