Giới thiệu dự án

Trong công tác giảng dạy và thực hành bộ môn Vật lý tại các trường đại học sư phạm cũng như hệ thống các trường phổ thông, các bài thí nghiệm về dao động, sóng âm và mạch điện xoay chiều giữ vai trò nền tảng. Theo các khảo sát thực tế trong phòng thí nghiệm vật lý giai đoạn 2010–2015, hơn 70% các bài thực hành đo tần số âm thanh và tín hiệu điện vẫn phải phụ thuộc vào dao động ký điện tử (Oscilloscope) tương tự hoặc phương pháp hiển thị hình elip Lissajous. Các phương pháp truyền thống này đòi hỏi thao tác căn chỉnh phức tạp, dễ gây sai số thị giác (Parallax Error) lên tới 10%–15% đối với học sinh, sinh viên và thiếu khả năng hiển thị trực tiếp giá trị số.

Đề tài "Nghiên cứu lắp ráp máy đo âm tần và mạch tạo xung dùng IC 555 hiển thị số sử dụng vi điều khiển PIC16F887" được thực hiện nhằm giải quyết triệt để bài toán chuẩn hóa tín hiệu và định lượng tần số âm thanh trong dải tần số nghe được ($20\text{ Hz} - 20.000\text{ Hz}$) với độ chính xác cao, chi phí thấp và giao diện trực quan.

Mục tiêu dự án

  1. Nghiên cứu cơ sở lý thuyết: Phân tích cấu trúc phần cứng vi điều khiển RISC (Reduced Instruction Set Computer) PIC16F887, tập lệnh 35 chỉ lệnh, hệ thống định thời Timer/Counter, các thanh ghi ngắt chuyên dụng (INTCON, PIE1, PIR1, OPTION_REG), bộ nhớ RAM/EEPROM và chuẩn giao tiếp màn hình tinh thể lỏng LCD HD44780U.
  2. Thiết kế khối chuẩn hóa tín hiệu: Ứng dụng IC cách ly quang tích hợp bộ khuếch đại thuật toán OPAMP (Operational Amplifier) ở chế độ khóa và bộ kích Schmitt Trigger PC900V để chuyển đổi mọi dạng sóng tương tự (Analog) ngõ vào thành xung vuông số chuẩn TTL (0V–5V).
  3. Phát triển thuật toán đếm tần số: Xây dựng thuật toán định thời lấy mẫu chính xác $1\text{ s}$ bằng Timer1 (16-bit) kết hợp ngắt ngoài RB0/INT để đếm trực tiếp số sườn xung kích hoạt, triệt tiêu sai số tích lũy.
  4. Thiết kế mạch phát xung thử nghiệm: Chế tạo mạch tạo xung vuông đa hài không ổn định (Astable Multivibrator) sử dụng vi mạch định thời NE555 với khả năng tùy chỉnh tần số thông qua mạng nạp - xả RC.
  5. Thiết kế chế tạo PCB và thực nghiệm: Ứng dụng phần mềm Proteus 7 Professional và OrCAD 10.5 để mô phỏng, xuất bản mạch in PCB (Printed Circuit Board) bằng phương pháp ủi nhiệt thủ công, tiến hành kiểm nghiệm đối sánh với máy phát sóng chuẩn.

Phạm vi và giới hạn hệ thống

  • Dải tần số đo lường: Dải âm tần thực nghiệm từ $1\text{ Hz}$ đến $50.000\text{ Hz}$ (50 kHz), tối ưu hóa trong dải âm nghe $20\text{ Hz} - 20\text{ kHz}$.
  • Biên độ điện áp ngõ vào: Hỗ trợ tín hiệu tương tự và xung từ $1.5\text{ V}{\text{pp}}$ đến $15\text{ V}{\text{pp}}$.
  • Sai số tuyệt đối mục tiêu: $< 0.5%$ so với nguồn phát xung chuẩn cấp phòng thí nghiệm.
  • Thời gian đáp ứng: $1.0\text{ s}$ cho mỗi chu kỳ làm mới kết quả đo.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí kỹ thuật Phương pháp Lissajous (Dao động ký) Mạch đếm số dùng IC logic rời (74HC390/74HC47) Giải pháp đề tài (PIC16F887 + PC900V)
Giao diện hiển thị Dạng đồ thị sóng trên màn hình tia âm cực LED 7 đoạn (Nhiều chân nối, cồng kềnh) Text LCD 16x2 ký tự, hiển thị trực tiếp đơn vị Hz
Độ chính xác Phụ thuộc kỹ năng ước lượng ($\pm 5% - 10%$) Trung bình ($\pm 1% - 2%$), phụ thuộc dao động RC Rất cao ($< 0.5%$), đồng bộ thạch anh $20\text{ MHz}$
Độ phức tạp phần cứng Thiết bị cồng kềnh, chi phí đắt đỏ Hàng chục IC rời, mạch in phức tạp, dễ nhiễu Vi mạch đơn chip gọn nhẹ, tích hợp lọc nguồn kép
Khả năng cách ly nhiễu Kém, dễ méo dạng sóng đầu vào Không có cách ly quang Cách ly quang điện với PC900V, chống sốc áp
Chi phí sản xuất $> 5.000.000\text{ VNĐ}$ $300.000 - 450.000\text{ VNĐ}$ $< 150.000\text{ VNĐ}$

Yêu cầu hệ thống theo mô hình MoSCoW

  • Must have: Đo chính xác tần số trong dải âm tần; vi điều khiển PIC16F887 xung nhịp $20\text{ MHz}$; giao tiếp LCD 16x2 mode 4-bit; mạch lọc nguồn ổn định $5\text{ VDC}$.
  • Should have: Khối cách ly quang PC900V chống sốc áp và lọc nhiễu analog; ngõ ra nguồn $5\text{ V}$ phụ trợ nuôi mạch tạo xung NE555.
  • Could have: Nút bấm Reset cứng Master Clear (MCLR) gắn ngoài; chiết áp $10\text{ k}\Omega$ vi chỉnh độ tương phản LCD (chân VEE).
  • Won't have: Giao tiếp máy tính qua cổng nối tiếp RS-232/USB hoặc chuyển đổi dải đo tự động vượt ngoài $100\text{ kHz}$.

Thiết kế hệ thống

Hệ thống phần cứng được chia làm 4 khối chức năng chính:

[ Nguồn vào 12VDC ] ---> [ Diode Cầu ] ---> [ LM7809 (9V) ] ---> [ LM7805 (5V) ] ---> Cấp nguồn hệ thống
                                                                                            |
[ Tín hiệu Analog/Xung ] ---> [ Optocoupler PC900V ] ---> [ Chân RB0/INT (PIC16F887) ]      |
                                                                   |                        |
                                                          [ Thạch anh 20MHz ]               |
                                                                   |                        |
                                                          [ Port D (RD4-RD7, RD0-RD2) ] <---|
                                                                   |
                                                          [ LCD 16x2 HD44780U ]

Ngăn xếp công nghệ (Technology Stack)

  • Vi điều khiển chính: Microchip PIC16F887-I/P (DIP-40), kiến trúc Harvard RISC, bộ nhớ Flash $8\text{K}\times 14\text{ words}$, RAM 368 bytes, EEPROM 256 bytes.
  • Bộ định thời & Dao động: Thạch anh ngoài $20\text{ MHz}$ kèm 2 tụ gốm $22\text{ pF}$, chu kỳ máy $T_{cy} = 4 / F_{osc} = 200\text{ ns}$.
  • Khâu chuẩn hóa sóng: Sharp Optocoupler PC900V tích hợp bộ giải mã Schmitt trigger, thời gian trễ đóng ngắt $t_{PLH}/t_{PHL} < 2\text{ }\mu\text{s}$.
  • Khối hiển thị: Text LCD 16x2 chuẩn Hitachi HD44780U (DDRAM 80 bytes, CGROM 240 ký tự mẫu).
  • Nguồn điện tuyến tính: LM7809 kết hợp LM7805 mắc tầng (Cascade) nhằm giảm sụt áp nhiệt trên từng vi mạch ổn áp; cầu Diode bảo vệ chống ngược cực.
  • Phần mềm thiết kế & mô phỏng: Proteus 7 Professional (ISIS 7.7) và OrCAD Capture CIS/Layout Plus 10.5.

