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