Tải bản đầy đủ - 0 (trang)
3 Bánh xe đa hướng

3 Bánh xe đa hướng

Tải bản đầy đủ - 0trang

20



- Bánh số 1 và 2 các con lăn sẽ được bố trí về 1 phía giống nhau, số 3 và 4 giống nhau

và con lăn quay về phía ngược lại so với bánh số 1 và 2 (hình).

- Khi bố trí bánh mecanum tất cả các con lăn của bánh xe sẽ hướng vào trong theo

chiều mũi tên (hình)

Khi di chuyển và lập trình:

+ Đi thẳng: Bánh 1, 2, 3, 4 quay thuận chiều kim đồng hồ (hình) đế sẽ đi thẳng về phía

trước

+ Đi lùi: Bánh 1, 2, 3, 4 quay ngược chiều kim đồng hồ (hình) đế sẽ đi lùi về phía sau.

+ Sang ngang qua trái: Bánh 1, 2 quay ngược chiều kim đồng hồ (hình), bánh 3, 4

quay thuận chiều kim đồng hồ (hình)

+ Sang ngang qua phải: Bánh 1, 2 quay thuận chiều kim đồng hồ (hình), bánh 3, 4

quay ngịch chiều kim đồng hồ (hình)

+ Sàngchéo theo hướng mũi tên bánh số 1: Bánh 3, 4 ghì (dừng), bánh 1, 2 quay

nghịch chiều kim đồng hồ (hình)

+ Sang chéo theo hướng mũi tên bánh số 2: Bánh 3, 4 ghì (dừng), bánh 1, 2 quay thuận

chiều kim đồng hồ (hình)

+ Sang chéo theo hướng mũi tên bánh số 3: Bánh 1, 2 ghì (dừng), bánh 3, 4 quay thuận

chiều kim đồng hồ (hình).

+ Sang chéo theo hướng mũi tên bánh số 4: Bánh 1, 2 ghì (dừng), bánh 3, 4 quay

nghịch chiều kim đồng hồ (hình).

+ Bẻ lái sang phải: Bánh 1, 3 quay thuận chiều kim đồng hồ, bánh 2, 4 quay nghịch

chiều kim đồng hồ.

+ Bẻ lái sang trái: Bánh 1, 3 quay nghịch chiều kim đồng hồ, bánh 2, 4 quay thuận

chiều kim đồng hồ. Trong hình bánh mecanum dùng kỹ thuật đồng trục (động cơ và

bánh xe quay trên cùng 1 trục).

+ Ưu điểm: Ko bị chênh lệnh tốc độ quay động cơ và các bánh xe...

+ Nhược điểm: phải có board driver tốt, nếu ko di chuyển lâu FET sẽ cháy, giảm tuổi

thọ FET,...Ngoài ra, bánh mecanum dùng kỹ thuật truyền sin (1 buli trung gian hoặc 2

buli trung gian).

+ Ưu điểm: Khi di chuyển động cơ sẽ quay nhiều vòng hơn bánh xe... (giống ngun

lý xích xe đạp), do trục động cơ truyền gián tiếp qua dây sin và buli nên khi chạy bánh

xe sẽ không tác động lực trực tiếp vào động cơ => Ít hại FET hơn so với chuyển động

đồng trục.



21



+ Nhược điểm: Khi thiết kế khoảng cách giữa buli trung gian và trục động cơ, trục

bánh xe có thể bị chênh lệch, ko chính xác tuyệt đội giữa các bánh xe, khi chạy các

bánh xe sẽ ko đều nhau.

2.4 Encoder cho bánh xe

Enconder là 1 hệ thống gồm 1 cặp thu, phát hồng ngoại và một đĩa tròn có rãnh.

Encoder dùng để quản lí và xác định vị trí góc quay của 1 vật chuyển động tròn như là

bánh xe, trục động cơ mà ứng dụng của encoder trong kĩ thuật robocon là đếm số vòng

quay của bánh xe.



Hình 2.23: Một đĩa tròn encoder 2 vòng lỗ.



Vì trong robot ứng dụng chính của encoder là đếm vòng quay của động cơ nên ở đây

mình chỉ đề cập đến encoder đếm lên (Incremental encoder).

Trong Encoder độ phân giải chính là số lỗ trên 1 vòng, ví dụ như đĩa encoder trên thì

nó có 2 lỗ/vòng. Cách thức hoạt động của nó cũng khơng có gì là phức tạp. Encoder sử

dụng 1 cặp led phát, thu hồng ngoại. Các led hồng ngoại đựơc đặt đối diện nhau, giữa

2 led ta đặt cái đĩa encoder vào.



Hình 2.24: Encoder được đặt giữa hai led hồng ngoại.



Như hình trên bạn thấy, khi bánh xe chuyển động thì đĩa quay cũng chuyển động



22



còn đĩa đứng chỉ sử dụng để thu nhỏ tia sáng thôi, chúng ta không nên chú ý đến đĩa

đứng làm gì. Trên đĩa quay có các rãnh (lỗ) khi quay đến nếu led chiếu vào các rãnh thì

các tia hồng ngoại sẽ đuợc chiếu xuyên qua các rãnh rồi đến led thu, còn khi led chiếu

vào chỗ khơng có rãnh trên đĩa thì ánh sáng khơng thể đi qua đĩa được. Cho nên khi

nhận đươc tín hiệu thì chúng ta biết rằng led đã điqua được 1 rãnh.

Vậy làm sao để biết được đĩa đã quay 1 vòng? Rất đơn giản, chúng ta giả sử như

chúng ta có 1 đĩa encoder có 1 vòng lỗ và và vòng lõ đó chỉ có 1 lỗ. Khi bắt đầu ta để

cho led chiếu qua vòng lỗ đó và cho encoder quay. Khi nào nó quay đủ 1 vòng thì nó

sẽ quay lại cái lỗ đó và led chiếu vào lỗ thì sẽ truyền tín hiệu là đã quay hồn tất 1

vòng, như vậy 1 lỗ sẽ gửi về 1 tín hiệu xung vng.

- Encoder có vòng càng nhiều lỗ thì có độ phân giải càng cao (xung/vòng) và khi đó

bộ xử lí của bạn phải có tộc độ thật cao để nhận biết kịp thời các xung vì tốc độ của

động cơ rất cao.do đó với các ứng dụng bình thường thì ta chỉ nên dùng vòng encoder

ít lộ để đếm thơi. Ví dụ như chúng ta có 1 đĩa encoder 16 lỗ trên 1 vòng. Chúng ta sẽ

lập trình bộ đếm (Counter) ngồi để đếm số lỗ, khi đếm lên đến 16 lỗ thì chúng ta sử

dụng ngắt để báo rằng đơng cơ đã hồn tất 1 vòng quay.

- Trong trường hợp có một tác động nào đó khiến cho encoder đếm sai 1 lỗ, đếm sai 1

lỗ tuy không phải là con số lớn. Nhưng trong trường hợp ta muốn động cơ quay nhiều

vong thì sai 1 lỗ đó sẽ càng tích luỹ và sẽ là 1 con số lớn. Cho nên chúng ta sẽ tạo theo

1 lỗ định vị ngay bên trong võng lỗ đếm nữa:



Hình 2.25: Tạo một lỗ trong vòng lỗ đếm.



Khi led của lỗ định vị báo rằng motor đã hoàn tất 1vòng quay mà vong ngồi chưa có

tín hiệu hồn tất một vòng quay thì chúng ta cho rằng đó là do lỗi của bộ đếm và chấp

nhận đó là một vòng quay.

- Làm thế nào để biết chiều quay của một đông cơ? Ta sử dụng thêm một cặp led phát



23



thu cặp này đặt lệch so với cặp thứ 1, ví dụ cặp thứ nhất chiếu vào 1 rãnh thì cặp này

khơng chiếu vào rãnh. Do đó khi rãnh quay chúng ta sẽ có sơ đồ xung như hình sau:



Hình 2.26: Sơ đồ xung các rãnh quay.



Các bạn thấy rằng nếu như khi xung A đang từ mức cao xuống mức thấp, mà lúc đó B

đang ở mức thấp, thì chúng ta sẽ xác định được chiều chuyển động của encoder theo

chiều mũi tên màu cam.

Nếu A đang từ mức cao xuống mức thấp, mà B đang ở mức cao, thì chúng ta sẽ biết

encoder đang quay theo chiều màu đen.



24



CHƯƠNG 3: LẬP TRÌNH MỘT ROBOT

TỰ ĐỘNG

3.1 u cầu

Lập trình một robot tự động với yêu cầu có:



1.

2.



Khả năng lần theo vạch trắng.

Khả năng nhận biết và đếm các điểm giao nhau khi nó đi qua.

3.2 Lần theo vạch trắng



Trong con robot tự động mẫu của chúng tôi, chúng tôi đặt 2 cặp sensor IR: Bên

trái (Left) và bên phải (Right) ở phần đầu của robot. Khi sensor trái cắt đường trắng,

giá trị của sensor sẽ hạ xuống dưới mức điện áp ngưỡng đặt trước và chúng ta buộc

phải để cho robot chạy sang trái một vài bước để điều chỉnh hướng đi của nó. Hoặc khi

sensor phải cắt vào vạch trắng, giá trị của sensor phải sẽ thấp hơn giá trị ngưỡng đặt

sẵn, chúng ta phải cho robot chạy sang phải một vài bước để điều chính hướng chạy

chính xác. Nếu cả hai sensor đều không cắt vạch trắng thì chúng ta giả định là đã đi

đúng hướng và để nó chạy thẳng.



25



Hình 3.1: Thuật tốn lần theo vạch trắng.



3.3 Dò và đếm những đường cắt

Để dò được những điểm giao nhau của các vach khi robot chạy qua, chúng tôi

kiểm tra cả sensor trái và phải. Nếu cả hai sensor đều cắt vạch trắng cùng lúc thì chúng

ta có thể cho rằng robot đã đi qua 1 điểm giao nhau. Trong trường hợp này, chúng ta

phải để cho robot đi tiếp vài bước để tránh đếm 2 lần điểm giao nhau này.



Hình 3.2: Thuật tốn nhận biết và đếm điểm giao nhau.



3.4 Chương trình

Hàm C dưới đây là ví dụ cho 1 robot lần theo đường trắng và đếm vạch giao nhau khi

nó đi qua:

……

void move_robot(unsigned char step) {

int cnt;

cnt=0;

while(cnt
if (read_sensor(1)>ALIGN_THRESHOLD &&

read_sensor(2)>ALIGN_THRESHOLD) movet(FORWARD,1,0);



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

3 Bánh xe đa hướng

Tải bản đầy đủ ngay(0 tr)

×