Ավտոմեքենաների մարտկոցների պահեստավորման ավտոմատ սարք PIC-ում: Ունիվերսալ միկրոկոնտրոլեր լիցքավորիչ ATmega8 լիցքավորիչ

Որը հավաքվել է CD սկավառակից պատյանում փորձարկելու համար: Պարզվել է, որ սարքն իր գործառույթներով գերազանց է կատարում, լիցքավորում և լիցքաթափում է գրեթե ցանկացած մարտկոց՝ միաժամանակ հաշվելով հզորությունը։ Փոխելով լիցքավորման և լիցքաթափման ցիկլերը՝ մարտկոցները կարող են վերականգնվել: Վերջերս կայացած գաղափարների մրցույթում առաջարկվեց ավելի մարդկային տարբերակ ստեղծել:

Նոր ունիվերսալ լիցքավորիչը սնուցվում է USB-ի միջոցով սմարթֆոնի կամ պլանշետի լիցքավորիչից: Այն կարող է սնուցվել նաև համակարգչի USB պորտից: Տախտակի վրա տեղադրված է միկրո USB, բայց ցանկացած այլ տարբերակ կարելի է տեղադրել։ Կա նաև վարդակ ստանդարտ DC վարդակից; երբ դրա միջոցով սնուցվում է ավելի քան 5 վոլտ լարմամբ, ցատկողը հանվում է տախտակի վրա և տրամաբանական մասը սկսում է սնուցվել LDO կայունացուցիչի միջոցով: Երբ սնուցվում է 5 վոլտից, ցատկողը պետք է տեղադրվի (այն պարզապես կարճ միացնում է +5 վոլտ կայունացուցիչի մուտքն ու ելքը):

Սարքը տեղադրված է 10 * 12 սմ տախտակի վրա, 16 * 2 LCD ցուցիչը i2c փոխարկիչով ամրացված է մոնտաժային սյուների վրա։ Տախտակն ունի պտուտակային տերմինալներ՝ վերալիցքավորվող մարտկոցը միացնելու համար և լիցքաթափման բեռ, որը կարող է լինել լամպ կամ հզոր 5W ցեմենտի դիմադրություն, օրինակ՝ 4,7 ohms դիմադրությամբ: Այս ռեզիստորի դիմադրությունը հաշվարկվում է R = U / I բանաձևով, որտեղ U-ն մարտկոցի լարումն է, իսկ I-ը ցանկալի սկզբնական լիցքաթափման հոսանքն է: Եթե ​​լիցքաթափումը նախատեսված չէ, ապա բեռը կարող է չմիացված մնալ: Կառավարումն իրականացվում է երեք կոճակների միջոցով. Տեղեկատվությունը ցուցադրվում է էկրանին, բացի դրանից, օգտագործվում է փոքրիկ ազդանշանային ազդանշան առանց ներկառուցված գեներատորի և լուսադիոդի: Որքան վառ է LED-ը, այնքան ավելի լայն է զարկերակի լայնությունը լիցքավորման ռեժիմում:

Լիցքավորիչի միացումն աննշան փոփոխություններով նույնն է, ինչ սկզբնական թեստային տարբերակում: Դաշտային ազդեցության տրանզիստորները պետք է լինեն տրամաբանական մակարդակով, դրանք կարող եք գտնել համակարգչային տախտակների վրա: P-channel դաշտային վարորդի տրանզիստորները պետք է լինեն ընթացիկ, օրինակ՝ SS8050 և SS8550: Փոխարկիչի ինդուկտորը պետք է կարողանա դիմակայել համապատասխան հոսանքին:


սեղմեք մեծացնելու համար
Խելացի ունիվերսալ լիցքավորիչի աշխատանքային ռեժիմներ.

  • Հիմնական մենյու. այն ընտրում է վոլտմետրի լիցքավորման, լիցքաթափման, տրամաչափման պարամետրերը
  • գանձել։ Էկրանի վրա ցուցադրվում են ընթացիկ և սահմանված լիցքավորման պարամետրերը, հնարավոր է փոխել պարամետրերը անմիջապես լիցքավորման գործընթացում: PWM-ի միջոցով առկա է լարման և հոսանքի սահմանափակում նշված արժեքներին: լիցքավորումը ավարտվում է, երբ նշված լարումը հասնում է, և լիցքավորման հոսանքը իջնում ​​է նշվածից ցածր:
  • արտանետում. հսկողությունը նման է լիցքավորմանը: լիցքաթափումն ավարտվում է, երբ լարումը կամ հոսանքն իջնում ​​են նշվածից ցածր:
Ընթացքում հաշվվում են միլիամպեր ժամերը, դրանք ցուցադրվում են նաև վերջում։ Հաշվարկված արժեքների հիման վրա կարող եք որոշել մարտկոցի հզորության կորստի աստիճանը, այսինքն. որքան մաշված է: Եթե ​​1Ա/ժ հզորությամբ մարտկոցը հավաքում է 500 մԱ/ժ կամ ընդունում է 1Ա/ժ և տալիս է 500 մԱ/ժ, ապա դրա ռեսուրսն արդեն զգալիորեն սպառվել է:

Լիցքավորման և լիցքաթափման ժամանակ հոսանքի չափման չափումն իրականացվում է կտրող ռեզիստորների միջոցով՝ ըստ օրինակելի ամպաչափի ցուցումների: Վոլտմետրի չափաբերումն իրականացվում է նույն կերպ։ Տախտակի վրա տրամադրվում է ISP միակցիչ՝ միկրոկառավարիչը թարթելու համար:

Սարքի այս տարբերակը բավականին հարմար է օգտագործման համար, սակայն շատ բան կարելի է բարելավել։ Տախտակը կարելի է ավելի կոմպակտ դարձնել՝ ուղղակիորեն դրա վրա դնելով մարտկոցի պահակները: Հնարավոր է, որ սարքի այլ տարբերակ լինի, եթե դրա նկատմամբ հետաքրքրություն լինի։ Հենց այս հետաքրքրությունը կարող եք արտահայտել՝ լայք դնելով ցանկացած սոցիալական ցանցում՝ սեղմելով հոդվածի տակ գտնվող կոճակը։ Որքան մեծ լինի հետաքրքրությունը, այնքան ավելի շատ խթաններ կլինեն այս նախագծի վրա աշխատելու, տեղեկատվությունը կլրացվի։

Ցանկություններով, լրացումներով և պարզաբանումներով՝ ողջունում ենք մեկնաբանություններում։

PCB: Շուտով
որոնվածը: շուտով

Aliexpress-ում գրեթե համընդհանուր լիցքավորման «ժողովրդական» տարբերակը՝ Lii-100:

Ունիվերսալ լիցքավորիչի մի փոքր փոփոխություն, որը թույլ է տալիս սահմանել լիցքաթափման հոսանքը: Սկզբում այն ​​որոշվում էր միայն բեռի դիմադրության դիմադրությամբ: Այս փոփոխությամբ ընթացիկը կարող է ճշգրտվել այս արժեքի շրջանակներում, այսինքն. առավելագույն հոսանքը որոշվում է բեռի դիմադրությամբ, բայց ավելի ցածր կարող է սահմանվել:

Զարգացումը կարող է կատարվել մակերեսային մոնտաժով կամ փոքր տախտակի վրա: Դրան զուգահեռ փոխվում են որոշ ազդանշաններ։ Այսպիսով, PWM լիցքավորման ազդանշանը (հաճախականությունը մոտ 66 կՀց) այժմ վերցված է OC1A-ից, PWM-ի լիցքաթափումը` OC1B-ից, ձայնը` OC2-ից: Դա անելու համար տախտակի վրա դուք պետք է գցեք երկու դիմադրություն (գնալով դեպի OC1A և OC2) և ընդմիջեք չօգտագործված PB0-ից: Դիագրամի փոփոխությունները ցուցադրվում են դեղինով:

Գործառնական ուժեղացուցիչը կարող է կիրառվել այնպես, ինչպես շղթայի հիմնական մասում հոսանքը չափելու համար: Մենք չգտանք MCP6002, փոխարենը տեղադրվեց TLC2272: Լիցքաթափման հոսանքի կարգավորումն աշխատում է նույնը, ինչ սկզբնական IMAX-ում: Այս դեպքում ոչ միայն բեռնվածքի դիմադրությունը կջերմանա, այլև դաշտային կարգավորիչը Q1:

Քանի որ սարքը օգտագործելու ամբողջ ընթացքում մենք այն սնուցել ենք բացառապես USB-ից, որոնվածը օպտիմիզացված է 5 վոլտից ոչ ավելի ելքային լարման համար, գրեթե բոլոր «կլոր» մարտկոցների համար դա բավարար է. կարող եք լիցքավորել և լիցքաթափել մեկ լիթիումի բանկա կամ երկու նիկելային մարտկոցներ միացված շարքով, առավելագույն հոսանքը՝ 2 ամպեր։

Հաճախականության հաշվիչ AT90S2313-ի վրա

Վիրտուալ հաճախականության հաշվիչը ԱՀ ծրագրի և պարզ չափիչ սարքի «կոմպլեկտ» է, որը միացված է համակարգչի COM պորտին։Վիրտուալ գործիքը թույլ է տալիս չափել հաճախականությունը, ժամանակաշրջանը, ժամանակային ընդմիջումները և հաշվել իմպուլսները:

Մանրամասն:http://home.skif.net/~yukol/FMrus.htm

Ես խորհուրդ եմ տալիս հավաքել պարզ դիզայն, որը չի պահանջում կոնֆիգուրացիա և ամենակարևորն այն աշխատում է: Միկրոկառավարիչը ծրագրավորված էծրագրավորող PonyProg - հիանալի ծրագրավորող, պարզ, ծրագրավորվող միկրոկառավարիչների մեծ տեսականի,աշխատում է Windows-ով, ինտերֆեյսը ռուսերեն է։


«Ռադիո» ամսագիրը N1 2002 թ Ni-Cd մարտկոցների համար: Թույլ է տալիս լիցքավորել 4 մարտկոց:



Հաճախականության հաշվիչ նկար 16F84A-ում

Հաճախականության հաշվիչի բնութագրերը.

Առավելագույն չափելի հաճախականություն ............. 30 ՄՀց;

