Mục lục:

Cách đo hệ số công suất AC bằng Arduino: 4 bước
Cách đo hệ số công suất AC bằng Arduino: 4 bước

Video: Cách đo hệ số công suất AC bằng Arduino: 4 bước

Video: Cách đo hệ số công suất AC bằng Arduino: 4 bước
Video: Arduino Nano điều khiển AC servo Inovance 2024, Tháng mười một
Anonim
Cách đo hệ số công suất AC bằng Arduino
Cách đo hệ số công suất AC bằng Arduino
Cách đo hệ số công suất AC bằng Arduino
Cách đo hệ số công suất AC bằng Arduino

Chào mọi người! Đây là hướng dẫn thứ ba của tôi, hy vọng bạn thấy nó có nhiều thông tin:-) Đây sẽ là hướng dẫn về cách thực hiện phép đo hệ số công suất cơ bản bằng Arduino. Trước khi bắt đầu, chúng ta cần lưu ý một số điều sau:

  1. Điều này sẽ CHỈ hoạt động với tải TUYẾN TÍNH (ví dụ: động cơ cảm ứng, máy biến áp, solenoid)
  2. Điều này sẽ KHÔNG hoạt động với KHÔNG TUYẾN TÍNH (ví dụ: Bóng đèn CFL, bộ nguồn chế độ chuyển đổi, đèn LED)
  3. Tôi là một kỹ sư điện và rất có năng lực khi làm việc với điện thế nguồn (tức là 230V)

Cảnh báo! Nếu bạn không được đào tạo hoặc không biết cách làm việc chính xác với điện áp nguồn, tôi khuyên bạn không nên tiếp tục với phần đó của tài liệu hướng dẫn và tôi sẽ chỉ cho bạn một phương pháp an toàn để chứng minh mạch hoạt động.

Đây là một giải pháp phần cứng cho vấn đề đo PF trong tải tuyến tính. Điều này cũng có thể được thực hiện hoàn toàn thông qua mã bao gồm khả năng đo tải phi tuyến tính, mà tôi sẽ đề cập đến trong một hướng dẫn khác.

Vì lợi ích của bất kỳ người mới bắt đầu nào đọc phần này, hệ số công suất là tỷ số giữa công suất thực trên công suất biểu kiến và có thể được tính toán bằng cách tìm cosin của góc pha giữa điện áp nguồn và dòng điện (xem hình ảnh đính kèm từ Google). Điều này rất quan trọng trong các ứng dụng AC vì "Công suất biểu kiến" (Volt-Ampe) có thể dễ dàng được tính toán bằng cách sử dụng Điện áp nhân với Dòng điện. Tuy nhiên, để có được công suất thực hoặc công suất biểu kiến "True Power" (Watts) phải được nhân với hệ số công suất để thực hiện phép đo công suất thực tính bằng Watts. Điều này chỉ áp dụng cho các tải có thành phần cảm ứng hoặc điện dung đáng kể (chẳng hạn như động cơ). Các tải điện trở thuần như lò sưởi điện hoặc bóng đèn sợi đốt có hệ số công suất là 1,0 (thống nhất) và do đó Công suất thực và Công suất biểu kiến là như nhau.

Bước 1: Thiết kế mạch

Thiết kế mạch
Thiết kế mạch
Thiết kế mạch
Thiết kế mạch
Thiết kế mạch
Thiết kế mạch
Thiết kế mạch
Thiết kế mạch

Hệ số công suất có thể được tính bằng máy hiện sóng, bằng cách đo chênh lệch thời gian giữa tín hiệu điện áp và dòng điện. Chúng có thể được đo tại bất kỳ điểm nào trong sóng miễn là chúng được lấy mẫu ở cùng một nơi. Trong trường hợp này, điều hợp lý là đo giữa các điểm giao nhau bằng không (các điểm trong sóng mà điện áp cắt qua trục X).

Tôi đã thiết kế mạch sau trong Multisim. Giả sử dòng điện và điện áp trên tải là dạng sóng hình sin thuần túy, hệ số công suất có thể được đo. Mỗi dạng sóng được đưa vào một bộ tách sóng không (đôi khi được gọi là bộ chuyển đổi sóng sin sang vuông) đơn giản là một op-amp 741 ở chế độ so sánh trong đó điện áp so sánh là 0V. Khi sóng sin ở chu kỳ âm, một xung DC âm được tạo ra, và khi sóng sin tích cực, một xung DC dương được tạo ra. Hai sóng vuông sau đó được so sánh bằng cách sử dụng cổng logic OR (XOR) độc quyền, sẽ xuất ra xung DC cao dương chỉ khi các sóng vuông không chồng lên nhau và 0V khi chúng chồng lên nhau. Do đó, đầu ra của cổng XOR là chênh lệch thời gian (delta t) giữa hai sóng từ điểm chúng vượt qua điểm không. Tín hiệu chênh lệch này sau đó có thể được bộ vi điều khiển hẹn giờ và chuyển đổi thành hệ số công suất bằng phép tính sau (đảm bảo máy tính khoa học của bạn tính bằng độ không phải radian):

cos (phi) = f * dt * 360

Ở đâu:

cos (phi) - hệ số công suất

f - Tần số của nguồn cung cấp được đo

dt - delta t hoặc chênh lệch thời gian giữa các sóng

360 - một hằng số được sử dụng để đưa ra câu trả lời theo độ

Trong các hình ảnh, bạn sẽ thấy ba dấu vết của máy hiện sóng mô phỏng cho mạch. Hai tín hiệu đầu vào đại diện cho dòng điện và điện áp tải. Tôi đã đưa ra tín hiệu thứ hai lệch pha 18 độ, để phân tích lý thuyết. Điều này mang lại PF khoảng 0,95.

Bước 2: Tạo mẫu và thử nghiệm

Tạo mẫu & Thử nghiệm
Tạo mẫu & Thử nghiệm
Tạo mẫu & Thử nghiệm
Tạo mẫu & Thử nghiệm
Tạo mẫu & Thử nghiệm
Tạo mẫu & Thử nghiệm

Đối với bản dựng nguyên mẫu của mình, tôi đặt thiết kế mạch trên một breadboard không hàn. Từ biểu dữ liệu UA741CN và biểu dữ liệu CD4070CN, cả hai IC đều chạy khỏi nguồn cung cấp 12-15 Vdc, vì vậy tôi đã cấp nguồn bằng cách sử dụng hai pin để tạo ra nguồn điện kép + 12V, 0V, -12V Volt.

Mô phỏng tải

Bạn có thể mô phỏng tải bằng cách sử dụng bộ tạo tín hiệu kênh đôi hoặc bộ tạo chức năng. Tôi đã sử dụng chiếc hộp Trung Quốc rẻ tiền và vui vẻ này để tạo ra hai sóng sin 50 Hz cách nhau 18 độ và đưa tín hiệu vào mạch. Bạn có thể thấy các dạng sóng thu được trên máy hiện sóng. Trong các hình trên, bạn có thể thấy hai sóng vuông chồng lên nhau (đầu ra từ mỗi op-amp) và ba hình còn lại minh họa đầu ra của cổng XOR. Chú ý độ rộng của xung đầu ra ngắn hơn khi góc pha giảm dần. Các ví dụ trên hiển thị 90, 40, 0 Độ.

Bước 3: Mã Arduino

Như đã đề cập ở trên, đầu ra từ mạch đo là chênh lệch thời gian giữa hai tín hiệu đầu vào (tức là tín hiệu dòng điện và tín hiệu điện áp). Mã arduino sử dụng "xungIn" để đo độ dài của xung đầu ra từ mạch đo trong nano giây và sử dụng nó trong công thức PF đã đề cập ở trên.

Mã bắt đầu bằng cách xác định các hằng số, chủ yếu là để làm cho mã có tổ chức và dễ đọc hơn. Quan trọng nhất, mã C (mã arduino) hoạt động theo radian không phải độ, vì vậy cần chuyển đổi từ radian sang độ để tính góc và PF sau này. Một radian là khoảng. 57,29577951 độ. Số 360 cũng được lưu trữ và hệ số nhân 1x10 ^ -6 để chuyển đổi Giây nano thành Giây đơn giản. Tần số cũng được xác định khi bắt đầu, nếu bạn đang sử dụng bất kỳ thứ gì khác ngoài 50Hz, hãy đảm bảo rằng tần số này được cập nhật khi bắt đầu mã.

