Բովանդակություն:

ACS724 Ընթացիկ սենսորային չափումներ Arduino- ով. 4 քայլ
ACS724 Ընթացիկ սենսորային չափումներ Arduino- ով. 4 քայլ

Video: ACS724 Ընթացիկ սենսորային չափումներ Arduino- ով. 4 քայլ

Video: ACS724 Ընթացիկ սենսորային չափումներ Arduino- ով. 4 քայլ
Video: ACS724 Current Sensor Measurements with Arduino 2024, Նոյեմբեր
Anonim
Image
Image
Պատկեր
Պատկեր

Այս ուսանելի հոդվածում մենք փորձեր կանենք ACS724 ընթացիկ տվիչը Arduino- ին միացնելու համար `ընթացիկ չափումներ կատարելու համար: Այս դեպքում ընթացիկ սենսորը +/- 5A բազմազանություն է, որը թողարկում է 400 մվ/Ա:

Arduino Uno- ն ունի 10 բիթանոց ADC, ուստի լավ հարցերն են.

Մենք կսկսենք սենսորը պարզապես վոլտմետրին և ընթացիկ հաշվիչին միացնելով և անալոգային ընթերցումներ կատարելով `տեսնելու, թե որքան լավ է աշխատում սենսորը, այնուհետև այն կկապենք Arduino ADC քորոցին և կտեսնենք, թե որքան լավ է այն աշխատում:

Պարագաներ

1 - Breadboard2 - Նստարանային էլեկտրամատակարարում 2 - DVM's1 - ACS724 տվիչ +/- 5A1 - Arduino Uno1 - LM78053 - 10 օմ, 10 Վտ դիմադրություն 1 - 1nF cap1 - 10nF cap1 - 0.1uF կափարիչ

Քայլ 1:

Փորձարկման սխեման, ինչպես ցույց է տրված դիագրամում: Arduino 5V կապից LM7805 +5V ռելսին միացումն ընտրովի չէ: Այս թռիչքի առկայության դեպքում դուք կարող եք ավելի լավ արդյունքի հասնել, սակայն այն օգտագործելիս զգույշ եղեք, քանի որ Arduino- ն միացված է ձեր համակարգչին, իսկ երկրորդ սնուցման աղբյուրը կգերազանցի 5 Վ – ը, երբ այն միացնեք ՝ սենսորի միջոցով հոսանքը բարձրացնելու համար:

Եթե սնուցման աղբյուրները միացնեք իրար, ապա սենսորի սնուցման աղբյուրը և Arduino- ի սնուցման աղբյուրը կունենան ճշգրիտ նույն +5 Վ հղման կետը, և դուք կսպասեք ավելի հետևողական արդյունքների:

Ես դա արեցի առանց այս կապի, և ընթացիկ սենսորի վրա տեսա ավելի բարձր զրոյական ընթացիկ ընթերցում (2.530 Վ ակնկալվող 2.500 Վ -ի փոխարեն) և ավելի ցածր, քան ակնկալվող ADC ընթերցումը զրոյական ընթացիկ կետում: Ես ստանում էի թվային ADC ընթերցում `մոտ 507 -ից 508 -ի, առանց սենսորի միջոցով հոսանքի, 2.500 Վ -ի դեպքում դուք պետք է տեսնեք ADC ընթերցում` մոտ 512 -ի: Ես դա ուղղեցի ծրագրակազմում:

Քայլ 2: Փորձարկման չափումներ

Թեստային չափումներ
Թեստային չափումներ

Վոլտմետրով և ամպաչափով անալոգային չափումները ցույց տվեցին, որ սենսորը շատ ճշգրիտ է: 0.5A, 1.0A և 1.5A փորձնական հոսանքներում դա ճիշտ էր միլիվոլտին:

ADC չափումները Arduino- ի հետ այնքան էլ ճշգրիտ չէին: Այս չափումները սահմանափակվեցին Arduino ADC- ի 10 բիթանոց լուծմամբ և աղմուկի խնդիրներով (տես տեսանյութը): Աղմուկի պատճառով ADC- ի ընթերցումը ցատկում էր ամենավատ դեպքում մինչև 10 կամ ավելի քայլ, առանց սենսորի միջով հոսանքի: Հաշվի առնելով, որ յուրաքանչյուր քայլ ներկայացնում է մոտ 5 մվ, սա մոտ 50 մվ տատանում է, իսկ 400 մվ/ամպ սենսորով ներկայացնում է 50 մվ/400 մվ/ամպ = 125 մ տատանում: Միակ ճանապարհը, որով կարող էի իմաստալից ընթերցում ստանալ, դա 10 անընդմեջ ընթերցում վերցնելն էր, այնուհետև դրանք միջինացնելը:

10 բիթանոց ADC կամ 1024 հնարավոր մակարդակներով և 5V Vcc- ով մենք կարող ենք լուծել մոտ 5/1023 ~ 5 մվ մեկ քայլ: Սենսորը դուրս է բերում 400 մվ/ամպեր: Այսպիսով, լավագույն դեպքում մենք ունենք 5mv/400mv/amp ~ 12.5mama լուծում:

Այսպիսով, աղմուկի և ցածր թույլատրելիության պատճառով տատանումների համադրությունը նշանակում է, որ մենք չենք կարող օգտագործել այս մեթոդը ճշգրիտ և հետևողականորեն չափելու ընթացիկ, հատկապես փոքր հոսանքները: Մենք կարող ենք օգտագործել այս մեթոդը `պատկերացում տալու ներկայիս մակարդակի մասին ավելի բարձր հոսանքներում, բայց դա այնքան էլ ճշգրիտ չէ:

Քայլ 3: Եզրակացություններ

Եզրակացություններ
Եզրակացություններ

Եզրակացություններ.

-ACS724 անալոգային ընթերցումները շատ ճշգրիտ են:

-ACS724- ը պետք է շատ լավ աշխատի անալոգային սխեմաների հետ: օրինակ ՝ էներգիայի մատակարարման հոսանքի վերահսկում անալոգային հետադարձ կապով:

-Աղմուկի և լուծման հետ կապված խնդիրներ կան ՝ օգտագործելով ACS724- ը Arduino 10 բիթանոց ADC- ով:

-Բավական լավ է ավելի բարձր ընթացիկ սխեմաների միջին հոսանքի մոնիտորինգի համար, բայց բավարար չէ մշտական ընթացիկ հսկողության համար:

-Գուցե ավելի լավ արդյունքների համար պետք է օգտագործել արտաքին 12 բիթ կամ ավելի ADC չիպ:

Քայլ 4: Arduino կոդ

Ահա այն կոդը, որով ես պարզապես չափում էի Arduino A0 pin ADC արժեքը և սենսորային լարումը հոսանքին փոխարկելու և միջինը 10 ընթերցում կատարելու ծածկագիրը: Կոդը բավականին ինքնաբերաբար բացատրվում է և մեկնաբանվում է փոխարկման և միջինացման կոդի համար:

Խորհուրդ ենք տալիս: