ตัวควบคุม Android 13

หน้านี้อธิบายวิธีประกอบตัวควบคุม Android 13 ซึ่งควบคุมการเคลื่อนไหวของแท่นทดสอบการรวมเซ็นเซอร์และการให้แสงสว่างสำหรับ ITS-in-a-box การทดสอบการรวมเซ็นเซอร์เป็นส่วนหนึ่งของ ชุดเครื่องมือทดสอบรูปภาพของกล้อง (Camera Image Test Suite หรือ Camera ITS) ใน ชุดเครื่องมือทดสอบความเข้ากันได้ (Compatibility Test Suite หรือ CTS) ตัวควบคุม Android 13 ช่วยให้การทำงานเป็นไปโดยอัตโนมัติด้วยการควบคุมแสงสว่างของแท่นทดสอบและเซอร์โวมอเตอร์สำหรับฉากทดสอบที่ต้องมีการหมุนและการควบคุมแสงสว่าง

ภาพรวมของตัวควบคุม Android 13

ITS-in-a-box มีสภาพแวดล้อมการทดสอบที่สอดคล้องกันโดยมีระยะห่างคงที่ระหว่างแท็บเล็ตและโทรศัพท์ที่ใช้ทดสอบ นอกเหนือจากการให้แสงสว่างที่สอดคล้องกันโดยไม่มีแหล่งกำเนิดแสงภายนอก ตัวควบคุม Android 13 จะทำงานอัตโนมัติทั้งการควบคุมเซอร์โวและการควบคุมแสงสว่าง และไม่จำเป็นต้องหมุน DUT ด้วยตนเองสำหรับการทดสอบฉากการรวมเซ็นเซอร์ รวมถึงไม่จำเป็นต้องเปิดและปิดไฟด้วยตนเองสำหรับการทดสอบที่ควบคุมด้วยแสงสว่าง

การควบคุมเซอร์โวและการให้แสงสว่างในแท่นทดสอบ

แท่นทดสอบการรวมเซ็นเซอร์จะมีการเคลื่อนไหวของโทรศัพท์แบบคงที่เพื่อให้การทดสอบทำซ้ำได้ โทรศัพท์จะหมุนอยู่ด้านหน้าเป้าหมายลายตารางหมากรุกเพื่อให้สามารถจับภาพด้วยโทรศัพท์ในตำแหน่งต่างๆ ได้ สำหรับการทดสอบ test_sensor_fusion, เซอร์โวจะหมุนโทรศัพท์รอบแกนกลางของกล้อง 90 องศาและกลับมาที่เดิม ในเวลาประมาณ 2 วินาที สำหรับการทดสอบ test_video_stabilization, เซอร์โวจะหมุนโทรศัพท์รอบแกนกลางของกล้อง 10 องศาและกลับมาที่เดิมซ้ำๆ เพื่อเลียนแบบการเคลื่อนไหวของโทรศัพท์ เมื่อถ่ายวิดีโอขณะเดิน รูปที่ 1 แสดงโทรศัพท์ 2 เครื่องที่เคลื่อนไหวในแท่นทดสอบการรวมเซ็นเซอร์ รูปที่ 2 แสดงโทรศัพท์ 1 เครื่องที่เคลื่อนไหวในแท่นทดสอบการรวมเซ็นเซอร์

การเคลื่อนไหวของโทรศัพท์ในแท่นทดสอบ

รูปที่ 1 การเคลื่อนไหวของโทรศัพท์ในแท่นทดสอบสำหรับการทดสอบ test_sensor_fusion

การเคลื่อนไหวของโทรศัพท์ในแท่นทดสอบ

รูปที่ 2 การเคลื่อนไหวของโทรศัพท์ในแท่นทดสอบสำหรับการทดสอบ test_video_stabilization

การควบคุมเซอร์โวมอเตอร์

