來自帶有視頻的霍爾效應傳感器的反饋

霍爾效應傳感器

霍爾效應傳感器可以檢測到磁場的存在,並在檢測到磁場時產生輸出電壓。霍爾效應傳感器,當與線性執行器,通常與磁盤一起位於執行器齒輪箱內。當線性致動器伸展或縮回時,該光盤旋轉通過霍爾效應傳感器,該霍爾效應傳感器使該傳感器產生電壓脈衝形式的數字輸出。可以對這些脈衝進行計數,並用於確定執行器已移動了多遠。

如何讀取線性執行器的反饋

來自霍爾效應傳感器的位置反饋

使用霍爾效應傳感器進行位置反饋的不利之處在於它們無法測量絕對位置。相反,它們會產生可以計數的脈衝,以確定執行器已移動了多遠。要將這些脈衝用於位置反饋,您需要使用 微控制器 計數產生的脈衝。為此,您需要利用微控制器的外部中斷引腳對這些脈衝進行計數。外部中斷是檢測電壓變化的引腳,在我們的情況下,可用於檢測霍爾效應傳感器的電壓脈衝。您將需要查閱微控制器的數據表,以確保可以將微控制器的哪些引腳用作中斷引腳。使用 Arduino Uno 例如,引腳2和3可用於外部中斷。一旦選擇了合適的中斷引腳,就可以將霍爾效應傳感器輸出的導線連接到該引腳,以及將輸入電壓連接到5V並將地連接到接地引腳。

將霍爾效應傳感器連接到Arduino 

下面的代碼示例顯示瞭如何在Arduino IDE中設置中斷,該中斷將在電壓脈衝的上升沿觸發。您可以將中斷設置為在電壓變化的不同點觸發,並應查閱微控制器的數據表以確定可用選項。設置中斷所需要做的最後一個方面是編寫中斷服務程序,該程序將在每次觸發中斷時運行代碼。此功能應該簡短,並且僅執行簡單的任務,例如計算霍爾效應傳感器發出的脈衝數。以下代碼示例中的功能countSteps()用於計算霍爾效應傳感器發出的脈衝數。

要利用這些脈衝來確定位置值,您需要知道線性致動器的先前位置以及線性致動器行進的方向。您的微控制器已經知道您以哪種方式驅動線性致動器,因此,您可以簡單地在代碼中設置一個變量來跟踪執行器的方向,該變量將用於確定是從先前位置添加還是減去脈衝。更新位置後,您需要將計數的脈衝重置為零。下面的代碼示例向您展示了一個功能,該功能可根據計數的脈衝數更新位置。一旦有了脈衝位置,就可以使用線性執行器的每英寸脈衝規格將其轉換成英寸。在下面的代碼示例中,每英寸行程的脈衝為3500。

歸位您的線性執行器

為了準確地利用霍爾效應傳感器的位置反饋,您需要始終知道線性執行器的起始位置。儘管當您第一次打開系統時,您的微控制器將無法判斷執行器是否已伸出。這需要您將線性執行器復位到一個已知的位置。要將線性執行器復位,您需要將其驅動到一個已知的位置,例如完全縮回。您還可以利用 外部限位開關 將您的已知位置設置為完全伸展或縮回之外的位置。以下面的Arduino代碼為例,我們將要設置一個WHILE循環,該循環將線性致動器驅動到您已知的位置,在這種情況下,該致動器已完全縮回。我們知道您處於我們的已知位置,因為霍爾效應傳感器的中斷不會觸發。在這種情況下,我們檢查步驟變量是否已更改,以確定是否已觸發中斷。我們還需要確保已經過了足夠的時間以期望觸發中斷,為此,我們使用了millis()函數,該函數以毫秒為單位輸出自代碼啟動以來的時間,並將其與上一個時間戳進行比較。一旦確定線性執行器在原位,我們將停止驅動執行器,重置步長變量,然後退出WHILE循環。

處理錯誤觸發

