ก่อนหน้านี้คุณได้เรียนรู้เกี่ยวกับวิธีการเขียนรหัสแขน 6 แกนเพื่อหยิบและวางลูกบาศก์ลงบนพาเลท จากนั้นคุณทบทวนทักษะนั้นในบทเรียนก่อนหน้านี้ขณะที่คุณเรียนรู้วิธีสร้างและใช้แผนสำหรับโครงการ VEXcode
ในบทเรียนนี้คุณจะ:
- สร้างแผนซ้อนก้อนบนพาเลท
- เขียน รหัสแขน 6 แกนเพื่อเรียงคิวบ์บนพาเลท
- เปลี่ยนพิกัด แกน z เป็นบัญชีสำหรับความสูงของคิวบ์เพื่อสร้าง สแต็ก
ในตอนท้ายของบทเรียนนี้ท่านจะวางแผนและสร้างโปรเจกต์ที่แขนแกน 6 แกนสร้างสองกองสองลูกบาศก์บนพาเลท

การวางแผน
ท่านได้เรียนรู้เกี่ยวกับวิธีวางแผนสำหรับการวางลูกบาศก์บนพาเลทในบทเรียนก่อนหน้านี้ ตอนนี้เราจะใช้กระบวนการเดียวกันในการวางแผนซ้อนลูกบาศก์ ใช้ขั้นตอนต่อไปนี้เพื่อสร้างแผนซ้อนลูกบาศก์ที่สองที่ด้านบนของลูกบาศก์แรก
หมายเหตุ: เริ่มต้นด้วยการทำซ้ำแผนของคุณจากหน่วยที่ 8 บทเรียนที่ 1 ในสมุดบันทึกวิศวกรรมของคุณแผน นี้ สร้างจากแผนที่แสดงในบทเรียนที่ 1 เราจะสร้างแผนซ้อนก้อนที่มีอยู่นี้ มันเป็นสิ่งสำคัญที่จะเก็บบันทึกของคุณสำหรับบทเรียนที่ 1 และ 2 แยกต่างหากเพื่อให้คุณสามารถอ้างอิงบันทึกเฉพาะเมื่อมองย้อนกลับไปในหน่วยนี้
อัปเดตเป้าหมายของแผน แผนการที่เรากำลังทำคือการย้ายลูกบาศก์หนึ่งก้อนจากโซนโหลดไปยังพาเลทจากนั้นซ้อนลูกบาศก์ที่สองที่ด้านบนของอันแรก

เพิ่มอีกสองขั้นตอนในแผนเพื่อพิจารณาสิ่งที่ต้องเกิดขึ้นกับลูกบาศก์ที่สอง
- หยิบลูกบาศก์อันที่สองขึ้นมา
- วางลูกบาศก์ที่สองไว้ด้านบนของลูกบาศก์แรก

ดูแผนของคุณสำหรับสองขั้นตอนแรก ขั้นตอนที่ 1 และขั้นตอนที่ 3 เหมือนกันเพราะคุณกำลังหยิบลูกบาศก์จากโซนโหลด คัดลอกพฤติกรรมที่ถูกย่อยสลายสำหรับขั้นตอนที่ 1 ลงในขั้นตอนที่ 3

ถอด "ตั้งเอฟเฟคเตอร์ปลายแขน 6 แกนเป็นแม่เหล็ก" สิ่งนี้เสร็จสมบูรณ์แล้วในตอนต้นของแผน

เปรียบเทียบพฤติกรรมที่ย่อยสลายในขั้นตอนที่ 2 กับการดำเนินการที่คุณต้องการทำให้เสร็จสมบูรณ์ในขั้นตอนที่ 4 องค์ประกอบใดของแผนนี้ที่สามารถนำกลับมาใช้ใหม่ได้?

คัดลอกพฤติกรรมที่ถูกย่อยสลายสำหรับขั้นตอนที่ 2 ลงในขั้นตอนที่ 4

อัปเดตพฤติกรรมการสลายตัวในขั้นตอนที่ 4b เพื่อพูดว่า "เลื่อนแขน 6 แกนลงเพื่อวางลูกบาศก์บนลูกบาศก์แรก"