เซอร์โวมอเตอร์แบบแอนะล็อกในแท่นทดสอบเป็นเซอร์โวแบบกำหนดตำแหน่งที่ควบคุมโดยใช้การมอดูเลตความกว้างพัลส์ (Pulse-Width Modulation หรือ PWM) ตัวอย่างการควบคุมตำแหน่งทั่วไปแสดงในรูปที่ 3 สัญญาณควบคุมมีระยะเวลา 20 มิลลิวินาที การเปลี่ยนความกว้างพัลส์เป็นความกว้างต่ำสุดจะทำให้มอเตอร์เคลื่อนไปยังตำแหน่งเป็นกลาง และการเปลี่ยนความกว้างพัลส์เป็นความกว้างสูงสุดจะทำให้มอเตอร์หมุนตามเข็มนาฬิกา 180 องศา

คำอธิบายการควบคุมเซอร์โว

รูปที่ 3 คำอธิบายการควบคุมเซอร์โวทั่วไป

การควบคุมแสงสว่าง

แท่นทดสอบการรวมเซ็นเซอร์ต้องมีการเชื่อมต่อ USB เพื่อควบคุมการเคลื่อนไหวของเซอร์โวมอเตอร์และไฟโดยใช้คอมพิวเตอร์โฮสต์ ตัวควบคุม Android 13 ใช้บอร์ด Arduino UNO R3 ที่เชื่อมต่อ USB พร้อมบอร์ดกำหนดเส้นทางที่กำหนดเอง (หรือ ชิลด์) ที่ติดตั้งอยู่ด้านบน ตัวควบคุม Android 13 สามารถควบคุมเซอร์โวโรเตเตอร์ของแท่นทดสอบการรวมเซ็นเซอร์ได้สูงสุด 3 ตัว และระบบไฟ ITS- in-a-box ได้สูงสุด 3 ระบบ หรือแท่นทดสอบการรวมเซ็นเซอร์ 1 แท่นจากคอมพิวเตอร์โฮสต์เครื่องเดียว

ตัวควบคุม Android 13 เวอร์ชัน 3.0 ช่วยให้ผู้ใช้ปิดใช้การรีเซ็ตอัตโนมัติได้เมื่อเปิดพอร์ตอนุกรมของ Arduino ผ่าน USB ฟังก์ชันรีเซ็ตอัตโนมัติจะเปิดใช้เมื่อเสียบตัวควบคุมกับโฮสต์เครื่องอื่นหรือใช้สำหรับกรณีทดสอบอื่นๆ ผู้ใช้เปิดหรือปิดใช้การรีเซ็ตอัตโนมัติได้โดยใช้สวิตช์จริงบนตัวควบคุม

ตัวควบคุม Android 13 สามารถทำงานร่วมกับ Camera ITS-in-a-box ได้ทุกรุ่น ตัวควบคุม Android 13 สามารถเชื่อมต่อกับ Camera ITS-in-a-box (RFoV, WFoV, โมดูลาร์) หรือกล่องการรวมเซ็นเซอร์เพื่อทำการทดสอบที่ควบคุมด้วยแสงสว่าง ตั้งแต่ Android 15 เป็นต้นไป การทดสอบที่ควบคุมด้วยแสงสว่างทั้งหมด จะรวมอยู่ใน scene_flash และสามารถเรียกใช้ได้โดยใช้กล่องการรวมเซ็นเซอร์ ยกเว้น scene_low_light, ซึ่งต้องใช้แท็บเล็ตเพื่อแสดงแผนภูมิและต้องเรียกใช้โดยใช้ Camera ITS-in-a-box

สำหรับการทดสอบใน scene_flash และ scene_low_light จำเป็นต้องมี สภาพแวดล้อมที่มืดโดยปิดไฟเพื่อกระตุ้นฟังก์ชันแฟลชอัตโนมัติ ในโทรศัพท์ที่ใช้ทดสอบ รูปที่ 4 แสดงไฟใน ITS-in-a-box ที่ตัวควบคุม Android 13 ปิดและเปิด

การควบคุมแสงสว่างภายใน ITS-in-a-box

รูปที่ 4 ไฟปิดและเปิดสำหรับการทดสอบ test_auto_flash

ประวัติการแก้ไข

ตารางต่อไปนี้อธิบายประวัติการแก้ไขของตัวควบคุม Android 13 และมีลิงก์ดาวน์โหลดไฟล์การผลิตแต่ละเวอร์ชัน

วันที่ เวอร์ชัน ดาวน์โหลดไฟล์การผลิต บันทึกการเปลี่ยนแปลง
สิงหาคม 2024 3.0
  • เพิ่มการข้ามการรีเซ็ตอัตโนมัติเพื่อให้ไฟไม่สลับระหว่างการสื่อสารกับ DUT
ธันวาคม 2022 2.2
  • เพิ่มตัวเลือกในการสั่งซื้อบอร์ด PCB ที่ติดตั้งส่วนประกอบแล้วจาก EasyEDA
  • นำการหน่วงเวลาที่ไม่จำเป็นออกหลังจากเซอร์โวเคลื่อนที่ในไมโครโค้ด Arduino
  • เปลี่ยนตัวยึดจากโลหะเป็นไนลอน
  • เปลี่ยน MOSFET แบบรูทะลุเป็น MOSFET แบบติดตั้งบนพื้นผิว
  • เปลี่ยนตัวเก็บประจุจาก 10 uF เป็น 1000 uF
มีนาคม 2022 1
  • เพิ่มความสามารถในการควบคุมแสงสว่าง
  • เปลี่ยนจากการควบคุมเซอร์โว 6 ตัวเป็นการควบคุมแสงสว่าง 3 ตัวและการควบคุมเซอร์โว 3 ตัว

การตั้งค่าตัวควบคุม Android 13

ส่วนนี้อธิบายวิธีตั้งค่าตัวควบคุม Android 13

ส่วนประกอบที่จำเป็น

คุณสามารถซื้อตัวควบคุม Android 13 ผ่านผู้ให้บริการที่มีคุณสมบัติเหมาะสมรายใดรายหนึ่งของเรา หรือจะสร้างตัวควบคุมด้วยตนเองก็ได้ ไฟล์การผลิตประกอบด้วยไฟล์ Gerber ของ PCB, รายการวัสดุ (Bill of Materials หรือ BOM) ของ PCB, ข้อมูลการจัดวาง PCB และไฟล์ STEP ของกล่องหุ้ม หากต้องการดาวน์โหลดไฟล์การผลิต ให้ดูตารางใน ประวัติการแก้ไข

หากสร้างตัวควบคุมด้วยตนเอง คุณต้องมี บอร์ด Arduino UNO R3 หากซื้อตัวควบคุมผ่านผู้ให้บริการที่มีคุณสมบัติเหมาะสม Arduino จะรวมอยู่ด้วย

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

ขั้นตอนการตั้งค่า

