İçindekiler:

Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı: 10 Adım (Resimlerle)
Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı: 10 Adım (Resimlerle)

Video: Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı: 10 Adım (Resimlerle)

Video: Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı: 10 Adım (Resimlerle)
Video: Arduino Current Meter, Voltage Meter Circuit. DIY Multimeter 2024, Temmuz
Anonim
Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı
Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı
Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı
Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı
Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı
Multimetre/Arduino/pfodApp Kullanarak Yüksek Doğrulukta Uzaktan Veri Kaydı

Güncellendi 26 Nisan 2017 Devre ve kart 4000ZC USB metre ile kullanım için revize edildi.

Android kodlaması gerekmez

Bu talimat, Arduino'nuzdan çok çeşitli yüksek doğrulukta ölçümlere nasıl erişildiğini ve ayrıca kayıt ve çizim için uzaktan nasıl gönderildiğini gösterir. Yüksek Hızlı Veri Günlüğü (2000 örnek/sn) için bu talimata bakın, Arduino/GL AR150/Android/pfodApp kullanarak Uzaktan Yüksek Hızlı Veri Günlüğü

Arduino'nun içine yerleştirilmiş AtoD dönüştürücünün doğruluğu zayıf, tipik olarak +/-%10 ve çok sınırlı aralık, tipik olarak sadece 0 ila 5V DC volt. Basit bir devre ve kütüphane kullanarak Arduino'nuzu optik olarak izole edilmiş bir RS232 bağlantılı bir multimetreden yüksek doğrulukta otomatik aralıklı ölçümlerle besleyebilirsiniz. Çiziminiz için mevcut ölçümlere sahip olmak, çıktıları değerlere göre kontrol etmenizi sağlar. Bu eğitim ayrıca, ölçümün WiFi, Bluetooth, Bluetooth Low Energy veya SMS yoluyla, pfodApp kullanarak görüntüleme, günlüğe kaydetme ve çizim için bir Android cep telefonuna uzaktan gönderilmesini de kapsar.

Bu talimat, çok çeşitli iletişim kalkanları, Ethernet, WiFi, Bluetooth V2 (klasik), Bluetooth LE veya SMS ile eşleştirebileceğiniz bir Arduino Mega2560 5V kartı kullanır. Burada sunulan arayüz donanımı ve kütüphanesi, 3.3V Arduino uyumlu kartlarla da kullanılabilir. Mega2560'ın yanı sıra, UNO ve Ehternet kalkanı, bir ESP8266 taban kartı (tek başına), Arduino 101 gibi entegre Bluetooth Düşük Enerjili bir kart veya iletişime bağlanan kartlar gibi çok çeşitli diğer kartları kullanabilirsiniz. RedBear BLE kalkanı ve Adafrut'un Bluefruit SPI kartları gibi SPI kullanan alt sistem. pfodDesignerV2 tüm bu kart kombinasyonlarını destekler ve onlar için kod üretir. Sınırlayıcı koşul, bu Multimetre RS232 kalkanına bağlanmak için ücretsiz bir Donanım Serinizin olması gerektiğidir.

Burada sunulan devre ve kod, bir dizi multimetre ile çalışır. Digitek TD-4000ZC olarak da bilinen Tekpower TP4000ZC, kolayca bulunabilen, ucuz bir modeldir. Bu devre ve kütüphane ile çalışan multimetreler arasında Digitek DT-4000ZC, Digitech QM1538, Digitech QM1537, Digitek DT-9062, Digitek INO2513, Digitech QM1462, PeakTech 3330, Tenma 72-7745, Uni-Trend UT30A, Uni-Trend UT30E, Uni -Trend UT60E, Voltcraft VC 820, Voltcraft VC 840

Aşama 1:

Bu öğreticinin iki bölümü vardır:

