Bài toán của bạn là bài toán dead-reckoning, bạn có thể tìm hiểu một số vấn đề về dead-reckoning.
Mong bác giúp dùm
Gọi vị trí đầu là X(0) = 0, Y(0) = 0, góc ban đầu của robot là theta(0) = 0.
Tại bước thứ k+1 sẽ được tính theo vị trí của bước thứ k như sau:
X(k+1) = X(k) + sin[theta(k)].U(k)
Y(k+1) = Y(k) + cos[theta(k)].U(k)
theta(k+1) = theta(k) + {U_R(k) - U_L(k)}/{b}
U(k) = [U_R(k) + U_L(k)]/2
Trong đó,
U_R(k) là quãng đường di chuyển của bánh xe bên phải (encoder đếm nhân với đường kính bánh xe nhân với PI ra quãng đường dịch chuyển của bánh phải). Tương tự U_L(k) của bánh trái.
b = khoảng cách 2 bánh xe.
X là toạ độ X của xe
Y là toạ độ Y của xe
theta là hướng của xe
Đây là bài toán động học thuận và ngược của robot di động 2 chiều, 2 bậc tự do mô hình NEWT. Hầu hết các bạn sinh viên đều làm robot theo mô hình này, nhưng không biết tên của nó.

falleaf
Comment