資料介紹
描述
如果您必須為項目鉆孔一定深度,則需要帶有深度顯示的臺鉆。大多數(shù)臺鉆都有一個帶箭頭的尺子用于閱讀。鉆孔的成功取決于您讀取所需位置的準(zhǔn)確度。在這個 Arduino 項目中,我提出了一個替代方案:帶有陀螺儀傳感器的鉆孔深度顯示器和帶有 Arduino 支持的 7 段顯示器。
我在車間最常使用的機器不是鋸或磨床。到目前為止,這是臺鉆。無論項目如何,它實際上總是被使用。如果我需要一定的鉆孔深度,我可以使用機器上的內(nèi)置尺子。記住我必須鉆到的深度。它實際上運作良好。
但是隨著年齡的增長——是的,是的,是的——對我來說,以毫米精度讀取深度變得越來越困難。而如果光線不夠亮,則幾乎無法閱讀。但是只是為此戴上眼鏡?鉆孔后,眼鏡存放在哪里?我還沒有那么遠。
忠實于“2 Secon Lean”中 Paul Akers 的座右銘:
修復(fù)你的問題!
必須有一個更好的解決方案,你只需思考并做到。
測量可能性
我當(dāng)然可以在刻度前放一個放大鏡,使尺子更容易閱讀。它會改善讀數(shù),但我必須記住每種情況下的測量值也無濟于事。如果你在做手工藝品,那也應(yīng)該很有趣。
這就是為什么電子解決方案要好得多的原因。最好在一個小空間里,以便所有東西都放在鉆頭的開/關(guān)開關(guān)旁邊。對于這種情況,我喜歡使用 Arduino Nano。它有足夠的引腳來控制幾乎所有東西,并且相應(yīng)地很小。
但是如何測量鉆孔深度?長度測量有多種可能性。安裝超聲波測量?可以工作,但只需要一點機械裝置,它與鉆頭一起移動作為反射表面。還是使用拉線編碼器?如果您自己構(gòu)建它是可能的,但非常復(fù)雜:帶有轉(zhuǎn)盤、叉形光柵和彈簧復(fù)位。最好馬上帶一個旋轉(zhuǎn)編碼器?這將意味著更少的組件 - 是的,但它太粗糙了,你必須安裝齒輪才能翻譯。
好吧,那就多想想吧。
我的鉆頭和大多數(shù)鉆頭一樣,側(cè)面有一個手輪來調(diào)節(jié)深度。它可以旋轉(zhuǎn)大約。270°。所以甚至沒有一個完整的回合。
這非常適合使用陀螺儀傳感器進行角度測量。電纜連接不能扭曲,只需要一個便宜的組件。陀螺儀傳感器也可以很容易地直接連接到手輪的旋轉(zhuǎn)軸上。
概念
在指定鉆孔深度時,我總是以相同的方式進行:用鉆頭刮擦表面,記下坐標(biāo),然后添加所需的鉆孔深度,最后鉆孔直到達到深度。
我想保留基本流程。為了不鉆得太深,我想收到有關(guān)何時達到鉆孔深度的信息。
一個按鈕接管了這個功能。當(dāng)您按下它時,Arduino 會將當(dāng)前鉆孔位置保存為停止值,并在以后到達時隨時提醒我。
其余組件占用更多空間且重量明顯更大。幸運的是,我的機器外殼是金屬制成的。這就是為什么我使用釹磁鐵來固定它。
問題仍然存在,傳感器應(yīng)該如何連接到機器上?
鉆頭的軸上有一個 SW17 六角螺母。所以我只需要一個可以接受傳感器并且可以插入六角螺母的 3D 打印組件。
所需組件
- Arduino納米
- 陀螺儀傳感器 GY-521
- 8位7段模塊(帶MAX7219 IC的SPI版本)
- 按鈕
- 開/關(guān)
- 電源:用于 AA 或 AAA 電池或移動電源的電池夾
- 3D打印外殼
- 釹磁鐵
陀螺儀傳感器的連接
陀螺儀傳感器通過 I2C 連接。所以我們必須為 Nano 使用 A5 和 A4。
7段模塊
連接 7 段模塊時可以使用任何數(shù)字引腳。使用 Arduino 草圖設(shè)置引腳。
- VCC -> 3.3V
- 接地 -> 接地
- DIN -> D12
- CS -> D10
- 時鐘-> D11
按鈕
按鈕的輸入引腳也可以自由選擇。我正在使用引腳 D9。
電源
對于電源,我使用 6 節(jié) AA 電池。在開/關(guān)開關(guān)后,它們?yōu)檎麄€系統(tǒng)供電。
套管
我使用 Autodesk Fusion 360 設(shè)計了外殼。我使用 Anycubic i3 Mega 創(chuàng)建了 3D 打印。
用于連接機器的釹磁鐵被粘在里面。如果整個鉆孔深度顯示受到阻礙,所有東西都會很快被移除。
阿杜諾素描
我使用LedControl.h庫來控制 7 段顯示。如果您還沒有安裝這些,您必須首先使用庫管理器安裝它們。
陀螺儀傳感器通過 I2C 總線連接。在為傳感器尋找可能的庫時,我決定不使用任何庫。通信是通過Wire.h 進行的。
在文章的末尾,您會找到一些幫助我理解的鏈接。
7 段顯示器的控制與LedControl配合得非常好。
用引腳初始化后,設(shè)置過程只需要一些準(zhǔn)備工作即可喚醒顯示器并調(diào)整亮度。
在循環(huán)部分,顯示屏僅以數(shù)字顯示當(dāng)前鉆孔深度和停止位置(如果已設(shè)置)。
顯示器需要每個數(shù)字作為字符類型。我想使用小數(shù)位作為準(zhǔn)確性。函數(shù) dtostrf 將浮點數(shù)轉(zhuǎn)換為字符數(shù)組。然后變成一個字符串以在顯示屏上按字符顯示。
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 ) ;
到達停止位置時,顯示屏上會出現(xiàn)“StOP”。可以使用setRow過程和適當(dāng)?shù)奈荒J?B00001111 生成小“t”。
讀取陀螺儀傳感器通過線庫的功能工作。我只使用加速度計來確定角位置。
使用 USB 連接到 Arduino IDE 時,一切正常。拔下并連接外部電源后,傳感器沒有提供任何數(shù)據(jù)。它僅在重置 Arduino 后再次起作用。
這讓我在整個項目中最頭疼。你可以說鉆孔深度指示器可能救了我的眼睛,但這就是我拔掉幾乎所有頭發(fā)的原因!
經(jīng)過長時間的搜索,在喚醒傳感器后設(shè)置等待時間是解決方案。這使得延遲(1000)成為整個源代碼中最重要的命令。
//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ù)值會出現(xiàn)波動。在設(shè)置部分,測量了 100 個值并對偏差進行平均。
從傳感器數(shù)據(jù)計算角度并不容易。但是有很多關(guān)于如何進行計算的說明。
使用以下公式計算以度為單位的 X 角:
AccAngleX = (atan ((AccY) / sqrt (pow ((AccX), 2) + pow ((AccZ), 2))) * rad_to_deg);
但是,加速度傳感器的數(shù)值波動很大。因此,當(dāng)前計算的值與之前的值各取 50% 的平均值。
TotalAngleX = 0.5 * TotalAngleX + 0.5 * AccAngleX;
角度值由傳感器從-90°到+90°輸出。但我需要一個從 0° 到 360° 的角度來轉(zhuǎn)換為鉆孔深度。
我還沒有找到一個簡單的解決方案。然而,對于我的應(yīng)用程序,查看傳感器數(shù)據(jù) Z 和 Y 是正數(shù)還是負數(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 時,當(dāng)前位置計算如下:
currentPos=50.0/316.0*DrillingMachineAngle;
如果按下按鈕,Arduino 會保存當(dāng)前鉆孔位置。顯示屏上顯示 8888,等待 1 秒。
如果設(shè)置了停止位置,則直到停止的剩余鉆孔深度顯示在右側(cè)顯示屏上。
組裝和測試
陀螺傳感器最好用一點熱膠固定。引導(dǎo)連接電纜穿過蓋板。這就是這部分。
在第一次測試中,陀螺傳感器必須首先對齊。我是水平安裝的。由于支架設(shè)計為可旋轉(zhuǎn),因此可以輕松調(diào)整,直到顯示屏上顯示 0.0。
然后可以開始第一個測試。總的來說,我對解決方案非常滿意。傳感器反應(yīng)非常迅速,計算值與鉆孔深度完全匹配。
得益于大型 LED 顯示屏,我不必擔(dān)心 85 歲以下的眼鏡可以讀取準(zhǔn)確的鉆孔深度。
所以永遠記住保羅的話:修復(fù)你的問題!
玩得開心!
?
- XV7011BB陀螺儀傳感器廣泛用于工業(yè)應(yīng)用
- 用于導(dǎo)航系統(tǒng)的數(shù)字輸出陀螺儀傳感器
- XV-9300LP 微型陀螺儀傳感器適用汽車系統(tǒng)
- 陀螺儀傳感器-它們是如何工作的,未來會發(fā)生什么
- 針對工業(yè)應(yīng)用的抗振動和姿態(tài)控制的陀螺儀傳感器:XV7021BB
- 陀螺儀x軸和y軸的應(yīng)用
- EPSON X2A0002710002 XV7011BB陀螺儀傳感器的特征和用途
- EPSON的GGPM6083STD陀螺儀傳感器(壓電俠)
- XV-3510CB振動陀螺儀傳感器
- XV7081BB陀螺儀傳感器
- 愛普生陀螺儀傳感器的特點
- MPU6050六軸陀螺儀傳感器實驗的資料合集免費下載 28次下載
- MPU6050陀螺儀傳感器的資料合集免費下載 138次下載
- MPU6050陀螺儀傳感器的電路原理圖免費下載 103次下載
- 加速度計和陀螺儀傳感器_原理_檢測及應(yīng)用 42次下載
- 手機陀螺儀失靈解決方法 2.2w次閱讀
- 陀螺儀感應(yīng)器常見的應(yīng)用領(lǐng)域 1096次閱讀
- 陀螺儀傳感器的分類_陀螺儀傳感器有什么用 7623次閱讀
- 工業(yè)和汽車級MEMS陀螺儀的應(yīng)用 4084次閱讀
- 陀螺儀傳感器工作原理_陀螺儀傳感器的應(yīng)用 7572次閱讀
- 地磁傳感器有什么用_地磁傳感器與陀螺儀區(qū)別 2w次閱讀
- 帶你看看高精度陀螺儀有哪些 2w次閱讀
- 分析三軸陀螺儀的工作原理及應(yīng)用 1.8w次閱讀
- 陀螺儀傳感器和加速度傳感器的區(qū)別和相關(guān)應(yīng)用 4387次閱讀
- 陀螺儀有什么用_陀螺儀的特性圖解_陀螺儀的應(yīng)用 9942次閱讀
- 三軸陀螺儀有什么用_三軸陀螺儀的作用 1.3w次閱讀
- 詳解三軸陀螺儀的技術(shù)原理 4490次閱讀
- 三軸陀螺儀基本技術(shù)原理解析 3273次閱讀
- 詳解冷門但很重要的手機陀螺儀 4.3w次閱讀
- ADI ADXRS624:完整的陀螺儀傳感方案 1446次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多