- Các thành phần bắt buộc:
- Giải thích mạch:
- Bộ tạo sóng vuông dựa trên IC hẹn giờ 555:
- Cổng kích hoạt Schmitt:
- Arduino đo điện dung:
- Tóm tắt và Kiểm tra:
Khi chúng tôi bắt gặp bảng mạch đã được thiết kế trước đó hoặc chúng tôi lấy một bảng mạch từ TV hoặc máy tính cũ ra để sửa chữa nó. Và đôi khi chúng ta cần biết điện dung của tụ điện cụ thể trong bảng để loại bỏ lỗi. Sau đó, chúng tôi gặp phải vấn đề trong việc lấy giá trị chính xác của tụ điện từ bảng, đặc biệt nếu đó là Thiết bị gắn trên bề mặt. Chúng ta có thể mua thiết bị để đo điện dung, nhưng tất cả những thiết bị này đều đắt tiền và không phải ai cũng có. Với ý nghĩ đó, chúng tôi sẽ thiết kế một Máy đo điện dung Arduino đơn giản để đo điện dung của các tụ điện chưa biết.
Máy đo này có thể được thực hiện dễ dàng và cũng tiết kiệm chi phí. Chúng tôi sẽ tạo ra Máy đo điện dung sử dụng Arduino Uno, cổng kích hoạt Schmitt và bộ định thời 555 IC.
Các thành phần bắt buộc:
- IC hẹn giờ 555
- IC 74HC14 Cổng kích hoạt Schmitt hoặc cổng KHÔNG.
- Điện trở 1K Ω (2 miếng), điện trở 10KΩ
- Tụ điện 100nF, tụ điện 1000µF
- 16 * 2 LCD,
- Breadboard và một số đầu nối.
Giải thích mạch:
Sơ đồ mạch của Máy đo điện dung sử dụng Arduino được hiển thị trong hình dưới đây. Mạch rất đơn giản, một màn hình LCD được giao tiếp với Arduino để hiển thị Điện dung đo được của tụ điện. Mạch tạo sóng vuông (555 ở chế độ Linh hoạt) được kết nối với Arduino, nơi chúng tôi đã kết nối Tụ điện có điện dung cần đo. Một cổng kích hoạt Schmitt (IC 74LS14) được sử dụng để đảm bảo rằng chỉ có sóng hình chữ nhật được cấp cho Arduino. Để lọc tiếng ồn, chúng tôi đã thêm một vài tụ điện trên nguồn.
Mạch này có thể đo chính xác điện dung trong khoảng 10nF đến 10uF.
Bộ tạo sóng vuông dựa trên IC hẹn giờ 555:
Trước hết, chúng ta sẽ nói về bộ tạo sóng vuông dựa trên IC hẹn giờ 555, hay tôi nên nói 555 Astable Multivibrator. Chúng ta biết rằng điện dung của tụ điện không thể đo trực tiếp trong mạch kỹ thuật số, nói cách khác UNO xử lý tín hiệu kỹ thuật số và nó không thể đo điện dung trực tiếp. Vì vậy chúng tôi sử dụng mạch tạo sóng vuông 555 để liên kết tụ điện với thế giới kỹ thuật số.
Nói một cách đơn giản, bộ đếm thời gian cung cấp đầu ra sóng vuông có tần số liên quan trực tiếp đến điện dung được kết nối với nó. Vì vậy, đầu tiên chúng ta lấy tín hiệu sóng vuông có tần số là đại diện cho điện dung của tụ điện chưa biết và cấp tín hiệu này tới UNO để nhận giá trị thích hợp.
Cấu hình chung 555 ở chế độ Astable như hình bên dưới:
Tần số tín hiệu đầu ra phụ thuộc vào RA, điện trở RB và tụ điện C. Phương trình được cho là, Tần số (F) = 1 / (Khoảng thời gian) = 1,44 / ((RA + RB * 2) * C).
Ở đây RA và RB là giá trị điện trở và C là giá trị điện dung. Bằng cách đặt các giá trị điện trở và điện dung trong phương trình trên, chúng ta nhận được tần số của sóng vuông đầu ra.
Chúng tôi sẽ kết nối 1KΩ dưới dạng RA và 10KΩ ở dạng RB. Vì vậy, công thức trở thành, Tần số (F) = 1 / (Khoảng thời gian) = 1,44 / (21000 * C).
Bằng cách sắp xếp lại các điều khoản chúng tôi có, Điện dung C = 1,44 / (21000 * F)
Trong Mã chương trình của chúng tôi (xem bên dưới), để nhận được chính xác giá trị điện dung, chúng tôi đã tính kết quả theo nF bằng cách nhân kết quả thu được (tính bằng farads) với “1000000000”. Ngoài ra, chúng tôi đã sử dụng '20800' thay vì 21000, vì điện trở chính xác của RA và RB là 0,98K và 9,88K.
Vì vậy, nếu chúng ta biết tần số của sóng vuông chúng ta có thể nhận được giá trị điện dung.
Cổng kích hoạt Schmitt:
Các tín hiệu do mạch hẹn giờ tạo ra không hoàn toàn an toàn khi được cấp trực tiếp cho Arduino Uno. Với độ nhạy của UNO, chúng tôi sử dụng cổng kích hoạt Schmitt. Cổng kích hoạt Schmitt là một cổng logic kỹ thuật số.
Cổng này cung cấp OUTPUT dựa trên mức điện áp INPUT. Kích hoạt Schmitt có mức điện áp THERSHOLD, khi tín hiệu INPUT được áp dụng cho cổng có mức điện áp cao hơn mức THRESHOLD của cổng logic, OUTPUT sẽ ở mức CAO. Nếu mức tín hiệu điện áp INPUT thấp hơn THRESHOLD, OUTPUT của cổng sẽ THẤP. Với điều đó, chúng tôi thường không nhận được trình kích hoạt Schmitt một cách riêng biệt, chúng tôi luôn có cổng KHÔNG theo sau trình kích hoạt Schmitt. Schmitt Trigger hoạt động được giải thích ở đây: Cổng kích hoạt Schmitt
Chúng ta sẽ sử dụng chip 74HC14, chip này có 6 cổng Schmitt Trigger trong đó. Các cổng SIX này được kết nối bên trong như thể hiện trong hình bên dưới.
Các Truth Bảng cổng Inverted Schmitt trigger là show ở bên dưới con số, với điều này chúng ta phải chương trình UNO cho đảo ngược khoảng thời gian tích cực và tiêu cực tại các khu cảng của nó.
Chúng tôi kết nối tín hiệu được tạo ra bởi mạch hẹn giờ với cổng ST, chúng tôi sẽ có sóng hình chữ nhật của các khoảng thời gian đảo ngược ở đầu ra mà an toàn để đưa cho UNO.
Arduino đo điện dung:
Uno có một chức năng đặc biệt xungIn , cho phép chúng tôi xác định thời lượng trạng thái dương hoặc thời gian trạng thái âm của một sóng hình chữ nhật cụ thể:
Htime = xungIn (8, CAO); Ltime = xungIn (8, LOW);
Các pulseIn biện pháp chức năng thời gian mà cao hay thấp mức độ hiện diện tại PIN8 của Uno. Các pulseIn biện pháp chức năng thời gian cao này (Htime) và Time Low (Ltime) trong vài giây vi. Khi chúng ta thêm Htime và Ltime với nhau, chúng ta sẽ có Khoảng thời gian chu kỳ và bằng cách đảo ngược nó, chúng ta sẽ có Tần suất.
Khi chúng ta có tần số, chúng ta có thể nhận được điện dung bằng cách sử dụng công thức chúng ta đã thảo luận trước đó.
Tóm tắt và Kiểm tra:
Vì vậy, tóm lại, chúng tôi kết nối tụ điện chưa biết với mạch bộ định thời 555, tạo ra đầu ra sóng vuông có tần số liên quan trực tiếp đến điện dung của tụ điện. Tín hiệu này được đưa đến UNO thông qua cổng ST. UNO đo tần số. Với tần số đã biết, chúng tôi lập trình UNO để tính điện dung bằng công thức đã thảo luận trước đó.
Hãy xem một số kết quả tôi nhận được, Khi tôi kết nối Tụ điện 1uF, kết quả là 1091,84 nF ~ 1uF. Và kết quả với Tụ Polyester 0,1uF là 107,70 nF ~ 0,1uF
Sau đó, tôi kết nối Tụ gốm 0,1uF và kết quả là 100,25 nF ~ 0,1uF. Ngoài ra, kết quả với tụ điện 4,7uF là 4842,83 nF ~ 4,8uF
Vì vậy, đó là cách chúng ta có thể đơn giản đo Điện dung của bất kỳ tụ điện nào.