Kód Arduina a video pre náklonový senzor
Tento projekt demonštruje, ako zostaviť jednoduchý náklonový senzor pomocou Arduina. Tento senzor možno použiť v rôznych aplikáciách, kde je detekcia zmien orientácie kľúčová. Tu je niekoľko nápadov:

- Robotika: Zabudujte náklonový senzor do robotického ramena na detekciu jeho polohy a orientácie.
- Bezpečnostné systémy: Použite ho ako základný náklonový spínač pre bezpečnostný alarm, ktorý spustí upozornenie, ak sa objekt pohne.
- Priemyselné monitorovanie: Monitorujte náklon strojov alebo zariadení na detekciu potenciálnych porúch alebo nestability.
- Herné ovládače: Integrujte ho do vlastného herného ovládača pre vstupy založené na náklone.
Projekt využíva modul náklonového senzora, mikrokontrolér Arduino a niekoľko základných komponentov na vytvorenie funkčného systému detekcie náklonu. Senzor vydáva nízky signál, keď je naklonený, čo Arduino interpretuje na spustenie LED a bzučiaka (vo videu o 00:18).
Hardvér/Komponenty
Hardvér potrebný pre tento projekt zahŕňa: (vo videu o 00:49)
- Arduino Uno (alebo kompatibilné)
- Modul náklonového senzora
- Bzučiak
- LED
- 220Ω rezistor (pre LED)
- Prepojovacie vodiče
Sprievodca zapojením
Zapojenie je jednoduché. Pre vizuálny návod si pozrite video. (vo videu o 02:36) Kľúčové pripojenia sú:
- VCC náklonového senzora na Arduino 5V
- GND náklonového senzora na Arduino GND
- DO náklonového senzora na pin 2 Arduina
- Pozitívna nožička LED na pin 8 Arduina cez 220Ω rezistor
- Negatívna nožička LED na Arduino GND
- Pozitívna nožička bzučiaka na pin 8 Arduina
- Negatívna nožička bzučiaka na Arduino GND

Vysvetlenie kódu
Kód Arduina je navrhnutý tak, aby čítal výstup náklonového senzora a podľa toho ovládal LED a bzučiak. (vo videu o 04:30)
#define TILT 2 // pin 2 pre náklonový senzor
#define LED 8 // pin 8 pre LED a bzučiak
Konštanty TILT a LED definujú piny Arduina pripojené k náklonovému senzoru a výstupným komponentom. Tieto čísla pinov môžete zmeniť podľa vášho zapojenia. Základná logika je vo funkcii loop(): (vo videu o 05:36)
int TILT_SENSED = digitalRead(TILT);
if(TILT_SENSED == LOW) {
digitalWrite(LED, HIGH);
Serial.println("Tilt detected");
} else {
digitalWrite(LED, LOW);
Serial.println("Normal");
}
Kód číta stav náklonového senzora pomocou digitalRead(). Ak je senzor naklonený (LOW), LED a bzučiak sa aktivujú (HIGH); inak sa deaktivujú (LOW).
Funkcia delay(200); (vo videu o 07:16) riadi frekvenciu čítania senzora. Túto hodnotu upravte, aby ste zmenili, ako často sa senzor kontroluje.
Živý projekt/Demonštrácia
Video demonštruje funkčnosť náklonového senzora. (vo videu o 07:34) Keď je zariadenie naklonené v určenom smere, LED sa rozsvieti a bzučiak zaznie, čo indikuje, že bol detekovaný náklon. Citlivosť senzora možno nastaviť pomocou potenciometra (vo videu o 07:50), čo vám umožní jemne doladiť jeho odozvu.
Kapitoly
- [00:06] Úvod
- [00:49] Prehľad hardvéru
- [01:08] Podrobnosti o náklonovom senzore
- [02:36] Vysvetlenie zapojenia
- [04:30] Vysvetlenie kódu
- [07:34] Živá demonštrácia
- [08:21] Záver
++
/*
* This is the Arduino code for a tilt sensor that detects tilt and
* turns on a buzzer, or you can control a motor, servo, or any other action.
* Watch the video https://youtu.be/46Z-6MVxKnc
*
* Arduino Code for Tilt Sensor
* Written by Ahmad Nejrabi for Robojax.com
* on January 16, 2018 at 21:04 in Ajax, Ontario, Canada
* Permission granted to share this code given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
*
*/
/*
What it does?
This module has 3 pins: VCC (connected to 5V),
GND (connected to GND of Arduino), and
DO (data out), which is connected to pin 2.
From pin 8 of Arduino, when tilt is detected, you can stop a
motor, move a servo, or turn an LED on to indicate tilt.
*/
// Tilt Sensor code for Robojax.com
#define TILT 2 // pin 2 for front-left sensor
#define LED 8 // pin 3 for front-right sensor
void setup() {
Serial.begin(9600);
Serial.println("Robojax Tilt Test");
pinMode(TILT, INPUT);//define Data input pin input pin
pinMode(LED,OUTPUT);// define LED pin as output
}
void loop() {
// Tilt Sensor code for Robojax.com
int TILT_SENSED = digitalRead(TILT);// read TILT sensor
// if tilt is sensed
if( TILT_SENSED ==LOW)
{
digitalWrite(LED,HIGH);// set the LED pin HIGH and buzzer will buzz
Serial.println("Tilt detected");
}else{
digitalWrite(LED,LOW); // Set the LED pin LOW to turn it OFF or buzzer OFF
Serial.println("Normal");
}
delay(200);
}
Veci, ktoré by ste mohli potrebovať
-
eBay
-
AliExpressKúpte si senzor naklonenia gule na AliExpresss.click.aliexpress.com
Zdroje a referencie
Zatiaľ žiadne zdroje.
Súbory📁
Žiadne súbory nie sú k dispozícii.
