Lm35 için arama sonuçları

  • 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

  • Alternatif akım ( AC ) da Cihazı aşırı akımlara karşı Koruma Devresi

    Alternatif akım ( AC ) da Cihazı aşırı akımlara karşı Koruma Devresi

    Bu devre, bir elektrikli cihazdan akan AC akımını izler ve akım maksimum veya minimum eşik seviyelerinin üzerine çıktığında cihazı otomatik olarak kapatır. Cihaz belirtilen nominal akımdan çok yüksek veya çok düşük akım çekiyorsa, bu cihazda bir arıza olduğunu gösterir. Bu koruma, motorların cihazda veya ekipmanda kullanıldığı yerlerde son derece kullanışlıdır.

    Devre ve çalışma

    Cihaz muhafazasının devre şeması Şekil 1’de gösterilmiştir. Mikrodenetleyici (MCU) ATmega8A (IC1), op-amp LM358 (IC2), 5V voltaj regülatörü 7805 (IC3), 16 × 2 LCD (LCD1) iki BC547 (T1) ve 2N2222 (T2) transistörü, düşürücü transformatör (X1), 12V röle (RL1) ve diğer birkaç bileşen.

    1: Cihaz muhafazasının devre şeması

    Devre, LCD’de de görüntülenen akım değerini sürekli izleyerek cihazdan / ekipmandan akan AC akımını ölçer. Cihaz tarafından çekilen AC akımı, dairesel bir çekirdek üzerine çok sayıda tel sargısı olan akım trafosu CT1 kullanılarak ölçülür. İletkeni taşıyan AC akımı (faz, hat veya canlı kablo), içinden geçen akımla orantılı voltaj (veya EMF) üreten CT1 çekirdeğinden geçirilir. Üretilen voltaj, A ve B noktalarında mevcut olan AC’dir. Bu voltaj, R10 direnci, potmetre VR1 ve diyot D2 aracılığıyla bir birlik kazanç amplifikatörü olarak bağlanan op-amp IC2’ye beslenir.

    IC2 devresi, CT1’den alınan sinyallerin negatif yarısını ortadan kaldırır, böylece analogdan dijital dönüştürücüye (ADC) MCU’nun pim 27’sine yalnızca pozitif sinyaller beslenir. MCU’nun dahili ADC’si gerilimi sürekli olarak ölçer ve LCD1’de gösterilen tepe değerlerini kaydeder.

    Akım ayarlanan yüksek değerin üzerine veya ayarlanan düşük değerin altına düşerse devre açılır (veya röleyi kapatır). Yüksek veya düşük akım durumu yaklaşık 10 saniye devam ederse açma gerçekleşir. Bu, cihazı daha fazla hasara karşı korur.

    Yazılım

    Yazılım (cihazguard.c) C dilinde yazılmıştır. AVR Studio, ATmega8A MCU’yu programlamak için onaltılı kod (cihaz.hex) oluşturmak için kullanılabilir. Onaltılık kodu MCU’ya yazmak için herhangi bir uygun programlayıcı kullanabilirsiniz. (EFY Labs’ta onaltılık kodu ATmega8A’ya yazmak için ISP programcısı kullanıldı.)

    Gecikme, 60 değeri başka bir değere değiştirilerek aşağıda verilen kodda ayarlanabilir.

    #define MAX_L 60

    Kaynak Klasörü İndir

    İnşaat ve test

    Cihaz muhafazasının gerçek boyutlu PCB yerleşimi Şekil 2’de ve bileşen yerleşimi Şekil 3’te gösterilmiştir. Devreyi PCB’ye monte edin ve X1 transformatörünün 12V AC sekonderini PCB’ye bağlayın. 230V AC, anahtar S2, birincil X1, CT1 ve cihazı harici olarak uygun kablolar kullanarak bağlayın.

    Şekil 2: Cihaz muhafazasının PCB yerleşimi3: PCB için bileşen yerleşimi

    PCB ve bileşen yerleşim PDF’lerini indirin: buraya tıklayın

    Devre montajı tamamlandıktan sonra, uygun bir programlayıcı kullanarak cihazguard.hex dosyasını MCU’ya yazın / yazın. Ardından, MCU’yu PCB’ye monte edin. MCU için 28 pimli bir IC tabanı kullanılması önerilir. VR1 ve VR2’yi minimum, VR3’ü maksimum konumlarında tutun.

    Şimdi, cihazın faz / hat kablosunu CT1’den geçirin ve aşağıdaki Kalibrasyon bölümünde açıklandığı gibi bir pens metre kullanarak akımı ölçün. S2’yi kullanarak devreyi ve cihazı açın. RL1 rölesine küçük bir gecikmeyle enerji verilecek ve AC cihazı açılacaktır.

    ayarlama

    CT1 ve VR1’in bir ucunun topraklandığından emin olun. Mevcut bobinden sadece bir AC güç, faz veya akım (L) hattı geçmelidir.

    AC akım değeri LCD1’in ilk satırında görüntülenir. Başlangıçta, LCD1’de gösterilen değer doğru olmayabilir. LCD1, pens ampermetrede okunan değeri gösterene kadar VR1’i yavaşça ayarlayın.
    VR1’i IC1’in pim 24’ündeki voltaj düşük olana kadar (0V) ayarlayın ve VR3’ü IC1’in pim 25’indeki voltaj yüksek olana kadar (5V) ayarlayın. Ayarlama ve kalibrasyondan sonra pens ampermetreyi çıkarın.

    Röleyi tetiklemek için yüksek veya maksimum limiti ayarlamak için VR3’ü gereken maksimum akım limitine ayarlayın (örneğin, ilk satırda görüntülenen çalışma akımı değerinin 1,5 katı). Benzer şekilde, röleyi tetiklemek için düşük veya minimum limiti ayarlamak için VR2’yi gerekli minimum akım limitine ayarlayın (örneğin, çalışma akımının 0,5 katı). Şimdi devre kullanıma hazırdır.

    Değer yüksek veya düşük sınırı geçtikten sonra sesli uyarı bip sesi çıkarır ve ilgili LED (LED1 veya LED2) yanıp sönmeye başlar. Yanıp sönme 10 saniyeden fazla devam ederse, ilgili LED hızla yanıp söner ve röle kapanır, böylece cihaz veya ekipman korunur. Programı yeniden başlatmak için sıfırlama anahtarına S1 basın.

    Not. Akım trafoları, doğru şekilde ölçebilecekleri maksimum akımı gösteren 10A, 30A, vb.Gibi çeşitli kapasitelerde mevcuttur. Gerekli kapasiteden daha fazlasına sahip olanı seçin – tercihen çalışma akımı aralığının iki katı (veya daha fazlası). (Mevcut program maksimum 50A okuyabilir.)

    Dikkat

    230V AC güç kaynağı ile çalışırken dikkatli olunmalıdır.

     

    https://drive.google.com/file/d/16j6M2MnyCyKR5g2xMMEb0GtpgYuBC5G-/view?usp=sharing

  • Mikroişlemci ile Gerçek Zamanlı USB ye Veri Kayıt etmek

    Mikroişlemci ile Gerçek Zamanlı USB ye Veri Kayıt etmek

    Robson Benjamin tarafından

    PIC18F452 mikrodenetleyici (MCU), VNC1L-1A USB ana bilgisayar denetleyici yongası, DS1302 RTC yongası ve LCD kullanan USB tabanlı gerçek zamanlı veri kayıt sistemi sunulmaktadır. Sistem, veri ölçümünün zamanını ve süresini ayarlama esnekliğine sahiptir.

    Veri kaydediciler uzak veri toplama sistemleri için gereklidir ve genellikle alınan verileri depolamak için depolama ortamı gerektirir. Kalem sürücüleri gibi depolama ortamları, elde edilen verileri aktarmak için USB ana bilgisayar özelliğine sahip bir cihaz veya PC gerektirir. Genel amaçlı bir MCU’da USB ana bilgisayar özelliği yoktur. İşte USB ana bilgisayar işlevselliği sağlayan bir Vinculum çipli yeni bir veri toplama sistemi. Ayrıca, DS1302 yongası ve 4×4 tuş takımını kullanarak veri ölçümlerinin zamanını ve süresini ayarlayabilirsiniz.

    Gerçek zamanlı USB veri kayıt cihazının blok şeması Şekil 1’de gösterilmiştir. Yazarın prototip panosu Şekil 2’de gösterilmiştir.

    1: Gerçek zamanlı USB veri kaydedicisinin blok şemasıŞekil 2: Yazarın prototipi

    Devre ve çalışma

    Gerçek zamanlı USB veri kayıt cihazının devre şeması Şekil 3’te gösterilmiştir. 3.3V voltaj regülatörü MAX882 (IC1), sıcaklık sensörü LM35 (IC2), Vinculum ana bilgisayar kontrolörleri VNC1L-1A (IC3) ve PIC18F452 ( IC4), gerçek zamanlı, damlama şarj süresi tutma DS1302 çip (IC5), 16 × 2 likit kristal ekran (LCD1) ve diğer birkaç bileşen.

    PIC18F452 MCU veri toplama işlevselliği sağlar. VNCIL-1A, UART arabirimi üzerinden PIC18F452 ile arayüzlenmiştir.

    3: Gerçek zamanlı USB veri kaydedicisinin devre şeması

    VNC1L-1A

    İki USB bağlantı noktası ve birleşik seri UART, seri çevresel arabirim (SPI) veya FIFO arabirimi vardır. Pimler USB1DP ve USB1DM, USB Port-1’in sırasıyla D + ve D- USB veri sinyallerini taşır. Pimler USB2DP ve USB2DM, USB Port-2’nin sırasıyla D + ve D- USB veri sinyallerini taşır.

    Port-1, USB slave çevre birimlerini destekler (kullanılmaz). Port-2, USB flash sürücüler gibi BOMS (yalnızca toplu depolama) sınıfı cihazları destekler. VNC1L-1A ve PIC18F452 arasındaki iletişim için seri UART, SPI veya FIFO arayüzü, pimleri toprağa veya 3.3V’ye bağlayarak bir çift pim, ACBUS5 (pim 46) ve ACBUS6 (pim 47) kullanılarak seçilebilir.

    UART arayüzü, IC3’ün 46 ve 47 pinleri 47kΩ direnç üzerinden toprağa bağlanarak seçilir. ADBUS0 (pim 31) ve ADBUS1 (pim 32) sırasıyla TxD ve RxD sinyallerini taşır ve ADBUS2 (pim 33) ve ADBUS3 (pim 34) sırasıyla UART arayüzünün RTS # ve CTS # sinyallerini taşır.

    Vinculum, VNC1L-1A’nın farklı işlevlerini desteklemek için önceden derlenmiş birkaç standart ürün yazılımı sürümü sunar. Mevcut uygulama için, donanım yazılımı sürümü VDAP (disk ve çevre birimleri) kullanılır. Bellenim, VNC1A-1A’daki çip üzeri 64kB flash bellekten çalışır ve harici PIC MCU’nun komut izleme arabirimi aracılığıyla komut / veri göndermesine ve almasına izin veren bir komut monitörü içerir.

    Monitör, dizin işlemleri (dizin oluşturma, silme veya listeleme), dosya işlemleri (dosya oluşturma, açma, okuma, yazma, kapatma, silme veya yeniden adlandırma) ve hata ayıklama işlemlerini (bellenim sürümlerini tanımlama veya alma) gerçekleştirmek için DOS benzeri disk yönetimi komutlarını destekler . Ayrıca VNC1L-1A’ya flash bellek sürücüsünün takılmasını ve çıkarılmasını sağlayan komutlar içerir.

    Aygıt yazılımı USB bağlantı noktasına takılı bir flash sürücü algıladığında, UART arabiriminde DOS benzeri bir D: \> istemi gönderir. Flash sürücüye veri yazıldığında pim 18’e bağlı bir LED’i (LED2) yanıp sönmesi için kodlar üretir.

    Komut monitörü komut veya veri modunda çalışır. Komut modunda, VNC1L-1A monitör bağlantı noktasındaki kodları komut olarak yorumlar ve üzerinde çalışır. Veri modunda, verileri monitör bağlantı noktasından USB aygıtına geçirir. Başlangıçta, VNC1L-1A başladığında, komut modunda kalır. Daha sonra seri UART arayüzünün DTR # ve DSR # sinyallerini taşıyan VNC1L-1A pinleri ADBUS5 (pin 36) ve ADBUS6 (pin 37) sinyallerini verir ve çalışma modunu değiştirir. Mevcut başvuruda, VNC1L-1A yukarıda belirtilen pinlerin 3.3V ila 47kΩ arasına bağlanarak komut modunda çalışacak şekilde yapılmıştır.

    VNC1L-1A’nın ADBUS0 – ADBUS3, PROG #, RESET #, Vcc ve GND pinleri FTDI programcısı üzerinden programlama için kullanılır.

    Programlama sırasında CON4 ve CON5 konnektörlerindeki köprü bağlantılarını sökün, aksi takdirde 9 ve 10 pinleri 3.3V’a bağlanmalıdır.

    FTDI programlaması dahil Vinculum ana bilgisayar denetleyicisi hakkında daha fazla bilgi kaynak kodu ile birlikte source.efymag.com adresinde mevcuttur.

    Yazılım açıklaması

    PIC18F452’nin pim 2 ve 3’üne düzenli aralıklarla uygulanan iki analog voltajı örneklemek ve VNC1L-1A’ya bağlı USB flash sürücüdeki bir dosyaya veri kaydetmek için bir ürün yazılımı programı burada açıklanmaktadır. Yazılım CCS C derleyicisi kullanılarak yazılmıştır ve PIC18F452 flash belleğe yüklenmiştir.

    Yazılım, aşağıdaki görevleri yerine getiren modülleri içerir:

    UART iletişimini senkronize etme

    VNC1L-1A ve PIC18F452 arasındaki UART iletişimi, PIC18F452’den gönderilen E ve e karakterlerinin yankıları alınarak sağlanır.

    Veri Al Mevcut kesme (INT_RDA) işleme

    Kesme, UART arayüzü üzerinden PIC18F452’nin alma tamponunda VNC1L-1A’dan bir bayt alındığında PIC18F452’de üretilir. Program karakteri okur ve USB flash sürücüye gönderir.

    Analog kanalları örnekleme

    Bellenim, analog kanallar 0 ve 1’i örneklemek için kodlar içerir. Ayrıca, CCS C Derleyicisi kanal seçmek ve dönüştürülmüş veri almak için çip üzerindeki ADC’yi yapılandırmak için dahili işlevlere sahiptir. Bu fonksiyonlar program tarafından analog kanalları örneklemek için kullanılabilir.

    USB flash sürücüye veri yazma kodları

    Ürün yazılımı, flash sürücüde Results.dat dosyası oluşturmak, dosyaya yirmi değer örneklenmiş veri yazmak ve dosyayı kapatmak için komutlar göndermek için kodlar içerir.

    RTC ve kullanıcı arayüzü

    Mevcut tasarımda, giriş için klavye ve çıkış süresini izlemek için çıkış ekranı için LCD ile bir kullanıcı arayüzü sağlanmıştır. DS1302 yongası sisteme gerçek zamanlı veri sağlar. DS1302’nin bir MCU ile arabirimi, senkron seri iletişim kullanılarak basitleştirilir. Yonga etkinleştirme (CE), G / Ç (veri hattı) ve seri saat (SCLK) sinyalleri için DS1302 ile iletişim kurmak için sadece üç kablo gereklidir.

    Okuma veya yazma işlemi sırasında, bu pimin toprakta dahili 40kΩ aşağı çekilme direnci olduğundan CE yüksek olmalıdır. SCLK, seri arayüzdeki veri hareketini senkronize etmek için kullanılır. Dahası, DS1302 çok düşük güçte çalışacak şekilde tasarlanmıştır, böylece verileri tutar ve 1µW’dan daha düşük güç tüketimi ile bilgi alır.

    CCS C Derleyici gerçek zamanlı saat DS1302 ve 4×4 klavye için sürücü sağlar. Ayrıca MCU, Port B pimleri için yazılım komutları kullanılarak etkinleştirilebilen dahili çekme dirençlerine sahiptir. Bu nedenle, MCU’nun Port B pimleri ile klavye arasındaki bağlantı doğrudan verilir. Dakika, saat, tarih ve gün gibi zaman aralığını ayarlama yetkisine sahiptir, böylece yeterli güç sağlanırsa verilerin tüm gün boyunca sürekli olarak kaydedilmesi sağlanır. Zaman ayarları LCD’de izlenebilir1.

    İnşaat ve test

    Elde tutulan veri kaydedici için bir PCB düzeni Şekil 4’te ve bileşen düzeni Şekil 5’te gösterilmiştir. Devreyi PCB’ye monte edin.

    4: Gerçek zamanlı USB veri kaydedicisinin gerçek boyutlu PCB düzeni5: PCB için bileşen yerleşimi

    PCB ve bileşen yerleşim PDF’lerini indirin: buraya tıklayın

    PCB montajı tamamlandığında, DataLogger.hex hex kodunu uygun bir programlayıcı kullanarak PIC18F452’ye yazın. Programladıktan sonra, programlayıcıdan çıkarın ve PCB’ye yerleştirin. Devreniz artık kullanıma hazırdır.

    CON2 konektörüne bir kalem sürücü takın. Devreye güç vermek için 5V DC’yi CON1 üzerinden bağlayın. LED1 ve LED2, bir kalem sürücü bağlanana kadar iki saniye boyunca yanıp söner. Sıcaklık sensörü LM35 otomatik olarak ortam sıcaklığını algılar. PIC18F452’nin pim 19una bağlı LED3’ün yanması sıcaklık verileri ölçümünün devam ettiğini gösterir.

    PIC18F452’nin pim 2’sine bağlanan 10 kilo-ohm’luk bir potmetre (VR1) önceden tanımlanmış bir okuma belirler (örneğin, 2V). Yani, biri LM35 ve diğeri VR1 ayarıyla olmak üzere iki okuma alınır ve USB sürücüye gönderilir.

    Ayarlar ve test

    Zaman ayarları için 4 × 4 klavyeyi CON3’e bağlayın. Klavyeden girişleri beslemek için aşağıda bir örnek verilmiştir. Devreyi test etmek için aşağıdaki adımları izleyin.

    1. Tüm devre bağlantılarını kontrol edin
    2. Devre kartını 5V, 500mA DC güç kaynağı ile bağlayın
    3. LCD’de Başlatılıyor mesajı görüntülenir. LCD’de Başlat mesajı için 1’e basın görüntüleninceye kadar biraz bekleyin1
    4. Klavyede 1 tuşuna basın
    5. Yıl 19’a basın
    6. Aylık 09’a basın
    7. Tarih için 08 tuşuna basın
    8. Basın 01 hafta içi (Pazar)
    9. Saat için 08 tuşuna basın
    10. Dakika 30’a basın
    11. Başlangıç ​​saati için 08 tuşuna basın
    12. 32 başlangıç ​​dakikasına basın
    13. Bitiş saati için 08 tuşuna basın
    14. Bitiş dakikası için 35 tuşuna basın
    15. Saat boyunca 00 tuşuna basın
    16. Dakika süre 01’e basın

    Yukarıdaki örnekte, veri kaydı 8 Ekim 30, Pazar, 8 saat 30 dakika, başlar. Gerçek veri kaydı 8 saat 32 dakikadan başlar. İşlem 8 saat 35 dakikada durur. Ölçüm süresi bir saat içinde (bu durumda 00) ve her dakika güncelleme döngüsü ile.

    Kalem sürücüsünü karttan çıkarın. Artık Microsoft Excel veya başka bir uyumlu program kullanarak kayıtlı verileri USB’den açabilirsiniz. Excel kullanılarak açılan Kayıtlı Veri Sonuçları dosyası Şekil 6’da gösterilmiştir. İlk sütun voltajı, ikinci sütun sıcaklık değerlerini gösterir. Prototip panosu Scandisk 16GB, Sony 32GB ve HP 16GB / 32GB ile test edildi.

    6: Sonuç Excel formatında

    Böylece, Vinculum ana bilgisayar denetleyicisini kullanan USB tabanlı veri toplama sistemi, sinyali önceden tanımlanmış zaman aralıklarında örnekler ve verileri bir flash sürücüde depolar.

    , Çıktısı, verilere hızlı erişimi kolaylaştıran Microsoft Excel formatında kaydedilir. Ayrıca, Excel biçimi verilerin daha ileri analizini kolaylaştırır.

    Kaynak kodunu indirmek için:  buraya tıklayın

     

     

     

    https://drive.google.com/file/d/13t4wffuWoSCq1LbQeZG-Mx38e4lH1XdV/view?usp=sharing

  • Arduino Kullanarak Sıcaklık durumuna göre Fan Hızı Kontrolü ve İzlenmesi

    Arduino Kullanarak Sıcaklık durumuna göre Fan Hızı Kontrolü ve İzlenmesi

    Açıklama:

    Bu proje, gereksinime göre bir elektrikli fanın hızını kontrol eden bağımsız bir otomatik fan hızı kontrol cihazıdır. Gömülü teknolojinin kullanılması, bu kapalı döngü geri besleme kontrol sistemini verimli ve güvenilir hale getirir. Mikrodenetleyici (MCU) ATMega8 / 168/328 , dinamik ve daha hızlı kontrol sağlar ve LCD , sistemi kullanıcı dostu hale getirir. Algılanan sıcaklık ve fan hızı seviyeleri aynı anda LCD panelde görüntülenir.
    Proje çok kompakttır ve sadece birkaç bileşen kullanır. Klimalar, su ısıtıcıları, kar eriticiler, fırınlar, ısı eşanjörleri, karıştırıcılar, fırınlar, inkübatörler, termal banyolar ve veteriner çalışma masaları dahil olmak üzere çeşitli uygulamalar için uygulanabilir. Proje enerji / elektrik tasarrufu sağlayacaktır.
    Devre ve çalışma
    Şekil 1: Arduino kullanarak sıcaklık tabanlı fan hızı kontrolü ve izlemenin devre şeması
    Sıcaklık fanı hız kontrolü ve izlemesinin devre şeması Şekil 1’de gösterilmiştir. Arduino Uno kartı (Board1), 16 × 2 LCD (LCD1), LM35 (IC1) sıcaklık sensörü ve diğer birkaç bileşen etrafında inşa edilmiştir .
    Arduino, tüm fonksiyonları kontrol ettiği için devrenin merkezindedir. LM35, çıkış voltajı Santigrat (Santigrat) sıcaklığına doğrusal orantılı olan hassas bir entegre devredir. -55 ° C ila 150 ° C sıcaklık aralığında çalışacak şekilde derecelendirilmiştir. + 10.0mV / Santigrat doğrusal ölçek faktörü vardır.
    Şekil 2: Arduino IDE’deki kaynak kodunun ekran görüntüsü
    Sıcaklık sensörü LM35 sıcaklığı algılar ve bir analog-dijital dönüştürücü (ADC) aracılığıyla MCU’ya uygulanan bir elektrik (analog) sinyaline dönüştürür. Analog sinyal ADC tarafından dijital formata dönüştürülür. Fanın sıcaklık ve hızının algılanan değerleri LCD’de görüntülenir. Arduino kullanarak sıcaklık ve izleme Arduino’daki MCU fan hızını kontrol etmek için motor sürücüsünü çalıştırır.
    Fan hızı kontrol tekniği
    Fan devrini ayarlamak için görev döngüsü değişen, genellikle yaklaşık 30Hz aralığında bir düşük frekanslı darbe genişlik modülasyonu (PWM) sinyali kullanılır. Burada ucuz, tek, küçük geçişli bir transistör kullanılabilir. Geçiş transistörü bir anahtar olarak kullanıldığından etkilidir.
    Bununla birlikte, bu yaklaşımın bir dezavantajı, sinyalin darbeli doğası nedeniyle fanı gürültülü yapabilmesidir. PWM dalga formunun keskin kenarları, fanın mekanik yapısının hareket etmesine (kötü tasarlanmış bir hoparlör gibi) kolayca duyulabilir.
    İnşaat ve test
    Şekil 3: Arduino kullanarak sıcaklık tabanlı fan hızı kontrolü ve izleme devresinin gerçek boyutlu PCB modeli
    Sıcaklığa dayalı fan hızı kontrolü ve izleme devresi için tek taraflı bir PCB Şekil 3’te ve bileşen düzeni Şekil 4’te gösterilmektedir. Devreyi PCB’ye monte edin.
    4: PCB’nin bileşen yerleşimi
    CON2 ve CON3, Board1’i (Arduino UNO board) harici konektörler üzerinden bağlamak için kullanılır. 12V DC ile çalışan fanı çalıştırmak için bir 12V pil kullanılır.
    PCB ve Bileşen Düzeni PDF’lerini indirin: buraya tıklayın
    Yazılım
    Otomatik sıcaklık kontrol cihazı ve monitör devresi yazılımı Arduino programlama dilinde yazılmıştır. Arduino Uno, Arduino IDE yazılımı kullanılarak programlanır .
    Arduino Uno’daki ATmega328P, kullanıcıların harici bir donanım programcısı kullanmadan yeni bir kod yüklemelerine izin veren önceden programlanmış bir önyükleyici ile birlikte gelir.
    Arduino kartını PC’ye bağlayın ve Arduino IDE’de doğru COM portunu seçin. Programı derleyin (çizim). Ardından Arduino IDE’deki Tools Board menüsünden doğru kartı seçin ve çizimi (abfc.ino) standart USB bağlantı noktası üzerinden Arduino’ya yükleyin.

    unknown arduino_fan_kontrol.pdf

  • Arduino RF Alıcı verici Devresi ile yapılmış sıcaklık değerini uzaktan kablosuz okuma

    Arduino RF Alıcı verici Devresi ile yapılmış sıcaklık değerini uzaktan kablosuz okuma

    Proje adı: Arduino Uno  RF 315/330/433 MHz XD-FST / XD-RF-5V Verici / Alıcı, LCD1602 I2C, LM35
    Etiketler: Arduino, Arduino Uno, RF 315/330/433 MHz XD-FST / XD-RF-5V Verici / Alıcı, arasında iletişim yolu, VirtualWire, Sanal Tel, LM35, LM35 sıcaklık sensörü, Arduino panoları arasında 433 MHZ RF iletişimi MHZ RF verici ve Arduino ile alıcı kullanarak sensör verilerinin iletilmesi ve alınması
    Ataşmanlar: alıcı kroki , verici kroki , kütüphane 1, kütüphane2
    Bu projede, bu parçalar gerekli ( Değerli ziyaretçiler Sen parçaların linklere proje satın tıklayarak desteklemek ve onları satın ya da diri bu web sitesini tutmamıza bağış yapabilirsiniz teşekkür ederiz.. ):
    1. Arduino Uno R3 ( Arduino’nun diğer sürümünü de kullanabilirsiniz) 2 adet

    2. Arduino IDE (siz indirebilirsiniz burada )
    3. Bağlantı kabloları FM, MM

    4. LM35 sensörü 1 adet

    5. Direnç 1 KOhm 1 adet

    6. RF 315/330/433 MHz XD-FST / XD-RF-5V Verici / Alıcı modülü 1 adet

    7. Breadboard 1 adet

    8. LCD 1602 I2C modülü 1 adet

    Genel
    433 MHZ RF üzerinde iletişim kurmak, LM35 sıcaklık sensörünü göndermek ve almak için RF 315/330/433 MHz XD-FST / XD-RF-5V Verici / Alıcı modülü ve VirtualWire kütüphanesi ile Arduino kartının (UNO) nasıl kullanılacağını öğreneceğiz LCD 1602 I2C modül ekranında gösterin.
    Bu proje şunları hedefliyor:
    • İki Arduino Uno kartı arasında 433 MHZ RF iletişimi kurun;
    • Arduino Uno # 1 kartına bağlı LM35 sensöründen sıcaklığı okuyun ve Seri monitörde görüntüleyin;
    • LM35 sensöründen başka bir Arduino Uno # 2 kartına sıcaklık gönderin;
    • Arduino Uno # 2 kartının Seri Monitöründe ve LCD 1602 I2C modülü ekranında alınan sıcaklığı yazdırın.
    LM35 sensörünü anlama
    LM35, çıkışı sıcaklıkla orantılı (oC cinsinden) olan hassas bir IC sıcaklık sensörüdür. Sensör devresi sızdırmazdır ve bu nedenle oksidasyona ve diğer işlemlere maruz kalmaz. LM35 ile sıcaklık, bir termistörden daha doğru ölçülebilir. Aynı zamanda düşük kendi kendine ısınmaya sahiptir ve durgun havada 0,1 oC’den fazla sıcaklık artışına neden olmaz.
    Çalışma sıcaklığı aralığı -55 ° C ila 150 ° C’dir. Çıkış voltajı, ortam sıcaklığındaki her oC yükseliş / düşüşüne yanıt olarak 10mV kadar değişir, yani ölçek faktörü 0.01V / oC’dir.
    Veri sayfasını burada bulabilirsiniz .
    LCD 1602 I2C modülünü anlama
    Bununla ilgili daha fazla bilgiyi buradan edinebilirsiniz .
    RF 315/330/433 MHz XD-FST / XD-RF-5V Verici / Alıcıyı Anlama
    433MHz RF Verici

    Bu çok az verici oldukça basittir. Modülün kalbi 433.xx MHz işlemi için ayarlanmış SAW rezonatördür. Bir anahtarlama transistörü ve birkaç pasif bileşen de var.
    DATA girişine bir YÜKSEK mantık uygulandığında, osilatör 433.xx MHz’de sabit bir RF çıkış taşıyıcı dalgası üretmeye çalışır ve DATA girişi mantık DÜŞÜK olarak alındığında osilatör durur. Bu teknik Genlik Kaydırma Anahtarlaması olarak bilinir.
    433MHz RF Alıcı

    Vericiden alınan taşıyıcı dalgayı yükseltmek için RF ayarlı bir devre ve birkaç OP Amperden oluşan basit bir alıcı modülüdür. Amplifiye edilmiş sinyal ayrıca , kod çözücünün daha iyi kod çözülmüş çıkış ve gürültü bağışıklığı sağlayan bir dijital bit akışına “kilitlenmesini” sağlayan bir PLL’ye (Faz Kilit Döngüsü ) beslenir .
    Genlik Kaydırma Anahtarlaması (ASK)
    Dijital verileri radyo üzerinden göndermek için, bu modüller Genlik Kaydırma Tuşlaması veya ASK adlı bir teknik kullanır. Genlik Kayması Anahtarlamasında, gelen dalgaya yanıt olarak taşıyıcı dalganın genliği (yani seviye) (433MHz sinyali) değiştirilir.
    Bu, AM radyoya aşina iseniz aşina olabileceğiniz analog genlik modülasyonu tekniğine çok benzer. Bazen ikili genlik kaydırmalı anahtarlama olarak adlandırılır, çünkü yalnızca iki düzeyimiz vardır. Bunu bir AÇMA / KAPAMA anahtarı olarak düşünebilirsiniz.
    Dijital 1 için – Bu, taşıyıcıyı tam güçte çalıştırır.
    Dijital 0 için – Bu, taşıyıcıyı tamamen keser. Genlik modülasyonu şöyle görünür:

    Genlik Kaydırma anahtarlamanın uygulanması çok basit olma avantajına sahiptir. Kod çözücü devresini tasarlamak oldukça basittir. Ayrıca ASK, FSK (Frekans Kaydırma Anahtarlaması) gibi diğer modülasyon tekniklerinden daha az bant genişliğine ihtiyaç duyar. Bu ucuz olmanın nedenlerinden biridir.
    Bununla birlikte dezavantajı, ASK’nin diğer radyo cihazlarından gelen parazitlere ve arka plan gürültüsüne duyarlı olmasıdır. Ancak veri iletiminizi nispeten düşük bir hızda tuttuğunuz sürece, çoğu ortamda güvenilir bir şekilde çalışabilir.
    Burada onlar hakkında daha fazla bilgi edinebilirsiniz .
    LM35 sensörünün sinyalleri ve bağlantıları .

    RF 315/330/433 MHz XD-FST / XD-RF-5V Verici / Alıcının sinyalleri ve bağlantıları
    Verici (TX) pimleri:
    ATAD (DATA) – ilk Arduino kartı tarafından kodlanan çıkış sinyali
    GND – toprağa bağlanmalı, (-) güç kaynağı
    VCC – + 3V – + 12V güç kaynağına bağlanmalıdır
    Alıcı (RX) pimleri:
    VERİ – iki pim vardır, DATA pimlerinden yalnızca birini kullandığınız sürece, hangisinin ikinci Arduino kartına bağlanması önemli değildir.

    GND – ikinci Arduino kartı topraklama pimine bağlanmalıdır

    VCC – ikinci Arduino kartı 5V pinine bağlanmalıdır.
    LCD 1602 I2C modülünün sinyalleri ve kontakları
    LCD 1602 modülünün arkasında görebileceğiniz gibi 4 bağlantı vardır: GND (-), VCC (+ 5V), Seri Veri Hattı (SDA) ve Seri Saat Hattı (SCL).
    kablolama
    433MHz RF Verici Arduino Uno
    GND GND
    VCC 5V
    VERİ ÇIKIŞI D11
    A0, LM35 sensör veri pinine bağlı
    GND LM35 sensörüne bağlı GND pimi
    5V LM35 sensörü güç kaynağı pimine bağlı
    433MHz RF Alıcı Arduino Uno
    GND GND
    VCC 5V
    VERİ GİRİŞİ D12
    LCD1602 I2C modülüne bağlı SDA SDA pimi
    LCD1602 I2C modülüne bağlı SCL SCL pimi

    Adım Adım talimat
    1. 433 RF Ttransmitter ve 433 RF Alıcı için kablolama yapın.
    2. Bu projedeki her iki bağlantı noktasını da izlemek istiyorsanız, Arduino IDE’yi yüklemeniz ve Arduino IDE’nin taşınabilir bir sürümünü indirmeniz gerekir ( zip dosyasını indirin ve Taşınabilir dizininde sıkıştırın ). Verici ve alıcı çizimlerini aynı anda yükleyebilecek ve farklı bağlantı noktalarını izleyebileceksiniz.
    3.
    4.
    5. Arduino IDE’yi açın.
    6. Senin Tak 433 MHZ RF verici ile Adruino Uno kurulu PC USB bağlantı noktasına takın.
    7. Doğru kartı ve com bağlantı noktasını seçin.
    8.
    9. Derlemek ve yüklemek transmittersketch için sizin 433 MHZ RF verici ile Adruino Uno kurulu .
    10. Arduino IDE taşınabilir sürümünü açın.
    11. Senin Tak 433 MHZ RF alıcısı ile Adruino Uno kurulu PC USB bağlantı noktasına takın.
    12. Doğru kartı ve com bağlantı noktasını seçin.
    13.
    14. I2C adresinizi bulun. Her cihazın komutları kabul etmek veya mesaj göndermek için kullandığı bir I2C adresi vardır. Çizimi http://playground.arduino.cc/Main/I2cScanner adresinden yükleyin ve kullanmak için talimatları izleyin. Çizim yüklendikten sonra Seri monitör penceresini açarak, Arduino yanıt arayan adres aralığını tarayacaktır. Belgeler 0x27 olduğunu söylemesine rağmen, bu tarayıcı farklı algılayabilir (bizim durumumuzda 0x3F )
    15. Değiştirme receiversketch (an aşağıdaki kroki kullanabilir), yukarıdaki ekleri: satır LiquidCrystal_I2C lcd ( 0x3F , 2 , 1 , 0 , 4 , 5 , 6 , 7 , 3 , POZİTİF ) ( bakınız bölüm Kalın olarak işaretlenmiş )
    16. Derleme ve yükleme receiversketch senin için senin 433 MHZ RF alıcısı ile Adruino Uno kurulu .
    17. Seri Monitörü 9600 baud hızında açın (COM5 ve COM8 portlarımız vardı). Aynı sensör verilerinin dağıtıldığını göreceksiniz. 433 mhz RF iletişiminin başarıyla kurulduğu anlamına gelir.
    18. LCD 1602 I2C modülünün sıcaklık değerlerini de ekranda göreceksiniz.
    19.
    20.
    kod
    Bu proje için iki farklı kod yazacağız. Kodlardan biri vericiyi kontrol etmek, diğeri ise alıcıyı kontrol etmektir. Veri göndermek ve almak için VirtualWire kütüphanesini kullanacağız .
    Kodun arkasındaki algoritma basittir. Verici için LM35 sıcaklık sensöründen Santigrat cinsinden sıcaklığı ve Fahrenheit cinsinden sıcaklığı alın, RF vericisi aracılığıyla alıcıya gönderin ve Seri Monitörde görüntüleyin. Alıcı için, RF Alıcı modülünü ve Seri Monitörde ve LCD1602 I2C modül ekranında ekran kullanarak Celsius cinsinden sıcaklığı ve verici tarafından gönderilen Fahrenheit değerleri cinsinden sıcaklığı alın.
    Verici kodu
    VirtualWire kütüphanesini ekleyerek başlıyoruz. Bundan sonra, LM35 sensörünüzün bağlı olduğu Arduino Uno # 1’in pimini beyan ederiz. Daha sonra, veri iletim pinimiz olarak kullanılacak olan Arduino Uno # 1’in pimini (RF verici modülünün veri pinine bağlı olan) gösteririz ve verileri göndermek için kullanılacak bir yapı paketi oluştururuz. Ardından, paketin türünü tanımlarız.
    In boşluk kurulum () biz RF modülü başlatmak için TX pimi ve diğer parametrelerini ayarlamak fonksiyonu.
    Gelen void döngü () biz Fahrenheit Celsius sıcaklık ve sıcaklık elde kullanılarak seri Monitör görüntülemek fonksiyonu okuma sensör fonksiyonu. Elde edildikten sonra vw_send () işlevi kullanılarak gönderilen veriler . Veriler arasında bir aralık oluşturmak ve birinin diğerinden önce gönderilmesini sağlamak için 2 saniyelik bir gecikme süresi uygulanır.
    Alıcı kodu
    VirtualWire ve NewliquidCrystal kütüphanesini ekleyerek başlıyoruz. Ardından, RF alıcı modülünün veri pininin bağlı olduğu Arduino Uno # 2’nin pimini ( alma_pin ) beyan ederiz ve sıcaklıkC ve sıcaklıkF değerlerini tutmak için karakter değişkenleri oluştururuz .
    Verici kodundakine benzer bir yapı paketi oluşturuyoruz. Ardından, paketin türünü tanımlarız.
    In boşluk kurulum () biz RF alıcı modülü bit hızını ayarlama ve alıcı PLL başlayan başlatmak ve LCD tanımlamak fonksiyonu.
    In boşluk döngü () fonksiyonu bir mesaj kullanılarak alınıp alınmadığını kontrol ederek başlayın vw_have_message () fonksiyonu. Bir mesaj alındıysa, sıcaklığı Santigrat olarak ve sıcaklığı Fahrenheit verilerinden çıkarırız ve Seri Monitörde ve LCD1602 I2C modülü ekranında görüntüleriz.
    özet
    433 MHZ RF üzerinde iletişim kurmak, LM35 sıcaklık sensörü verilerini göndermek ve almak için RF 315/330/433 MHz XD-FST / XD-RF-5V Verici / Alıcı modülü ve VirtualWire kütüphanesi ile Arduino kartının (UNO) nasıl kullanılacağını öğrendik LCD 1602 I2C modül ekranında gösterin.
    Kütüphaneler:
    • Bu proje açıklamasının başlangıcında ekli tüm kütüphaneler.
    • VirtualWire kütüphanesi dahildir.
    VirtualWire, ASK (genlik kaydırmalı anahtarlama) kullanarak, kablosuz üzerinden UDP gibi, adresleme, yeniden iletim veya onaylama olmadan kısa mesaj gönderme özellikleri sağlayan bir Arduino kütüphanesidir. Bir dizi ucuz radyo vericisi ve alıcısını destekler.
    Bu kütüphane kolayca veri “bayt” ve dize göndermek ve almak için izin
    VirtualWire, ASK (genlik kaydırmalı anahtarlama) kullanarak kablosuz üzerinden UDP gibi adresleme, yeniden iletim veya onaylama olmadan kısa mesaj gönderme özellikleri sağlayan bir Arduino kütüphanesidir. Bir dizi ucuz radyo vericisi ve alıcısını destekler.
    Bu kütüphane kolayca veri “bayt” ve dize göndermek ve almak için izin verir. PC’nizdeki kütüphaneleri indirin, sıkıştırın ve ekleyin : örneğin C: \ Users \ toshiba \ Documents \ Arduino \ library . Bu bağlantıya PC’nizde yüklü olan Adruino IDE programının Tercihleri bölümünde ulaşabilirsiniz. Bununla ilgili daha fazla bilgiyi buradan edinebilirsiniz .
    • – Biz kütüphaneyi kullandık NewliquidCrystal_1.3.4.zip için klasörün adını değiştirdi, biz indirilen, Unzipped LiquidCristal örneği için, bizim PC kütüphanelerine ve katma \ Kullanıcılar \ toshiba \ Documents \ Arduino \ kütüphaneler: C . Bu bağlantıya PC’nizde yüklü olan Adruino IDE programının Tercihleri bölümünde ulaşabilirsiniz . Bu konumda zaten LiquidCristal klasörünüz varsa – bu klasörü ve sizin yaptığınız klasörü bu konuma silin.
    Sketch:

    unknown arduino_rf_alici_verici.pdf——indir

    • Bu projenin başlangıcındaki eke bakın