KAmod Photo Interrupter Sensor (PL): Difference between revisions
From Kamamilabs.com - Wiki
| (15 intermediate revisions by the same user not shown) | |||
| Line 39: | Line 39: | ||
==== Schemat elektryczny ==== | ==== Schemat elektryczny ==== | ||
<center> | |||
[[File: KAmod_Photo_Interrupter_Sensor_sch.png|600px]] | |||
</center> | |||
<hr> | <hr> | ||
| Line 69: | Line 72: | ||
|} | |} | ||
</center> | </center> | ||
<br> | |||
<hr> | <hr> | ||
| Line 75: | Line 79: | ||
===== Schemat połączeń ===== | ===== Schemat połączeń ===== | ||
{| class="wikitable" style="width: | <center> | ||
{| class="wikitable" style="width: 1000px;" | |||
|- | |||
! style="text-align: center; background-color:#FFCC66;"|'''Moduł czujnika ''' | |||
! style="text-align: center; background-color:#FFCC66;"|'''Platforma (np. Arduino / RPi Pico) ''' | |||
|- | |- | ||
| VCC || 3.3V / 5V | | style="text-align: center;background-color:#EEEEEE"|VCC | ||
| style="text-align: center;background-color:#EEEEEE"|3.3V / 5V | |||
|- | |- | ||
| GND || GND | | style="text-align: center;background-color:#EEEEEE"|GND | ||
| style="text-align: center;background-color:#EEEEEE"|GND | |||
|- | |- | ||
| OUT || Pin cyfrowy (np. D2) | | style="text-align: center;background-color:#EEEEEE"|OUT | ||
| style="text-align: center;background-color:#EEEEEE"|Pin cyfrowy (np. D2) | |||
|} | |} | ||
</center> | |||
<br> | |||
<center> | |||
[[File:KAmod_Photo_Interrupter_Sensor_uno.png|600px]] | |||
</center> | |||
<hr> | |||
===== Kod testowy (Arduino IDE) ===== | |||
Poniższy program konfiguruje pin jako wejście z wewnętrznym podciąganiem i na bieżąco monitoruje stan czujnika, przesyłając komunikaty do Monitora Portu Szeregowego (Serial Monitor). | |||
== | ```mediawiki | ||
<div style="background: #f8f9fa; border: 1px solid #a2a9b1; padding: 10px; border-radius: 4px;"> | |||
<div style="float: right; font-size: 85%; background: #ffffff; border: 1px solid #ced4da; padding: 2px 8px; border-radius: 3px;"> | |||
[[https://wiki.kamamilabs.com/images/1/12/KAmod_Photo_Interrupter_Sensor.zip Pobierz kod]] | |||
</div> | |||
'''Kod źródłowy dla Arduino UNO:''' | |||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
const int | /* Test modułu transoptora szczelinowego */ | ||
const int | |||
const int SENSOR_PIN = 2; // Pin DOUT czujnika podłączony do pinu D2 Arduino | |||
const int LED_PIN = 13; // Wbudowana dioda LED na płytce Arduino UNO | |||
void setup() { | void setup() { | ||
// Konfiguracja pinu czujnika jako wejście z wewnętrznym rezystorem podciągającym. | |||
pinMode( | // Konfiguracja pinu wbudowanej diody LED jako wyjście | ||
pinMode(LED_PIN, OUTPUT); | |||
// Inicjalizacja komunikacji szeregowej z prędkością 9600 bps | |||
Serial.begin(9600); | Serial.begin(9600); | ||
Serial.println("--- Test modułu KAmod Photo Interrupter Sensor uruchomiony ---"); | |||
} | } | ||
void loop() { | void loop() { | ||
int sensorState = digitalRead( | // Odczyt stanu cyfrowego z czujnika | ||
int sensorState = digitalRead(SENSOR_PIN); | |||
if (sensorState == LOW) { | // Logika działania modułu: | ||
// | // LOW (0) -> Wiązka IR nieprzerwana (szczelina czysta). Dioda na module świeci. | ||
digitalWrite( | // HIGH (1) -> Wiązka IR przerwana (wykryto przeszkodę). Dioda na module gaśnie. | ||
Serial.println(" | |||
} else { | if (sensorState == LOW) { | ||
// | // Brak przeszkody | ||
digitalWrite( | digitalWrite(LED_PIN, LOW); // Wyłącz wbudowaną diodę Arduino | ||
Serial.println("Stan: OK (Szczelina czysta)"); | |||
} | |||
else { | |||
// Wykryto obiekt w szczelinie | |||
digitalWrite(LED_PIN, HIGH); // Zapal wbudowaną diodę Arduino (sygnalizacja wykrycia) | |||
Serial.println("Stan: BLOKADA (Wykryto przeszkodę!)"); | |||
} | } | ||
delay( | delay(100); | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</div> | |||
==== | ==== Instrukcja weryfikacji działania ==== | ||
# Podłącz moduł do Arduino zgodnie z tabelą połączeń. | |||
# Otwórz '''Monitor Portu Szeregowego''' w Arduino IDE (Ctrl+Shift+M) i ustaw prędkość na '''9600 baud'''. | |||
# Gdy szczelina jest pusta, w oknie powinieneś widzieć komunikat `Stan: OK (Szczelina czysta)`. | |||
# Wsuń w szczelinę nieprzezroczysty przedmiot (np. kawałek plastiku, karton lub tarczę enkodera). Komunikat powinien natychmiast zmienić się na `Stan: BLOKADA (Wykryto przeszkodę!)`, a wbudowana dioda LED na Arduino (L) powinna się zapalić. | |||
Latest revision as of 12:26, 22 May 2026

Opis
KAmod Photo Interrupter Sensor - Moduł z transoptorem szczelinowym
Moduł KAmod Photo Interrupter Sensor to precyzyjny czujnik optyczny IR przeznaczony do detekcji obecności obiektów, zliczania impulsów oraz budowy enkoderów inkrementalnych. Element pomiarowy działa w paśmie podczerwieni, co skutecznie eliminuje wpływ światła zewnętrznego (widzialnego) na stabilność pracy sensora.
Urządzenie zostało wyposażone w zintegrowany przerzutnik Schmitta, co zapewnia czysty, pozbawiony drgań sygnał cyfrowy na wyjściu. Dodatkowo, na płytce znajduje się dioda LED sygnalizująca stan pracy czujnika – w momencie przerwania wiązki światła dioda zmienia stan, a na wyjściu cyfrowym pojawia się stan niski (GND).
Podstawowe cechy i parametry
- Szerokość szczeliny: 6 mm
- Kompatybilność z systemami 3,3 V (np. Raspberry Pi Pico, STM32) oraz 5 V (np. Arduino).
- Zasilanie: 3,3 - 5V DC
- Złącze kątowe JST XH-2.5 3p
- Otwory montażowe o średnicy 3 mm
- Wymiary: 26,8 × 15 × 18,7 mm
Wyposażenie standardowe
| Kod | Opis |
|---|---|
| KAmod Photo Interrupter Sensor |
|
Schemat elektryczny
Opis wyprowadzeń
| Pin | Nazwa | Typ | Opis |
|---|---|---|---|
| 1 | VCC | Zasilanie | Napięcie zasilania modułu (3,3 V do 5 V) |
| 2 | GND | Zasilanie | Masa układu (GND) |
| 3 | OUT / DO | Wyjście | Sygnał cyfrowy:
|
Przykład podłączenia i kod testowy
Poniższy przykład przedstawia sposób połączenia układu z platformą deweloperską i podstawowy odczyt stanu czujnika.
Schemat połączeń
| Moduł czujnika | Platforma (np. Arduino / RPi Pico) |
|---|---|
| VCC | 3.3V / 5V |
| GND | GND |
| OUT | Pin cyfrowy (np. D2) |
Kod testowy (Arduino IDE)
Poniższy program konfiguruje pin jako wejście z wewnętrznym podciąganiem i na bieżąco monitoruje stan czujnika, przesyłając komunikaty do Monitora Portu Szeregowego (Serial Monitor).
```mediawiki
Kod źródłowy dla Arduino UNO:
/* Test modułu transoptora szczelinowego */
const int SENSOR_PIN = 2; // Pin DOUT czujnika podłączony do pinu D2 Arduino
const int LED_PIN = 13; // Wbudowana dioda LED na płytce Arduino UNO
void setup() {
// Konfiguracja pinu czujnika jako wejście z wewnętrznym rezystorem podciągającym.
// Konfiguracja pinu wbudowanej diody LED jako wyjście
pinMode(LED_PIN, OUTPUT);
// Inicjalizacja komunikacji szeregowej z prędkością 9600 bps
Serial.begin(9600);
Serial.println("--- Test modułu KAmod Photo Interrupter Sensor uruchomiony ---");
}
void loop() {
// Odczyt stanu cyfrowego z czujnika
int sensorState = digitalRead(SENSOR_PIN);
// Logika działania modułu:
// LOW (0) -> Wiązka IR nieprzerwana (szczelina czysta). Dioda na module świeci.
// HIGH (1) -> Wiązka IR przerwana (wykryto przeszkodę). Dioda na module gaśnie.
if (sensorState == LOW) {
// Brak przeszkody
digitalWrite(LED_PIN, LOW); // Wyłącz wbudowaną diodę Arduino
Serial.println("Stan: OK (Szczelina czysta)");
}
else {
// Wykryto obiekt w szczelinie
digitalWrite(LED_PIN, HIGH); // Zapal wbudowaną diodę Arduino (sygnalizacja wykrycia)
Serial.println("Stan: BLOKADA (Wykryto przeszkodę!)");
}
delay(100);
}
Instrukcja weryfikacji działania
- Podłącz moduł do Arduino zgodnie z tabelą połączeń.
- Otwórz Monitor Portu Szeregowego w Arduino IDE (Ctrl+Shift+M) i ustaw prędkość na 9600 baud.
- Gdy szczelina jest pusta, w oknie powinieneś widzieć komunikat `Stan: OK (Szczelina czysta)`.
- Wsuń w szczelinę nieprzezroczysty przedmiot (np. kawałek plastiku, karton lub tarczę enkodera). Komunikat powinien natychmiast zmienić się na `Stan: BLOKADA (Wykryto przeszkodę!)`, a wbudowana dioda LED na Arduino (L) powinna się zapalić.
