關于角度傳感器工作原理
角度傳感器用來檢測角度的。它的身體中有一個孔,可以配合樂高的軸。當連結到rcx上時,軸每轉過1/16圈,角度傳感器就會計數一次。往一個 方向轉動時,計數增加,轉動方向改變時,計數減少。計數與角度傳感器的初始位置有關。當初始化角度傳感器時,它的計數值被設置為0,如果需要,你可以用編 程把它重新復位。
如果把角度傳感器連接到馬達和輪子之間的任何一根傳動軸上,必須將正確的傳動比算入所讀的數據。舉一個有關計算的例子。在你的機器人身上,馬達以3:1的傳動比與主輪連接。角度傳感器直接連接在馬達上。所以它與主動輪的傳動比也是3:1。也就是說,角度傳感器轉三周,主動輪轉一周。角度傳感器每旋轉一周計16個單位,所以16*3=48個增量相當于主動輪旋轉一周。我們需要知道齒輪的圓周來計算行進距離。幸運地是,每一個LEGO齒輪的輪胎上面都會標有自身的直徑。我們選擇了體積大的有軸的輪子,直徑是81.6CM(樂高使用的是公制單位),因此它的周長是81.6×π=81.6×3.14≈256.22CM。已知量都有了:齒輪的運行距離由48除角度所記錄的增量然后再乘以256。我們總結一下。稱R為角度傳感器的分辨率(每旋轉一周計數值),G是角度傳感器和齒輪之間的傳動比率。我們定義I為輪子旋轉一周角度傳感器的增量
應用領域:使用角度傳感器來控制你的輪子可以間接的發現障礙物。原理非常簡單:如果馬達運轉,而齒輪不轉,說明你的機器已經被障礙物給擋住了。此技術使用起來非常簡單,而且非常有效;唯yi要求就是運動的輪子不能在地板上打滑(或者說打滑次數太多),否則你將無法檢測到障礙物。如果是一個空轉的齒輪連接到馬達上就可以避免這個問題,這個輪子不是由馬達驅動而是通過裝置的運動帶動它:在驅動輪旋轉的過程中,如果惰輪停止了,說明你碰到障礙物了。
在許多情況下角度傳感器是非常有用的:控制手臂,頭部和其它可移動部位的位置。值的注意的是,當運行速度太慢或太快時,RCX在的檢測和計數方面會受到影響。事實上,問題并不是出在RCX身上,而是它的操作系統,如果速度超出了其范圍,RCX就會丟失一些數據。Steve Baker用實驗證明過,轉速在每分鐘50到300轉之間是一個比較合適的范圍,在此之內不會有數據丟失的問題。然而,在低于12rpm或超過1400rpm的范圍內,就會有部分數據出現丟失的問題。而在12rpm至50rpm或者300rpm至1400rpm的范圍內時,RCX也偶會出現數據丟失的問題
如有疑問請點擊:關于角度傳感器工作原理