Introduction
Robots often need to detect people for safety, interaction, or following. PIR sensors provide a low-cost, low-power solution for human detection in robotics applications.
Applications in Robotics
Human Detection for Safety
When a robot detects a person nearby, it can slow down, stop, or change path to avoid collision.
Follow-Me Robots
A robot equipped with PIR sensors can follow a person by detecting their movement and direction.
Social Robots
Detect when a person approaches to initiate interaction.
Search and Rescue
Detect trapped people by their body heat in low-visibility environments.
Advantages for Robotics
- Low power: Can run continuously on battery.
- Privacy-preserving: No camera images.
- Works in darkness: Unlike cameras, no light needed.
- Simple interface: Easy to integrate.
Limitations
- Only detects moving warm objects (not stationary people).
- Limited range (5-10m typical).
- Cannot distinguish between different people.
- No distance information (just detection).
Sensor Placement on Robot
- Front-facing: Detect people in front of robot.
- Omnidirectional: Multiple sensors around robot for 360° coverage.
- Tilted upward: Detect standing people at close range.
- Curtain lens: Create a safety zone around robot.
Multi-Sensor Direction Detection
With two sensors (left and right), a robot can determine the approximate direction of a person:
- Left sensor triggered first → person moving right relative to robot.
- Right sensor triggered first → person moving left.
Combining with Other Sensors
PIR works well with:
- Ultrasonic: For distance measurement (confirm PIR detection).
- LiDAR: For obstacle avoidance (PIR triggers attention).
- Camera: For identification (PIR wakes camera).
Case Study: Museum Guide Robot
A museum guide robot used four PIR sensors (front, left, right, rear) to detect visitors. When a person approached, the robot would stop and offer information. The system worked reliably for 2 years on a single battery charge (using low-power PIR sensors).
Code Example: Robot Following
int leftPIR = 2;
int rightPIR = 3;
int motorLeft = 5;
int motorRight = 6;
void loop() {
if (digitalRead(leftPIR) == HIGH && digitalRead(rightPIR) == HIGH) {
// Person in front - move forward
forward();
} else if (digitalRead(leftPIR) == HIGH) {
// Person on left - turn left
turnLeft();
} else if (digitalRead(rightPIR) == HIGH) {
// Person on right - turn right
turnRight();
} else {
stop();
}
}
Conclusion
PIR sensors are a valuable addition to a robot’s sensor suite for human detection. They are low-cost, low-power, and privacy-preserving, making them ideal for human-robot interaction applications.
