Pelajaran 1: Gerakan Relatif
Sebelumnya Anda telah menggerakkan Lengan 6-Axis ke koordinat tertentu untuk menggambar berbagai bentuk. Dalam pelajaran ini, Anda akan mempelajari cara lain untuk menggerakkan Lengan 6-Axis untuk menggambar persegi. Anda akan diperkenalkan dengan konsep gerakan absolut dan relatif, sehingga Anda dapat menggabungkan kedua jenis gerakan tersebut untuk memprogram Lengan 6-Axis.
Dalam pelajaran ini Anda akan mempelajari:
- Perbedaan antara gerakan absolut dan gerakan relatif.
- Kapan menerapkan pergerakan absolut atau relatif dalam sebuah proyek untuk menggerakkan Lengan 6-Axis sesuai yang diinginkan.
- Cara menggunakan blok Increment position dalam sebuah proyek untuk membuat kode pergerakan relatif.
Pada akhir pelajaran ini, Anda akan dapat memprogram Lengan 6-Axis untuk menggambar persegi, menggunakan kombinasi gerakan absolut dan relatif.

Menggambar Persegi dengan Gerakan Absolut
Pada Unit sebelumnya, Anda telah menggambar sebuah persegi dengan menemukan koordinat setiap titik, dan menggerakkan Lengan 6-Axis ke lokasi-lokasi spesifik tersebut. Mari kita tinjau proses ini, sehingga kita dapat memperhatikan jenis gerakan yang digunakan oleh Lengan 6-Axis.
Catat koordinat persegi ABCD.
Di buku catatan teknik Anda, catat informasi yang diketahui tentang persegi tersebut.
- Panjang setiap sisinya adalah 75 mm.
- Titik A adalah (100, 100, 0)
- Titik B adalah (175, 100, 0)
- Titik C adalah (175, 175, 0)
- Titik D adalah (100, 175, 0)

Buka Proyek Blocks baru dengan mengikuti langkah-langkah dalam video ini.
Pilih opsi File di Toolbar untuk membuka menu File, lalu pilih New Blocks Project. Jendela pop-up muncul dengan pilihan untuk EXP Brain atau 6-Axis Arm. Pilih Lengan 6-Axis. Proyek baru tersebut kemudian dibuka.
Buat ulang proyek yang ditunjukkan di sini di VEXcode.

Perhatikan blok-blok dalam proyek tersebut. Menurut Anda, apa yang akan dilakukan oleh Lengan 6-Axis ketika proyek ini dijalankan?
Catat prediksi Anda di buku catatan teknik Anda. Jelaskan secara verbal bagaimana Lengan 6-Axis akan bergerak, dan gambarkan apa yang menurut Anda akan digambar di Papan Tulis.

Pastikan Lengan 6-Axis terhubung ke VEXcode. Jalankan proyek dan amati perilaku Lengan 6-Axis.

Hentikan proyek ketika Lengan 6-Axis telah selesai bergerak.
Apakah lengan 6-sumbu tersebut menghasilkan gambar sesuai prediksi Anda? Mengapa ya atau mengapa tidak?

Dalam proyek ini, Lengan 6-Axis menggunakan pergerakan absolut untuk menggambar persegi. Itu berarti bahwa Lengan 6-Axis bergerak ke koordinat tertentu untuk menggambar setiap sisi persegi. Ia akan mencapai koordinat yang sama tidak peduli di mana pun Lengan 6-Axis diposisikan sebelumnya. Hal ini terkadang bisa berguna, tetapi mengharuskan kita untuk memiliki koordinat yang tepat untuk setiap titik pada bentuk yang kita buat. Ada cara lain untuk menggunakan informasi tentang panjang sisi dalam sebuah proyek untuk menggambar persegi.
Menggambar Persegi dengan Gerakan Relatif
Memahami panjang sisi-sisi persegi membantu kita mengetahui seberapa jauh Lengan 6-Axis perlu bergerak relatifposisi saat ini untuk menggambar setiap sisi secara akurat. Alih-alih menentukan keempat sudut persegi secara tepat, kita cukup menggerakkan lengan relatif terhadap titik awaluntuk melengkapi bentuknya.
Apa itu gerakan relatif?
Pergerakan relatif menggerakkan Lengan 6-Axis ke posisi baru berdasarkan lokasinya saat ini. Dengan diberikan titik awal dan panjang sisi-sisi persegi, kita dapat menggerakkan Lengan 6-Sumbu di sepanjang sumbu x dan y sejauhterhadap posisi awal. Mari kita uraikan ini dengan persegi 75mm kita.
Kita akan mulai dengan gerakan absolut untuk mencapai koordinat awal. Dari situ, setiap sisi dapat digambar dengan gerakan relatif. 
Mari kita edit proyek kita untuk melihat cara kerjanya.
Hapus blok Pindah ke posisi yang digunakan untuk menggambar persegi.
Video ini menunjukkan lima blok terbawah dari proyek yang dijalankan sebelumnya sedang dihapus. Blok yang tersisa adalah dua komentar dan blok Set end effector.
Tambahkan lima blok Komentar ke proyek, untuk menggambarkan pergerakan Lengan 6-Axis untuk menggambar setiap sisi persegi. Ketik komentar berikut ke dalam proyek:
- Pindah ke titik A dengan gerakan absolut.
- Gambarlah sisi AB dengan gerakan relatif.
- Gambarlah sisi BC dengan gerakan relatif.
- Gambar sisi CD dengan gerakan relatif
- Gambarlah sisi DA dengan gerakan relatif.
Menambahkan komentar seperti ini bermanfaat untuk menjaga keteraturan, dan menunjukkan langkah-langkah yang diperlukan secara berurutan untuk menyelesaikan tugas yang ada.

Menggambar Sisi AB dengan Gerakan Relatif
Tambahkan blok "Pindah ke posisi 1" Move to position di bawah komentar "Pindah ke titik A dengan gerakan absolut". Masukkan koordinat awal (titik A) pada parameter.
- Titik A (100, 100, 0)
Proyek ini dimulai sama seperti proyek sebelumnya, yaitu dimulai dengan gerakan absolut.

Untuk menggambar sisi AB dengan gerakan relatif, kita akan menggunakan blok Increment position. 
Blok posisi Increment menggerakkan Lengan 6-Axis sejauh jarak tertentu di sepanjang sumbu x, y, dan z. Ini adalah blok yang akan kita gunakan untuk menggerakkan Lengan 6-Axis dengan gerakan relatif. BlokIncrement positionmenggerakkan Lengan 6-Axis sejauh jarak tertentu relatif terhadap lokasinya saat ini.
Tambahkan blokIncrement position di bawah komentar "Gambar sisi AB dengan gerakan relatif".

Perhatikan bahwa blok Increment position memiliki parameter untuk sumbu x, y, dan z. Hal iniLengan 6-Axis akan bergerak di sepanjang setiap sumbu, atau pergerakan relatif Lengan 6-Axis pada setiap sumbu. Parameter ini adalahbukanyaitu nilai koordinat, seperti yang ada di blok Pindah ke posisi , ketika Lengan 6-Axis menggunakan pergerakan absolut.
Untuk menentukan parameter yang dibutuhkan untuk menggambar sisi persegi, diperlukan dua informasi:
- jarak yang harus ditempuh Lengan 6-Axis relatif terhadap posisi saat ini
- sumbu atau sumbu-sumbu yang akan dilalui oleh Lengan 6-Sumbu.
Untuk menggambar sisi AB dari persegi, jarak yang akan ditempuh oleh Lengan 6-Axis relatif terhadap posisi saat ini adalah panjang sisi tersebut, atau 75 mm. Untuk berpindah dari titik A ke titik B, Lengan 6-Axis akan bergerak sepanjang sumbu x ke arah positif. Ia tidak akan bergerak sepanjang sumbu y atau z.
Atur parameter x ke 75 pada blok Increment position. Parameter y dan z tetap bernilai 0.
Ini akan menggerakkan Lengan 6-Axis sejauh 75mm sepanjang sumbu x saja, ke arah positif.

Lihatlah proyek tersebut sebagaimana adanya saat ini. Menurut Anda, apa yang akan terjadi pada Lengan 6-Axis saat dijalankan?
Catat prediksi Anda di buku catatan teknik Anda. Gambarlah apa yang menurut Anda akan digambar oleh Lengan 6-Axis.

Pastikan Lengan 6-Axis terhubung ke VEXcode. Jalankan proyek dan amati perilaku Lengan 6-Axis.

Hentikan proyek ketika Lengan 6-Axis telah berhenti bergerak.
Apakah lengan 6-sumbu bergerak sesuai prediksi Anda? Mengapa ya atau mengapa tidak?

Menggambar Sisi BC dengan Gerakan Relatif
Kita dapat menerapkan apa yang telah kita pelajari untuk menggambar sisi pertama persegi, yaitu sisi BC.
Tambahkan blok posisiIncrement di bawah komentar "Gambar sisi BC dengan pergerakan relatif".

Tentukan parameter blok posisidengan penambahan .
Untuk menggambar sisi BC, Lengan 6-Axis perlu bergerak sejauh 75mm. Dengan melihat arah pergerakan relatif terhadap posisi saat ini, kita melihat bahwa Lengan 6-Axis perlu bergerak sepanjang sumbu y. Lengan 6-Axis tidak boleh bergerak sepanjang sumbu x atau z.

Atur parameter y pada blok Increment positionmenjadi 75.
Ini akan menggerakkan Lengan 6-Axis sejauh 75mm di sepanjang sumbu y. Karena parameter untuk sumbu x dan z adalah 0, Lengan 6-Axis tidak akan bergerak pada sumbu x atau z.

Prediksikan bagaimana menurut Anda lengan 6-sumbu akan bergerak saat proyek dijalankan. Catat prediksi Anda di buku catatan teknik Anda.
Gambarlah apa yang menurut Anda akan digambar oleh Lengan 6-Axis.

Jalankan proyek dan amati perilaku Lengan 6-Axis.

Hentikan proyek ketika Lengan 6-Axis telah selesai bergerak.
Apakah lengan 6-sumbu tersebut menghasilkan gambar sesuai prediksi Anda? Mengapa ya atau mengapa tidak?

Menggambar Sisi CD dengan Gerakan Relatif
Setelah kita menggambar dua sisi pertama persegi, kita dapat melanjutkan proyek kita untuk menggambar sisi CD.
Tambahkan blokIncrement position di bawah komentar "Gambar sisi CD dengan gerakan relatif".

Tentukan parameter untuk blok posisidengan penambahan .
Untuk menggambar sisi CD, panjang sisinya tetap 75mm. Jika kita melihat arah pergerakan tersebut relatif terhadap posisi lengan 6-sumbu saat ini, kita melihat bahwa pergerakan tersebut sekali lagi berada di sepanjang sumbu x.
Lengan 6-Axis tidak boleh bergerak pada sumbu y atau z di sisi persegi ini.

Atur parameter x dari blok Increment positionmenjadi 75.

Prediksikan bagaimana menurut Anda lengan 6-sumbu akan bergerak saat proyek dijalankan. Catat prediksi Anda di buku catatan teknik Anda, dan pastikan untuk menyertakan sketsa tentang apa yang menurut Anda akan digambar.

Jalankan proyek dan amati perilaku Lengan 6-Axis.
Apakah hasilnya sesuai dengan prediksi Anda? Mengapa ya atau mengapa tidak?

Lengan 6-Axis melakukanbukansisi gambar CD seperti yang direncanakan.
Mari kita lihat mengapa hal itu terjadi. Panjang sisi tidak berubah, jadi panjang garis yang digambar sudah benar. Namun, arahdari gerakan tersebut bukanlah arah.
Kita dapat memperhitungkan pergerakan ke arah positif atau negatif dengan memasukkan parameter pada blok posisiPeningkatan sebagai angka positif atau negatif.
Untuk sisi AB dan BC, Lengan 6-Axis bergerak ke arah positif sepanjang sumbu x dan y, jadi kami menggunakan angka positif. Namun untuk menggambar sisi CD, Lengan 6-Axis perlu bergerak ke arah, jadi kita perlu menggunakan nilai negatif pada parameter tersebut.
Atur parameter x dari blok Increment position menjadi –75.
Ini akan menggerakkan Lengan 6-Axis sejauh 75mm ke arahsepanjang sumbu x. Nilai sumbu y dan z tidak perlu diubah, karena Lengan 6-Axis masih belum bergerak sepanjang sumbu tersebut untuk menggambar sisi CD.

Jalankan proyek lagi, dan amati perilaku Lengan 6-Axis.
Apakah sisi CD digambar sesuai dengan yang direncanakan? Mengapa ya atau mengapa tidak?

Menggambar Sisi DA dengan Gerakan Relatif
Setelah kita menggambar tiga sisi persegi, kita dapat menerapkan apa yang telah kita pelajari untuk menggambar sisi terakhir.
Tambahkan blok posisiIncrement di bawah komentar "Gambar sisi DA dengan pergerakan relatif".

Tentukan parameter untuk blok posisi dengan penambahan .
Untuk menggambar sisi DA, Lengan 6-Axis kembali bergerak sejauh 75mm. Dengan melihat arah pergerakan tersebut berdasarkan posisi saat ini, Lengan 6-Axis perlu bergerak lagi sepanjang sumbu y. Tidak perlu bergerak sepanjang sumbu x atau z untuk menggambar sisi DA.

Atur parameter y dari blok Increment position menjadi 75. Parameter x dan z harus tetap 0.

Prediksikan bagaimana Lengan 6-Axis akan bergerak dan apa yang akan digambar saat proyek dijalankan. Catat prediksi Anda di buku catatan teknik Anda.

Jalankan proyek dan amati perilaku Lengan 6-Axis.
Apakah pergerakannya sesuai dengan prediksi Anda? Apakah gambar yang dihasilkan sesuai dengan sisi akhir persegi yang diinginkan? Mengapa ya atau mengapa tidak?

Untuk menggambar sisi DA sesuai yang diinginkan, Lengan 6-Axis perlu bergerak ke arah-di sepanjang sumbu y. Namun, kami menetapkan parameter y menjadi 75mm, yang menunjukkan bahwa Lengan 6-Axis harus bergerak ke arahpositifsepanjang sumbu y.

Atur parameter y dari blok posisi Increment terakhirmenjadi –75. Parameter x dan z harus tetap 0, karena Lengan 6-Axis tidak perlu bergerak pada sumbu-sumbu ini untuk menggambar sisi DA seperti yang dimaksudkan.
Lengan 6-Axis sekarang harus bergerak sepanjang sumbu y ke arah negatif untuk melengkapi persegi.

Jalankan proyek dan amati pergerakan Lengan 6-Axis.
Apakah persegi yang digambar sesuai dengan yang diinginkan? Mengapa ya atau mengapa tidak?

Pastikan untuk mengganti nama dan menyimpan proyek Anda.

Mengapa Menggunakan Gerakan Relatif?
Meskipun pergerakan Lengan 6-Axis sama untuk menggambar persegi 75mm baik dengan pergerakan absolut maupun relatif, terdapat fleksibilitas dan kemudahan tambahan saat kita menggunakan pergerakan relatif. Sebagai contoh, jika Anda ingin menggambar persegi berukuran 75 mm di lokasi yang berbeda, apa yang akan Anda lakukan? Dengan menggunakan pergerakan absolut, Anda akan menemukan koordinat baru dari keempat titik tersebut dan memprogram Lengan 6-Axis untuk menghubungkannya. Namun, dengan menggunakan gerakan relatif, Anda hanya perlu mengetahui koordinat awal, dan sisanya tetap sama.
Pergerakan absolut akan selalu membawa Anda ke koordinat yang sama, terlepas dari lokasi awalnya. Ini berguna ketika Anda perlu memindahkan Lengan 6-Axis ke lokasi tertentu untuk memulai proyek, atau untuk memastikan Anda dapat mencapai lokasi tersebut terlepas dari koordinat sebelumnya. Video di bawah ini menunjukkan sebuah spidol yang mulai bergerak dari tiga lokasi berbeda pada papan tulis tempel. Semua penanda bergerak ke lokasi (75, 75, 0) karena mereka bergerak dengan pergerakan absolut.
Pergerakan relatif akan berpindah ke lokasi baru berdasarkan posisi saat ini. Ini berguna ketika Anda perlu menggerakkan Lengan 6-Axis relatif terhadap lokasi yang diketahui, seperti yang Anda lakukan saat menggambar persegi atau untuk bergerak dalam pola tertentu. Video di bawah ini menunjukkan spidol yang dimulai dari tiga lokasi yang sama seperti pada lampiran papan tulis di atas. Semua penanda bergerak secara diagonal pada waktu yang bersamaan karena nilai x-nya ditingkatkan sebesar 75 dan nilai y-nya ditingkatkan sebesar 75 pada waktu yang bersamaan. Lokasi akhir dari setiap penanda berbeda dan berhubungan langsung dengan posisi awalnya seiring dengan peningkatan nilai x dan y.
Kedua proyek dalam Pelajaran ini menggunakan informasi yang sama, tetapi cara penggunaannya dalam kode berbeda. Mari kita lihat proyek-proyek kita secara lebih detail. Gambar di sebelah kiri berasal dari proyek gerakan absolut kami. Panjang sisi 75 mm sesuai dengan perubahan koordinat x yang dibutuhkan untuk berpindah dari titik A ke titik B.
Gambar di sebelah kanan berasal dari proyek pergerakan relatif kami. Di sini, panjang sisi 75 mm sesuai dengan seberapa jauh Lengan 6-Axis bergerak sepanjang sumbu x. 
Penggunaan pergerakan relatif dapat memberikan fleksibilitas tambahan pada proyek Anda, sehingga mempermudah adaptasi dan penyesuaian kode Anda untuk berbagai keperluan.
Aktivitas
Setelah Anda memprogram Lengan Sumbu 6-Axis untuk bergerak menggunakan gerakan absolut dan relatif, sekarang saatnya untuk mempraktikkan keterampilan ini. Dalam Aktivitas ini, Anda akan mengedit proyek Anda untuk memprogram Lengan 6-Axis agar menggambar tiga persegi di Papan Tulis. 
Persiapan: Catat informasi berikut di buku catatan teknik Anda.
- Koordinat awal untuk setiap persegi adalah sebagai berikut:
- Persegi ABCD (100, 150, 0)
- Persegi EFGH (-5, 153, 0)
- Persegi IJKL (155, 57, 0)
- Panjang sisi ketiga persegi tersebut adalah 50 mm.
- Kotak-kotak tersebut tidak boleh saling bersentuhan.
Activity: Build onto your project from this Lesson to code the 6-Axis Arm to draw two additional squares.
- Record a plan for your project in your engineering notebook. Be sure your group agrees on which square to draw first, second and third, as well as what kinds of movements you will use to complete the drawings.
- Build onto your project from this Lesson to follow your plan in your engineering notebook.
- Run your project to test it. Ensure your 6-Axis Arm is connected to VEXcode. Does your project draw all three squares as intended? Mengapa ya atau mengapa tidak?
- Continue to iterate on your project until you have successfully drawn all three squares. Name and save your project when you have finished.
Periksa Pemahaman Anda
Before beginning the next Lesson, ensure that you understand the concepts in this Lesson by answering the questions in the document below in your engineering notebook.
Check Your Understanding questions > (Google Doc / .docx / .pdf)
Select Next > to move on to Lesson 2.