Bài 1: Chuyển động tương đối
Trước đó, bạn đã di chuyển Cánh tay 6 trục đến các tọa độ cụ thể để vẽ nhiều hình dạng khác nhau. Trong Bài học này, bạn sẽ học một cách khác để di chuyển Cánh tay 6 trục để vẽ hình vuông. Bạn sẽ được giới thiệu về các khái niệm chuyển động tuyệt đối và tương đối để có thể kết hợp hai loại chuyển động này nhằm mã hóa Cánh tay 6 trục.
Trong bài học này bạn sẽ học:
- Sự khác biệt giữa chuyển động tuyệt đối và chuyển động tương đối.
- Khi nào áp dụng chuyển động tuyệt đối hoặc tương đối trong một dự án để di chuyển Cánh tay 6 trục theo ý muốn.
- Cách sử dụng các khối tăng vị trí trong một dự án để mã hóa chuyển động tương đối.
Đến cuối Bài học này, bạn sẽ lập trình được Cánh tay 6 trục để vẽ hình vuông bằng cách kết hợp các chuyển động tuyệt đối và tương đối.

Vẽ hình vuông với chuyển động tuyệt đối
Trong Đơn vị trước, bạn đã vẽ một hình vuông bằng cách tìm tọa độ của mỗi điểm và di chuyển Cánh tay 6 trục đến các vị trí cụ thể đó. Chúng ta hãy cùng xem lại quy trình này để có thể chú ý đến loại chuyển động mà Cánh tay 6 trục đang sử dụng.
Ghi lại tọa độ của hình vuông ABCD.
Trong sổ tay kỹ thuật của bạn, hãy ghi lại những thông tin đã biết về hình vuông.
- Chiều dài mỗi cạnh là 75mm
- Điểm A là (100, 100, 0)
- Điểm B là (175, 100, 0)
- Điểm C là (175, 175, 0)
- Điểm D là (100, 175, 0)

Mở một Dự án Khối mới bằng cách làm theo các bước trong video này.
Chọn tùy chọn Tệp trên Thanh công cụ để mở menu Tệp, sau đó chọn Dự án khối mới. Một cửa sổ bật lên sẽ xuất hiện với tùy chọn EXP Brain hoặc 6-Axis Arm. Chọn Cánh tay 6 trục. Sau đó, dự án mới sẽ được mở.
Tạo lại dự án được hiển thị ở đây trong VEXcode.

Hãy xem các khối trong dự án. Bạn nghĩ cánh tay 6 trục sẽ làm gì khi dự án này được triển khai?
Ghi lại dự đoán của bạn vào sổ tay kỹ thuật. Hãy mô tả bằng lời cách cánh tay 6 trục sẽ chuyển động và phác thảo những gì bạn nghĩ sẽ được vẽ trên Bảng trắng.

Đảm bảo rằng Tay 6 trục được kết nối với VEXcode. Chạy dự án và quan sát hành vi của Cánh tay 6 trục.

Dừng dự án khi Cánh tay 6 trục đã di chuyển xong.
Cánh tay 6 trục có vẽ được như bạn dự đoán không? Tại sao nên hoặc không nên?

Trong dự án này, Cánh tay 6 trục sử dụng chuyển động tuyệt đối để vẽ hình vuông. Điều đó có nghĩa là Cánh tay 6 trục di chuyển đến các tọa độ cụ thể để vẽ từng cạnh của hình vuông. Nó sẽ đạt đến cùng một tọa độ bất kể Cánh tay 6 trục được đặt ở đâu trước đó. Đôi khi điều này có thể hữu ích, nhưng đòi hỏi chúng ta phải có tọa độ chính xác cho mọi điểm trong hình dạng mà chúng ta đang tạo ra. Có một cách khác để sử dụng thông tin về độ dài cạnh trong một dự án để vẽ hình vuông.
Vẽ hình vuông bằng chuyển động tương đối
Hiểu được độ dài các cạnh của hình vuông giúp chúng ta tính toán được cánh tay 6 trục cần di chuyển so vớibao nhiêu so với vị trí hiện tại của nó để vẽ chính xác từng cạnh. Thay vì xác định chính xác cả bốn góc của hình vuông, chúng ta có thể chỉ cần di chuyển cánh tay so vớiso với điểm bắt đầu để hoàn thiện hình dạng.
Chuyển động tương đối là gì?
Chuyển động tương đối di chuyển Cánh tay 6 trục đến vị trí mới dựa trên vị trí hiện tại của nó. Với một điểm bắt đầu và độ dài các cạnh của hình vuông, chúng ta có thể di chuyển Cánh tay 6 trục dọc theo trục x và trục yso vớiđến vị trí bắt đầu. Chúng ta hãy phân tích điều này bằng hình vuông 75mm.
Chúng ta sẽ bắt đầu bằng một chuyển động tuyệt đối để đến tọa độ bắt đầu. Từ đó, mỗi cạnh có thể được vẽ theo chuyển động tương đối. 
Hãy chỉnh sửa dự án của chúng ta để xem nó hoạt động như thế nào.
Xóa các khối Di chuyển đến vị trí được sử dụng để vẽ hình vuông.
Video ở đây cho thấy năm khối dưới cùng của dự án đã chạy trước đó bị xóa. Các khối còn lại là hai bình luận và khối hiệu ứng cuối Set.
Thêm năm khối Bình luận vào dự án để mô tả chuyển động của Cánh tay 6 trục để vẽ mỗi cạnh của hình vuông. Nhập các bình luận sau vào dự án:
- Di chuyển đến điểm A với chuyển động tuyệt đối
- Vẽ cạnh AB chuyển động tương đối
- Vẽ cạnh BC chuyển động tương đối
- Vẽ cạnh CD với chuyển động tương đối
- Vẽ cạnh DA có chuyển động tương đối
Việc thêm các bình luận như thế này sẽ giúp duy trì sự ngăn nắp và chỉ ra các bước cần thực hiện theo trình tự để hoàn thành nhiệm vụ.

Vẽ cạnh AB với chuyển động tương đối
Thêm khối Di chuyển đến vị trí bên dưới bình luận "Di chuyển đến điểm A với chuyển động tuyệt đối". Nhập tọa độ bắt đầu (điểm A) vào các tham số.
- Điểm A (100, 100, 0)
Dự án này bắt đầu giống như dự án trước, vì nó bắt đầu bằng một chuyển động tuyệt đối.

Để vẽ cạnh AB có chuyển động tương đối, chúng ta sẽ sử dụng khối Tăng dần vị trí. 
Khối tăng dần vị trí di chuyển Cánh tay 6 trục theo một khoảng cách cụ thể dọc theo các trục x, y, z. Đây là khối chúng ta sẽ sử dụng để di chuyển Cánh tay 6 trục theo chuyển động tương đối. Khối Vị trí tăng dầndi chuyển Cánh tay 6 trục theo một khoảng cách so với vị trí hiện tại của nó.
Thêm khối Tăngvị trí bên dưới chú thích "Vẽ cạnh AB với chuyển động tương đối".

Lưu ý rằng khối vị trí tăng dần có các tham số cho trục x, y và z. Điều này liên quan đếnmà Cánh tay 6 trục sẽ di chuyển dọc theo mỗi trục hoặc chuyển động tương đối của Cánh tay 6 trục trên mỗi trục. Các tham số này là giá trị tọa độchứ không phải, giống như trong khối Di chuyển đến vị trí khi Cánh tay 6 trục sử dụng chuyển động tuyệt đối.
Để xác định các tham số cần thiết để vẽ một cạnh của hình vuông, cần có hai thông tin:
- khoảng cách di chuyển Cánh tay 6 trục so với vị trí hiện tại
- trục hoặc các trục mà Cánh tay 6 trục sẽ di chuyển dọc theo
Để vẽ cạnh AB của hình vuông, khoảng cách mà cánh tay 6 trục sẽ di chuyển so với vị trí hiện tại là chiều dài cạnh, hoặc 75mm. Để di chuyển từ điểm A đến điểm B, Cánh tay 6 trục sẽ di chuyển dọc theo trục x theo hướng dương. Nó sẽ không di chuyển theo trục y hoặc z.
Đặt tham số x thành 75 trong khối Vị trí tăng . Các tham số y và z vẫn giữ nguyên là 0.
Thao tác này sẽ di chuyển Cánh tay 6 trục 75mm dọc theo trục x theo hướng dương.

Hãy xem xét dự án hiện tại. Bạn nghĩ điều này sẽ khiến Cánh tay 6 trục thực hiện hành động gì khi chạy?
Ghi lại dự đoán của bạn vào sổ tay kỹ thuật. Vẽ những gì bạn nghĩ cánh tay 6 trục sẽ vẽ.

Đảm bảo rằng Tay 6 trục được kết nối với VEXcode. Chạy dự án và quan sát hành vi của Cánh tay 6 trục.

Dừng dự án khi cánh tay 6 trục ngừng chuyển động.
Cánh tay 6 trục có di chuyển như bạn dự đoán không? Tại sao nên hoặc không nên?

Vẽ cạnh BC với chuyển động tương đối
Chúng ta có thể áp dụng những gì đã học để vẽ cạnh đầu tiên của hình vuông để vẽ cạnh BC.
Thêm khối vị trí Tăng bên dưới bình luận "Vẽ cạnh BC với chuyển động tương đối".

Xác định các tham số của khối Tăng dần vị trí.
Để vẽ cạnh BC, cánh tay 6 trục cần di chuyển 75mm. Khi nhìn vào hướng chuyển động so với vị trí hiện tại, chúng ta thấy Cánh tay 6 trục cần phải di chuyển dọc theo trục y. Cánh tay 6 trục không được di chuyển theo trục x hoặc z.

Đặt tham số y của khối Tăng vị tríthành 75.
Thao tác này sẽ di chuyển cánh tay 6 trục 75mm dọc theo trục y. Vì các tham số cho trục x và z là 0 nên Cánh tay 6 trục sẽ không di chuyển theo trục x hoặc z.

Dự đoán cách cánh tay 6 trục sẽ di chuyển khi dự án được chạy. Ghi lại dự đoán của bạn vào sổ tay kỹ thuật.
Phác thảo những gì bạn nghĩ cánh tay 6 trục sẽ vẽ.

Chạy dự án và quan sát hành vi của Cánh tay 6 trục.

Dừng dự án khi Cánh tay 6 trục đã di chuyển xong.
Cánh tay 6 trục có vẽ được như bạn dự đoán không? Tại sao nên hoặc không nên?

Vẽ mặt CD với chuyển động tương đối
Bây giờ chúng ta đã vẽ xong hai cạnh đầu tiên của hình vuông, chúng ta có thể tiếp tục xây dựng dự án để vẽ cạnh CD.
Thêm khối vị trí Tăng dần bên dưới chú thích "Vẽ cạnh CD với chuyển động tương đối".

Xác định các tham số cho khối vị trí tăng .
Để vẽ cạnh CD, chiều dài cạnh vẫn là 75mm. Khi nhìn vào hướng chuyển động đó so với vị trí hiện tại của Cánh tay 6 trục, chúng ta thấy chuyển động lại theo trục x.
Cánh tay 6 trục không được di chuyển theo trục y hoặc z ở phía bên này của hình vuông.

Đặt tham số x của khối Tăng vị tríthành 75.

Dự đoán cách cánh tay 6 trục sẽ di chuyển khi dự án được chạy. Ghi lại dự đoán của bạn vào sổ tay kỹ thuật và nhớ phác thảo những gì bạn nghĩ sẽ được vẽ.

Chạy dự án và quan sát hành vi của Cánh tay 6 trục.
Nó có vẽ như bạn dự đoán không? Tại sao nên hoặc không nên?

Cánh tay 6 trục không thực hiệncú kéo CD bênnhư mong đợi.
Hãy cùng xem tại sao điều đó lại xảy ra. Độ dài cạnh không thay đổi nên độ dài của đường thẳng được vẽ là chính xác. Tuy nhiên, hướngcủa chuyển động đó thì không.
Chúng ta có thể tính đến việc di chuyển theo hướng dương hoặc âm bằng cách nhập tham số vào khối vị trí tăng dần dưới dạng số dương hoặc số âm.
Đối với các cạnh AB và BC, Cánh tay 6 trục di chuyển theo hướng dương dọc theo trục x và trục y, do đó chúng tôi đã sử dụng một số dương. Nhưng để vẽ cạnh CD, cánh tay 6 trục cần phải di chuyển theo hướngâm, do đó chúng ta sẽ cần sử dụng giá trị âm trong tham số.
Đặt tham số x của khối Tăng vị trí thành –75.
Thao tác này sẽ di chuyển Cánh tay 6 trục 75mm theo hướngâmdọc theo trục x. Giá trị trục y và z không cần phải thay đổi vì cánh tay 6 trục vẫn chưa di chuyển dọc theo các trục đó để vẽ cạnh CD.

Chạy lại dự án và quan sát hành vi của Cánh tay 6 trục.
Mặt CD có được vẽ như mong muốn không? Tại sao nên hoặc không nên?

Vẽ cạnh DA với chuyển động tương đối
Bây giờ chúng ta đã vẽ được ba cạnh của hình vuông, chúng ta có thể áp dụng những gì đã học để vẽ cạnh cuối cùng.
Thêm khối vị trí Tăng dần bên dưới chú thích "Vẽ cạnh DA với chuyển động tương đối".

Xác định các tham số cho khối vị trí tăng .
Để vẽ cạnh DA, cánh tay 6 trục lại di chuyển 75mm. Khi nhìn vào hướng chuyển động dựa trên vị trí hiện tại, Cánh tay 6 trục sẽ cần phải di chuyển dọc theo trục y một lần nữa. Không cần phải di chuyển dọc theo trục x hoặc z để vẽ cạnh DA.

Đặt tham số y của khối Tăng vị trí thành 75. Các tham số x và z phải giữ nguyên là 0.

Dự đoán cánh tay 6 trục sẽ di chuyển như thế nào và nó sẽ vẽ gì khi dự án được chạy. Ghi lại dự đoán của bạn vào sổ tay kỹ thuật.

Chạy dự án và quan sát hành vi của Cánh tay 6 trục.
Nó có di chuyển như bạn dự đoán không? Liệu nó có vẽ được cạnh cuối cùng của hình vuông như mong muốn không? Tại sao nên hoặc không nên?

Để vẽ cạnh DA như mong muốn, Cánh tay 6 trục cần di chuyển theo hướngâmdọc theo trục y. Tuy nhiên, chúng tôi đặt tham số y là 75mm, cho biết Cánh tay 6 trục sẽ di chuyển theo hướngdươngdọc theo trục y.

Đặt tham số y của khối tăng vịcùng là –75. Các tham số x và z phải giữ nguyên là 0 vì Cánh tay 6 trục không cần phải di chuyển trên các trục này để vẽ cạnh DA như mong muốn.
Cánh tay 6 trục bây giờ sẽ di chuyển dọc theo trục y theo hướng âm để hoàn thành hình vuông.

Chạy dự án và quan sát chuyển động của Cánh tay 6 trục.
Nó có vẽ hình vuông như mong muốn không? Tại sao nên hoặc không nên?

Hãy đổi tên và lưu dự án của bạn.

Tại sao nên sử dụng chuyển động tương đối?
Trong khi chuyển động của Cánh tay 6 trục giống nhau khi vẽ hình vuông 75mm với cả chuyển động tuyệt đối và tương đối, thì vẫn có thêm sự linh hoạt và dễ dàng khi chúng ta sử dụng chuyển động tương đối. Ví dụ, nếu bạn muốn vẽ một hình vuông 75mm ở một vị trí khác, bạn sẽ làm gì? Sử dụng chuyển động tuyệt đối, bạn sẽ tìm ra tọa độ mới của cả bốn điểm và mã hóa Cánh tay 6 trục để kết nối chúng. Tuy nhiên, khi sử dụng chuyển động tương đối, bạn chỉ cần biết tọa độ ban đầu và phần còn lại vẫn giữ nguyên.
Chuyển động tuyệt đối sẽ luôn đưa bạn đến cùng một tọa độ, bất kể vị trí bắt đầu. Tính năng này hữu ích khi bạn cần di chuyển Cánh tay 6 trục đến một vị trí cụ thể để bắt đầu một dự án hoặc để đảm bảo bạn có thể đến được vị trí đó bất kể tọa độ trước đó. Video bên dưới cho thấy một điểm đánh dấu bắt đầu ở ba vị trí khác nhau trên bảng trắng. Tất cả các điểm đánh dấu đều di chuyển đến vị trí (75, 75, 0) vì chúng đang di chuyển theo chuyển động tuyệt đối.
Chuyển động tương đối sẽ di chuyển đến vị trí mới dựa trên vị trí hiện tại. Tính năng này hữu ích khi bạn cần di chuyển Cánh tay 6 trục theo một vị trí đã biết, giống như khi bạn vẽ hình vuông hoặc di chuyển theo một mẫu cụ thể. Video bên dưới cho thấy một điểm đánh dấu bắt đầu tại ba vị trí giống như trên trên phần đính kèm bảng trắng. Tất cả các điểm đánh dấu di chuyển theo đường chéo cùng một lúc vì giá trị x của chúng tăng thêm 75 và giá trị y của chúng cũng tăng thêm 75 cùng một lúc. Vị trí cuối của các điểm đánh dấu đều khác nhau và liên quan trực tiếp đến vị trí bắt đầu của chúng với sự gia tăng giá trị x và y.
Cả hai dự án trong Bài học này đều sử dụng cùng một thông tin, nhưng cách sử dụng thông tin đó trong mã thì khác nhau. Hãy cùng xem xét chi tiết hơn các dự án của chúng tôi. Hình ảnh bên trái là từ dự án chuyển động tuyệt đối của chúng tôi. Chiều dài cạnh 75mm tương ứng với sự thay đổi tọa độ x cần thiết để di chuyển từ điểm A đến điểm B.
Hình ảnh bên phải là từ dự án chuyển động tương đối của chúng tôi. Ở đây, chiều dài cạnh 75mm tương ứng với khoảng cách mà Cánh tay 6 trục di chuyển dọc theo trục x. 
Sử dụng chuyển động tương đối có thể mang lại cho bạn sự linh hoạt hơn trong dự án, do đó, hãy đơn giản hóa việc điều chỉnh và thay đổi mã của bạn cho nhiều mục đích khác nhau.
Hoạt động
Bây giờ bạn đã mã hóa Cánh tay trục 6 trục để di chuyển bằng cả chuyển động tuyệt đối và tương đối, đã đến lúc thực hành các kỹ năng này. Trong Hoạt động này, bạn sẽ chỉnh sửa dự án của mình để mã hóa Cánh tay 6 trục nhằm vẽ ba hình vuông trên Bảng trắng. 
Thiết lập: Ghi lại những thông tin sau vào sổ tay kỹ thuật của bạn.
- Tọa độ bắt đầu của mỗi ô vuông như sau:
- Hình vuông ABCD (100, 150, 0)
- Bình phương EFGH (-5, 153, 0)
- Quảng trường IJKL (155, 57, 0)
- Tổng chiều dài cạnh của ba hình vuông là 50mm.
- Các hình vuông không thể chạm vào nhau.
Hoạt động:Xây dựng dự án của bạn từ Bài học này để mã hóa Cánh tay 6 trục nhằm vẽ thêm hai hình vuông.
- Ghi lại kế hoạch cho dự án của bạn vào sổ tay kỹ thuật. Hãy đảm bảo nhóm của bạn thống nhất về việc vẽ hình vuông nào trước, thứ hai và thứ ba, cũng như các loại chuyển động bạn sẽ sử dụng để hoàn thành các bức vẽ.
- Xây dựng dự án của bạn từ Bài học này để thực hiện theo kế hoạch trong sổ tay kỹ thuật của bạn.
- Chạy dự án của bạn để kiểm tra. Đảm bảo Tay 6 trục của bạn được kết nối với VEXcode. Dự án của bạn có vẽ được cả ba hình vuông như mong muốn không? Tại sao nên hoặc không nên?
- Tiếp tục lặp lại dự án của bạn cho đến khi bạn vẽ thành công cả ba hình vuông. Đặt tên và lưu dự án của bạn khi bạn hoàn thành.
Kiểm tra sự hiểu biết của bạn
Trước khi bắt đầu Bài học tiếp theo, hãy đảm bảo rằng bạn hiểu các khái niệm trong Bài học này bằng cách trả lời các câu hỏi trong tài liệu bên dưới trong sổ tay kỹ thuật của bạn.
Kiểm tra câu hỏi hiểu biết của bạn > (Google Doc / .docx / .pdf)
ChọnTiếp theo > để chuyển sang Bài 2.