Để thực nghiệm giải thuật và điều khiển giám sát robot di động tự hành được đề cập ở các mục trên, mỗi bánh xe của robot được nối với một motor DC thông qua bộ giảm tốc và bộ encoder đặt trên trục của motor. Mỗi motor được điều khiển bởi bộ vi điều khiển trung tâm Arduino Mega thông qua mạch cầu H kép, có khả năng đọc xung từ bộ encoder tương đối. Mỗi bộ điều khiển cho phép motor chạy ON hoặc tắt OFF theo phương pháp PWM (Pulse Width Modulation) với tần số đóng ngắt 20kHz.
Để điều khiển robot di chuyển theo toạ độ (trên hệ trục Oxy) có thể sử dụng cách điều khiển robot theo đường thẳng. Trong đồ án này dùng quỹ đạo thẳng để điều khiển robot. Tức là robot chỉ chạy theo trục x hoặc trục y. Nhiệm vụ là đưa robot ở vị trí có toạ độ ban đầu (xo, yo) đến vị trí có toạ độ (x1, y1), (x2, y2),… (xn, yn)
Sau đây là giải thuật theo quỹ đạo thẳng:
Bước 1: Đọc vị trí hiện tại và vị trí đích của robot Vị trí hiện tại (xo, yo)
Vị trí đích (xn, yn)
Bước 2: Tính toán độ dài quãng đường đi của robot
Quãng đường 𝑆 = | 𝑥𝑛− 𝑥𝑛−1 | ℎ𝑜ặ𝑐𝑆 = | 𝑦𝑛− 𝑦𝑛−1| Bước 3: Sau khi đến vị trí có tọa độ (x1, y1)
Góc quay của robot là góc 900 Bước 4: Cập nhật vị trí mới của robot
Tọa độ (x1, y1)
Bước 5: Quay lại Bước 1.
Một cách tìm đường cục bộ khá hoàn hảo là phương pháp bản đồ Nơ-ron cực (Polar Neurol Map) của Michail G. Lagoudakis (1998) dùng 16-32 cảm biến gắn trên robot, tạo trường cảm biến bao phủ vùng xung quanh robot, thuật toán sử dụng là thuật toán ánh xạ nơ-ron tương đối phức tạp. Do giới hạn của đề tài, phương pháp này không được đề cập đến.
Phương pháp được đề cập đến ở đây là sử dụng 3 cảm biến dò đường xác định khoảng cách từ đầu cảm biến đến vật cản. Tuỳ vào khoảng cách tới vật cản ứng với từng cảm biến, ta xác định được phương hướng di chuyển phù hợp cho
42 robot. Tuy nhiên luật dẫn hướng robot trong bài này khá đơn giản, yêu cầu vật cản phải có các cạnh để robot di chuyển tránh vật cản.
Khi robot đang hướng về đích, nếu phát hiện vật cản ở phía trước nó sẽ tiến hành chuyển hướng. Mặc định robot quay phải, tiếp theo đi vòng qua vật cản và trở về lộ trình ban đầu. Để đảm bảo điều này, trong quá trình quay hướng về đích, mỗi lần quay robot quay ta phải cập nhật tín hiệu cảm biến. Khi cả 3 cảm biến đều báo có vật cản thì báo lỗi và dừng hoạt robot, đây cũng là một nhược điểm của sản phẩm nhóm em.
Nhược điểm chính của phương pháp trên là robot không thể xác định đầy đủ biên của vật cản do chỉ có 3 cảm biến, vì vậy robot có thể chạm vật hoặc không về tới đích.