cyh1986
級別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 367 個
工控威望: 738 點
下載積分: 722 分
在線時間: 299(小時)
注冊時間: 2009-04-28
最后登錄: 2024-11-15
查看cyh1986的 主題 / 回貼
樓主  發(fā)表于: 2017-10-17 19:41
大家好,小車是水平方向運動的。一共有14個位置?奎c。有編碼器計數(shù),另外裝了以個接近開關(guān)做定位。小車比較重,慣性大。編碼器有不能每次都到原點。有累計誤差,F(xiàn)在是這樣處理的,利用命令的位置數(shù)值和編碼器讀取的數(shù)值進行比較,如果兩個數(shù)的插值小于100,那么接近開關(guān)就開始定位檢測,當接近開關(guān)檢測的信號的時候,認為小車到位。
另外還利用接近開關(guān)的進行加減計數(shù),來判斷小車在14個位置的哪一個位置。原來也想用編碼器來做數(shù)值區(qū)間比較的,例如第一個位置為0,第2個位置為1000.第3個位置的為2000,讓編碼器的數(shù)值在1000的時候,認為小車在位置1,實際情況是,在位置1的時候,小車的位置數(shù)值有可能是1050。
在自動的時候,利用接近開關(guān)進行加減計數(shù),還能準確的判斷小車所處的位置。但是手動時,由于經(jīng)常點動小車,特別是在檢測點附近的時候,可能造成接近開關(guān)動作了兩次,加減計數(shù)就錯了。
請問大家有什么辦法來處理這樣的情況
烏龜船長
級別: 網(wǎng)絡(luò)英雄

精華主題: 0
發(fā)帖數(shù)量: 1281 個
工控威望: 7630 點
下載積分: 1311 分
在線時間: 2656(小時)
注冊時間: 2007-03-21
最后登錄: 2024-11-15
查看烏龜船長的 主題 / 回貼
1樓  發(fā)表于: 2017-10-19 20:57
用編碼器沒錯, 加接近開關(guān)也沒錯,我們用的是激光測距加接近開關(guān),原理是相同的
假設(shè)位置1是1000,位置2是1200,位置三是1450,- - --采集好各位置數(shù)值;
設(shè)定好偏差值假設(shè)100, 比如位置2 1100至1300 都算位置1,當然要加上接近開關(guān)信號ON,防止小車輕微晃動位置丟失;
設(shè)定好減速距離150,比如要去位置2, 小車進入1050至1350范圍就開始減速;

按這個方法去做吧