資料介紹
描述
如果您必須為項(xiàng)目鉆孔一定深度,則需要帶有深度顯示的臺(tái)鉆。大多數(shù)臺(tái)鉆都有一個(gè)帶箭頭的尺子用于閱讀。鉆孔的成功取決于您讀取所需位置的準(zhǔn)確度。在這個(gè) Arduino 項(xiàng)目中,我提出了一個(gè)替代方案:帶有陀螺儀傳感器的鉆孔深度顯示器和帶有 Arduino 支持的 7 段顯示器。
我在車間最常使用的機(jī)器不是鋸或磨床。到目前為止,這是臺(tái)鉆。無論項(xiàng)目如何,它實(shí)際上總是被使用。如果我需要一定的鉆孔深度,我可以使用機(jī)器上的內(nèi)置尺子。記住我必須鉆到的深度。它實(shí)際上運(yùn)作良好。
但是隨著年齡的增長——是的,是的,是的——對我來說,以毫米精度讀取深度變得越來越困難。而如果光線不夠亮,則幾乎無法閱讀。但是只是為此戴上眼鏡?鉆孔后,眼鏡存放在哪里?我還沒有那么遠(yuǎn)。
忠實(shí)于“2 Secon Lean”中 Paul Akers 的座右銘:
修復(fù)你的問題!
必須有一個(gè)更好的解決方案,你只需思考并做到。
測量可能性
我當(dāng)然可以在刻度前放一個(gè)放大鏡,使尺子更容易閱讀。它會(huì)改善讀數(shù),但我必須記住每種情況下的測量值也無濟(jì)于事。如果你在做手工藝品,那也應(yīng)該很有趣。
這就是為什么電子解決方案要好得多的原因。最好在一個(gè)小空間里,以便所有東西都放在鉆頭的開/關(guān)開關(guān)旁邊。對于這種情況,我喜歡使用 Arduino Nano。它有足夠的引腳來控制幾乎所有東西,并且相應(yīng)地很小。
但是如何測量鉆孔深度?長度測量有多種可能性。安裝超聲波測量?可以工作,但只需要一點(diǎn)機(jī)械裝置,它與鉆頭一起移動(dòng)作為反射表面。還是使用拉線編碼器?如果您自己構(gòu)建它是可能的,但非常復(fù)雜:帶有轉(zhuǎn)盤、叉形光柵和彈簧復(fù)位。最好馬上帶一個(gè)旋轉(zhuǎn)編碼器?這將意味著更少的組件 - 是的,但它太粗糙了,你必須安裝齒輪才能翻譯。
好吧,那就多想想吧。
我的鉆頭和大多數(shù)鉆頭一樣,側(cè)面有一個(gè)手輪來調(diào)節(jié)深度。它可以旋轉(zhuǎn)大約。270°。所以甚至沒有一個(gè)完整的回合。
這非常適合使用陀螺儀傳感器進(jìn)行角度測量。電纜連接不能扭曲,只需要一個(gè)便宜的組件。陀螺儀傳感器也可以很容易地直接連接到手輪的旋轉(zhuǎn)軸上。
概念
在指定鉆孔深度時(shí),我總是以相同的方式進(jìn)行:用鉆頭刮擦表面,記下坐標(biāo),然后添加所需的鉆孔深度,最后鉆孔直到達(dá)到深度。
我想保留基本流程。為了不鉆得太深,我想收到有關(guān)何時(shí)達(dá)到鉆孔深度的信息。

一個(gè)按鈕接管了這個(gè)功能。當(dāng)您按下它時(shí),Arduino 會(huì)將當(dāng)前鉆孔位置保存為停止值,并在以后到達(dá)時(shí)隨時(shí)提醒我。
其余組件占用更多空間且重量明顯更大。幸運(yùn)的是,我的機(jī)器外殼是金屬制成的。這就是為什么我使用釹磁鐵來固定它。
問題仍然存在,傳感器應(yīng)該如何連接到機(jī)器上?
鉆頭的軸上有一個(gè) SW17 六角螺母。所以我只需要一個(gè)可以接受傳感器并且可以插入六角螺母的 3D 打印組件。

