Mục lục:
- Quân nhu
- Bước 1: Bước 1: Sơ đồ
- Bước 2: Bước 2: Tính toán mã và điện trở
- Bước 3: Bước 3: Hãy thử nghiệm
Video: Đồng hồ đo điện áp Arduino (0-100V DC) - Phiên bản 2 (tốt hơn): 3 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:30
Trong tài liệu hướng dẫn này, tôi đã chế tạo một vôn kế để đo điện áp cao DC (0-100v) với độ chính xác và độ chính xác tương đối bằng cách sử dụng Arduino Nano và ADS 1115 ADC.
Đây là phiên bản thứ hai của vôn kế được sử dụng mà tôi đã hướng dẫn trước đây tại đây:
Các phép đo thử nghiệm mà tôi thực hiện đều chính xác, hầu hết trong khoảng 0,1v so với điện áp thực được đo bằng vôn kế tiêu chuẩn (tôi sử dụng Astro AI DM6000AR).
Theo ý kiến của tôi, điều này tốt hơn nhiều và dễ dàng hơn so với việc sử dụng tham chiếu điện áp bên ngoài trên Arduino.
Quân nhu
1 x Arduino Nano - Liên kết
1 x Màn hình Oled (SSD 1306) - Liên kết
1 x ADS 1115 - ADC 16 bit - Liên kết
1 x 1 / 4W (tôi khuyên bạn nên sử dụng điện trở 1W) Điện trở 1% - 220k ohm - Liên kết
1 x 1 / 4W (tôi khuyên bạn nên sử dụng điện trở 1W) Điện trở 1% - 10k ohm - Liên kết
Bảng mạch và dây - Liên kết
Astro AI DM6000AR - Liên kết
Ngân hàng điện USB - Liên kết
Pin 9V - Liên kết
CanadianWinters là người tham gia Chương trình liên kết Amazon Services LLC, một chương trình quảng cáo liên kết được thiết kế để cung cấp phương tiện cho các trang web kiếm phí bằng cách liên kết đến Amazon.com và các trang web liên kết. Bằng cách sử dụng các liên kết này, với tư cách là Cộng tác viên của Amazon, tôi kiếm được từ các giao dịch mua đủ điều kiện, ngay cả khi bạn mua thứ khác - và bạn sẽ không mất bất cứ chi phí nào.
Bước 1: Bước 1: Sơ đồ
Tôi đã kết nối tất cả các phần theo sơ đồ ở trên.
Tôi đã buộc chân ADDR của ADC1115 xuống đất. Điều này đặt địa chỉ của ADC thành 0x48.
Bước 2: Bước 2: Tính toán mã và điện trở
Như trong hướng dẫn trước, ý tưởng của mạch là điện áp một chiều cần đo đi qua một điện trở điện áp. Điện áp được chia tỷ lệ và sau đó đi vào chân tương tự của bộ chuyển đổi ADC để được đọc, sau đó được chuyển đến Arduino qua I2C và sau đó được chia tỷ lệ lại và hiển thị trên màn hình OLed.
Tôi đã không sử dụng bất kỳ mức trung bình hoặc làm mịn nào trong mã trong trường hợp này, vì các kết quả đọc có vẻ khá chính xác. Để giảm nhiễu, bạn có thể muốn thêm một tụ điện nhỏ giữa A0 (trên ADC) và đất. Nó không được yêu cầu cho thử nghiệm của tôi.
Một điều tôi nhận thấy, là một chút tiếng ồn khi không có pin đi kèm (0 volt). Tôi đã sử dụng màn hình nối tiếp của Arduino để hiển thị giá trị ADC và sửa / điều chỉnh nó thông qua mã.
Như trong phần hướng dẫn trước, tôi đã tạo một bảng tính tự động tính toán trong trường hợp bạn muốn sử dụng các giá trị điện trở khác nhau trong bộ chia điện áp: Liên kết tới Google Trang tính
Đây là mã tôi đã sử dụng cho dự án này:
#bao gồm
#include #include #include Adafruit_ADS1115 quảng cáo (0x48); // Địa chỉ của ADC U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2 (U8G2_R0); // (quay, [reset]) int calib = 7; // Giá trị hiệu chỉnh của ADS1115 để giảm lỗi float điện áp = 0; // dùng để lưu giá trị điện áp float Radjust = 0.043421905; // Hệ số phân áp (R2 / R1 + R2) float vbat = 0; // điện áp cuối cùng sau calcs- điện áp của pin // các biến để làm mới màn hình mà không sử dụng delay unsigned long beforeMillis = 0; // sẽ lưu trữ lần cuối cùng màn hình được làm mới // các hằng số sẽ không thay đổi: const long Khoảng = 250; // khoảng thời gian làm mới màn hình (mili giây) void setup (void) {Serial.begin (9600); u8g2.begin (); ads.begin (); } void loop (void) {int16_t adc0; // 16 bit ADC đọc đầu vào A0 adc0 = ads.readADC_SingleEnded (0); điện áp = ((adc0 + hiệu chuẩn) * 0,1875) / 1000; unsigned long currentMillis = millis (); vbat = điện áp / Điều chỉnh; // Ngăn không cho hiển thị điện áp âm khi ngắt kết nối pin if (vbat = khoảng) {beforeMillis = currentMillis; u8g2.clearBuffer (); // xóa menory nội bộ // Hiển thị điện áp gói - Phông chữ tại trang này: https://github.com/olikraus/u8g2/wiki/fntlistall //u8g2.setFont(u8g2_font_fub20_tr); // Phông chữ 20px u8g2.setFont (u8g2_font_fub35_tr); // phông chữ 35px u8g2.setCursor (1, 42); u8g2.print (vbat, 2); u8g2.setFont (u8g2_font_8x13B_mr); // Phông chữ 10 px u8g2.setCursor (1, 60); u8g2.print ("Vôn"); } u8g2.sendBuffer (); // chuyển bộ nhớ trong sang độ trễ hiển thị (1); }
Bước 3: Bước 3: Hãy thử nghiệm
Để kiểm tra vôn kế này, tôi đã sử dụng pin 10x 9v mà tôi mua ở một cửa hàng địa phương. Lần này tôi có thể đo được tới 97 vôn! Tôi đang định sử dụng vôn kế này để đo điện áp trên bộ ắc quy xe đạp điện của mình (chúng có điện áp dao động từ 24-60v và đôi khi là 72v).
Một khi các thiết bị điện tử được đóng gói thành một pcb và một chiếc hộp nhỏ, điều này sẽ trở thành một đồng hồ đo mức pin di động và đẹp mắt. Đồ họa và phông chữ trên OLED có thể được tùy chỉnh để phù hợp với nhu cầu của bạn (ví dụ: phông chữ lớn hơn để dễ đọc). Mục tiêu của tôi là có số đọc điện áp trên đồng hồ Oled / Arduino không quá xa Đồng hồ đa năng kỹ thuật số của tôi. Tôi đã nhắm đến vùng đồng bằng tối đa +/- 0, 3v.
Như bạn có thể thấy từ video ở đầu Có thể hướng dẫn, tôi đã có thể lưu trữ video này! Hầu hết các bài đọc đều được phát hiện tại chỗ!
Tôi hy vọng bạn thích tài liệu hướng dẫn này và hãy cho tôi biết suy nghĩ của bạn!
Đề xuất:
IOT băng tần hẹp: Chiếu sáng và đo sáng thông minh mở đường cho một hệ sinh thái tốt hơn và khỏe mạnh hơn: 3 bước
IOT băng tần hẹp: Chiếu sáng và đo sáng thông minh mở đường cho một hệ sinh thái tốt hơn và khỏe mạnh hơn: Tự động hóa đã tìm ra cách của mình trong hầu hết mọi lĩnh vực. Bắt đầu từ sản xuất đến chăm sóc sức khỏe, giao thông vận tải và chuỗi cung ứng, tự động hóa đã trở thành ánh sáng của thời đại. Chà, tất cả những thứ này chắc chắn rất hấp dẫn, nhưng có một thứ dường như
Trồng nhiều rau diếp trong ít không gian hơn hoặc Trồng rau diếp trong không gian, (nhiều hơn hoặc ít hơn).: 10 bước
Trồng nhiều rau diếp hơn trong ít không gian hơn hoặc … Trồng rau diếp trong không gian, (Nhiều hơn hoặc ít hơn): Đây là bài dự thi chuyên nghiệp cho Cuộc thi trồng trọt ngoài Trái đất, được gửi thông qua Huấn luyện viên. Tôi không thể vui mừng hơn khi được thiết kế cho sản xuất cây trồng vũ trụ và đăng Tài liệu hướng dẫn đầu tiên của mình. Để bắt đầu, cuộc thi yêu cầu chúng tôi
An toàn hơn Tốt hơn: Làm cho Ga Tàu An toàn hơn: 7 bước
An toàn hơn Tốt hơn: Làm cho Ga Tàu An toàn hơn: Nhiều ga xe lửa ngày nay không an toàn do thiếu an ninh, rào chắn và cảnh báo có tàu đến. Chúng tôi thấy cần phải khắc phục điều đó. Để giải quyết vấn đề này, chúng tôi đã tạo ra An toàn hơn tốt hơn. Chúng tôi đã sử dụng cảm biến rung, cảm biến chuyển động và
Cách biến điện thoại di động LG EnV 2 của bạn thành một Modem quay số di động cho máy tính xách tay (hoặc máy tính để bàn) của bạn: 7 bước
Cách biến điện thoại di động LG EnV 2 của bạn thành một Modem quay số di động cho máy tính xách tay (hoặc máy tính để bàn) của bạn: Tất cả chúng ta đều có nhu cầu sử dụng Internet ở những nơi không thể, chẳng hạn như trong ô tô hoặc trong kỳ nghỉ, nơi họ tính một khoản tiền đắt đỏ mỗi giờ để sử dụng wifi của họ. cuối cùng, tôi đã nghĩ ra một cách đơn giản để
Giúp xe RC của bạn bị sốc ngắn hơn để xử lý tốt hơn ở tốc độ cao: 5 bước
Làm cho cú sốc xe RC của bạn ngắn hơn để xử lý tốt hơn ở tốc độ cao: Trong bài hướng dẫn này, tôi sẽ chỉ cho bạn cách rút ngắn cú sốc để bạn có thể đưa xe xuống gần mặt đất hơn để bạn có thể quay ở tốc độ cao hơn mà không cần vỗ tay. khác Có thể hướng dẫn về cách bảo dưỡng xe ô tô của bạn bị sốc để