Բովանդակություն:
- Պարագաներ
- Քայլ 1: Քայլ 1. Սխեմաներ
- Քայլ 2: Քայլ 2. Կոդի և դիմադրության հաշվարկներ
- Քայլ 3: Քայլ 3. Եկեք փորձարկենք այն:
Video: Arduino վոլտաչափ (0-100V DC) - տարբերակ 2 (ավելի լավ) ՝ 3 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Այս հրահանգի մեջ ես կառուցել եմ վոլտմետր ՝ բարձր լարման DC (0-100v) հարաբերական ճշգրտությամբ և ճշգրտությամբ չափելու համար ՝ օգտագործելով Arduino Nano և ADS 1115 ADC:
Սա վոլտմետրի երկրորդ տարբերակն է, որն օգտագործել է իմ նախորդ հրահանգը այստեղ ՝
Իմ կողմից կատարված փորձարկման չափումները ճշգրիտ էին ՝ հիմնականում ստանդարտ վոլտմետրով չափված փաստացի լարման 0.1 վ -ի սահմաններում (ես օգտագործել եմ Astro AI DM6000AR):
Սա, իմ կարծիքով, շատ ավելի լավ է և ավելի հեշտ, քան Arduino- ում արտաքին լարման մասին տեղեկանք օգտագործելը:
Պարագաներ
1 x Arduino Nano - Հղում
1 x Oled Display (SSD 1306) - Հղում
1 x ADS 1115 - 16 բիթ ADC - հղում
1 x 1/4W (ես առաջարկում եմ օգտագործել 1W ռեզիստորներ, չնայած դրան) 1% դիմադրողներ - 220k ohm - հղում
1 x 1/4W (ես առաջարկում եմ օգտագործել 1W ռեզիստորներ, չնայած) 1% դիմադրողներ - 10k ohm - հղում
Հացաթուղթ և լարեր - Հղում
Astro AI DM6000AR - Հղում
USB Power Bank - Հղում
9 Վ մարտկոցներ - Հղում
CanadianWinters- ը Amazon Services LLC Associates ծրագրի մասնակից է, փոխկապակցված գովազդային ծրագիր, որը նախատեսված է միջոցներ տրամադրելու կայքերին ՝ վճարելով Amazon.com և փոխկապակցված կայքեր: Օգտագործելով այս հղումները, որպես Amazon Associate ես վաստակում եմ որակյալ գնումներից, նույնիսկ եթե ուրիշ բան եք գնում, և դա ձեզ ոչինչ չի կարժենա:
Քայլ 1: Քայլ 1. Սխեմաներ
Ես միացրեցի բոլոր մասերը ՝ ըստ վերը նշված սխեմաների:
Ես կապեցի ADC1115- ի ADDR կապը գետնին: Սա ADC- ի հասցեն սահմանում է 0x48:
Քայլ 2: Քայլ 2. Կոդի և դիմադրության հաշվարկներ
Ինչպես և նախորդ հրահանգում, սխեմայի գաղափարն այն է, որ DC լարումը, որը պետք է չափվի, անցնում է լարման դիմադրության միջոցով: Լարված լարումը և այնուհետև մտնում է ADC փոխարկիչի անալոգային կապի մեջ ՝ կարդալու համար, այնուհետև փոխանցվում է Arduino- ին I2C- ի միջոցով, այնուհետև նորից մասշտաբավորվում և ցուցադրվում OLed էկրանին:
Այս դեպքում ես ոչ մի միջինացում կամ հարթեցում չեմ օգտագործել ծածկագրում, քանի որ ընթերցումները բավականին ճշգրիտ և ճշգրիտ են թվում: Աղմուկը նվազեցնելու համար գուցե ցանկանաք մի փոքր կոնդենսատոր ավելացնել A0- ի (ADC- ի վրա) և գետնի միջև: Չնայած իմ թեստի համար դա պարտադիր չէր:
Մի բան, որ ես նկատեցի, մի փոքր աղմուկ էր, երբ մարտկոցը միացված չէր (0 վոլտ): Ես օգտագործել եմ Arduino- ի սերիական մոնիտորը ՝ ADC արժեքը ցուցադրելու և այն կոդի միջոցով ուղղելու/կարգավորելու համար:
Ինչպես և նախորդ հրահանգում, ես պատրաստեցի աղյուսակ, որն ավտոմատացնում է հաշվարկները, եթե ցանկանում եք լարման բաժանարարում օգտագործել տարբեր դիմադրության արժեքներ. Հղում դեպի Google Աղյուսակ
Ահա այն կոդը, որն օգտագործել եմ այս նախագծի համար.
#ներառում
#ներառել #ներառել #ներառել Adafruit_ADS1115 գովազդ (0x48); // ADC U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2 (U8G2_R0); // (ռոտացիա, [վերականգնում]) int calib = 7; // ADS1115- ի ճշգրտման արժեքը `նվազեցնելու լողացող լարման = 0; // օգտագործվում է լարման արժեքը լողացող Radjust = 0.043421905 պահելու համար; // Լարման բաժանարար գործակից (R2 / R1+R2) բոց vbat = 0; // վերջնական լարումը հաշվարկից հետո- մարտկոցի լարումը // փոփոխականներ էկրանը թարմացնելու համար առանց հետաձգման չստորագրելու երկար նախորդ Millis = 0; // կպահվի վերջին անգամ, երբ էկրանը թարմացվել է // հաստատունները չեն փոխվի. const երկար ընդմիջում = 250; // էկրանի թարմացման միջակայք (միլիվայրկյաններ) void setup (void) {Serial.begin (9600); u8g2. սկսել (); ads.begin (); } void loop (void) {int16_t adc0; // 16 բիթ ADC կարդալ մուտքի A0 adc0 = ads.readADC_SingleEnded (0); լարման = ((adc0 + calib) * 0.1875)/1000; անստորագիր երկար հոսանք Millis = millis (); vbat = լարման/ճշգրտել; // Կանխել բացասական լարման ցուցադրումը, երբ մարտկոցն անջատված է, եթե (vbat = interval) {previousMillis = currentMillis; u8g2.clearBuffer (); // մաքրել ներքին հիշողությունը // Փաթեթային լարման ցուցադրում - Տառատեսակներ այս էջում ՝ 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.print (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-60 վ լարման տատանումներ, երբեմն ՝ 72 վ):
Երբ էլեկտրոնիկան փաթեթավորվում է pcb- ի և մի փոքրիկ տուփի մեջ, դա կդարձնի գեղեցիկ և շարժական մարտկոցի փաթեթաչափ: OLED- ի գրաֆիկան և տառատեսակները կարող են հարմարեցվել ձեր կարիքներին համապատասխան (օրինակ ՝ ավելի մեծ տառատեսակ ՝ հեշտ ընթերցման համար): Իմ նպատակն էր ունենալ Oled/Arduino հաշվիչի վրա լարման ցուցիչ `իմ թվային բազմաչափ հաշվիչից ոչ շատ հեռու: Ես նպատակ ունեի +/- 0, 3v max delta:
Ինչպես տեսնում եք Instructable- ի սկզբում տեղադրված տեսանյութից, ես կարողացա դա արխիվացնել: Ընթերցումների մեծ մասը տեղում էր:
Հուսով եմ, որ ձեզ դուր եկավ այս Instructable- ը և տեղեկացրեք ինձ ձեր մտքերի մասին:
Խորհուրդ ենք տալիս:
Ավելի լավ ալիգատոր տեսահոլովակներ. 3 քայլ (նկարներով)
Ավելի լավ ալիգատորների տեսահոլովակներ. Երբ տղա էի, ալիգատորների տեսահոլովակները ծանր էին և լավ էին աշխատում: Դրանք պատրաստված էին ավելի ծանր պողպատից ՝ պտուտակավոր տերմինալներով և լավ աղբյուրներով: Այժմ ալիգատորների տեսահոլովակները անեմիկ փոքրիկ բաներ են ՝ ծնոտի անիմաստ անօգուտ բացվածքով: Ես ուզում էի ինչ -որ ավելի լավ ալիգատոր
PCB- ի օգտագործմամբ ավելի լավ նախագծեր. 6 քայլ
PCB- ի օգտագործմամբ ավելի լավ նախագծեր. Եթե դուք ժամանակ եք ծախսել էլեկտրոնիկայի նախագծերի հետ աշխատելուն, ապա գիտեք, թե որքան զվարճալի և հուզիչ կարող է լինել: Ոչինչ ավելի հուզիչ չէ, քան տեսնել, թե ինչպես է քո շրջանը կյանքի կոչվում հենց քո աչքերի առաջ: Այն ավելի հուզիչ է դառնում, երբ ձեր նախագիծը վերածվում է
Անվտանգ ավելի լավ. Երկաթուղային կայարաններն ավելի անվտանգ դարձնել `7 քայլ
Անվտանգ ավելի լավ. Երկաթուղային կայարաններն ավելի անվտանգ դարձնել. Այս խնդիրը լուծելու համար մենք ստեղծեցինք Safer Better- ը: Մենք օգտագործում էինք թրթռման տվիչներ, շարժման տվիչներ և
Մտածեք Geek Retro Bluetooth հեռախոսի արագ քաշի մոդ. (Քանի որ ավելի ծանր է ավելի լավ) 3 քայլ
Մտածեք Geek Retro Bluetooth հեռախոսի արագ քաշի մոդ. (Քանի որ ավելի ծանր է ավելի լավ) Քանի որ heft = որակ: Առնվազն հետադարձ հողում: Պահանջում է ՝ 5 3/4 դյույմ ձկնորսական լվացարաններ Տաք սոսինձ ատրճանակ Հեռախոսը սա հեշտ ռեժիմ է և չպետք է տևի ավելի քան կես ժամ: Ավելի զվարճալի տեխնիկա
Կատարեք ձեր RC ավտոմեքենաների ցնցումները ավելի կարճ ՝ բարձր արագությամբ ավելի լավ գործածելու համար. 5 քայլ
Կատարեք ձեր RC մեքենաների ցնցումները ավելի բարձր արագությամբ ավելի լավ վարվելու համար. Այս հրահանգում ես ձեզ ցույց կտամ, թե ինչպես կրճատել ձեր հարվածները, որպեսզի կարողանաք ձեր մեքենան ավելի մոտեցնել գետնին, որպեսզի կարողանաք ավելի արագ պտույտներ կատարել ՝ առանց հարվածների: Ես կօգտագործեմ իմ այլ հրահանգներ այն մասին, թե ինչպես կատարել ձեր մեքենաների ցնցումները, որպեսզի