Hệ thống truyền động#

Giới thiệu#

Hệ thống truyền động bao gồm bánh xe và động cơ điều khiển cách robot di chuyển và rẽ. Hệ thống truyền động có thể được tìm thấy trong các mô hình như Code Base 2.0, Super Car, hoặc robot tự chế.

Hệ thống truyền động sử dụng Cảm biến quán tính trong Bộ não để phát hiện va chạm và giúp robot di chuyển và quay chính xác. Khi bắt đầu mỗi dự án, hệ thống truyền động sẽ tự động hiệu chỉnh Cảm biến quán tính. Giữ robot đứng yên trong khoảng 2 giây trong quá trình hiệu chỉnh để robot có thể di chuyển và quay chính xác.

Có nhiều cách để lập trình hệ thống truyền động. Dưới đây là danh sách tất cả các khối lập trình hệ thống truyền động:

Thao tác — Di chuyển và xoay robot.

  • drive — Di chuyển robot tiến hoặc lùi mãi mãi.

  • lái cho — Di chuyển robot tiến hoặc lùi một khoảng cách cụ thể.

  • di chuyển cho đến khi — Di chuyển robot tiến hoặc lùi cho đến khi Cảm biến mắt phát hiện vật thể hoặc robot phát hiện va chạm.

  • quay — Xoay robot sang trái hoặc phải mãi mãi.

  • quay một góc — Xoay robot sang trái hoặc phải một số độ cụ thể.

  • quay theo hướng — Xoay robot để hướng về một hướng cụ thể từ -359 đến 359 độ. Robot sẽ quay theo hướng ngắn nhất để đạt được hướng mục tiêu.

  • quay theo hướng xoay — Xoay robot theo hướng xoay cụ thể.

  • dừng lái xe — Dừng chuyển động của robot.

Cài đặt — Điều chỉnh cài đặt hệ thống truyền động.

Giá trị — Kiểm tra trạng thái di chuyển.

Hành động#

lái xe#

Khối lệnh drive cho phép robot di chuyển tiến hoặc lùi liên tục. Robot sẽ tiếp tục di chuyển cho đến khi nhận được lệnh khác, chẳng hạn như rẽ hoặc dừng lại.

lái [tiến v]

Thông số

Sự miêu tả

phương hướng

Hướng di chuyển của robot: tiến hoặc lùi.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
lái [tiến v]
chờ (2) giây
dừng lái

lái xe cho#

Khối lệnh drive for cho phép robot di chuyển tiến hoặc lùi một khoảng cách nhất định. Chương trình sẽ chờ cho đến khi robot hoàn thành việc di chuyển trước khi khối lệnh tiếp theo trong chuỗi lệnh được thực thi.

lái [tiến v] trong [100] [mm v] ▶

Thông số

Sự miêu tả

phương hướng

Hướng di chuyển của robot: tiến hoặc lùi.

khoảng cách

Quãng đường robot di chuyển. Đây có thể là số nguyên hoặc số thập phân.

đơn vị

Đơn vị đo khoảng cách: mm (milimét) hoặc inch.

và đừng chờ đợi

Chọn mũi tên ( ▶ ) để mở rộng khối lệnh thành và đừng chờ, nhờ đó khối lệnh tiếp theo trong ngăn xếp sẽ chạy ngay lập tức.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Drive back and forth.]
lái [tiến v] trong [100] [mm v] ▶
lái [lùi v] trong [4] [inch v] ▶

lái xe cho đến khi#

Khối lệnh di chuyển cho đến khi cho phép robot di chuyển tiến hoặc lùi cho đến khi Cảm biến Mắt phát hiện vật thể hoặc robot phát hiện va chạm.

lái [tiến v] cho đến khi [đối tượng v] ▶

Thông số

Sự miêu tả

phương hướng

Hướng di chuyển của robot: tiến hoặc lùi.

tình trạng

Điều kiện khiến robot dừng lại: vật thể hoặc va chạm.

và đừng chờ đợi

Chọn mũi tên ( ▶ ) để mở rộng khối lệnh thành và đừng chờ, nhờ đó khối lệnh tiếp theo trong ngăn xếp sẽ chạy ngay lập tức.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Turn right after a crash.]
lái [tiến v] cho đến khi [va chạm v] ▶
quay [phải v] trong (90) độ ▶

xoay#

Khối lệnh quay cho phép robot quay sang trái hoặc phải liên tục. Robot sẽ tiếp tục quay cho đến khi nhận được lệnh thực hiện hành động khác, ví dụ như chuyển từ lái sang dừng lại.

quay [phải v]

Thông số

Sự miêu tả

phương hướng

Hướng quay của robot: trái hoặc phải.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Turn right and left, then stop.]
quay [phải v]
chờ [2] giây
quay [trái v]
chờ [2] giây
dừng lái

rẽ sang#

Khối lệnh quay theo sẽ xoay robot sang trái hoặc phải một số độ cụ thể. Góc quay được tính tương đối so với vị trí hiện tại của robot. Chương trình sẽ chờ cho đến khi robot quay xong trước khi khối lệnh tiếp theo trong chuỗi lệnh được thực thi.

quay [phải v] trong (90) độ ▶

Thông số

Sự miêu tả

phương hướng

Hướng quay của robot: trái hoặc phải.

góc

Số độ mà robot quay. Số này có thể là số nguyên hoặc số thập phân.

và đừng chờ đợi

Chọn mũi tên ( ▶ ) để mở rộng khối lệnh thành và đừng chờ, nhờ đó khối lệnh tiếp theo trong ngăn xếp sẽ chạy ngay lập tức.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Turn right then left.]
quay [phải v] trong (90) độ ▶
quay [trái v] trong (90) độ ▶

quay đầu#

Hướng quay là hướng mà bộ não của robot đang đối mặt, được đo bằng độ. Khối lệnh quay theo hướng quay sẽ xoay robot để hướng về một hướng quay cụ thể từ -359 đến 359 độ. Robot sẽ quay theo hướng ngắn nhất để đạt được hướng quay mục tiêu.

Hướng ban đầu là 0 độ.

Mã VEX GO Code Base 2.0 hiển thị các hướng di chuyển: 0 độ về phía trước, 90 độ sang phải, 180 độ về phía sau và 270 độ sang trái.

Dự án sẽ chờ cho đến khi robot quay xong trước khi khối lệnh tiếp theo trong chuỗi được thực thi.

quay đến hướng [90] độ ▶

Thông số

Sự miêu tả

tiêu đề

Hướng mà robot cần quay mặt được biểu thị bằng một số nguyên, từ -359 đến 359 độ.

và đừng chờ đợi

Chọn mũi tên ( ▶ ) để mở rộng khối lệnh thành và đừng chờ, nhờ đó khối lệnh tiếp theo trong ngăn xếp sẽ chạy ngay lập tức.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Turn to face the cardinal directions.]
quay đến hướng [90] độ ▶
chờ [1] giây
quay đến hướng [180] độ ▶
chờ [1] giây
quay đến hướng [270] độ ▶
chờ [1] giây
quay đến hướng [0] độ ▶

xoay#

Khối lệnh quay để điều chỉnh hướng quay cho phép robot quay theo một hướng cụ thể.

Góc quay là mức độ robot đã quay, được đo bằng độ. Khi bắt đầu một dự án, giá trị góc quay được đặt là 0 độ. Góc quay cũng có thể được đặt bằng cách sử dụng khối set drive rotation.

Các giá trị xoay là tuyệt đối. Điều này có nghĩa là hướng quay phụ thuộc vào góc xoay hiện tại của robot. Xoay sang phải sẽ làm tăng góc xoay, và xoay sang trái sẽ làm giảm góc xoay.

Ví dụ, nếu robot bắt đầu ở 0 độ và bạn xoay nó một góc 720 độ, nó sẽ quay sang phải hai lần. Nếu sau đó bạn xoay nó một góc 360 độ, nó sẽ quay sang trái một lần, vì 360 nhỏ hơn 720.

Một mã VEX GO Code Base 2.0 hiển thị các mũi tên xoay sang phải và trái. Mũi tên bên trái hiển thị "trừ" và mũi tên bên phải hiển thị "cộng".

Dự án sẽ chờ cho đến khi robot quay xong trước khi khối lệnh tiếp theo trong chuỗi được thực thi.

quay đến góc quay (90) độ ▶

Thông số

Sự miêu tả

xoay

Góc quay, tính bằng độ, mà robot sẽ xoay tới. Giá trị này có thể là số nguyên.

và đừng chờ đợi

Chọn mũi tên ( ▶ ) để mở rộng khối lệnh thành và đừng chờ, nhờ đó khối lệnh tiếp theo trong ngăn xếp sẽ chạy ngay lập tức.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Make one full turn to the right.]
quay đến góc quay [360] độ ▶
[Make another full turn to the right.]
quay đến góc quay [720] độ ▶
[Make one full turn to the left, returning to 360 degrees.]
quay đến góc quay [360] độ ▶

dừng lái xe#

Khối lệnh dừng di chuyển sẽ dừng chuyển động của robot.

dừng lái

Thông số

Sự miêu tả

Khối này không có tham số.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
lái [tiến v]
chờ (2) giây
dừng lái

Cài đặt#

đặt tốc độ truyền động#

Khối lệnh thiết lập tốc độ di chuyển cho robot biết tốc độ di chuyển mong muốn. Tỷ lệ phần trăm càng cao thì robot càng di chuyển nhanh hơn, và tỷ lệ phần trăm càng thấp thì robot càng di chuyển chậm hơn.

Mỗi dự án đều bắt đầu với việc robot di chuyển ở tốc độ mặc định là 50%.

Lưu ý: Vận tốc cao hơn giúp robot di chuyển nhanh hơn, nhưng có thể kém chính xác hơn. Vận tốc thấp hơn giúp robot di chuyển chậm hơn, nhưng chính xác hơn.

đặt vận tốc lái thành (50) %

Thông số

Sự miêu tả

vận tốc

Tốc độ lái xe từ 0% đến 100%.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Drive at different velocities.]
lái [tiến v] trong [100] [mm v] ▶
chờ [1] giây
[Drive slow.]
đặt vận tốc lái thành (20) %
lái [tiến v] trong [100] [mm v] ▶
chờ [1] giây
[Drive fast.]
đặt vận tốc lái thành (100) %
lái [tiến v] trong [100] [mm v] ▶

đặt tốc độ quay#

Khối lệnh thiết lập tốc độ quay cho robot biết tốc độ quay. Tỷ lệ phần trăm càng cao thì robot quay càng nhanh và tỷ lệ phần trăm càng thấp thì robot quay càng chậm.

Mỗi dự án đều bắt đầu với việc robot quay ở tốc độ 50% theo mặc định.

Lưu ý: Vận tốc cao hơn làm cho robot quay nhanh hơn, nhưng có thể kém chính xác hơn. Vận tốc thấp hơn làm cho robot quay chậm hơn, nhưng chính xác hơn.

đặt vận tốc quay thành [50]%

Thông số

Sự miêu tả

vận tốc

Tốc độ quay từ 0% đến 100%.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Turn at different velocities.]
quay [phải v] trong [180] độ ▶
chờ [1] giây
[Turn fast.]
đặt vận tốc quay thành [100]%
quay [phải v] trong [180] độ ▶

đặt dừng truyền động#

Khối lệnh set drive stopping thiết lập cách robot sẽ dừng chuyển động: bằng cách phanh, chạy trượt hoặc giữ nguyên vị trí.

đặt chế độ dừng lái thành [phanh v]

Thông số

Sự miêu tả

hành vi dừng lại

Cách robot sẽ dừng lại:

  • phanh — Dừng ngay lập tức.
  • trượt — Giảm tốc độ cho đến khi dừng hẳn.
  • giữ — Dừng ngay lập tức và giữ nguyên vị trí bánh xe.

Nếu khối lệnh này không được sử dụng, robot sẽ sử dụng phanh khi dừng lại.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Drive, then coast to a stop.]
đặt vận tốc lái thành (100) %
đặt chế độ dừng lái thành [trôi v]
lái [tiến v]
chờ [2] giây
dừng lái

đặt thời gian chờ ổ đĩa#

Khối lệnh set drive timeout thiết lập số giây mà robot sẽ cố gắng hoàn thành một chuyển động. Nếu robot không thể hoàn thành trong thời gian đó, nó sẽ ngừng cố gắng và chuyển sang khối lệnh tiếp theo trong ngăn xếp. Điều này giúp robot không bị kẹt trong một chuyển động.

đặt thời gian chờ lái thành [1] giây

Thông số

Sự miêu tả

thời gian

Số giây mà robot có thể cố gắng hoàn thành một chuyển động. Số này có thể là số nguyên hoặc số thập phân.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Drive as far as possible for 1 second before turning right.]
đặt thời gian chờ lái thành [1] giây
lái [tiến v] trong [25] [inch v] ▶
quay [phải v] trong [90] độ ▶

đặt hướng lái#

Hướng điều khiển là hướng mà bộ não của robot đang hướng tới, được đo bằng độ. Khối lệnh set drive heading thay đổi hướng điều khiển hiện tại của robot thành một giá trị hướng mới.

Ví dụ, nếu robot đã quay mặt sang phải, việc đặt hướng quay về 0 độ sẽ biến vị trí quay mặt sang phải đó thành 0 độ mới. Sau đó, robot có thể quay đến các vị trí khác dựa trên hướng quay mới đó.

đặt hướng lái thành [0] độ

Thông số

Sự miêu tả

tiêu đề

Giá trị góc quay, tính bằng độ, cần thiết lập cho robot. Giá trị này có thể là một số nguyên từ 0 đến 359.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Face the new 0 degree heading.]
đặt hướng lái thành [90] độ
quay đến hướng [0] độ ▶

