RP-03-R
AI

The **RP-03-R** typically refers to a specific series of **Photointerrupters** (also known as Optical Slot Sensors) manufactured by companies like ROHM Semiconductor or generic electronics suppliers. These components are used to detect the presence of an object by interrupting a light beam.
---
## 1. Internal Architecture
The RP-03-R is a transmission-type photointerrupter consisting of two main electronic elements housed in a single molded package:
| Component | Type | Function |
| :--- | :--- | :--- |
| **Emitter** | Infrared LED | Emits a beam of infrared light across the "gap" or "slot". |
| **Detector** | Phototransistor | Receives the IR light and converts it into an electrical signal. |
### Circuit Diagram Representation
In a standard circuit, the parts are connected as follows:
* **Input Side:** The LED requires a current-limiting resistor ($R_{in}$).
* **Output Side:** The Phototransistor acts as a switch, typically requiring a pull-up resistor ($R_L$) to generate a logic high/low signal.
---
## 2. Technical Specifications
While specific datasheets may vary slightly by manufacturer, the general parameters for the RP-03-R series are:
| Parameter | Typical Value | Unit |
| :--- | :--- | :--- |
| **Gap Width** | 3.0 | mm |
| **Forward Current ($I_F$)** | 50 | mA |
| **Collector-Emitter Voltage ($V_{CEO}$)** | 30 | V |
| **Collector Current ($I_C$)** | 20 | mA |
| **Operating Temperature** | -25 to +85 | °C |
---
## 3. Working Principle
The device operates based on the blocking of light:
1. **Logic HIGH (Unhindered):** When the slot is empty, IR light hits the phototransistor. The transistor saturates (turns ON), pulling the output voltage to near Ground (Low).
2. **Logic LOW (Blocked):** When an object enters the slot, the IR beam is blocked. The phototransistor enters "cutoff" (turns OFF), and the output voltage is pulled up to $V_{CC}$ (High) via the pull-up resistor.
---
## 4. Typical Application Code (Arduino)
To use an RP-03-R with a microcontroller, you can treat it as a digital input:
```cpp
const int sensorPin = 2; // Connected to the collector of the phototransistor
int sensorState = 0;
void setup() {
pinMode(sensorPin, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
sensorState = digitalRead(sensorPin);
if (sensorState == HIGH) {
Serial.println("Object Detected (Beam Blocked)");
} else {
Serial.println("Clear (Beam Passing)");
}
delay(100);
}
```
---
## 5. Common Use Cases
* **Optical Encoders:** Measuring motor speed by counting pulses from a slotted disk.
* **Limit Switches:** Detecting the end-of-travel in 3D printers or CNC machines.
* **Paper Sensing:** Detecting paper presence in printers and scanners.
* **Object Counting:** Counting items on a small-scale conveyor belt.
- ⤷What is the difference between a reflective and a transmissive photointerrupter?
- ⤷ How do I calculate the resistor value for the IR LED in this circuit?
- ⤷ Can the RP-03-R be used for precise distance measurement?