Skip to main content

Bài 3: Đầu vào nhiều cảm biến

Trong Bài học trước, Cảm biến khoảng cách đã được sử dụng để xác định xem Robot VR có phát hiện ra vật thể hay không và nếu có, sẽ di chuyển về phía vật thể đó. Tuy nhiên, không có giá trị cảm biến nào được sử dụng để xác định xem Robot VR có ở gần mép Sân chơi để dừng nó hay không. Dừng VR Robot khi nó ở gần mép Sân chơi sẽ ngăn nó lao ra khỏi mép.

Dự án VEXcode VR từ Bài học trước sử dụng Cảm biến khoảng cách trên rô-bốt để phát hiện lâu đài, sau đó lái xe để phá hủy chúng, được hiển thị ở bên trái. Bên phải là Cửa sổ Sân chơi hiển thị một dự án đang được tiến hành, với một số lâu đài bị phá hủy, nhưng Robot VR sắp lao ra khỏi mép Sân chơi.

Theo đó, dự án lặp lại hành vi lái xe về phía trước và rẽ mãi mãi. Tuy nhiên, không có điều kiện nào để kiểm tra đường viền màu đỏ xung quanh Sân chơi. Vì vậy, Robot VR có thể rơi khỏi Sân chơi khi di chuyển về phía trước.

Góc nhìn từ bên hông của Robot VR trên Sân chơi Dynamic Castle Crasher, đang đẩy một mảnh lâu đài ra khỏi cạnh và chuẩn bị lao ra khỏi mép.

Robot VR cần có một cảm biến khác để có thể xác định xem nó có ở gần mép Sân chơi hay không. Các hành vi lái xe về phía trước và rẽ chỉ cần lặp lại cho đến khi phát hiện thấy đường viền màu đỏ. Do đó, khối [Mãi mãi] có thể được thay thế bằng khối [Lặp lại cho đến khi], để lặp lại hành vi lái xe về phía trước và rẽ cho đến khi đáp ứng được điều kiện phát hiện đường viền màu đỏ. Cảm biến mắt xuống có thể được sử dụng để xác định xem Robot VR có ở gần mép Sân chơi hay không bằng cách phát hiện đường viền màu đỏ xung quanh Sân chơi.

Khối cảm biến màu VEXcode VR đọc Down Eye phát hiện màu đỏ?.
  • Tải dự án Unit9Lesson2 từ Bài học trước.
Dự án Bài 2 Đơn vị 9. Dự án bắt đầu bằng khối Khi bắt đầu với khối vĩnh viễn được đính kèm. Bên trong khối mãi mãi có khối Nếu thì với Khoảng cách phía trước tìm thấy một đối tượng làm tham số. Nhánh If then có bình luận ghi là Đánh đổ tòa nhà được tìm thấy bằng cách sử dụng Cảm biến khoảng cách và khối Lái về phía trước. Nhánh else có bình luận ghi là Rẽ để tìm tòa nhà bằng cách sử dụng Cảm biến khoảng cách và khối rẽ phải.
  • Đổi tên dự án thành Unit9Lesson3.
Hộp tên dự án ở giữa Thanh công cụ VR VEXcode, được đánh dấu bằng hộp màu đỏ, bên trái nút Chọn sân chơi. Tên dự án là Đơn vị 9 Bài 3.
  • Cần có một khối để liên tục kiểm tra Cảm biến mắt xuống. Robot VR sẽ cần lặp lại các hành vi này cho đến khi Cảm biến mắt dưới phát hiện màu đỏ. Đầu tiên, xóa khối [Mãi mãi].
Tổng quan về việc xóa khối Forever khỏi dự án. Dự án mới di chuyển từ khối Khi bắt đầu sang khối Nếu thì khác, không có vòng lặp Mãi mãi.
  • Thêm khối [Lặp lại cho đến].
Tổng quan về việc thêm khối Lặp lại cho đến khi xung quanh toàn bộ khối Nếu thì khác. Dự án mới bắt đầu bằng khối When Started, sau đó có khối Repeat until với tham số open. Trong C của khối Lặp lại cho đến khi là khối Nếu thì nếu không.
  • Thêm khối <Color sensing> vào bên trong khối [Lặp lại cho đến khi] và đặt tham số thành 'DownEye' phát hiện 'màu đỏ'.
Cùng một dự án với bộ phát hiện mắt xuống màu đỏ làm tham số của khối Lặp lại cho đến khi.

Khối [Lặp lại cho đến] được sử dụng thay cho khối [Chờ cho đến] trong dự án này. Điều này là do khối [Chờ cho đến khi] là khối chờ sẽ tạm dừng luồng của dự án cho đến khi điều kiện được đáp ứng. Nếu sử dụng khối [Chờ cho đến khi], khối [Nếu thì khác] sẽ không được thực thi cho đến khi điều kiện của khối [Chờ cho đến khi] được đáp ứng và khối [Nếu thì khác] sẽ chỉ được thực thi một lần.

Sơ đồ luồng dự án nếu sử dụng khối Chờ cho đến khi thay vì vòng lặp Lặp lại cho đến khi. Dự án sẽ giữ nguyên ở khối wait until cho đến khi điều kiện được báo cáo là đúng và chỉ sau đó mới chuyển sang khối If then else.

Bằng cách sử dụng khối [Lặp lại cho đến khi], điều kiện [Nếu thì khác] liên tục được kiểm tra và thực thi.

Sơ đồ luồng dự án với khối Lặp lại cho đến khi, cho thấy điều kiện của khối Nếu thì khác được kiểm tra liên tục và được thực thi dựa trên việc đối tượng có được tìm thấy (Đúng) hay không được tìm thấy (Sai).
  • Thêm bình luận để ghi chú mục đích sử dụng khối [Lặp lại cho đến].
Cùng một dự án như đã xây dựng trước đó, với khối Bình luận được thêm vào giữa khối Khi bắt đầu và khối Lặp lại cho đến khi. Bình luận có nội dung 'Hãy tìm kiếm các tòa nhà cho đến khi phát hiện ra đường viền màu đỏ.'
  • Mở Dynamic Castle Crasher Playground và chạy dự án.
  • Khi dự án này được chạy, VR Robot sẽ di chuyển về phía vật thể được phát hiện và rẽ phải nếu không. Tuy nhiên, mặc dù Cảm biến mắt hướng xuống đang tìm kiếm đường viền màu đỏ, Robot VR không được thông báo phải làm gì khi phát hiện ra đường viền màu đỏ, vì vậy nó vẫn tiếp tục lái và cuối cùng rơi khỏi Sân chơi.

    Góc nhìn từ trên xuống của Cửa sổ Sân chơi Dynamic Castle Crasher khi dự án đang diễn ra, với một số lâu đài bị phá hủy và Robot VR lao ra khỏi mép trên bên phải của Sân chơi để truy đuổi một mảnh lâu đài.

Khi điều kiện của khối [Lặp lại cho đến] được đáp ứng, luồng dự án sẽ thực thi ra khỏi khối [Lặp lại cho đến].

Chọn nút Tiếp theo để tiếp tục phần còn lại của Bài học này.