Mục lục:

Bộ ghi dữ liệu giám sát dòng điện AC: 9 bước (có hình ảnh)
Bộ ghi dữ liệu giám sát dòng điện AC: 9 bước (có hình ảnh)

Video: Bộ ghi dữ liệu giám sát dòng điện AC: 9 bước (có hình ảnh)

Video: Bộ ghi dữ liệu giám sát dòng điện AC: 9 bước (có hình ảnh)
Video: Sơ Đồ Nguyên Lý Và Cách Đi Dây Âm Tường Cho Hệ Thống Camera 2024, Tháng bảy
Anonim
Bộ ghi dữ liệu giám sát hiện tại AC
Bộ ghi dữ liệu giám sát hiện tại AC

Xin chào tất cả mọi người, chào mừng bạn đến với hướng dẫn đầu tiên của tôi! Ban ngày tôi là kỹ sư thử nghiệm cho một công ty cung cấp thiết bị sưởi ấm công nghiệp, ban đêm tôi là một người đam mê công nghệ và tự làm. Một phần công việc của tôi liên quan đến việc kiểm tra hiệu suất của máy sưởi, nhân dịp này tôi muốn có thể theo dõi hoạt động RMS hiện tại của 8 thiết bị trên 1000 giờ và ghi dữ liệu để vẽ biểu đồ kết quả sau đó. Tôi có quyền truy cập vào một bộ ghi dữ liệu nhưng nó đã được cam kết cho một dự án khác và tôi cần một thứ gì đó chi phí thấp, vì vậy tôi quyết định tập hợp lại bộ ghi dữ liệu cơ bản này.

Dự án sử dụng Arduino Uno để đọc các cảm biến tương tự thông qua bộ chuyển đổi tương tự sang kỹ thuật số (ADC) và ghi lại dữ liệu với một dấu thời gian trên thẻ SD. Có rất nhiều lý thuyết và tính toán liên quan đến việc thiết kế các mạch, vì vậy thay vì giải thích hoàn toàn mọi thứ, tôi sẽ chỉ cho bạn cách tạo ra nó. Nếu bạn quan tâm đến việc xem bản hit ĐẦY ĐỦ thì hãy cho tôi biết trong phần bình luận và tôi sẽ giải thích thêm.

GHI CHÚ:

Tôi đã có rất nhiều câu hỏi về tính toán True RMS. Thiết bị này sử dụng bộ chỉnh lưu nửa sóng để thu lại đỉnh của sóng, sau đó có thể nhân với 0,707 để tạo ra RMS. Thông thường, nó sẽ chỉ cho kết quả chính xác với tải tuyến tính (tức là dòng điện được đo là một sóng hình sin thuần túy). Nguồn cung cấp hoặc tải phi tuyến tính cho dạng sóng tam giác, hình chữ nhật hoặc bất kỳ dạng sóng không phải hình sin nào khác sẽ không cho phép tính RMS thực sự. Thiết bị này chỉ đo dòng điện xoay chiều, nó không được thiết kế để đo điện áp, do đó nó không tính toán hoặc đo hệ số công suất. Vui lòng xem hướng dẫn khác của tôi về cách tạo một đồng hồ đo hệ số công suất có thể được sử dụng để thực hiện việc này. Nhiều người cũng đã nói rằng khớp nối AC thẳng với đường tâm 2,5V tốt hơn, tuy nhiên điều này gây ra các biến chứng vì nó liên quan đến việc có tốc độ lấy mẫu kỹ thuật số đủ nhanh, tính trung bình / làm mịn dữ liệu mạnh mẽ, v.v. và độ không đảm bảo mà điều này đưa ra cao hơn rất nhiều so với đo giá trị thô. Cá nhân tôi thích các giải pháp phần cứng và mã đơn giản hơn nếu có thể nên tôi không quan tâm đến phương pháp đó. Độ chính xác khôn ngoan Tôi tin rằng cái này tốt hơn nhiều so với cái sau và bạn sẽ thấy sau trong kết quả của tôi có một hệ số hồi quy gần bằng 1,0 sau khi hiệu chuẩn.

Bước 1: Máy biến áp hiện tại

Máy biến dòng
Máy biến dòng
Máy biến dòng
Máy biến dòng

Dự án này sử dụng máy biến dòng HMCT103C 5A / 5MA. Nó có tỉ lệ 1: 1000 vòng nghĩa là cứ 5A dòng điện chạy qua dây dẫn thì 5mA chạy qua CT. Một điện trở cần được nối qua hai đầu của CT để cho phép đo điện áp trên nó. Trong trường hợp này, tôi đã sử dụng một điện trở 220 Ohm, do đó sử dụng định luật Ohm V = IR, đầu ra của CT sẽ là 1,1 Volts AC, cho mỗi 5mA của dòng CT (hoặc mỗi 5A của dòng điện đo được). Các CT được hàn để dải bảng với điện trở và một số dây thiết bị để làm dây dẫn bay. Tôi đã kết thúc các dây dẫn bằng phích cắm giắc cắm âm thanh nam 3,5 mm.

Đây là bảng thông số cho máy biến dòng

Bảng dữliệu

Bước 2: Điều hòa tín hiệu

Điều hòa tín hiệu
Điều hòa tín hiệu
Điều hòa tín hiệu
Điều hòa tín hiệu

Tín hiệu từ CT sẽ yếu nên cần được khuếch đại. Đối với điều này, tôi đã hàn với nhau một mạch khuếch đại đơn giản bằng cách sử dụng một amp op đường sắt kép uA741. Trong trường hợp này, mức tăng do đó được đặt thành 150 bằng cách sử dụng công thức Rf / Rin (150k / 1k). Tuy nhiên tín hiệu đầu ra từ bộ khuếch đại vẫn là AC, diode trên đầu ra của op-amp cắt nửa chu kỳ âm của AC và chuyển điện áp dương đến tụ điện 0,1uF để làm mịn sóng thành tín hiệu một chiều gợn sóng. Dưới đây là các bộ phận tạo nên mạch:

  • V1 - Đây là tùy ý trong sơ đồ này, nó chỉ đơn giản là đại diện cho điện áp tín hiệu được đưa vào đầu vào không đảo ngược của op-amp.
  • R1 - Đây được gọi là điện trở phản hồi (Rf) và được đặt thành 150k
  • R2 - Đây được gọi là điện trở đầu vào (Rin) và được đặt thành 1k
  • 741 - Đây là mạch tích hợp uA741
  • VCC - Đường ray cung cấp tích cực + 12V
  • VEE - Đường ray cung cấp âm -12V
  • D1 - Là diode chỉnh lưu tín hiệu sóng haf 1N4001
  • C3 - Capactor này giữ tín hiệu DC trong một thời gian nhất định

Trong hình 2, bạn có thể thấy nó được lắp ráp bằng Veroboard và dây đồng đóng hộp. 4 lỗ đã được khoan cho chân đế PCB để chúng có thể được xếp chồng lên nhau (vì có tám kênh nên cần có tám mạch khuếch đại hoàn toàn.

Bước 3: Cung cấp điện

Nguồn cấp
Nguồn cấp
Nguồn cấp
Nguồn cấp
Nguồn cấp
Nguồn cấp

Nếu bạn không thích làm nó từ đầu thì bạn có thể mua bảng được lắp ráp sẵn từ Trung Quốc như hình trên, nhưng bạn vẫn sẽ cần biến áp 3VA (giảm 240V xuống 12V). Một trong những hình ảnh có giá khoảng £ 2,50

Để cung cấp năng lượng cho dự án, tôi quyết định tạo nguồn điện 12VDC đường sắt kép của riêng mình. Điều này rất tiện lợi vì op-amps yêu cầu + 12V, 0V, -12V và Arduino Uno có thể chấp nhận bất kỳ nguồn cung cấp nào lên đến 14 VDC. Dưới đây là các bộ phận tạo nên mạch:

  • V1 - Điều này đại diện cho nguồn cung cấp từ ổ cắm nguồn điện 240V 50Hz
  • T1 - Đây là một máy biến áp 3VA nhỏ mà tôi đã nói dối. Điều quan trọng là máy biến áp có một vòi trung tâm trên thứ cấp sẽ được kết nối với 0V tức là nối đất
  • D1 đến D4 - Đây là bộ chỉnh lưu cầu toàn sóng sử dụng điốt 1N4007
  • C1 & C2 - Tụ điện 35V 2200uF (phải là 35V vì điện thế giữa dương và âm sẽ đạt 30V)
  • U2 - LM7812, là bộ điều chỉnh điện áp dương 12V
  • U3 - LM7912, là bộ điều chỉnh điện áp âm 12V (hãy lưu ý sự khác biệt về chân giữa IC 78xx và 79xx!)
  • C3 & C4 - 100nF Làm mịn tụ điện 25V
  • C5 & C6 - Tụ đĩa gốm 10uF

Tôi hàn các thành phần lên bảng điều khiển và nối các rãnh dọc bằng dây đồng đóng hộp lõi đơn trần. Hình 3 ở trên cho thấy nguồn điện tự làm của tôi, xin lỗi có rất nhiều jumper trong ảnh!

Bước 4: Tương tự sang bộ chuyển đổi kỹ thuật số

Analogue to Digital Converters
Analogue to Digital Converters
Analogue to Digital Converters
Analogue to Digital Converters

Arduino Uno đã được tích hợp sẵn ADC 10 bit, tuy nhiên chỉ có 6 đầu vào Analogue. Do đó, tôi đã chọn sử dụng hai đột phá ADC với ADS1115 16-bit. Điều này cho phép 2 ^ 15 = 32767 bit đại diện cho các mức điện áp từ 0-4.096V (4.096V là điện áp hoạt động của breakout), điều này có nghĩa là mỗi bit đại diện cho 0.000125V! Ngoài ra, vì nó sử dụng bus I2C nên có nghĩa là có thể định địa chỉ tới 4 ADC, cho phép giám sát tối đa 16 kênh nếu muốn.

Tôi đã cố gắng minh họa các kết nối bằng cách sử dụng Fritzing, tuy nhiên do những hạn chế nên không có phần tùy chỉnh để minh họa Bộ tạo tín hiệu. Dây màu tím được nối với đầu ra của mạch khuếch đại, dây màu đen bên cạnh minh họa rằng tất cả các mạch khuếch đại phải dùng chung điểm nối đất. Vì vậy, tôi đã sử dụng một breadboard để minh họa cách tôi tạo các điểm buộc. Tuy nhiên, dự án thực tế của tôi có các điểm đột phá nằm trong các tiêu đề nữ, được hàn vào Veroboard, và tất cả các điểm buộc được hàn vào veroboard.

Bước 5: Vi điều khiển

Vi điều khiển
Vi điều khiển

Như đã đề cập ở trên, bộ điều khiển tôi chọn là Arduino Uno, đây là một lựa chọn tốt vì nó có rất nhiều tính năng trên bo mạch và được tích hợp sẵn chức năng mà nếu không sẽ cần phải được xây dựng theo nhiệt độ. Thêm vào đó, nó tương thích với rất nhiều 'lá chắn' được chế tạo đặc biệt. Nhân dịp này, tôi yêu cầu đồng hồ thời gian thực để đánh dấu thời gian tất cả các kết quả và một trình ghi thẻ SD để ghi kết quả vào tệp.csv hoặc.txt. May mắn thay, tấm chắn ghi dữ liệu Arduino có cả tấm chắn giúp đẩy phù hợp lên bảng Arduino ban đầu mà không cần hàn bổ sung. Tấm chắn tương thích với thư viện thẻ RTClib và SD, do đó không cần bất kỳ mã chuyên dụng nào.

Bước 6: Lắp ráp

cuộc họp
cuộc họp
cuộc họp
cuộc họp
cuộc họp
cuộc họp

Tôi đã sử dụng PVC có mật độ trung bình / thấp 5mm (đôi khi được gọi là tấm xốp) để vặn hầu hết các thành phần của tôi và cắt nó theo kích thước thuận tiện bằng một con dao thủ công. Tất cả các thành phần được xây dựng theo kiểu mô-đun cho nguyên mẫu vì nó cho phép loại bỏ các bộ phận riêng lẻ nếu có sự cố, tuy nhiên nó không hiệu quả hoặc gọn gàng như PCB được khắc (công việc tiếp theo) điều này cũng có nghĩa là rất nhiều dây nối giữa các thành phần.

Bước 7: Tải lên mã

Tải mã lên Arduino hoặc lấy mã từ kho Github của tôi

github.com/smooth-jamie/datalogger.git

Bước 8: Hiệu chỉnh

Sự định cỡ
Sự định cỡ
Sự định cỡ
Sự định cỡ
Sự định cỡ
Sự định cỡ

Về mặt lý thuyết, dòng điện đo được sẽ là kết quả của một số thứ kết hợp lại:

Amps đo được = (((a * 0,45) / 150) / (1,1 / 5000)) / 1000 trong đó 'a' là điện áp tín hiệu từ bộ khuếch đại

0,45 là giá trị rms của Vout của mạch khuếch đại, 150 là độ lợi op-amp (Rf / Rin = 150k / 1k), 1,1 là đầu ra điện áp toàn quy mô của CT khi amps đo là 5A, 5000 chỉ đơn giản là 5A trong mA, và 1000 là số vòng dây trong máy biến áp. Điều này có thể được đơn giản hóa thành:

Amps đo được = (b * 9.216) / 5406555 trong đó b là giá trị báo cáo của ADC

Công thức này đã được thử nghiệm bằng cách sử dụng Arduino ADC 10-bit và sự khác biệt giữa các giá trị vạn năng và các giá trị do Arduino tạo ra đã được quan sát bằng 11%, đây là một độ lệch không thể chấp nhận được. Phương pháp hiệu chuẩn ưa thích của tôi là ghi lại giá trị ADC so với dòng điện trên đồng hồ vạn năng trong một bảng tính và vẽ một đa thức bậc ba. Từ đó, công thức khối có thể được sử dụng để cho kết quả tốt hơn khi tính dòng điện đo được:

(ax ^ 3) + (bx ^ 2) + (cx ^ 1) + d

Các hệ số a, b, c và d được tính toán trong excel từ một bảng dữ liệu đơn giản, x là giá trị ADC của bạn.

Để có được dữ liệu, tôi đã sử dụng một biến trở 1k bằng gốm (biến trở lưu biến) và biến áp 12v để giảm điện áp AC nguồn từ 240V, điều này sẽ cung cấp cho tôi nguồn dòng biến đổi từ 13mA đến 100mA. Thu thập càng nhiều điểm dữ liệu càng tốt, tuy nhiên, tôi khuyên bạn nên thu thập 10 điểm dữ liệu để có được xu hướng chính xác. Mẫu Excel đính kèm sẽ tính toán các hệ số cho bạn, sau đó chỉ cần nhập chúng vào mã arduino

Trên dòng 69 của mã, bạn sẽ thấy nơi nhập các hệ số

float chn0 = ((7,30315 * pow (10, -13)) * pow (adc0, 3) + (-3,72889 * pow (10, -8) * pow (adc0, 2) + (0,003985811 * adc0) + (0,663064521)));

giống với công thức trong sheet1 của tệp excel:

y = 7E-13x3 - 4E-08x2 + 0,004x + 0,663

Trong đó x = adc0 của bất kỳ kênh nào bạn đang hiệu chỉnh

Bước 9: Kết thúc

Kết thúc
Kết thúc
Kết thúc
Kết thúc
Kết thúc
Kết thúc
Kết thúc
Kết thúc

Đặt nó trong một bao vây dự án. Tôi đã tắt nguồn điện bằng công tắc bật tắt để bật / tắt toàn bộ nguồn điện và đầu nối IEC "hình 8" cho đầu vào nguồn điện. Vặn tất cả lại với nhau và bạn đã sẵn sàng để kiểm tra nó.

Công việc tiếp theo

Toàn bộ dự án được mô phỏng khá nhanh nên có rất nhiều chỗ để cải tiến, mạch khắc, các thành phần tốt hơn. Lý tưởng nhất là toàn bộ thứ sẽ được khắc hoặc hàn vào FR4 thay vì vô số jumper. Giống như tôi đã nói trước đó, có rất nhiều thứ tôi chưa đề cập nhưng nếu có điều gì đó cụ thể mà bạn muốn biết, hãy cho tôi biết trong phần bình luận và tôi sẽ cập nhật hướng dẫn!

Cập nhật 2016-12-18

Bây giờ tôi đã thêm một màn hình LCD 16x2 bằng cách sử dụng "ba lô" I2C để theo dõi bốn kênh đầu tiên, sẽ thêm một màn hình khác để theo dõi bốn kênh cuối cùng khi nó xuất hiện thông qua bài đăng.

Tín dụng

Dự án này đã được thực hiện bởi tất cả các tác giả của Thư viện được sử dụng trong bản phác thảo Arduino của tôi bao gồm thư viện DS3231, thư viện Adafruit ADS1015 và thư viện Arduino SD

Đề xuất: