Tạo máy hiện sóng đơn kênh bằng Arduino

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Trong bài đăng thú vị này, chúng tôi sẽ tạo một máy hiện sóng đơn kênh đơn giản bằng Arduino và máy tính cá nhân, nơi các dạng sóng sẽ được hiển thị trên màn hình của PC và tần số và khoảng thời gian của sóng đầu vào sẽ được hiển thị trên màn hình 16 x 2 .

Giới thiệu

Mọi người đam mê điện tử đều từng nói “Tôi có một ước mơ, một ngày nào đó tôi sẽ mua được một chiếc máy hiện sóng”, nhưng nhiều người vẫn mơ ước được sở hữu một chiếc máy hiện sóng phù hợp cho các dự án và thí nghiệm của mình.



Máy hiện sóng là thiết bị đắt tiền ngay cả đối với mô hình cấp thấp, chúng tôi coi chúng như một công cụ điện tử sang trọng và chúng tôi có thể tạm dừng các thử nghiệm và dự án của mình vì chúng tôi không đủ khả năng mua.

Dự án này có thể là một sự thay đổi cuộc chơi đối với nhiều người, những người đam mê điện tử không cần phải chi hàng tấn tiền cho một máy hiện sóng để đo các thông số cơ bản của sóng.



Ý tưởng được đề xuất có chức năng rất hạn chế, vì vậy đừng mong đợi các tính năng trên máy hiện sóng cao cấp để có mặt trong dự án này. Chúng tôi nhận được ba chức năng vững chắc từ dự án này:

1) biểu diễn trực quan dạng sóng trên màn hình máy tính

2) đo tần số của sóng đầu vào

3) Đo khoảng thời gian của sóng đầu vào tính bằng micro giây.

Tần số và khoảng thời gian của tín hiệu sẽ được hiển thị trên màn hình LCD 16 x 2. Có hai phương pháp để biểu diễn trực quan dạng sóng trên màn hình máy tính sẽ được mô tả trong phần sau của bài viết.

Bây giờ chúng ta hãy đi sâu vào phần kỹ thuật của thiết lập.

Thiết lập được đề xuất bao gồm arduino là bộ não trong dự án của chúng tôi như thường lệ, màn hình LCD 16 x 2, IC 7404, chiết áp 10K và một máy tính tốt nhất là máy chạy windows.

Arduino là bộ não của quá trình thiết lập và chúng ta phải chọn Arduino UNO hoặc Arduino mega hoặc Arduino nano cho dự án này vì các kiểu máy khác không tích hợp bộ chuyển đổi USB sang nối tiếp, điều cần thiết để giao tiếp giữa Arduino và máy tính.

Nếu chúng tôi chọn các mẫu board arduino khác, chúng tôi cần bộ chuyển đổi USB sang nối tiếp bên ngoài, điều này có thể làm phức tạp dự án.

Hình minh họa kết nối LCD với Arduino:

Màn hình LCD máy hiện sóng đơn kênh

Mạch trên là tự giải thích. Chúng ta có thể tìm thấy kết nối tương tự giữa màn hình và arduino trên các dự án dựa trên màn hình LCD khác.

Chiết áp 10K được sử dụng để điều chỉnh độ tương phản của màn hình LCD 16 x 2 mà người dùng phải cài đặt để có chế độ xem tối ưu.

Máy hiện sóng đơn kênh sử dụng Arduino

Chức năng của IC 7404 là khử tín hiệu nhiễu từ đầu vào và đưa đến chân lấy mẫu tần số A0. IC 7404 chỉ xuất ra các sóng hình chữ nhật, đây là một lợi thế lớn của arduino, vì arduino có khả năng xử lý tín hiệu số hơn so với tín hiệu tương tự.

Chương trình:

//-----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-----//

Khi bạn đã hoàn thành phần cứng và tải lên đoạn mã trên. Đã đến lúc vẽ biểu đồ dạng sóng trên màn hình máy tính. Điều này có thể được thực hiện theo hai cách, cách dễ nhất và lười nhất được mô tả dưới đây.

Phương pháp 1:

• Kết nối dây đầu vào với chân số 9 của arduino (Chế độ kiểm tra).
• Mở Arduino IDE (nó phải là phiên bản 1.6.6 trở lên)
• Chuyển đến tab “công cụ” và chọn máy vẽ nối tiếp

Ngay sau khi máy vẽ nối tiếp mở ra, bạn có thể thấy sóng hình chữ nhật được tạo ra từ chân số 9 của arduino, được minh họa bên dưới.

sóng hình chữ nhật được tạo ra từ pin # 9 của arduino

Nhấn nút ấn để hiển thị các số đọc và cũng để làm mới các số đọc, màn hình LCD phải hiển thị xung quanh 490Hz ở “chế độ kiểm tra”.

Sơ đồ của chế độ thử nghiệm:

Chế độ kiểm tra là để kiểm tra hoạt động bình thường của máy hiện sóng. Chân # 9 được lập trình để cung cấp đầu ra 490Hz.

Phương pháp 2:

Phương pháp này tương đối dễ dàng nhưng chúng ta cần tải phần mềm từ liên kết cho sẵn: http://www.x-io.co.uk/downloads/Serial-Oscilloscope-v1.5.zip

Phần mềm này sẽ cung cấp cho chúng tôi nhiều quyền kiểm soát hơn và các tính năng so với máy vẽ nối tiếp của arduino. Chúng tôi có thể phóng to và thu nhỏ dạng sóng được tạo, chúng tôi có thể đặt chức năng kích hoạt, điều khiển bù đắp trên trục dọc và trục ngang, v.v.

• Tải xuống phần mềm và giải nén.

• Bây giờ nhấp đúp vào ứng dụng Máy hiện sóng nối tiếp.

máy vẽ nối tiếp của arduino

• Một cửa sổ sẽ bật lên như minh họa bên dưới và chọn tốc độ truyền là 9600.

chọn tốc độ truyền thành 9600.

• Bây giờ chọn tab “Cổng nối tiếp” và chọn cổng COM phù hợp có thể thay đổi máy tính với máy tính. Nếu bạn chọn đúng cổng COM, bạn có thể xem các bài đọc như minh họa bên dưới.

• Bây giờ chọn tab “Oscilloscope” và chọn “kênh 1, 2 và 3” (tùy chọn đầu tiên).

Bây giờ chọn tab “máy hiện sóng” và chọn “kênh 1, 2 và 3” (tùy chọn đầu tiên). Dạng sóng từ Máy hiện sóng đơn kênh sử dụng Arduino

• Bạn có thể thấy tín hiệu kiểm tra được tạo ra từ Arduino như minh họa bên dưới.

Như bạn có thể thấy, có một số nút điều khiển trên phần mềm mà bạn có thể phân tích dạng sóng tốt hơn.

GHI CHÚ:

Thiết lập được đề xuất có một nhược điểm lớn:

Arduino không thể hiển thị đồng thời dạng sóng đầu vào trên màn hình máy tính và tần số / khoảng thời gian trên màn hình LCD. Để khắc phục vấn đề này, một nút nhấn được cung cấp để đọc / làm mới tần số và khoảng thời gian trên màn hình LCD.

Sau khi bạn nhấn nút, nó sẽ hiển thị tần số và khoảng thời gian trên màn hình LCD đồng thời dạng sóng sẽ đóng băng trên màn hình máy tính miễn là bạn tiếp tục nhấn nút nhấn.

Bạn cũng có thể coi đây là một lợi thế vì bạn có thể dừng tần số trên màn hình máy tính bất kỳ lúc nào và điều này có thể cho bạn thời gian để phân tích dạng sóng hiển thị.

Nguyên mẫu của tác giả:

Hình ảnh nguyên mẫu cho mạch máy hiện sóng Arduino

Nếu bạn có thêm bất kỳ câu hỏi nào liên quan đến mạch máy hiện sóng Arduino một kênh đơn giản này, vui lòng sử dụng hộp bình luận bên dưới để bày tỏ quan điểm cụ thể của bạn




Trước: Máy đo tần số Arduino sử dụng màn hình 16 × 2 Tiếp theo: Mạch phát Internet LiFi - Truyền tín hiệu USB qua đèn LED