ขณะสร้างแผนองค์ประกอบหลายอย่างจากแผนบทเรียนที่ 1 ถูกนำกลับมาใช้ใหม่ คุณจะสังเกตเห็นเมื่อคุณสร้างแผนมากขึ้นเรื่อยๆว่าจะมีองค์ประกอบทั่วไปที่คุณสามารถนำกลับมาใช้ใหม่ได้ ซึ่งจะเป็นประโยชน์เมื่อคุณไปถึงโปรเจกต์ที่ซับซ้อนมากขึ้น คุณสามารถมองย้อนกลับไปในสมุดบันทึกวิศวกรรมของคุณศึกษาแผนงานและโครงการ VEXcode ที่เกี่ยวข้องที่สร้างขึ้นและใช้องค์ประกอบของแผนงานที่ประสบความสำเร็จเหล่านั้นในโครงการใหม่
| ย้ายลูกบาศก์จากโซนการโหลดไปยังพาเลท |
| วางลูกบาศก์ที่สองไว้บนลูกบาศก์แรก. |
| 1. หยิบลูกบาศก์ขึ้นมา |
| a. ตั้งเอฟเฟกเตอร์ปลายแขน 6 แกนไว้ที่แม่เหล็ก |
| b. ย้ายแขน 6 แกนไปที่ลูกบาศก์ในโซนการโหลด |
| c. ติดลูกบาศก์เข้ากับแม่เหล็ก |
| d. ย้ายแขน 6 แกนไปเหนือโซนการโหลด |
| 2. วางลูกบาศก์บนพาเลท |
| a. ย้ายแขน 6 แกนไปเหนือพาเลท |
| b. ย้ายแขน 6 แกนลงเพื่อวางลูกบาศก์บนพาเลท |
| c. ปลดลูกบาศก์ออกจากแม่เหล็ก |
| d. ย้ายแขน 6 แกนไปเหนือพาเลท |
| 3. หยิบลูกบาศก์ที่สองขึ้นมา |
| a. ย้ายแขน 6 แกนไปที่ลูกบาศก์ในโซนการโหลด |
| b. ติดลูกบาศก์เข้ากับแม่เหล็ก |
| c. ย้ายแขน 6 แกนไปเหนือโซนการโหลด |
| 4. วางลูกบาศก์ที่สองไว้ด้านบนของลูกบาศก์แรก |
| ก. ย้ายแขน 6 แกนไปเหนือพาเลท |
| ข. ย้ายแขน 6 แกนลงเพื่อวางลูกบาศก์บนลูกบาศก์แรก |
| ค. ปลดลูกบาศก์ออกจากแม่เหล็ก |
| ง. ย้ายแขน 6 แกนไปเหนือพาเลท |
หลังจากสร้างแผนสำหรับการเรียงคิวบ์บนพาเลทเราสามารถเตรียมที่จะใช้แผนนี้ใน VEXcode
การดำเนินการตามแผน
ตอนนี้ขั้นตอนที่จำเป็นในการซ้อนลูกบาศก์ทั้งสองถูกแบ่งออกเป็นพฤติกรรมที่เล็กที่สุดเท่าที่จะเป็นไปได้โครงการซ้อนลูกบาศก์พร้อมที่จะสร้างแล้ว แผนการที่เขียนไว้ในสมุดบันทึกวิศวกรรมจะทำหน้าที่เป็นแนวทางในการจัดระเบียบและสร้างโครงการ
ตั้งค่าสำหรับโครงการโดยวาง Cube หนึ่งอันในโซนโหลดบนตำแหน่งกระเบื้อง 17 ตามที่แสดงด้านล่าง ทำตามขั้นตอนต่อไปนี้เพื่อสร้างโปรเจกต์

เปิดโปรเจกต์บทเรียนที่ 1 หน่วยที่ 8 ของคุณใน VEXcode โปรเจกต์นี้จะย้ายลูกบาศก์หนึ่งอันจากโซนโหลดไปยังศูนย์กลางของพาเลท คุณจะสร้างโปรเจกต์นี้เพื่อซ้อนลูกบาศก์ที่สองลงบนลูกบาศก์แรก
โปรดทราบว่าพิกัดที่แสดงในที่นี้เป็นตัวอย่างและคุณควรใช้ พิกัด ของคุณเพื่อให้แน่ใจว่าแขน 6 แกนทำงานตามที่ตั้งใจไว้

เปลี่ยนชื่อโปรเจกต์เป็น หน่วยที่ 8 บทเรียนที่ 2 และบันทึกลงในอุปกรณ์ของคุณ

เพิ่มสอง บล็อก ความคิดเห็นเพื่อสิ้นสุดโครงการ พิมพ์ขั้นตอนหลักของแผนเพื่อซ้อนคิวบ์ที่สองเป็นความคิดเห็น สิ่งเหล่านี้ควรตรงกับขั้นตอนในสมุดบันทึกวิศวกรรมของคุณ
- หยิบลูกบาศก์ที่สองขึ้นมา
- วางคิวบ์ที่สองที่ด้านบนของคิวบ์แรก

สร้างส่วนแรกของโครงการอีกครั้งภายใต้ บล็อก ความคิดเห็น "รับลูกบาศก์" และวางไว้ใต้ บล็อก ความคิดเห็น "รับลูกบาศก์ที่สอง"
ส่วนแรกของแผนนี้เกือบจะเหมือนกับแผนที่สร้างขึ้นในบทเรียนที่ 1 รวมถึงพิกัดของโซนการโหลดดังนั้นจึงสามารถใช้บล็อกเดียวกันได้

ตอนนี้โปรเจกต์ของคุณควรตรงกับขั้นตอนแรกของแผนในการซ้อนคิวบ์ที่สองในขั้นตอนแรก โปรดทราบว่า Set end effector block ไม่ได้ถูกทำซ้ำเนื่องจากไม่ได้เป็นส่วนหนึ่งของขั้นตอนที่ 3 ในแผน
ตรวจสอบให้แน่ใจว่าแขน 6 แกนเชื่อมต่อกับ VEXcode แล้ว เรียกใช้โปรเจกต์เพื่อทดสอบ

หยุดโครงการเมื่อแขน 6 แกนเคลื่อนที่เสร็จแล้ว
พฤติกรรมที่สังเกตได้ของแขน 6 แกนตรงกับในแผนของท่านหรือไม่? เหตุใดจึงรู้สึกเช่นนั้น?

ตอนนี้ส่วนแรกของโครงการได้รับการทดสอบแล้วและ Cube ที่สองก็หยิบขึ้นมาจากโซนโหลดได้สำเร็จ

ตอนนี้ขั้นตอนต่อไปในแผนสามารถนำไปใช้ได้
เพิ่มการ ย้ายไปยัง บล็อกตำแหน่งใต้ บล็อก ความคิดเห็น "ซ้อนคิวบ์ที่สองที่ด้านบนของคิวบ์แรก"
บล็อกนี้จะสอดคล้องกับพฤติกรรม "เลื่อนแขน 6 แกนเหนือพาเลท" ในแผนของคุณ

ตั้งค่าพารามิเตอร์ x, y และ z ของ บล็อก ย้ายไปยังตำแหน่งไปยังพิกัดที่บันทึกไว้ในแผนของคุณ เนื่องจากตำแหน่งเหนือพาเลทไม่มีการเปลี่ยนแปลงจึงสามารถใช้พิกัดเดียวกับที่ใช้เคลื่อนย้ายลูกบาศก์แรกเหนือพาเลทเพื่อเคลื่อนย้ายลูกบาศก์ที่สองได้เช่นกัน
อย่าลืมใช้ พิกัด ของคุณในโปรเจกต์เพื่อให้แน่ใจว่าแขน 6 แกนของคุณเคลื่อนที่ได้ตามที่ตั้งใจไว้ พิกัดที่แสดงในที่นี้เป็นตัวอย่าง

เพิ่มบล็อคตำแหน่งที่ เพิ่มขึ้น ในโปรเจกต์ของคุณ
ซึ่งสอดคล้องกับพฤติกรรม "เลื่อนแขน 6 แกนลงเพื่อวางลูกบาศก์บนลูกบาศก์แรก" ในแผน