หากต้องการตั้งค่าตัวควบคุม Android 13 ให้ทำตามขั้นตอนต่อไปนี้

  1. เชื่อมต่ออะแดปเตอร์ 12V (สำหรับการให้แสงสว่าง) และ 5V (สำหรับเซอร์โว) กับแจ็กไฟที่เหมาะสม (รูปที่ 5)

    ตำแหน่งอะแดปเตอร์

    รูปที่ 5 ตำแหน่งอะแดปเตอร์

  2. เชื่อมต่อไฟ ITS-in-a-box หรือกล่องการรวมเซ็นเซอร์กับแจ็กเอาต์พุตช่องสัญญาณไฟช่องใดช่องหนึ่ง (รูปที่ 6) ใช้ตัวแปลงตามความจำเป็น (รูปที่ 7) ทั้งนี้ขึ้นอยู่กับการใช้กระบอกจ่ายไฟ

    ตำแหน่งเอาต์พุตของแสง

    รูปที่ 6 ตำแหน่งเอาต์พุตช่องสัญญาณไฟ

    ปลั๊กตัวผู้ขนาด 3.5 มม. x 1.35 มม. เป็นตัวแปลงแจ็คตัวเมียขนาด 5.5 มม. x 2.1 มม.

    รูปที่ 7 ตัวแปลงที่เชื่อมต่อกระบอกจ่ายไฟกับตัวควบคุม

  3. หากต้องการตั้งค่าสำหรับฉ าก sensor_fusion ให้เชื่อมต่อเซอร์โวกับส่วนหัวของการเชื่อมต่อช่องสัญญาณเซอร์โวช่องใดช่องหนึ่ง

    ตำแหน่งการเชื่อมต่อช่องเซอร์โว

    รูปที่ 8 ตำแหน่งการเชื่อมต่อเซอร์โว

    สำหรับตัวควบคุมเวอร์ชัน 3.0 เมื่อเชื่อมต่อตัวควบคุมกับโฮสต์ใหม่ คุณต้องตั้งค่าสวิตช์รีเซ็ตอัตโนมัติเป็น Enable

    สำหรับเวอร์ชัน 3.0 ตัวควบคุมจะมีสวิตช์รีเซ็ตอัตโนมัติที่เปิดหรือปิดใช้ได้ เมื่อทำการทดสอบ เราขอแนะนำให้ตั้งค่าสวิตช์รีเซ็ตอัตโนมัติ เป็น Disable เพื่อป้องกันไม่ให้ไฟทั้งหมดดับลงชั่วคราวเมื่อเริ่มต้นการทดสอบแต่ละครั้ง เนื่องจาก its_base_test จะสร้างการสื่อสารกับตัวควบคุม Arduino การดำเนินการนี้มีความสำคัญอย่างยิ่งเมื่อทำการทดสอบแบบขนาน (ITS ทำงานพร้อมกันกับระบบไฟของแท่นทดสอบที่เชื่อมต่อกับตัวควบคุมเดียวกัน)

    รีเซ็ตตำแหน่งอัตโนมัติ

    รูปที่ 9 สวิตช์รีเซ็ตอัตโนมัติ

  4. เชื่อมต่อตัวควบคุมกับโฮสต์ด้วยสาย USB-A

    ตำแหน่ง USB-A

    รูปที่ 10 พอร์ตการเชื่อมต่อ USB-A กับโฮสต์

รูปที่ 11 แสดงตัวอย่างการตั้งค่าตัวควบคุม Android 13 ที่เสร็จสมบูรณ์สำหรับระบบไฟและเซอร์โว 1 ตัว

ตำแหน่ง USB-A

รูปที่ 11 การตั้งค่าตัวควบคุม Android 13 ที่เสร็จสมบูรณ์

การควบคุมซอฟต์แวร์จากโฮสต์

คุณสามารถดาวน์โหลดไมโครโค้ดลงใน UNO เพื่อกำหนดพิน PWM ให้กับสัญญาณมอเตอร์และกำหนดช่วงความกว้างพัลส์สำหรับมุมต่างๆ ไมโครโค้ด สำหรับการควบคุมการหมุนของเซอร์โวมอเตอร์ HS-755MB 6 ตัวจะรวมอยู่ใน แหล่งข้อมูลอื่นๆ ส่วนนั้นยังมีลิงก์ไปยังโปรแกรมง่ายๆ ที่ชื่อว่า rotator.py ซึ่งจะหมุนเซอร์โว

การใช้ตัวควบคุม Android 13

การใช้งาน Camera ITS

python tools/run_all_tests.py device=device_id camera=0 rot_rig=arduino:1 scenes=sensor_fusion

พร้อมสคริปต์การทดสอบที่รวมไว้

python rotator.py --ch 1 --dir ON --debug

การดาวน์โหลดการควบคุมซอฟต์แวร์