Phương pháp nghiên cứu và phát triển (Methodology)

Dự án áp dụng mô hình phát triển nối tiếp có vòng lặp thực nghiệm (Iterative-Waterfall Model):

  1. Giai đoạn 1 (Tuần 1–3): Khảo sát nguyên lý toán học của mạch dao động cầu RC, mạch định thời NE555 và kiến trúc ngắt của PIC16F887.
  2. Giai đoạn 2 (Tuần 4–6): Mô phỏng toàn diện trên Proteus 7 ISIS. Viết mã nguồn kiểm tra giao tiếp LCD chế độ 4-bit và thuật toán đếm xung ngắt.
  3. Giai đoạn 3 (Tuần 7–9): Lắp ráp phần cứng thử nghiệm trên Testboard (Breadboard), đo kiểm tra dạng sóng tại các ngõ ra chân 3 (NE555) và ngõ ra PC900V qua dao động ký điện tử.
  4. Giai đoạn 4 (Tuần 10–12): Thiết kế sơ đồ nguyên lý (Schematic) trên OrCAD Capture CIS 10.5, chuyển Netlist sang OrCAD Layout, định tuyến mạch in 1 lớp (Single-layer PCB), gia công ủi nhiệt và ngâm hóa chất $FeCl_3$.
  5. Giai đoạn 5 (Tuần 13–14): Hàn linh kiện, nạp firmware qua mạch nạp chuyên dụng PICkit 2/Burn-E và đo đạc đối sánh với máy phát tần số chuẩn phòng thí nghiệm.

Implementation và kết quả

Quá trình phát triển và giải thuật cốt lõi

Thuật toán đo tần số sử dụng kỹ thuật cổng định thời chuẩn $1\text{ giây}$ (Gate Time Measurement). Tần số $f$ của tín hiệu được xác định theo công thức: $$f = \frac{N}{\Delta t} = \frac{N}{1.0\text{ s}} = N\text{ (Hz)}$$ Trong đó $N$ là tổng số xung kích hoạt cạnh lên (Rising Edge) ghi nhận được trên chân RB0/INT trong đúng khoảng thời gian $\Delta t = 1.000.000\text{ }\mu\text{s}$ do Timer1 tạo ra.

                    +--------------------------------+
                    |        Khởi tạo hệ thống       |
                    |   (Timer1, RB0/INT, LCD 4-bit) |
                    +--------------------------------+
                                   |
                                   v
             +---------------------------------------------+
             | Bật ngắt ngoài RB0/INT (Đếm xung N++)       |
             | Bật Timer1 tạo cửa sổ thời gian chuẩn 1.0s  |
             +---------------------------------------------+
                                   |
                                   v
                    +--------------------------------+
                    |  Đủ thời gian trễ 1.0 giây?    |
                    +--------------------------------+
                                   |
                        +----------+----------+
                        |                     |
                      (Chưa)                 (Đã đủ)
                        |                     |
                        v                     v
                [Tiếp tục đếm]     +--------------------------------+
                                   | Tắt ngắt RB0                   |
                                   | Gán Frequency = N              |
                                   | Reset N = 0, Reset Timer1      |
                                   +--------------------------------+
                                                  |
                                                  v
                                   +--------------------------------+
                                   | Chuyển đổi nhị phân sang ASCII |
                                   | Xuất kết quả lên LCD 16x2      |
                                   | Bật lại ngắt, bắt đầu chu kỳ mới|
                                   +--------------------------------+

Cấu hình thanh ghi và mã nguồn C điều khiển trên PIC16F887

#include <16F887.h>
#device *=16 ADC=10
#use delay(clock=20000000) // Sử dụng thạch anh ngoài 20MHz

#define LCD_RS_PIN      PIN_D0
#define LCD_RW_PIN      PIN_D1
#define LCD_ENABLE_PIN  PIN_D2
#define LCD_DATA4       PIN_D4
#define LCD_DATA5       PIN_D5
#define LCD_DATA6       PIN_D6
#define LCD_DATA7       PIN_D7

#include <lcd.c>

volatile unsigned int32 pulse_count = 0;
volatile unsigned int8 timer1_overflow_count = 0;
unsigned int32 measured_frequency = 0;

// Ngắt ngoài trên chân RB0/INT: Đếm số xung đưa vào
#INT_EXT
void ext_isr() {
    pulse_count++;
}

// Ngắt tràn Timer1: Định thời chính xác cửa sổ 1 giây
// Với Fosc = 20MHz -> Fcy = 5MHz -> Tcy = 0.2us.
// Timer1 16-bit tràn sau 65536 counts. Dùng Prescaler 1:8 -> Tick = 1.6us.
// Thời gian 1 lần tràn = 65536 * 1.6us = 104.8576 ms (~10 lần tràn = ~1.048s)
#INT_TIMER1
void timer1_isr() {
    timer1_overflow_count++;
    set_timer1(3036); // Nạp trước giá trị (65536 - 62500) để tràn đúng mỗi 100ms
    if(timer1_overflow_count >= 10) { // Đạt đúng 1000ms (1 giây)
        disable_interrupts(INT_EXT);
        measured_frequency = pulse_count;
        pulse_count = 0;
        timer1_overflow_count = 0;
        enable_interrupts(INT_EXT);
    }
}

void main() {
    set_tris_b(0x01); // RB0 là ngõ vào (Input), RB1-RB7 là Output
    set_tris_d(0x00); // PORTD điều khiển LCD

    lcd_init(); // Khởi tạo LCD chế độ 4-bit
    lcd_putc("\fMay Do Tan So");
    lcd_putc("\nKhoa Vat Ly-HCMUP");
    delay_ms(1500);
    lcd_putc("\f");

    // Cấu hình thanh ghi OPTION_REG và ngắt
    ext_int_edge(L_TO_H); // Tác động cạnh lên
    setup_timer_1(T1_INTERNAL | T1_DIV_BY_8);
    set_timer1(3036);

    enable_interrupts(INT_EXT);
    enable_interrupts(INT_TIMER1);
    enable_interrupts(GLOBAL);

    while(TRUE) {
        lcd_gotoxy(1, 1);
        printf(lcd_putc, "Tan so am tan:");
        lcd_gotoxy(1, 2);
        printf(lcd_putc, "f = %lu Hz    ", measured_frequency);
        delay_ms(200);
    }
}

Xử lý giao tiếp LCD chế độ 4-bit Nibble

Để tiết kiệm chân vi điều khiển, LCD HD44780U chỉ kết nối 4 chân dữ liệu D4:D7 với RD4:RD7. Dữ liệu 8-bit được tách thành 2 phần: 4-bit cao (High Nibble) được truyền trước kèm một xung kích hoạt chân Enable ($EN = 1 \rightarrow 0$), tiếp theo là 4-bit thấp (Low Nibble). Nhờ đó, tổng số chân I/O tiêu tốn cho LCD giảm từ 11 chân (ở chế độ 8-bit) xuống chỉ còn 6 chân (chân RW nối đất nếu chỉ ghi).

Thử nghiệm và đánh giá kết quả

Hệ thống được kiểm tra thực nghiệm tại phòng thí nghiệm Bộ môn Điện tử - Sư phạm Vật lý, sử dụng máy phát xung chuẩn Audio Function Generator FG-7002C để bơm các dạng sóng Sin, Tam giác và Vuông ở các mốc tần số khác nhau.

| Tần số máy phát chuẩn ($f_{std}$) | Dạng sóng ngõ vào | Tần số đo thực tế trên LCD ($f_{meas}$) | Sai số tuyệt đối ($|\Delta f|$) | Sai số tương đối ($%$) | Trạng thái hiển thị | | :--- | :--- | :--- | :--- | :--- | :--- | | $20\text{ Hz}$ | Sóng Sin | $20\text{ Hz}$ | $0\text{ Hz}$ | $0.00%$ | Ổn định, không rung | | $100\text{ Hz}$ | Sóng Tam giác | $100\text{ Hz}$ | $0\text{ Hz}$ | $0.00%$ | Rõ nét | | $500\text{ Hz}$ | Sóng Vuông (555) | $501\text{ Hz}$ | $+1\text{ Hz}$ | $+0.20%$ | Ổn định | | $1.000\text{ Hz}$ | Sóng Sin | $1.000\text{ Hz}$ | $0\text{ Hz}$ | $0.00%$ | Rất chuẩn | | $5.000\text{ Hz}$ | Sóng Tam giác | $4.998\text{ Hz}$ | $-2\text{ Hz}$ | $-0.04%$ | Ổn định | | $10.000\text{ Hz}$ | Sóng Sin | $10.003\text{ Hz}$ | $+3\text{ Hz}$ | $+0.03%$ | Ổn định | | $20.000\text{ Hz}$ | Sóng Vuông | $19.991\text{ Hz}$ | $-9\text{ Hz}$ | $-0.045%$ | Không méo ký tự | | $50.000\text{ Hz}$ | Sóng Sin | $49.965\text{ Hz}$ | $-35\text{ Hz}$ | $-0.07%$ | Chấp nhận được |

Tần số chuẩn vs Tần số đo thực tế (Hz)
-------------------------------------------------------------
100 Hz   : [====================================] 100 Hz (0.00%)
1000 Hz  : [====================================] 1000 Hz (0.00%)
10000 Hz : [====================================] 10003 Hz (+0.03%)
20000 Hz : [====================================] 19991 Hz (-0.045%)

Kết quả đạt được

  • Tỷ lệ hoàn thành tính năng: Đạt 100% các yêu cầu thiết kế ban đầu.
  • Độ chính xác đo lường: Sai số tương đối trung bình trong toàn bộ dải âm tần ($20\text{ Hz} - 20\text{ kHz}$) đạt mức cực thấp: $\overline{\delta} < 0.05%$.
  • Mạch tạo xung phụ trợ NE555: Hoạt động tin cậy, tạo dãy xung vuông có tần số thay đổi mượt mà từ $10\text{ Hz}$ đến $15\text{ kHz}$ thông qua biến trở định thời.
  • Độ ổn định nhiệt: Nhờ cấu trúc ổn áp 2 tầng qua LM7809 rồi mới qua LM7805, nhiệt độ làm việc của vi mạch ổn áp duy trì ổn định dưới $45^\circ\text{C}$ sau 4 giờ vận hành liên tục mà không bị sụt áp.

Đổi mới và đóng góp

  1. Chuẩn hóa tín hiệu ngõ vào bằng Optocoupler Schmitt-Trigger PC900V: Khác với các thiết kế truyền thống sử dụng transistor rời hoặc IC so áp LM311/LM393 dễ bị nhiễu do điểm dịch điện áp một chiều (DC offset), việc sử dụng PC900V vừa đảm bảo cách ly quang an toàn $100%$ giữa nguồn tín hiệu và vi điều khiển, vừa tự động định hình mọi dạng sóng tín hiệu thành xung vuông tương thích chuẩn TTL 5V.
  2. Kỹ thuật ổn áp phân tầng giảm tải nhiệt: Việc hạ áp trực tiếp từ $12\text{ VDC} \rightarrow 5\text{ VDC}$ trên LM7805 thông thường sẽ làm tiêu tán công suất nhiệt $P_d = (12 - 5) \times I$. Đề tài cải tiến bằng cách ghép tầng qua LM7809 ($12\text{ V} \rightarrow 9\text{ V}$) rồi mới vào LM7805 ($9\text{ V} \rightarrow 5\text{ V}$), giúp giảm tải nhiệt trực tiếp trên IC 5V tới $42.8%$, loại bỏ hoàn toàn hiện tượng sụt áp gây treo vi điều khiển.
  3. Tối ưu hóa tài nguyên phần cứng qua giao tiếp LCD 4-bit: Tiết kiệm được $45.4%$ số đường truyền vi điều khiển (từ 11 đường xuống 6 đường), bảo lưu các chân I/O còn lại trên PORTB và PORTC cho các module mở rộng trong tương lai.
  4. Đóng góp vào công tác đào tạo Sư phạm: Sản phẩm đã chuyển giao thành bộ học cụ thực hành trực quan cho sinh viên chuyên ngành Sư phạm Vật lý, rút ngắn thời gian làm quen với thiết bị đo tần số từ 45 phút xuống dưới 5 phút thao tác.

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế

  • Phòng thí nghiệm Sóng âm & Âm học (Sư phạm Vật lý): Đo đạc tần số dao động của âm thoa, máy phát âm tần, ống cộng hưởng khí Kundt.
  • Xưởng bảo trì và chế tạo thiết bị âm thanh: Kiểm tra nhanh dải tần đáp ứng của bộ tiền khuếch đại (Pre-amplifier), mạch lọc tần âm thanh (Equalizer/Crossover).
  • Mô hình giáo dục STEM: Bộ công cụ học tập mẫu giúp học sinh, sinh viên tìm hiểu về vi điều khiển 8-bit, lập trình C nhúng và kỹ thuật gia công mạch in PCB.

Hướng dẫn lắp đặt và vận hành

  1. Yêu cầu nguồn điện: Cấp nguồn từ adapter ngoài $9\text{ VDC} - 12\text{ VDC}$ (dòng tối thiểu $500\text{ mA}$) vào jack DC của mạch.
  2. Đấu nối tín hiệu: Cắm dây tín hiệu cần đo vào đầu cos kết nối ngõ vào của khối PC900V (chú ý cực tính Anode/Cathode).
  3. Hiệu chỉnh hiển thị: Nếu màn hình LCD không hiển thị rõ chữ, xoay biến trở tinh chỉnh $10\text{ k}\Omega$ kết nối chân VEE để đạt độ tương phản tối ưu.
  4. Vận hành khối tạo xung NE555: Nối chân cấp nguồn $5\text{ V}$ từ mạch chính sang mạch 555, đưa ngõ ra chân 3 của NE555 vào cổng đo của máy để kiểm tra tức thời.

Phân tích chi phí sản xuất (Cost Breakdown)

+------------------------------------+------------------+
| Linh kiện / Vật tư                 | Đơn giá (VND)    |
+------------------------------------+------------------+
| Vi điều khiển PIC16F887-I/P        | 45.000           |
| Màn hình Text LCD 16x2 HD44780U    | 35.000           |
| Optocoupler PC900V                 | 12.000           |
| Thạch anh 20MHz + Đế cắm DIP40     |  8.000           |
| Bộ nguồn: Cầu Diode, 7809, 7805    | 12.000           |
| Vi mạch định thời NE555 + linh kiện|  8.000           |
| Phíp đồng PCB + Hóa chất ăn mòn    | 15.000           |
| Vỏ hộp mica và cọc cắm linh kiện   | 15.000           |
+------------------------------------+------------------+
| TỔNG CHI PHÍ                       | 150.000 VND      |
+------------------------------------+------------------+

So với các thiết bị đo tần số thương mại có giá thành từ $2.000.000 - 3.500.000\text{ VNĐ}$, thiết bị chế tạo giúp tiết kiệm hơn $92.5%$ chi phí đầu tư phòng thí nghiệm.


Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Giới hạn dải tần số cao: Tần số đo tối đa bị chặn ở ngưỡng $\sim 100\text{ kHz}$ do độ trễ quang của diode phát trong PC900V và thời gian đáp ứng của chương trình con phục vụ ngắt ngoài trên MCU chạy ở xung nhịp $20\text{ MHz}$.
  • Độ phân giải ở tần số rất thấp: Với nguyên lý đo đếm xung trong 1 giây, các tần số cực thấp dưới $5\text{ Hz}$ sẽ có sai số rời rạc hóa (sai số $\pm 1\text{ count} = \pm 1\text{ Hz}$, tương đương sai số $20%$ tại $5\text{ Hz}$).
  • Độ suy giảm linh kiện: Đèn LED quang bên trong IC PC900V có xu hướng suy giảm quang thông khoảng $50%$ sau 5 năm hoạt động liên tục, đòi hỏi phải cân chỉnh lại điện trở hạn dòng.

Hướng phát triển mở rộng

  1. Thuật toán đo chu kỳ đảo (Reciprocal Counting): Bổ sung chế độ đo chu kỳ xung (Period Measurement) cho dải tần số thấp ($0.1\text{ Hz} - 100\text{ Hz}$) bằng cách đo khoảng thời gian giữa 2 sườn xung liên tiếp, nâng độ chính xác lên $0.001\text{ Hz}$.
  2. Bộ chia tần số cao (Prescaler 74HC4040): Lắp đặt thêm tầng chia tần 1:10 hoặc 1:100 trước khi đưa vào vi điều khiển để mở rộng dải đo lên dải cao tần RF ($1\text{ MHz} - 50\text{ MHz}$).
  3. Tích hợp đo độ rộng xung (Duty Cycle): Tận dụng khối Capture/Compare/PWM (CCP) có sẵn trong PIC16F887 để đo hệ số công tác của tín hiệu xung vuông.
  4. Truyền thông dữ liệu máy tính: Nâng cấp module giao tiếp UART/USB để vẽ đồ thị biến thiên tần số theo thời gian thực trên giao diện LabVIEW hoặc Python.

Đối tượng hưởng lợi

  • Sinh viên ngành Vật lý & Điện tử: Nắm bắt sâu sắc mối liên hệ giữa lý thuyết xử lý tín hiệu số, kiến trúc vi điều khiển RISC và kỹ năng thiết kế mạch in chuyên nghiệp trên OrCAD/Proteus.
  • Giảng viên và cơ sở giáo dục: Sở hữu bộ thiết bị thí nghiệm âm tần tự chế tạo, kinh tế, dễ nhân bản số lượng lớn cho các lớp học thực hành đông sinh viên.
  • Kỹ sư phát triển nhúng: Tham khảo cấu trúc mã nguồn C chuẩn cho việc xử lý ngắt kép kết hợp điều khiển màn hình LCD tiết kiệm chân.

Câu hỏi thường gặp

1. Yêu cầu nguồn cấp và điều kiện phần cứng để hệ thống vận hành ổn định là gì?

Hệ thống yêu cầu nguồn cấp DC danh định từ $9\text{ V}$ đến $12\text{ V}$ với dòng cung cấp tối thiểu $500\text{ mA}$. Trên bo mạch đã tích hợp sẵn cầu diode chỉnh lưu 1N4007 chống cắm ngược cực và khối ổn áp kép LM7809 - LM7805 cùng hệ thống tụ lọc nhiễu $100\text{ }\mu\text{F}$ và $0.1\text{ }\mu\text{F}$. Tín hiệu đưa vào chân đo cần có biên độ từ $1.5\text{ V}{\text{pp}}$ đến không quá $15\text{ V}{\text{pp}}$.

2. Giới hạn dải đo tần số tối đa của thiết bị là bao nhiêu và làm thế nào để mở rộng?

Thiết bị đo lường chính xác và ổn định nhất trong dải âm tần từ $1\text{ Hz}$ đến $50.000\text{ Hz}$ ($50\text{ kHz}$). Để mở rộng dải đo lên hàng Megahertz ($> 10\text{ MHz}$), cần lắp thêm một IC chia tần số tốc độ cao (ví dụ 74HC390 hoặc 74HC4040) ở tầng đệm trước chân RB0/INT và nhân giá trị biến đếm trong firmware với hệ số chia tương ứng.

3. Tại sao cần sử dụng Optocoupler PC900V thay vì đưa trực tiếp tín hiệu vào vi điều khiển?

Tín hiệu âm tần thực tế từ máy phát hoặc cảm biến âm thanh thường có dạng sin, tam giác với điện áp âm hoặc biên độ không chuẩn, dễ làm hỏng các cổng I/O của vi điều khiển (chỉ chịu được điện áp từ $0\text{ V}$ đến $5\text{ V}$). PC900V tích hợp bộ so áp OPAMP và mạch kích Schmitt Trigger giúp gọt phẳng tín hiệu thành dạng xung vuông chuẩn TTL $0 - 5\text{ V}$ sắc nét, đồng thời cách ly quang điện hoàn toàn để bảo vệ chip PIC16F887.

4. Cách bảo trì và khắc phục sự cố khi màn hình LCD không hiển thị kết quả?

  • Kiểm tra độ tương phản: Xoay biến trở vi chỉnh $10\text{ k}\Omega$ nối với chân số 3 (VEE) của LCD để điều chỉnh độ tương phản điểm ảnh.
  • Kiểm tra dao động thạch anh: Dùng dao động ký kiểm tra chân 13 (OSC1) và chân 14 (OSC2) của PIC16F887 xem có sóng sin $20\text{ MHz}$ hay không.
  • Kiểm tra điện áp nguồn: Đo điện áp tại ngõ ra của IC LM7805, đảm bảo luôn nằm trong khoảng $4.95\text{ V} - 5.05\text{ V}$.

5. Dự toán chi phí chế tạo và thời gian thu hồi vốn đối với cơ sở giáo dục?

Chi phí linh kiện cho một bộ thiết bị hoàn chỉnh chỉ vào khoảng $150.000\text{ VNĐ}$. Nếu trang bị cho một phòng thí nghiệm tiêu chuẩn gồm 20 bàn thực hành, tổng chi phí chỉ là $3.000.000\text{ VNĐ}$ thay vì phải đầu tư hơn $40.000.000\text{ VNĐ}$ cho các thiết bị đo thương mại. Giá trị hoàn vốn đạt được ngay trong học kỳ đầu tiên đưa vào giảng dạy.


Kết luận

Đề tài "Nghiên cứu lắp ráp máy đo âm tần và mạch tạo xung dùng IC 555 hiển thị số sử dụng vi điều khiển PIC16F887" đã giải quyết thành công bài toán đo lường số hóa tần số âm thanh phục vụ giáo dục thực nghiệm. Sự kết hợp đồng bộ giữa khối chuẩn hóa tín hiệu cách ly quang PC900V, kiến trúc xử lý ngắt của vi điều khiển PIC16F887 và khối hiển thị LCD 16x2 đã tạo nên một thiết bị đo có độ chính xác cao (sai số $< 0.05%$), vận hành tin cậy và tối ưu về mặt kinh tế.

Công trình không chỉ mang ý nghĩa nghiên cứu ứng dụng công nghệ điện tử - vi điều khiển trong vật lý thực nghiệm mà còn mở ra hướng tiếp cận chế tạo trang thiết bị dạy học tự chủ, kinh tế cho hệ thống giáo dục Việt Nam. Các kỹ sư, sinh viên và nhà nghiên cứu có thể tiếp tục kế thừa kiến trúc phần cứng và mã nguồn của đề tài để phát triển các hệ thống đo lường đa năng trong tương lai.