儘管霍爾效應傳感器對電子噪聲的敏感度不如電位計,但電子噪聲仍可能影響輸出信號。開關彈跳也可能是霍爾效應傳感器的一個問題,該傳感器可能會觸發錯誤脈衝進行計數,這會影響您的微控制器認為線性執行器已經移動了多遠。額外的幾個脈沖不會對定位產生太大影響,因為每英寸有數千個脈衝,但是隨著時間的流逝,這可能是一個更大的問題。您可以通過使用內部計時器過濾掉錯誤的觸發器來解決這些問題。當您可以確定檢測新脈衝的頻率時,您可以過濾掉由噪聲觸發的中斷。在下面的代碼示例中,trig-Delay是每個脈沖之間的時間延遲。如果在此延遲之前觸發了中斷,則不會計數脈衝。

延遲時間的長短會因您的應用而異,但是如果時間太短,則不能正確濾除噪聲;如果時間太長,則會錯過線性執行器的實際脈衝。線性執行器的速度也會影響此延遲,如果您要調整速度,則可能需要更改此變量以調整到預期的新脈衝頻率。為了準確確定每個脈沖之間的確切延遲,您可以使用邏輯分析儀查看來自霍爾效應傳感器的實際信號。儘管在大多數應用中不需要這樣做,但是如果需要非常精確的定位,則可能需要確定精確的延遲。

應對錯誤觸發的另一種方法是,每次執行器到達已知位置時都要校正位置值。與將線性執行器歸位一樣,如果您將線性執行器驅動到完全縮回或伸出的位置,或者使用了 外部限位開關,您將知道執行器已移動了多遠。您知道霍爾效應傳感器應發送多少步才能到達您的已知位置,所以只要我們達到該值就可以對其進行校正。在下面的代碼示例中,這是針對完全伸出和完全縮回位置進行的操作。由於執行器一旦到達其中一個位置就不會移動,因此,如果我們嘗試驅動執行器並且位置值沒有變化,我們知道我們已經到了極限。該方法提供了一種實用的解決方案,可確保您的位置值保持準確,尤其是在操作過程中的某個時刻完全收回或完全伸出執行器時。您可以將此方法與上述方法結合使用,這應有助於保持位置值的準確性。

概要

與電位計的反饋相比,利用霍爾效應傳感器進行位置反饋可提供更高的分辨率。由於每英寸運動可能有1000個脈衝,因此霍爾效應傳感器可為您定位線性執行器提供精確度和可靠性。霍爾效應傳感器還提供了更大的能力來確保多個線性致動器同時運動,因為脈衝計數比電位計的變化電壓更準確。利用我們的 FA-SYNC-X 執行器控制器,您甚至可以確保執行器無論負載如何一致地運動。對於DIYer,您可以使用Arduino檢查如何確保執行器一致移動 這裡.

以下是此博客中使用的完整示例代碼,旨在控制14英寸的筆劃長度 子彈系列36 Cal。線性執行器。線性執行器使用 馬達驅動器,您可以學習如何設置 這裡

[1] Monari,G.(2013年6月) 了解光學和磁性編碼器中的分辨率。從...獲得: https://www.electronicdesign.com/technologies/components/article/21798142/understanding-resolution-in-optical-and-magnetic-encoders

product-sidebar product-sidebar
Tags:

Share this article

特色产品

經典桿式線性執行器
經典桿式線性執行器 In Stock
From $109.99USD
water resistant IP66 Premium Linear Actuator
優質線性執行器 In Stock
$129.99USD
TVL-170後置彈出式電視升降機
TVL-170後置彈出式電視升降機 In Stock
On Sale From $590.00USD
子彈系列50 Cal。線性執行器
子彈系列50 Cal。線性執行器 In Stock
From $279.99USD

需要幫助找到合適的執行器?

我們精密設計和製造我們的產品,以便您直接獲得製造商的價格。我們提供當日發貨和專業的客戶支持。嘗試使用我們的執行器計算器來獲得幫助,為您的應用選擇合適的執行器。