Cadılar Bayramınızı Phidget'larla Hackleyin: 9 Adım (Resimlerle)
Cadılar Bayramınızı Phidget'larla Hackleyin: 9 Adım (Resimlerle)
Anonim

Bu proje size Cadılar Bayramı süslemelerinizi nasıl "hackleyebileceğinizi" ve onların tam olarak istediğiniz gibi davranmalarını sağlayacağınızı gösterecek!

Üzerinde çalıştığımız Cadılar Bayramı dekorasyonu aşağıdaki varsayılan işlevselliğe sahiptir:

  • Anahtar atılarak etkinleştirilir (videoda gösterilmiştir)
  • Yüksek sesle etkinleştirildi

Bu projedeki amacımız, onun yerine hareketi aktif hale getirmektir!

Adım 1: Gerekli Beceriler

Bu proje için aşağıdaki araçlara ihtiyacınız olacak:

  • havya
  • tel striptizci

Ayrıca bazı temel programlama bilgisine sahip olmanız da yardımcı olacaktır. C'de dekorasyonu kontrol eden programı yazdık.

2. Adım: Cadılar Bayramı Dekorasyonunuzun "Hacklenebilir" Olup Olmadığını Anlayın

Cadılar Bayramı Dekorasyonunuzun Olup Olmadığını Anlayın
Cadılar Bayramı Dekorasyonunuzun Olup Olmadığını Anlayın

İlk adım, Cadılar Bayramı dekorasyonunuzu değiştirip değiştiremeyeceğinizi bulmaktır. Genellikle dekorasyonlar, dekorasyonun elektronik bileşenini basit bir düğme veya anahtarla etkinleştirecek bir demo moduna sahip olacaktır. Eğer durum buysa, şanslısınız. Sistemi kontrol etmek için düğmeyi bir röle ile değiştirebilirsiniz.

Adım 3: Bileşenler/Donanım Listesi

Bileşenler/Donanım Listesi
Bileşenler/Donanım Listesi

İşte kullandığımız şey:

  • Phidget SBC4
  • DST1200 - Sonar Phidget
  • REL2002 - Sinyal Rölesi Phidget'ı
  • Su geçirmez muhafaza
  • Phidget Kablosu

4. Adım: Projeye Genel Bakış

Projeye Genel Bakış
Projeye Genel Bakış

Bu proje aşağıdaki düzene sahip olacaktır:

  • PhidgetSBC4, program kodumuzu çalıştıracak (C ile yazılmış). Dahili VINT Hub aracılığıyla DST1200 sonar sensörüne ve REL2002 sinyal rölesine bağlanacaktır.
  • Nesneleri algılamak için sonar sensörü kullanılacaktır.
  • Röle, dekorasyonun demo kablosuna bağlanacak ve sonar sensöründen gelen okumalara göre dekorasyonu etkinleştirmek için kullanılacaktır.

Adım 5: Düğme Bağlantısını Kes

Düğme Bağlantısını Kes
Düğme Bağlantısını Kes

Rölemizi eklemek için butonu kaldırmamız gerekecek. Düğmeye yakın olan kabloları kesin ve ardından yalıtımın bir kısmını soyun.

Adım 6: Röle Ekle

Röle Ekle
Röle Ekle

Düğmeden kabloları alın ve röleye bağlayın.

Bir kabloyu Ortak terminale ve bir kabloyu Normalde Açık terminale bağlayın.

7. Adım: DST1200 Sonar Sensörünü Monte Edin

DST1200 Sonar Sensörünü Monte Edin
DST1200 Sonar Sensörünü Monte Edin
DST1200 Sonar Sensörünü Monte Edin
DST1200 Sonar Sensörünü Monte Edin

Sonar sensörünü nereye yerleştireceğiniz, uygulamanıza bağlı olacaktır. Bu proje, görünürlüğün düşük olacağı bir dış mekan perili eve kurulacak, bu nedenle sonar sensörünün doğrudan tepeye oturması sorun olmayacak. Alternatif olarak, sonarı bir kapının üzerine monte edebilir veya gizlemek isterseniz yerden yukarıyı işaret edebilirsiniz.

Sonar sensörünü monte etmek için biraz yapıştırıcı kullandık. Çift taraflı bant da harika iş görür!

8. Adım: Bir Muhafazaya ihtiyacınız olup olmadığına karar verin

Bir Muhafazaya İhtiyacınız Varsa Karar Verin
Bir Muhafazaya İhtiyacınız Varsa Karar Verin

Bu proje dışarıda olacak, bu nedenle elektroniklerin korunması esastır.

SBC, röle ile birlikte su geçirmez bir muhafazanın içine oturacaktır. Röle bağlantısını biraz tel lehimleyerek dekorasyona uzattık ve SBC'yi sonar sensörüne bağlamak için 350 cm uzunluğunda bir Phidget Kablo kullandık.

9. Adım: Kod Yazma

Bu proje için tüm kodlar zaten yazılmıştır ve halloween.c dosyasına dahil edilmiştir, bu yüzden onu uygulamak istiyorsanız, tek yapmanız gereken birkaç şeyi (seri numaraları, zamanlama, vb.) değiştirmek ve derlemektir..

SBC'de C programlarının nasıl derleneceği hakkında daha fazla bilgi için şu bağlantılara göz atın:

  • Geliştirme için paketleri yükleme
  • Linux üzerinde C programlarının derlenmesi

İşte koda hızlı bir genel bakış:

  • DistanceSensor ve DigitalOutput nesneleri oluşturun.
  • Adres Phidget'ları. Daha fazla bilgi için bu videoya bakın.
  • Sonar ve röle için olayları eklemek ve çıkarmak için abone olun.

    Sonar ekleme olayında, veri aralığını 100ms'ye ayarlayın (minimum veri aralığı)

  • Sonar için mesafe değişikliği etkinliklerine abone olun.

    Mesafe değişikliği olaylarında, nesnenin 1 metreden daha yakın olup olmadığına bakın, eğer yakınsa, objectDetected değişkenini 1 olarak ayarlayın

  • while döngüsünde, nesnenin algılanıp algılanmadığını kontrol edin. Eğer öyleyse, röleyi açıp kapatın (bu, dekorasyonu etkinleştirecektir). Dört saniye bekleyin ve ardından dekorasyonu devre dışı bırakın.