adım sayar için arama sonuçları

  • Sporcular için Wi-Fi ve Bluetooth Mesh Özellikli Adım sayar IOT Akıllı Cihaz

    Bu cihaz, hızlanma, açı ve yönler gibi sağlık durumlarının yanı sıra antrenmanlar ve oyunlar sırasında oyuncuların hareketleri hakkında gerçek zamanlı veriler sağlayabilir. Oyunu daha iyi anlamaya, oyuncuların performansını artırmaya ve becerileri öğrenmeye yardımcı olabileceğinden hem oyuncular hem de spor izleyicileri için yararlı olabilir.

    Bu cihaz hem WiFi hem de Bluetooth ağını destekler. Bu, farklı cihazlardan toplanan bir oyunun gerçek zamanlı verilerinin bir cihaz bulutuna gönderilebileceği ve her yerden erişilebileceği anlamına gelir.

    Gerekli Bileşenler

    • Parçacık Argon gibi WiFi ve Bluetooth mesh özellikli cihaz (Mesh için bu cihazın birden fazlasına ihtiyacınız var)
    • Bir MPU6050 sensörü
    • Bir Max30100sensor
    • Bluetooth HC 05 (Bluetooth seri bağlantı noktası üzerinden canlı veri almak istiyorsanız isteğe bağlı)
    • 3-5 V şarj edilebilir pil

    Bileşenleri topladığımızdan, şimdi projeye başlayabiliriz.

    Kodlama

    Önce ağ ağı için argon cihazını kurun ve o ağda çalışmak istediğiniz diğer tüm cihazları ekleyin. Bunu yapmak için, parçacık uygulamasını akıllı telefonunuza indirin ve uygulamadaki talimatları izleyin. Cihazımız için parçacık Web IDE’sinde veya Vs Workbench’te kod oluşturabiliriz. Burada parçacık IDE’sinde kodlama yapacağız, çünkü bu, firmware’i OTP üzerinden kablosuz olarak herhangi bir yerden güncellememize izin veriyor.

    Kodumuzun ilk bölümünde, sensörler için gerekli kütüphaneleri ve diğer değişkenleri içereceğiz. Burada max30100 ve mpu6050 sensör kitaplıklarını kullanıyoruz. Daha sonra sistem modunu otomatik olarak ve cihazımız için sistem iş parçacığını etkinleştireceğiz. (Bakınız şekil 1).

    Şekil 1. Partikül kodu

    Ardından, Bluetooth, USB Hata Ayıklama ve test işlemleri için seri bağlantı noktası ayarladığımız kodumuzun kurulum işlevi oluşturulur. Burada iki seriyi, “Serail.begin (baudrate)” kullanarak USB için, diğeri “Serial1.begin (baudrate)” kullanarak Bluetooth üzerinden canlı veri almak için Bluetooth HC 05 series için iki seri kurduk. (Bakınız Şekil 2.)

    Şekil 2. Parçacık kodu ayarlama işlevi

    Bundan sonra döngü içinde sürekli çalışan bir döngü fonksiyonu oluşturduk. Burada döngüde sensörlerden veri alıyor ve daha önce yarattığımız değişkenlere aktarıyoruz. Sonra bu verileri seri portlara gönderdik. (Bakınız Şekil 3).

    Şekil 3. Verileri göndermek için parçacık kodu.

    Mesh Ağı oluşturma ve cihaz bulutuna bağlanma

    Kodun bir sonraki bölümünde, cihazı cihaz bulutuna bağladık ve bir ağ oluşturduk. Bu bölüm iki adımdan oluşur: İlk olarak bir etkinlik oluşturma ve tüm verileri cihaz bulutunda yayınlama; ikincisi bir yerel ağ oluşturma ve tüm verileri yerel bağlı cihaza yayınlama.

    Yerel ağ ağı için “Mesh.publish” kullanarak ağ oluşturduk ve bulut bağlantılı için “Parçacık” ı kullandık. Yayınla”.

    Burada kod snippet’inde, oyuncuların sağlık, hareket açısı ve ivme verilerini mesh ağına veren üç mesh etkinliği “Health”, “ang” ve “acc” oluşturduk. (Bakınız Şekil 4).

    Mesh.publish (“Sağlık”, Dize (BPM) + ”bpm =” + Dize (sp) + ”%” + Dize (t) + ”C”);

    Mesh.publish (“ang”, Dize (x) + ”x“ + ”y =” + Dize (y) + ”z =“ + Dize (z));    Mesh.publish (“acc”, Dize (ax) + ”= x” + Dize (ay) + ”= y” + Dize (az) + ”= z”);

    Şekil 4. Partikül ağ ağı.

    Mesh Ağı Etkinliği

    Şimdi “Mesh.subscribe” ve “Particle.Subscribe” ekleyerek mesh ağımızdaki diğer tüm cihazların olaylarını elde edebiliriz. Seçimimize göre bir köprü veya tekrarlayıcı olarak kullanabiliriz. Başka bir kod bloğu (aşağıda verilmiştir) mesh ağındaki olayların verilerini işler. Böyle bir kodu, oyuncuların verilerini cihaz bulutuna yayınlayan ve verileri her yerden canlı olarak alan bir dizi parçacık argon cihazına yükleyebiliriz.

    Mesh.subscribe (“Sağlık”, myHandler1);

    Mesh.subscribe (“ang”, myHandler2);

    Şekil 5. Mesh etkinliğiŞekil 6. Mesh olay işleyicisi

    Bağ

    Şimdi, prototipimiz için sensörleri bağlamamız gerekiyor. Bileşenleri bağlamak için aşağıdaki talimatları izleyin.

    Parçacık Pimi MPU ve MAX Sensör Pimi
    3V  VCC
    GND GND
    SCL SCL
    SDA SDA
    pil Akü bağlantı portu
    Parçacık Pimi Bluetooth HC O5
    3v VCC
    GND GND
    RX Teksas
    Teksas RX

    Test yapmak

    Şimdi, Wi-Fi yönlendiricinizi açın ve cihazımızın buluta bağlı olduğunu gösteren MAVİ ışığın yanmasını bekleyin. Ardından parçacık web IDE’sindeki bağlantı durumu çevrimiçi olarak gösterilecektir.

    Şimdi cihazı seçin ve kodu OTA parçacığına çevirin. Kod güç parçacığını pille başarıyla güncelledikten sonra, Wi-Fi ağına ve cihaz bulutuna bağlanmasına izin verin.

    Test 1. Bluetooth üzerinden Kablosuz canlı sensör verisi alma

    PC’nizdeki Arduino IDE’yi açın ve Bluetooth HC 05’i PC’nizin Bluetooth’una bağlayın. Bundan sonra Bluetooth COM PORT numarasını kontrol edin ve bağlantı noktasını Arduino IIDE’deki bu bağlantı noktası numarasına değiştirin. Şimdi araçlar menüsüne gidin ve sensör verilerinin canlı grafiğini görebileceğiniz seri çiziciyi açın (oyuncuların kalp atışı, kan oksijen yüzdesi, kolun veya sensörün bağlı olduğu diğer vücut parçalarının hızlanması). (Bakınız Şekil 6.). Şimdi seri çiziciyi kapatın ve veri değerini görmek için seri bağlantı noktasını açın. Bakınız şekil 7.

    Şekil.6Şekil 7.

    Test 2. Mesh ağı ve Device cloud üzerinden veri alma.

    Verileri cihaz bulutuna almak için konsolu açın ve URL’yi kopyalayıp herhangi bir tarayıcıya yapıştırın. Birkaç saniye sonra tüm sensör verilerini olay adıyla göstermeye başlar. Bu verilere, cihazdan ne kadar uzakta olursanız olun internet üzerinden her yerden erişilebilir. Bakınız şekil 8,9, 10. Sensörlerin canlı verilerine parçacık uygulamasından da erişilebilir.

    Şekil 8. Konsolda göstermeŞekil 9. uygulamada gösteriliyorŞekil 10. Web’e veri akışı

    İndirme Kodu

    https://drive.google.com/file/d/14fi6WtXLEIuWqlhm8l3vZYLuQY-GQ-vJ/view?usp=sharing

  • Akıllı Taşınabilir Bluetooth Adım Sayar Devresi

    Akıllı Taşınabilir Bluetooth Adım Sayar Devresi

     

    Günümüzde elektronik giyimde giderek daha fazla kullanılmaktadır, bu da onları akıllı ve aynı zamanda modaya uygun hale getirmektedir. Bu nedenle, yaktığımız kalori sayısı veya yürürken veya koşarken alınan ayak sesi sayısı gibi formumuza göre veri sağlayabilen elektronikleri ayakkabılarımıza dahil etmeye karar verdik. Bu cihaz, sporcular, sporcular, spor salonu müdavimleri veya sürekli uygunluklarını izlemesi gereken normal insanlar tarafından kullanılabilir.

    Fitness takipçimiz nasıl çalışır?

    • Bu cihaz, hareketimiz hakkında doğru veriler sağlayan ivmeölçer tabanlı bir çip kullanır. Aynı sensör vücut sıcaklığımızı da kaydeder.
    • Bu veriler daha sonra Bluetooth aracılığıyla telefonumuzdaki bir uygulamaya gönderilir.

    Malzeme Listesi

    Bu proje için aşağıdaki bileşenler gereklidir.

    • Seeeduino Nano
    • Grove Adım sensörü
    • Bluetooth HC 05
    • Tel
    • 3V – 5V pil

    Yukarıdaki bileşenlerden bazılarına bireysel olarak bakalım

    Seeeduino

    Küçük form faktörlü ATmega 382p tabanlı geliştirme kartıdır. Arduino’ya benzer, ancak küçük boyutlu ve sensör bağlantıları için özel pimlerle. Kartı programlamak ve seri hata ayıklamak için kullanacağımız bir USB C tipi dişi bağlantı portuna sahiptir. (Bakınız Şekil 1)

    Şekil 1. Seeeduino Nano

    Vin piminden 5V’luk bir pil kullanarak güç vereceğiz.

    Grove Step (sayaç) sensörü 

    Bu sensör, Seeeduino Nano’da bulunan pin yuvasına doğrudan takılabilir ve 3V ila 5V pil ile güçlendirilebilir. Sensör ve geliştirme kartı arasındaki iletişim I2C pinleri üzerinden gerçekleşir. Grove Step sensörü hızlanma verilerinin yanı sıra BMA456 sensörü kullanılarak atılan adım sayısını verebildiğinden, bir ivmeölçer veya adım sayacı olarak kullanılabilir  . Daha fazla ayrıntı için sensörün veri sayfasını kontrol edebilirsiniz . pimleri çıkar. (Bakınız Şekil 2.)

    Şekil 2. Adım (sayaç) sensörü

    Önkoşul

    Kodu yazmadan önce, ilk olarak Seeeduino Nano kartımızı Arduino IDE’ye eklemeliyiz. Bunu yapmak için şu adımları izleyin:

    Adresine git

    Dosya → Tercihler -> Ek Anakart Yöneticisi URL’si

    Kart paketi dosyasının aşağıdaki URL’sini (Seeeduino Nano için) buraya yapıştırın ve Tamam’ı tıklayın. (Bakınız Şekil 3)

    https://raw.githubusercontent.com/Seeed-Studio/Seeed_Platform/master/package_seeeduino_boards_index.json

    Şekil 3.

    Şimdi, Yönetim Kurulu Yöneticisi’ni açmak için verilen adımları izleyin

    Araçlar —-> Yönetim Kurulu —–> Yönetim Kurulu Yöneticisi

    Şimdi ‘Seeeduino AVR’ kartını site yöneticisinde arayın ve paketi yükleyin. (Bakınız Şekil 4,5)

    Şekil 4.

    Şekil 5.

    Yeni kartı Arduino IDE’ye ekledikten sonra, şimdi projemiz için Arduino IDE’de gerekli kütüphaneyi ayarlayın.

     

    Adresine git

    Kroki —–> Kütüphaneyi Dahil Et —-> Kütüphaneleri Yönet’e tıklayın. Library Manager’da Grove Step Counter’ı arayın ve kurun.

    Şekil 6.

    Kodlama

    İlk olarak, kodumuzdaki Adım sayacı kütüphanesini başlatın. Ardından sıcaklık verilerini, yakılan kalorileri, atılan adımları ve kat edilen mesafeyi saklamak için bazı değişkenler oluşturun. Bundan sonra, Bluetooth için baud hızını ayarlamak için bir kurulum işlevi oluşturun. (Bakınız Şekil 7)

    Şekil 7. Arduino kodu kurulum işlevi

    Şimdi, daha önce oluşturulan değişkenlere sıcaklık ve adım sayısı değerlerini atadığımız bir döngü fonksiyonu oluşturun.Sonra, sensör verilerini Arduino panosunun seri üzerinden Serial.println (gönderilecek veriler) /mySerial.println ( gönderilecek veriler). (Bakınız Şekil 8)

    Şekil 8.

    Uygulama Yapımı

    Verileri cihazımızdan alan ve metin biçiminde (daha sonra görüntülemek için) kaydeden bir uygulama yapmak için Kodular veya MIT uygulama mucitini kullanabilirsiniz. Burada Kodular kullanıyoruz. (Bakınız Şekil 9)

    Önce aşağıdaki bileşenleri ekleyerek bir düzen oluşturun: –

    • 3 Metin Kutusu
    • 1 Liste Seçici
    • 1 Bluetooth İstemcisi
    • 1 Dosya
    • 1 Konum sensörü
    • 1 Harita

    Şekil 9.

    Bileşenleri ekledikten ve istediğiniz düzeni ayarladıktan sonra, uygulamayı programlamak için Bloklar’a gidin (gösterildiği gibi kod bloklarını birleştirerek) (Bkz.Şekil 10)

    Şekil 10.

     

    Şekil 11. Uygulamanın son düzeni

    Bağ

    Kodu Arduino’ya yükledikten sonra bileşenleri aşağıda belirtildiği gibi bağlayın

    Arduino Bileşenler
    PİM 5V Bluetooth Hc05 ve Sensör VCC
    GND Bluetooth Hc05 ve Sensör GND
    RX Bluetooth Hc05 TX
    Teksas Bluetooth RX
    SDA (A4) Sensör SDA’sı
    SCL (A5) Sensör SCL

     

    Cihazımıza güç vermek için

    Ham / Vin pimi Akü (3-5 V) + ve
    GND Akü -ve

    Test yapmak

    Tüm bileşenleri doğru şekilde ayarladıktan sonra, Arduino’yu batarya ile çalıştırın ve ardından uygulamayı yükleyin. Uygulamanın konumunuza ve depolama alanınıza erişmesine izin verin . (Bakınız Şekil 12).

    Şekil 12. İzin ayarlama

    Ardından uygulamayı açın, telefonun Bluetooth’unu açın ve bağlan düğmesine tıklayın. Vücut sıcaklığınızı, yürüdüğünüz adım sayısını, yakılan kalorileri, hızı, yeri ve kat edilen mesafeyi kontrol etmek için cihazla bağlantı için HC05’i seçin (Bkz. Şekil 13,14).

    Şekil 13.

    Şekil 14. Uygulama düzeni

    Uygulama, tüm etkinliğinizi izleyebilmeniz ve görebilmeniz için verilerinizi otomatik olarak metin dosyasına kaydeder. (Bakınız Şekil 15)

    Şekil 15 Metin biçiminde kaydedilen verileri gösterme

    İndirme Kodu

    unknown adim_sayar.pdf

  • Bilgisayar İle Servo Motor Kontrol Programı ve Kontrol Kartı SaiDinO

    Bilgisayar İle Servo Motor Kontrol Programı ve Kontrol Kartı SaiDinO

    Servo Kontrol  3S1R

    Bilgisayara USB Port üzerinden Bağlanır.

    Bilgisayar Programı + Bağlantı Kablosu + Kantrol Kartı beraber Gönderilir.

    Cihaz Sürücüsü  ve program mail Yolu ile gönderilir.

    Özellikleri :

    3 Adet Servo Motoru  ve 1 Adet Röleyi Kontrol edebilirsiniz

    Servo Bağlantı Uçları

    Servo1 – D2

    Servo2  – D3

    Servo3 – D4

    Röle Bağlantısı  – C5

    0-1 Ampere Kadar Servolar için harici Güç kaynağı gerektirmez.

    Büyük Güçlü servolar için Harici Güç kaynağı bağlamız gerekir.

    Röle Bağlantısı ile Servo hareketleri  Sonrası istediğiniz bir harici cihazı çalıştırabilirsiniz. Örnek : Kaynak makinası, matkap , lazer…..vb.

    Adım adım servoların konumlarını belirleyebilir hangi adımda rölenin çalışmasını kontrol edebilirsiniz.

    Sınırsız adım ekleme özelliği

    Oluşturduğunuz programı saklama ve tekrar çalıştırabilme

    Kontrol Şekilleri :

    -Manuel olarak kontrol

    – 1 TUR

    – TUR Sayısı Belirleme İstediğiniz TUR kadar ayarlayabilme özelliği

    -Sürekli Tekrarlanan kontrol

    Programın Hangi Adımda olduğunu İzleyebilme

    Programın Adım Hızını 200 ms ile 2 Sn arasında ayarlayabilme imkanı

    1 Yıl Program Ve  Versiyon güncelleme imkanı.

    Neler Yapabilirsiniz :

    3 Eksen Robot kol

    Malzeme taşıma

    Malzeme delme

    Kaynak Makinesi

    ….. VB. Hayalinizde hangi hareket varsa gerçekleştirebilirsiniz.

    Sipariş ve Satın alma için 0.542.557 11 84 – Said UYSAL

  • Arduino nun Yeni PLC Cihazı Çıktı

    Arduino yu PLC Gibi programlamak istermisiniz ?

    Evet artık arduino PLC ladder mantığı ile kolayca programlayabileceksiniz.

    Programı İndirin

    Direk İndirme linki

    https://www.arduino.cc/pro/portenta-machine-control 

    Portenta Makine Kontrolü , bağımsız endüstriyel makinelere Endüstriyel IoT yetenekleri ekler. Fabrika tabanından gerçek zamanlı verilerin toplanmasını sağlar ve istendiğinde ekipmanın buluttan bile uzaktan kontrolünü destekler. Bilgi işlem gücü sayesinde Portenta Machine Control, çok çeşitli kestirimci bakım ve yapay zeka kullanım durumları sağlar. Arduino çerçevesi veya diğer gömülü geliştirme platformları kullanılarak programlanabilir.

    arduino plc

     

    Arduino PLC IDE ile Programlamaya Giriş

    Arduino PLC IDE’de tüm IEC-61131-3 dilleriyle programlar oluşturun

    Giriş

    IEC-61131-3 standardı, programlarınızı oluşturmanıza yardımcı olmak için 5 programlama dili toplar; bunları işlevler ve işlev blokları halinde gruplandırarak bütün bir program oluşturmak için birlikte kullanabilirsiniz. Standart dillere ek olarak, Paylaşılan Değişkenler aracılığıyla diğer dillerle etkileşime giren bir Arduino taslağı entegre edilebilir. Bu tür bir geliştirme, Arduino PLC IDE kullanılarak gerçekleştirilebilir. Bu eğitimde, bir Arduino taslağını referans olarak aklınızda tutarken hepsini tanıyacaksınız.

    Hedefler

    Bu eğitimin hedefleri şunlardır:

    • PLC IDE ortam işlevlerine aşina olun
    • Referans taslağı tüm IEC-61131-3 dilleriyle (LD, SFC, FBD, ST, IL) programlara dönüştürün

    Gerekli Donanım ve Yazılım

    Ortak özellikler

    Değişken Toplama

    2 tür değişken vardır:

    • Global değişkenler: 5 programın tümü ona erişebilir.
    • Yerel değişkenler: Yalnızca bir programın ona erişimi vardır.

    Küresel değişken

    Proje sekmesinin içine tıklayın ve Global_vars bölümüne tıklayın, projenizdeki global değişkenlerin tam listesini görmek için bir tablo mevcuttur.

    Yeni bir tane eklemek için tabloya sağ tıklayın ve ekle düğmesine tıklayın.

    Genel değişken ekle
    Genel değişken ekle

    Varsayılan ayarlarla yeni bir satır ekleyecektir, her alanı çift tıklayıp ihtiyacınıza göre değiştirebilirsiniz.

    Genel değişkenler tablosu

    Genel değişkenler tablosu

    Yeni değişkeni ayarladıktan sonra, ona tüm dil programlarınızdan erişebileceksiniz.

    Global_vars bölümünde tüm glboal değişkenlerini içeren bir liste göreceksiniz .

    Bir program içinde global bir değişken kullanma
    Bir program içinde global bir değişken kullanma

    Yerel değişken

    Proje sekmesine gidin ve çift tıklayarak bir program seçin, açıldıktan sonra üst panelde Yerel Değişkenler tablosunu göreceksiniz.

    Varsayılan Ladder Diyagram Programı
    Varsayılan Ladder Diyagram Programı

    Daha önce açıklanan aynı adımları izleyerek, tabloya sağ tıklayıp ekle düğmesine basabilirsiniz.

    Yerel değişkenler tablosuna yeni yerel değişken ekleyin
    Yerel değişkenler tablosuna yeni yerel değişken ekleyin

    Varsayılan ayarlarla yeni bir değişken eklenecek, ihtiyacınıza göre değiştirmek için her birine çift tıklayın.

    Blok Ekleme

    Bloklar, kitaplıklardan ve PLC IDE’den kullanılabilen özellikler veya işlevlerdir.

    Bunlar, AND kapıları, ADD işlevi vb. gibi görevleri gerçekleştirmenize yardımcı olacaktır.

    Programınıza bir blok eklemek için (yalnızca LD, SFC, FBD ile mümkündür) “Kütüphane Ağacı” adlı sağ taraftaki pencereden blokları sürükleyip bırakabilirsiniz.

    Kitaplık ağaç penceresi, sürükle ve bırak blokları
    Kitaplık ağaç penceresi, sürükle ve bırak blokları

    Tuvalinize sürükleyip bıraktığınızda, tamamen özelleştirilebilir bazı giriş ve çıkış pinlerine sahip bir blok oluşturacaktır, çoğu zaman bloğa sağ tıklayıp varsayılandan daha fazlasına ihtiyacınız olması durumunda daha fazla pin ekleyebilirsiniz.

    Görev Eki

    Programlarınızı aldıktan sonra, bunları çalışma zamanı içindeki bir göreve ekleyebilirsiniz.

    4 Görev vardır:

    • Başlatma: Atanan programların, başlatma sırasında yapılan tek yürütmesi
    • Hızlı: Varsayılan olarak her 10 ms’de bir ekli programları yürüten döngü (değiştirilebilir)
    • Yavaş: Her 100 ms’de bir ekli programları çalıştıran döngü değiştirilemez
    • Arka plan: Her 500ms’de bir ekli programları yürüten döngü değiştirilemez

    Bir göreve program atamak için programınızı kolayca göreve sürükleyip bırakabilirsiniz.

    Bir programı göreve sürükleyip bırakın
    Bir programı göreve sürükleyip bırakın

    varsayılan olarak

    main

    program ektedir

    Fast

    görevi, sağ tıklayıp “programı kaldır” seçeneğine basarak kaldırabilirsiniz.

    Göreve sağ tıklayıp tuşuna basarak da yeni bir program atayabilirsiniz.

    Add program

    , ardından açılır pencerede gösterilen listeden programı seçin.

    Görevi yapılandırmak istiyorsanız, üzerine sağ tıklayın ve tuşuna basın.

    Task configuration

    , örneğin görevin döngü süresini değiştirebileceksiniz.

    Yürütme sırası, her görevin içinde gösterilen sıra yukarıdan aşağıya olacaktır.

    Değişkenleri İzle

    Programımızın doğru çalıştığını ve saydığını kontrol etmek için , bir değişkenin değerini gerçek zamanlı olarak görmenizi sağlayan izleme özelliğini kullanacağız.

    Bunu yapmak için Görünüm > Araç pencereleri > İzle’ye gitmeniz gerekir ve yeni bir araç pencereniz olur.

    Araç penceresinin içinde değişkenleri sürükleyip bırakabilir veya belirli bir değişken eklemek için Yeni öğe ekle düğmesini tıklayabilirsiniz.

    Bir değişkeni izle
    Bir değişkeni izle

    Örnek Program

    Program, sayımı zaman içinde X kadar artıran basit bir sayaç olacaktır.

    arduino taslağı

    1int count = 0;
    2const int addition = 1;
    3
    4void setup(){}
    5void loop(){
    6 count += addition;
    7}

    IEC-61131-3 Diller

    Yeni bir program oluşturmak için proje sekmenizi açın, Proje > Yeni nesne > Yeni program araç çubuğuna gidin, programınız için bir ad belirleyin ve dilini seçin.

    Project açılır menüsünden yeni program
    Project açılır menüsünden yeni program
    Yeni bir program oluştururken açılır pencereyi ayarlayın
    Yeni bir program oluştururken açılır pencereyi ayarlayın

    Hatırlatma: Büyük/küçük harfe duyarlı programlara sahip olmak istiyorsanız proje ayarlarından seçim yapabilirsiniz, bunu doğru olarak ayarladık. adresine giderek değiştirebilirsiniz.

    Project > Options... > Code generation

    ve tıklayın

    Case sensitive

    onay kutusu

    5 dil mevcuttur:

    • Yapılandırılmış Metin (ST)
    • Talimat Listesi (IL)
    • Merdiven Şeması (LD)
    • Sıralı Fonksiyon Tablosu (SFC)
    • Fonksiyon Blok Şeması (FBD)

    Yapılandırılmış Metin

    Bu dil C’ye benzer, bir değişkene değer atama kodu aşağıdaki gibidir:

    1count := count + addition;
    Yapılandırılmış Metin sayaç programı
    Yapılandırılmış Metin sayaç programı

    Talimat Listesi

    Bu programlama dili, Assembly programlamaya benzer.

    Sayaç komut dosyası için kod şudur:

    1LD count
    2ADD addition
    3ST count
    Komut Listesi sayaç programı
    Komut Listesi sayaç programı

    Merdiven şeması

    Bu programlama ortamı, çizgilere ve bloklara dayalıdır, bir çizginin, sağa doğru devam etmek için bloklar arasındaki tüm girişleri geçmesi gereken soldan sağa bir yolu vardır, eğer tüm farklı blokları geçerse (AND kapıları gibi) sağda köşeli parantez sembolünde (bobin) sona erecek ve yapmak için ayarladığınız her şeyi tetikleyecektir; bu, örneğin Normalde Açık (NO)’ya kilitlenen bir röle olabilir.

    Sayaç programı şöyle görünür:

    Merdiven Diyagramı sayaç programı
    Merdiven Diyagramı sayaç programı

    İşte bunu sıfırdan yapan bir video:

    Sıralı Fonksiyon Tablosu

    Bu diller senaryoya bir akış şemasına benzer şekilde yaklaşır, böylece bazı işler yapan bloklarınız olur, o çalışmanın sonucunu kontrol edersiniz ve ardından seçeneklerle akışa devam edersiniz.

    SFC dili doğrudan makine ile etkileşime giremez, yani bir çıktıyı doğrudan KAPALI yapamazsınız, bunun için eylemler oluşturmanız gerekir

    Hareketler

    Eylem, işi yapan başka bir dilde (yani yapılandırılmış metin) bir komut dosyasıdır, bu, grafiğe bağlı olarak tetiklenir.

    Proje ağacınızda bir tane oluşturmak için, SFC komut dosyasına sağ tıklayın ve “Yeni eylem” düğmesine tıklayın.

    Yeni eylem oluşturma
    Yeni eylem oluşturma

    SFC Programı

    Tuvalin içine veya üst çubuğa sağ tıklayarak kullanabileceğiniz bloklarınız var, onları sürükleyip bırakabilirsiniz.

    SFC programının, Adım 0 > Geçiş 0 > Adım n > Geçiş n > … > Atlama sırasını izleyen bir kuralı vardır.

    Adım , yapılacak iştir ve Geçiş , bu çalışmanın sonucudur.

    Atlama , grafiğin başka bir Adımına bağlantıdır . Bir döngü oluşturmak için “init” adımını işaret etmek için atlamayı kullanmanız gerekecektir.

    Sayaç programı aşağıdaki resimdeki gibi görünmelidir. “Count” Adımı içindeki eylemi not edin: Yapılandırılmış Metin bölümünde gösterilen kodun aynısı olan Yapılandırılmış Metin’de yapılan programın eylemin adı olan küçük bir “sayaç” metni görebilirsiniz.

    Sıralı Fonksiyon Tablosu sayaç programı
    Sıralı Fonksiyon Tablosu sayaç programı

    İşte bunu sıfırdan yapan bir video:

    Fonksiyonel blok diyagramı

    Bu, SFC Programlamasına benzer, ancak bu durumda program üzerinde sıralı bir yol yoktur, gerekli işi yapmak için bloklar eklersiniz.

    Örneğin, Ekle bloğunu eklemek, her döngüde Ekleme işlevini yapacaktır.

    Sayaç programı şöyle görünür:

    Fonksiyonel blok diyagramı
    Fonksiyonel blok diyagramı

    İşte bunu sıfırdan yapan bir video:

    Önceki programlarda yerel değişkenler kullandık, izlenecek programın belirli değişkenlerini seçmeyi unutmayın, aksi takdirde herhangi bir veri görmezsiniz.

    Çözüm

    Var:

    • Her dilde basit bir sayaç oluşturuldu
    • Canlı değişkenin değerinin nasıl izleneceğini öğrendi
    • Bir göreve bir program eklendi
    • Kullanılmış bloklar

    Şimdi, bu temel bilgileri kullanmanızı ve her birini tanımak için daha gelişmiş programlar yapmanızı, farklı blokları denemekten çekinmeyin, bunların kodlarını inceleyin ve farklı paneller arasında gezinin.

  • Elektrikli Su Isıtıcısı için IoT Tabanlı Zamanlayıcı Anahtarı Yapımı

    Elektrikli Su Isıtıcısı için IoT Tabanlı Zamanlayıcı Anahtarı Yapımı

    Elektrikli su ısıtıcısı için bu zamanlayıcı anahtarı NodeMCU ve Blynk IoT bulut çözümüne dayanmaktadır . Soğuk mevsimde banyolarda sıcak su ile banyo yapmak için elektrikli su ısıtıcısı kullanılır. Yaygın bir sorun, sabah uyandığınızda, elektrikli ısıtıcının soğuk suyu yeterince ısıtması için 20 dakika beklemeniz gerektiğidir. Bu soruna olası bir çözüm, bir zamanlayıcı anahtarı kullanmaktır.

    Burada sunulan zamanlayıcı anahtarı, akıllı telefonunuzdaki Blynk uygulamasından elektrikli su ısıtıcısını başlatmak ve durdurmak için kullanılabilir. Bunu kullanarak, uyandığınızda sıcak su hazır olacaktır. Yazarın prototipi Şekil 1’de gösterilmiştir.

    1: Yazarın prototipi

    Devre ve çalışma

    Su ısıtıcı için Nesnelerin İnterneti (IoT) tabanlı zamanlayıcı anahtarının devre şeması Şekil 2’de gösterilmektedir. NodeMCU mikrodenetleyici (MCU) olarak kullanılır. Devre ayrıca NodeMCU’yu çalıştırmak için 5V voltaj regülatörü 7805’e (IC1) sahiptir. Su ısıtıcısını BC547 röle sürücü transistörü (T1) üzerinden açmak ve kapatmak için 12 voltluk bir röle (RL1) kullanılır.

    Şekil 2: Su ısıtıcı için IoT tabanlı zamanlayıcı anahtarının devre şeması

    NodeMCU, ESP8266 Wi-Fi modülünde çalışan bellenim içeren açık kaynaklı bir IoT platformudur. NodeMCU’nun pim diyagramı Şekil 3’te verilmiştir.

    3: NodeMCU pin detayları

    NodeMCU’yu IoT platformuna bağlama

    NodeMCU, Board Manager’dan tercih edilen kart olarak NodeMCU 1.0 (ESP-12E Modülü) seçilerek Arduino IDE kullanılarak ESP8266_standalone.ino ile programlanır. Arduino IDE’ye NodeMCU kartı eklemek için aşağıdaki bağlantıdaki eğiticiye bakın .

    IoT platformuna, aşağıdaki adımlar kullanılarak iOS ve Android cihazlarda Blynk uygulaması kullanılarak erişilebilir.

    1. Akıllı telefonunuza Blynk uygulamasını indirin ve yeni bir hesap oluşturun ya da mevcut Facebook kimlik bilgilerinizi kullanarak giriş yapın.
    2. Uygulamada Yeni Proje Oluştur’a gidin ve proje adını girin (örneğin, IoT_ ısıtıcı). Aygıt, örneğin, NodeMCU’yu seçin ve Oluştur’a tıklayın.
    3. Yeni bir proje oluşturduktan sonra, e-posta hesabınıza bir yetkilendirme jeton numarası gönderilir.
    4. https://github.com/blynkkk/blynk-library adresinden Blynk kütüphanesini indirin. Arduino IDE’den kütüphaneyi kurun. Eskiz> Kitaplığı Dahil Et> Kitaplıkları yönet> .zip ekle’ye gidin ve zip kitaplığına göz atın veya kitaplığı çıkardıktan sonra, bilgisayarınızdaki / dizüstü bilgisayarınızdaki Arduino IDE’nin Kitaplık klasörüne ekleyin.
    5. Blynk kitaplığını yükledikten sonra Windows klasörüne göz atın, Dosya>

    Örnekler> Blynk> Boards_wifi> ESP8266_Standalone.ino çizimi. Yetkilendirme simgenizi yapıştırın ve çizimde Kablosuz ağ SSID adınızı ve ağ şifrenizi girin.

    1. NodeMCU’yu USB kablosuyla bağlayın ve Arduino IDE’deki COM bağlantı noktasını seçin. ESP8266_Standalone.ino dosyasını açın, çizimi derleyip NodeMCU kartına yükleyin. Ardından, kartınızın Blynk ile bağlı olup olmadığını kontrol etmek için seri monitörü açın (Şek. 4).

    4: Seri monitör

    1. Blynk uygulamasında yukarıda oluşturulan projeye (IoT_heater) gidin, widget (+ işareti) ekleyin ve cep telefonunuzda zamanlayıcı widget’ını seçin.
    2. Zamanlayıcı Widget Ayarları’na gidin. Isıtıcıyı kontrol etmek için çıkış olarak kullanacağınız NodeMCU’nun GPIO’sunu (örneğin, D0, D1, D2, vb.) Bildirin. Uygulamadaki zamanlayıcının başlangıç ​​(7:00 am) ve durdurma (7:30 am) zamanlarını seçin.

    İnşaat ve test

    IoT bazlı su ısıtıcısının PCB yerleşimi Şekil 5’te ve bileşen yerleşimi Şekil 6’da gösterilmiştir. Bileşenleri devre şemasına göre PCB’ye monte edin.

    Şekil 5: IoT tabanlı su ısıtıcısının PCB’si6: PCB için bileşen yerleşimi

    PCB ve Bileşen Düzeni PDF’lerini indirin: Buraya Tıklayın

    Su ısıtıcısını, RL1’in normal bağlantı (NC) kontağı üzerinden CON1 konnektöründeki 230V AC şebekesine bağlayın. 230V AC ana şebekeyi CON2’ye bağlayın. Blynk uygulamasında Oynat’ı tıkladığınızda zamanlayıcı başlayacaktır. Zamanlayıcı, uygulamada tanımlandığı gibi önceden belirlenmiş veya ayarlanmış süreye ulaştığında otomatik olarak başlar. Röleye enerji verilir ve ısıtıcı açılır. Durma süresinden sonra rölenin enerjisi kesilir ve ısıtıcı kapatılır. Artık proje kullanıma hazırdır.

     

    https://drive.google.com/file/d/1LxQ5v66BNzRgh7LGs8k_LUDBjFUw7WFw/view?usp=sharing

  • LM35 ile Sıcaklığı Sesli Uyarılarla İzleme devresi

    LM35 ile Sıcaklığı Sesli Uyarılarla İzleme devresi

    Bu proje, sıcaklığı izlemek ve sesli uyarılar göndermek için Arduino Uno ve Processing yazılımına dayanmaktadır. İşleme, verileri görselleştirmek ve diğer işlevleri uygulamak için kullanılabilen açık kaynaklı bir IDE’dir.

    Devre ve çalışma

    Devre Arduino Uno kartı ve LM35 sıcaklık sensörü etrafında inşa edilmiştir. LM35 çıkış pinini (V0) Arduino kartının A0 pinine, Vcc pinini kartın 5V pinine ve toprak pinini ortak bağlayın. LM35’in Arduino Uno ile devre bağlantıları Şekil 1’de gösterilmektedir.

    1: LM35’in Arduino Uno ile devre bağlantıları

    Arduino, ortam sıcaklığını hesaplamak için LM35 sıcaklık sensörünün çıkış pimini izler. Ardından, bağlandığı seri bağlantı noktasındaki değeri gönderir. İşleme yazılımı bağlantı noktasından gelen verileri alır ve grafik kullanıcı arabiriminde (GUI) görüntüler. Ayrıca sıcaklığı da kontrol eder. Sıcaklık 40 ° C’nin altındaysa, yeşil LED yanar. 40 ° C’nin üzerindeyse, dizüstü bilgisayar hoparlöründe kırmızı LED yanar ve önceden kaydedilmiş bir sesli uyarı duyulur.

    Arduino’daki mikro denetleyicide (MCU) dahili 10 bit analog-dijital dönüştürücü (ADC) bulunur. Arduino, ADC’sini kullanarak A35 analog pimi aracılığıyla LM35’in çıkışını izler. Arduino’daki program (efy_temp.ino), aşağıda verildiği gibi, gerçek sıcaklığı vermek için belirli faktörleri kullanarak çarpma ve bölme gerçekleştirir.

    Sıcaklık = (val x 4.88) / 10; // değeri sıcaklığa dönüştürmek için çarpım faktörü

    Yukarıdaki ilişkiyi anlamak için, Arduino’daki ADC’nin varsayılan olarak referans olarak 5V aldığını unutmayın. Bu nedenle, adım boyutunu hesaplamak için aşağıda verilen ilişkiyi kullanın.

    Adım boyutu = Vref / 2 n
    burada n = bit sayısı

    Burada, Arduino’da 10 bitlik bir ADC var. Yani,
    Stepsize = 5/1024 = 0.0048828 = 4.88mV

    LM35’in veri sayfası, her 1 ° C artış için çıktıda 10mV’lik bir artış olduğunu söylüyor.

    Bu nedenle, sıcaklık = (val × 4.88mV) / 10mV

    GUI’yi anlama

    IDE’nin işlenmesi Kartezyen koordinatları kullanır (Şekil 2). Dikdörtgen GUI penceresinin sol üst köşesinin (0,0) koordinatına sahip olduğunu varsayar ve diğer tüm koordinatlar buna göre alınır. İstenen işlevselliği elde etmek için, seri ve minim olmak üzere iki kütüphane kullanılır.

    Şekil 2: Kartezyen koordinatlar

    Minim kitaplığı İşleme IDE ile önceden yüklenmiş olarak gelir; test adımları bölümünde açıklandığı gibi indirilmesi ve kurulması gerekir.

    GUI penceresini oluşturmak için işlem kodu (dee_efy.pde) kullanılır. Setup () içindeki kod bir kez çalışır ve GUI penceresinin boyutunu ayarlar ve temel bağımlılıkları yükler. Çizim döngüsünün içindeki kod tekrar tekrar çalışır. seri bağlantı noktasına her veri geldiğinde serialEvent () işlevi çağrılır. İşleme dizeyi okur ve data adlı bir değişkende saklar.

    Led () işlevi, sıcaklık değerine bağlı olarak kırmızı ve yeşil LED’lerle ilgilenir.

    Uygulama ayrıca Dosya> Uygulamayı Dışa Aktar’a giderek Windows, Mac veya Linux platformları için bağımsız bir uygulama olarak çalışacak şekilde dışa aktarılabilir. Dışa aktarmak istediğiniz platformu seçin ve Tamam’ı tıklayın.

    Test adımları

    1. Arduino IDE’yi web sitesindenindirin ve  bu web sitesinden İşleme yazılımı yükleyin .
    2. Arduino kartını bir USB kablosu kullanarak dizüstü bilgisayara veya bilgisayara bağlayın ve Arduino IDE yazılımını kullanarak Arduino kodunu (efy_temp.ino) açın. Araçlar altında, kartı Arduino / Genuino Uno olarak seçin ve COM bağlantı noktasını düzeltin. Ardından kodu derleyin ve Arduino kartına yükleyin.
    3. İşleme yazılımını kullanarak İşleme kaynak kodunu (dee_efy.pde) açın. Sesli uyarılar için bu yazılıma ses kitaplığını (minim) ekleyin. Bunun için Çizim> Kitaplığı İçe Aktar…> Kitaplık Ekle…> minim’e gidin. Filtre kutusunda, minim’i arayın ve Yükle’ye tıklayın ve birkaç saniye bekleyin.
    4. GUI’niz için yazı tipleri ekleyin. Bunun için Araçlar> Yazı Tipi Oluştur’a gidin, Arial-black-48’i seçin ve Tamam’ı tıklayın. Renk kodları Araçlar> Renk Seçici seçeneğinden edinilebilir.
    5. İşleme kodundaki COM12 port numarasını kendi COM port numaranızla değiştirin. Windows Aygıt Yöneticisi altındaki COM bağlantı noktasını kontrol edin. Kodu çalıştırmadan önce kaydedin. Çalınacak önceden kaydedilmiş ses dosyalarının, renkli yazı tipi dosyasının ve Arduino kodunun PC’nizdeki veri klasörünün içinde olması gerektiğini unutmayın.
    6. Kodu çalıştırın, Şekil 3’te gösterildiği gibi bir GUI sıcaklık değeriyle açılacaktır.

    3: GUI’de sıcaklık okuması

    GUI’de, sıcaklık önceden tanımlanmış sınırın (40 ° C) altında olduğunda yeşil LED yanar ve sesli uyarı ile birlikte sıcaklık önceden tanımlanmış sınırın üzerinde olduğunda kırmızı LED yanar.

    Kaynak Klasörü İndir

    Not

    Sesli uyarının sesini (tempSafe.mp3 ve tempWar.mp3) istediğiniz diğer uyarı sesleriyle değiştirebilirsiniz, ancak formatın, yani .mp3’ün aynı olduğundan emin olun.

    Uyarıyı kullanmak istediğiniz sıcaklık sınırını değiştirmek isterseniz, kaynak kodunu işlerken if (convertedData> 40) değerinden değiştirebilirsiniz.

     

    https://drive.google.com/file/d/1juPV2RD8rlnmV5rZ4jw1Pifsivg1wewH/view?usp=sharing

  • ESP8266-12E / F Modülünü Programlamak için devre şeması

    Bu makalede, ESP8266-12E / F modül programcısı yapmak için bir yöntem açıklanmakta ve aynı zamanda gerçek zamanlı uygulamalar için gereken destek devresi açıklanmaktadır.

    NodeMCU kartı, ESP8266 Wi-Fi özellikli çip ve diğer birçok destek devresinden oluşan bir geliştirme kitidir. Wi-Fi ile ilgili projelerde çalışmak için kullanışlı olan popüler bir panodur. Ancak ürün geliştirme ve test aşamaları tamamlandığında, NodeMCU kartının tamamı gerekli değildir – son ürün için sadece ESP8266 yongası gereklidir. Bu, ürünün toplam maliyetini azaltır, güç tüketimini azaltır ve daha küçük bir PCB alanı ve kod güvenliği sağlar.

    Ancak ESP8266 yongasını NodeMCU kartından ayırmak kolay değildir. Alternatif bir çözüm, ayrıca NodeMCU kartından çok daha ucuz olan ESP8266 yongasını ayrı olarak satın almaktır. Bu seçenekle, bu makalede açıklanan gibi uygun bir programlayıcı kullanarak kodu doğrudan ESP8266 yongasına yazabilirsiniz. Bundan sonra, ESP8266 yongasını programlayıcıdan çıkarabilir ve son ürününüzde kullanabilirsiniz.

    Yazar tarafından kullanılan ESP8266-12 E / F modülü programlayıcı Şekil 1’de gösterilmektedir.

    1: Yazar tarafından kullanılan ESP8266-12 E / F modülü programcısı

    ESP8266 kullanarak bir proje tasarlama ve inşa etme işlemi iki ayrı adıma ayrılabilir: donanım ve yazılım. Donanım, GPIO’lara destek devresi oluşturma etrafında dönerken, yazılım çizimin çip içine yazılması, derlenmesi ve yüklenmesi etrafında döner. Böyle bir uygulama yine iki aşamadan oluşur: geliştirme ve dağıtım.

    Geliştirme aşaması

    Geliştirme aşamasında, yazılımı yazmak için ESP8266 Board Manager ve destekleyici kütüphanelerle Arduino IDE gibi bir yazılım geliştirme kitine (SDK) veya daha yeni bir PlatformIO IDE’ye ihtiyacınız vardır.

    1. Yazılım kodu, yerleşik seri TTL-USB adaptörü (bazen USB-UART köprüsü olarak adlandırılır) kullanılarak ESP8266 yongasına yanıp söner. Yeni bir yazılımın yanıp sönmesi için, ESP8266 yongasının flaş modunda yeniden başlatılması ve bilgisayardan gelen USB sinyallerinin seri UART sinyallerine dönüştürülmesi ve Rx0 ve Tx0 pinleri (GPIO3 ve GPIO1) kullanılarak çipe aktarılması gerekir.
    2. NodeMCU kartında, destek devresi tüm bunları sorunsuz bir şekilde otomatik olarak gerçekleştirir. Bu, NodeMCU veya WemosD1 Mini gibi benzer bir kartı hobiler arasında popüler hale getirir. Sıfırlama ve Flash düğmelerinin, otomatik yüklemenin başarısız olması durumunda NodeMCU kartına da yerleştirildiğini unutmayın.

    Dağıtım / üretim aşaması

    Bu aşamada, nihai üründe sadece ESP8266 yongası gereklidir.

    Şimdi sorun ESP8266-12E / F (veya ESP-12E / F) çipinin nasıl kullanılacağını anlamak ve yine de kodu yükleyip NodeMCU veya benzeri bir kart olmadan yazılımı geliştirebilmektir. Bunun için öncelikle ESP-12E / F çipinin fiziksel boyutunu, çalışma, önyükleme ve yanıp sönme sürecini ayrıntılı olarak bilmemiz gerekir.

    ESP-12E / F modülü. Modülün dış boyutu Şekil 2’de gösterildiği gibi 16mm x 24mm x 3mm’dir. 4MB SPI flaşı ve yerleşik PCB anteni vardır. Pim aralığı 2 mm’dir.

    Şekil 2: ESP-12E modülünün pim ayrıntıları

    Projeyi oluşturmak için 2.54 mm’lik bir pim aralığına sahip genel amaçlı bir PCB kullanılıyorsa, ESP8266 yongası için bir kesme kartı kullanılabilir. Bu projede kullanılan ayırma panosu Şekil 3’te gösterilmektedir. Ancak, projeye özgü bir PCB kullanılıyorsa, ayırma panosuna gerek yoktur. ESP8266-12x kesme tahtası düşük bir maliyetle kolayca temin edilebilir.

    ESP-12E / F yongası, verilen pedlerde ayırma kartına lehimlenir ve başlık pimleri de ayırma kartına lehimlenir. Başlık pimleri 2.54 mm aralıklı. ESP-12E / F modülü herhangi bir genel amaçlı PCB’ye takılabilir.

    Ara kartında üç SMD direnci de vardır (Şekil 3). Kartın ön tarafında, düşük düşmeli 3.3V voltaj regülatörü olan HT7333A’yı sabitlemek için alan var. Alternatif olarak, devreye güç vermek için harici bir 3.3V regülatör kullanılabilir.

    3: ESP-12E / F çip için kesme kartının ön ve arka tarafları

    Manuel ESP-12E / F programlayıcı

    ESP-12x tabloda gösterildiği gibi üç farklı modda önyükleme yapabilir. İlk iki önyükleme modu ile ilgileniyoruz.

    Tablodan görülebileceği gibi, önyükleme sırasında GPIO2 ve Ch_PD / En pinleri daima yüksek, GPIO15 ise düşük tutulmalıdır. Bağımsız ESP-12E / F yongasını kullanırken, Ch_PD ve GPIO2 pinlerine 10k / 12k yukarı çekme dirençleri ve GPIO15 pinine aşağı çekme (10k / 12k) dirençleri ekleyin. Çekme ve çekme dirençlerinin kesme kartında önceden oluşturulduğunu unutmayın.

    Sıfırlama pimi ve GPIO0 normalde yüksek tutulmalı, ancak Şekil 4’teki devrede gösterildiği gibi mikro anahtarlarla toprağa bağlanmalıdır. Bu, ESP-12E / F modülünü kullanmak için gereken minimum yapılandırmadır. Bu modülün etrafında inşa edilen her projede bu beş adet 12k direnç bulunmalıdır. Bu dirençler NodeMCU kartında önceden oluşturulmuştur.

    4: Manuel ESP8266-12E / F Modül Programlayıcısının devre şeması

    Manuel yanıp sönme işlemi

    Manuel ESP-12E / F programcısı Şekil 4’te gösterilmiştir. Herhangi bir çizim / kodu ESP8266 çipine manuel olarak yanıp sönmek için, önce aşağıdaki gibi adım adım flash / programlama moduna getirin:

    1. Sıfırla (S1) ve Flaş (S2) düğmelerini basılı tutun.
    2. S2 düğmesini basılı tutarak S1’i serbest bırakın. GPIO0 düşük tutulurken bu güç açmaya eşdeğerdir.
    3. ESP8266 önyükleme yaptıktan sonra S2’yi bırakın.
    4. Yazılımı Tx ve Rx pinleri aracılığıyla yükleyin. Bilgisayarlarda artık donanım seri bağlantı noktaları bulunmadığından, USB’den UART’a dönüştürücü kullanılabilir. Bu dönüşüm NodeMCU’da dahili CH340G veya CP2102 USB-UART çipi üzerinden gerçekleşir. Kolayca bulunabilen FTDI USB-UART modülü bu programcı için kullanılır.
    5. Yanıp sönme işlemi tamamlandığında, ESP8266’yı normal modda başlatmak için S1 anahtarına basarak ESP8266’yı yeniden başlatın.

    ESP8266-12E / F Modül Programlayıcı’nın farklı önyükleme modları

    Yanıp sönen işlemi otomatikleştirme

    Yukarıdaki işlem, yeni yazılımların her yanıp sönmesinde manuel müdahale gerektirse de, NodeMCU kullanma deneyimine benzer şekilde yazılım kodunu yükleme kolaylığına ihtiyacımız var. Bu işlem, ESP8266 yongasındaki Reset ve Flash (GPIO0) pinlerini bildirmek için kullanılan USB-UART yongasının veri terminali hazır (DTR) ve gönderilmeye hazır (RTS) sinyalleri kullanılarak otomatikleştirilebilir.

    DTR ve RTS pinlerine FT232x USB-UART modülü etrafında inşa edilen popüler FTDI modülünden kolayca erişilebilir (Şekil 5’de gösterilmiştir). CH340 yongaları kullanan harici USB-UART modülleri de mevcuttur, ancak bu modüllerde DTR ve RTS pinlerine erişilemez.

    Şekil 5: FT232 USB-UART modülü

    FT232x USB-UART modülündeki RTS sinyali, Şekil 5’te gösterildiği gibi ayrı bir pim üzerinde mevcuttur. Programlayıcı ile kullanım kolaylığı için, erkek çıkış pimlerini gerekli tüm çıkışların (deliklerin) bulunduğu modüle takın. Altı pinden oluşan isteğe bağlı bir seri adaptör, dikey olarak değil, modül üzerine yatay olarak monte edilir.

    FT232 modülü ayrıca USB I / O için entegre 3.3V seviye dönüştürücüsüne sahiptir. ESP8266-12x 3.3V üzerinde çalıştığından, modül üzerindeki atlama kablosu 3.3V olarak ayarlanmalıdır, böylece sinyaller ESP8266 ile uyumludur. 3.3V, harici mantık sağlamak için de kullanılabilir. Bununla birlikte, FT232’deki maksimum akım değeri 100mA, ESP8266-12E / F ise 170mA’lık tepe akımları çekebilir. FT232 cihazının hasar görmesini önlemek için ESP8266-12E / F’ye güç sağlamak için harici bir 3.3V modülü kullanılır.

    Programcı devresi

    Otomatik programlayıcının devre şeması Şekil 6’da gösterilmiştir. ESP8266-12E modülü (MOD1), FT232 modülü (MOD2), 3.3V modülü (MOD3), iki anahtar (S1 ve S2), iki BC547 transistör etrafında inşa edilmiştir. (T1 ve T2) ve diğer birkaç bileşen.

    6: Otomatik ESP8266-12E / F Modül Programlayıcısının devre şeması

    Otomatik ESP-12E / F programlayıcı devresi yukarıda tartışılan manuel programlayıcıya benzer. RTS sinyali ESP8266’yı sıfırlamak için kullanılırken, DTR sinyali çipi flaş moduna almak için kullanılır. T1 ve T2, hem DTR hem de RTS sinyalleri düşük olduğunda ESP8266’nın sıfırlanmaması için kullanılır. Yükleme komutunun algılanması üzerine, ESP modülü otomatik olarak flaş moduna geçirilir ve sorunsuz bir şekilde yeni bir çizim yüklenebilir. Yükleme komutunun yokluğunda, ESP-12E / F normal modda başlar ve programlanmış ESP-12E / F kartı bir uygulamada test edilebilir veya kullanılabilir.

    ESP-12E / F kartını test etmek için, bu makalede basit bir LED yanıp sönen uygulama sunulmuştur. Yazılım kodu (NewBlink.ino) Arduino programlama dilinde yazılmıştır.

    Programlayıcı nasıl kullanılır

    Programlayıcı, Şekil 7’de gösterildiği gibi genel amaçlı bir PCB üzerine veya Şekil 8 ve 9’da gösterildiği gibi tasarlanmış PCB üzerine kurulabilir.

    7: Yazar tarafından kullanılan modüller ve genel amaçlı PCB8: Otomatik ESP8266-12E / F Modül Programlayıcı’nın PCB düzeni9: PCB için bileşen yerleşimi

    PCB ve Bileşen Düzeni PDF’lerini indirin: buraya tıklayın

    Kaynak Klasörü İndir

    Dişi Berg şerit konnektörleri, ESP8266 yongasını ve programlayıcı kartındaki FTDI kartını (FT232 modülü) takmak için kullanılır. Modülleri ve konektörleri PCB’ye monte edin. Modüllerin doğru yönde takıldığından emin olun.

    Şimdi FT232 modülünü bir USB kablosuyla bilgisayara bağlayın. Arduino IDE’yi açın ve kodunuzu yazın veya bilgisayarınızda kayıtlı mevcut kodu açın. Burada, LED yanıp sönen uygulamanın kodunu (NewBlink.ino) açmanız yeterlidir.

    Arduino IDE’de doğru Com portunu seçin ve kartı NodeMCU 1.0 (ESP-12E Modülü) olarak ayarlayın. Yükleme hızının 115200 olduğunu kontrol edin. Normalde NodeMCU kullanarak yaptığınız gibi derleyin ve yükleyin. ESP-12E / F kartındaki yerleşik LED (GPIO 2’de), başarılı yüklemede yanıp sönmeye başlayacaktır.

    Programlanan ESP-12E / F modülü programlayıcıdan çıkarılabilir ve projeye özgü kartınıza kaydırılabilir. Artık dağıtım için hazır olan daha ucuz ve daha küçük bir NodeMCU sürümüne sahipsiniz.

     

     

     

    https://drive.google.com/file/d/1H8TGZ39DN2mhjHOwNZcs5HUSTocxo3NO/view?usp=sharing

  • Smartlock Kapı Kiliti Açma Sistemi Akıllı Misafir Karşılama

    Smartlock Kapı Kiliti Açma Sistemi Akıllı Misafir Karşılama

    Burada, ana ofis kapınız kilitliyken bir ziyaretçiyi geldiğinde onugörmenizi sağlayan bir güvenlik sistemi sunulmaktadır . Bir konferans odasında bir toplantının ortasındaysanız ve kapıda bir ziyaretçi varsa, bu sistem akıllı telefonunuza bir ziyaretçinin e-posta olarak fotoğrafını içeren bir bildirim mail adresinize gönderir. Onaylarsanız, bir Web tarayıcısı kullanarak ön kapının kilidini açmak için cep telefonunuzu veya PC’nizi kullanabilirsiniz

    . Alternatif olarak, interkom tesisine sahip bir kapı zili varsa, kapı zilini çaldığında ziyaretçiyle konuşabilirsiniz. Akıllı kilit sistemine sahip akıllı resepsiyon görevlisinin tipik bir blok diyagramı Şekil 1’de gösterilmiştir.

    1: Akıllı kilit sistemine sahip akıllı resepsiyon görevlisi

    Smartlock devresi

    Akıllı resepsiyonist ve smartlock sisteminin arabirim devresi Şekil 2’de gösterilmiştir. Raspberry Pi, Wi-Fi dongle, GPIO kütüphanesi ve Python dilinde yazılmış yazılımla standart Raspbian Linux dağıtımında çalışır. Raspberry Pi GPIO4, GPIO17 ve GPIO25, mantık seviyesini düşürmek için sırasıyla R3, R2 ve R1 dirençlerine bağlanır.

    Kapı zili

    CON3’ten gelen kapı zili sinyali, Raspberry Pi üzerindeki GPIO17 pinine yönlendirilir. Bir ziyaretçi kapı zilini çaldığında, durum LED’i yanar ve GPIO17 yükselir. Kapı zili sinyal çıkışının genliği, kullanılan kapı zili / çanına bağlıdır. 3V sinyal veren bir kapı zili kullanabilirsiniz.

    Şekil 2: Akıllı kilit sistemine sahip akıllı resepsiyon görevlisinin devre şeması

    Yakalanan sinyal, Raspberry Pi’nin GPIO pinlerindeki 3.3V sınırını aşmamalıdır. Böylece bu devrede 3V zener (ZD1) kullanılır. Kapı zili devresinin toprak kablosu, Raspberry Pi’nin GND pinine ve GPIO17’ye durum LED anotuna bağlanmalıdır. GPIO17 yükseldiğinde, sistem ziyaretçinin fotoğrafını USB üzerinden Raspberby Pi’ye bağlı web kamerası aracılığıyla yakalar. Çekilen fotoğraf, kaynak programınızda yapılandırılmış e-posta kimliğinize gönderilir.

    Eki e-postanızda açın ve ziyaretçinin fotoğrafını kontrol edin. Ziyaretçiniz belirlendikten sonra, ya doğrudan kapıyı açın ya da kapıya takılıysa interkom aracılığıyla onunla konuşun.

    Smartlock

    Durum LED’i kapı zilinin çaldığını göstermek için yandığında, Web tarayıcınızda Kamera sekmesine basın (Şek. 3). Bu, Raspberry Pi’nin GPIO25 pinini yüksek hale getirerek web kamerasının ziyaretçinin fotoğrafını çekmesini sağlar. Çekilen fotoğraf e-posta kimliğinize gönderilir.

    Ziyaretçiniz belirlendikten sonra, Web tarayıcısındaki Kilit sekmesine basarak kapıyı açabilirsiniz. Kilit sekmesine basıldığında GPIO4 yükselir. Röle sürücü transistörü T2, GPIO4’e bağlandığından, T2 röleyi (RL1) iletir ve enerjilendirir. Bu, CON2’den CON1’e bağlı solenoid kilide 12V DC beslemesi sağlar ve kapı açılır.

    Yazılım

    Yazılımı hazırlayın

    Başlangıç ​​olarak, İnternet bağlantısı olan Raspberry Pi’ye sahip olmalısınız. En son yazılım ve sürücülere sahip olduğundan emin olmak için güncelleyin. Raspberry Pi’de kurulu olan işletim sistemini güncellemek için terminalde aşağıda verilen komutu çalıştırın.

    sudo uygun-güncelleştirme
    $ sudo uygun-güncelleştirme

    WiringPi kütüphanesini kurma

    WiringPi GIT altında tutulur, bu nedenle aşağıdakileri yükleyin:

     sudo apt-get install git-çekirdek

    GIT kullanarak WiringPi edinmek için:

    $ git clone git: //git.drogon.net/ wiringPi

    Klonlama işlemini ilk kez kullanıyorsanız, şunu kullanın:

    $ cd wiringPi
    $ git çekme başlangıç ​​noktası

    Bu güncelleştirilmiş bir sürümü getirecek ve sonra aşağıdaki komutu kullanarak derleme komut dosyasını çalıştıracaktır. Oluşturmak / yüklemek için, aşağıda verilen yeni basitleştirilmiş komut dosyasını kullanın:

    $ cd kablolamaPi
    $. / build

    Derleme betiği sizin için derleyip kuracaktır.

    Kablo Tesisatını Test Edin

    Kurulumu kontrol etmek için gpio komutunu çalıştırın:

    $ gpio -v
    $ gpio readall

    Raspberry Pi’de Apache Web sunucusunu kurma

    Apache, Raspberry Pi’ye Web sayfalarını sunmasına izin vermek için kurulabilen popüler bir Web sunucusu uygulamasıdır. Kendi başına, Apache HTML dosyalarını HTTP üzerinden sunabilir ve ek modüller ile PHP gibi komut dosyası dillerini kullanarak dinamik bir Web sayfası yapabilirsiniz.

    Aşağıdakileri kullanarak Apache’yi yükleyin:

    $ sudo apt-get install apache2 php5
    libapache2-mod-php5

    Aşağıdaki komutu kullanarak Raspberry Pi IP adresini bulun:

    $ ifconfig

    Kurmak

    3: Web sayfası penceresi

    IP’sini aynı veya farklı ağdaki herhangi bir Web tarayıcısına yazarak Raspberry Pi’nin sunucu kurulumunuzu başka bir bilgisayardan test edin. “Çalışıyor!” Yazan bir mesaj görmelisiniz. Bu, Apache’nin çalıştığı anlamına gelir.

    Varsayılan Web sayfasını değiştirme. Varsayılan Web sayfası /var/www/html/index.html adresinde bulunan bir HTML dosyasıdır (index.html.)

    Terminaldeki bu dizine gidin ve içinde ne olduğuna bakın.

    $ cd / var / www / html
    $ ls -al

    Bu, kök kullanıcının sahip olduğu html dizini içinde bir dosya olduğu anlamına gelir. Bu dosyaya ihtiyacımız yok, bu yüzden kaldırın.

    $ sudo rm index.html

    Www dizinine sahip olmak için aşağıdaki komutu çalıştırın:

    $ ls -l / var / www

    Bunu yalnızca kök (süper kullanıcı) ayrıcalıklarına sahipseniz görürsünüz.
    Değiştirmek veya Pi kullanıcısını yerleştirdiğiniz www-data adlı bir grup oluşturmak için aşağıdaki komutu kullanabilirsiniz.

    $ sudo chown -R pi / var / www

    Dizin içindeki her şeye sahip olmak için (örnek olarak index.php), şunu kullanın:

    $ sudo chown -R www-veri / var / www

    Akıllı klasör (DVD’nin içinde) html ve my_project olmak üzere iki klasör içerir. My_project dosyasını Pi klasörüne kopyala.

    Www dizinindeki html klasörünü kopyalamak için aşağıdaki komutu kullanın:

    $ sudo cp -r / home / pi / smart / html / var / www

    Artık hazır bir Web sunucunuz var ve web sayfasını yeniledikten sonra alacak.

    Kesmeyi algılamak ve emailscript.py’yi çağırmak için main.py Python komut dosyasını kullandık. Main.py, CON3 aracılığıyla kapı zili halkası kesmesi alındığında yürütülür. emailscript.py Fotoğraflı e-postaları ek olarak göndermek için Python betiği kullanılır.

    Emailscript.py dosyasında gerekli değişiklikleri yapın. E-posta göndermek için kullanacağınız e-posta kimlik bilgilerinizle aşağıda verilen metni değiştirin:

    USERNAME = “ your_id@test.com ”
    PASSWORD = “şifreniz”

    SendMail’deki ([“ receiver_id@test.com ”] e-posta kimliğini e-posta kimliğinizle veya fotoğrafı alacak kişiyle değiştirin.

    Test yapmak

    Her şeyden sonra (web kamerası, arabirim devresi ve diğerleri) Smart Receptionist Smartlock Sistemi düzgün bir şekilde bağlandığında, aşağıdaki adımları izleyin. Terminalde main.py Python betiğini aşağıdaki komutu vererek çalıştırın:

    $ cd my_project /
    $ sudo python main.py

    Raspberry Pi IP adresinizle İnternet bağlantısı olan başka bir bilgisayardan tarayıcıyı açın. Web sayfasını Şekil 3’te gösterildiği gibi alacaksınız. Test amacıyla, CON3’e yaklaşık üç saniye boyunca 3V DC sağlayın ve bırakın. Çekilen fotoğrafı e-postanıza almak için Kamera sekmesine basın. Birkaç saniye içinde, e-posta ekinizde receiver_id@test.com e-posta kimliğinde çekilen bir fotoğrafı alacaksınız . Solenoid kilide enerji vermek için Kilit sekmesine basın.

    Kaynak Kodunu İndir: buraya tıklayın

    https://drive.google.com/file/d/1olhtrlT64ACzOGcYs9KRYNuqAAAkhoPr/view?usp=sharing

  • Arduino Uno Tabanlı Pencere Hırsız  Alarmı Yapım devresi

    Arduino Uno Tabanlı Pencere Hırsız  Alarmı Yapım devresi

    1. Balasubramanian adlı geliştiriciden

    9 Kasım 2019

    Burada Arduino Uno panosuna dayanan bir pencere alarmı duyurusu sunulmaktadır. Bir uyarı, esas olarak proses tesislerinde, enerji santrallerinde ve endüstrilerde operatörleri anormal koşullar veya parametre sapmaları hakkında uyarmak için çeşitli tesis koşullarını izlemek için kullanılır. Güvenlik / yangın alarmı olarak da kullanılabilir. Yazarın prototipi Şekil 1’de gösterilmiştir.

    1: Yazarın Pencere Alarmı Uyarı Tablosu için prototipi

    Devre ve çalışma

    Pencere alarmı uyarıcısının devre şeması Şekil 2’de gösterilmiştir. Arduino Uno kartı (kart1), yedi LED (LED1 ila LED7), üç dokunsal anahtar (S1 ila S3) ve birkaç ayrı bileşen etrafında inşa edilmiştir.

    Şekil 2: Pencere alarmı uyarıcısının devre şeması

    Bu bildirimde alarmı normalde açık (NO) kontaklar üzerinden başlatmak için CON1 – CON7 konnektörleri arasında bağlı yedi giriş vardır. Ayrıca test, onaylama ve sıfırlama için üç giriş anahtarı (S1 – S3) vardır. Zil için sekizinci çıkış sağlanırken, bunlardan yedisi LED’lere bağlı sekiz çıkış vardır. (Zil, ek devre kullanılarak bir hooter ile değiştirilebilir.)

    Tüm alarm girişleri NO kontakları için tasarlanmıştır. Arduino’nun dijital pin 2 – pin 13’ünün yanı sıra, yedi farklı giriş koşulunu izlemek için dijital I / O pinleri olarak analog pin A0 – pin A5 de kullanılır.

    Herhangi bir giriş alarm kontağı kapalıysa, ilgili çıkış LED’i hızlı bir şekilde yanıp söner / yanıp söner ve piezo zili, kullanıcının veya yakındaki kişilerin dikkatini çekmek için etkinleştirilir. Alarm, onay düğmesine (S2) basılarak durdurulabilir. Bu, piezo zilini devre dışı bırakır ve LED daha yavaş yanıp söner. Yani, alarm girişi kontağı açılırsa, alarm sesi durur ancak LED yavaş yanıp sönmeye devam eder. Sıfırlama düğmesine (S3) basıldığında LED tamamen söner.

    Bir örnek ele alalım. Başlangıçta, tüm girişler açık olduğundan tüm LED’ler kapalıdır. İlk makinede sorun varsa, CON1’deki ilk giriş I / P1 kapanacak, LED1 hızlı bir şekilde yanıp sönecek ve PZ1 bir alarm sesi çıkaracaktır. S2’ye basıldığında, I / P1 kapalıyken PZ1 kapalı olacak, ancak LED1 açık kalacaktır. S2’ye basıldığında, I / P1 açıkken, PZ1 kapanır ve S3 anlık olarak basılana kadar LED1 yavaşça yanıp söner.

    LED’leri ve sesli uyarıyı test etmek için test butonu S1 sağlanmıştır. S1 tuşuna basıldığında, tüm pencere alarm LED’leri sürekli yanar ve sesli uyarı etkinleştirilir. Bu, S1 serbest bırakılana kadar devam edecek.

    Yazılım

    Yazılım, Arduino programlama dilinde Arduino IDE 1.8.5 sürümü kullanılarak yazılmıştır. Verilen çizimi / programı Arduino Uno’ya yüklemeden önce, geçen Millis kütüphanesi işlevinin Arduino IDE’de (Çizim> Kütüphaneleri dahil et> Arduino kütüphaneleri) mevcut olduğundan emin olun. Değilse, source.efymag.com adresinden elapsedMillis-master klasörünü indirin. Ardından, aşağıdaki adımları izleyerek zip dosyasını ekleyin.

    Çizim> Kitaplıkları dahil et> Ekle. ZIP Library…> ‘ye gidin ve geçen Millis dosyasının kaydedildiği konuma göz atın. Yukarıdaki kütüphane işlevini ekledikten sonra, kütüphane işlevleri listesinde göründüğünden emin olun. Şimdi, Annunciator.ino çizim dosyasını panoya yükleyin.

    Kaynak Klasörü İndir

    İnşaat ve test

    Pencere alarmı uyarıcısının PCB yerleşimi Şekil 3’te ve bileşen yerleşimi Şekil 4’te gösterilmiştir. Devreyi monte ettikten sonra, Arduino Uno ile birlikte uygun bir kutu içine alın. Tüm LED’leri kabinin bir tarafına, piezo zilini diğer tarafa sabitleyin. Devrenin güç kaynağı Arduino kartı üzerinden kullanılır ve dizüstü / masaüstü bilgisayarın USB portu üzerinden bağlanır.

    Şekil 3: Pencere alarmı uyarı lambasının PCB düzeni4: PCB için bileşen yerleşimi

    PCB ve Bileşen Düzeni PDF’lerini indirin: buraya tıklayın

    Tüm girişler, I / P1 – I / P7, ortak bir topraklama rayı ile potansiyelsiz harici NO kontaklarıdır. Yani, cihazlardan / makinelerden gelen tüm girdiler NO olmalıdır. Bir veya daha fazla cihaz / makinenin yükünde aşırı yük veya kısa devre gibi sorunlar meydana geldiğinde giriş kontakları kapanmalıdır.

    Kolay ve hızlı test için, devreyi verilen bağlantı şemasına göre bir breadboard üzerinde monte edin. Onay, test ve sıfırlama girişleri dahil olmak üzere tüm girişler, ilgili anahtarlara basılarak başlatılabilir.

    Dikkat. 1

    Ortak potansiyeli olan alarm kontakları (CON1 ila CON7) olarak yalnızca potansiyelsiz harici NO kontakları kullanılmalıdır. Aksi takdirde, devreye enjekte edilen harici voltaj Arduino Uno’ya zarar verir.

    Alarm girişi için uzun kablolar kullanılıyorsa, sahte çalışmayı veya hasarı önlemek için EMI bastırma devreleri / optokuplör devreleri eklenmelidir.

     

    https://drive.google.com/file/d/1JK1Aam19YfOhXO0JvujIqlnNn7AYwWAo/view?usp=sharing

  • Araba için Yüz Tanımalı Akıllı Kilit Yapımı

    Araba için Yüz Tanımalı Akıllı Kilit Yapımı

    Görüntü Kimlik Doğrulaması Yaparak

    Ashhwini Kumar Sinha

    Bir noktada, hepimiz, televizyon / gazete veya mahallede araba hırsızlığı haberlerine rastlamış olmalıyız. Bazılarımızla da olmuş olabilir. Yüksek teknolojili güvenlik aygıtları kurmasına rağmen, hırsızlar bir şekilde arabanıza erişmenin ve çalmanın yollarını bulmayı başarıyor. Bu nedenle, otomobiller için yüksek verimli ve kusursuz bir prototip üretmeye karar verdim. Bu güvenlik sistemini yetkisiz erişime karşı korunacağınız bankalar, kilitli dolaplar ve evler için de uygulayabilirsiniz.

    Nasıl çalışır?

    1. Bluetooth kullanarak aracınızın akıllı kilidini bağlayın.
    2. Ardından aracınızın şifresini girin.
    3. Bundan sonra, bir kamera yüzünüzü tanımak için küçük bir videonuzu çeker.
    4. Sonra parmak izinizi ister. Doğru ise, arabanıza erişebileceksiniz, aksi takdirde arabanın kontağını kapatacak ve sahibine bir uyarı mesajı gönderecektir.

    Ne inşa edeceğiz?

    3 adımlı bir araba kimlik doğrulaması akıllı kilidi yapmak için, bir yüz tanıma sistemi ve biyometrik bir şifre oluşturacağız, böylece sadece yetkili kişi araca erişebilsin.

    Malzeme listesi

    Kodlama

    Android uygulamamız ve Raspberry Pi arasındaki iletişimi sağlayacak ve böylece kilit kimlik doğrulamasını kontrol edecek bir Arduino kodu yazacağız. Bunu yapmak için, önce arabamızın ateşlemesini kontrol eden rölenin şifresini, yüz algılanan değeri (doğru için 1 ve yanlış için 0) ve pin numarasını saklayan değişkenler oluşturun . Ardından, Bluetooth iletişimi için baud hızını ayarlamak için bir kurulum işlevi yaratırız. Burada baud hızını = 9600 (varsayılan) kullandık. (Bakınız Şekil 1, Şekil 2).

    Şekil 1. Arduino koduŞekil 2. Arduino kodu ayar fonksiyonu.

    Şimdi, uygulamaya girilen şifreyi kodumuzda yazılı olanla çapraz kontrol etmek için bir döngü fonksiyonu oluşturuyoruz. Her iki şifre de eşleşirse, “kontrol” adı verilen başka bir işlev çağıracaktır. Kontrol fonksiyonu temel olarak Raspberry Pi’den yüz tanıma çıkışı isteyecektir. (Bakınız Şekil 3, 4)

    Şekil 3. Döngü işleviŞekil 4. Kontrol fonksiyonu

    Şimdi Arduino kodlamamızı yaptık. Ardından, Raspberry Pi masaüstü penceresini açın ve yüz tanıma için bir Python betiği yazın.

    Yüz tanıma için:

    Yükleme dlib , yastık , CV2 ve face_recognition senin Ahududu Pi içine Python modülleri. PyPl kütüphane dizininde verilen talimatlara göre kurulum işlemini takip edin.

    Yükleme işlemini tamamladıktan sonra Python IDE’yi açın ve yüz tanıma için Python betiğini yazmaya başlayın. Face_recognition , gpiozero , cv2 , numpy gibi gerekli tüm modülleri eklediğinizden emin olun .

    Bundan sonra, arabanızı sürmesi onaylanan tüm kişilerin resimlerini yapıştırın (senaryoyu yazdığınız yere). Resim adlarını koda yazdığınızdan emin olun. (Bakınız Şekil 5.)

    Şekil 5. Yüz tanıma

    Şimdi kodu indirin ve yüz tanıma için Raspberry Pi’de çalıştırın.

    Uygulamayı yapma

    Şimdi Kodular’ı açın (www.kodular.io adresine gidin) ve oturum açın. Uygulamanın kullanıcı arayüzünü oluşturmak için aşağıda verilen sanal bileşenleri ekleyin. (Bakınız Şekil 6.)

    • 4 Metin_Kutu
    • 1 Bluetooth_Client (Bağlantı -> Bluetooth İstemcisi’ni seçin)
    • 1 List_Picker (Kullanıcı Arayüzü-> Liste Seçici’yi seçin)
    • 1 Mesajlaşma (Sosyal Medya -> Mesajlaşma’yı seçin)
    • 1 Saat (Sensörler-> Saat’i seçin)

    Şekil 6.UI oluşturma

    Şimdi manifatura’yı tıklayın ve istediğiniz kısa mesajı içeren telefon numarasını girin. (Bakınız Şekil 7.)

    Şekil 7. Mesajlaşma ayarları.

    Uygulamayı programlama

    Programlama için Bloklar’a gidin ve kod bloklarını gösterildiği gibi birleştirin. (Bakınız Şekil 8.)

    Şekil 8. Kod blokları.

    Ve son olarak, APK’yı bilgisayarınıza aktarın ve ardından Android telefonunuza yükleyin. Son uygulama bu şekilde görünecektir. (Bakınız Şekil 9.)

    Şekil 9. Final Uygulaması

    İndirme Kodu

    Bağ

    Bileşenleri aşağıdaki gibi bağlayın:

    Arduino RX ——————- HC 05 TX

    Arduino TX ——————- HC 05 RX

    Arduino 5v ——————- HC 05 VCC

    Arduino GND —————- GND

    Arduino A0 ——————– Ahududu GPIO Yüz pimi Çıkışı

    Arduino Pin 13 ————— Röle

    Şekil 10. Devre Şeması.

    Uygulamayı test etme

    Prototipimizi test etmek için uygulamayı açın ve telefonunuzun Bluetooth özelliğini açın. Uygulama kısa mesajlara erişim istiyorsa buna izin verin. Şimdi Raspberry Pi’ye güç verin ve carface.py komut dosyasını çalıştırın . Bu komut dosyası çalıştığında, kamera yüzünüzü algılar ve yeni bir pencerede açar. Fotoğraf makinesi doğru yüzü algılarsa, Arduino’ya bir doğrulama sinyali gönderir. (Bakınız Şekil 11.)

    Şekil 11. Yüzün tanınması.

    Ardından, araç simgesine dokunarak aracı uygulamaya bağlayın.

    Şimdi Bluetooth HC 05’i seçin ve başarılı bağlantıdan sonra parmak izi simgesine dokunarak parolayı ve parmak izinizi girin. Arduino tüm işlemlerin doğru olduğunu tespit ederse, o zaman röle tetikler ve araba kontağını AÇIK konuma getirir. Yanlış şifre / parmak izi / yüz algılanırsa, araç kontağı KAPALI konuma getirilir ve uygulama, yetkisiz erişim hakkında bilgi vermek için sahibine bir uyarı mesajı gönderir. (Bakınız Şekil 12,13,14)

    Şekil 9. Final Uygulaması

    Şekil 15. Kimlik doğrulama hatası nedeniyle gönderilen mesaj

     

    https://drive.google.com/file/d/1ugPeTQ09SlPdBmiDrOkXPrCydlo02tth/view?usp=sharing