Bên trong "void loop ()", tôi đã yêu cầu Arduino tính toán góc dựa trên công thức PF đã đề cập trước đó. Trong lần lặp đầu tiên của tôi đối với mã này, mã sẽ trả về góc và hệ số công suất chính xác, tuy nhiên giữa mỗi kết quả đúng, một số giá trị thấp sai sót cũng được trả về trong bảng điều khiển nối tiếp. Tôi nhận thấy đây là mỗi lần đọc khác hoặc mỗi bốn lần đo. Tôi đã đặt câu lệnh "if" bên trong vòng lặp "for" để lưu trữ giá trị lớn nhất của mỗi bốn lần đọc liên tiếp. Nó thực hiện điều này bằng cách so sánh phép tính với "angle_max" ban đầu bằng 0 và nếu nó lớn hơn sẽ lưu giá trị mới bên trong "angle_max". Điều này được lặp lại cho phép đo PF. Bằng cách thực hiện điều này trong vòng lặp "for", điều đó có nghĩa là góc chính xác và pf luôn được trả về, nhưng nếu góc đo được thay đổi (cao hơn hoặc thấp hơn), khi "for" kết thúc "angle_max" sẽ đặt lại về 0 cho lần kiểm tra tiếp theo, khi " void loop () "lặp lại. Có một ví dụ rất hay về cách hoạt động của điều này trên trang web Arduino (https://www.arduino.cc/en/Tutorial/Calibration). Công thức "nếu" thứ hai chỉ đơn giản là ngăn không cho trả về bất kỳ giá trị nào cao hơn 360 trong trường hợp đo sai cao hơn khi thiết bị đang thử nghiệm được tắt.

Bước 4: Kiểm tra axit

Thử nghiệm axit!
Thử nghiệm axit!
Thử nghiệm axit!
Thử nghiệm axit!
Thử nghiệm axit!
Thử nghiệm axit!

Không thử những điều sau trừ khi bạn biết cách làm việc an toàn với điện áp nguồn AC. Nếu bạn nghi ngờ về sự an toàn của mình, hãy thử mô phỏng các tín hiệu đầu vào bằng bộ tạo dạng sóng kênh đôi.

Theo yêu cầu của một người theo dõi, tôi đã tạo một bố cục breadboard trên Fritzing để đưa ra ý tưởng tốt hơn về mạch và mạch lấy mẫu / cảm biến (tôi đã đính kèm tệp.fzz và sơ đồ.png). Động cơ ở trên cùng đại diện cho chiếc quạt bàn mà tôi đã sử dụng và cuộn dây cảm ứng đại diện cho biến dòng mà tôi quấn quanh dây dẫn Live. Tôi cấp nguồn cho IC 741 bằng cách sử dụng hai bộ pin 12V được sắp xếp để cung cấp +12 VDC, 0 VDC (mặt đất) và -12 VDC. CD4070 cũng có thể được cấp nguồn trực tiếp từ thanh nguồn 5V của Arduino.

Để chứng minh khái niệm hoạt động trong thực tế, mạch được xây dựng trên một breadboard ít hàn hơn. Từ những hình ảnh, bạn có thể thấy sự sắp xếp mạch. Tôi đã sử dụng quạt bàn làm tải trọng cảm ứng của mình để kiểm tra khái niệm này. Giữa nguồn điện 230V và tải là thiết bị cảm biến của tôi. Tôi có một biến áp bước xuống biến đổi trực tiếp 230V thành 5V để cho phép lấy mẫu dạng sóng điện áp. Một máy biến dòng không xâm lấn được kẹp xung quanh dây dẫn trực tiếp được sử dụng để lấy mẫu dạng sóng hiện tại (bên phải của điện trở bọc nhôm). Lưu ý rằng bạn không nhất thiết phải biết biên độ của dòng điện hoặc điện áp, chỉ cần dạng sóng để op-amp xác định điểm giao cắt không. Các hình ảnh trên cho thấy dạng sóng dòng điện và điện áp thực tế từ quạt và bảng điều khiển nối tiếp arduino, báo cáo PF là 0,41 và góc là 65 °.

Bộ phận chính hoạt động này có thể được kết hợp vào một màn hình năng lượng sản xuất tại nhà để thực hiện các phép đo công suất thực. Nếu có năng lực, bạn có thể thử theo dõi các tải cảm ứng và điện trở khác nhau và xác định hệ số công suất của chúng. Và nó đây! một phương pháp rất đơn giản để đo hệ số công suất.

Đề xuất: