İçindekiler:

Başlangıç: Harika Bir Balık Besleyici ile IoT Öğrenin: 9 Adım (Resimlerle)
Başlangıç: Harika Bir Balık Besleyici ile IoT Öğrenin: 9 Adım (Resimlerle)

Video: Başlangıç: Harika Bir Balık Besleyici ile IoT Öğrenin: 9 Adım (Resimlerle)

Video: Başlangıç: Harika Bir Balık Besleyici ile IoT Öğrenin: 9 Adım (Resimlerle)
Video: KOA ETKİNLİK BULUŞMALARI AKTİF VATANDAŞLIK 1.BÖLÜM 2024, Temmuz
Anonim
Başlangıç: Harika Bir Balık Besleyici ile IoT Öğrenin
Başlangıç: Harika Bir Balık Besleyici ile IoT Öğrenin

Bu proje daha çok, düşük bütçeli küçük bir IoT cihazıyla başlamak ve onunla neler yapabileceğiniz hakkında bir rehberdir.

  • IOT nedir?

    • Google'dan alındı: IoT, Nesnelerin İnterneti'nin kısaltmasıdır. Nesnelerin İnterneti, internet bağlantısı için bir IP adresine sahip, sürekli büyüyen fiziksel nesneler ağını ve bu nesneler ile diğer İnternet özellikli cihazlar ve sistemler arasında gerçekleşen iletişimi ifade eder.
    • Onunla çalıştıktan sonra aldım: Çılgın şeyler yapmak çünkü şeyleri internet üzerinden izleyebilir/kontrol edebilirsiniz.
  • IoT cihazları nasıl bağlanır?

    • Google'dan aldım: ISP'nize bağlantı, örneğin bir fiber hizmeti kullanarak ADSL veya Ethernet üzerinden olabilir. Ev yönlendiricisi ISP'ye bağlandığında, İnternet'teki sunucularla veya diğer hizmetlerle iletişim kurmak için kullanılan bir IP adresi atanacaktır. Bu genel bir IP adresidir ve internet tarafından adreslenebilir.
    • Onunla çalıştıktan sonra aldım: SADECE WIFI'MA BAĞLANIN VE CİHAZINIZ BAĞLI.
  • IoT'nin Geleceği?

    Nesnelerin İnterneti (IoT), uzaktan izleme ve kontrole izin vermek için fiziksel cihazlarda ağ sensörlerinin kullanılmasıdır. Bu teknoloji, sağlık, bankacılık, perakende, imalat, tüketim malları vb. gibi çeşitli alanlarda büyük bir çekiş kazandı

Basitçe sonsuz.

Öyleyse başlayalım.

Adım 1: Neden Balık Besleyici

Bir balık yemliği yapma ihtiyacından dolayı Instructables yazma yolculuğuma 1 yıl önce başladım.

Bir tatile gitmem gerekiyordu ve yokluğumda balığımın ölmeyeceğinden emin olmam gerekiyor.

Bu yüzden herhangi bir çöple, bir servo motor kullanarak belirli aralıklarla yiyecekleri düşüren basit bir balık yemliği yaptım. İnanın bana, balığım tatilimin bir (yarım ay) kadarını atlattı.

www.instructables.com/id/Fish-Feeder-Using…

Ama hissettiğim şey, evcil hayvanımı beslemenin insani dokunuşunu kaybettiğim. Gerçekten özlemeye başladım. Bu yüzden, insan(benim) etkileşimine ihtiyaç duyduğum bazı yollarla cihazı kontrol ederek onları beslemek için bu fikirle geldim. Bu yüzden IOT umut verici görünüyordu ve internet üzerinden olmak onu bir oyun gibi kontrol edebiliyorsunuz. Hepsi bu projeyle ilgili ve bunu neden yaptım.

2. Adım: Önkoşul

  • Temel ESP-01 kod yükleme bilgisi.
  • Temel Arduino IDE bilgisi.
  • ESP-01 ve Arduino mini pro için pin-out bilgisinin temeli.
  • Thingsspeak kullanımıyla ilgili temel bilgiler

Önceden bilginiz yoksa, lütfen bunları Inscrutable'da arayın, başlamak için birçok bağlantı bulacaksınız. Varsayılan olarak çok sayıda ESP8266 örneği vardır, lütfen bunları inceleyin. Chip'e yükleyin, onunla oynayın. nasıl öğreneceğimiz ve bilgiye nasıl ulaşacağımızdır.

3. Adım: Ne Öğreneceğiz?

  • IOT cihazımız olarak ESP-01'i kullanacağız
  • Bize iki IO pini verir.
  • Burada 2 küçük proje yapacağız

    • Biri diğer cihazlarla nasıl etkileşim kurabileceğinizdir. (Arduino gibi)
    • Çekirdek olarak sadece ESP-01 ile diğeri.
  • ESP wifimanager nasıl yapılandırılır.
  • Bunun dışında Servo Motor çalışma prensibinin bonus anlayışı.
  • ESP-01 kullanarak PWM.

Adım 4: Proje İçin Gerekli Malzemeler

  • ESP-01 ve USB'den TTL'ye dönüştürücü
  • Arduino Pro Mini
  • Servo SG-90
  • 3.7 Lipo Pil
  • TP456 1A Li-ion pil şarj modülü
  • Lehim tahtası
  • Lehimleme Malzemeleri
  • Birkaç erkek ve dişi başlık.
  • 3 boyutlu yazıcı. (3d parçaları online olarak sipariş edebilirsiniz.)
  • Birkaç el aleti ve zımpara kağıdı
  • https://thingspeak.com/ üzerinde ücretsiz bir hesap oluşturun

Adım 5: Balık Besleyiciyi Birleştirin

Balık Besleyiciyi Birleştirin
Balık Besleyiciyi Birleştirin
Balık Besleyiciyi Birleştirin
Balık Besleyiciyi Birleştirin
Balık Besleyiciyi Birleştirin
Balık Besleyiciyi Birleştirin
  • Biliyorum..3d yazıcı parçalarını biliyorum…nasıl yazdırılır 3d yazıcı yok..ve bla..bla..bla..
  • İnternetten sipariş verebilirsiniz. Çok sayıda çevrimiçi mağaza var.
  • Projeyi 3d yazıcı parçaları ile yaparsanız uzun süre kalacak ve daha dayanıklı olacaktır.
  • Adımları izleyin ve tek seferde monte edilecektir.
  • Hareketli parçaların uzunluğunu kontrol edin, sürtünmeyi azaltmak için yüzeyi zımpara kağıdı ile düzeltin.
  • Bir kez yapıldığında ✅ Gerçek devre işleri için çok iyiyiz.

Adım 6: Devre 1: ESP-01 ve Arduino Pro Mini

Devre 1: ESP-01 ve Arduino Pro Mini
Devre 1: ESP-01 ve Arduino Pro Mini
Devre 1: ESP-01 ve Arduino Pro Mini
Devre 1: ESP-01 ve Arduino Pro Mini
Devre 1: ESP-01 ve Arduino Pro Mini
Devre 1: ESP-01 ve Arduino Pro Mini
  • Devre için görseli takip edin çok basit.
  • Pin noktalarını bulmak için farenizi hareket ettirin.
  • Hepsi etiketlidir.

Çalışma prensibi:

  • ESP-01, ISS'nizi espwifimanger hizmetini kullanarak yapılandırabilecektir. (Wifi yöneticisi için instrutable'da arama yapın, 10'dan fazla çözüm bulacaksınız)
  • Bir kez yapıldığında, API noktanızı sürekli olarak izleyecektir.
  • Eğer yükselirse, GPIO-01'i yüksek günceller.
  • Şimdi GPIO-00, Pint D8'de Arduino için bir sensör giriş pini görevi görecek.
  • D8 yükselirse, servo işlevini tetikler.
  • Bittiğinde, ESP GPIO-02 için sensör pimi görevi görecek olan D7 High'ı güncelleyecektir.
  • Ve GPIO-02 yükselir, API'yi düşük olarak günceller.
  • Ve GPIO-00'ı düşük yapar.
  • Ve yine döngü devam ediyor.

Adım 7: Devre 2: Yalnızca ESP-01

Devre 2: Yalnızca ESP-01
Devre 2: Yalnızca ESP-01
Devre 2: Yalnızca ESP-01
Devre 2: Yalnızca ESP-01
Devre 2: Yalnızca ESP-01
Devre 2: Yalnızca ESP-01

Devre için görseli takip edin çok basit

