İçindekiler:

E-Switch: 5 Adım
E-Switch: 5 Adım

Video: E-Switch: 5 Adım

Video: E-Switch: 5 Adım
Video: Video #5 - E-Switch Basic Functions (cont.) 2024, Kasım
Anonim
E-Anahtarı
E-Anahtarı

Bu talimat, Güney Florida Üniversitesi'ndeki (www.makecourse.com) Makecourse'un proje gereksinimini yerine getirmek için oluşturulmuştur.

e-Switch, bir ışık anahtarına bağlı bir servo motoru kontrol etmek için bir Arduino Uno, bir IR alıcı ve bir HCSR04 yakınlık sensörü kullanan bir cihazdır. Bu ürün, enerji tasarrufu sağlamak ve uzaktan kontrol özellikleriyle erişim kolaylığı sağlamak için oluşturulmuştur. Ürün, kuruluma hazır olması, yalnızca mevcut bir ışık anahtarının üzerine vidalanması ve başka bir montaj veya kablolama gerektirmemesi bakımından mevcut olanlardan farklıdır. Gerekli malzemeler aşağıda listelenmiştir:

  • Arduino Uno'su
  • HCSR04 Yakınlık Sensörü
  • IR Alıcı + Uzaktan
  • SG90 Servo Motor
  • 3D yazıcı + PLA filamenti
  • teller
  • Küçük Ekmek Tahtası
  • cırt cırt
  • Elektrik bandı

Adım 1: Kablolama

kablolama
kablolama

Bu devre için 3 harici bileşen, servo, yakınlık sensörü ve IR alıcı vardır. Tüm bileşenler, aynı topraklama ve VCC beslemesi kullanılarak paralel olarak bağlanmalıdır.

IR alıcısı: IR alıcısının 3 pini vardır, soldaki dijital pin 2'ye bağlı olan sinyal pinidir. Orta pin topraklama pinidir ve son pin +5V gerektiren voltaj pinidir

HCSR04 Yakınlık sensörü: Yakınlık sensörünün 4 pini vardır, soldan sağa bunlar VCC (+5V), Trig (pin 4), Echo (pin 3) ve topraktır

SG90 Servo Motor: Servo 3 bağlantıya sahiptir, kırmızı VCC (+5V), kahverengi toprak ve sarı sinyaldir (pin 5)

2. Adım: Kodlayın

kod
kod
kod
kod

*Kod bir.rar dosyası olarak yüklenmiştir, sıkıştırılmış olmalıdır*

Arduino kodu, HCSR04 ve IR Alıcısını giriş olarak kullanırken, servo motor tek çıkıştır. Servo motorların mevcut konumunu kaydetmek için "durum" olarak adlandırılan bir değişken kullanılır. 0, servonun kapalı konumda olmasına karşılık gelir, 1 açık konumun göstergesidir.

Döngüde, ilk adım son kaydedilen yakınlık sensörü mesafesini (lastValue) güncellemek, sonraki mevcut mesafeyi (mesafeyi) kaydetmek, ardından bu değerler karşılaştırılır. LastValue mevcut mesafeden büyükse, o zaman bir el yaklaşıyor ve mevcut durumun 1 olduğu göz önüne alındığında servo 90 derece aşağı dönecek ve ışıkları kapatacaktır. Aksi takdirde, lastValue mesafeden küçükse, bir el Geri çekilir ve servo, mevcut durumun 0 olduğu göz önüne alındığında, ışıkları açarak 90 derece yukarı döner. Bu koşullardan hiçbiri karşılanmazsa, IR alıcısı sinyalleri kontrol eder ve "sonuçlar" üretir. Sonuca bağlı olarak, IR alıcısı açılır veya kapanır. 0xFFE01F kodu, IR uzaktan kumanda artı düğmesine karşılık gelir ve alınırsa, mevcut durumun 0 olması koşuluyla ışığı açmak için servoyu yukarı döndürür. 0xFFA857 kodu, IR uzaktan kumanda eksi düğmesine karşılık gelir ve alındığında, mevcut durumun 1 olduğu göz önüne alındığında ışığı kapatmak için servo aşağı doğru bastırın. Hiçbir sinyal alınmazsa, kod döngüye girer ve aramaya devam eder (irrecv.resume).

3. Adım: 3B Basılı Bileşenler

3D Basılı Bileşenler
3D Basılı Bileşenler
3D Basılı Bileşenler
3D Basılı Bileşenler
3D Basılı Bileşenler
3D Basılı Bileşenler

Bu proje için iki bileşenin tasarlanması ve basılması gerekiyordu, servo için bir ışık anahtarı braketi ve tüm bileşenler için mevcut anahtarların üzerine kolayca sığabilecek bir mahfaza.

  • Işık Anahtarı Braketi: Bu parça, uçları arasında bir ışık anahtarını tutmak için tasarlanmıştır, ayrıca bir servo motora takmak için tasarlanmıştır ve bunun için bir deliği vardır.
  • Muhafazanın 4 bölmesi vardır: biri muhafazanın ön tabanında bulunan ve dikdörtgen bir açıklığa sahip olan yakınlık sensörü için. Bunun hemen üstünde Arduino ve IR alıcısı için bir bölme var, diğer bölmelere (kablolama için) açılan delikler ve ayrıca vidalar için delikler var. Muhafazanın arkası oyuktur. İki tırnağı içeren geniş alan servo motor ve devre tahtası bölmesidir, uçlar servo motorun montajı için aralıklı ve boyutlandırılmıştır. Daha küçük bölme sonuncudur ve 9V pil için takılıdır.

Adım 4: Montaj

toplantı
toplantı
toplantı
toplantı
toplantı
toplantı
  1. Kabloları HCSR04 üzerindeki pimlere bağlayın, ardından sensörü gösterildiği gibi bölmesine yerleştirin. Kabloları açıklıklardan ve servo motor bölmesine kadar geçirin.
  2. Kabloları IR Alıcının pinlerine bağlayın, ardından iletişim sorunlarını önlemek için alıcının kafasının yandan dışarı çıkmasını sağlayarak elektrik bandı kullanarak alıcıyı Arduino bölmesinin iç ön paneline sabitleyin. Muhafazanın üstüne mümkün olduğunca yakın yerleştirin. Telleri servo motor bölmesine kadar çalıştırın.
  3. Akü bağlantı kablosunu ana açıklığın yanındaki muhafazadaki en uzun delikten geçirin. Konektörün her iki parçasının da uygun tarafta olduğundan emin olun (Arduino konektörü Arduino bölmesine, akü konektörü akü bölmesine).
  4. Bir servo vida kullanarak, 3D baskılı ışık anahtarı braketini servo motora gösterildiği gibi bağlayın. Ardından, servo motoru, teller yukarı bakacak şekilde çatalları kullanarak monte edin.
  5. Breadboard'u kurmak için Velcro kullanın.
  6. Arduino'yu yuvasına yerleştirmeden önce tüm bileşenleri devre tahtasına, ardından uygun Arduino pinlerine bağlayın. Tüm bileşenlerin gücü paralel olarak sağlanmalıdır. Bittiğinde, Arduino'yu 9V pil portu dışa bakacak şekilde bölmesine yerleştirin.
  7. 9V pili yuvasına yerleştirin ve Arduino'ya bağlayın.

Adım 5: Kullanım

Cihazı kullanmak için, ışıkları kapatmak için el cihaza doğru veya ışıkları açmak için cihazdan uzaklaşılabilir. IR uzaktan kumanda artı düğmesine basmak ışıkları açar ve eksi düğmesine basmak ışıkları kapatır.

Önerilen: