Máy đo tần số Arduino sử dụng màn hình 16 × 2

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





Trong bài viết này, chúng ta sẽ xây dựng một máy đo tần số kỹ thuật số sử dụng Arduino có các giá trị đọc sẽ được hiển thị trên màn hình LCD 16x2 và sẽ có dải đo từ 35 Hz đến 1MHz.

Giới thiệu

Là một người đam mê điện tử, tất cả chúng ta đều sẽ gặp phải một điểm mà chúng ta cần đo tần suất trong các dự án của mình.



Tại thời điểm đó, chúng tôi sẽ nhận ra rằng máy hiện sóng là một công cụ hữu ích để đo tần số. Tuy nhiên, chúng ta đều biết rằng máy hiện sóng là một công cụ đắt tiền mà không phải người có sở thích nào cũng có thể mua được và máy hiện sóng có thể là một công cụ quá mức cần thiết cho người mới bắt đầu.

Để khắc phục vấn đề đo tần số, người có sở thích không cần một máy hiện sóng đắt tiền, chúng tôi chỉ cần một máy đo tần số có thể đo tần số với độ chính xác hợp lý.



Trong bài viết này, chúng ta sẽ tạo ra một máy đo tần số, dễ xây dựng và thân thiện với người mới bắt đầu, ngay cả noob trong Arduino cũng có thể thực hiện một cách dễ dàng.

Trước khi đi vào chi tiết cấu tạo, hãy cùng khám phá tần suất là gì và cách đo tần suất.

Tần số là gì? (Đối với noobs)

Chúng ta đã quen thuộc với thuật ngữ tần suất, nhưng nó thực sự có nghĩa là gì?

Vâng, tần số được định nghĩa là số dao động hoặc chu kỳ mỗi giây. Định nghĩa này có nghĩa là gì?

Nó có nghĩa là số lần biên độ của “cái gì đó” lên xuống trong MỘT giây. Ví dụ tần số của nguồn điện xoay chiều tại nơi ở của chúng tôi: Biên độ của 'điện áp' ('cái gì đó' được thay thế bằng 'điện áp') tăng (+) và xuống (-) trong một giây, ở hầu hết các quốc gia, biên độ này là 50 lần.

Một chu kỳ hoặc một dao động bao gồm lên và xuống. Vì vậy, một chu kỳ / dao động là biên độ đi từ không đến đỉnh dương và trở về 0 và đi đến đỉnh âm và trở về không.

“Khoảng thời gian” cũng là một thuật ngữ được sử dụng khi đề cập đến tần suất. Khoảng thời gian là thời gian cần thiết để hoàn thành “một chu kỳ”. Nó cũng là giá trị nghịch đảo của tần số. Ví dụ 50 Hz có khoảng thời gian 20 ms.

1/50 = 0,02 giây hoặc 20 mili giây

Bây giờ bạn sẽ có một số ý tưởng về tần suất và các thuật ngữ liên quan của nó.

Tần số được đo như thế nào?

Chúng ta biết rằng một chu kỳ là sự kết hợp của tín hiệu cao và thấp. Để đo thời lượng của tín hiệu cao và thấp, chúng tôi sử dụng 'xungIn' trong arduino. xungIn (chân, CAO) đo thời lượng của tín hiệu cao và xungIn (chân, LOW) đo thời lượng của tín hiệu thấp. Thời lượng xung của cả hai được thêm vào để tạo ra khoảng thời gian là một chu kỳ.

Khoảng thời gian xác định sau đó được tính cho một giây. Điều này được thực hiện theo công thức sau:

Freq = 1000000 / khoảng thời gian tính bằng micro giây

Khoảng thời gian từ arduino được tính bằng micro giây. Arduino không lấy mẫu tần số đầu vào trong toàn bộ giây, nhưng nó dự đoán tần số chính xác bằng cách phân tích khoảng thời gian chỉ một chu kỳ.

Bây giờ bạn đã biết cách arduino đo lường và tính toán tần số.

Mạch:

Mạch bao gồm arduino là bộ não của dự án, màn hình LCD 16x2, biến tần IC 7404 và một chiết áp để điều chỉnh độ tương phản của Màn hình LCD .

Thiết lập được đề xuất có thể đo dải tần từ 35Hz đến 1 MHz.

Kết nối hiển thị Arduino:

Sơ đồ trên là tự giải thích, kết nối dây giữa arduino và màn hình là tiêu chuẩn và chúng ta có thể tìm thấy các kết nối tương tự trên các dự án dựa trên arduino và LCD khác.

Máy đo tần số Arduino sử dụng màn hình 16x2

Sơ đồ trên gồm có IC biến tần 7404. Vai trò của IC 7404 là khử nhiễu từ đầu vào, để nhiễu không truyền đến arduino có thể cho kết quả đọc sai và IC 7404 có thể chịu được điện áp tăng đột biến ngắn mà không truyền đến chân arduino. IC 7404 chỉ xuất ra sóng hình chữ nhật mà arduino có thể đo được dễ dàng so với sóng analog.

LƯU Ý: Đầu vào cực đại đến đỉnh không được vượt quá 5V.

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 input = A0
const int test = 9
void setup()
{
pinMode(input,INPUT)
pinMode(test, OUTPUT)
lcd.begin(16, 2)
analogWrite(test,127)
}
void loop()
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Frequency Meter')
X=pulseIn(input,HIGH)
Y=pulseIn(input,LOW)
Time = X+Y
frequency=1000000/Time
if(frequency<=0)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Frequency Meter')
lcd.setCursor(0,1)
lcd.print('0.00 Hz')
}
else
{
lcd.setCursor(0,1)
lcd.print(frequency)
lcd.print(' Hz')
}
delay(1000)
}
//-----Program Developed by R.Girish-----//

Kiểm tra máy đo tần số:

Khi bạn đã xây dựng thành công dự án, cần phải kiểm tra xem mọi thứ có hoạt động tốt hay không. Chúng tôi phải sử dụng một tần số đã biết để xác nhận kết quả đọc. Để thực hiện điều này, chúng tôi đang sử dụng chức năng PWM có sẵn của arduino có tần số 490Hz.

Trong chương trình, chân số 9 được kích hoạt để cung cấp 490Hz ở chu kỳ làm việc 50%, người dùng có thể lấy dây đầu vào của máy đo tần số và chèn vào chân số 9 của arduino như trong hình, chúng ta có thể thấy 490 Hz trên màn hình LCD (với một số sai số), nếu quy trình được đề cập thành công, máy đo tần số của bạn đã sẵn sàng phục vụ bạn các thí nghiệm.

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

Hình ảnh nguyên mẫu của máy đo tần số Arduino

Người dùng cũng có thể kiểm tra nguyên mẫu mạch đo tần số Arduino này bằng cách sử dụng bộ tạo tần số bên ngoài được hiển thị trong hình trên.




Một cặp: Mạch biến tần Arduino Pure Sine Wave với mã chương trình đầy đủ Tiếp theo: Tạo Máy hiện sóng một kênh bằng Arduino