İlk kısım, multimetrenin donanım arayüzünü ve bir Arduino Mega kullanan kod kitaplığını kapsar. Sadece Arduino'nuza ölçüm yapmak istiyorsanız, ihtiyacınız olan tek şey bu.

İkinci bölüm, ölçümün görüntülenmesi, kaydedilmesi ve çizilmesi için uzak bir Android cep telefonuna gönderilmesini kapsar. Bu örnekte bir Bluetooth kalkanı kullanacağız ve pfodDesignerV2 kullanarak temel çizimi oluşturacağız, ancak pfodDesignerV2 kullanarak WiFi, Ethernet, Bluetooth Düşük Enerji ve SMS bağlantıları için de kod oluşturabilirsiniz. Daha sonra kodu tamamlamak için multimetre kitaplığı temel çizime eklenir. Okumayı görüntülemek, günlüğe kaydetmek ve çizmek için Android kodlaması gerekmez. Her şey Arduino kodunuzdan kontrol edilir.

Bu proje ayrıca çevrimiçi olarak www.pfod.com.au adresinde mevcuttur.

Multimetrenin uzaktan baş üstü ekranı için, Alain'in bu talimatına bakın, My Multimeter için Arduino Data Glasses by Alain.

Adım 2: Multimetre

multimetre
multimetre

Bu eğitimde kullanılan multimetreler ucuz (~US40) Tekpower TP4000ZC (Digitek DT-4000ZC olarak da bilinir) ve artık satılmayan eski Digitech QM1538'dir. Bu sayaçların ikisi de görsel olarak aynıdır ve ölçümün aynı RS232 kodlamasını kullanır.

Burada Tekpower TP4000ZC teknik özellikleri:-DC Voltaj: 400mV/4/40/400V ±0.5%+5, 600V ±0.8%AC Voltaj: 4/40/400V ±0.8%+5, 400mV/600V ±1.2%+ 5DC Akım: 400/4000μA ±2,0%+5, 40/400mA ±1,5%+5, 4/10A ±2%+5AC Akım: 400/4000μA ±2,5%+3, 40/400mA ±2%+5, 4 /10A ±%2,5+5Direnç: 400Ω/4/40/400kΩ/4MΩ ±%1+5, 40MΩ ±%2+5Kapasitans: 40nF ±3,5%+10, 400nF/4/40μF ±%3+5, 100μF ± %3,5+5Frekans: 10Hz-10MHz ±%0,1+5Çalışma Döngüsü: %0,1-%99,9 ±2,5%+5Sıcaklık: 0oC - +40oC ±3oC, -50oC - +200oC±0,75 ±3oC, +200oC - +750oC ± %1,5 ±3oC, Dahili termokupl probu ile Çözünürlük 0.1oC.

Multimetrenin RS232 bağlantısı tek yönlüdür ve multimetrenin ayarlarını uzaktan değiştiremezsiniz, bu nedenle ölçüm türünü manuel olarak seçmeniz gerekir. Ancak sayaç otomatik olarak değişir ve Voltaj ve Akım ayarları hem AC hem de DC'yi işler.

Adım 3: RS232 Arayüz Donanımı

RS232 Arayüz Donanımı
RS232 Arayüz Donanımı
RS232 Arayüz Donanımı
RS232 Arayüz Donanımı
RS232 Arayüz Donanımı
RS232 Arayüz Donanımı

İki arayüz var. Daha yeni Digitek DT-4000ZC ve Tekpower TP40000ZC ölçüm cihazları bir USB kablosuyla birlikte gelir. Eski Digitek QM1538'e bir RS232 9pin D bağlantı kablosu sağlanmıştı. Yukarıdaki devre (pdf versiyonu), bir Arduino RX seri pinini sürmek için multimetrenin opto kuplörünün nasıl bağlanacağını gösterir. Not: Bu devre, Digitek DT-4000ZC ve Tekpower TP40000ZC sayaçları için başka bir koruma direnci olan R2 eklemek üzere güncellenmiştir. Bu direnç, yukarıda gösterilen 9pin D konektör kartına dahil edilmemiştir.

