mirror of
https://github.com/soconnor0919/hristudio.git
synced 2026-05-08 13:58:55 -04:00
11 KiB
11 KiB
Tutorial 5: Wizard Interface
Learn how to use the real-time wizard control interface for Wizard-of-Oz studies.
Objectives
- Navigate the wizard interface
- Control robot actions in real-time
- Make branching decisions
- Handle trial interruptions
What is the Wizard Interface?
The Wizard Interface is your control center during trials. It provides:
- Real-time trial monitoring
- Robot action controls
- Decision-making tools
- Intervention capabilities
- Event logging
┌──────────────────────────────────────────────────────────────┐
│ WIZARD INTERFACE │
├────────────────┬─────────────────────┬──────────────────────┤
│ │ │ │
│ Trial │ Timeline │ Robot │
│ Controls │ Progress │ Status │
│ │ │ │
│ ┌──────────┐ │ ┌───────────────┐ │ ┌────────────────┐ │
│ │ ▶ Play │ │ │ 1 → 2 → 3 → │ │ │ ● Connected │ │
│ │ ⏸ Pause │ │ │ ↑ │ │ │ Battery: 85% │ │
│ │ ⏹ Stop │ │ │ Step 2 │ │ │ Position: (0,0)│ │
│ └──────────┘ │ └───────────────┘ │ └────────────────┘ │
│ │ │ │
│ ┌──────────┐ │ Progress: 40% │ ┌────────────────┐ │
│ │ 📝 Notes │ │ Time: 00:05:23 │ │ Action Panel │ │
│ │ ⚠ Alert │ │ │ │ │ │
│ └──────────┘ │ │ │ [Say Text] │ │
│ │ │ │ [Move Robot] │ │
│ │ │ │ [Wave] │ │
│ │ │ │ [Custom...] │ │
│ │ │ └────────────────┘ │
└────────────────┴─────────────────────┴──────────────────────┘
Step 1: Accessing the Wizard Interface
Method 1: From Trials List
- Go to Trials in sidebar
- Find your scheduled trial
- Click Open Wizard
Method 2: Direct URL
/trials/{trialId}/wizard
Method 3: Trial Queue
- Go to Wizard Queue
- See all pending trials
- Click Start on any trial
Step 2: Understanding the Layout
Left Panel: Trial Controls
| Control | Function |
|---|---|
| Play/Pause | Start or pause trial |
| Stop | End trial early |
| Notes | Add timestamped observations |
| Alert | Send alert to researchers |
Center Panel: Timeline
- Visual Progress: See step progression
- Current Position: Highlighted current step
- Navigation: Click to jump to step (if allowed)
- Time Display: Elapsed and estimated remaining
Right Panel: Robot Control
Status Section:
- Connection indicator
- Battery level
- Position tracking
- Sensor readings
Action Section:
- Quick action buttons
- Custom action builder
- Action history
Step 3: Controlling the Robot
Quick Actions
Pre-configured robot actions:
| Action | Description |
|---|---|
| Say Text | Make robot speak |
| Wave | Wave gesture |
| Look at Me | Turn head toward participant |
| Look Away | Turn head elsewhere |
| Nod | Confirmation nod |
| Shake Head | Negation shake |
Custom Say Text
- Click Say Text
- Enter text in popup:
"Hello! Nice to meet you." - Select options:
- Speed: Normal / Slow / Fast
- Emotion: Neutral / Happy / Excited
- Click Execute
- Robot speaks the text
Move Robot
- Click Move Robot
- Select movement type:
- Walk Forward/Back
- Turn Left/Right
- Move Head
- Move Arm
- Set parameters
- Execute
Custom Actions
For advanced control:
- Click Custom...
- Select action from plugin
- Configure parameters
- Execute
Step 4: Making Decisions
When the experiment reaches a branching point:
Decision Popup
A popup appears with options:
┌─────────────────────────────────────────────────────────────┐
│ Branch Decision Required │
├─────────────────────────────────────────────────────────────┤
│ │
│ Step: Comprehension Check │
│ Question: "What color was the rock?" │
│ │
│ Participant's response: They said "blue" (incorrect) │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ ○ Correct Response (Red) │ │
│ │ → Robot celebrates │ │
│ │ │ │
│ │ ● Incorrect Response (Other) │ │
│ │ → Robot gently corrects │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ [Cancel] [Confirm Selection] │
└─────────────────────────────────────────────────────────────┘
Decision Guidelines
- Observe participant's actual response
- Consider protocol criteria
- Select appropriate branch
- Confirm selection
After Selection
- Decision is logged with timestamp
- Trial continues on selected path
- Both participant and robot continue
Step 5: Handling Interruptions
Pause Trial
When you need to pause:
- Click Pause button
- Optionally add reason:
- Participant needs break
- Technical issue
- External interruption
- Trial pauses, robot holds position
Resume Trial
- Click Play button
- Trial resumes from pause point
- Pause duration is logged
Stop Trial
For early termination:
- Click Stop button
- Select reason:
- Participant fatigue
- Technical failure
- Protocol deviation
- Participant withdrawal
- Confirm stop
- Partial data is saved
Add Notes
Record observations:
- Click Notes button
- Enter observation:
Participant laughed at the robot's gesture. - Note is timestamped automatically
- Notes appear in event log
Send Alert
Notify researchers:
- Click Alert button
- Select alert type:
- Technical issue
- Safety concern
- Protocol question
- Other
- Add description
- Send alert
Step 6: Monitoring Robot Status
Connection Status
| Status | Icon | Meaning |
|---|---|---|
| Connected | ● Green | Robot responding |
| Connecting | ● Yellow | Attempting connection |
| Disconnected | ● Red | No robot connection |
| Error | ⚠ Orange | Connection error |
Battery Monitor
View battery level:
- Green: > 50%
- Yellow: 20-50%
- Red: < 20%
Sensor Display
Real-time sensor readings:
- Joint positions
- Touch sensors
- Sonar distances
- Camera feed (if available)
Action Queue
See pending/executing actions:
Executing: Say Text "Hello!"
Pending: Move Head (queued)
Step 7: Keyboard Shortcuts
Speed up your workflow:
| Key | Action |
|---|---|
| Space | Play/Pause toggle |
| Escape | Stop trial |
| N | Add note |
| A | Send alert |
| 1-9 | Execute quick action |
| ← → | Navigate timeline |
| ↑ ↓ | Select branch option |
Step 8: Event Logging
All actions are logged automatically:
[14:32:05] Trial started
[14:32:07] Step 1: The Hook
[14:32:08] Action: Say Text "Hello!"
[14:32:11] Action: Move Arm Wave
[14:32:15] Step 2: The Narrative
[14:32:16] Action: Say Text "Once upon a time..."
[14:33:05] Step 3: Comprehension Check
[14:33:06] Action: Say Text "What color was the rock?"
[14:33:28] Wizard Note: "Participant said blue"
[14:33:30] Branch: Incorrect selected
[14:33:31] Step 4b: Correction
[14:33:32] Action: Say Text "Actually, it was red."
[14:34:05] Trial completed
Trial Modes
Observer Mode
For observers (read-only):
- View trial progress
- See robot status
- Cannot execute actions
- Can add notes
Active Wizard Mode
Full control:
- Execute actions
- Make decisions
- Pause/resume
- Add notes/alerts
Training Mode
Practice without real data:
- Simulated robot
- No data saved
- Safe to experiment
Best Practices
Before Trial
- Review experiment protocol
- Test robot connection
- Familiarize with action panel
- Know decision criteria
During Trial
- Stay focused on participant
- Make decisions based on observation
- Document notable events
- Keep action log clean
After Trial
- Review event log
- Add final notes
- Confirm data saved
- Prepare for next trial
Troubleshooting
Robot Not Responding
- Check connection indicator
- Verify network
- Check robot power
- Restart connection
Actions Not Executing
- Check action queue
- Verify parameters
- Check robot state (not in rest mode)
Decision Popup Not Appearing
- Check if step has branches
- Verify step type is "conditional"
- Contact researcher
Next Steps
Mastered the wizard interface?
- Robot Integration - Deep dive into robot control
- Data & Analysis - Review trial data
- Simulation Mode - Practice without a robot
Previous: Running Trials | Next: Robot Integration