本文將介紹如何使用光學(xué)反射傳感器非接觸式測量主軸轉(zhuǎn)速。
目的
我想在更換電機(jī)并安裝 PWM 變速驅(qū)動器后測量我的銑床的主軸轉(zhuǎn)速。
第一次嘗試
我用紅外反射傳感器構(gòu)建了一個簡單的轉(zhuǎn)速計。在實驗室的桌子上一切正常。但在銑床上進(jìn)行測試后,轉(zhuǎn)速表顯示出波動值和不正確的速度。造成這種故障的原因是我的車間里有很多電噪聲和地線上奇怪的高頻雜散電流。我將毛刺的部分原因確定為開關(guān)時的接觸器和低成本的開關(guān)電源。但是一些其他方面的問題仍然無法識別。
我嘗試使用 LC 低通濾波器來抑制高頻毛刺。但只是收效甚微。
如何解決
我用了一個新的轉(zhuǎn)速計在光反射傳感器和 arduino 之間建立了光隔離。 DC/DC 轉(zhuǎn)換器為傳感器和放大器級提供電流。然后信號通過光耦合器傳輸?shù)?arduino。
在傳感器區(qū)域和 Arduino 區(qū)域之間,電容應(yīng)保持盡可能低。因此隔離距離應(yīng)盡可能好,避免走線靠近。
轉(zhuǎn)速表
我用的是 SFH900 作為傳感器。但任何其他反射式光學(xué)傳感器,像是 TCRT5000(尚未測試)也可以擔(dān)當(dāng)這項工作。從 PS2 鼠標(biāo)回收的電纜從傳感器連接到電路板。
我還測試了傳感器 ITR20001,以及 RPR220 和 ST188 。這三個傳感器都運作良好。傳感器與反射標(biāo)記之間的距離應(yīng)增加(6 至 12 毫米,具體取決于傳感器)。在對 RV2 進(jìn)行微調(diào)后,所有三個都可以測量高達(dá) 20,000 rpm 的轉(zhuǎn)速,車輪上每轉(zhuǎn)一個白色標(biāo)記。
傳感器的 LED 由隔離式 DC/DC 轉(zhuǎn)換器的 R1 供電。C3 提供了一個低阻抗路徑,以縮短電線上可能出現(xiàn)的干擾。對于傳感器的輸出,C4 和 R2+RV2 在大約 530Hz(RV2 為 0Ω)至 120Hz(RV2 為 10KΩ)實現(xiàn)低通濾波。這為測量至少 7200RPM 留下了空間。該信號由 PNP 晶體管 Q6 放大。然后光耦合器 U4 將信號傳輸?shù)?arduino 的 D2 引腳(中斷輸入)。在那里的輸入端,一個 530 Hz 低通 RC 濾波器 (R12-C13) 消除了剩余的振蕩。速度顯示在 0.91 英寸 I2C OLED(128x32 點)上。
隔離式 DC/DC 轉(zhuǎn)換器
它圍繞 Q4、Q5、C5、C6、C7 和一個自制變壓器。它們在 120kHz 左右作為對稱振蕩器工作。輸出通過肖特基二極管橋進(jìn)行整流,以盡可能少地?fù)p失電壓。
如果輸出電壓為給定值,U3 (TL431) 讓電流流過光耦合器 (U2) 的 LED。光耦合器輸出晶體管將 Q3 柵極短路到 GND,然后停止為振蕩器供電。
變壓器
變壓器圍繞從舊 PC 電源回收的黃色 + 紅色環(huán)形線圈(13 x 6.6 mm - 7.2 mm 孔)構(gòu)建。測得的 AL 值約為 25-26 nH/N2。一個 2 毫米厚的 PVC 絕緣壁在環(huán)形磁芯中用氰基丙烯酸酯膠合。初級繞組用 2 根線纏繞。然后將次級繞組繞在自由孔中。絕緣壁最突出的部分粘在一塊穿孔板上,電線連接到引腳上。纏繞時,一點膠帶可以幫助將電線固定到位。
將電線焊接到穿孔板上的引腳后,用絕緣漆固定銅線圈。
環(huán)形:黃色 + 紅色(13 x 6.6 毫米 - 7.2 毫米孔)
初級:2 x 24 匝量規(guī) 31 (? 0.22mm) (≈ 16 μH)
次級:70 圈規(guī)格 32 (? 0.20mm) (≈ 138 μH)
保溫墻:PVC片,2mm厚
注意,如果您想在穿孔板上建造它,請小心尊重絕緣屏障。就我而言,我在 CNC 3018 上銑削了 PCB。MOS、雙極晶體管和光耦合器并不重要。您只需要確保封裝和引腳排列相同。請注意,電阻和電容幾乎都在 0805 SMD 外殼中。除了鉭電容和 1206 SMD 機(jī)箱中的 R1 和 C3 外,為軌道在下方運行留出了足夠的空間。只要外殼適合占位面積,鉭電容器的值并不重要。但如果可能,它們的電壓應(yīng)為 10V(最低 6.3V)。
安裝在銑床上
滑輪與 SFH900 傳感器之間的最終安裝距離應(yīng)約為 2-3mm。這就是為什么我將一個小的 PVC 楔子加工成合適的距離。
用丙酮清洗后,主軸皮帶輪底部先涂上啞光黑漆。花足夠的時間完全干燥這種黑色油漆。模板是從自粘卡片紙上剪下來的。它位于最佳的中心位置。白色標(biāo)記是通過模板繪制的。注意黑色部分至少是白色標(biāo)記的兩倍,你必須選擇每轉(zhuǎn)是否需要一個或多個反光條。
需要在“#define nbrPulsePerTurn”行的“Tachymetre.ino”中正確插入皮帶輪上的反射標(biāo)記數(shù)量
由于“timeOut”為2s,反射標(biāo)記的數(shù)量決定了可以顯示的最小速度,例如:
1 個反光標(biāo)記 — 30 RPM
2 個反光標(biāo)記 — 15 RPM
4 個反射標(biāo)記 — 8 RPM
10 個反射標(biāo)記 — 3 RPM
但是那里的標(biāo)記越多,最大速度就越低。例如,使用 1 個標(biāo)記,您應(yīng)該能夠達(dá)到 7000 或 8000 RPM,而無需精確設(shè)置。通過使用示波器顯示 arduinos 引腳 2 上的脈沖并精確微調(diào) RV2,我可以達(dá)到 20, 0000RPM。要走得更高,你有幾個杠桿。首先,使用具有最佳反射效果的單一標(biāo)記。鏡面級膠帶是我能測試的最好的。其次,您可以增加傳感器 LED 中的電流(減小 R1 的值)。第三,您可以增加低通濾波的截止頻率(減小 C4 的值)。每次,將 RV2 設(shè)置為可能的最低值,以便在 arduino 的 D2 輸入端獲得信號。
設(shè)置程序
隨著主軸緩慢旋轉(zhuǎn)(100-300 rpm 就可以了),調(diào)整 RV2 電位器,使 Arduino 上的“LED_BUILTIN”在白色反光條經(jīng)過傳感器時穩(wěn)定地打開或關(guān)閉。嘗試通過順時針和逆時針旋轉(zhuǎn) RV2 來找到極限。如果超出限制,LED 會瘋狂閃爍或保持常亮或熄滅。嘗試將其設(shè)置在靠近中心的位置,或者逆時針方向。通過這個基本設(shè)置,我的轉(zhuǎn)速表可以測量每轉(zhuǎn)反射標(biāo)記超過 10000 rpm 的速度或每轉(zhuǎn) 4 個反射標(biāo)記超過 2500 rpm 的速度。
如果您可以使用示波器,請在 arduino 引腳 D2 上顯示信號。在更快的主軸速度下,您可以非常精確地調(diào)整它以測量盡可能高的速度。無需修改低通 RC 濾波器即可達(dá)到 20, 000 - 22, 000 rpm。
可能的擴(kuò)展
如果需要測量更高的速度,可以從以下幾點著手:
獲得比白色油漆更具反射性的條帶
通過降低 R1 來增加傳感器 LED 中的電流。注意不要超過最大額定值(例如,對于 SFH900,最大 LED 電流為 50mA。保持在 30-40mA 以下是安全的。到目前為止我測試過的所有傳感器的推薦工作電流通常為 20mA)
通過減小 C4 和 C13 的值來提高 RC 濾波器的截止頻率。
-
DC/DC轉(zhuǎn)換器
+關(guān)注
關(guān)注
2文章
157瀏覽量
10193 -
反射傳感器
+關(guān)注
關(guān)注
0文章
4瀏覽量
6085 -
轉(zhuǎn)速計
+關(guān)注
關(guān)注
0文章
8瀏覽量
6862
發(fā)布評論請先 登錄
相關(guān)推薦
評論