0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于XIAO的迷你激光數(shù)顯測(cè)距儀設(shè)計(jì)

柴火創(chuàng)客空間 ? 來源: 柴火創(chuàng)客空間 ? 2024-10-22 15:03 ? 次閱讀

今天小編給大家?guī)淼氖莵碜試?guó)外的Maker Gokux 的Tiny LiDAR的項(xiàng)目。這個(gè)測(cè)距儀項(xiàng)目使用了一個(gè)0.49英寸的OLED顯示屏,配合微型電池和微XIAO ESP32c3,打造出一個(gè)超級(jí)迷你的激光測(cè)距儀。通過使用VL53L0X TOF的激光測(cè)距傳感器,可以實(shí)現(xiàn)2米內(nèi)的距離測(cè)量。

Gokux是OLED顯示器的忠實(shí)粉絲。最近做的還能多項(xiàng)目都使用了OLED顯示屏。在研究一個(gè)項(xiàng)目時(shí),Gokux遇到了最小的OLED顯示屏,一個(gè)0.49英寸的64x32像素的微型顯示屏。他決定用這個(gè)顯示器構(gòu)建一個(gè)超級(jí)小工具。除了顯示器之外,這個(gè)項(xiàng)目使用了微型電池和微型微控制器 Xiao ESP32。這就是Gokux想出的“LiDAR ”項(xiàng)目。

材料清單

硬件:

Seeed studio xiao esp32c3

小型電池

0.49英寸OLED顯示模塊

基于VL53L0X TOF的激光激光測(cè)距傳感器

滑動(dòng)開關(guān)

B-7000 多用途膠水

30 AWG 電線

軟件

Fusion360

arduino IDE

工具

烙鐵套件

線切割機(jī)

焊接工具

3D打印機(jī)及耗材

產(chǎn)品設(shè)計(jì)

ef464e3a-9042-11ef-a511-92fbcf53809c.jpg

利用Fusion 360來規(guī)劃和設(shè)計(jì)我的項(xiàng)目,這需要仔細(xì)的空間優(yōu)化。需要將所有部件安裝到盡可能小的外形尺寸中,同時(shí)確保實(shí)用性,包括足夠的布線空間和易于組裝。首先,導(dǎo)入了零件的所有 3D 模型,并通過將零件放置在不同的位置來嘗試不同的配置。一旦我找到了最佳配置,圍繞它們建造了外殼。下面提供了所有設(shè)計(jì)文件。

3D打印

將所有模型導(dǎo)出到。STL 文件,使用 Anycubic 打印機(jī) 3D 打印它們。在這個(gè)項(xiàng)目中,我使用了 Numakers PLA+ Outrageous Orange 燈絲。你可以找到。第一步中的 STL 文件。

代碼燒錄

我總是喜歡在組裝之前將代碼上傳到微控制器。我正在使用Arduino IDE刷新代碼。按照以下教程為 Seeed Studio XIAO ESP32C3 設(shè)置 IDE,并了解有關(guān)此板的更多信息

確保將所有必需的庫安裝到 Arduino IDE 中

efe05e80-9042-11ef-a511-92fbcf53809c.png?VL53L0X庫

ef3691ac-9042-11ef-a511-92fbcf53809c.png?MedianFilter 庫

下面是該項(xiàng)目的完整代碼

//The range readings are in units of mm. #include
#include#include          
#include#include           
#define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels
// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins) Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); VL53L0X sensor;
MedianFilter test(10, 0);
// Uncomment this line to use long range mode. This
// increases the sensitivity of the sensor and extends its
// potential range, but increases the likelihood of getting
// an inaccurate reading because of reflections from objects
// other than the intended target. It works best in dark
// conditions.
//#define LONG_RANGE
// Uncomment ONE of these two lines to get
// - higher speed at the cost of lower accuracy OR
// - higher accuracy at the cost of lower speed
//#define HIGH_SPEED #define HIGH_ACCURACY void setup()
{
Serial.begin(9600); Wire.begin();
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3D for 128x64 Serial.println(F("SSD1306 allocation failed"));    
for(;;);
}
sensor.init(); sensor.setTimeout(500);




  
#if defined LONG_RANGE    
// lower the return signal rate limit (default is 0.25 MCPS) sensor.setSignalRateLimit(0.1);
// increase laser pulse periods (defaults are 14 and 10 PCLKs) sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodPreRange,   18);
sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodFinalRange,  14); #endif
#if defined HIGH_SPEED
// reduce timing budget to 20 ms (default is about 33 ms) sensor.setMeasurementTimingBudget(20000);
#elif defined HIGH_ACCURACY
// increase timing budget to 200 ms sensor.setMeasurementTimingBudget(200000);
#endif
// Clear the buffer. display.setTextColor(WHITE);
}
void displayDistance( int val)
{
display.clearDisplay(); display.setTextSize(3); display.setCursor(40,32); display.print(val); display.setTextSize(1); display.setCursor(60,55); display.print("mm"); display.display(); delay(100);
}
void loop()
{
int o,r = sensor.readRangeSingleMillimeters(); test.in( r );
o = test.out(); Serial.print(o);
if (sensor.timeoutOccurred()) { Serial.print(" TIMEOUT"); } Serial.println();
displayDistance( o );
}

接線圖

f00c167e-9042-11ef-a511-92fbcf53809c.jpg

小ESP32C3支持鋰電池充放電管理。這意味著 BMS 是內(nèi)置的。因此,不需要外部BM S。您可以通過 USB 端口為電池充電

組裝和接線

由于我們項(xiàng)目的規(guī)模很小,我們需要使用不同的組裝方法。由于零件上沒有任何螺絲孔,因此我們不能使用微小的螺釘將所有東西固定在一起。最好的使用方法是膠水,這與大多數(shù)緊湊型科技產(chǎn)品

(例如 AirPods)中使用的制造方法相同。我們?cè)谶@里沒有使用熱膠,我們使用的是 B-7000 多用途膠水。現(xiàn)在讓我們開始組裝

解題步驟 5.1

將OLED模塊的所有四根電線焊接到傳感器上。此外,從傳感器上焊接另外四根 20 毫米的電線,這些電線將在后續(xù)步驟中用于連接到 xiao GPIO。

解題步驟 5.2

將OLED模塊放入3D打印插槽中,同時(shí)將傳感器放在側(cè)面,并確保將傳感器與側(cè)面的小窗口對(duì)齊

解題步驟 5.3

現(xiàn)在粘上OLED模塊和傳感器。在模塊的側(cè)面涂上膠水

解題步驟 5.4

將電池粘在OLED模塊頂部

解題步驟 5.5

減少開關(guān)端子的長(zhǎng)度,將電池 BT+ 線切成合適的長(zhǎng)度,然后將 BT+ 線焊接到其中一個(gè)開關(guān)端子中。此外,從開關(guān)上焊接一根小電線。將連接到 Xiao 板的 BAT+

解題步驟 5.6

現(xiàn)在將開關(guān)放入 3D 打印插槽并將其粘合到位

解題步驟 5.7

將所有 GPIO 線焊接在 Xiao 板下方。通過 Xiao 的 3V3 引腳為 OLED 和傳感器供電。此外,將電池負(fù)極線和正極 BT 線從開關(guān)連接到 Xiao 的電池端子。

解題步驟 5.8

推下所有電線,將 Xiao 板放入 3D 打印中。此外,將 USB 端口與 3D 打印上的孔對(duì)齊。并粘上蕭板

解題步驟 5.9

我們剛剛完成了項(xiàng)目的組裝。打開電源

組裝完成有效果了

測(cè)試

讓我們測(cè)試一下我們的測(cè)量的準(zhǔn)確性。我在距離設(shè)備 10 厘米的地方放置了一個(gè)物體。我們項(xiàng)目

的測(cè)量值也顯示為 100 毫米,因此效果很好。

總結(jié)

向其添加鑰匙鏈,可以將其與側(cè)面的 3 毫米小孔連接起來。所以最好隨身攜帶。我們的傳感器可以測(cè)量高達(dá) 2 米,但精度很低。它提供長(zhǎng)達(dá) 1 米的可靠測(cè)量。所以建議大家在這個(gè)范圍內(nèi)使用它。所以這是Gokux做的最小的項(xiàng)目。這對(duì)他來說是一次很棒的學(xué)習(xí)經(jīng)歷。他目前正在計(jì)劃在同一拓?fù)渲虚_展更多項(xiàng)目。因此,想了解他的更多作品歡迎大家點(diǎn)擊原文鏈接了解。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • OLED
    +關(guān)注

    關(guān)注

    119

    文章

    6212

    瀏覽量

    224463
  • 顯示屏
    +關(guān)注

    關(guān)注

    28

    文章

    4499

    瀏覽量

    74480
  • 測(cè)距儀
    +關(guān)注

    關(guān)注

    0

    文章

    117

    瀏覽量

    18458

原文標(biāo)題:創(chuàng)客項(xiàng)目秀|基于XIAO的迷你激光數(shù)顯測(cè)距儀

文章出處:【微信號(hào):ChaiHuoMakerSpace,微信公眾號(hào):柴火創(chuàng)客空間】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    激光測(cè)距儀

    有誰精通激光測(cè)距儀的,現(xiàn)金報(bào)酬。 QQ1071374877
    發(fā)表于 04-14 13:05

    激光測(cè)速測(cè)距儀的測(cè)量原理是什么?

    激光測(cè)速測(cè)距儀的測(cè)量原理是什么?
    發(fā)表于 09-03 17:28

    激光測(cè)距儀的原理、使用方法以及日常維護(hù)

    本帖最后由 商城客服 于 2018-1-31 16:53 編輯 激光測(cè)距儀,是利用激光對(duì)目標(biāo)的距離進(jìn)行準(zhǔn)確測(cè)定的儀器。激光
    發(fā)表于 01-31 16:50

    激光測(cè)距儀基本知識(shí)

    激光測(cè)距儀基本知識(shí) 激光測(cè)距儀的工作原理是怎樣的?激光測(cè)距儀一般采用兩種方式來測(cè)量距離:脈沖法
    發(fā)表于 12-25 16:56 ?1453次閱讀

    激光測(cè)距儀的原理和應(yīng)用

    激光測(cè)距儀的原理和應(yīng)用 1、激光測(cè)距儀的工作原理是怎樣的?  激光測(cè)距儀一般采用兩種方式來測(cè)量
    發(fā)表于 03-02 14:45 ?9792次閱讀

    超聲波測(cè)距儀激光測(cè)距儀的區(qū)別

    激光測(cè)距儀,是利用激光對(duì)目標(biāo)的距離進(jìn)行準(zhǔn)確測(cè)定的儀器。超聲波測(cè)距儀的測(cè)量精度是厘米級(jí)的,激光測(cè)距儀
    發(fā)表于 12-15 11:45 ?8404次閱讀

    激光測(cè)距儀使用方法與選購(gòu)指南

    激光測(cè)距儀,是利用激光對(duì)目標(biāo)的距離進(jìn)行準(zhǔn)確測(cè)定的儀器。激光測(cè)距儀是用激光做為主要工作物質(zhì)來進(jìn)行工
    發(fā)表于 12-15 11:50 ?7233次閱讀

    淺談激光測(cè)距儀的原理及使用方法

    激光測(cè)距儀,是利用激光對(duì)目標(biāo)的距離進(jìn)行準(zhǔn)確測(cè)定的儀器。激光測(cè)距儀在工作時(shí)向目標(biāo)射出一束很細(xì)的激光
    發(fā)表于 03-13 15:16 ?9104次閱讀

    激光測(cè)距儀使用方法

    激光測(cè)距儀是利用調(diào)制激光的某個(gè)參數(shù)對(duì)目標(biāo)的距離進(jìn)行準(zhǔn)確測(cè)定的儀器。脈沖式激光測(cè)距儀是在工作時(shí)向目標(biāo)射出一束或一序列短暫的脈沖
    發(fā)表于 11-08 10:48 ?2.8w次閱讀

    激光測(cè)距儀的原理_激光測(cè)距儀是怎樣工作的

    激光測(cè)距儀一般采用兩種方式來測(cè)量距離:脈沖法和相位法。脈沖法測(cè)距的過程是這樣的:測(cè)距儀發(fā)射出的激光經(jīng)被測(cè)量物體的反射后又被
    發(fā)表于 11-08 10:54 ?1.2w次閱讀

    紅外測(cè)距儀原理_紅外測(cè)距儀的結(jié)構(gòu)

    本文主要闡述了紅外測(cè)距儀原理及紅外測(cè)距儀的結(jié)構(gòu)。紅外測(cè)距儀作為一種精密的測(cè)量工具,已經(jīng)廣泛的應(yīng)用到各個(gè)領(lǐng)域。測(cè)距儀可以分為超聲波測(cè)距儀,紅外
    發(fā)表于 02-27 11:34 ?8077次閱讀

    紅外測(cè)距儀激光測(cè)距儀區(qū)別

    紅外測(cè)距儀作為一種精密的測(cè)量工具,已經(jīng)廣泛的應(yīng)用到各個(gè)領(lǐng)域。測(cè)距儀可以分為超聲波測(cè)距儀,紅外線測(cè)距儀激光
    的頭像 發(fā)表于 03-08 17:02 ?1.8w次閱讀

    激光測(cè)距儀測(cè)量范圍_激光測(cè)距儀的誤差是多少

    激光測(cè)距儀(Laser rangefinder),是利用調(diào)制激光的某個(gè)參數(shù)實(shí)現(xiàn)對(duì)目標(biāo)的距離測(cè)量的儀器。激光測(cè)距儀測(cè)量范圍為3.5~5000米
    的頭像 發(fā)表于 03-08 17:14 ?2.3w次閱讀

    影響激光測(cè)距儀價(jià)格的原因有哪些

    作為一種高精度的測(cè)距儀器,激光測(cè)距儀已經(jīng)廣泛地進(jìn)入人們的生活。但是在購(gòu)買激光測(cè)距儀時(shí),激光
    發(fā)表于 05-20 17:31 ?1314次閱讀

    激光測(cè)距儀工作原理 晶振在激光測(cè)距儀的作用

    激光測(cè)距儀工作原理 晶振在激光測(cè)距儀的作用? 激光測(cè)距儀是一種利用
    的頭像 發(fā)表于 01-25 16:04 ?1475次閱讀