Skip to main content

Bài 4: Xây dựng dự án

Tổ chức dự án và bắt đầu 

  • Bắt đầu một dự án văn bản mới và chọn Disk Mover Playground khi được nhắc. Ô chọn Sân chơi Disk Mover có nội dung Disk Mover ở phía dưới và hiển thị sân chơi ở phía trên.
  • Đặt tên cho dự án Unit8Lesson4.Hộp tên dự án trong Thanh công cụ VR VEXcode được hiển thị bằng hộp màu đỏ. Tên dự án là Đơn vị 8 Bài 4.

     

  • Sử dụng các hành vi vừa được xác định, hãy thêm các bình luận sau để tổ chức dự án. 

    def main():
        # 1. Ổ đĩa sử dụng Cảm biến Down Eye
    
        # 2. Lấy đĩa
    
        # 3. Lái xe đến đích bằng Cảm biến khoảng cách
    
        # 4. Thả đĩa vào mục tiêu
    
        # 5. Quay lại và lái xe đến mục tiêu tiếp theo
  • Xây dựng đoạn mã sau để hướng dẫn Robot VR hoàn thành bốn hành vi đầu tiên được liệt kê ở trên. Dự án này sẽ sử dụng các lệnh tương tự như trong bài học trước để di chuyển đĩa bằng phản hồi cảm biến. Dự án của bạn sẽ trông như thế này:

    def main():
        # 1. Truyền dữ liệu vào đĩa bằng Cảm biến Down Eye
        khi không sử dụng down_eye.near_object():
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
        drivetrain.stop()
    
        # 2. Nhấc đĩa
        nam châm.kích hoạt(BOOST)
    
        # 3. Lái xe đến đích bằng Cảm biến khoảng cách
        drivetrain.turn_to_heading(180, DEGREES)
        while front_distance.get_distance(MM) > 200:
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
        drivetrain. dừng()
    
        # 4. Thả đĩa vào nam châm mục tiêu
        Kích hoạt(DROP)
    
        # 5. Quay lại và lái xe đến mục tiêu tiếp theo
  • Mở Cửa sổ Sân chơi nếu nó chưa mở. Hãy đảm bảoDisk Mover Playgroundmở ra và chạy dự án.
  • Khi dự án này được chạy, VR Robot sẽ lái và nhặt đĩa màu xanh đầu tiên, quay lại, lái đến mục tiêu màu xanh và thả đĩa.

    Góc nhìn từ trên xuống của Sân chơi Di chuyển đĩa, với Robot VR hướng về bức tường phía sau trong mục tiêu màu xanh, sau khi thả đĩa màu xanh đầu tiên vào đó.

Quay và lái đến bộ đĩa tiếp theo

  • Để thu thập được đĩa màu tiếp theo, Robot VR sẽ cần phải quay và lái về phía mục tiêu có màu tiếp theo. Vận dụng những kiến thức đã học ở bài học trước, để tránh va chạm với đĩa trong mục tiêu, VR Robot bây giờ sẽ cần phải di chuyển ra khỏi đường đi của đĩa. Để làm được điều này, Robot VR sẽ phải đảo ngược 100 milimét (mm), hoặc một nửa chiều dài của ô lưới vuông trên Sân chơi.

    Góc nhìn cận cảnh Robot VR trong khung thành màu xanh, hướng về bức tường phía sau, với mũi tên chỉ khoảng cách từ phía sau của robot đến mép khung thành là khoảng 100mm.
  • Thêm lệnh drive_for bên dưới lệnh energize và đặt tham số thành “REVERSE” cho 100 milimét (mm), do đó phần chú thích thứ tư của dự án sẽ trông như thế này:

    	# 4. Thả đĩa vào mục tiêu
        magnet.energize(DROP)
        drivetrain.drive_for(REVERSE, 100, MM)
  • Bây giờ, VR Robot sẽ phải rẽ trái để hướng đến mục tiêu có màu tiếp theo.Góc nhìn từ trên xuống của Sân chơi Di chuyển đĩa với Robot VR ở cuối dự án, quay mặt về phía sau của mục tiêu màu xanh, sau khi đảo ngược để thả đĩa xuống. Một mũi tên cong chỉ về bên trái, cho biết robot cần rẽ trái để hướng về khu vực mục tiêu màu đỏ.
  • Thêm lệnh turn_to_headingbên dưới bình luận thứ năm và đặt tham số thành 90 độ để Robot VR hướng về mục tiêu tiếp theo, do đó phần thứ năm của dự án trông như thế này:

    	# 5. Quay đầu và lái đến mục tiêu tiếp theo
        drivetrain.turn_to_heading(90, DEGREES)
  • Tiếp theo, Robot VR sẽ phải di chuyển về phía trước để đến mục tiêu có màu tiếp theo. Lưu ý rằng Robot VR sẽ phải di chuyển về phía trước bốn ô lưới hoặc 800 milimét (mm) để di chuyển đến tâm của mục tiêu màu tiếp theo.

    Nhìn từ trên xuống Sân chơi di chuyển đĩa với Robot VR ở phía trước mục tiêu màu xanh, hướng mặt phải về phía mục tiêu màu đỏ. Một mũi tên chấm bi kéo dài từ phía trước của robot đến khu vực mục tiêu màu đỏ, cho biết chuyển động tiếp theo cần thực hiện.
  • Thêm lệnh drive_forsau lệnh turn_to_heading và đặt tham số tiến về phía trước 800 milimét (mm), do đó phần thứ năm trông như thế này:

    	# 5. Quay đầu và lái đến mục tiêu tiếp theo
        drivetrain.turn_to_heading(90, DEGREES)
        drivetrain.drive_for(FORWARD, 800, MM)
  • Bây giờ, VR Robot sẽ phải quay mặt về phía các đĩa màu.

    Góc nhìn từ trên xuống của Sân chơi Di chuyển đĩa với Robot VR hướng về bên phải mục tiêu màu đỏ. Một mũi tên cong chỉ về bên trái, cho biết robot cần rẽ trái để đối mặt với các đĩa màu đỏ.
  • Thêm một bình luận khác và lệnh turn_to_heading thứ hai vào cuối dự án và đặt tham số thành 0 độ. Thao tác này sẽ xoay Robot VR hướng về các đĩa màu. Hãy đảm bảo các lệnh được thụt lề đúng cách trong dự án của bạn.

    	# 6. Quay sang đĩa
        drivetrain.turn_to_heading(0, DEGREES)
  • Mở Disk Mover Playgroundnếu nó chưa mở và chạy dự án.
  • Robot VR sẽ nhặt và di chuyển đĩa màu xanh đầu tiên vào mục tiêu màu xanh, sau đó lái qua mục tiêu màu đỏ. Robot VR cũng sẽ quay mặt về phía các đĩa màu đỏ.

    Góc nhìn từ trên xuống của Sân chơi Di chuyển đĩa với Robot VR ở phía trước mục tiêu màu đỏ, hướng mặt về phía các đĩa màu đỏ.

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.