所需組件
- Arduino納米
- 陀螺儀傳感器 GY-521
- 8位7段模塊(帶MAX7219 IC的SPI版本)
- 按鈕
- 開/關(guān)
- 電源:用于 AA 或 AAA 電池或移動(dòng)電源的電池夾
- 3D打印外殼
- 釹磁鐵
陀螺儀傳感器的連接
陀螺儀傳感器通過 I2C 連接。所以我們必須為 Nano 使用 A5 和 A4。
7段模塊
連接 7 段模塊時(shí)可以使用任何數(shù)字引腳。使用 Arduino 草圖設(shè)置引腳。
- VCC -> 3.3V
- 接地 -> 接地
- DIN -> D12
- CS -> D10
- 時(shí)鐘-> D11
按鈕
按鈕的輸入引腳也可以自由選擇。我正在使用引腳 D9。
電源
對于電源,我使用 6 節(jié) AA 電池。在開/關(guān)開關(guān)后,它們?yōu)檎麄€(gè)系統(tǒng)供電。
套管
我使用 Autodesk Fusion 360 設(shè)計(jì)了外殼。我使用 Anycubic i3 Mega 創(chuàng)建了 3D 打印。
用于連接機(jī)器的釹磁鐵被粘在里面。如果整個(gè)鉆孔深度顯示受到阻礙,所有東西都會(huì)很快被移除。
阿杜諾素描
我使用LedControl.h庫來控制 7 段顯示。如果您還沒有安裝這些,您必須首先使用庫管理器安裝它們。
陀螺儀傳感器通過 I2C 總線連接。在為傳感器尋找可能的庫時(shí),我決定不使用任何庫。通信是通過Wire.h 進(jìn)行的。
在文章的末尾,您會(huì)找到一些幫助我理解的鏈接。
7 段顯示器的控制與LedControl配合得非常好。
用引腳初始化后,設(shè)置過程只需要一些準(zhǔn)備工作即可喚醒顯示器并調(diào)整亮度。
在循環(huán)部分,顯示屏僅以數(shù)字顯示當(dāng)前鉆孔深度和停止位置(如果已設(shè)置)。
顯示器需要每個(gè)數(shù)字作為字符類型。我想使用小數(shù)位作為準(zhǔn)確性。函數(shù) dtostrf 將浮點(diǎn)數(shù)轉(zhuǎn)換為字符數(shù)組。然后變成一個(gè)字符串以在顯示屏上按字符顯示。
dtostrf ( currentPos, 4,1, txt ) ;
s = '' + String ( txt ) ;
lc. setChar ( 0,4, see charAt ( see length () -1 ) , false ) ;
lc. setChar ( 0.5, see charAt ( see length () -3 ) , true ) ;
lc. setChar ( 0.6, see charAt ( see length () -4 ) , false ) ;
lc. setChar ( 0.7, see charAt ( see length () -5 ) , false ) ;
到達(dá)停止位置時(shí),顯示屏上會(huì)出現(xiàn)“StOP”。可以使用setRow過程和適當(dāng)?shù)奈荒J?B00001111 生成小“t”。
讀取陀螺儀傳感器通過線庫的功能工作。我只使用加速度計(jì)來確定角位置。
使用 USB 連接到 Arduino IDE 時(shí),一切正常。拔下并連接外部電源后,傳感器沒有提供任何數(shù)據(jù)。它僅在重置 Arduino 后再次起作用。
這讓我在整個(gè)項(xiàng)目中最頭疼。你可以說鉆孔深度指示器可能救了我的眼睛,但這就是我拔掉幾乎所有頭發(fā)的原因!
經(jīng)過長時(shí)間的搜索,在喚醒傳感器后設(shè)置等待時(shí)間是解決方案。這使得延遲(1000)成為整個(gè)源代碼中最重要的命令。
//prepare GY-521 sensor
//we use only accelerator data
Wire.begin();
Wire.beginTransmission(MPU);
Wire.write(0x6B);
Wire.write(0x00); // wake up MPU
Wire.endTransmission(true);
//this delay was very necessary in my case!
delay(1000);
Wire.beginTransmission(MPU);
Wire.write(0x1C); //register ACCEL_CONFIG
Wire.write(0x10); //Set as 00010000 for +/- 8g full scale range
Wire.endTransmission(true);
偏移值必須在一開始就為傳感器確定好,否則數(shù)值會(huì)出現(xiàn)波動(dòng)。在設(shè)置部分,測量了 100 個(gè)值并對偏差進(jìn)行平均。
從傳感器數(shù)據(jù)計(jì)算角度并不容易。但是有很多關(guān)于如何進(jìn)行計(jì)算的說明。
使用以下公式計(jì)算以度為單位的 X 角:
AccAngleX = (atan ((AccY) / sqrt (pow ((AccX), 2) + pow ((AccZ), 2))) * rad_to_deg);
但是,加速度傳感器的數(shù)值波動(dòng)很大。因此,當(dāng)前計(jì)算的值與之前的值各取 50% 的平均值。
TotalAngleX = 0.5 * TotalAngleX + 0.5 * AccAngleX;
角度值由傳感器從-90°到+90°輸出。但我需要一個(gè)從 0° 到 360° 的角度來轉(zhuǎn)換為鉆孔深度。
我還沒有找到一個(gè)簡單的解決方案。然而,對于我的應(yīng)用程序,查看傳感器數(shù)據(jù) Z 和 Y 是正數(shù)還是負(fù)數(shù)就足夠了。并相應(yīng)地轉(zhuǎn)換角度。
delta=0;
if ((AccZ<0)) {
delta=180.0-TotalAngleX*2.0;
}
if ((AccZ>0)&&(AccY<0)) {
delta=360.0;
}
DrillingMachineAngle=TotalAngleX+delta;
//if near 360°, display better 0°
if (DrillingMachineAngle>350) {DrillingMachineAngle=0;}
仍然缺少的是手輪能夠?qū)崿F(xiàn)的最大可能旋轉(zhuǎn)角度。最簡單的方法是通過 Serial.print 輸出確定的角度并記下最大值。
對我來說是316°。最大鉆孔深度為 50 mm 時(shí),當(dāng)前位置計(jì)算如下:
currentPos=50.0/316.0*DrillingMachineAngle;
如果按下按鈕,Arduino 會(huì)保存當(dāng)前鉆孔位置。顯示屏上顯示 8888,等待 1 秒。
如果設(shè)置了停止位置,則直到停止的剩余鉆孔深度顯示在右側(cè)顯示屏上。
組裝和測試
陀螺傳感器最好用一點(diǎn)熱膠固定。引導(dǎo)連接電纜穿過蓋板。這就是這部分。
在第一次測試中,陀螺傳感器必須首先對齊。我是水平安裝的。由于支架設(shè)計(jì)為可旋轉(zhuǎn),因此可以輕松調(diào)整,直到顯示屏上顯示 0.0。

