差動運動模型相關引數
#define param_wide_meter (0.565) // 兩輪間距-寬度
#define param_pulse_per_meter (32595) // 里程引數:每公尺脈衝數
#define param_pulse_lr_diff (0.9997) // 左右輪直徑差:左輪比右輪
#define param_pulse1_per_meter (param_pulse_per_meter*sqrt(param_pulse_lr_diff)) //左輪每公尺脈衝數
#define param_pulse2_per_meter (param_pulse_per_meter/sqrt(param_pulse_lr_diff)) //右輪每公尺脈衝數
#define enc_resolution (1024) // 編碼器解析度
差動輪里程計的更新如下:
void odom_calc::update_odom(float spd1_pps, float spd2_pps,
int32_t round1_cnt, int32_t round2_cnt,
int32_t pulse1_cnt, int32_t pulse2_cnt)
else if (odom_th < -3.1415926)
moni_odom_left_m += delta1_m;
moni_odom_right_m += delta2_m;
}
速度旋量與電機速度轉換關係
float v1 = pobj->vf - 0.5*pobj->wf*pobj->car_param_width;
float v2 = pobj->vf + 0.5*pobj->wf*pobj->car_param_width;
pobj->mt1_spdref_rpm = (double)v1*pobj->car_param_pulse1_per_m*60.0/pobj->car_param_enc_resolution;
pobj->mt2_spdref_rpm = (double)v2*pobj->car_param_pulse2_per_m*60.0/pobj->car_param_enc_resolution;
mot1p_setspeedrpm(pobj->mt1_spdref_rpm);
mot2p_setspeedrpm(pobj->mt2_spdref_rpm);
移動機械人專案概述
之前有一篇關於機械臂專案 這一篇,就讓我來總結一下搭建乙個完整的移動機械人所需的知識及步驟吧,小小拙見,有問題請及時指正 這裡我還是不太想寫成大部分參考書上的那樣,什麼執行系統啊驅動系統啊。現在打字的我其實只是個工程師,不是在寫書或者 只是想用最簡單的話,描述給不是ai或者機械人領域的人聽,一如既往...
移動機械人 考綱複習
文末有考試技巧與考試說明 腿式幾種常見輪子型別,特點,和自由度數目 移動機械人機動性概念 典型輪式機械人機動性判定 機械人是完整性還是非完整性系統判斷 移動機械人感測器分類及其特點 常用本體感受式感測器和外感受感測器 引起移動機械人定位誤差的主要 基於概率地圖定位方法的思想和原理 markov lo...
移動機械人路徑規劃總結
先上總圖,熟悉一下路徑規劃的分類和各種演算法的分類。計算複雜度與機械人自由度成指數關係,不適合於解決高自由度機械人在複雜環境中的規劃,而且都不適合於解決帶有微分約束。適合於解決高自由度機械人在複雜環境下的運動規劃問題。機械臂的路徑規劃問題是不是屬於這種?主要演算法的提出過程 1990 rpp ran...