4 điểm bởi GN⁺ 2025-11-23 | 1 bình luận | Chia sẻ qua WhatsApp
  • Giải thích theo từng bước các nguyên lý cốt lõi trong thiết kế mạch dao động và những khó khăn khi triển khai thực tế
  • Phân tích vì sao mạch MOSFET đơn không dao động do tồn tại điểm ổn định, đồng thời đề xuất cấu trúc Schmitt trigger để khắc phục
  • Xây dựng bộ dao động thư giãn dựa trên Schmitt trigger để tạo ra tần số ổn định khoảng 3 kHz
  • Sau đó giới thiệu một mạch dao động đơn giản dùng op-amp (bộ khuếch đại thuật toán) và so sánh giữa giá trị tính toán lý thuyết với giá trị đo thực tế
  • Cuối cùng, thông qua bộ dao động dịch pha (phase-shift), giải thích nguyên lý tạo sóng sin bằng sự thay đổi pha của bộ lọc RC, đồng thời nhấn mạnh độ chính xác trong thiết kế mạch tương tự và tầm quan trọng của việc kiểm chứng bằng thực nghiệm

Khái niệm cơ bản về bộ dao động và độ khó

  • Điều kiện cốt lõi của bộ dao động là phải có độ lợi tín hiệu (gain); nếu không có độ lợi thì dao động sẽ bị suy giảm
  • Dù đôi khi mạch khuếch đại có thể vô tình dao động, việc tự thiết kế một bộ dao động tương tự ổn định là rất khó
  • Các mạch dao động thường thấy trên Internet thường không ổn định hoặc cần linh kiện đặc biệt (cuộn cảm có điểm giữa, bóng đèn sợi đốt, v.v.)
  • Mục tiêu là tự xây dựng một bộ dao động dễ hiểu và có tần số dự đoán được mà không cần tham chiếu bên ngoài

Giới hạn của nỗ lực dao động với một MOSFET đơn

  • Thử dùng MOSFET kênh n như một công tắc để tạo dao động, nhưng trên thực tế tồn tại điểm cân bằng ổn định nên dao động dừng lại
  • Lấy ví dụ đường cong Vgs–Id của transistor BS170, cho thấy một trạng thái ổn định hình thành gần khoảng 2 V với dòng điện 300 µA
  • Trạng thái này tương đương với việc “công tắc mở nửa chừng”, khiến dao động không thể duy trì

Chuyển mạch ổn định bằng Schmitt trigger

  • Đưa ra mạch Schmitt trigger như một công tắc điện tử không có điểm ổn định trung gian
  • Khi đầu vào là 0 V, transistor bên phải dẫn; khi đầu vào vượt khoảng 2.6 V, transistor bên trái bật và bên phải tắt
  • Trong quá trình này xuất hiện hồi tiếp dương, khiến mạch không dừng ở trạng thái trung gian
  • Hình thành độ trễ hysteresis 400 mV, với ngưỡng bật ở 2.6 V và ngưỡng tắt ở 2.2 V

Bộ dao động thư giãn dựa trên Schmitt trigger

  • Hồi tiếp tín hiệu đầu ra của Schmitt trigger về đầu vào và thêm độ trễ điện trở–tụ điện (RC) để điều khiển tần số dao động
  • Quan sát được tần số dao động khoảng 3 kHz với nguồn 5 V
  • Điện áp trên tụ dao động trong khoảng 2.2 V~2.6 V, với thời gian nạp và xả được tính lần lượt là 154 µs và 167 µs
  • Mạch có thể được đơn giản hóa, nhưng nếu muốn ít linh kiện hơn thì dùng op-amp (bộ khuếch đại thuật toán) sẽ hiệu quả hơn

Bộ dao động thư giãn dùng op-amp

  • Khi cấu hình R1 = R2 = R3, đầu vào không đảo giữ ở điện áp trung bình của nguồn, mass và đầu ra (⅓~⅔ Vsupply)
  • Ở trạng thái ban đầu, vì tụ ở 0 V nên đầu ra tăng lên; sau đó tụ được nạp và khi đạt ⅔ Vsupply thì đầu ra đảo trạng thái
  • Tụ xả từ ⅔ → ⅓ Vsupply, tạo ra dao động tuần hoàn
  • Với mạch 5 V, Rcap = 10 kΩ, C = 1 µF, tần số lý thuyết là 75 Hz, còn giá trị đo thực tế là 70 Hz
  • Nguyên nhân sai số là do giới hạn của phép gần đúng dòng điện không hằng số; nếu chỉnh R3 thành 47 kΩ sẽ cho kết quả chính xác hơn

Tính tần số và công thức tổng quát

  • Khi R1 = R2, có thể gộp hai điện trở này lại để đơn giản hóa thành công thức phân áp
  • Vì điện áp trên tụ dao động quanh mức trung tâm ½ Vsupply, có thể dùng dòng điện trung bình để tính chu kỳ theo dạng t = Δv · C / I
  • Từ các giá trị ví dụ (R1 = R2 = 10 kΩ, R3 = 47 kΩ), có thể suy ra tần số thực tế

Bộ dao động dịch pha (Phase-Shift)

  • Biến đổi hồi tiếp âm của mạch theo điện áp op-amp để tạo ra đảo pha tại một tần số xác định
  • Nối liên tiếp các bộ lọc thông thấp RC để đạt dịch pha -60° ở mỗi tầng, tổng cộng là -180°
  • Dùng phương trình quan hệ arctan của từng tầng RC để tính ra tần số tương ứng
  • Cả ba tầng đều cho cùng một kết quả, và dao động xuất hiện tại tần số đảo pha

Đặc tính dạng sóng và mô phỏng

  • Vì độ lợi của bộ khuếch đại không bị giới hạn nên đầu ra có dạng sóng vuông, nhưng dạng sóng sau khi qua bộ lọc RC thì gần với sóng sin
  • Kết quả mô phỏng cho thấy hành vi của sóng vuông (màu xanh) và sóng sin (màu xám) gần như trùng khớp
  • Muốn đầu ra là sóng sin thuần hơn thì có thể điều chỉnh độ lợi hoặc dùng cách khuếch đại tín hiệu ở đầu vào không đảo

Các cân nhắc trong thiết kế mạch

  • Tăng trở kháng của từng tầng RC lên 10 lần để giảm thiểu hiệu ứng tải lẫn nhau
  • Nếu trở kháng giống nhau, việc tính hàm truyền của cả sáu linh kiện sẽ trở nên phức tạp
  • Tài liệu cũng đề cập cách dùng bộ lọc thông cao (high-pass) và một transistor đơn, nhưng việc hiện thực thực tế khá khó
  • Mạch trong bài dựa trên cấu trúc bộ tạo sóng sin và sóng vuông méo thấp được thảo luận trong một bài viết của Electronic Design

1 bình luận

 
GN⁺ 2025-11-23
Ý kiến trên Hacker News
  • Có một câu đùa điện tử học xưa là: “nếu muốn làm bộ dao động thì hãy thử làm bộ khuếch đại”
    Điều này làm tôi nhớ đến một bài trên Television Magazine tôi đọc vào thập niên 80, nói về ghi chú dịch vụ của radio Philips
    Trong đó có chỉ dẫn sửa chữa là “Fix VIUPS”, thực ra chỉ là thay vài điện trở và vài tụ điện
    Tác giả tò mò không biết đó là gì nên đã liên hệ tận trụ sở Philips, và cuối cùng một kỹ sư trả lời rằng “VIUPS là tên của âm thanh nó phát ra khi hỏng” — “VIUPS VIUPS VIUPS”

    • Phiên bản tôi từng nghe là: “bộ khuếch đại thì dao động, còn bộ dao động thì không dao động
    • Điều này có thể được minh họa dễ dàng bằng kỹ thuật no-input. Nối lại đầu ra của mixer âm thanh vào đầu vào của nó sẽ tạo phản hồi, và từ đó có thể tạo ra nhiều âm khác nhau
      Nhưng phải cẩn thận — video minh họa
    • Đồng cảm, đúng là một câu chuyện thật sự gây cộng hưởng (resonates)
    • Cách dễ nhất để quấy rầy hàng xóm bằng radio AM là tăng gain của máy thu AM tái sinh lên quá cao
      Khi đó nó sẽ dao động và phát ra nhiễu ở cùng tần số. Thêm một micro carbon vào và đẩy gain lên tối đa thì sẽ thành một máy phát AM đơn giản
  • Bộ dao động LC khá dễ làm
    Tôi đã viết một chương trình tạo ngẫu nhiên các topology mạch và dùng mô phỏng SPICE để tìm xem chúng có dao động hay không
    Kết quả là tôi phát hiện dạng đơn giản nhất gồm 1 cuộn cảm, 2 tụ điện, 1 điện trở và 1 transistor
    Tôi gọi họ mạch này là “bộ dao động LCCRT”, và khi tạo tất cả các tổ hợp có thể thì có 12 topology duy nhất
    Khi thử nghiệm thực tế, chúng khá ổn định, và tôi còn dùng chúng cho máy dò kim loại — liên kết dự án

    • Gọi là bộ dao động “mới” thôi chứ thật ra tất cả đều là biến thể của bộ dao động Collpitts. Đây đều là các cấu trúc đã được nghiên cứu từ 100 năm trước, nên cũng cần khiêm tốn
    • Với tư cách dân CS mới ở mức nhập môn điện tử học, tôi thắc mắc vì sao bài viết lại tập trung vào transistor hơn là bộ dao động LC
    • Hay thật! Nếu phân loại theo Q-factor thì có lẽ còn thú vị hơn nữa
    • Cách tiếp cận này rất ấn tượng. Tôi xem qua kho mã và nhận được khá nhiều cảm hứng
    • Đăng bài lên Hacker News là lúc nào cũng xảy ra chuyện này — luôn có ai đó áp đảo bằng kiến thức
  • Khi còn nhỏ bắt đầu học điện tử, để làm được bộ dao động thì tôi phải làm bộ khuếch đại, còn để làm bộ khuếch đại thì lại phải làm bộ dao động
    Tham vọng của một đứa trẻ 7 tuổi lớn hơn cả kỹ năng kỹ thuật. Sau vô số lần thử, cuối cùng tôi mới làm được một bộ khuếch đại không bị dao động
    Tôi thậm chí còn không biết đọc mã màu điện trở, nhưng lại tưởng mình biết

    • Tôi rất thích cụm “tham vọng của tuổi lên 7”. Đó là thái độ tuyệt đối không nên đánh mất
    • Nhiều khi thứ cản trở chúng ta chính là sự thấu hiểu trưởng thành rằng “điều này là bất khả thi”
    • Nếu kết hợp câu “tại sao?” của một đứa trẻ 3 tuổi với tham vọng của một đứa trẻ 7 tuổi, có khi sẽ tạo ra thiên tài năng suất nhất thế giới
  • Tôi muốn giải thích ngắn gọn câu chuyện về bóng đèn (lightbulb) trong bài
    Lý do khó lấy được sóng sin sạch từ bộ dao động là vì ổn định độ lợi
    Nếu độ lợi quá thấp thì dao động sẽ tắt, còn nếu quá cao thì nó bão hòa và sinh ra họa âm
    Bóng đèn hoạt động như một điện trở tuyến tính trong khoảng thời gian ngắn, nhưng là điện trở phi tuyến trong khoảng thời gian dài
    Khi dây tóc nóng lên thì điện trở tăng, nên có thể dùng điều này để tạo bộ dao động tự ổn định
    Dùng bóng đèn làm điện trở điều chỉnh độ lợi của bộ khuếch đại thì có thể thu được sóng sin gần như hoàn hảo

  • Bộ dao động về cơ bản chỉ là đặt độ lợi quanh độ trễ pha (>90 độ)
    Vấn đề là làm sao để nó dễ dự đoán và ổn định đến mức nào
    Cốt lõi là làm cho nó ít nhạy hơn với các yếu tố bên ngoài như nhiệt độ, điện áp, thời gian, v.v., và để làm điều đó thì có thể tham khảo các khái niệm như Allan Variance

    • Giống như meme “vẽ nốt phần còn lại của con cú”, nói thì dễ chứ làm bộ dao động không hề đơn giản
      Ngay cả sau khi đèn chân không được phát minh, người ta vẫn mất rất lâu để tạo ra bộ dao động ổn định
      Cuối cùng có một công ty đã thành công, và đó chính là Hewlett-Packard
  • Tôi từng đọc rằng phát minh ra bộ dao động thật ra là một tai nạn tình cờ
    Có người đang làm bộ khuếch đại thì nối nhầm đầu vào với đầu ra và tạo ra tiếng “bíp”, và đó là khởi đầu của bộ dao động
    Khi ấy người ta dùng máy phát điện AC để tạo tần số cao, nhưng giới hạn chỉ khoảng 15kHz
    Từ sai lầm đó, khái niệm phản hồi dương ra đời, rồi sau đó các mạch dao động kinh điển cũng xuất hiện

  • Có hai loại mạch chưa được nhắc đến
    Một loại là “Two Transistor Metronome”, tôi đã làm nó cùng cha khi khoảng 7–8 tuổi
    Đây là một bộ dao động thư giãn mà hai transistor hoạt động kiểu gần giống SCR — liên kết mạch
    Bộ dao động trong Roland TB303 hay dòng Korg MS cũng dùng cấu trúc tương tự

    • Thứ tôi nghĩ đến là Astable Multivibrator. Có lẽ là cùng một mạch
      Thông thường có nhiều phiên bản dùng hai transistor NPN — liên kết tham khảo
  • Tôi từng làm một bộ chèn tín hiệu để debug pedal hiệu ứng guitar
    Astable Multivibrator tạo ra quá nhiều họa âm đến mức có thể nghe thấy ngay từ tầng đầu vào
    Cảm giác gần như đẩy tín hiệu đi như Juggernaut
    Đây là dịp tốt để học về bộ lọc, và cuối cùng tôi đã tạo ra được sóng sin sạch

  • Bộ dao động khó là vì độ chính xác (spec) mà chúng ta yêu cầu quá cao
    Ví dụ, bộ dao động cho đồng hồ có thể chỉ gồm 5 linh kiện, nhưng lại phải sai số dưới 1 giây mỗi ngày (100ppm)
    Rất khó để đáp ứng đồng thời mọi điều kiện như điện năng, khởi động, ổn định nhiệt độ, v.v.
    Nếu chỉ cần nó rung động thôi thì cứ làm một bộ tạo nhiễu là được
    Với người mới bắt đầu, bộ dao động dễ nhất là 555 timer. Sai số khoảng ±10%, nhưng với đa số mục đích thì như vậy là đủ
    555 có cấu trúc đơn giản gồm 2 comparator, bộ chia điện áp và tụ điện
    Nhưng mạch hiện đại cần nhanh và chính xác hơn, nên nếu viết bài cho người mới thì tốt hơn là giải thích xoay quanh 555

  • Nếu bạn quan tâm đến điện tử học thiên về âm nhạc, tôi đề xuất kênh YouTube của Moritz Klein

    • Vừa nhìn liên kết là tôi biết ngay sẽ là Moritz Klein