Sơ ñồ trạng thái khi qua ñoạn ñường cua vuông

Một phần của tài liệu Hướng dẫn tìm hiểu chương trình BKIT MCR (Trang 38)

Hình 3-13. Các trạng thái trong khi cua vuông

- Sơ ñồ trạng thái:

Hình 3-14. Sơñồ các trạng thái trong khi cua vuông

- Cho xe chạy ñến khi toàn bộ sensor ñều nhận ñược màu ñen rồi mới bẻ cua giúp cho xe tránh ñược lỗi quẹo sớm ngay khi gặp hai vạch trắng báo hiệu.

- Tham khảo giải thuật trong hàm int turn90(int tocdo)

3.5. Sơñồ trng thái khi qua chuyn làn phi

- Thứ tự các sự kiện khi qua chuyển làn phải:

Hình 3-15. Các trạng thái khi chuyển làn phải

Bắt ñược line ngang hãm tốc

cho xe chạy chậm lại

Chạy chậm theo line cho

ñến khi bắt

ñược nữa line

Chờñến khi ñến vùng toàn màu ñen

thì cho xe quẹo sang trái hay sang

phải một góc lớn Chờñến khi 2 sensor biên bắt ñược line Kết thúc cua vuông chuyễn sang trạng thái chính I Xử lý các ñoạn ñường thẳng và ñường cong ( I )

- Sơ ñồ trạng thái:

Hình 3-16. Sơñồ trạng thái khi qua chuyển lan phải

- Tham khảo giải thuật trong hàm int changewayright(int tocdo)

3.6. Sơñồ trng thái khi qua chuyn làn trái

- Tương tự như chuyển làn phải.

3.7. Hàm test ( ) dùng ñể test các b phn xe

- Hiện thực trong hàm void test()

- Case 0: ( chọn swicth trên board vi ñiều khiển ) ấn bất kỳ nút nhấn nào trong 4 nút trên board vi ñiều khiển thì xe tự ñộng cập nhật adc của màu trắng. Sau ñó ta quét mạch dò xem các led hiển thị xem xe có nhận ñược màu ñen không nếu không ta có thể chỉnh lại mức

tính adc compare trong hàm update_vcompare().

- Case 1: dùng ñể test 2 ñộng cơ bánh, nhấn K0 ñộng cơ trái quay tiến, nhấn K1 ñộng cơ trái quay lùi, nhấn K2 ñộng cơ phải quay tiến, nhấn K3 ñộng cơ phải quay lùi. Nếu các ñộng cơ không chạy theo ñúng như vậy thì tốt nhất nên ñảo các zack cắm nếu ñảo lộn ñộng cơ trái và phải, hay ñảo dây ñỏ ñen của zack cắm nếu ñộng cơ không quay ñúng chiều nêu trên; không nên chỉnh sửa chương trình.

Bắt ñược nữa line ngang phải Chạy theo line ñến khi gặp ñược vùng ñen Cho xe quẹo phải với một góc cốñịnh Chờñến khi 2 sensor biên bắt ñược line trắng Kết thúc chuyển làn phải, chuyển về trạng thái chính I Xử lý các ñoạn ñường thẳng và ñường cong ( I ) Xử lý ñoạn ñường cua vuônng 900 ( IV )

- Case 2: dùng ñể test ñộng cơ servo, nếu nhấn K0 hoặc K1 servo bẻ sang phải, nếu nhấn K2 hoặc K3 servo bẻ sang trái. Nếu servo không bẻ ñúng chiều như trên thì nên chỉnh sửa lại các tính góc trong hàm handle (). Cụ thể là sửa dấu cộng thành trừ hoặc ngược lại. Chú ý có khi hai servo cùng loại cùng nhãn hiệu nhưng lại ngược chiều quay là chuyện bình thường.

Một phần của tài liệu Hướng dẫn tìm hiểu chương trình BKIT MCR (Trang 38)