Çalışma prensibi:

  • Önceki devremizden de bildiğiniz gibi I/O için iki pin kullanabiliriz.
  • Yani burada bir tanesini gösterge için, bir tanesini de servo kontrol için kullanacağız.
  • Servo kontrol için GPIO-00.
  • Gösterge için GPIO-02.
  • Servoyu kontrol etmek için GPIO-00 pininden PWM sinyali oluşturmamız gerekiyor.

    • Yani bir servo kontrolü, 20ms döngü sinyali için bir PWM'dir.
    • 1ms PWM Döngü 20ms verirseniz, 0 derecede kalacaktır. (benim için.7ms'de çalışıyor)
    • 2ms PWM Döngü 20ms verirseniz, 180 derecede kalacaktır.
    • 1.5ms PWM Döngü 20ms verirseniz, 90 derecede kalacaktır.
    • RunServo fonksiyon kodunun koduna bakın, size iyi bir fikir verecektir.
  • Yani mantık aşağıda
    • Bir değer için API bitiş noktasını aramaya devam edin.
    • Bunu alırsanız, GPIO-00'da PWM sinyali gönderin.
    • Değeri sıfırlamak için bir API bitiş noktası çağrısı yapın.
    • Sonra aynı döngü.
  • Mantık çok kolay.

Adım 8: Kod Yürütme

Kod Yürütme
Kod Yürütme

Biraz bilginin tehlikeli olduğunu bildiğiniz için, aynı şey kod yüklemek için de geçerlidir. Ne yaptığını bilmeden kod aynı gibidir. Burada her bir işlevi ve nasıl çalıştığını tartışacağız.

Proje 2: YalnızcaESP8826

  • fastblink(int sayısı, Dize mesajı)

    • İnt sayısı tarafından sağlanan sayım sayısı için dahili ledin yanıp sönmesini sağlar.
    • Mesajı seriye yazdıracaktır.
  • getResult()

    • Bu işlev, url'de belirtilen alan için son kayıt sonucunu döndürür.
    • 5.1 ArduinoJson kütüphanesini kullanarak elde edilen json değeri üzerinde çalışıyoruz.
  • Güncelleme durumu()

    Alan değerini 0 olarak ayarlamak için sahada güncelleme çağrısı yapıyoruz

  • runServo(int servoPin, int derece)

    • Servo için PWM rutinidir.
    • Servonun belirtilen derecede derecelendirme yapmasına yardımcı olur.
  • Kurmak

    • Wifimanager'ı kuruyoruz.
    • Böylece cihazımızı wifi kullanarak belirli bir ISS'ye bağlayabileceğiz.
    • Kaydettikten sonra her zaman kullanılabilir olacak, yeniden yapılandırmaya gerek yok.
    • Bağlandıktan sonra dahili led'i 10 kez yanıp sönüyoruz.
    • Ardından, updateStatus() işlevini kullanarak Thingsspeak'teki Field değerini sıfıra ayarlayın.
    • Sonraki API çağrısının sorunsuz çalışması için 5 saniyelik bir gecikmeden daha fazla.
  • Döngü

    • Cihaz bağlıysa, en son veya son Field değerini almak için API çağrımızı yapıyoruz.
    • Alan değeri 1'den sadece dahili LED Pin'i yanacak şekilde ayarlıyoruz.
    • 0 dereceye gitmek için servoyu çağırın → 2sn gecikme → 180 derece → 2sn gecikme → 0 derece
    • Bir sonraki api çağrısını yapmak için bir gecikmeden daha.
    • Daha sonra alan değerini tekrar 0 ayarlıyoruz.

Proje 1: esp8826Besleyici ve Besleyici

  • Diğer proje çalışması kendinizi nasıl buluyor?
  • Kendiniz yaparsanız zorluklarla karşılaşacaksınız ve öğrenmenize yardımcı olacaktır.
  • Çoğunlukla tüm fonksiyonlar aynıdır, sadece pinleri yüksek veya düşük olarak ayarlayarak pinler üzerinden iletişim sağlanmıştır.
  • Devre adımında zaten açıklanmıştır.
  • En kötü durumda, sana rehberlik etmek ve yardıma ihtiyacın olursa bana mesaj atmak için hala buradayım.

Postacı için kıvrılın

Alan değerlerini güncellemek için

GET /update.json?api_key=8FC9LUB2AXVCZJ6L&field2=1

Ana Bilgisayar: api.thingspeak.com İçerik Türü: application/x-www-form-urlencoded Cache-Control: no-cache Postacı-Token: 688a86e0-7798-d4e1-b266-b5c666fefba7

Son alan değerleri sonucunu almak için:

GET /channels/665683/fields/2.json?api_key=QOIEGTM7XT0EKI0V&results=1 HTTP/1.1Host: api.thingspeak.com Önbellek Denetimi: önbelleksiz Postacı Simgesi: b939c04d-7c72-4d82-aea9-b37e668a5200

.txt dosyasını html olarak değiştirin, tarayıcı işlemi için sayfa eklenmiştir

Balık besleyiciniz için okuma yazma çağrısını uygun şekilde güncelleyin.

9. Adım: Demo

  • İlk video postacı ile.
  • HTML Sayfası ile ikinci.
  • Üçüncü video sistemi iş başında.
  • Dördüncü video, mekanik anın nasıl gerçekleştiğini.

Yaptığım birkaç değişiklik:

  • 3d hunim işlem sırasında hasar gördü, küçük bir şişeyle değiştirdim.
  • Küçük bir tutucu oluşturdu ve kelepçe için makineyle yapıştırın

Sonuna kadar benimleyseniz ilginiz için teşekkürler. Ve başardıysanız lütfen meydan okumalarınızı paylaşın. Eminim ilk düzenlememde tüm konuları kapsayamayacağım, lütfen değerli katkılarınızı sağlayın ki böylece yapabilirim eksik ayrıntılarla güncelleyin.

Son olarak teşekkürler ve lütfen değerli girdilerinizi vermekten çekinmeyin, böylece daha fazla harika talimat öğrenebilir ve yazabilirim.

Önerilen: