Kod Arduino i wideo dla czujnika przechyłu
Ten projekt pokazuje, jak zbudować prosty czujnik przechyłu z użyciem Arduino. Czujnik ten może być używany w różnych zastosowaniach, gdzie wykrywanie zmian orientacji jest kluczowe. Oto kilka pomysłów:

- Robotyka: Wbuduj czujnik przechyłu w ramię robota, aby wykrywać jego pozycję i orientację.
- Systemy bezpieczeństwa: Użyj go jako prostego wyłącznika przechyłowego w alarmie, wyzwalającego alert, jeśli obiekt zostanie przesunięty.
- Monitoring przemysłowy: Monitoruj przechył maszyn lub urządzeń, aby wykrywać potencjalne awarie lub niestabilność.
- Kontrolery gier: Zintegruj go z niestandardowym kontrolerem gier do sterowania opartego na przechyle.
Projekt wykorzystuje moduł czujnika przechyłu, mikrokontroler Arduino i kilka podstawowych komponentów, aby stworzyć funkcjonalny system wykrywania przechyłu. Czujnik wysyła sygnał niski, gdy jest przechylony, co Arduino interpretuje, aby włączyć diodę LED i brzęczyk (na wideo w 00:18).
Sprzęt/Komponenty
Sprzęt wymagany do tego projektu obejmuje: (na wideo w 00:49)
- Arduino Uno (lub kompatybilne)
- Moduł czujnika przechyłu
- Brzęczyk
- Dioda LED
- Rezystor 220Ω (dla diody LED)
- Przewody połączeniowe
Instrukcja podłączenia
Podłączenie jest proste. Zobacz wideo, aby uzyskać wizualny przewodnik. (na wideo w 02:36) Kluczowe połączenia to:
- VCC czujnika przechyłu do 5V Arduino
- GND czujnika przechyłu do GND Arduino
- DO czujnika przechyłu do pinu 2 Arduino
- Dodatnia nóżka diody LED do pinu 8 Arduino przez rezystor 220Ω
- Ujemna nóżka diody LED do GND Arduino
- Dodatnia nóżka brzęczyka do pinu 8 Arduino
- Ujemna nóżka brzęczyka do GND Arduino

Wyjaśnienie kodu
Kod Arduino jest zaprojektowany tak, aby odczytywać wyjście czujnika przechyłu i odpowiednio sterować diodą LED oraz brzęczykiem. (na wideo w 04:30)
#define TILT 2 // pin 2 dla czujnika przechyłu
#define LED 8 // pin 8 dla diody LED i brzęczyka
Stałe TILT i LED definiują piny Arduino podłączone odpowiednio do czujnika przechyłu i elementów wyjściowych. Możesz zmienić te numery pinów, aby dopasować je do swojego podłączenia. Główna logika znajduje się w funkcji loop(): (na wideo w 05:36)
int TILT_SENSED = digitalRead(TILT);
if(TILT_SENSED == LOW) {
digitalWrite(LED, HIGH);
Serial.println("Wykryto przechył");
} else {
digitalWrite(LED, LOW);
Serial.println("Normalny");
}
Kod odczytuje stan czujnika przechyłu za pomocą digitalRead(). Jeśli czujnik jest przechylony (LOW), dioda LED i brzęczyk są aktywowane (HIGH); w przeciwnym razie są dezaktywowane (LOW).
Funkcja delay(200); (na wideo w 07:16) kontroluje częstotliwość odczytu czujnika. Dostosuj tę wartość, aby zmienić, jak często czujnik jest sprawdzany.
Projekt na żywo/Demonstracja
Wideo demonstruje działanie czujnika przechyłu. (na wideo w 07:34) Gdy urządzenie jest przechylone w wyznaczonym kierunku, dioda LED świeci, a brzęczyk wydaje dźwięk, wskazując, że wykryto przechył. Czułość czujnika można regulować za pomocą potencjometru (na wideo w 07:50), co pozwala dostroić jego reakcję.
Rozdziały
- [00:06] Wprowadzenie
- [00:49] Przegląd sprzętu
- [01:08] Szczegóły czujnika przechyłu
- [02:36] Wyjaśnienie podłączenia
- [04:30] Wyjaśnienie kodu
- [07:34] Demonstracja na żywo
- [08:21] Podsumowanie
++
/*
* 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);
}
Rzeczy, których możesz potrzebować
-
Allegro
-
AliExpressKup czujnik nachylenia piłki z AliExpresss.click.aliexpress.com
Zasoby i odniesienia
Brak zasobów.
Pliki📁
Brak dostępnych plików.