thiết lập vòng quay ổ đĩa#

Góc quay là mức độ robot đã xoay, được đo bằng độ. Khi bắt đầu một dự án, giá trị góc quay được đặt là 0 độ. Khối lệnh set drive rotation sẽ thay đổi góc quay hiện tại của robot thành một giá trị mới.

Ví dụ, nếu robot đã quay hai vòng hoàn chỉnh sang phải, giá trị góc quay của nó sẽ là 720 độ. Việc đặt góc quay về 0 độ sẽ thiết lập lại góc quay từ 720 độ về 0 độ. Sau đó, robot có thể quay theo các hướng dựa trên giá trị mới đó.

đặt góc quay lái thành (0) độ

Thông số

Sự miêu tả

xoay

Giá trị góc quay, tính bằng độ, cần thiết lập cho robot. Giá trị này có thể là một số nguyên.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Spin counterclockwise two times.]
đặt góc quay lái thành [720] độ
quay đến góc quay [0] độ ▶

Giá trị#

Chuyến đi đã kết thúc#

Khối lệnh Boolean drive is done báo cáo liệu robot đã hoàn thành việc di chuyển hay chưa. Điều này có thể được sử dụng để điều khiển thời gian của các hành vi khác dựa trên chuyển động của robot.

  • Đúng — Robot đã hoàn thành việc di chuyển.

  • Sai — Robot vẫn đang di chuyển.

Khối này hoạt động cùng với các khối hệ thống truyền động sau có tham số và không chờ: lái trong, lái cho đến khi, quay trong, quay theo hướng và quay theo vòng quay.

<đã xong lái?>

Thông số

Sự miêu tả

Khối này không có tham số.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Turn when the drivetrain is done moving forward.]
lái [tiến v] trong [100] [mm v] ◀ và không chờ
chờ [0.25] giây
mãi mãi
nếu <đã xong lái?> thì
quay [phải v] trong [180] độ ▶
thoát vòng lặp
nếu không
in [Still moving...] ▶
chờ [0.1] giây
xóa tất cả hàng

lái xe hướng#

Hướng di chuyển là hướng mà bộ não của robot đang đối mặt, được đo bằng độ. Khối báo cáo hướng di chuyển hiển thị hướng di chuyển từ 0 đến 359 độ.

Hướng di chuyển ban đầu của robot là 0 độ.

Một bộ não VEX GO hiển thị các hướng di chuyển: 0 độ về phía trước, 90 độ sang phải, 180 độ về phía sau và 270 độ sang trái.

(hướng lái tính bằng độ)

Thông số

Sự miêu tả

Khối này không có tham số.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Display the heading while turning.]
quay [phải v] trong [450] độ ◀ và không chờ
mãi mãi
xóa tất cả hàng
in (hướng lái tính bằng độ) ▶
chờ [0.1] giây

sự quay của ổ đĩa#

Góc quay là mức độ robot đã xoay, được đo bằng độ. Khi bắt đầu một dự án, giá trị góc quay được đặt là 0 độ. Khối báo cáo góc quay truyền động sẽ báo cáo góc quay hiện tại của robot.

Rẽ phải sẽ làm tăng góc quay, và rẽ trái sẽ làm giảm góc quay. Ví dụ, quay hai vòng đầy đủ sang phải sẽ cho kết quả góc quay là 720 độ.

Một mã VEX GO Code Base 2.0 hiển thị các mũi tên xoay sang phải và trái. Mũi tên bên trái hiển thị "trừ" và mũi tên bên phải hiển thị "cộng".

(góc quay lái tính bằng độ)

Thông số

Sự miêu tả

Khối này không có tham số.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Display the rotation while turning.]
quay [phải v] trong [450] độ ◀ và không chờ
mãi mãi
xóa tất cả hàng
in (góc quay lái tính bằng độ) ▶
chờ [0.1] giây

tốc độ lái#

Khối báo cáo tốc độ di chuyển hiển thị tốc độ di chuyển của robot, được biểu thị bằng phần trăm từ -100% đến 100%.

Giá trị dương có nghĩa là robot đang di chuyển về phía trước. Giá trị âm có nghĩa là robot đang di chuyển về phía sau.

(vận tốc lái tính bằng %)

Thông số

Sự miêu tả

Khối này không có tham số.

Ví dụ

khi bắt đầu :: hat events
[Build Used: Code Base 2.0]
[Display the velocity of the robot before and while moving.]
in [Start: ] ▶
in (vận tốc lái tính bằng %) ▶
đặt con trỏ xuống hàng tiếp theo
lái [tiến v]
chờ [0.5] giây
in [Moving: ] ▶
in (vận tốc lái tính bằng %) ▶
dừng lái