Operácie

Parkovací senzor so stavebnicou Sonic: Rozdiel medzi revíziami

Zo stránky SensorWiki

Balogh (diskusia | príspevky)
Vytvorená stránka „= Parkovací senzor s Arduino Nano - Konverzácia = == Úvod do projektu == '''Študent:''' Ahoj, dnes tu mám jednoduchý projekt s mikropočítačom Arduino Nano. Chceli by sme so študentmi strednej školy vytvoriť parkovací senzor. Na doske už máme zapojený ultrazvukový senzor HC-SR04 so signálom Trig1 na D6 a Echo1 na D7. Okrem toho je na doske bzučiak (pasívny, treba do neho poslať frekvenciu) na D16 (A2) a tri LED diody: zelena LED3 na D21 (A7),…“
 
Balogh (diskusia | príspevky)
dBez shrnutí editace
 
Riadok 1: Riadok 1:
= Parkovací senzor s Arduino Nano - Konverzácia =
== Úvod do projektu ==
== Úvod do projektu ==


'''Študent:''' Ahoj, dnes tu mám jednoduchý projekt s mikropočítačom Arduino Nano. Chceli by sme so študentmi strednej školy vytvoriť parkovací senzor. Na doske máme zapojený ultrazvukový senzor HC-SR04 so signálom Trig1 na D6 a Echo1 na D7. Okrem toho je na doske bzučiak (pasívny, treba do neho poslať frekvenciu) na D16 (A2) a tri LED diody: zelena LED3 na D21 (A7), žltá LED2 na D20 (A6) a červená LED1 na D19 (A5). Začať by sme mohli jednoduchou šablónou pre Arduino jazyk, v ktorom by boli zadefinované všetky pripojené obvody a v inicializačnej časti by boli správne nakonfigurované. Zatiaľ netreba žiaden aktívny kód.
Toto je jednoduchý projekt s mikropočítačom Arduino Nano, ktorý má fungovať ako parkovací senzor. Na doske máme zapojený ultrazvukový senzor HC-SR04 so signálom Trig1 na D6 a Echo1 na D7. Okrem toho je na doske bzučiak (pasívny, treba do neho poslať frekvenciu) na D16 (A2) a tri LED diody: zelena LED3 na D21 (A7), žltá LED2 na D20 (A6) a červená LED1 na D19 (A5). Začať by sme mohli jednoduchou šablónou pre Arduino jazyk, v ktorom by boli zadefinované všetky pripojené obvody a v inicializačnej časti by boli správne nakonfigurované. Zatiaľ netreba žiaden aktívny kód.


'''Claude:''' Pripravil som základnú šablónu s definíciami všetkých komponentov a ich korektnou inicializáciou:


<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
Riadok 56: Riadok 53:
}
}


void loop() {
void loop()  
   // Sem pride aktivny kod
{
 
   // Sem pride vas vlastny kod
}
}
</syntaxhighlight>
</syntaxhighlight>
Riadok 67: Riadok 64:
* Správnu konfiguráciu vstupov/výstupov
* Správnu konfiguráciu vstupov/výstupov
* Počiatočné vypnutie všetkých komponentov
* Počiatočné vypnutie všetkých komponentov
----


== Test LED diód ==
== Test LED diód ==


'''Študent:''' Super! Teraz budeme so študentmi postupne oživovať jednotlivé časti, aby sme si overili, či na dosku pripojili súčiastky správne. Čim by sme mohli začať? Asi diódami?
Teraz budeme postupne oživovať jednotlivé časti, aby sme si overili, či na dosku pripojili súčiastky správne. Najprv overíme, či sú LED zapojené správne a fungujú.


'''Claude:''' Výborne! Áno, LED diódy sú ideálny začiatok - sú najjednoduchšie a študenti hneď vidia výsledok.
Začneme s jednou LED diódou, napríklad so zelenou.
 
Navrhujem postupné testovanie v tomto poradí:
 
=== 1. Test LED diód (odporúčam začať týmto) ===
Najprv overíme, či sú LED zapojené správne a fungujú. Môžeme ich rozblikať postupne.
 
=== 2. Test bzučiaka ===
Potom otestujeme bzučiak rôznymi frekvenciami.
 
=== 3. Test ultrazvukového senzora ===
Nakoniec overíme meranie vzdialenosti.
 
'''Študent:''' Začnime len jednou diódou a potom pridáme ďalšie dve.
 
'''Claude:''' Výborne! Začneme s jednou LED diódou. Navrhujem začať so zelenou, je to najmenej "alarmujúca" farba.


<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
void loop() {
void loop()  
{
   // Test zelenej LED
   // Test zelenej LED
   digitalWrite(LED_GREEN, HIGH);  // Zapni zelenú LED
   digitalWrite(LED_GREEN, HIGH);  // Zapni zelenú LED
Riadok 103: Riadok 84:
Tento kód spôsobí, že zelená LED bude blikať s frekvenciou 1 Hz (zapnutá 0,5 s, vypnutá 0,5 s).
Tento kód spôsobí, že zelená LED bude blikať s frekvenciou 1 Hz (zapnutá 0,5 s, vypnutá 0,5 s).


'''Študent:''' Funguje, poďme na ďalšie dve.
Teraz pridáme žltú a červenú LED:
 
'''Claude:''' Skvelé! Teraz pridáme žltú a červenú LED:


<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
void loop() {
void loop()  
{
   // Test všetkých troch LED - postupné rozsvietenie
   // Test všetkých troch LED - postupné rozsvietenie
   digitalWrite(LED_GREEN, HIGH);  // Zapni zelenú LED
   digitalWrite(LED_GREEN, HIGH);  // Zapni zelenú LED
Riadok 127: Riadok 107:
</syntaxhighlight>
</syntaxhighlight>


Tento vzor študentom ukáže:
* Postupné rozsvecovanie LED (zelená → žltá → červená)
* Simuluje to aj logiku parkovacieho senzora (čím bližšie, tým viac LED svieti)
* Kontrolujú sa všetky tri LED naraz
----


== Test bzučiaka ==
== Test bzučiaka ==


'''Študent:''' Áno. Teraz skúsme bzučiak.
Teraz otestujeme pasívny bzučiak. Pre pasívny bzučiak musíme generovať frekvenciu pomocou funkcie <code>tone()</code>.
 
Tento program otestuje tri rozličné tóny. Z kódu by malo byť zrejmé, ako to funguje a ľahko si ho upravíte podľa svojich požiadaviek.
'''Claude:''' Výborne! Teraz otestujeme pasívny bzučiak. Pre pasívny bzučiak musíme generovať frekvenciu pomocou funkcie <code>tone()</code>.


<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
void loop() {
void loop()  
{
   // Test bzučiaka - tri rôzne tóny
   // Test bzučiaka - tri rôzne tóny
    
    
Riadok 163: Riadok 137:
* Potom nasleduje 1-sekundová pauza
* Potom nasleduje 1-sekundová pauza


----


== Test ultrazvukového senzora ==
== Test ultrazvukového senzora ==


'''Študent:''' Super. A teraz teda ten ultrazvukový senzor. Ale asi nie hneď ako parkovací senzor, skúsme len vyskúšať jeho funkciu, pokojne aj s výstupom na terminál.
Napokon otestujeme ten ultrazvukový senzor. Vytvoríme funkciu na meranie vzdialenosti a budeme výsledky vypisovať do sériového monitora.
 
'''Claude:''' Výborne! Vytvoríme funkciu na meranie vzdialenosti a budeme výsledky vypisovať do sériového monitora.


<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
void loop() {
void loop()  
{
   // Test ultrazvukového senzora
   // Test ultrazvukového senzora
   float vzdialenost = merajVzdialenost();
   float vzdialenost = merajVzdialenost();
Riadok 183: Riadok 155:
   delay(500);  // Meranie každých 500 ms
   delay(500);  // Meranie každých 500 ms
}
}


// Funkcia na meranie vzdialenosti pomocou HC-SR04
// Funkcia na meranie vzdialenosti pomocou HC-SR04
float merajVzdialenost() {
 
float merajVzdialenost()  
{
   // Vyčisti trigger pin
   // Vyčisti trigger pin
   digitalWrite(TRIG_PIN, LOW);
   digitalWrite(TRIG_PIN, LOW);
Riadok 213: Riadok 188:
* Výsledok sa vypíše do sériového monitora každých 0,5 sekundy
* Výsledok sa vypíše do sériového monitora každých 0,5 sekundy


'''Pre študentov:''' Otvorte sériový monitor (Tools → Serial Monitor alebo Ctrl+Shift+M) a nastavte baud rate na 9600.
Otvorte sériový monitor (Tools → Serial Monitor alebo Ctrl+Shift+M) a nastavte baud rate na 9600.
Vyskúšajte správnosť funkcie pre rozličné vzdialenosti a overte, či je meranie spoľahlivé.


----


== Kompletný parkovací senzor ==
== Kompletný parkovací senzor ==


'''Študent:''' Perfektné! No a teraz teda skúsme kompletný kód pre parkovací senzor, rozhodovacie úrovne pre LED diódy by mohli byť zadefinované v deklaračnej časti kódu aby sa dali potom ľahko pomeniť. Tu už nepredpokladáme trvalé pripojenie k USB, takže bez výpisov. Alebo ak chceme aj výpisy, tak ich zapnime/vypnime cez #define DEBUG 1
No a na záver skúsme kompletný kód pre parkovací senzor, rozhodovacie úrovne pre LED diódy by mohli  
byť zadefinované v deklaračnej časti kódu aby sa dali potom ľahko pomeniť. Tu už nepredpokladáme trvalé  
pripojenie k USB, takže bez výpisov. Alebo ak chceme aj výpisy, tak ich zapnime/vypnime cez #define DEBUG 1


'''Claude:''' Výborne! Vytvorím kompletný kód parkovacieho senzora s konfigurovateľnými prahovými hodnotami a voliteľným debug režimom:


<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
Riadok 378: Riadok 354:
Študenti môžu ľahko zmeniť prahové hodnoty v hornej časti kódu podľa potreby alebo experimentovať s rôznymi frekvenciami bzučiaka.
Študenti môžu ľahko zmeniť prahové hodnoty v hornej časti kódu podľa potreby alebo experimentovať s rôznymi frekvenciami bzučiaka.


----


== Záver ==
== Záver ==


Projekt bol úspešne vytvorený postupným testovaním jednotlivých komponentov a nakoniec integrovaný do funkčného parkovacieho senzora s konfigurovateľnými parametrami a voliteľným debug režimom.
Projekt bol úspešne vytvorený postupným testovaním jednotlivých komponentov a nakoniec integrovaný do funkčného parkovacieho senzora s konfigurovateľnými parametrami a voliteľným debug režimom.
Tento text a ukážkové programy pomáhal vytvoriť Claude.AI


[[Kategória:Arduino]]
[[Kategória:Arduino]]
[[Kategória:Elektronika]]
[[Kategória:Elektronika]]
[[Kategória:Vzdelávacie projekty]]
[[Kategória:Vzdelávacie projekty]]

Aktuálna revízia z 18:23, 29. január 2026

Úvod do projektu

Toto je jednoduchý projekt s mikropočítačom Arduino Nano, ktorý má fungovať ako parkovací senzor. Na doske máme zapojený ultrazvukový senzor HC-SR04 so signálom Trig1 na D6 a Echo1 na D7. Okrem toho je na doske bzučiak (pasívny, treba do neho poslať frekvenciu) na D16 (A2) a tri LED diody: zelena LED3 na D21 (A7), žltá LED2 na D20 (A6) a červená LED1 na D19 (A5). Začať by sme mohli jednoduchou šablónou pre Arduino jazyk, v ktorom by boli zadefinované všetky pripojené obvody a v inicializačnej časti by boli správne nakonfigurované. Zatiaľ netreba žiaden aktívny kód.


/*
 * Parkovací senzor pre Arduino Nano
 * Komponenty:
 * - Ultrazvukový senzor HC-SR04 (Trig1: D6, Echo1: D7)
 * - Pasívny bzučiak (D16/A2)
 * - Zelená LED (D21/A7)
 * - Žltá LED (D20/A6)
 * - Červená LED (D19/A5)
 */

// Definície pinov pre ultrazvukový senzor HC-SR04
#define TRIG_PIN 6    // D6 - Trigger pin
#define ECHO_PIN 7    // D7 - Echo pin

// Definície pinov pre bzučiak
#define BUZZER_PIN 16 // D16 (A2) - Pasívny bzučiak

// Definície pinov pre LED diody
#define LED_RED 19    // D19 (A5) - Červená LED
#define LED_YELLOW 20 // D20 (A6) - Žltá LED
#define LED_GREEN 21  // D21 (A7) - Zelená LED

void setup() {
  // Inicializácia sériového portu pre ladenie
  Serial.begin(9600);
  
  // Konfigurácia pinov ultrazvukového senzora
  pinMode(TRIG_PIN, OUTPUT);
  pinMode(ECHO_PIN, INPUT);
  
  // Konfigurácia pinu bzučiaka
  pinMode(BUZZER_PIN, OUTPUT);
  
  // Konfigurácia pinov LED diód
  pinMode(LED_RED, OUTPUT);
  pinMode(LED_YELLOW, OUTPUT);
  pinMode(LED_GREEN, OUTPUT);
  
  // Úvodné vypnutie všetkých výstupov
  digitalWrite(TRIG_PIN, LOW);
  digitalWrite(BUZZER_PIN, LOW);
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_GREEN, LOW);
  
  Serial.println("Parkovaci senzor inicializovany");
}

void loop() 
{
  // Sem pride vas vlastny kod  
}

Šablóna obsahuje:

  • Prehľadné definície všetkých pinov s komentármi
  • Inicializáciu sériového portu (užitočné pre testovanie)
  • Správnu konfiguráciu vstupov/výstupov
  • Počiatočné vypnutie všetkých komponentov

Test LED diód

Teraz budeme postupne oživovať jednotlivé časti, aby sme si overili, či na dosku pripojili súčiastky správne. Najprv overíme, či sú LED zapojené správne a fungujú.

Začneme s jednou LED diódou, napríklad so zelenou.

void loop() 
{
  // Test zelenej LED
  digitalWrite(LED_GREEN, HIGH);  // Zapni zelenú LED
  delay(500);                     // Čakaj 500 ms
  digitalWrite(LED_GREEN, LOW);   // Vypni zelenú LED
  delay(500);                     // Čakaj 500 ms
}

Tento kód spôsobí, že zelená LED bude blikať s frekvenciou 1 Hz (zapnutá 0,5 s, vypnutá 0,5 s).

Teraz pridáme žltú a červenú LED:

void loop() 
{
  // Test všetkých troch LED - postupné rozsvietenie
  digitalWrite(LED_GREEN, HIGH);   // Zapni zelenú LED
  delay(500);                      // Čakaj 500 ms
  
  digitalWrite(LED_YELLOW, HIGH);  // Zapni žltú LED
  delay(500);                      // Čakaj 500 ms
  
  digitalWrite(LED_RED, HIGH);     // Zapni červenú LED
  delay(500);                      // Čakaj 500 ms
  
  // Vypni všetky LED naraz
  digitalWrite(LED_GREEN, LOW);
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_RED, LOW);
  delay(500);                      // Čakaj pred ďalším cyklom
}


Test bzučiaka

Teraz otestujeme pasívny bzučiak. Pre pasívny bzučiak musíme generovať frekvenciu pomocou funkcie tone(). Tento program otestuje tri rozličné tóny. Z kódu by malo byť zrejmé, ako to funguje a ľahko si ho upravíte podľa svojich požiadaviek.

void loop() 
{
  // Test bzučiaka - tri rôzne tóny
  
  tone(BUZZER_PIN, 1000);  // Nízky tón 1000 Hz
  delay(500);
  
  tone(BUZZER_PIN, 2000);  // Stredný tón 2000 Hz
  delay(500);
  
  tone(BUZZER_PIN, 3000);  // Vysoký tón 3000 Hz
  delay(500);
  
  noTone(BUZZER_PIN);      // Vypni bzučiak
  delay(1000);             // Pauza pred ďalším cyklom
}

Tento test:

  • Prehráva tri rôzne frekvencie (1000 Hz, 2000 Hz, 3000 Hz)
  • Každý tón trvá 0,5 sekundy
  • Potom nasleduje 1-sekundová pauza


Test ultrazvukového senzora

Napokon otestujeme ten ultrazvukový senzor. Vytvoríme funkciu na meranie vzdialenosti a budeme výsledky vypisovať do sériového monitora.

void loop() 
{
  // Test ultrazvukového senzora
  float vzdialenost = merajVzdialenost();
  
  // Výpis do sériového monitora
  Serial.print("Vzdialenost: ");
  Serial.print(vzdialenost);
  Serial.println(" cm");
  
  delay(500);  // Meranie každých 500 ms
}


// Funkcia na meranie vzdialenosti pomocou HC-SR04

float merajVzdialenost() 
{
  // Vyčisti trigger pin
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  
  // Pošli 10us impulz na trigger
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);
  
  // Zmeraj dĺžku echo impulzu
  long trvanie = pulseIn(ECHO_PIN, HIGH);
  
  // Vypočítaj vzdialenosť v cm
  // Vzorec: vzdialenost = (trvanie * rychlost zvuku) / 2
  // Rychlosť zvuku je 343 m/s = 0.0343 cm/μs
  float vzdialenost = (trvanie * 0.0343) / 2;
  
  return vzdialenost;
}

Čo kód robí:

  • Funkcia merajVzdialenost() aktivuje ultrazvukový senzor
  • Meri čas, za ktorý sa zvuková vlna vráti späť
  • Prepočíta čas na vzdialenosť v centimetroch
  • Výsledok sa vypíše do sériového monitora každých 0,5 sekundy

Otvorte sériový monitor (Tools → Serial Monitor alebo Ctrl+Shift+M) a nastavte baud rate na 9600. Vyskúšajte správnosť funkcie pre rozličné vzdialenosti a overte, či je meranie spoľahlivé.


Kompletný parkovací senzor

No a na záver skúsme kompletný kód pre parkovací senzor, rozhodovacie úrovne pre LED diódy by mohli byť zadefinované v deklaračnej časti kódu aby sa dali potom ľahko pomeniť. Tu už nepredpokladáme trvalé pripojenie k USB, takže bez výpisov. Alebo ak chceme aj výpisy, tak ich zapnime/vypnime cez #define DEBUG 1


/*
 * Parkovací senzor pre Arduino Nano
 * Komponenty:
 * - Ultrazvukový senzor HC-SR04 (Trig1: D6, Echo1: D7)
 * - Pasívny bzučiak (D16/A2)
 * - Zelená LED (D21/A7)
 * - Žltá LED (D20/A6)
 * - Červená LED (D19/A5)
 */

// Debug režim - nastaviť na 1 pre výpisy do sériového monitora
#define DEBUG 0

// Definície pinov pre ultrazvukový senzor HC-SR04
#define TRIG_PIN 6    // D6 - Trigger pin
#define ECHO_PIN 7    // D7 - Echo pin

// Definície pinov pre bzučiak
#define BUZZER_PIN 16 // D16 (A2) - Pasívny bzučiak

// Definície pinov pre LED diody
#define LED_RED 19    // D19 (A5) - Červená LED
#define LED_YELLOW 20 // D20 (A6) - Žltá LED
#define LED_GREEN 21  // D21 (A7) - Zelená LED

// Prahové vzdialenosti v centimetroch
#define VZDIALENOST_ZELENA 100   // Zelená LED - bezpečná vzdialenosť
#define VZDIALENOST_ZLTA 50      // Žltá LED - blížime sa
#define VZDIALENOST_CERVENA 20   // Červená LED - nebezpečne blízko

// Frekvencia bzučiaka v Hz
#define FREKVENCIA_BZUCIAK 2000

void setup() {
  #if DEBUG
    // Inicializácia sériového portu pre ladenie
    Serial.begin(9600);
  #endif
  
  // Konfigurácia pinov ultrazvukového senzora
  pinMode(TRIG_PIN, OUTPUT);
  pinMode(ECHO_PIN, INPUT);
  
  // Konfigurácia pinu bzučiaka
  pinMode(BUZZER_PIN, OUTPUT);
  
  // Konfigurácia pinov LED diód
  pinMode(LED_RED, OUTPUT);
  pinMode(LED_YELLOW, OUTPUT);
  pinMode(LED_GREEN, OUTPUT);
  
  // Úvodné vypnutie všetkých výstupov
  digitalWrite(TRIG_PIN, LOW);
  digitalWrite(BUZZER_PIN, LOW);
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_GREEN, LOW);
  
  #if DEBUG
    Serial.println("Parkovaci senzor inicializovany");
    Serial.println("Prahove hodnoty:");
    Serial.print("Zelena: > ");
    Serial.print(VZDIALENOST_ZELENA);
    Serial.println(" cm");
    Serial.print("Zlta: ");
    Serial.print(VZDIALENOST_ZLTA);
    Serial.print(" - ");
    Serial.print(VZDIALENOST_ZELENA);
    Serial.println(" cm");
    Serial.print("Cervena: < ");
    Serial.print(VZDIALENOST_CERVENA);
    Serial.println(" cm");
  #endif
}

void loop() {
  // Zmeraj vzdialenosť
  float vzdialenost = merajVzdialenost();
  
  #if DEBUG
    Serial.print("Vzdialenost: ");
    Serial.print(vzdialenost);
    Serial.println(" cm");
  #endif
  
  // Vypni všetky LED a bzučiak
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_GREEN, LOW);
  noTone(BUZZER_PIN);
  
  // Rozhodovacia logika podľa vzdialenosti
  if (vzdialenost > VZDIALENOST_ZELENA) {
    // Bezpečná vzdialenosť - zelená LED
    digitalWrite(LED_GREEN, HIGH);
    
  } else if (vzdialenost > VZDIALENOST_ZLTA) {
    // Stredná vzdialenosť - žltá LED
    digitalWrite(LED_YELLOW, HIGH);
    
  } else if (vzdialenost > VZDIALENOST_CERVENA) {
    // Blízko - červená LED + prerušované pípanie
    digitalWrite(LED_RED, HIGH);
    tone(BUZZER_PIN, FREKVENCIA_BZUCIAK);
    delay(200);
    noTone(BUZZER_PIN);
    delay(200);
    
  } else {
    // Nebezpečne blízko - červená LED + neprerušované pípanie
    digitalWrite(LED_RED, HIGH);
    tone(BUZZER_PIN, FREKVENCIA_BZUCIAK);
  }
  
  delay(100);  // Krátka pauza medzi meraniami
}

// Funkcia na meranie vzdialenosti pomocou HC-SR04
float merajVzdialenost() {
  // Vyčisti trigger pin
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  
  // Pošli 10us impulz na trigger
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);
  
  // Zmeraj dĺžku echo impulzu
  long trvanie = pulseIn(ECHO_PIN, HIGH);
  
  // Vypočítaj vzdialenosť v cm
  // Vzorec: vzdialenost = (trvanie * rychlost zvuku) / 2
  // Rychlosť zvuku je 343 m/s = 0.0343 cm/μs
  float vzdialenost = (trvanie * 0.0343) / 2;
  
  return vzdialenost;
}

Ako kód funguje:

  1. Zelená LED (> 100 cm): Bezpečná vzdialenosť, všetko v poriadku
  2. Žltá LED (50-100 cm): Blížime sa, treba byť opatrný
  3. Červená LED + prerušované pípanie (20-50 cm): Blízko prekážky
  4. Červená LED + neprerušované pípanie (< 20 cm): Nebezpečne blízko!

Nastavenie debug režimu:

  • #define DEBUG 0 - bez výpisov (pre samostatnú prevádzku)
  • #define DEBUG 1 - s výpismi do sériového monitora (pre testovanie)

Prispôsobenie:

Študenti môžu ľahko zmeniť prahové hodnoty v hornej časti kódu podľa potreby alebo experimentovať s rôznymi frekvenciami bzučiaka.


Záver

Projekt bol úspešne vytvorený postupným testovaním jednotlivých komponentov a nakoniec integrovaný do funkčného parkovacieho senzora s konfigurovateľnými parametrami a voliteľným debug režimom. Tento text a ukážkové programy pomáhal vytvoriť Claude.AI