Arduino kullanarak Tek Kanallı Osiloskop Yapmak

Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin





Bu ilginç yazımızda, Arduino ve kişisel bir bilgisayar kullanarak basit bir tek kanallı osiloskop yapacağız, burada dalga formları PC'nin ekranında gösterilecek ve giriş dalgalarının frekansı ve süresi 16 x 2 ekranda gösterilecek. .

Giriş

Her elektronik meraklısı bir zamanlar “Bir hayalim var, bir gün bir osiloskop alacağım” demişti ama yine de projeleri ve deneyleri için iyi bir osiloskop sahibi olmak birçok kişinin hayalidir.



Osiloskop, giriş seviyesi bir model için bile pahalı bir ekipmandır, onları lüks bir elektronik alet olarak görüyoruz ve deney ve projelerimizi durdurabiliriz çünkü birini karşılayamıyoruz.

Bu proje, birçok elektronik meraklıları için bir dalganın temel parametrelerini ölçmek için bir osiloskop için tonlarca para harcamaya gerek kalmadan oyun değiştirebilir.



Önerilen fikrin işlevselliği çok sınırlı olduğundan, özellikleri bir yüksek son osiloskop bu projede yer almak. Bu projeden üç sağlam işlev elde ediyoruz:

1) dalga formunun bilgisayar ekranında görsel temsili

2) giriş dalgasının frekans ölçümü

3) Mikrosaniye cinsinden giriş dalgasının zaman periyodu ölçümü.

Sinyalin frekansı ve süresi 16 x 2 LCD ekranda gösterilecektir. Dalga biçimini bilgisayar ekranında görsel olarak temsil etmenin iki yöntemi vardır ve bu, makalenin sonraki bölümünde açıklanacaktır.

Şimdi kurulumun teknik kısmına geçelim.

Önerilen kurulum, her zamanki gibi projemizin beyni olan arduino, 16 x 2 LCD ekran, IC 7404, 10K potansiyometre ve tercihen bir bilgisayar, bir pencere makinesinden oluşmaktadır.

Arduino kurulumun beynidir ve bu proje için Arduino UNO veya Arduino mega veya Arduino nano'yu seçmeliyiz çünkü diğer modellerde Arduino ve bilgisayar arasında iletişim için gerekli olan dahili USB'den seri dönüştürücüye sahip değiliz.

Diğer arduino kartı modellerini seçersek, projeyi karmaşıklaştırabilecek harici USB'den seri dönüştürücüye ihtiyacımız var.

LCD'den Arduino'ya bağlantı çizimi:

Tek Kanallı Osiloskop LCD Ekran

Yukarıdaki devre kendinden açıklamalıdır. Diğer LCD tabanlı projelerde ekran ve arduino arasında benzer bir bağlantı bulabiliriz.

10K potansiyometre, optimum görüntü için kullanıcı tarafından ayarlanması gereken 16 x 2 LCD ekranın kontrastını ayarlamak için kullanılır.

Arduino kullanarak Tek Kanallı Osiloskop

IC 7404'ün işlevi, girişten gelen herhangi bir gürültü sinyalini ortadan kaldırmak ve frekans örnekleme pini A0'a beslemektir. IC 7404, yalnızca arduino için büyük bir avantaj olan dikdörtgen dalgaları çıkarır, çünkü arduino, analog sinyallerden daha dijital sinyali işleme kapasitesine sahiptir.

Program:

//-----Program Developed by R.Girish-----//
#include
LiquidCrystal lcd(12, 11, 5, 4, 3, 2)
int X
int Y
float Time
float frequency
const int Freqinput = A0
const int oscInput = A1
int Switch = A2
const int test = 9
void setup()
{
Serial.begin(9600)
lcd.begin(16,2)
pinMode(Switch,INPUT)
pinMode(Freqinput,INPUT)
pinMode(oscInput,INPUT)
pinMode(test, OUTPUT)
analogWrite(test,127)
lcd.setCursor(0,0)
lcd.print('Press the button')
}
void loop()
{
if(digitalRead(Switch)==HIGH)
{
lcd.clear()
lcd.setCursor(0,0)
X = pulseIn(Freqinput,HIGH)
Y = pulseIn(Freqinput,LOW)
Time = X+Y
frequency = 1000000/Time
if(frequency<=0)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('F=')
lcd.print('0.00 Hz')
lcd.setCursor(0,1)
lcd.print('T=')
lcd.print('0.00 us')
}
else
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('F=')
lcd.print(frequency)
lcd.print('Hz')
lcd.setCursor(0,1)
lcd.print('T=')
lcd.print(Time)
lcd.print(' us')
delay(500)
}
}
else
{
Serial.println(analogRead(oscInput))
}
}
//-----Program Developed by R.Girish-----//

Donanım bölümünü tamamladıktan ve yukarıdaki kodu yükledikten sonra. Bilgisayar ekranında dalga biçimini çizmenin zamanı geldi. Bu iki şekilde yapılabilir, en kolay ve en tembel yol aşağıda açıklanmıştır.

Yöntem 1:

• Giriş kablosunu arduino'nun 9 numaralı pinine bağlayın (Test modu).
• Arduino IDE'yi açın (1.6.6 veya üzeri sürümler olmalıdır)
• 'Araçlar' sekmesine gidin ve seri çiziciyi seçin

Seri çizici açılır açılmaz, aşağıda gösterilen arduino'nun 9 numaralı pininden üretilen dikdörtgen dalgayı görebilirsiniz.

arduino

Okumaları göstermek ve ayrıca LCD ekranındaki okumaları yenilemek için basmalı düğmeye basın, 'test modunda' 490Hz civarında göstermesi gerekir.

Test modu şeması:

Test modu, osiloskobun düzgün çalışıp çalışmadığını kontrol etmektir. Pin # 9, 490Hz çıkış verecek şekilde programlanmıştır.

Yöntem 2:

Bu yöntem nispeten kolaydır, ancak yazılımı verilen bağlantıdan indirmemiz gerekir: http://www.x-io.co.uk/downloads/Serial-Oscilloscope-v1.5.zip

Bu yazılım bize arduino'nun seri plotter'ına kıyasla biraz daha fazla kontrol ve özellik sağlayacak. Oluşturulan dalga biçimini yakınlaştırıp uzaklaştırabiliriz, tetikleme işlevini, dikey ve yatay eksen üzerinde ofset kontrolü vb. Ayarlayabiliriz.

• Yazılımı indirin ve çıkarın.

• Şimdi Seri Osiloskop uygulamasına çift tıklayın.

arduino’nun seri plotter

• Aşağıda gösterildiği gibi bir pencere açılacaktır ve baud hızını 9600 olarak seçecektir.

9600 baud hızını seçin.

• Şimdi 'Seri bağlantı noktası' sekmesini seçin ve bilgisayardan bilgisayara değişebilen doğru COM bağlantı noktasını seçin. Doğru COM bağlantı noktasını seçerseniz, okumaları aşağıda gösterildiği gibi görebilirsiniz.

• Şimdi “osiloskop” sekmesini seçin ve “1., 2. ve 3. kanalları” seçin (ilk seçenek).

Şimdi “osiloskop” sekmesini seçin ve “1., 2. ve 3. kanalları” seçin (ilk seçenek). Arduino kullanarak tek kanallı Osiloskoptan dalga formu

• Arduino'dan üretilen test sinyalini aşağıda gösterildiği gibi görebilirsiniz.

Gördüğünüz gibi, yazılımda dalga formunu daha iyi analiz edebileceğiniz bazı kontrol düğmeleri vardır.

NOT:

Önerilen kurulumun bir büyük dezavantajı vardır:

Arduino, bilgisayar ekranında giriş dalga biçimini ve aynı anda LCD ekranda frekans / zaman süresi okumasını gösteremez. Bu sorunun üstesinden gelmek için, LCD ekranda frekansı ve süreyi okumak / yenilemek için bir düğme sağlanmıştır.

Düğmeye bastığınızda, LCD ekranda frekansı ve süreyi gösterirken, düğmeye basmaya devam ettiğiniz sürece dalga formu bilgisayar ekranında donacaktır.

Bunu bir avantaj olarak da düşünebilirsiniz, çünkü herhangi bir anda bilgisayar monitöründeki frekansı durdurabilirsiniz ve bu size görüntülenen dalga biçimini analiz etmek için zaman kazandırabilir.

Yazarın prototipi:

Arduino osiloskop devresi için Prototip Görüntü

Bu basit tek kanallı Arduino osiloskop devresiyle ilgili başka sorularınız varsa, lütfen özel görüşlerinizi ifade etmek için aşağıdaki yorum kutusunu kullanmaktan çekinmeyin.




Önceki: 16 × 2 Ekran Kullanan Arduino Frekans Ölçer Sonraki: LiFi İnternet Verici Devresi - LED üzerinden USB Sinyal Aktarımı