พารามิเตอร์ z ใน บล็อกตำแหน่งที่ เพิ่มขึ้นจะลดระยะแขน 6 แกนที่จำเป็นในการซ้อนลูกบาศก์ที่สองที่ด้านบนของอันแรก เพื่อหาว่าค่านั้นคืออะไรเราจำเป็นต้องรู้ตำแหน่งของแม่เหล็กเมื่อทั้งสองลูกบาศก์ซ้อนกัน ออฟเซ็ตนี้สามารถใช้เพื่อช่วยให้เราทราบว่าแกนแขน 6 แกนต้องเคลื่อนที่ไปตามแกน z ไกลแค่ไหนเพื่อซ้อนลูกบาศก์ได้อย่างมีประสิทธิภาพ
ใช้สิ่งที่เรารู้เกี่ยวกับความสูงของลูกบาศก์และความสูงของพาเลทเราสามารถประมาณค่าออฟเซ็ตของพิกัด z ให้เป็น 65 มม. ลูกบาศก์แต่ละก้อนสูงประมาณ 25 มม. และพาเลทสูง 15 มม.
มีสองวิธีในการกำหนดระยะห่างลงบนแกน z เพื่อเคลื่อนแขน 6 แกน
- หากต้องการย้ายจากตำแหน่งเริ่มต้น (100 มม.) ไปยังตำแหน่งที่ต้องการคุณสามารถกำหนดความแตกต่างได้ 100 มม. – 65 มม. อยู่ที่ประมาณ 35 มม. 100mm – 65mm is approximately เพื่อหลีกเลี่ยงการชนระหว่างด้านล่างของลูกบาศก์ที่สองและด้านบนของลูกบาศก์แรกคุณสามารถลบอีก 5 -10 มม. การเคลื่อนแขน 6 แกนไปในทิศทางลบตามแนวแกน z ประมาณ 25 มม. จะช่วยให้สามารถวางลูกบาศก์ที่สองในตำแหน่งที่ต้องการได้
- นอกจากนี้คุณยังสามารถใช้คอนโซลมอนิเตอร์เพื่อค้นหาค่า z
ที่ด้านบนของกองลูกบาศก์ข้อมูล นี้จากคอนโซลมอนิเตอร์สามารถใช้เพื่อช่วยในการหาการเคลื่อนที่สัมพัทธ์ที่จำเป็นในการลดแขน
6 แกนเพื่อวาง Cube ได้อย่างมีประสิทธิภาพ ในโครงการที่เรากำลังสร้างพิกัด z
จะถูกตั้งค่าเป็น 100 มม. เมื่อแขน 6 แกนเคลื่อนที่เหนือลูกบาศก์บนพาเลท
นี่คือตำแหน่งเริ่มต้นของแขน 6 แกนสำหรับการเคลื่อนที่สัมพัทธ์นี้ ค่า z ของตำแหน่งแขน 6
แกนที่ด้านบนของกองซ้อนในตัวอย่างที่แสดงนี้คือ 73 มม. นี่คือตำแหน่งที่ต้องการของแขน 6
แกนเมื่อวางลูกบาศก์บนกองซ้อน
ในการย้ายจากตำแหน่งเริ่มต้น (100 มม.) ไปยังตำแหน่งที่ต้องการ (73 มม.) มีขนาดประมาณ 28 มม. To move from the starting position (100mm) to the desired position (73mm) การเคลื่อนแขน 6 แกนไปในทิศทางลบตามแนวแกน z ประมาณ 25 มม. จะช่วยให้สามารถวางลูกบาศก์ที่สองในตำแหน่งที่ต้องการได้

ตั้งค่าพารามิเตอร์ z ของ บล็อกตำแหน่งที่ เพิ่มขึ้นเป็น –25
การดำเนินการนี้จะย้ายแขน 6 แกนไปในทิศทางลบตามแนวแกน z เพื่อลดลูกบาศก์

ตรวจสอบให้แน่ใจว่าแขน 6 แกนเชื่อมต่อกับ VEXcode ลูกบาศก์แรกจะถูกส่งกลับไปยังโซนโหลดและส่วนที่สองจะถูกตั้งค่าไว้ที่ด้านข้างของไทล์
เรียกใช้โปรเจกต์เพื่อทดสอบ สังเกตพฤติกรรมของแขน 6 แกน

หยุดโครงการเมื่อแขน 6 แกนเคลื่อนที่เสร็จสิ้น
พฤติกรรมที่คุณสังเกตเห็นตรงกับพฤติกรรมที่ระบุไว้ในแผนของคุณหรือไม่? เหตุใดจึงรู้สึกเช่นนั้น?

แกนแขน 6 แกนควรเคลื่อนไปหยิบและวางลูกบาศก์แรกบนพาเลท จากนั้นแขน 6
แกนก็หยิบขึ้นมาและวางลูกบาศก์ที่สองไว้เหนือลูกบาศก์แรก
ตอนนี้เรารู้แล้วว่าแขน 6 แกนจะวางลูกบาศก์ที่สองอย่างไรเราสามารถเพิ่มลงในโครงการเพื่อดำเนินการตามแผนให้เสร็จสมบูรณ์ได้
เพิ่ม บล็อคแม่เหล็ก Set arm ในโปรเจกต์ ตั้งค่าพารามิเตอร์เป็น "ปล่อยแล้ว"
บล็อกนี้สอดคล้องกับพฤติกรรม "ปล่อยแม่เหล็ก" ในแผน

เพิ่ม บล็อกตำแหน่งการเพิ่มขึ้นในตอนท้ายของโครงการ ตั้งค่าพารามิเตอร์ z เป็น 50
ซึ่งสอดคล้องกับพฤติกรรมสุดท้าย "เลื่อนแขน 6 แกนเหนือพาเลท" ในแผน

ตรวจสอบให้แน่ใจว่าแขน 6 แกนเชื่อมต่อกับ VEXcode ลูกบาศก์แรกจะถูกส่งกลับไปยังโซนโหลดและส่วนที่สองจะถูกตั้งค่าไว้ที่ด้านข้างของไทล์
เรียกใช้โปรเจกต์เพื่อทดสอบ สังเกตพฤติกรรมของแขน 6 แกน

หยุดโครงการเมื่อแขน 6 แกนเคลื่อนที่เสร็จสิ้น
พฤติกรรมที่คุณสังเกตเห็นตรงกับพฤติกรรมที่ระบุไว้ในแผนของคุณหรือไม่? เหตุใดจึงรู้สึกเช่นนั้น?

แขน 6 แกนหยิบขึ้นมาและย้ายลูกบาศก์สองก้อนไปยังพาเลทโดยวางลูกที่สองไว้ด้านบนของลูกแรก

กิจกรรม
ตอนนี้คุณได้วางแผนและกำหนดรหัสแขน 6 แกนเพื่อซ้อนลูกบาศก์หนึ่งอันจากโซนโหลดที่ด้านบนของอีกอันบนพาเลทคุณจะได้ฝึกทักษะเหล่านี้ ในกิจกรรมนี้คุณจะสร้างโปรเจกต์จากบทเรียนนี้เพื่อเขียนรหัสแขน 6 แกนเพื่อซ้อนลูกบาศก์อีกสองก้อนลงบนพาเลทที่สอง
การตั้งค่า: วางลูกบาศก์หนึ่งอันในโซนโหลดบนตำแหน่งไทล์ 17

กิจกรรม: เขียนรหัสแขน 6 แกนเพื่อซ้อนก้อนสองก้อนบนแต่ละพาเลท 
- ทำตามขั้นตอนที่คุณได้เรียนรู้เพื่อวางแผนสำหรับวิธีการเขียนรหัสแขน 6
แกนเพื่อซ้อนลูกบาศก์ เพิ่มเติมสองก้อนบนพาเลทที่สองกับกลุ่มของคุณ
ตรวจสอบให้แน่ใจว่าคุณทุกคนเห็นด้วยกับแนวทางของคุณก่อนที่จะเริ่มสร้างโครงการของคุณ
ท่านสามารถต่อยอดโปรเจกต์ของท่านได้จากบทเรียนนี้
- บันทึกแผนของคุณลงในสมุดบันทึกวิศวกรรมของคุณ ตรวจสอบให้แน่ใจว่าคุณได้แยกย่อยแต่ละขั้นตอนเป็นพฤติกรรมที่เล็กที่สุดเท่าที่จะเป็นไปได้
- เมื่อคุณสร้างและบันทึกแผนแล้วให้ตรวจสอบแผนของคุณกับครูของคุณ
- สร้างโปรเจกต์ของคุณใน VEXcode เพื่อให้ตรงกับแผนที่กลุ่มของคุณตกลงกันไว้
- เปลี่ยนชื่อโปรเจกต์ของคุณ หน่วยที่ 8 บทเรียนที่ 2 กิจกรรม และบันทึกก่อนที่คุณจะเริ่มแก้ไขโปรเจกต์
- ใช้ บล็อก ความคิดเห็นในโปรเจกต์ของคุณเพื่อจัดระเบียบโปรเจกต์ของคุณให้ตรงกับแผนของคุณ
- เรียกใช้โปรเจกต์แบบเพิ่มเพื่อทดสอบ วาง คิวบ์แต่ละอันในโซนโหลดด้วยตนเองเมื่อคิวบ์ก่อนหน้าถูกย้าย
- แขน 6 แกนสร้างกองลูกบาศก์ ทั้งสองกองได้สำเร็จตามที่คุณวางแผนไว้หรือไม่?
ควรมีหนึ่งกองสองก้อนบนแต่ละพาเลท
หากไม่มีให้แก้ไขโปรเจกต์ต่อไปจนกว่าคุณจะสร้างสแต็กสำเร็จสองสแต็ก
- อย่าลืมบันทึกการปรับเปลี่ยนแผนของคุณลงในสมุดบันทึกวิศวกรรมของคุณ
ตรวจสอบความเข้าใจของคุณ
ก่อนที่จะไปยังบทเรียนถัดไปตรวจสอบให้แน่ใจว่าท่านเข้าใจแนวคิดในบทเรียนนี้โดยตอบคำถามต่อไปนี้ในสมุดบันทึกวิศวกรรมของท่าน
ตรวจสอบคำถามเกี่ยวกับความเข้าใจของ คุณ > ( Google Doc /.docx /.pdf)
เลือก ถัด > ไปเพื่อไปยังกิจกรรม Putting It All Together