Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 6240|回復: 4

kondo以及多顆伺服機控制問題

[複製鏈接]
發表於 2008-10-16 02:14:10 | 顯示全部樓層 |閱讀模式
kondo型號:khr 2hv
servo: krs 788hv

請問
(1)動作切換問題
假設一個pos內有許多馬達的角度設定
設定多個pos之後到底是如何切換下個pos??
是(a.)目前這pos內的角度轉完後再切換pos
還是使用 (b.)等待時間??
我測試單一馬達pos1 pos2的角度都一致(假設70)
pos3 pos4一致(假設200)不同於pos1 pos2 且做 1~4的連續迴圈動作
發現到pos1切換pos2 是等待某時間然後再切換pos3 pos4然後在等待時間切換(70>>>wait>>>200>>>wait>>>.....)  (a.)
而非pos1直接切換pos3  (70>>>200) 如果是(a.)那應該是1切2時角度沒做變化而直接2切換3
問題是
使用等待時間來切換的話
如果要在這pos內a馬達跟上個pos同角度位置 而其他馬達會做角度改變
等待時間設不好那麼就變成了 其他馬達還沒轉到定位 而a馬達開始切換下個角度問題 或者是 等待時間過久

所以請問 kondo動作切換到底是串列控制多顆馬達還是並行控制馬達
還是以在20ms週期內逐步的做馬達角度傳送??
還有就是如果遇到下個pos馬達a的角度跟目前pos內的角度如果是同樣的話的問題

(2)速度控制問題
研究馬達時發現到角度的切換是以累加或累減的方式
速度我想應該是以加的多寡來決定速度
而我是以fpga來玩馬達控制
由於無法計算小數點所以都以加1來慢慢改變角度
但如果要精密的角度 震盪器的頻率就得高 結果是馬達速度緩慢的改變
如果要快那麼頻率降低 結果是 精密度不高
而不以加1減1 改以加10 減10 也會造成精密度不高 ex:要得21卻得30
所以請問一下這邊的高手們有如何見解??


以上都是在fpga上遇到的問題!!請高手們幫麻解答!!感謝~~

[ 本帖最後由 akarin 於 2008-10-16 08:27 編輯 ]
發表於 2008-10-16 23:40:44 | 顯示全部樓層
(1)看你的FPGA控制法則怎麼寫,以及硬體如何設計,(例如FPGA多通道串列介面,寫完所有資料後同時啟動)

(2)你是用軟體+FPGA控制的嗎?如果累加是軟體的話當然會慢些,最好的方式還是用FPGA寫控制器控制:),以及利用回授增加精確度。
 樓主| 發表於 2008-10-17 03:03:46 | 顯示全部樓層
問題1大致上是解決了!!(還沒發現問題)
問題2主要是我都燒到晶片後觀看伺服機的轉速
如果要精確控制
震盪器每秒次數就得調高
而我的累加累減是依照震盪器來做加減
目前震盪器所給的是16MH經過除頻後得到0.01ms次數
而伺服機週期是20ms所以當0.01ms震盪2000次後脈衝+1or-1累加減控制範圍70~230之間共160位置
其二除頻後得到0.0025ms次數震盪8000次後脈衝+1-1控制範圍280~920之間共640位置相比
0.0025可控制的角度較為精準但是伺服機所移動的速度就相對變慢不知有其他方法可解決否??

再來是
KONDO位置控制在大約 +260 ~ -260左右
如依照震盪器就不知如何把KONDO的數值轉換過來!!(FPGA無法計算小數)
nichal 該用戶已被刪除
發表於 2009-1-30 13:16:52 | 顯示全部樓層
大大您好
請問您的問題已經解決了嗎?

剛剛看了一下您的說明
如果您原來的程式寫法是每個cycle做+1or-1的話
可以改成+5or-5
當<5的時候再改用+1or-1
這樣就可以改善原來速度不足的問題

另數值轉換的部分
如果您所用的FPGA支援長整數的運算
那應該就可以轉換得很好了
比方說640 counts對應520 counts
大約是1.23對1
您就可以把kondo的數值先乘上123再除以100
這樣小數點就算捨棄了
角度應該也還很精準
試試看吧~~~
發表於 2009-2-19 13:02:54 | 顯示全部樓層
nichal 大大的觀念已經帶進一些 fuzzy的觀念了

假設目標 從位置 100 到 200
一開始可以每步 +10,
有點接近 改成每步 +5,
快要到了 改成每步 +1,
至於什麼時候要改變這個 遞增量就要靠自己調整,
或是可以用公式先手算之後,在放入程式中,更可以得到線性的變化量.....
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-4-18 15:52 , Processed in 0.207454 second(s), 8 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表