Չափված հաճախականության առավելագույն թույլատրելիությունը .. .10 Հց:

Մուտքի զգայունությունը .................. 250 մՎ;

Մատակարարման լարումը ......................... 8 ... 12 Վ:

Ընթացիկ սպառումը ............................ 35 մԱ


Մանրամասներ, որոնվածը.http://cadcamlab.ru


Զոդման կայան Atmega 8-ում


Զոդման երկաթի և վարսահարդարիչի միացումը կատարվում է ԱՀ անջատիչներով։ Վարսահարդարիչը կառավարվում է թրիստորի միջոցով, քանի որ 110v վարսահարդարիչ R1 դիոդի կաթոդի փոխարեն V. 6.


Մանրամասներ, որոնվածը. http://radiokot.ru/forum


Թվային հզորության հաշվիչ առանց միացումից զոդման

Նկարագրությունը տրված է 2009 թվականի «Ռադիո» №6 ամսագրում: Կառույցը հավաքված է AT90S2313-ի վրա՝ առանց Tiny2313 օգտագործված որոնվածի փոփոխության: Pon'ka-ում ես դրել եմ SUT1, CKSEL1, CKSEL0 վանդակները, մնացածը դատարկ են: Ես MAX631-ը չեմ տեղադրել, դա մեզ համար թանկ է, ես որոշեցի այն սնուցել սնուցման աղբյուրից կայունացուցիչի միջոցով 7805, R29, R32, R33 դրեց այն սնուցման աղբյուրին գումարած: Բացի հզորության հաշվիչից, պատյանում տեղադրված է զոնդ առանց զոդման տրանզիստորների փորձարկման և LF ՌԴ ազդանշանի գեներատոր:



ATmega8-ի վրա հիմնված կիսահաղորդչային հաշվիչ

Սարքը կարող է.

Որոշեք կիսահաղորդիչների լարերը;
- որոշել տեսակը և կառուցվածքը.
- չափել ստատիկ պարամետրերը:
Չափում է դիոդներ, երկբևեռ տրանզիստորներ, JFET և MOS դաշտային ազդեցության տրանզիստորներ, ռեզիստորներ, կոնդենսատորներ:


Հաշվիչը պատրաստված է նույն դեպքում, ինչ FCL հաշվիչը, ցուցիչը սարքերի միջև փոխարկվում է PC անջատիչով:

Հաճախականության հաշվիչ, հզորության և ինդուկտիվության հաշվիչ - FCL-մետր

Ստորև նկարագրված սարքը հնարավորություն է տալիս մեծ ճշգրտությամբ չափել էլեկտրական տատանումների հաճախականությունները, ինչպես նաև էլեկտրոնային բաղադրիչների հզորությունն ու ինդուկտիվությունը: Դիզայնն ունի նվազագույն չափեր, քաշ և էներգիայի սպառում:

Տեխնիկական պայմաններ:

Մատակարարման լարումը, V: 6 ... 15

Սպառման հոսանք, mA: 14 ... 17

Չափման սահմանները.

F1, ՄՀց 0,01 ... 65 **

F2, ՄՀց 10 ... 950

0,01 pF-ից ... 0,5 μF

L 0,001 μH ... 5 Հ


Հեռավոր գլխի դիագրամ


Ավելի մանրամասն: http://ru3ga.qrz.ru/PRIB/fcl.shtml


Մանրանկարչական վոլտմետր՝ հիմնված ATmega8L միկրոկոնտրոլերի վրա


Այստեղ մենք դիտարկում ենք վոլտմետրի ձևավորումը միայն մեկ ATmega8L միկրոկարգավորիչի և էլեկտրոնային բժշկական ջերմաչափի ցուցիչի վրա: Չափված DC լարումների միջակայքը ± 50 Վ է: Որպես լրացուցիչ գործառույթ, իրականացվում է ձայնային զոնդի ռեժիմ՝ լարերի, շիկացած լամպերի ամբողջականությունը ստուգելու համար: Սարքը ավտոմատ կերպով անցնում է սպասման ռեժիմի, երբ չափումներ չկան: Միկրոկառավարիչը սնուցվում է երկու մանրանկարչական ալկալային բջիջներով (մարտկոցներ ձեռքի ժամացույցի համար), ես դրել եմ 1 բջիջը 3վ: Մարտկոցները հաճախ փոխելու կարիք չի լինի. ակտիվ ռեժիմում ընթացիկ սպառումը կազմում է ընդամենը 330 μԱ, սպասման ռեժիմում՝ 300 նԱ-ից պակաս: Իր մանրանկարչական դիզայնի և հնարավորությունների շնորհիվ սարքը օգտակար է և գործնական։ Տախտակը չէր տեղավորվում ջերմաչափի պատյանում, և ես այն պատյանի մեջ սարքեցի ֆլամաստերից։ Նա պատրաստել է իր տախտակը, R5-R7 ռեզիստորները վետիկայով տեղադրել ավտոբուսների վրա։ VADZZ-ն օգնեց ստեղծել որոնվածը աղբյուրից նրա շնորհիվ: Ցուցանիշի քորոցները ձախից աջ, կապում են ներքևում և դեմքով դեպի ձեզ:

Սխեման (լիարժեք դիագրամի համար պատկերը պահեք ձեր համակարգչում):

Մանրամասների համար տե՛ս՝ http://www.rlocman.ru/shem/schematics.html?di=63917

Հիշողություն հզորության չափման գործառույթով

Ես ուզում էի չափել մարտկոցների հզորությունը, ներմուծված հաշվիչները բավականին թանկ են, ես գտա մի հետաքրքիր շղթա և հավաքեցի այն։ Լավ է աշխատում, լիցքավորում է, չափում է, բայց ինչ ճշգրտությամբ կարող եմ ասել՝ ստանդարտ չկա։ Ես չափել եմ բավականին պարկեշտ ընկերությունների կուտակիչները 2700 մ/ժ - ես նախատեսում էի 2000 թվականը: Խաղալիքների մարտկոցները 700 մ/ժ -350; շատ ավելի շահավետ, քան մարտկոցները:


Սարքը նախատեսված է NiMH մարտկոցները լիցքավորելու և դրանց հզորությունը վերահսկելու համար։ Լիցքավորման / լիցքաթափման ռեժիմների միջև անցումը կատարվում է SA1 կոճակով: Գործողության ռեժիմը նշվում է յոթ հատվածի էկրանի առաջին երկու թվանշանների լուսադիոդներով և տասնորդական կետերով:
Հոսանքը միացնելուց անմիջապես հետո սարքը անցնում է լիցքավորման ռեժիմի։ Ցուցանիշը ցույց է տալիս լիցքավորման ժամանակը: Ծրագրված ժամկետի ավարտից հետո լիցքավորումը դադարում է։ Լիցքավորման ավարտը (իսկ լիցքաթափումը նույնն է) վկայում է չորրորդ ելքի վառված կետը։ Լիցքավորման հոսանքը սահմանվում է որպես C / 10, որտեղ C-ն մարտկոցի հզորությունն է, որը սահմանված է R14 հարմարվողական սարքի կողմից:
Հաշվիչի շահագործման սկզբունքը հիմնված է այն ժամանակի հաշվարկի վրա, որի ընթացքում մարտկոցի լարումը կնվազի մինչև 1,1 Վ: Լիցքաթափման հոսանքը պետք է հավասար լինի 450 մԱ, սահմանված է R16: Հզորությունը չափելու համար անհրաժեշտ է մարտկոցը տեղադրել լիցքաթափման խցիկում և սկսել գործընթացը՝ սեղմելով կոճակը: Սարքը կարող է լիցքաթափել միայն մեկ մարտկոց.

Ավելի մանրամասն:http://cxem.net

Ունիվերսալ խոզապուխտ ռադիո վառարան

SMD մասերի զոդման վառարանը ունի 4 ծրագրավորվող ռեժիմ։

Կառավարման բլոկային դիագրամ (լիաֆորմատ դիագրամի համար պատկերը պահեք ձեր համակարգչում):


Էլեկտրամատակարարման և ջեռուցիչի հսկողություն


Ես հավաքեցի այս կառուցվածքը IR զոդման կայանը կառավարելու համար: Միգուցե մի օր ես տնօրինեմ վառարանը։ Գեներատորը գործարկելու հետ կապված խնդիր կար, 22 pF կոնդենսատորները դրեց 7, 8 կապանքներից դեպի գետնին և սկսեց նորմալ գործարկել: Բոլոր ռեժիմները նորմալ են աշխատում՝ 250 Վտ հզորությամբ կերամիկական ջեռուցիչով:

Ավելի մանրամասն: http://radiokot.ru/lab/hardwork/11/

Քանի դեռ վառարան չկա, ես պատրաստեցի այս ներքևի ջեռուցումը փոքր տախտակների համար.

Ջեռուցիչ 250 Վտ, տրամագիծը 12 սմ, ուղարկված է Անգլիայից, գնված է EBAY-ից։


Թվային զոդման կայան՝ հիմնված PIC16F88x / PIC16F87x (ա) վրա

Զոդման կայան երկու միաժամանակ գործող զոդման երկաթով և վարսահարդարիչով։ Դուք կարող եք օգտագործել տարբեր MCU (PIC16F886 / PIC16F887, PIC16F876 / PIC16F877, PIC16F876a / PIC16F877a): Ցուցադրումը Nokia 1100-ից է (1110): Վարսահարդարիչի տուրբինի արագությունը վերահսկվում է էլեկտրոնային եղանակով, և վարսահարդարիչի մեջ ներկառուցված եղեգի անջատիչը նույնպես ներգրավված է: Հեղինակային տարբերակում օգտագործվել է իմպուլսային սնուցման աղբյուր, ես օգտագործել եմ տրանսֆորմատորային սնուցման աղբյուր։ Ես բոլորս սիրում եմ այս կայանը, բայց իմ զոդման երկաթով. 60W, 24V, կերամիկական վառարանով, մեծ հոսանքով և ջերմաստիճանի տատանումներով: Միևնույն ժամանակ, ցածր հզորության զոդման երկաթները, նիկրոմի ջեռուցիչով, ունեն ավելի քիչ տատանումներ: Միևնույն ժամանակ, իմ զոդման երկաթը, Միխի-Պսկովից վերը նկարագրված զոդման կայանով, Volu-ի որոնվածով, պահպանում է ջերմաստիճանը մինչև աստիճանի ճշգրտությամբ։ Այսպիսով, անհրաժեշտ է ջեռուցման և ջերմաստիճանի պահպանման լավ ալգորիթմ: Որպես փորձ, ես ժմչփի վրա պատրաստեցի PWM կարգավորիչ, մատակարարեցի հսկիչ լարումը ջերմազույգ ուժեղացուցիչի ելքից, անջատեցի, միացրի միկրոկոնտրոլերից, Ջերմաստիճանի տատանումն անմիջապես իջավ մի քանի աստիճանով, սա հաստատում է, որ ճիշտ կառավարման ալգորիթմը անհրաժեշտ է. Արտաքին PWM-ն իհարկե պոռնոգրաֆիա է միկրոկոնտրոլերի առկայության դեպքում, բայց լավ որոնվածը դեռ չի գրվել։ Ես պատվիրել եմ ևս մեկ զոդման երկաթ, եթե դրա հետ լավ կայունացում չկա, ես կշարունակեմ իմ փորձերը արտաքին PWM հսկողության միջոցով, կամ գուցե լավ որոնվածը հայտնվի: Կայանը հավաքվել է 4 տախտակների վրա՝ միմյանց միացված միակցիչների վրա։

Սարքի թվային մասի դիագրամը ներկայացված է նկարում, պարզության համար ցուցադրված են երկու MC-ներ՝ IC1 - PIC16F887, IC1 (*) - PIC16F876: Մյուս MCU-ները միացված են նույն կերպ՝ համապատասխան նավահանգիստներին։

Կոնտրաստը փոխելու համար անհրաժեշտ է գտնել 67 բայթ, դրա արժեքը «0x80» է, սկզբի համար կարող եք տեղադրել «0x90»: Արժեքները պետք է լինեն «0x80»-ից մինչև «0x9F»:

Ինչ վերաբերում է 1110i դիսփլեյին (տեքստը ցուցադրվում է հայելային), եթե ոչ Չինաստան, այլ օրիգինալ, բաց EEPROM, փնտրիր 75 բայթ, փոխիր A0-ից A1:

Ինտերնետում կան մեքենաների մարտկոցների լիցքավորիչի սխեմաների (լիցքավորիչների) հսկայական քանակություն: Ամենապարզից մինչև ամենաբարդը: Մեր դեպքում մենք կխոսենք Atmega8 միկրոկոնտրոլերի (MK) վրա ստեղծված հիշողության մասին: MK-ի օգտագործումը, ի տարբերություն տրանզիստորների շղթայի, թույլ է տալիս հիշողության համար շատ հարուստ ֆունկցիոնալություն իրականացնել: Օրինակ, այս լիցքավորիչում ես որոշեցի իրականացնել հետևյալ գործառույթները.

1. Հեշտ է գործել: Բավական է մեկ կոդավորիչ: Միացված է ժամացույցի սլաքի ուղղությամբ - լիցքավորումը միացված է: Ժամացույցի սլաքի ուղղությամբ կամ հակառակ ուղղությամբ շրջելը ընտրում է լիցքավորման հոսանքը: Կոդավորիչը որոշեց ընտրել հարվածով։ Սեղմելով դրա վրա՝ կարող եք մուտք գործել մենյու՝ լրացուցիչ գործառույթների կարգավորումներով:

2. Լիցքավորման հոսանքը կլինի մինչև 5A: Չնայած մեքենայումս 85Ա/ժ հզորությամբ մարտկոց կա, բայց լիցքավորելու համար 5Ա-ն բավական է, պարզապես լիցքավորվելու համար մի փոքր ավելի երկար է պահանջվում: Այնուամենայնիվ, անհրաժեշտության դեպքում, հնարավոր կլինի լիցքավորման հոսանքը հասցնել 10 Ա-ի, առանց գլոբալ փոփոխությունների և MK-ի նորից թարթելու:

3. Լիցքավորման հոսանքը հնարավոր կլինի փոխել մինչև 0,1Ա աստիճաններով։ Նվազագույն հոսանքը կարող է ընտրվել մինչև 0.1A: Սա նշանակում է, որ դուք կարող եք նաև լիցքավորել փոքր մարտկոցներ: Ավելին, եթե կոդավորիչը մի փոքր ավելի արագ պտտվում է, լիցքավորման հոսանքը մեծացնելու/նվազեցնելու քայլը կաշխատի 0,5 Ա-ի սահմաններում:

4. Մարտկոցը կլիցքավորվի մինչև 14,4 վոլտ:

5. Վրա էկրանը ցույց կտա տեղեկատվություն մարտկոցի ընթացիկ լիցքավորման հոսանքի և լարման մասին, մարտկոցի լիցքավորման ցուցիչը նույնպես կաշխատի, ինչպես բջջային հեռախոսում: Ինձ թվում էր, որ սա ավելի տեսողական կլինի։

6. Պետք է պաշտպանություն լինի լիցքավորիչի տերմինալների կարճ միացումից: Օրինակ, եթե դուք կարճ միացնեք տերմինալները միասին և միևնույն ժամանակ միացնեք լիցքավորիչը, ապա դա, իհարկե, չպետք է վնասի նրան: Իսկ ընդհանրապես, քանի դեռ մարտկոցը միացված չէ, տերմինալներում լարում չի լինի։ Բացի այդ, եթե մարտկոցը սխալմամբ միացվել է սխալ բևեռականությամբ, հնարավոր չի լինի միացնել լիցքավորումը: Այս ամբողջ պաշտպանությունը կիրականացվի ծրագրային ապահովման և սարքավորման մեջ:

7. Մարտկոցի լիցքավորումը պետք է ամբողջությամբ ավտոմատացված լինի: Դա միանգամայն հնարավոր է, քանի որ MK-ն կօգտագործվի: Լիցքավորման գործընթացի ավտոմատացումը պետք է բացառի մարդկանց ներգրավվածությունը: Սա նշանակում է, որ ես միացրել եմ մարտկոցը, ընտրել եմ լիցքավորման հոսանքը և վերջ: Մնացածը պետք է անի լիցքավորիչը: Մասնավորապես, լիցքավորման գործընթացում պահպանել ընտրված լիցքավորման հոսանքը: Եթե ​​մարտկոցը անսարք է, և լիցքավորումն այլևս հնարավոր չէ, մարտկոցը պետք է ինքնաբերաբար անջատվի, հակառակ դեպքում այն ​​ուղղակի անվերջ կեռա, և դա մեզ պետք չէ։

8. «Ձմռանը մարտկոցի պահեստավորում» ֆունկցիան կարծես հարմար էր։ Ինչ էլ ասի, բնության մեջ բացարձակապես ցանկացած մարտկոց ունի իր ներքին ինքնալիցքաթափումը: Սա նշանակում է, որ եթե դուք պարզապես մարտկոցը թողնեք առանց հսկողության որոշակի ժամանակահատվածում, ապա ինքնալիցքաթափման հոսանքի պատճառով այն կլիցքաթափվի, ինչը, ի վերջո, կհանգեցնի թիթեղների սուլֆացմանը։ Իսկ մարտկոցի համար սա մահ է: Ընդ որում, ինքնալիցքաթափման և սուլֆացիայի ժամանակն այնքան էլ երկար չէ։ Երբեմն մի քանի ամիսը բավական է։ Որպեսզի դա տեղի չունենա, գործառույթը կիրականացվի«Ձմռանը մարտկոցի պահեստավորում». Այն աշխատում է պարզ, լիցքավորիչը միացնում ենք մարտկոցին, իսկ մարտկոցը մեքենայից հանելու կարիք չկա։ Ավելին, լիցքավորիչը կհետևի մարտկոցի լարմանը յուրաքանչյուր կես ժամը մեկ: Եթե ​​լարումը իջնի նորմայից ցածր, ավտոմատ լիցքավորումը կմիանա, լիցքավորման ցիկլի ավարտից հետո լիցքավորիչը կրկին կանցնի մարտկոցի լարման կառավարման ռեժիմին: Ավելին, պատասխանի շեմը ընտրվում է հենց օգտագործողի կողմից մենյուում, և ընթացիկ ուժը կարող է ընտրվել նաև ընտրացանկում: Անձամբ ես ինձ համար սահմանել եմ 12,5 վոլտ շեմ և 0,5 Ա լիցքավորման հոսանք: Ցածր հոսանքներով լիցքավորումն ավելի արդյունավետ է, քան բարձր հոսանքները:

9. Հավանաբար օգտակար կլինի «շարունակել լիցքավորումը հոսանքազրկումից հետո» ֆունկցիան։ Չնայած նման զուգադիպություն կարող է տեղի ունենալ 150 տարին մեկ անգամ, այնուամենայնիվ, այդ ֆունկցիան կա։ Լիցքավորիչը միշտ «հիշում է», որ լիցքավորման գործընթացը միացված է, և եթե էլեկտրականությունն անջատված/միացված է, լիցքավորումը պարզապես կշարունակվի։ Ամեն դեպքում, ցանկի ընտրությամբ կարելի է անջատել կամ միացնել բոլոր գործառույթները: Եթե ​​անջատեք բոլոր գործառույթները, ապա լիցքավորիչը պարզապես կդառնա «սովորական լիցքավորիչ», որը կլիցքավորի մարտկոցը և կանջատվի։

10. Եվ վերջապես հիշողության մեջ կաշխատի ծրագրի ժամանակաչափը։ Ժմչփն անընդհատ առաջ կտանի 0..1.2 և այլն: Եթե ​​մարտկոցը լիցքավորվում է, և դա երևում է նրանից, թե ինչպես է դրա վրա լարումը աստիճանաբար բարձրանում մինչև 14,4 վոլտ: Այսպիսով, հենց որ մարտկոցի լարումը փոքր-ինչ բարձրանա, ժամանակաչափը անմիջապես կվերակայվի 0-ի և կշարունակի նորից հաշվել 0 ... 1.2 ... Բայց եթե մարտկոցը անսարք է կամ հին, կամ էլեկտրոլիտի խտությունը այնքան էլ մեծ չէ: ճիշտ է, ապա որոշակի շեմի դեպքում գանձումը հետագայում անհնար է: Եվ այս շեմը կարող է լինել 14,4 վոլտից ցածր: Ինչպե՞ս լինել: Այս դեպքում ժամանակաչափը կդադարի վերակայվել: Եվ հասնելով որոշակի կետի, նա պարզապես կանջատի լիցքավորումը՝ էկրանին հաղորդագրությամբ։ Մարտկոցը հետագայում եռացնելու իմաստ չկա: Ժմչփը կարելի է անջատել մենյուում կամ միացնել՝ 30 րոպեից մինչև 3 ժամ սահմանելով տկնիկի միջակայքը: Ցուցադրումը ցույց կտա, թե ինչպես է ժմչփը ժամանակ առ ժամանակ նշում և վերակայում, եթե լիցքավորումը արտահոսում է նորմալ ռեժիմում:

Այժմ եկեք անցնենք լիցքավորիչի սխեմայի քննարկմանը:

Էլեկտրամատակարարում.
Այս դեպքում մենք կօգտագործենք ցանկացած անջատիչ սնուցման աղբյուր (UPS): Ելքային լարումը 16-ից 20 վոլտ: Քանի որ լիցքավորման հոսանքը կլինի մինչև 5A, UPS-ի ելքային հոսանքը պետք է լինի ինչ-որ տեղ մինչև 6A մարժան: Ես օգտագործել եմ IPBՆՇԱՆԱԿԵԼ ԼԱՎRS-75-15որն ունի 15 վոլտ ելքային լարում, սակայն ագրեգատում կա հարմարվողական սարք, որով կարող եք լարումը բարձրացնել մինչև 16,5 վոլտ։ UPS-ի առավելությունն այն է, որ այն թեթև է, կոմպակտ և ունի ներկառուցված պաշտպանություն բարձր հոսանքներից, կարճ միացումներից և այլն: Հետևաբար, դրա մասին անհանգստանալու կարիք չկա: Սկզբունքը հարմար է ցանկացած այլ IPI-ի համար: Գոնե նոութբուքից։ Եթե ​​ձեր UPS-ն ունի 5Ա-ից պակաս հոսանք, կարող եք նաև օգտագործել այն, պարզապես պետք է համոզվեք, որ լիցքավորման հոսանքը չեք սահմանել ավելին, քան կարող է տալ UPS-ը: Տրանսֆորմատորային էներգիայի մատակարարման միավորը մեր դեպքում հարմար չէ: Տրանսֆորմատորի վրա լիցքավորիչը առանձին թեմա է և առանձին հոդված: Այսպիսով, հոսանքի միացումն այսպիսի տեսք կունենա.

1000uF կոնդենսատորը, սկզբունքորեն, չի կարող տեղադրվել, քանի որ այն արդեն տեղադրված է անջատիչ էլեկտրամատակարարման մեջ ելքի վրա, բայց եթե այն տեղադրեք, ավելի վատ չի լինի: C2 կոնդենսատորը ավելի լավ է, եթե կա էլեկտրոլիտ, բայց ես դնում եմ կերամիկական smd: 7805 կայունացուցիչն անհրաժեշտ է MK-ի, LCD էկրանի և այլ ամրագոտիների սնուցման համար:

Հիմա միացնենք մարտկոցը և դաշտային տրանզիստորը:



Ինչպես տեսնում եք, ամեն ինչ պարզ է. Տրանզիստորը կկարգավորի հոսանքը մարտկոցի միջոցով: Ռելե K1-ը կստանձնի պաշտպանության դերը, այն կմիանա միայն այն ժամանակ, երբ մարտկոցը ճիշտ միացվի և միացվի։ Ցեմենտային դիմադրություն R18-ը գործում է որպես շունտ: 5 Ա հոսանքի դեպքում այն ​​կունենա 0,5 վոլտ լարում։ Մենք կբարձրացնենք այս լարումը և կմատակարարենք այն MK ADC-ին, այնպես որ MK-ն իմանա, թե ինչ հոսանք կա լիցքավորման միացումում, և այս արժեքը կարող է ցուցադրվել: Այժմ ժամանակն է միացնել MK-ը միացումին:

Ինչպես տեսնում եք, սխեման մի փոքր ավելի բարդ է դարձել։ Բայց ոչ շատ։ PB0 տերմինալին միացնում ենք ռելե, 12 Վ լարման ցանկացած ռելե, որի կոնտակտները պետք է դիմակայեն 5Ա հոսանքի։ Մոտ 200 ohms խտացնող ռեզիստորը պետք է միացվի ռելեին հաջորդաբար, քանի որ ռելեը սնուցվելու է 16-20 վոլտ լարման միջոցով: Ռելեի կծիկին զուգահեռ պետք է տեղադրվի պաշտպանիչ դիոդ (ցանկացած, դրվածLL4148), առանց դիոդի, VT4 տրանզիստորը կարող է ճեղքել: VT4-ը կարող է լինել ցանկացած npn տիպ, օգտագործված MMBT4401LT1:

Կոդավորիչը միացված է PD7, PC1, PC0 կապանքներին: Օգտագործել է այս կամ այս մեկը: Այն ելքերին, որոնց միացված է կոդավորիչը, անհրաժեշտ է միացնել 0,1 uF կոնդենսատորներ և 10k քաշող դիմադրություններ: Սա կնվազեցնի շփումները:

Ցուցադրումն օգտագործվել է 16 նիշից բաղկացած երկու տողում: Ցուցադրումն ունի նաև ներկառուցված ռուսերեն տառատեսակ։ Եթե ​​միացնեք դիսփլեյ առանց ռուսերեն տառերի, էկրանը կճաքի: Քանի որ Atmega8 MK-ն շատ ոտքեր չունի, էկրանը միացված է 4-բիթանոց ավտոբուսի միջոցով: Ցուցասարքի DB3-DB0 մատիտները չեն օգտագործվում:

BAT54S Schottky դիոդը, երկու 0.1uF կոնդենսատորները և 100 Օհմ ռեզիստորը միացված են MK PB2 փինին: Ինչու է սա անհրաժեշտ: Փաստն այն է, որ միացումն օգտագործում է op-amp LM358, որը «երկաթուղուց երկաթուղի» չէ: Նման op-amp-ներում առանց բացասական սնուցման լարման բացասական էներգիայի տերմինալում, op-amp-ի ելքը երբեք չի ունենա 0 վոլտ: Հետևաբար, PB2 փինին միացված տարրերի այս շղթան ստեղծում է մոտ -4 Վ բացասական լարում՝ օպերատորի հզորացման համար: Որպեսզի PB2 փին շղթան աշխատի և գեներացնի -4V, դրա վրա պետք է կիրառվի 50% աշխատանքային ցիկլով PWM ազդանշան: Այսպիսով, PB2 փինում միշտ կա 62,5 կՀց հաճախականությամբ PWM:

PWM-ը միշտ առկա է PB3 փինում, սակայն ազդանշանի աշխատանքային ցիկլը այս դեպքում 0-ից մինչև 100% արդեն կարգավորվում է կոդավորչի պտույտով: R18 դիմադրությունը և C11 կոնդենսատորը կազմում են ինտեգրացիոն միացում, որը հարթեցնում է PWM-ը մշտական ​​լարման: R19 ռեզիստորները և R20 հարմարվողականները լարման բաժանարար են: Ինչպե՞ս կարգավորել R20-ը: Մենք միացնում ենք մուլտիմետրը PB3 փին և պտտում ենք կոդավորիչը, մինչև սարքը ցույց տա 2,5 վոլտ: Այնուհետև մենք պտտում ենք R20 հարմարվողական ռեզիստորը, որպեսզի op-amp-ի ոչ շրջվող ելքում լինի 0,25 վոլտ լարում: Սա ավարտում է R20-ի կարգավորումը:

Ինչպե՞ս է աշխատում տրանզիստորի կարգավորումը և կառավարումը: Ենթադրենք, որ op-amp-ի (+) չշրջվող ելքը 0,5 վոլտ է: Op-amp-ի հատկություններից մեկն այն է, որ այն ձգտում է հավասարեցնել իր երկու մուտքերի պոտենցիալ տարբերությունը: Նա դա անում է՝ օգտագործելով իր ելքը՝ բարձրացնելով կամ իջեցնելով դրա վրայի լարումը: Այսպիսով, (+) պտուտակի վրա 0,5 վոլտ է, իսկ (-) պինում՝ 0 վոլտ: Ի՞նչ է հաջորդը: Op-amp-ը անմիջապես կսկսի բարձրացնել լարումը ելքի վրա, որը միացված է IRF540 տրանզիստորի դարպասին: Տրանզիստորը սկսում է բացվել: Հոսանքը սկսում է հոսել մարտկոցի, տրանզիստորի և շանտի միջով: Ընթացիկ հոսանքն առաջացնում է լարման անկում R18 շանթում: Op-amp-ը կմիացնի տրանզիստորը այնքան ժամանակ, մինչև շունտի վրա 0,5 վոլտ լարում լինի: Շանթից լարումը կիրառվում է R13-ի միջոցով (-) տերմինալին: Հենց որ (-) պտուտակի վրա լինի 0,5 վոլտ (նույնը, ինչ (+) պտուտակի վրա), op-amp-ը կդադարի միացնել տրանզիստորը: Այս դեպքում լիցքավորման հոսանքը կլինի 5Ա:

Եթե ​​կոդավորիչը նվազեցնում է լարումը (+) տերմինալում մինչև 0,25 վոլտ, ապա օպերատորը կնվազեցնի լարումը տրանզիստորի դարպասում մինչև այնպիսի արժեք, որ (-) տերմինալում այն ​​նույնպես դառնա 0,25 վոլտ, այս արժեքը: համապատասխանում է 2,5 Ա լիցքավորման հոսանքին: Ստացվում է, որ լիցքավորման հոսանքի կարգավորումն իրականացվում է ապարատային համակարգում՝ օգտագործելով op-amp-ը։ Եվ սա շատ լավ է, քանի որ op-amp-ը երբեք չի սառչի, և թրթռման արագությունը ակնթարթային է: Այս կառավարման միացումը սովորական գծային հոսանքի աղբյուր է: Այս սխեմայի հարմարավետությունն այն է, որ այն պարզ է, բայց թերությունն այն է, որ անջատիչ սնուցման և մարտկոցի լարման միջև լարման ամբողջ տարբերությունը թողարկվում է տրանզիստորի վրա ջերմության տեսքով:

Օրինակ, UPS-ը տալիս է 20 վոլտ, մարտկոցի լարումը լիցքավորման սկզբում 12 վոլտ է, իսկ լիցքավորման հոսանքը՝ 5 Ա։ Որքա՞ն էներգիա է հատկացված տրանզիստորի վրա: (20-12) * 5 = 40 Վտ. 40W-ը շատ է!!! Ձեզ անհրաժեշտ է հզոր ջերմատախտակ և հինգ օդափոխիչ: Այնքան լավ ոչնչի համար: Թեև IRF540 տրանզիստորը կդիմանա 150 վտ հզորությանը, սակայն լիցքավորիչը տրանզիստորով տաքացնելն իմաստ չունի: Ինչպե՞ս նվազեցնել ջերմության արտադրությունը: Դուք կարող եք իջեցնել UPS-ի լարումը, օրինակ, մինչև 16 վոլտ: Այնուհետեւ (16-12) * 5 = 20 Վտ երկու անգամ պակաս, արդեն ավելի լավ է: Բայց ջեռուցումը կարող է կատարվել նույնիսկ ավելի քիչ, մինչև 5 վտ կամ ավելի քիչ: Ինչպե՞ս:

IPB-ում նմանատիպ տիպի, ինչպեսՆՇԱՆԱԿԵԼ ԼԱՎRS-75-15միշտ կա կտրող ռեզիստոր, որը կարող է կարգավորել ելքային լարումը 10%-ի սահմաններում: Սա նշանակում է 13,5-ից 16,5, իմ դեպքում ստացվել է 13-ից 17 վոլտ: Դուք կարող եք զոդել հարմարվողական սարքը ISB-ից, իսկ փոխարենը կպցնել MK ելքը, այնպես որ մենք կարող ենք օգտագործել MK լարումը ISB-ի ելքի վրա կարգավորելու համար, ինչը կնվազեցնի տրանզիստորի ջերմության առաջացումը նվազագույնի: Օրինակ, եթե մարտկոցն ունի 12 վոլտ, մենք իջեցնում ենք լարումը մինչև 13 վոլտ և ստանում ենք (13-12) * 5 = 5 Վտ ջերմություն տրանզիստորի վրա, ավելի լավ, քան 40: Այսպիսով, մենք արդիականացնում ենք միացումը:


Միացրեք PC123 օպտիկացանցը կամ նման PB1 փին: PB1 փինում pwm ազդանշանը նույնպես միշտ հերթապահ է, որը ինտեգրված է R22 և C13 շղթայով: Մենք զոդում ենք հարմարվողական ռեզիստորը UPS-ում և դրա փոխարեն զոդում ենք սովորական 1,2 կՕհմ ռեզիստորը: Այժմ MK-ն կարող է վերահսկել լարումը UPS-ի ելքի վրա օպտոկոուլլերի միջոցով: Երբ optocoupler-ը անջատված է, UPS-ի ելքի լարումը նվազագույն է, երբ այն միացված է, R23 ռեզիստորը միացված է գետնին, լարումը բարձրանում է: Սահուն փակում/բացում է օպտոկապլերը՝ օգտագործելով PWM ազդանշանը PB1 պինում՝ սահուն կերպով կարգավորելով լարումը UPS-ի ելքի վրա:

Որպեսզի իմանաք, թե երբ և որքան պետք է կարգավորել լարումը UPS-ի ելքում, դուք պետք է իմանաք, թե ընդհանուր առմամբ քանի վոլտ կա ուժային տրանզիստորի վրա: Այնուհետև մենք պետք է իջեցնենք UPS-ի ելքի լարումը, որպեսզի մարտկոցի լարման և UPS-ի ելքի լարման տարբերությունը հնարավորինս ցածր լինի: Դա անելու համար մենք չափում ենք տրանզիստորի արտահոսքի լարումը PC2-ի ելքով՝ օգտագործելով MK ADC: Դա արվում է R9-ի և R10-ի համար բաժանարարի միջոցով: Այժմ, իմանալով անհրաժեշտ պարամետրերը, ԲԿ-ի ծրագիրն ինքնին կվերահսկի PWM աշխատանքային ցիկլը PB1 փինում:

Հիմա շատ քիչ է մնացել։ Սա լիցքավորման միացումում հոսանքը չափելու և էկրանին ցուցադրելու համար է: Եվ մնում է չափել լարումը մարտկոցի վրա, ինչպես նաև ցուցադրել այն էկրանին:

Մարտկոցի լարումը չափվում է դիֆերենցիալ եղանակով։ Մենք արժեքը հեռացնում ենք PC5 փինից: R5 և R6 ռեզիստորները պետք է լինեն ուղիղ 3 կՕմ յուրաքանչյուրը, իսկ R2 և R4 ռեզիստորները պետք է լինեն յուրաքանչյուրը 1 կՕմ, ցանկալի է, որ ճշգրտությունը լինի առնվազն 1%, այնպես որ ես չունեի այդպիսի R4 որպես հարմարվողական: Ներքևի տողն այն է, որ ռեզիստորի նման գնահատականներով լարման հարաբերակցությունը op-amp-ի մուտքերում և դրա ելքում 3: 1 է: Երբ մարտկոցի վրա լարումը փոխվում է 0-ից մինչև 15 վոլտ, op-amp ելքի լարումը կփոխվի 0-ից մինչև 5 վոլտ: Այս շղթան կարգավորելու համար հարկավոր է մարտկոցի փոխարեն միացնել 14,4 վոլտ, օրինակ՝ լաբորատոր սնուցման աղբյուրից։ Այնուհետև մենք պտտում ենք R4 հարմարանքը, որպեսզի LCD էկրանը նույնպես լինի 14,4 վոլտ: Լարման չափման շղթայի կարգավորումն այժմ ավարտված է:

Ընթացիկը չափվում է շանթի վրայով լարման անկման միջոցով, որը խաղում է սովորական ցեմենտի դիմադրությամբ: Մեր հոսանքը 0-ից 5Ա է: Շանթի վրայով լարումը տատանվում է համապատասխանաբար 0-ից մինչև 0,5 վոլտ: R16 և R17 ռեզիստորների արժեքներն ընտրված են այնպես, որ օպերատորի ելքի վրա լարումը լինի 0-ից 5 վոլտ: Մենք կարգավորել ենք լիցքավորման հոսանքի ցուցադրումը հետևյալ շղթայի համաձայն. Միացնում ենք մարտկոցը և կատարում 2,5 Ա հոսանք, մարտկոցին զուգահեռ միացնում ենք 12 վոլտ լամպ։ Մենք անջատում ենք մարտկոցը և թողնում լամպը: Մենք համոզվում ենք, որ հոսանքը 2,5 ամպեր է: Եթե ​​շունտի վրայով լարումը 0,25 վոլտ է, ապա հոսանքը 2,5 Ա է: եթե ոչ, պտտեք կոդավորիչը մինչև շունտը 0,25 վոլտ լինի: Այժմ մենք պտտում ենք R17 հարմարվողական սարքը, որպեսզի էկրանը ցույց տա 2,5Ա հոսանք: Ընթացիկ էկրանի կարգավորումն այժմ ավարտված է:

Ի՞նչը կարելի է պարզեցնել: Օրինակ, եթե UPS-ում լարման բաժանարարի հետ խառնվելու ցանկություն չկա, ապա այն ամենը, ինչ զոդված է MK PB1-ի ոտքին, կարող է դուրս շպրտվել միացումից: Բայց մնացած ամեն ինչ իր տեղում պետք է լինի։ Բայց այս դեպքում մարտկոցի և UPS-ի ելքի միջև լարման ողջ տարբերությունը ջերմության տեսքով վայրէջք կկատարի հոսանքի տրանզիստորի վրա: Այս դեպքում մենք չենք ափսոսում, որ ավելի շատ ռադիատոր ենք վերցրել:

Եթե ​​Ձեզ անհրաժեշտ է մինչև 10 Ա լիցքավորման հոսանք՝ շանթին զուգահեռ, մենք զոդում ենք նույն շունտը 0,1 Օմ արժեքով: Վերցնում ենք ռելեը մինչև 10A դիմադրող կոնտակտներով և IRF540 տրանզիստորի հետ զուգահեռ զոդում ենք նույնից ևս մեկը։ Մենք տրանզիստորները պտտում ենք հզոր ռադիատորի վրա և առաջ ենք անցնում, փորձարկում ենք: Միակ բանն այն է, որ էկրանի վրա հոսանքի արժեքը պետք է նկատի ունենալով 2-ով բազմապատկել: Եթե էկրանը ցույց է տալիս 5A, իրականում այն ​​արդեն կլինի 10A: Անձամբ ես ինքս դա չեմ արել, բայց տեսականորեն դա պետք է աշխատի։

Ի վերջո, ստացված դիագրամը կունենա հետևյալ տեսքը.


Ես չեմ տեսնում որևէ համաձայնություն, այնպես որ ներբեռնեք սխեման այստեղից .

Մի քանի որոնվածի բեկորներ:

#include "define.h" #include "init_mcu.h" #include "lcd.h" #include "text.h" #include "bits_macros.h" #include "fun.h" #include "encoder.h" # ներառել «servise.h» #include «main.h» #include #ներառում #ներառում #ներառում #ներառել #ներառել #ներառում #սահմանել RELAY PB0 uint8_t lcd_time, lcd_track, lcd_count, enc_interval, enc_speed, off_charge; uint8_t U_bat_tim, I_bat_tim = 255, stok_reg, Energy_flag, count; uint16_t I_reg, enc_block, bat_count, bat_save, bat_off; EEMEM uint8_t էներգիան_անջատված; struct դրոշակ (_Bool lcd_clr_txt0: 1; _Bool lcd_clr_txt1: 1; _Bool count_timer0: 1; // ընդհատման կարգավորիչի համար _Bool start_charging: 1; // անջատեք ռելեը, եթե էլեկտրականությունն անջատված է, երբ բաքը լիցքավորվում է:1 _Bool; դրոշներ; ISR (TIMER0_OVF_vect) // Ժմչփի 0 հորդառատ ընդհատում յուրաքանչյուր 1 մվ: (TCNT0 = 0x6; flags.count_timer0 = 1;) void reg_I (uint16_t reg_val) // նվազեցնել լիցքավորման հոսանքը, երբ հասնում է 14,4 վոլտ (եթե (I_reg> reg_val) (I_reg = 0; off_charge = 1; եթե (OCR2! = 0) (OCR2--; enc_data = OCR2;))) void Charg_off (անվավեր) (եթե (BitIsSet (PORTB, RELAY)) (eeprom_update_byte (& Energy_off, 0);) ClearBit (PORTB, RELAY); ClearBit (TCCR2, COM21); // անջատել է ապարատային pwm ելքը PB3 փին OCR1A = 0; // իջեցրել է իմպուլսային գեներատորի էներգիայի մատակարարումը մինչև 12,5 վոլտ: off_charge = 0; flags.start_charging = 0; flags.ocr1a_block = 0; enc_data = 0; I_bat_tim = 255; count = 0; OCR2 = 0;) int main (void) (#եթե 1 // սկզբնավորում MCU_init_ports (); MCU_init_adc (); MCU_init_an_comp (); MCU_init_timer0 (); MCU_init_timer1 (MCU_init_timer1) ; LCD_init_flash , 0); LCD_string_of_flashXY (text_2,3,1); _delay_ms (1500); LCD_string_of_flashXY (text_3,3,0); LCD_string_of_flashXY (text_4,2,1); _delay_ms (text_4,2,1); _delay_ms (text_4,2,1); (PIND , PUSH)) (servise ();) // մուտքագրեք ծառայության ցանկը, եթե (eeprom_read_byte (& Energy_off) && u_batt ()> 20) (enc_data = eeprom_read_byte (& i_pusk); ) else (eeprom_update_byte (& Energy_off, 0);) MCU_init_wdt (); sei (); #endif while (1) (wdt_reset (); uint8_t u_bat = u_batt (); uint8_t i_bat = i_batt (); #եթե 1 / * որոշեք, արդյոք մարտկոցը միացված է * / եթե (u_bat> 30) // 30 * 0.0585 = 1,7 վոլտ մարտկոցի վրա, միացված (եթե (flags.lcd_clr_txt0 == 0) (flags.lcd_clr_txt0 = 1; LCD_clear ();) եթե (lcd_time> 200) (lcd_time = 0; LCD_string_of_flash7, LCD_string_of_flashX0, ext_of_flashXY0); XY (տեքստ 7,0); LCD_string_of_flashXY (տեքստ_11,13,0); նիշերի բուֆեր; uint16_t U = (u_bat * 59) / 100; utoa ((uint8_t) U, բուֆեր, 10); // ցուցադրման լարումը, եթե (( uint8_t ) U> = 100) (LCD_dataXY (բուֆեր, 2,0); LCD_տվյալներ (բուֆեր); LCD_տվյալներ ("."); LCD_տվյալներ (բուֆեր); LCD_string_of_flashXY (տեքստ_10,6,0);) այլ դեպքում, եթե ((uint8_t) U > = 10 && (uint8_t) U<=99) { LCD_dataXY(buffer,2,0); LCD_data("."); LCD_data(buffer); LCD_string_of_flashXY(text_10,5,0); } else { LCD_dataXY("0",2,0); LCD_data("."); LCD_data(buffer); LCD_string_of_flashXY(text_10,5,0); } uint16_t I=(i_bat*20)/100; utoa((uint8_t)I, buffer, 10);//выводим ток на дисплей c шунта if ((uint8_t)I>9) (LCD_dataXY (բուֆեր, 10,0); LCD_տվյալներ (""); LCD_տվյալներ (բուֆեր);) այլ (LCD_dataXY ("0", 10,0); LCD_data (""); LCD_տվյալներ (բուֆեր); ))) else // միացված չէ (LCD_string_of_flashXY (text_5,0,0); LCD_string_of_flashXY (text_6,0,1); flags.lcd_clr_txt0 = 0; eeprom_update_byte (& Energy_off, 0);;) 1 *#if գործընթացի ժամանակաչափ0 ընդհատման դրոշակ * / if (flags.count_timer0 == 1) (flags.count_timer0 = 0; lcd_time ++; enc_interval ++; I_reg ++; lcd_track ++; if (enc_speed! = 100) // որոշել կոդավորիչը ռոտացիայի արագություն: (enc_speed ++;) if (enc_block > = 1) (enc_block ++; if (enc_block> = 500) (enc_block = 0;)) if (BitIsSet (PORTB, RELAY)) (bat_count ++;) else (bat_count = 0; bat_off = 0; bat_save ++;) stok_reg ++; if (flags.start_charging && count! = 255) (count ++;)) #endif #if 1 / * Տվյալների ստացում կոդավորիչից * / if (enc_interval> = 5) (enc_interval = 0; OCR2 = encoder (); // կարդալ արժեքի կոդավորիչը: #եթե 0 // ժամանակավորապես փորձնական նիշերի բուֆերի համար; utoa (OCR2, bu ffer, 10); եթե (OCR2> = 100) (LCD_dataXY (բուֆեր, 0,1); LCD_տվյալներ (բուֆեր); LCD_տվյալներ (բուֆեր);) այլ դեպքում, եթե (OCR2> = 10 && OCR2<=99) { LCD_dataXY("0",0,1); LCD_data(buffer); LCD_data(buffer); } else { LCD_dataXY("0",0,1); LCD_data("0"); LCD_data(buffer); } #endif if (OCR2==0)//отключаем все. { charg_off(); } else//начали заряд { if (flags.ocr1a_block==0) { flags.ocr1a_block=1; OCR1A=255;//подняли питание импульсника до 17 вольт. } SetBit(TCCR2,COM21); SetBit(PORTB,RELAY); } } #endif #if 1 /*уменьшение тока заряда при достижении 14.4вольта*/ if (u_bat==246 && OCR2>0) (reg_I (3000); // 3 վայրկյանը մեկ անգամ) այլ դեպքում, եթե (u_bat == 255 && OCR2> 0) (reg_I (100); // 100 ms-ն մեկ անգամ), եթե (u_bat> 246 && OCR2> 0) ) (reg_I (500); // 500 ms-ը մեկ անգամ) #endif #եթե 1 / * Անջատեք լիցքը, երբ լիցքավորման հոսանքը հասնում է 0.1A * / if (off_charge == 1 && enc_block == 0) (եթե (i_bat<=5)//5*0.02=0.1 А ток в батарее. { charg_off(); flags.lcd_clr_txt1=1; LCD_string_of_flashXY(text_13,0,1);//"БАТАРЕЯ ЗАРЯЖЕНА" } } //отключение реле если при заряде бат откл. электричество. if (OCR2>0 && i_bat> 4) // 4 * 0.02 = 0.08A (flags.start_charging = 1;) if (flags.start_charging == 1 && i_bat<2 && count==255)//2*0.02=0.04 А ток в батарее. { ClearBit(PORTB,RELAY); } #endif #if 1 /*Бегущий индикатор на дисплее*/ if (OCR2>0) (եթե (flags.lcd_clr_txt1 == 1) (flags.lcd_clr_txt1 = 0; LCD_string_of_flashXY (տեքստ_8,0,1);), եթե (lcd_track> = 200) (lcd_track = 0 (ccount ++l;c) անջատիչ դեպք 0. LCD_data_of_flashXY (text_15,8,1); ընդմիջում; դեպք 1. LCD_data_of_flashXY (text_16,8,1); ընդմիջում; դեպք 2. LCD_data_of_flashXY (text_17,8,1); ընդմիջում; դեպք 3: LCD_data_of_flashXY (text_16,8,1); ,1); ընդմիջում; դեպք 4. LCD_data_of_flashXY (text_19,8,1); ընդմիջում; դեպք 5. LCD_data_of_flashXY (տեքստ_20,8,1); ընդմիջում; դեպք 6: LCD_data_of_flashXY (տեքստ_21,8,1); ընդմիջում; դեպք 7 : LCD_data_of_flashXY (text_22,8,1); ընդմիջում; դեպք 8. #if 1 if (off_charge == 1) (lcd_count = 5; break;) if (u_bat<232)// 13.57V/0.0585=230 на АЦП. { lcd_count=255; LCD_string_of_flashXY(text_12,8,1); } else if (u_bat<=234) { lcd_count=0; } else if (u_bat<=236) { lcd_count=1; } else if (u_bat<=238) { lcd_count=2; } else if (u_bat<=240) { lcd_count=3; } else if (u_bat<=242) { lcd_count=4; } else if (u_bat<=244) { lcd_count=5; } else { lcd_count=5; } break; #endif default:lcd_count=5; break; } } } else { lcd_count=255; if (flags.lcd_clr_txt1==0) { flags.lcd_clr_txt1=1; LCD_string_of_flashXY(text_8,0,1); } } #endif #if 1 /*Аварийный таймер отключения*/ if (bat_count>= 60000 && eeprom_read_byte (& timer_time)) // msec 60000 (bat_count = 0; bat_off ++; #if 1 // LCD_string_of_flashXY-ի վրիպազերծման համար (տեքստ_37,0,1); char buffer; utoa (bat_off); եթե (bat_off > = 100) (LCD_dataXY (բուֆեր, 2,1); LCD_տվյալներ (բուֆեր); LCD_տվյալներ (բուֆեր); LCD_string_of_flashXY (տեքստ_38,5,1);) այլ դեպքում, եթե (bat_off> = 10 && bat_off<=99) { LCD_dataXY(buffer,2,1); LCD_data(buffer); LCD_string_of_flashXY(text_38,4,1); } else { LCD_dataXY(buffer,2,1); LCD_data(" "); LCD_string_of_flashXY(text_38,4,1); LCD_dataXY(" ",7,1); } #endif } if (u_bat>U_bat_tim && off_charge == 0) // վերակայել լարման տագնապի ժամանակաչափը (bat_off = 0; U_bat_tim = u_bat;), եթե (i_bat = eeprom_read_word (& tim_dlitl)) // 180 րոպե լռելյայն (charg_off (); LCD_string_of_flashXY (text_14,0,1); bat_off = 0; flags.lcd_clr_txt1 = 1;) #endif #եթե 1 / * ելքային լարման կարգավորումը էլեկտրամատակարարման * / եթե (stok_reg> = 100) (stok_reg = 0; uint8_t u_stok = u_stokk (); եթե (u_stok> 62) // 0.0195 * 51 * 2 = 2 վոլտ լվացարանին: (եթե (OCR1A! = 0) (OCR1A--;)) ուրիշ եթե (u_stok<60) { if (OCR1A!=255) { OCR1A++; } } #if 0//временно для теста char buff; utoa(u_stok, buff, 10); if (u_stok>= 100) (LCD_dataXY (buff, 3,1); LCD_data (buff); LCD_data (buff);) այլ դեպքում, եթե (u_stok> = 10 && u_stok<=99) { LCD_dataXY("0",3,1); LCD_data(buff); LCD_data(buff); } else { LCD_dataXY("0",3,1); LCD_data("0"); LCD_data(buff); } #endif } #endif #if 1 /*Режим хранения батареи*/ if (bat_save>= 60000 && eeprom_read_byte (& save_on)! = 0) (bat_save = 0; եթե (u_bat<=eeprom_read_byte(&u_start))//12.5V / 0.0585=213,6 на АЦП { enc_data=eeprom_read_byte(&i_pusk); } } #endif #if 1 /*Режим отключения питания*/ if (enc_data && eeprom_read_byte(&power_off) && energy_flag==0) { energy_flag=1; eeprom_update_byte(&energy_off,1); } #endif } } #if 1 //тексты на дисплей const uint8_t PROGMEM text_1="Зарядное"; const uint8_t PROGMEM text_2="устройcтво"; const uint8_t PROGMEM text_3="SIRIUS 5А "; const uint8_t PROGMEM text_4="Для АКБ 12В"; const uint8_t PROGMEM text_5="Подключи батарею"; const uint8_t PROGMEM text_6="УЧТИ полярность."; const uint8_t PROGMEM text_7="U="; const uint8_t PROGMEM text_8=" "; const uint8_t PROGMEM text_9=" I="; const uint8_t PROGMEM text_10="В "; const uint8_t PROGMEM text_11="А "; const uint8_t PROGMEM text_12=" "; const uint8_t PROGMEM text_13="БАТАРЕЯ ЗАРЯЖЕНА"; const uint8_t PROGMEM text_14="ЗАРЯД ОТКЛЮЧЕН! "; // const uint8_t PROGMEM text_15={0xFF,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0}; // 1 const uint8_t PROGMEM text_16={0xFF,0xFF,0x20,0x20,0x20,0x20,0x20,0x20,0}; // 12 const uint8_t PROGMEM text_17={0xFF,0xFF,0xFF,0x20,0x20,0x20,0x20,0x20,0}; // 123 const uint8_t PROGMEM text_18={0xFF,0xFF,0xFF,0xFF,0x20,0x20,0x20,0x20,0}; // 1234 const uint8_t PROGMEM text_19={0xFF,0xFF,0xFF,0xFF,0xFF,0x20,0x20,0x20,0}; // 12345 const uint8_t PROGMEM text_20={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x20,0x20,0}; // 123456 const uint8_t PROGMEM text_21={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x20,0}; // 1234567 const uint8_t PROGMEM text_22={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0}; // 12345678 const uint8_t PROGMEM text_23 ="Режим сохр. "; const uint8_t PROGMEM text_24 ="ВКЛ "; const uint8_t PROGMEM text_25 ="ВЫКЛ"; const uint8_t PROGMEM text_26 ="U запуска <"; const uint8_t PROGMEM text_27 =" СЕРВИСНОЕ МЕНЮ "; const uint8_t PROGMEM text_28 =" ВЫХОД ИЗ МЕНЮ "; const uint8_t PROGMEM text_29 ="I запуска "; const uint8_t PROGMEM text_30 ="Режим отключения"; const uint8_t PROGMEM text_31 ="питания "; const uint8_t PROGMEM text_32 ="Аварийный Таймер"; const uint8_t PROGMEM text_33 =" ВКЛ "; const uint8_t PROGMEM text_34 =" ВЫКЛ "; const uint8_t PROGMEM text_35 ="задержка "; const uint8_t PROGMEM text_36 =" мин"; const uint8_t PROGMEM text_37 ="T="; const uint8_t PROGMEM text_38 ="min"; #endif

Հարցեր ենք տալիս այստեղ [էլփոստը պաշտպանված է] com
Եթե ​​ինչ-որ մեկին անհրաժեշտ է լուսարձակող միկրոկոնտրոլեր, ապա այն կարելի է պատվիրել այստեղից... Մենք բնականաբար հավաքում ենք մնացած ամեն ինչ և ինքներս անում:

Այժմ կան տեսանյութեր և լուսանկարներ: Ահա թե ինչպիսի տեսք ուներ հենց առաջին նախատիպը.

Ահա թե ինչպիսի տեսք ուներ առաջին տախտակը.

Հետագայում ավելի քաղաքակիրթ վճարում կատարվեց։

Հետո հայտնագործվեց մարմինը։

Հետո այս ամենը հավաքվեց։

Ի վերջո, ահա թե ինչ եղավ.

Դուք կարող եք ներբեռնել լիցքավորիչի դիագրամը:
Դուք կարող եք պատվիրել ֆլեշ միկրոկոնտրոլեր:
Լրացուցիչ տեղեկություններ., Տպագիր տպատախտակ:
Հարցեր և ցանկություններ [էլփոստը պաշտպանված է]

Այս սարքը նախատեսված է Li-ion և Ni-Mh մարտկոցների հզորությունը չափելու, ինչպես նաև լիցքավորման սկզբնական հոսանքի ընտրությամբ Li-ion մարտկոցները լիցքավորելու համար։

Վերահսկողություն

Մենք սարքը միացնում ենք կայունացված սնուցման 5 Վ-ին և 1Ա հոսանքին (օրինակ՝ բջջային հեռախոսից): Ցուցանիշը 2 վայրկյանում ցույց է տալիս «xxxxmA / վ» հզորության նախորդ չափման արդյունքը, իսկ երկրորդ տողում ռեգիստրի OCR1A «S.xxx» արժեքը: Մենք տեղադրում ենք մարտկոցը: Եթե ​​Ձեզ անհրաժեշտ է լիցքավորել մարտկոցը, ապա կարճ սեղմեք CHARGE կոճակը, եթե անհրաժեշտ է չափել հզորությունը, ապա կարճ սեղմեք TEST կոճակը: Եթե ​​Ձեզ անհրաժեշտ է փոխել լիցքավորման հոսանքը (OCR1A ռեգիստրի արժեքը), ապա երկար ժամանակ (2 վայրկյան) սեղմեք CHARGE կոճակը: Մենք մտնում ենք ռեգիստրի ճշգրտման պատուհան: Բաց թողեք կոճակը: Հակիրճ սեղմելով CHARGE կոճակը, մենք փոխում ենք ռեգիստրի արժեքները (50-75-100-125-150-175-200-225) շրջանագծով, առաջին տողը ցույց է տալիս մարտկոցի լիցքավորման դատարկ հոսանքը ընտրված արժեքով: (պայմանով, որ դուք ունեք 0 ռեզիստոր շղթայում) , 22 Օմ): Համառոտ սեղմեք TEST կոճակը, OCR1A ռեգիստրի արժեքը պահվում է ոչ անկայուն հիշողության մեջ:
Եթե ​​սարքի հետ տարբեր մանիպուլյացիաներ եք արել, և պետք է զրոյացնել ժամացույցը, չափված հզորությունը, ապա երկար ժամանակ սեղմեք TEST կոճակը (OCR1A ռեգիստրի արժեքը զրոյացված չէ): Լիցքավորումն ավարտվելուն պես էկրանի հետին լույսն անջատվում է, հետևի լույսը միացնելու համար սեղմեք TEST կամ CHARGE կոճակը:

Սարքի տրամաբանությունը հետևյալն է.

Երբ սնուցվում է, ցուցիչը ցույց է տալիս մարտկոցի հզորության նախորդ չափման արդյունքը և ոչ անկայուն հիշողության մեջ պահվող OCR1A ռեգիստրի արժեքը: 2 վայրկյան հետո սարքն անցնում է տերմինալների լարման միջոցով մարտկոցի տեսակը որոշելու ռեժիմին:

Եթե ​​լարումը 2 Վ-ից ավելի է, ապա սա Li-ion մարտկոց է, և լրիվ լիցքաթափման լարումը կլինի 2,9 Վ, հակառակ դեպքում դա Ni-MH մարտկոց է, և լրիվ լիցքաթափման լարումը կլինի 1 Վ: Միայն մարտկոցը միացնելուց հետո են հասանելի կառավարման կոճակները: Այնուհետև սարքը սպասում է, որ սեղմվեն Test կամ Charge կոճակները: Ցուցադրումը ցույց է տալիս «_STOP»: Երբ կարճ սեղմում եք Test կոճակը, բեռը միացված է MOSFET-ի միջոցով:

Լիցքաթափման հոսանքի մեծությունը որոշվում է 5,1 Օհմ դիմադրության լարման միջոցով և յուրաքանչյուր րոպե այն ամփոփվում է նախորդ արժեքի հետ: Ժամացույցը գործարկելու համար սարքը օգտագործում է 32768 Հց քվարց:

Ցուցադրումը ցույց է տալիս մարտկոցի հզորության «xxxxmA/s» և «A.xxx» լիցքաթափման ընթացիկ արժեքը, ինչպես նաև կոճակը սեղմելու պահից «xx: xx: xx» ժամանակը: Ցուցադրվում է նաև անիմացիոն ցածր մարտկոցի պատկերակ: Ni-MH մարտկոցի փորձարկման վերջում հայտնվում է «_STOP» մակագրությունը, չափման արդյունքը ցուցադրվում է «xxxxmA / s» էկրանին և պահվում:

Եթե ​​մարտկոցը Li-ion է, ապա չափման արդյունքը ցուցադրվում է նաև «xxxxmA/s» էկրանին և հիշվում է, բայց լիցքավորման ռեժիմն անմիջապես միացվում է: Ցուցադրումը ցույց է տալիս OCR1A «S.xxx» ռեգիստրի պարունակությունը: Ցուցադրվում է նաև մարտկոցի լիցքավորման անիմացիոն պատկերակը:

Լիցքավորման հոսանքը կառավարվում է PWM-ով և սահմանափակվում է 0,22 Օհմ դիմադրությամբ: Սարքավորումների մեջ լիցքավորման հոսանքը կարող է կրճատվել 0,22 Օմ-ից մինչև 0,5-1 Օմ դիմադրությունը բարձրացնելով: Լիցքավորման սկզբում հոսանքն աստիճանաբար աճում է մինչև OCR1A ռեգիստրի արժեքը կամ մինչև մարտկոցի տերմինալների լարումը հասնի 4,22 Վ-ի (եթե մարտկոցը լիցքավորվել է):

Լիցքավորման հոսանքի արժեքը կախված է OCR1A ռեգիստրի արժեքից. որքան մեծ է արժեքը, այնքան մեծ է լիցքավորման հոսանքը: Երբ մարտկոցի տերմինալների լարումը 4,22 Վ է, OCR1A ռեգիստրի արժեքը նվազում է: Լիցքավորման գործընթացը շարունակվում է այնքան ժամանակ, մինչև OCR1A ռեգիստրի արժեքը հավասարվի 33-ի, որը համապատասխանում է մոտ 40 մԱ հոսանքի: Սա ավարտում է գանձումը: Ցուցադրման հետևի լույսն անջատվում է:

Անհատականացում

1. Միացրեք էլեկտրամատակարարումը:
2. Միացրեք մարտկոցը:
3. Վոլտմետրը միացնում ենք մարտկոցին։
4. Ժամանակավոր կոճակներով + և - (PB4 և PB5) մենք հասնում ենք վոլտմետրերի ցուցումների համընկնմանը էկրանի և հղման վոլտմետրի վրա:
5. Սեղմեք TEST կոճակը երկար ժամանակ (2 վրկ), տեղի է ունենում անգիր:
6. Մենք հեռացնում ենք մարտկոցը:
7. Մենք վոլտմետրը միացնում ենք 5,1 Օմ դիմադրությանը (ըստ գծապատկերի՝ 09N03LA տրանզիստորի մոտ):
8. Կարգավորվող սնուցման բլոկը միացրեք մարտկոցի տերմինալներին, դրեք այն 4 Վ սնուցման միավորի վրա:
9. Համառոտ սեղմեք TEST կոճակը:
10. Չափում ենք լարումը 5,1 Օմ դիմադրության վրա՝ U:
11. Հաշվեք լիցքաթափման հոսանքը I = U / 5.1
12. Օգտագործելով ժամանակավոր կոճակները + և - (PB4 և PB5) «A.xxx» ցուցիչի վրա դրեք հաշվարկված լիցքաթափման հոսանքը I:
13. Սեղմեք TEST կոճակը երկար ժամանակ (2 վրկ), տեղի է ունենում անգիր:

Սարքը սնուցվում է կայունացված աղբյուրից՝ 5 վոլտ լարմամբ և 1Ա հոսանքով։ 32768 Հց հաճախականությամբ քվարցը նախատեսված է ճշգրիտ ժամանակի համար: ATmega8-ը ժամացույց է անում ներքին 8 ՄՀց տատանիչով, և EEPROM-ի պաշտպանությունը պետք է սահմանվի համապատասխան կազմաձևման բիթերով: Վերահսկիչ ծրագիրը գրելիս օգտագործվել են այս կայքի ուսումնական հոդվածները:

Լարման և հոսանքի գործակիցների ընթացիկ արժեքները (Ukof. Ikof) կարելի է տեսնել, եթե երրորդ տողում միացնեք 16x4 էկրան (16x4 նախընտրելի է վրիպազերծման համար): Կամ Ponyprog-ում, եթե բացեք EEPROM որոնվածի ֆայլը (կարդացեք EEPROM կարգավորիչից):
1 բայթ - OCR1A, 2 բայթ - I_kof, 3 բայթ - U_kof, 4 և 5 բայթ նախկին հզորության չափման արդյունք են:

Սարքի տեսանյութ.

Երբեմն անցնում ես կայանված մեքենաների կողքով, և աչքի պոչով նկատում ես, որ ինչ-որ մեկը, դատելով լամպերի աղոտ փայլից, երկար ժամանակ մոռացել է անջատել լույսը։ Ինչ-որ մեկն ինքը ստացել է այդպես: Լավ է, երբ կա լույսը չանջատելու կանոնավոր ցուցիչ, իսկ երբ նման բան չկա, կօգնի. անմոռանալի բանը կարող է ճռռալ, երբ լույսը անջատված չէ և գիտի, թե ինչպես խոթել հետընթաց փոխանցումը:

Վառելիքի մակարդակի թվային ցուցիչի սխեման ունի կրկնելիության բարձր աստիճան, նույնիսկ եթե միկրոկառավարիչների փորձը աննշան է, ուստի հավաքման և թյունինգի գործընթացի բարդությունները հասկանալը խնդիրներ չի առաջացնում: Գրոմովի ծրագրավորողը ամենապարզ ծրագրավորողն է, որն անհրաժեշտ է avr միկրովերահսկիչի ծրագրավորման համար։ Գորոմովի ծրագրավորողը լավ հարմարեցված է ինչպես ներկառուցված, այնպես էլ ստանդարտ միացումային ծրագրավորման համար: Ստորև բերված է վառելիքի չափիչի կառավարման դիագրամ:

Հարթեցրեք և անջատեք LED-ները ցանկացած ռեժիմով (դուռը բաց է, իսկ լամպը միացված): Նաև ավտոմատ անջատում հինգ րոպեից հետո: Եվ նվազագույն սպասման ընթացիկ սպառումը:

Տարբերակ 1 - մինուս կոմուտացիա: (օգտագործելով N-ալիք տրանզիստորներ) 1) «մինուս անջատում», այսինքն՝ տարբերակ, որի դեպքում լամպի մեկ մատակարարման լարը միացված է մարտկոցի + 12 Վ-ին (սնուցման աղբյուր), իսկ երկրորդ լարը փոխում է հոսանքը լամպի միջով։ , դրանով իսկ միացնելով այն։ Այս տարբերակում մինուսը կտրամադրվի։ Նման սխեմաների համար անհրաժեշտ է օգտագործել N-ալիքային դաշտային ազդեցության տրանզիստորներ որպես ելքային անջատիչներ:

Մոդեմն ինքնին փոքր է, էժան, աշխատում է առանց խնդիրների, հստակ և արագ, և ընդհանրապես բողոքներ չկան դրա վերաբերյալ։ Ինձ համար միակ բացասական կողմը կոճակով միացնելու-անջատելու անհրաժեշտությունն էր։ Եթե ​​այն չանջատեք, մոդեմը սնուցվում էր ներկառուցված մարտկոցից, որն ի վերջո նստեց, և մոդեմը նորից պետք է միացվեր:

Գործողության սկզբունքը պարզ է՝ կոճակը պտտելով՝ ձայնը կարգավորվում է, սեղմելիս՝ անջատվում և միացվում է ձայնը։ Պետք է գրել Windows-ում կամ Android-ում

Սկզբում Lifan Smily-ում (և ոչ միայն) հետևի մաքրիչի ռեժիմը միակն է, և այն կոչվում է «միշտ ճոճվել»: Նման ռեժիմը հատկապես բացասաբար է ընկալվում անձրևային սեզոնի սկզբում, երբ կաթիլները կուտակվում են հետևի պատուհանի վրա, բայց անբավարար քանակությամբ մաքրիչի մեկ անցման համար: Այսպիսով, դուք կամ պետք է լսեք ապակու վրա կաուչուկի ճռռոցը, կամ պատկերեք ռոբոտ և պարբերաբար միացնեք/անջատեք մաքրիչը:

Ես մի փոքր փոփոխեցի ժամանակի հետաձգման ռելեի սխեման Ford մեքենայի ներքին լուսավորությունը միացնելու համար (շղթան մշակվել է շատ հատուկ մեքենայի համար, որպես ստանդարտ Ford 85GG-13C718-AA ռելեի փոխարինում, բայց հաջողությամբ տեղադրվել է ներքին «դասականները»):

Սա առաջին անգամը չէ, որ նման արհեստներ են սայթաքում: Բայց ինչ-ինչ պատճառներով մարդիկ կառչում են որոնվածից: Չնայած մեծ մասամբ դրանք հիմնված են elmchan նախագծի վրա՝ «Simple SD Audio Player with an 8-pin IC»: Աղբյուրի ֆայլը չի ​​բացվում՝ պատճառաբանելով, որ նախագիծը պետք է ուղղել, որ իմ որակն ավելի լավն է... և այլն։ Մի խոսքով, նրանք վերցրեցին բաց կոդով նախագիծ, հավաքեցին այն և անցան որպես իրենց:

Այսպիսով. Attiny 13 միկրոկառավարիչը այս սարքի սիրտն է, այսպես ասած: Երկար տանջվեցի իրա ֆիրմվեյրով, ոչ մի կերպ չկարողացա ֆլեյշ անել, ոչ LPT-ով 5 լար, ոչ էլ Գրոմովի պրոգրոմատորով։ Համակարգիչը պարզապես չի տեսնում կարգավորիչը և վերջ։

Ճանապարհային երթեւեկության կանոնների նորարարությունների հետ կապված՝ մարդիկ սկսեցին մտածել ցերեկային լույսերի ներդրման մասին։ Հնարավոր ուղիներից մեկը հզորության մի մասի համար բարձր լույսի լամպերը միացնելն է, ահա թե ինչի մասին է այս հոդվածը։

Այս սարքը թույլ կտա ավտոմատ կերպով միացնել ցածր լույսը, երբ դուք սկսում եք վարել, և կարգավորում է լամպերի լարումը, ցածր լույսը, կախված այն արագությունից, որով դուք վարում եք: Այն նաև կդարձնի ավելի անվտանգ մեքենա վարելը և կերկարացնի լամպերի կյանքը: