Encoder đo gì và không đo gì?
Encoder ghi nhận chuyển động quay của trục hoặc bánh xe dưới dạng số đếm. Từ số đếm, robot có thể ước tính quãng đường bánh đã lăn. Tuy nhiên, encoder không đo trực tiếp vị trí của xe: nếu bánh trượt trên sàn, số đếm vẫn tăng dù xe di chuyển ít hơn dự tính.
Với xe hai bánh chủ động, nên theo dõi số đếm có dấu của bánh trái và bánh phải. Dấu dương hoặc âm cho biết chiều quay theo quy ước của chương trình. Đoạn đường xe đã đi và khoảng cách từ điểm đầu đến điểm cuối là hai đại lượng khác nhau; một xe đi ra rồi quay về có thể có khoảng cách đến điểm đầu gần bằng không.
Xác định đúng số đếm trên một vòng bánh
Trước khi tính quãng đường, hãy xác định encoder nằm ở trục bánh hay trục động cơ. Nếu encoder nằm ở trục động cơ, cần tính cả tỉ số truyền: số đếm trên một vòng bánh bằng số đếm trên một vòng động cơ nhân với số vòng động cơ cần để bánh quay một vòng.
Kiểm tra tài liệu của encoder và cách chương trình đếm tín hiệu. Thông số «xung mỗi vòng» có thể khác số đếm thực tế khi bộ đọc dùng một cạnh, hai cạnh hoặc giải mã quadrature x4. Cách kiểm tra tại bàn là đánh dấu bánh, quay đúng một vòng theo một chiều và đọc mức tăng của bộ đếm; lặp lại vài lần để phát hiện đếm thiếu hoặc đếm lặp.
Công thức đổi số đếm thành quãng đường
Nếu C là chu vi lăn hiệu dụng của bánh và N là số đếm trên một vòng bánh, hệ số quãng đường là k = C/N. Khi bánh tăng Δn số đếm có dấu, quãng đường lăn ước tính là Δs = k × Δn. Có thể bắt đầu với C = π × đường kính bánh, rồi thay bằng hệ số đo thực tế sau khi hiệu chuẩn.
Ví dụ, nếu một quãng đường chuẩn 1.000 mm tương ứng 2.000 số đếm, hệ số thực nghiệm là 0,5 mm/số đếm. Một lượt có 3.000 số đếm sẽ cho quãng đường lăn ước tính 1.500 mm, với điều kiện bánh không trượt đáng kể và điều kiện vận hành tương tự lúc hiệu chuẩn.
Chuẩn bị phép hiệu chuẩn trên mặt sàn
Chọn mặt sàn phẳng, sạch và giống nơi robot sẽ hoạt động. Giữ nguyên bánh, tải trọng, áp suất lốp nếu có và tốc độ dự kiến sử dụng; các thay đổi này có thể làm chu vi lăn hiệu dụng thay đổi. Đo và đánh dấu một đoạn thẳng đủ dài để sai lệch khi đánh dấu điểm đầu, điểm cuối không chiếm phần lớn kết quả.
Đánh dấu một điểm tham chiếu cố định trên thân xe, chẳng hạn tâm trục bánh, để căn với vạch đầu và vạch cuối. Trước mỗi lượt, ghi lại bộ đếm hai bánh hoặc đặt chúng về không một cách nhất quán. Ghi cả số đếm lẫn vị trí thực tế của xe sau khi dừng; không chỉ dựa vào lệnh yêu cầu xe đi bao xa.
Tính và điều chỉnh hệ số cho từng bánh
Để có giá trị ban đầu cho từng bánh, đánh dấu trên lốp rồi cho bánh lăn không trượt qua vài vòng trên mặt sàn, dưới tải trọng làm việc nếu có thể. Đo tổng chiều dài đã lăn và ghi số đếm tương ứng. Với mỗi bánh, tính k = chiều dài đo được / độ lớn số đếm. Dùng nhiều vòng giúp giảm ảnh hưởng của sai lệch khi đặt vạch.
Sau đó cho xe chạy thẳng qua đoạn chuẩn, thực hiện nhiều lượt và tính quãng đường dự đoán từ số đếm của từng bánh. Nếu xe liên tục ước tính xa hơn thực tế, giảm hệ số k; nếu ước tính ngắn hơn, tăng k. Có thể cập nhật bằng tỉ lệ: k_mới = k_cũ × quãng đường thực / quãng đường dự đoán. Không nên chỉnh hệ số theo một lượt chạy đơn lẻ, nhất là khi xe bị lệch hướng hoặc bánh trượt.
Nếu hai bánh có đường kính lăn khác nhau, lưu k_trái và k_phải riêng. Với xe vi sai, độ dịch chuyển của tâm xe trên một đoạn ngắn được ước tính bằng (Δs_trái + Δs_phải)/2, trong đó hai giá trị giữ dấu theo chiều chuyển động.
Kiểm tra sai số sau hiệu chuẩn
Chạy thử nhiều lần ở ít nhất hai chiều trên cùng đoạn chuẩn. Với mỗi lượt, tính sai số = quãng đường dự đoán − quãng đường thực và sai số tương đối = |sai số| / quãng đường thực × 100%. Xem riêng độ lệch trung bình và mức dao động giữa các lượt: lệch ổn định gợi ý hệ số chưa phù hợp, còn kết quả lúc đúng lúc sai có thể liên quan đến trượt bánh, mất đếm hoặc cách đánh dấu.
Quan sát cả đường đi của xe. Nếu xe thường xuyên rẽ dù hai bánh nhận lệnh giống nhau, hãy kiểm tra hệ số từng bánh, lực cản cơ khí và điều khiển động cơ. Hiệu chuẩn quãng đường không tự sửa được sai số góc quay; để ước tính góc quay của xe vi sai, còn cần hiệu chuẩn khoảng cách hiệu dụng giữa hai bánh.
Duy trì độ chính xác khi robot hoạt động
Đọc bộ đếm đủ thường xuyên và bảo đảm chương trình không mất xung ở tốc độ quay cao. Khi lấy số đếm từ chương trình ngắt, cần đọc hoặc sao chép giá trị theo cách an toàn để tránh dữ liệu bị thay đổi giữa chừng. Kiểm tra cả trường hợp bộ đếm tràn nếu robot chạy lâu.
Encoder phù hợp để ước tính chuyển động trong thời gian ngắn, nhưng sai số sẽ tích lũy theo quãng đường. Hãy hiệu chuẩn lại khi thay bánh, đổi tải trọng hoặc đổi loại mặt sàn. Nếu robot cần biết vị trí lâu dài, có thể kết hợp số đếm encoder với các mốc quan sát được trong môi trường thay vì chỉ cộng dồn quãng đường từ bánh xe.