然后可以開始第一個(gè)測試。總的來說,我對解決方案非常滿意。傳感器反應(yīng)非常迅速,計(jì)算值與鉆孔深度完全匹配。
得益于大型 LED 顯示屏,我不必?fù)?dān)心 85 歲以下的眼鏡可以讀取準(zhǔn)確的鉆孔深度。
所以永遠(yuǎn)記住保羅的話:修復(fù)你的問題!
玩得開心!
?
- 愛普生XV-9300LP汽車陀螺儀傳感器的特征和用途
- XV7011BB陀螺儀傳感器廣泛用于工業(yè)應(yīng)用
- 用于導(dǎo)航系統(tǒng)的數(shù)字輸出陀螺儀傳感器
- XV-9300LP 微型陀螺儀傳感器適用汽車系統(tǒng)
- 陀螺儀傳感器-它們是如何工作的,未來會(huì)發(fā)生什么
- 針對工業(yè)應(yīng)用的抗振動(dòng)和姿態(tài)控制的陀螺儀傳感器:XV7021BB
- 陀螺儀x軸和y軸的應(yīng)用
- EPSON X2A0002710002 XV7011BB陀螺儀傳感器的特征和用途
- EPSON的GGPM6083STD陀螺儀傳感器(壓電俠)
- XV-3510CB振動(dòng)陀螺儀傳感器
- XV7081BB陀螺儀傳感器
- MPU6050六軸陀螺儀傳感器實(shí)驗(yàn)的資料合集免費(fèi)下載 29次下載
- MPU6050陀螺儀傳感器的資料合集免費(fèi)下載 138次下載
- MPU6050陀螺儀傳感器的電路原理圖免費(fèi)下載 103次下載
- 加速度計(jì)和陀螺儀傳感器_原理_檢測及應(yīng)用 42次下載
- 手機(jī)陀螺儀失靈解決方法 2.9w次閱讀
- 陀螺儀感應(yīng)器常見的應(yīng)用領(lǐng)域 1895次閱讀
- 陀螺儀傳感器的分類_陀螺儀傳感器有什么用 7896次閱讀
- 工業(yè)和汽車級MEMS陀螺儀的應(yīng)用 4419次閱讀
- 陀螺儀傳感器工作原理_陀螺儀傳感器的應(yīng)用 7752次閱讀
- 地磁傳感器有什么用_地磁傳感器與陀螺儀區(qū)別 2w次閱讀
- 帶你看看高精度陀螺儀有哪些 2.1w次閱讀
- 分析三軸陀螺儀的工作原理及應(yīng)用 1.8w次閱讀
- 陀螺儀傳感器和加速度傳感器的區(qū)別和相關(guān)應(yīng)用 4510次閱讀
- 陀螺儀有什么用_陀螺儀的特性圖解_陀螺儀的應(yīng)用 1w次閱讀
- 三軸陀螺儀有什么用_三軸陀螺儀的作用 1.3w次閱讀
- 詳解三軸陀螺儀的技術(shù)原理 4780次閱讀
- 三軸陀螺儀基本技術(shù)原理解析 3577次閱讀
- 詳解冷門但很重要的手機(jī)陀螺儀 4.3w次閱讀
- ADI ADXRS624:完整的陀螺儀傳感方案 1521次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評論