Съдържание:
- Консумативи
- Стъпка 1: Стъпка 1: Схемите
- Стъпка 2: Стъпка 2: Изчисленията на кода и резистора
- Стъпка 3: Стъпка 3: Нека го тестваме
Видео: Волтметър Arduino (0-100V DC) - Версия 2 (по -добра): 3 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
В тази инструкция съм построил волтметър за измерване на високо напрежение DC (0-100v) с относителна прецизност и точност, използвайки Arduino Nano и ADS 1115 ADC.
Това е втора версия на волтметъра, използвана от предишните ми инструкции тук:
Тестовите измервания, които направих, бяха точни, най -вече в рамките на 0,1v от действителното напрежение, измерено със стандартен волтметър (използвах Astro AI DM6000AR).
Това е много по -добре и по -лесно според мен, отколкото да използвате външна справка за напрежение на Arduino.
Консумативи
1 x Arduino Nano - Връзка
1 x Oled дисплей (SSD 1306) - Връзка
1 x ADS 1115 - 16 битов ADC - Link
1 x 1/4W (все пак предлагам да се използват 1W резистори) 1% резистори - 220k ohm - Връзка
1 x 1/4W (все пак предлагам да се използват 1W резистори) 1% резистори - 10k ohm - Връзка
Платформа и проводници - Връзка
Astro AI DM6000AR - Връзка
USB Power Bank - Връзка
9V батерии - Връзка
CanadianWinters е участник в програмата на Amazon Services LLC Associates, програма за партньорско рекламиране, предназначена да осигури средства за сайтовете да печелят такси чрез свързване към Amazon.com и свързани сайтове. Използвайки тези връзки, като асоцииран с Amazon печеля от квалифицирани покупки, дори ако купувате нещо друго-и това няма да ви струва нищо.
Стъпка 1: Стъпка 1: Схемите
Свързах всички части съгласно схемите по -горе.
Завързах щифта ADDR на ADC1115 към земята. Това задава адреса на ADC на 0x48.
Стъпка 2: Стъпка 2: Изчисленията на кода и резистора
Както в предишните инструкции, идеята на веригата е, че постояннотоковото напрежение, което ще се измерва, преминава през резистор на напрежение. Мащабираното напрежение и след това попада в аналоговия щифт на ADC конвертора, за да бъде прочетено, след това се предава на Arduino чрез I2C и след това се мащабира отново и се показва на OLed дисплея.
В този случай не използвах никакво усредняване или изглаждане в кода, тъй като показанията изглеждат доста точни и точни. За да намалите шума, може да искате да добавите малък кондензатор между A0 (на ADC) и земята. Това обаче не беше необходимо за моя тест.
Едно нещо, което забелязах, беше малко шум, когато нямаше свързана батерия (0 волта). Използвах серийния монитор на Arduino, за да покажа стойността на ADC и да я коригирам/коригирам чрез код.
Както и в предишните инструкции, направих електронна таблица, която автоматизира изчисленията в случай, че искате да използвате различни стойности на резистора в делителя на напрежението: Връзка към Google Sheet
Ето кода, който използвах за този проект:
#включва
#include #include #include Adafruit_ADS1115 реклами (0x48); // Адрес на ADC U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2 (U8G2_R0); // (въртене, [нулиране]) int calib = 7; // Стойност на калибриране на ADS1115 за намаляване на грешката плаващо напрежение = 0; // използва се за съхраняване на стойност на напрежението float Radjust = 0.043421905; // Коефициент на делител на напрежение (R2 / R1+R2) поплавък vbat = 0; // крайно напрежение след изчисляване- напрежение на батерията // променливи за опресняване на екрана без използване на закъснение unsigned long previousMillis = 0; // ще се съхранява последния път, когато екранът е бил опресняван // константи няма да се променят: const long interval = 250; // интервал, в който да се опреснява екрана (милисекунди) void setup (void) {Serial.begin (9600); u8g2.begin (); ads.begin (); } void loop (void) {int16_t adc0; // 16 бита ADC четене на вход A0 adc0 = ads.readADC_SingleEnded (0); напрежение = ((adc0 + calib) * 0,1875)/1000; без знак дълъг токMillis = millis (); vbat = напрежение/Radjust; // Предотвратяване на показването на отрицателно напрежение, когато батерията е изключена, ако (vbat = интервал) {previousMillis = currentMillis; u8g2.clearBuffer (); // изчистване на вътрешното меню // Дисплей на Pack Voltage - Шрифтове на тази страница: https://github.com/olikraus/u8g2/wiki/fntlistall //u8g2.setFont(u8g2_font_fub20_tr); // шрифт 20px u8g2.setFont (u8g2_font_fub35_tr); // 35px шрифт u8g2.setCursor (1, 42); u8g2.принт (vbat, 2); u8g2.setFont (u8g2_font_8x13B_mr); // шрифт 10 px u8g2.setCursor (1, 60); u8g2.print ("Волта"); } u8g2.sendBuffer (); // прехвърляне на вътрешна памет към забавяне на дисплея (1); }
Стъпка 3: Стъпка 3: Нека го тестваме
За да тествам този волтметър използвах 10x 9v батерии, които получих в местен магазин. Този път можех да измервам до 97 волта! Планирам да използвам този волтметър за измерване на напрежението на батериите на моите електрически велосипеди (те имат напрежение в диапазона от 24-60v с от време на време 72v).
След като електрониката бъде опакована в печатна платка и малка кутия, това ще направи хубав и преносим глюкомер. Графиките и шрифтовете на OLED могат да бъдат персонализирани според вашите нужди (напр. По -голям шрифт за лесно четене). Целта ми беше да имам отчитане на напрежението на измервателния уред Oled/Arduino недалеч от моя цифров мултиметър. Имах за цел +/- 0, 3v max делта.
Както можете да видите от видеото в началото на Instructable, успях да архивирам това! Повечето четения бяха на място!
Надявам се да ви е харесал този Instructable и да ме уведомите за вашите мисли!
Препоръчано:
Waveshare E-ink дисплей Прецизен волтметър (0-90v DC) с Arduino Nano: 3 стъпки
Waveshare E-ink дисплей Прецизен волтметър (0-90v DC) с Arduino Nano: В тази инструкция използвам 2,9-инчов дисплей Waveshare E-Paper с Arduino Nano, разделител на напрежение и ADS1115 за показване на прецизни напрежения до 90 волта DC на дисплея на електронната хартия. Тази инструкция комбинира тези два предишни проекта:- Ardui
Променливотоков волтметър с помощта на Arduino: 3 стъпки (със снимки)
Променливотоков волтметър с помощта на Arduino: Това е проста схема за установяване на променливото напрежение с помощта на Arduino UNO без никакъв AC волтметър !! НАСЛАДИ СЕ
Щит за Arduino от староруски VFD тръби: Часовник, термометър, Волтметър : 21 стъпки (със снимки)
Щит за Arduino от староруски VFD тръби: Часовник, термометър, Волтметър …: Този проект отне почти половин година, за да бъде завършен. Не мога да опиша колко работа беше вложена в този проект. Самото изпълнение на този проект ще ми отнеме завинаги, така че имах помощ от приятелите си. Тук можете да видите нашата работа, събрана в една много дълга инструкция
Направи си сам волтметър с помощта на Arduino и обработка: 4 стъпки
Направи си сам волтметър, използвайки Arduino и обработка: Здравейте и добре дошли в днешния проект. Аз съм Сарвеш и днес ще направим волтметър на базата на arduino. Но това, което е различно в това, е, че той ще показва резултата си от софтуера за обработка. Сега в един от предишните ми уроци направихме процес
Волтметър с помощта на Arduino: 4 стъпки
Волтметър с помощта на Arduino: В този урок ще направим волтметър с помощта на Arduino Uno. Този тип волтметър може да се използва за измерване на напрежение под 0-5V