【改造游標卡尺】傳送數據到電腦,自動打字紀錄,Creality3D掃描器

電子世界
60粉絲
43 次觀看·2022年10月13日
Creality|CR-Scan Lizard 3D 掃描器
* 0.05mm 高精度掃描
* 免貼點順暢掃描手感
* 一鍵模型整合與優化
募資頁面連結:
https://www.flyingv.cc/projects/31506
自動輸入游標卡尺程式碼下載: https://www.dropbox.com/sh/ayfa4jk2stwj9zl/AADw_XPzZ8V-wM3DGuKtYwC5a?dl=0
(需使用Arduino Pro Micro 或是Leonardo開發板)
日本原作者: https://qiita.com/84mota/items/c94e2387d1fc35b22e73?fbclid=IwAR33JLENrztDKrY4OADly3e49QZZn19UeroCiQkQJB9wLWnCdRE_sGQ3BUU
黃信惠老師開課了! 一起製作各種有趣的作品吧!
https://pse.is/3vkdhv
--------------------
Facebook粉絲專頁
https://www.facebook.com/DavidHuangsLab/
Instagram
https://www.instagram.com/davidhuangs...
黃信惠的瘋狂教室官網
https://www.davidhuanglab.com/
--------------------
合作邀約
[email protected]
感謝這支影片的贊助廠商
Creality CR-Scan Laser 3D掃描器
這款掃描器掃描的精度高達0.05mm
想要用最划算的價格來體驗3D掃描
請到下方的資訊欄
哈囉大家好 我是黃信惠
我今天要來製作一個很酷的工具
那就是可以自動輸入尺寸的遊標卡尺
只要連上電腦
按下游標卡尺上的按鈕
卡尺就會自動幫你打字
將測量到的數值
直接輸入到電腦裡面
這個遊標卡尺是我前陣子在網路上
看到日本這位網友所製作的
利用遊標卡尺原本就有的數據孔
將測量到的數據傳到Arduino上
再透過Arduino在電腦上面打字
讓Arduino當作鍵盤
自動輸入訊息的這個功能
是ATmega32U4這顆晶片的特殊功能
Arduino Pro Micro這塊開發板
以及Arduino Leonardo
都有這塊晶片
想要了解自動輸入鍵盤詳細的用法
可以去看我之前拍的這兩部影片
由於可以直接模擬鍵盤滑鼠的訊號
除了將測量到的數值
直接打在文件裡面
當然也可以應用在3D繪圖軟體
可以達成邊測量邊建模的神奇效果
要自己DIY這個東西其實不難
畢竟電路圖以及Arduino的程式碼都給你了
但你還是需要具備一點焊接能力
而且在這個電路裡面
需要用到電晶體與電阻
這還需要具備電路的基本知識纔行
對初學者來說會稍微麻煩一點
這個電路之所以會用到電晶體
是因為遊標卡尺所使用的是1.5V電池供電
傳送訊號的電壓也大概在1V左右
這個訊號對於Arduino來說
電壓值太低
無法直接透過Digital Pin去讀取
所以這位日本網友就使用兩顆電晶體
將訊號放大
這樣子就可以讓Arduino
順利讀取遊標卡尺上的訊號了
不過我將他的版本稍作修改
做出這個最簡單的版本
直接省略電晶體
你只需要簡單的焊接即可
我自己的版本所需的零件非常簡單
只需要一塊Arduino Pro Micro
一小段電線
以及一顆按鈕
由於Arduino板需要黏在遊標卡尺上
所以Pro Micro的尺寸是最合適的
要注意常見的另外一塊小板子
Arduino Nano是沒有辦法用的喔
Arduino上的Digital Pin
至少需要3V以上的電壓
纔能夠被讀取到
但是遊標卡尺的訊號太低
只有1.5V
Digital Pin沒有辦法辨認這麼低的電壓
不過Arduino上其實有個地方
可以直接讀取1.5V這麼小的電壓
那就是Analog類比訊號
只要透過A Pin
就可以在不需要連接電晶體的情況下
直接讀取Arduino上的低電壓訊號
這樣子就可以直接省去
兩顆電晶體與電阻
大幅簡化電路的複雜程度
就算是初學者也能夠輕鬆的DIY
那麼我們就來開始製作吧
首先我們要焊接這個按鈕
我手邊用的是這顆小按鈕
我將它焊接在GND與A3
當然你也可以改用其他型號的按鈕
我將按鈕的角折彎卡在電路板上
這樣子會比較好按
我使用牆壁黏海報的這種黏土
將它固定在按鈕上
讓按鈕牢牢的固定住
再用紙膠帶貼在桌上
這樣子焊接會方便很多
完成之後要連接三條電線到遊標卡尺上
這三條線分別是GND、CLK與DATA
我們先將遊標卡尺的數據蓋拆開
我的這個遊標卡尺的數據孔很小
為了方便我焊接
我將一部分的塑膠殼剪開
這樣子烙鐵纔能夠伸進去
我不確定其他廠牌的卡尺
數據孔是否都相同
我的這款有四條電線
因為要通訊的關係
通常會有一條是GND負極
所以我使用電表一端連接電池座的負極
這樣子就可以確認GND是哪一條了
在這邊可以確認左邊的是GND負極
接著測量正極看看
同樣我連接電池座的正極
你可以發現右邊的這條線就是電源的正極
所以可以推論中間這兩條分別就是CLK與DATA pin
也就是我們要連接到Arduino上的訊號
這兩隻腳我們可以稍後在程式碼做設定
現階段還不需要知道它們分別是什麼
所以我們只要將左邊的三隻腳
分別使用單芯線拉出來即可
焊接的時候要小心
接下來將這三條電線焊接在Arduino上
焊接電線之前我建議可以先用厚的雙面膠
將Arduino固定在這上面
這樣子焊接會方便很多
製作完成也會比較美觀
修剪多餘的電線
並且將這幾條電線焊接在Arduino上
兩條訊號線分別焊接在A1與A2
這邊只需要注意電線整結即可
如果A1與A2顛倒的話
可以稍後在程式做調整
GND線我是直接焊接在
開關的這隻腳上面即可
焊接電線可能是製作這個裝置最大的難關
焊接基本技巧可以參考我之前的這部影片
我這邊要補充一個原則
你必須要使用任何的方式
將零件牢牢的固定住
如果你的雙手只有烙鐵與焊錫
焊接就會容易非常的多
連接好電路之後
就可以上傳程式碼了
上傳成功之後
按下按鈕就可以自動打字了
但就當我認為一切順利的時候
我發現一個非常嚴重的BUG
我將遊標卡池上的電池換新了之後
遊標卡池就開始胡亂的輸入訊號
我一開始以為是電路被拉扯到
還是哪裡短路
我還把家裡的另外一隻遊標卡池拿來製作
也是發生相同的問題
但只要把舊的電池裝上去
一切又恢復正常
所以讓訊號讀取錯誤的原因
就出現在這顆電池上
我測量之後發現
舊的電池電壓在1.1V
而新的電池則是接近1.5V
但沒有道理有電的電池讀不到訊號
而沒電的電池卻可以正常運作
我研究了半天
我意識到我必須要使用試波器
來確認這個訊號到底發生什麼事
由於手邊沒有試波器
所以我將Arduino UNO來充當簡易的試波器
上傳別人製作的這個試波器檔案
將GND連接到UNO的GND
再將DATA與CLK連接到A0與A1
打開試波器軟體
就可以顯示訊號了
測量之後發現
這在有電的情況下
訊號的寬度大約是10毫秒
而沒電的電池
訊號寬度則在22毫秒
也就是說這個遊標卡尺
在有電的情況下
發送訊號的頻率會比較快
沒電的時候則會慢慢傳送訊號
而我之前正好是使用快沒電的電池
Arduino反而能夠正常的接收慢慢傳來的訊號
這個問題真的讓我非常崩潰
我在交叉比對之後
發現原本使用電晶體
在有電電池的情況下
使用DIGITAL READ的指令是正常的
可以順利讀取到訊號
但是隻要加上ANALOG READ的指令
就會出錯
所以可以判斷
ANALOG READ這個指令
會大幅拖慢Arduino的運作速度
雖然平常我們在做其他專題
其實沒什麼影響
但是如果你要拿來偵測訊號
這種很要求讀取速度的情況下
就不能夠使用ANALOG READ來判斷
就當我絕望的時候
我在網路上發現
有加快ANALOG READ讀取速度的方法
而且還有人已經寫好Library
這個做法可以將原本ANALOG READ讀取的速度
提升好幾倍
這對於遊標卡尺
在有電電池的兩倍頻率訊號來說
已經綽綽有餘了
果然使用這個ANALOG READ FAST指令
一切就恢復正常了
經過好幾天的時間
終於將自動輸入的遊標卡尺
改成最容易製作的版本了
只需要連接三條電線
以及一顆按鈕
不需要電晶體
即可達到訊號傳輸的功能
這個程式碼的使用也很簡單
下載資訊欄中的程式碼
使用Arduino軟體
打開之後
要先安裝Library
到超高碼
匯入程式庫
程式庫管理員
搜尋ANALOG READ FAST
找到這個之後
點選安裝
這樣子快速讀取訊號的Library
就安裝完成了
接著就可以直接上傳程式碼了
上傳的時候要注意
開發版要設定成Arduino Leonardo
才能上傳成功喔
上傳完畢之後
確認一下讀取的數字是否正確
如果讀取的數值是錯誤的話
可能是Clock與Data
這兩個訊號弄反了
可以在這邊更改這個程式碼即可
這個程式碼主要來自日本的原作者
我將讀取輸入的方式改為類比輸入
另外我在輸入完畢之後
多添加了Enter按鈕
這樣子就可以在輸入完畢之後
自動按下Enter的按鍵
這個程式碼中的176這個數值
就是鍵位碼
如果你有需要
你可以參考Arduino官方網站的資訊
你可以自行更改這個欄位的數值
來自動輸入其他鍵盤訊號
或是添加更多的指令上去
你可以在文書軟體
或是打開Excel
來輸入測量到的各種尺寸
也可以在繪圖軟體中
自動輸入物件的尺寸
達成測量物體同時建模的效果
另外你還可以使用Scratch
這種簡易的圖形化程式
來自動幫你判斷
測量的數值有沒有符合規定
甚至幫你確認這些數值所對應的規格
5元
10元
50元
雖然這次製作的遊標卡尺
感覺好像很好用
但坦白說我自己用了一段時間
連接電腦的機會其實很少
當然可能跟我自己的工作習慣有關
如果只需測量一兩個數據
直接打字還比較快
而且市面上早有類似的產品出現了
無論是單純賣連接線
還是遊標卡尺
原本就有內建自動打字的功能
甚至還有用藍牙傳輸
如果你跟我一樣
之前不知道這些產品的存在
那麼我猜
應該是這類產品賣的沒有很好
雖然它的價格不便宜
但也不是到無法入手的價格
如果這真的是超棒的發明的話
一定有許多廠商會投入
加入這個市場
然後把價格壓低
人人手邊都會有一支
自動輸入的遊標卡尺
所以顯然有這種需求的人
應該是非常小眾
但是還是有人納悶
如果拿來做品管之類的需求
應該是有用的吧
如果真的要作為品管使用的話
一般在業界普遍使用的方式
是用攝影機的方式來量測
這種方式又快又準
而且根本不需要一個一個去測量
如果你要測量物體
並且建出3D模型的話
通常也不是使用遊標卡尺
也是使用掃描的方式會比較快
這也是我們在工業設計上
普遍使用的建模方式
感謝這支影片的贊助廠商
Creality CR-Scan Laser 3D掃描器
這款掃描器掃描的精度高達0.05mm
可以說是接近遊標卡尺的精度了
對於這種複雜的物體
單純使用遊標卡尺其實是不好量測的
使用Creality 3D掃描器
就能夠輕鬆的繪製
自動生成3D模型
搭配轉盤模式
按下按鈕就可以輕鬆的360度掃描
底部看不到的地方也不用擔心
翻過來再次掃描
軟體就可以將多次掃描的檔案
一鍵自動合成
自動幫你對齊物件
還幫你刪除旋轉盤底座
這比起用遊標卡尺測量實際的多
自動優化的模型還可以存成STL
OBJ或者是PLY格式
這是3D列印以及常見3D軟體所使用的格式
以往掃描物體的限制其實非常的大
而這款掃描器除了能夠在陽光底下掃描
居然還可以掃描黑色的物體
不然以往都還要使用特殊的噴劑
或者是在物件上貼一堆點點
纔有辦法正確的掃描
而且大家拿到這款掃描器
應該都想做一件事情
就是拿來掃描人臉
這個掃描器使用的是紅外線
並不會傷害眼睛
能夠輕鬆安全的掃描
而且它還有彩色掃描的功能
更能夠保留珍貴的畫面
這幾年3D掃描器真的進步的非常快
以往類似品質的掃描器都要賣的非常的貴
好幾萬到數十萬都有
而這次Creality 3D掃描器
也正在募資當中
想要用最划算的價格來體驗3D掃描
請到下方的資訊欄前往募資的頁面
最後
非常感謝大家看完這部影片
如果喜歡我的影片
記得要訂閱我的頻道
那麼謝謝各位的收看
掰掰