Digitek DT-4000ZC ve Tekpower TP40000ZC

Digitek DT-4000ZC ve Tekpower TP40000ZC için erkekten erkeğe 3,5 mm ses kablosuna, stereo veya monoya uygun ve 3,5 mm sokete ihtiyacınız var.

Digitek QM1538

Daha eski Digitek QM1538 için 9pin D soketine ihtiyacınız vardır.9pin D konektörü, prototip kalkanına takılmayacak ofset pimlere sahiptir. Devre sadece 5 pinlik ikinci sıradaki pinleri kullandığından, konnektörü karta lehimleyebilmeniz için 4 pin sırasını kesin. Konektörün düz durması için eğildiği ve konektörün 2 parça epoksi yapıştırıcı (“Araldite”) kullanılarak prototip kalkanına sabitlendiği montaj ayakları Yukarıda gösterilen konektör pimi düzeni bu siteden alınmıştır. Verilen RS232 kablolarının (pim 2 ve 3 arasına bağlı) konektörünün içine monte edilmiş olarak gelen 10K direnç bu proje için gerekli değildir.

Sinyali bir Arduino RX pinine bağlama

Bu devre hem 5V hem de 3.3V Arduino kartları için çalışacaktır. Burada bir Mega2560 (5V) Arduino kullanıyoruz ve devreyi yukarıda gösterildiği gibi bir prototip kalkanına monte ediyoruz.

Ekrandaki TP1'i Mega2560'taki Seri1 RX, pin D19'a bağlamak için uçan bir kablo kullanılır.

Seri Yazılım hakkında not: Başlangıçta bu kalkan, 10, 11 numaralı pinlerde Software Serial kullanılarak bir UNO ile eşleştirildi. Ancak, 9600baud'da Seri üzerindeki Bluetooth Shield ile eşleştirildiğinde, bazı alma baytları kayboldu. RS232'yi bir Donanım Seri bağlantısına taşımak bu sorunu çözdü. Bu nedenle, güvenilir uzaktan görüntüleme ve günlük kaydı için, seri ile bağlanan bir iletişim kalkanı kullanıyorsanız, Mega2560 gibi iki veya daha fazla Donanım Serili bir karta ihtiyacınız vardır. Diğer alternatifler, Ehternet kalkanlı bir UNO, bir ESP8266 taban kartı (bağımsız), Anduino 101 gibi entegre Bluetooth Düşük Enerjili bir kart veya RedBear BLE kalkanı ve Adafrut'un Bluefruit SPI gibi SPI kullanarak iletişim alt sistemine bağlanan kartlardır. panolar. pfodDesignerV2 tüm bu kartları destekler ve onlar için kod üretir.

Adım 4: PfodVC820MultimeterParser Kitaplığı

Tekpower TP4000ZC ve diğer bir dizi multimetre, ölçümü RS232 üzerinden ASCII metni olarak göndermez, bunun yerine LCD ekranın hangi bölümlerinin aydınlatıldığına bağlı olarak ayarlanmış bitlerle 14 bayt gönderir. 14 baytın kodlaması bu pdf'de açıklanmıştır. pfodVC820MeterParser.zip kitaplığı bu baytların kodunu metin dizeleri ve yüzer olarak çözer. (VC820, bu kodlamayı kullanan sayaçlardan birine atıfta bulunur.) Ayrıca, çok çeşitli multimetreleri işleyen Windows, Mac ve Linux bilgisayar yazılımı için QtDMM'ye bakın.

pfodVC820MeterParser kitaplığını kullanmanın minimal bir örneği olan MeterParserExample.ino vardır. Ölçüm cihazını bir 2400 baud seri bağlantıya bağlayın ve ardından baytları işlemek için her döngüye haveReading()'i çağırın. Yeni bir tam okuma ayrıştırıldığında haveReading() true değerini döndürür. Ardından, değeri (ölçeklendirilmiş) bir kayan nokta olarak almak için getAsFloat()'ı veya yazdırma ve günlüğe kaydetme için ölçekleme ile okumayı almak için getAtStr()'i arayabilirsiniz. Ölçüm türüne erişmek için kullanılabilecek başka yöntemler, getTypeAsStr() ve getTypeAsUnicode() ve diğer yardımcı yöntemler vardır.

#include "pfodVC820MeterParser.h" pfodVC820MeterParser metre; //void setup() { Serial.begin(74880); Seri1.başlangıç(2400); metre.connect(&Serial1); }yüzer okuma; void loop() { if (meter.haveReading()) { okuma = meter.getAsFloat(); // Arduino hesaplamaları için bunu kullanın Serial.print("Birimlerle okuma: "); Serial.print(meter.getDigits()); Serial.print(meter.getScalingAsStr()); Serial.print(meter.getTypeAsStr()); Serial.print(F(" = kayan nokta basılmış olarak (6 hane):")); Serial.println(okuma, 6); Serial.println("Zaman(sn) ve Günlük için string olarak okuma"); Serial.print(((şamandıra)milis())/1000.0); Seri.print(", sn, "); Seri.print(meter.getAsStr()); Seri.print(','); Serial.println(meter.getTypeAsStr()); } }

Derece C'ye ayarlanan sayaç ve termokupl probu kullanılarak, örnek çizim Arduino IDE seri monitöründe bu çıktıyı verir.

Birimlerle okuma: 25.7C = şamandıra basılı olarak (6 basamak):25.70000Time(sec) ve 2.40, sn, 25.7, C günlüğü için dize olarak okuma

Adım 5: Bölüm 2 – Uzak Görüntüleme, Günlüğe Kaydetme ve Çizme

Eğitimin bu bölümü, Android mobil cihazınızda sayaç okumasını uzaktan nasıl görüntüleyeceğinizi, kaydedeceğinizi ve çizeceğinizi kapsar. pfodApp, Android mobil cihazınızda görüntülemeyi, günlüğe kaydetmeyi ve çizimi işlemek için kullanılır. Android programlama gerekmez. Tüm görüntüler, kayıt ve çizim tamamen Arduino taslağınız tarafından kontrol edilir. Ücretsiz pfodDesignerV2 uygulaması, Android menünüzü ve grafiğinizi tasarlamanıza ve ardından sizin için bir Arduino taslağı oluşturmanıza olanak tanır.

pfodApp, Ethernet, WiFi, Bluetooth V2 (klasik), Bluetooth LE veya SMS gibi bir dizi bağlantı türünü destekler. Bu öğretici, veri kaydı ve çizim için Arduino 101'i (Bluetooth Düşük Enerji) kullanır. Diğer Bluetooth Low Energy kartları da desteklenmektedir. Bu öğretici, pfodApp'a bağlanmak için SMS kullanır. Bu SMS örneğine veri kaydı ve grafik eklemek için pfodDesignerV2'yi kullanabilirsiniz. pfodDesignerV2 ayrıca, pfodApp'a bağlanmak için bir Bluetooth V2 (klasik) kalkanına Arduino kodu oluşturma seçeneklerine sahiptir.

Bu örnek için Arduino Mega2560'a 9600baud seri bağlantı ile bağlanan bir Iteadstudio Bluetooth Shield V2.2 kullanacağız. Ücretsiz pfodDesignerV2 uygulamasını kullanarak, sadece sayaç okumasını gösteren bir etiket ve tabloyu açmak için bir düğme içeren basit bir menü oluşturduk. Bu sayfada bir dizi pfodDesignerV2 öğreticisi bulunmaktadır. Temel bir taslağımız olduğunda, onu sayaç ayrıştırıcısını eklemek ve sayaç okumasını ve verilerini günlüğe kaydetme ve çizelgeleme için göndermek için değiştireceğiz.

Menüyü Tasarlama

Bu bölümde, sayaç okumasını gösterecek bir Android/pfodApp menüsü ve okumaların bir tablosunu açmak için bir düğme tasarlayacağız. Okumalar ayrıca Android cep telefonunda bir dosyaya kaydedilir

Adım 6: Etiket Ekleme

Etiket Ekleme
Etiket Ekleme
Etiket Ekleme
Etiket Ekleme
Etiket Ekleme
Etiket Ekleme

Ücretsiz pfodDesignerV2'yi kurun ve yeni bir menü başlatın.

Varsayılan Hedef, Iteadstudio Bluetooth Shield V2.2 için gerekli olan 9600baud'da Seri'dir. Bir Bluetooth Düşük Enerji cihazı veya Wifi veya SMS kullanarak bağlanıyorsanız, seçimi değiştirmek için Hedef'e tıklayın.

Sayaç okumasını görüntülemek üzere bir etiket eklemek için Menü Öğesi Ekle'ye tıklayın ve Etiket'i seçmek için aşağı kaydırmayı seçin.

Uygun bir yazı tipi boyutu ve renkleri seçin. Metni Etiket Olarak Bırakın, oluşturulan kodu daha sonra bunu sayaç ölçümü ile değiştirmek için değiştireceğiz. Burada yazı tipi boyutunu +7, yazı tipi rengini Kırmızı ve arka planı Gümüş olarak ayarladık.

Düzenleme Menüsü_1 ekranına geri dönün ve 1 sn'lik bir Yenileme Aralığı ayarlayın. Etikette en son okumayı görüntülemek için pfodApp'ın menüyü saniyede bir kez yeniden istemesini sağlar.

7. Adım: Bir Grafik Düğmesi Ekleme

Grafik Düğmesi Ekleme
Grafik Düğmesi Ekleme
Grafik Düğmesi Ekleme
Grafik Düğmesi Ekleme
Grafik Düğmesi Ekleme
Grafik Düğmesi Ekleme
Grafik Düğmesi Ekleme
Grafik Düğmesi Ekleme

Bir Grafik Düğmesi eklemek için tekrar Menü Öğesi Ekle'ye tıklayın.

Grafik Düğmesinin metnini uygun bir şeye düzenleyin, örn. sadece "Grafik" ve bir yazı tipi boyutu ve renkleri seçin.

Ardından arsa düzenleme ekranını açmak için “Grafik” düğmesine tıklayın. Yalnızca bir çizim olacak, bu nedenle Edit Plot 2 ve Edit Plot 3 düğmelerine tıklayın ve aşağı kaydırıp her biri için Grafiği Gizle'ye tıklayın.

Grafik etiketini uygun bir şeye düzenleyin, ör. "Multimetre". Multimetre ayarına bağlı olarak farklı y ekseni etiketi göndermek için çizimi değiştireceğimiz için diğer çizim ayarlarından herhangi birini değiştirmeye gerek yok.

Son olarak Düzenleme Menüsü_1 ve Düzenleme İstemine geri dönün, bu, menünün altındaki metni ve genel menü arka plan rengini ayarlar. Burada, yazı tipi boyutu +3 ve arka plan rengi Gümüş olan istemi “Uzaktan Multimetre” olarak ayarladık.

Artık Düzenleme Menüsü_1'ne geri dönebilir ve menü tasarımını önizlemek için Önizleme Menüsü'nü tıklayabilirsiniz.

Tasarımı beğenmediyseniz, kodu oluşturmadan önce değiştirebilirsiniz. Düğmeden Etiketi boşaltmak istiyorsanız, burada açıklandığı gibi bazı boş etiketler ekleyebilirsiniz. Android'de Arduino Verilerinin Nasıl Görüntüleneceği/Çizileceğine İlişkin Bir Grafik Ekleme ve Günlük Verilerini Kaydetme, pfodDesignerV2/pfodApp veri kaydı ve grafiği hakkında başka bir eğitimdir.

Adım 8: Arduino Sketch Oluşturma

Arduino Sketch Oluşturma
Arduino Sketch Oluşturma
Arduino Sketch Oluşturma
Arduino Sketch Oluşturma

Bu menüyü pfodApp'te gösterecek olan Arduino kodunu oluşturmak için Editing Menu_1 ekranına geri dönün ve aşağı kaydırıp Generate Code butonuna tıklayın.

Arduino taslağını cep telefonunuzdaki /pfodAppRawData/pfodDesignerV2.txt dosyasına çıkarmak için “Dosyaya Kod Yaz” düğmesine tıklayın. Ardından pfodDesignerV2'den çıkın. pfodDesignerV2.txt dosyasını bir USB bağlantısı veya wifi dosya aktarım pro gibi bir dosya aktarım uygulaması kullanarak PC'nize aktarın. Oluşturulan çizimin bir kopyası burada, pfodDesignerV2_meter.txt

Krokiyi Arduino IDE'nize yükleyin ve Uno (veya Mega) kartınızı programlayın. Ardından Iteadstudio Bluetooth Shield V2.2'yi ekleyin. Android cep telefonunuza pfodApp yükleyin ve örneğin Multimetre adlı yeni bir Bluetooth bağlantısı oluşturun. Yeni bağlantıların nasıl oluşturulacağını öğrenmek için pfodAppForAndroidGettingStarted.pdf'ye bakın. Ardından, Multimetre bağlantısını açmak için pfodApp kullandığınızda, tasarlanmış menünüzü göreceksiniz.

Multimetre donanımını/yazılımını eklemediğimiz için Tabloyu açmak ilginç bir şey göstermiyor.

Adım 9: Multimetreyi Ekleme

Multimetrenin Eklenmesi
Multimetrenin Eklenmesi
Multimetrenin Eklenmesi
Multimetrenin Eklenmesi
Multimetrenin Eklenmesi
Multimetrenin Eklenmesi

Multimetre ayrıştırıcısını eklemek ve verilerini Android cep telefonunuza göndermek için oluşturulan çizimi değiştireceğiz. Tam değiştirilmiş çizim burada, pfod_meter.ino

Bu değişiklikler multimetre ayrıştırıcısını ve 5 saniyelik bir zamanlayıcıyı ekler. Bu süre içinde geçerli yeni bir okuma yoksa, çizim veri göndermeyi durdurur ve Android/pfodApp ekranını “- - -” olarak günceller. Sayacın manuel seçimi değiştikçe tablo etiketleri güncellenir, ancak yeni etiketleri görmek için tablodan çıkıp yeniden seçmeniz gerekir. Öte yandan, sayaç okuması her saniye otomatik olarak güncellenir. Son olarak, pfodApp varsayılan olarak Unicode'u işler, bu nedenle sayaç okuma yöntemini görüntülerken, ohm, Ω ve degsC, ℃ için Unicode'u sayaç ekranı için döndürmek için getTypeAsUnicode() yöntemi kullanılır.

Grafik düğmesi, okumaların bir güncelleme tablosunu görüntüler: -

CSV formatındaki grafik verileri, daha sonra bilgisayarınıza aktarmak ve daha fazla hesaplama ve grafik için bir elektronik tabloya aktarmak üzere /pfodAppRawData/Mulitmeter.txt altında Android mobil cihazınıza bir dosyaya kaydedilir.

