Skip to content

คู่มือและสถาปัตยกรรมโหมดเก็บข้อมูลวิจัยอัตโนมัติ (Research Data Collection Mode Complete Guide)

1. ที่มาและความจำเป็น (Rationale & System Objectives)

ในการฝึกซ้อมทั่วไป (General Practice Mode) ผู้ใช้งานสามารถเลือกท่ารำและปรับเวลาได้อย่างอิสระ แต่ในการเก็บข้อมูลวิจัยดุษฎีนิพนธ์และทดลองทางคลินิก (RCT) จำเป็นต้องมี "โหมดเก็บข้อมูลวิจัย (Research Mode)" เพื่อควบคุมตัวแปรและขจัดอคติทางวิทยาศาสตร์:

มิติการวิเคราะห์โหมดการซ้อมทั่วไปปัญหาที่พบในการวิจัยแนวทางแก้ไขด้วย Research Mode
ความผิดพลาดของผู้ใช้ (User Error)เลือกท่าและระดับได้อิสระอาสาสมัครอาจสับสน เลือกรำข้ามท่า หรือเลือกระดับ L1-L3 ผิดล็อกระบบอัตโนมัติ: บังคับรำเรียงลำดับจากท่าที่ 1 ถึง 12 ตามมาตรฐาน
การควบคุมระยะเวลา (Duration Bias)ปรับเวลาได้ 1, 3, 5, 10 นาทีข้อมูลที่อัดมีความยาวไม่เท่ากัน ส่งผลต่อสถิติกำหนดเวลาตายตัว: ล็อกการอัดพิกัดที่ 3 นาทีต่อท่า (180 วิ) เสมอ
การควบคุมความล้า (Fatigue Bias)อัดต่อได้ทันทีโดยไม่พักอาสาสมัครเร่งรำจนกล้ามเนื้อขาสั่นเกร็งสะสมระบบนับเวลาพัก (Rest Timer): บังคับพัก 1 นาทีระหว่างท่า และพัก 5 นาทีหลังท่าที่ 4 และ 8
ประสบการณ์ใช้งาน (Hands-Free UX)ต้องคลิกเปลี่ยนท่าและกดบันทึกเองการกดคลิกบ่อยครั้งรบกวนสมาธิและเสียเวลาท่อส่งงานอัตโนมัติ: รำเสร็จ ➡️ อัปโหลดคลาวด์ ➡️ เข้าหน้าพัก ➡️ สลับท่าถัดไป

2. สถาปัตยกรรมและเวิร์กโฟลว์ของระบบ (System Workflow & State Machine)

โหมดบันทึกข้อมูลวิจัยถูกขับเคลื่อนด้วย State Machine ผ่านคอนโทรลเลอร์ [ResearchModeController](file:///Users/yut/TaijiFlow/src/js/controllers/research_mode_controller.js):


3. องค์ประกอบสำคัญที่ได้รับการพัฒนา (Key Implementation Modules)

3.1 การจัดกลุ่มอัตโนมัติด้วย Access Code & URL Routing

  • รองรับรหัสคัดแยกกลุ่มใน window.TAIJI_CONFIG.RESEARCH_CODES:
    • "TAIJI_DATA_2026" ➡️ กลุ่มเก็บข้อมูลวิจัยสร้าง Dataset ('data_collection')
    • "TAIJI_EXP_2026" ➡️ กลุ่มทดลอง RCT มีโครงกระดูกและคะแนนเรียลไทม์ ('experimental')
    • "TAIJI_CTRL_2026" ➡️ กลุ่มควบคุม RCT ซ่อนโครงกระดูกและคะแนนสด ('control')
  • รองรับ URL Parameter เช่น app.html?mode=research หรือ ?code=TAIJI_EXP_2026 โดยระบบจะกรอกรหัสและล็อกฟิลด์เป็น readonly อัตโนมัติ

3.2 Dynamic Sessions Pacing (เป้าหมายเซสชันตามระดับสรีระ)

คำนวณเป้าหมายเซสชันหลักและเพดานสูงสุดโดยตรวจสอบจากระดับประสบการณ์ในโปรไฟล์จริง:

  • ระดับเริ่มต้น/กลาง (L1/L2 Beginners/Intermediates): เป้าหมายหลัก = 3 เซสชัน, เพดานสูงสุด = 5 เซสชัน
  • ระดับเชี่ยวชาญ (L3 Experts): เป้าหมายหลัก = 5 เซสชัน, เพดานสูงสุด = 10 เซสชัน
  • กลุ่ม RCT (8 สัปดาห์): แสดงจำนวนสัปดาห์ปัจจุบัน (1-8 สัปดาห์) และจำนวนวันที่ฝึกแล้วในสัปดาห์นั้น (เช่น ฝึกแล้ว 2 / 3 วัน)

3.3 แผงแดชบอร์ด 2 คอลัมน์และการพรีวิวแบบไดนามิก (Interactive Dashboard & Preview)

  • คอลัมน์ซ้าย: แสดงรายการ 12 ท่ารำ, ป้ายสถานะ (✓ บันทึกเสร็จแล้ว, ⏳ รำต่อท่านี้, รอการรำ), Progress Bar ความสำเร็จ, และปุ่มเริ่มรำ
  • คอลัมน์ขวา: เล่นแอนิเมชันพรีวิวท่ารำถัดไปอัตโนมัติ โดยรองรับระบบสลับภาพ 4 ขั้นตอน (Step 1-4 Sprite Loop) และ Fallback Skeleton Canvas สำหรับท่าที่ไม่มีรูปถ่าย

4. การทดสอบและการตรวจรับ (Validation & Testing)

  • ความแม่นยำของตัวจับเวลา: ตรวจสอบว่าระบบเริ่มอัดที่วินาทีที่ 0 และหยุดสั่งอัปโหลดที่ 180,000 ms (3 นาทีเต็ม) อย่างแม่นยำ
  • ระบบความปลอดภัยข้อมูล (IRB e-Consent): บายพาสด่านความยินยอมสำหรับอาสาสมัครที่เคยลงนามแล้ว พร้อมปุ่มตรวจสอบสิทธิ์การถอนตัว (btn-research-privacy)
  • Automated Unit Tests: รัน npm test ผ่านครบ 84 / 84 Test Cases (100% Passed)

TaijiFlow AI Research & Development Project (Chán Sī Jìng Biomechanics)