Actions

KAmod Photo Interrupter Sensor (PL): Difference between revisions

From Kamamilabs.com - Wiki

 
(16 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 74: Line 78:
Poniższy przykład przedstawia sposób połączenia układu z platformą deweloperską i podstawowy odczyt stanu czujnika.
Poniższy przykład przedstawia sposób połączenia układu z platformą deweloperską i podstawowy odczyt stanu czujnika.


=== Schemat połączeń ===
===== Schemat połączeń =====
{| class="wikitable" style="width:40%; text-align:center;"
<center>
|- style="background:#f2f2f2;"
{| class="wikitable" style="width: 1000px;"
! Moduł czujnika !! Platforma (np. Arduino / RPi Pico)
|-
! 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).


==== Kod testowy (Arduino IDE) ====
```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 sensorPin = 2; // Pin podłączony do wyjścia OUT czujnika
/*  Test modułu transoptora szczelinowego  */
const int ledPin = 13;  // Wbudowana dioda LED
 
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() {
   pinMode(sensorPin, INPUT);
   // Konfiguracja pinu czujnika jako wejście z wewnętrznym rezystorem podciągającym.
   pinMode(ledPin, OUTPUT);
  // 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(sensorPin);
  // Odczyt stanu cyfrowego z czujnika
   int sensorState = digitalRead(SENSOR_PIN);


   if (sensorState == LOW) {  
  // Logika działania modułu:
// Wiązka przerwana - wykryto obiekt w szczelinie
  // LOW (0)  -> Wiązka IR nieprzerwana (szczelina czysta). Dioda na module świeci.
     digitalWrite(ledPin, HIGH);
  // HIGH (1) -> Wiązka IR przerwana (wykryto przeszkodę). Dioda na module gaśnie.
     Serial.println("Wiązka przerwana! Wykryto obiekt.");
 
   } else {  
   if (sensorState == LOW) {
// Wiązka nieprzerwana
    // Brak przeszkody
     digitalWrite(ledPin, LOW);
     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(50);
   delay(100);
}
}
</syntaxhighlight>
</syntaxhighlight>
</div>


==== Linki zewnętrzne i materiały ====  
==== Instrukcja weryfikacji działania ====
* [https://example.com Dokumentacja techniczna transoptora (Datasheet)]
# Podłącz moduł do Arduino zgodnie z tabelą połączeń.
* [[Plik:Schemat_Modulu_Transoptora.pdf|Schemat ideowy modułu (PDF)]]
# Otwórz '''Monitor Portu Szeregowego''' w Arduino IDE (Ctrl+Shift+M) i ustaw prędkość na '''9600 baud'''.
* [[Plik:Rysunek_Techniczny_Modulu.pdf|Wymiary gabarytowe i rysunek mechaniczny (PDF)]]
# 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
  • Zmontowany i uruchomiony moduł
  • Przewód męski JST XH 2,54 mm do BLT 2,54 mm, 3P, 200 mm




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:
  • Stan wysoki (H): wiązka podczerwieni nieprzerwana
  • Stan niski (L): obiekt znajduje się w szczelinie (wiązka przerwana)



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

  1. Podłącz moduł do Arduino zgodnie z tabelą połączeń.
  2. Otwórz Monitor Portu Szeregowego w Arduino IDE (Ctrl+Shift+M) i ustaw prędkość na 9600 baud.
  3. Gdy szczelina jest pusta, w oknie powinieneś widzieć komunikat `Stan: OK (Szczelina czysta)`.
  4. 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ć.