Adım 10: Ayrıntılı Çizim Değişiklikleri

  1. pfodVC820MeterParser.zip kitaplığını indirin ve ardından Arduino IDE'yi açın ve bu kitaplığı IDE'nize eklemek için Sketch → Include Library → Add.zip'e tıklayın.
  2. pfodVC820MeterParser kitaplığını çizime ekleyin. Çizim → Kitaplığı Dahil Et → pfodVC820MeterParser'a tıklayın. Bu, taslağın en üstüne include ifadelerini ekleyecektir.
  3. pfodParser_codeGenerated parser("V1"); pfodParser_codeGenerated parser(""); Bu, menü değişikliklerinizin görüntülenmesi için pfodApp'ta menünün önbelleğe alınmasını devre dışı bırakır. Menü önbelleğe almayı yeniden etkinleştirmek için yaptığınız tüm değişiklikleri tamamladığınızda “V3”e dönebilirsiniz.
  4. Yazılım serisi ve multimetre için nesneler oluşturmak üzere bu satırları ekleyin. pfodVC820MeterParser metre;
  5. setup() sonunda Serial1.begin(2400); metre.connect(&Serial1);
  6. Döngünün yukarısına () imzasız uzun validReadingTimer = 0 ekleyin; const imzasız uzun VALID_READINGS_TIMEOUT = 5000; // 5sn bool haveValidReadings = true; // geçerli okumalar olduğunda true olarak ayarlayın int MeasurementType = meter. NO_READING; ve döngünün en üstüne if (meter.haveReading()) { if (meter.isValid()) { validReadingTimer = millis(); haveValidReadings = true; } int newType = meter.getType(); if (measurementType != newType) { // yeni veri günlüğü başlıkları çıktısı parser.print(F("sec, ")); parser.println(meter.getTypeAsStr()); } MeasureType = newType; } if ((millis() - validReadingTimer) > VALID_READINGS_TIMEOUT) { haveValidReadings = false; // son 5 saniyede yeni geçerli okuma yok }
  7. Döngünün ilerleyen kısımlarında parser.print(F("{=Multimeter|time (sec)|Plot_1~~~||}")); ile parser.print(F("{=Multimetre|zaman (sn)|Sayaç Okuma~~~")); parser.print(meter.getTypeAsStr()); parser.print(F("||}"));
  8. loop() öğesinin altında sendData() öğesini değiştirin; if (haveValidReadings) ile { sendData(); }
  9. sendData() içinde parser.print(', '); parser.print(((float)(plot_1_var-plot_1_varMin)) * plot_1_scaling + plot_1_varDisplayMin); parser.print(','); ile parser.print(meter.getAsStr);
  10. sendMainMenu() içinde parser.print(F("~Label")); parser.print('~'); ile if (haveValidReadings) { parser.print(meter.getDigits()); parser.print(meter.getScalingAsStr()); parser.print(meter.getTypeAsUnicode()); } else { parser.print(F("- - -")); }
  11. sendMainMenuUpdate() içinde parser.print(F("|!A"));parser.print('~'); if (haveValidReadings) { parser.print(meter.getDigits()); parser.print(meter.getScalingAsStr()); parser.print(meter.getTypeAsUnicode()); } else { parser.print(F("- - -")); } Menü önbelleğe almayı kullanırken okumayı güncellemek için.

Çözüm

Bu eğitim, ucuz bir multimetrenin RS232 aracılığıyla bir Arduino Mega2560'a nasıl bağlanacağını göstermiştir. Diğer birçok pano da desteklenmektedir. pfodVC820MeterParserlibrary, multimetre verilerini Arduino hesaplamaları için kayan noktalara ve görüntüleme ve günlüğe kaydetme için dizelere ayrıştırır. pfodDesignerV2, multimetre okumasını görüntülemek ve pfodApp kullanan bir Android cep telefonunda değerlerin bir grafiğini göstermek için temel bir çizim oluşturmak için kullanıldı. Android programlama gerekmez. Bu temel çizime multimetre kullanımı eklendi ve son çizim, Android cep telefonunuzdaki mevcut multimetre okumasını ve ayrıca okumaları çizip daha sonra kullanmak üzere cep telefonunuzdaki bir dosyaya kaydetmeyi gösteriyor.

Önerilen: