İçindekiler:

Garson Lütfen Bot: 6 Adım (Resimli)
Garson Lütfen Bot: 6 Adım (Resimli)

Video: Garson Lütfen Bot: 6 Adım (Resimli)

Video: Garson Lütfen Bot: 6 Adım (Resimli)
Video: çizgi film Karakterlerinin Evli Halleri Yeni #youtube #shorts 2024, Temmuz
Anonim
Image
Image

Açık bir ofis alanında bir garsonun bir servo tarafından delinmesiyle ne yanlış gidebilir?

- bilmiyorum:D

İnsanlar alarmdan ve hatta kesintilerden nefret etme eğilimindedir, bu yüzden (en azından bir süreliğine) biraz komik hale getirmek iyi bir fikir olabilir. İşte bunu başarmayı amaçladım. Kabul edilebilir bir şekilde kritik olaylar hakkında mühendisleri hızla uyarın.

Ethernet kalkanı, Kızılötesi kontrol, SG90 9g Mikro Servo ve geri dönüştürülmüş malzemelerden yapılmış ilk Arduino projem.

WebHook veya uzaktan kumanda ile tetiklenen tokat eylemi. Uzaktan kumanda ayrıca kolun açısına ince ayar yapmak için kullanılır.

Adım 1: Nasıl Çalışır?

Nasıl çalışır?
Nasıl çalışır?

Kızılötesi alıcıyı dinler ve belirli bir anahtar kelime için bir HTTP adresi alır. Kızılötesi denetleyici, kol açısının ince ayarı için kullanılabilir ve tetik için de kullanılabilir. HTTP Yanıtı yalnızca zili tetiklemek için kullanılabilir. (Mevcut durumda Slack'ten web kancasını yakalayan ve bir bayrağı yöneten küçük bir web uygulaması yaptım. - Bu talimata dahil değil)

Temelde kızılötesi denetleyiciyi yalnızca hata ayıklama amacıyla kullandım. İlk kez kontrolörün tokat makinesinin yanında kalmasına izin vererek bir hata yaptım, ancak millet birçok kez tokat tetikleyecek kadar meraklıydı, bu yüzden cihazın bağlantısının kesilmiş olduğunu gördüm:)

Gerçek hayatta, benzer yanıtı olan sabit kodlanmış bir web adresini periyodik olarak kontrol eder:

Anyslap anahtar sözcüğünden sonra bir tamsayı gelirse, o kadar çok kol hareketi yapar.

2. Adım: Bileşen Gerekli

Bileşen Gerekli
Bileşen Gerekli
Bileşen Gerekli
Bileşen Gerekli
Bileşen Gerekli
Bileşen Gerekli

Elektronik parçalar:

  • Arduino Uno R3
  • UNO Kalkanı Ethernet Kalkanı W5100 R3
  • Kızılötesi IR Kablosuz Uzaktan Kumanda Modülü Kiti
  • Servo (SG90)
  • Evrensel Baskılı Devre Kartı 4x6cm
  • 5 x LED
  • 5 x 220 Ohm Direnç
  • 30AWG Silikon Tel

Geri dönüştürülmüş malzemeler:

  • şampuan şişesi
  • Karton kutular
  • Oyuncak el (bir el ile gel iki kruvasan al bir el bedava:)

Adım 3: Arduino Eğitimlerini Birleştirin

Çoğunlukla Arduino Yerleşik Örnekleri, Kütüphane Örneklerini takip ettim ve bir projede birleştirdim.

Önerilen dersler

  • Gecikmesiz Yanıp Sönme - LED göstergeler için kullanılır; millis() işlevi, HTTP'yi periyodik olarak kontrol eder ve kullanılmıyorsa servoyu kapatır.
  • ASCIITable seri çıkış işlevleri - Hata ayıklama için kullanılır.
  • Kontrol Yapıları, örneğin: Loop Iteration, Switch Case, If Statement, while Loop
  • DHCP Kiralamalı Ethernet Web İstemcisi - HTTP uç noktasından tetikleyicileri almak için kullanılır.
  • Servo Dersi - kol hareketi (rotasyon) için kullanılır.
  • Kızılötesi Alıcı - ek kontrol ve kol açısında ince ayar için kullanılır.

Adım 4: HTTP Yanıtında ve Diğer EthernetClient Sorunlarında Anahtar Kelime Arayın

Garson Lütfen Bot'un montajı, Ethernet şeyleri dışında oldukça basitti.

Zorluklar

  1. Herhangi bir EthernetClient çağrısı, özellikle DHCP Lease, tek bir işlemdir. Programı duraklatan Rand ile bir gecikme gibi çalışır.
  2. API'de JSON'u unutun ve WebHook Arduino Dizeleri zaten kötü.

1. - Tek işlem

Programın çoklu işlemler yapmasından vazgeçiyorum. Birkaç olası çözümü googledim ama hiçbiri basit değildi. Kodu olabildiğince küçük ve okunması kolay tutmak istedim.

2. - HTTP Yanıtını Ayrıştırma.

Kararlılık ve bakım gerektirmeden çalışabilme temel gereksinimlerdir. Bu yüzden olası bellek sızıntısı nedeniyle herhangi bir String nesnesini kullanmaktan kaçınırım.

EthernetClient, Akış temel sınıfına dayanır ve bulma işlevi, anahtar kelime aramayı mümkün kılar. Biraz karmaşıktır ve birçok kod satırı işgal eder, ancak işe yarar.

Adım 5: Taslak ve Kaynak

Eskiz ve Kaynak
Eskiz ve Kaynak

Depo:

Adım 6: Donanımı Oluşturun

Donanımı Oluşturun
Donanımı Oluşturun
Donanımı Oluşturun
Donanımı Oluşturun
Donanımı Oluşturun
Donanımı Oluşturun

Kol

  1. Macbook'un sevk edilen kutusunda dört köşe koruması vardır. Ben stand olarak kullandım.
  2. Servoya uygun küçük bir şekil kesin.
  3. Standı ve servoyu sıcak tutkal tabancasıyla birbirine yapıştırın.
  4. Kullanılmış bir şampuan şişesinden bir boru aldı ve servoya vidaladı.
  5. Oyuncak eli borunun üzerine çekin.

Kontrol eden, denetleyici

  1. Breadboard üzerinde bir prototip yaptı.
  2. Breadboard prototipini evrensel baskılı devre kartına kopyalayın.
  3. Tüm telli devre bağlantıları için ayrı başlıklar kullandım.
  4. Kağıt kutusunu kesin.
  5. Kutunun önünü ve baskılı devre kartını birbirine yapıştırın.
  6. Arduino kartını, Ethernet kalkanını ve biraz süngeri kutuya koyun.

Tamamlandı.

Önerilen: