Eğim sensörü için Arduino kodu ve video
Bu proje, Arduino kullanarak basit bir eğim sensörünün nasıl oluşturulacağını gösterir. Bu sensör, yönelim değişikliklerini algılamanın önemli olduğu çeşitli uygulamalarda kullanılabilir. İşte bazı fikirler:

- Robotik: Eğim sensörünü robotik bir kola entegre ederek konumunu ve yönelimini algılayın.
- Güvenlik Sistemleri: Bir güvenlik alarmı için temel bir eğim anahtarı olarak kullanın; bir nesne hareket ettirilirse uyarı tetikleyin.
- Endüstriyel İzleme: Makine veya ekipmanın eğimini izleyerek olası arızaları veya dengesizlikleri tespit edin.
- Oyun Kumandaları: Eğim tabanlı girdiler için özel bir oyun kumandasına entegre edin.
Proje, işlevsel bir eğim algılama sistemi oluşturmak için bir eğim sensörü modülü, bir Arduino mikrodenetleyici ve birkaç temel bileşen kullanır. Sensör eğildiğinde düşük sinyal verir; Arduino bunu yorumlayarak bir LED'i ve bir buzzer'ı tetikler (videoda 00:18'de).
Donanım/Bileşenler
Bu proje için gereken donanım şunları içerir: (videoda 00:49'da)
- Arduino Uno (veya uyumlu)
- Eğim Sensörü Modülü
- Buzzer
- LED
- 220Ω Direnç (LED için)
- Jumper Kablolar
Bağlantı Kılavuzu
Bağlantı basittir. Görsel bir kılavuz için videoya bakın. (videoda 02:36'da) Temel bağlantılar şunlardır:
- Eğim Sensörü VCC'den Arduino 5V'a
- Eğim Sensörü GND'den Arduino GND'ye
- Eğim Sensörü DO'dan Arduino pin 2'ye
- LED pozitif bacağından 220Ω direnç üzerinden Arduino pin 8'e
- LED negatif bacağından Arduino GND'ye
- Buzzer pozitif bacağından Arduino pin 8'e
- Buzzer negatif bacağından Arduino GND'ye

Kod Açıklaması
Arduino kodu, eğim sensörünün çıkışını okumak ve LED ile buzzer'ı buna göre kontrol etmek için tasarlanmıştır. (videoda 04:30'da)
#define TILT 2 // eğim sensörü için pin 2
#define LED 8 // LED ve buzzer için pin 8
TILT ve LED sabitleri, eğim sensörüne ve çıkış bileşenlerine bağlı Arduino pinlerini tanımlar. Bu pin numaralarını kendi bağlantınıza göre değiştirebilirsiniz. Temel mantık loop() fonksiyonundadır: (videoda 05:36'da)
int TILT_SENSED = digitalRead(TILT);
if(TILT_SENSED == LOW) {
digitalWrite(LED, HIGH);
Serial.println("Eğim algılandı");
} else {
digitalWrite(LED, LOW);
Serial.println("Normal");
}
Kod, digitalRead() kullanarak eğim sensörünün durumunu okur. Sensör eğikse (LOW), LED ve buzzer etkinleştirilir (HIGH); aksi takdirde devre dışı bırakılır (LOW).
delay(200); fonksiyonu (videoda 07:16'da) sensörün okuma sıklığını kontrol eder. Bu değeri, sensörün ne sıklıkla kontrol edileceğini değiştirmek için ayarlayın.
Canlı Proje/Gösterim
Video, eğim sensörünün işlevselliğini gösterir. (videoda 07:34'te) Cihaz belirlenen yönde eğildiğinde LED yanar ve buzzer ses çıkararak bir eğim algılandığını belirtir. Sensörün hassasiyeti bir potansiyometre kullanılarak ayarlanabilir (videoda 07:50'de), bu da tepkiselliğini ince ayar yapmanıza olanak tanır.
Bölümler
- [00:06] Giriş
- [00:49] Donanım Genel Bakışı
- [01:08] Eğim Sensörü Detayları
- [02:36] Bağlantı Açıklaması
- [04:30] Kod Açıklaması
- [07:34] Canlı Gösterim
- [08:21] Sonuç
++
/*
* 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);
}
İhtiyacın olabileceğini düşünüyor
-
eBay
-
AliExpressAliExpress'ten Top Eğim Sensörü satın alıns.click.aliexpress.com
Kaynaklar ve referanslar
Henüz kaynak yok.
Dosyalar📁
Dosya mevcut değil.
