Мазмұны:
- 1 -қадам: ерекшеліктері мен бағасы
- 2 -қадам: Схема және жұмыс теориясы
- 3 -қадам: ПХД және электроника
- 4 -қадам: Корпус және құрастыру
- 5 -қадам: Arduino коды
- 6 -қадам: Java коды
- 7 -қадам: сәттілік
Бейне: Сандық батареямен жұмыс істейтін қуат көзі: 7 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Сіз кез келген уақытта, тіпті жақын жерде қабырғадағы розетка болмаса да, қолдануға болатын қуат көзін алғыңыз келді ме? Егер ол өте дәл, цифрлық және ДК арқылы басқарылатын болса, жақсы болмас па еді?
Бұл нұсқаулықта мен сізге дәл осылай жасау керектігін көрсетемін: arduino үйлесімді және компьютер арқылы USB арқылы басқарылатын цифрлық батареямен жұмыс істейтін қуат көзі.
Біраз уақыт бұрын мен ескі ATX PSU қуат көзін құрдым, және ол жақсы жұмыс істеп тұрғанда, мен ойынымды цифрлық қуат көзімен күшейткім келді. Жоғарыда айтылғандай, ол батареялармен жұмыс істейді (дәлірек айтсақ, 2 литий ұяшығы), және ол максимум 20 В 1 А кезінде жеткізе алады; бұл менің нақты жобалауды қажет ететін көптеген жобалар үшін жеткілікті.
Мен бүкіл дизайн процесін көрсетемін, және барлық жоба файлдарын менің GitHub бетімде табуға болады:
Бастайық!
1 -қадам: ерекшеліктері мен бағасы
Мүмкіндіктер
- Тұрақты кернеу мен тұрақты ток режимдері
- Қуаттың таралуын азайту үшін төмен шуды реттейтін реттегішті қолданады.
- Жобаны қол жетімді ету үшін қолмен сатылатын компоненттерді қолдану
- ATMEGA328P арқылы жұмыс істейді, Arduino IDE бағдарламаланған
- Java қосымшасы арқылы компьютермен шағын USB арқылы байланыс
- 18650 қорғалған 2 литий -иондық жасушалармен жұмыс істейді
- BNC адаптерлерімен үйлесімділік үшін 18 мм қашықтықтағы банан штепсельдері
Ерекшеліктер
- 0 - 1А, қадамдары 1 мА (10 биттік DAC)
- 0 - 20В, 20 мВ қадамдар (10 биттік DAC) (шынайы 0В жұмысы)
- Кернеуді өлшеу: 20 мВ ажыратымдылық (10 биттік ADC)
-
Ағымдағы өлшеу:
- <40mA: 10uA ажыратымдылығы (ina219)
- <80mA: 20uA ажыратымдылығы (ina219)
- <160mA: 40uA ажыратымдылығы (ina219)
- <320mA: 80uA ажыратымдылығы (ina219)
- > 320мА: 1мА ажыратымдылық (10 биттік ADC)
Құны
Толық қуатпен қамтамасыз ету мен үшін бір реттік компоненттері бар шамамен 135 доллар тұрады. Батареялар ең қымбат бөлігі (2 ұяшық үшін 30 доллар), өйткені олар 18650 литий ұяшықтарынан қорғалған, егер батареяны пайдалану қажет болмаса, оның құнын айтарлықтай төмендетуге болады. Батареяларды және зарядтау тізбегін жібермей, баға шамамен 100 долларға дейін төмендейді. Бұл қымбат болып көрінгенімен, өнімділігі мен мүмкіндіктері әлдеқайда төмен болатын қуат көздері көбінесе осыдан да қымбат тұрады.
Егер сіз ebay немесе aliexpress -тен компоненттерге тапсырыс беруге қарсы болмасаңыз, онда батареяның бағасы 100 долларға дейін, ал онсыз 70 долларға дейін төмендейді. Бөлшектердің келуіне көп уақыт кетеді, бірақ бұл өміршең нұсқа.
2 -қадам: Схема және жұмыс теориясы
Тізбектің жұмысын түсіну үшін бізге схеманы қарау керек. Мен оны функционалды блоктарға бөлдім, сондықтан түсіну оңайырақ; Мен сонымен қатар операцияны біртіндеп түсіндіремін, бұл бөлім өте терең және электроникадан жақсы білімді қажет етеді. Егер сіз тізбекті қалай салу керектігін білгіңіз келсе, келесі қадамға өтуге болады.
Негізгі блок
Операция LT3080 чипінің айналасына негізделген: бұл бақылау сигналына негізделген кернеуді төмендететін сызықтық кернеу реттегіші. Бұл басқару сигналын микроконтроллер жасайды; бұл қалай жүзеге асады, кейінірек егжей -тегжейлі түсіндіріледі.
Кернеуді реттеу
LT3080 айналасындағы схема сәйкес басқару сигналдарын шығарады. Алдымен біз кернеудің қалай орнатылғанын қарастырамыз. Микроконтроллерден кернеудің параметрі - төмен өтпелі сүзгі (C9 & R26) арқылы сүзілетін PWM сигналы (PWM_Vset). Бұл аналогты кернеуді шығарады - 0 мен 5 В аралығында - кернеу кернеуіне пропорционалды. Біздің шығу диапазоны 0 - 20 В болғандықтан, біз бұл сигналды 4 есе күшейтуге мәжбүр боламыз. Бұл U3C инверттелмейтін опамп конфигурациясымен жүзеге асады. Орнатылған түйреуішке кірісті R23 // R24 // R25 және R34 анықтайды. Бұл резисторлар қателерді азайту үшін 0,1% төзімді. R39 және R36 мұнда маңызды емес, өйткені олар кері байланыс циклінің бөлігі болып табылады.
Ағымдағы параметр
Бұл түйреуішті екінші параметр үшін де қолдануға болады: ағымдағы режим. Біз ағымдағы тартылуды өлшегіміз келеді және керекті токтан асып кеткенде шығымды өшіргіміз келеді. Сондықтан біз қайтадан микроконтроллер шығаратын PWM сигналынан (PWM_Iset) бастаймыз, ол енді төмен өткізгішті сүзгіленіп, 0 - 5 В диапазонынан 0 - 2 В диапазонына өту үшін әлсіреді. Бұл кернеу UampD U3D компараторының конфигурациясы бойынша қазіргі кездегі резистордағы кернеудің төмендеуімен салыстырылады (ADC_Iout, төменде қараңыз). Егер ток тым жоғары болса, онда ол светодиодты қосады, сонымен қатар LT3080 орнатылған желісін жерге (Q2 арқылы) шығарады, осылайша шығыс өшіріледі. ADC_Iout сигналын және токты өлшеу келесідей орындалады. Шығу тогы R7 - R16 резисторлары арқылы өтеді. Бұл жалпы 1 Ом; бірінші кезекте 1Р пайдаланбаудың себебі екі түрлі: 1 резистордың қуаттылығы жоғары болуы керек (ол кемінде 1 Вт таратылуы керек), ал параллель 10% резисторды қолдану арқылы біз жоғары дәлдікке ие боламыз. 1 % резисторы бар. Неліктен бұл жұмыс туралы жақсы бейнені мына жерден табуға болады: https://www.youtube.com/embed/1WAhTdWErrU&t=1s Егер ток осы резисторлар арқылы өтсе, ол кернеудің төмендеуін тудырады, біз өлшей аламыз, және ол LT3080 алдында орналастырылады, себебі кернеудің төмендеуі шығыс кернеуіне әсер етпеуі керек. Кернеудің төмендеуі дифференциалды күшейткішпен (U3B) өлшенеді. Бұл 2 кернеу диапазонына әкеледі - 2 В (бұл туралы кейінірек), демек токтың PWM сигналындағы кернеу бөлгіш. Буфер (U3A) R21, R32 және R33 резисторларына ағатын ток ағымдағы сезімтал резистордан өтпейтініне көз жеткізу үшін бар, бұл оның оқылуына әсер етеді. Сондай-ақ, бұл рельс-рельс опампасы болуы керек екенін ескеріңіз, себебі оң кірістегі кіріс кернеуі қоректену кернеуіне тең. Инвертивті емес күшейткіш тек бағытты өлшеуге арналған, бірақ дәл өлшеу үшін бізде бортта INA219 чипі бар. Бұл чип бізге өте аз токтарды өлшеуге мүмкіндік береді және I2C арқылы шешіледі.
Қосымша заттар
LT3080 шығысында бізде тағы да көптеген заттар бар. Ең алдымен, ағымдағы раковина (LM334) бар. Бұл LT3080 тұрақтандыру үшін тұрақты ток 677 uA (R41 резисторымен орнатылған) тартады. Ол жерге қосылмайды, кернеу VEE -ге қосылады. Бұл LT3080 0 В дейін жұмыс істеуі үшін қажет, жерге қосылған кезде ең төменгі кернеу шамамен 0,7 В болады. Бұл жеткілікті төмен болып көрінеді, бірақ бұл бізге қуат көзін толығымен өшіруге кедергі келтіретінін есте сақтаңыз. Зенерлік диод D3, егер ол 22 В -тан жоғары болса, шығыс кернеуін қысу үшін қолданылады, ал резисторлық бөлгіш шығыс кернеуінің диапазонын 0 - 20 В -тан 0 - 2 В -қа дейін төмендетеді (ADC_Vout). Өкінішке орай, бұл тізбектер LT3080 шығысында, яғни олардың тогы біз өлшегіміз келетін шығыс токына ықпал етеді. Бақытымызға орай, егер кернеу тұрақты болып қалса, бұл токтар тұрақты болады; сондықтан жүктемені бірінші рет ажыратқанда токты калибрлей аламыз.
Зарядтау сорғы
Біз жоғарыда айтқан теріс кернеуді шағын тізбек тудырады: зарядты сорғы. Оның жұмыс істеуі үшін мен мына сілтемені қолданамын: https://www.youtube.com/embed/1WAhTdWErrU&t=1s Ол микроконтроллердің 50% PWM (PWM) қоректенеді.
Boost түрлендіргіші
Енді біздің негізгі блоктың кіріс кернеуін қарастырайық: Vboost. Біз бұл 8 - 24В екенін көреміз, бірақ күте тұрыңыз, 2 литий жасушасы сериялы 8,4 В максимум береді? Шынында да, сондықтан біз кернеуді күшейту түрлендіргіш деп аталатын күшейтуіміз керек. Біз әрқашан кернеуді 24 В дейін арттыра аламыз, біз қандай шығыс алғымыз келеді; дегенмен, бұл LT3080 -де көп энергияны жоғалтады және заттар қызып кетеді! Осылайша, керісінше, кернеуді шығыс кернеуінен сәл жоғарылатамыз. Шамамен 2,5 В жоғары ток кернеуінің резисторының төмендеуі мен LT3080 ажырату кернеуін ескеру қажет. Кернеуді күшейткіш түрлендіргіштің шығыс сигналына резисторлар орнатады. Бұл кернеуді жылдам өзгерту үшін біз SPI арқылы басқарылатын MCP41010 сандық потенциометрін қолданамыз.
Батареяны зарядтау
Бұл бізді нақты кіріс кернеуіне әкеледі: батареялар! Біз қорғалатын ұяшықтарды қолданатындықтан, оларды жай ғана серияға қою керек және біз аяқтадық! Жасушалардың шамадан тыс ағып кетуін немесе шамадан тыс ағып кетуін болдырмау үшін осында қорғалған жасушаларды қолдану маңызды. Тағы да, біз батарея кернеуін өлшеу үшін кернеу бөлгішті қолданамыз және оны қолдануға болатын диапазонға түсіреміз. Енді қызықты бөлімге келіңіз: зарядтау схемасы. Біз BQ2057WSN чипін осы мақсатта қолданамыз: TIP32CG ұштастыра отырып, ол негізінен желілік қуат көзін құрайды. Бұл чип ұяшықтарды CV CC траекториясы бойынша зарядтайды. Менің батареяларымда температура датчигі болмағандықтан, бұл кіріс батарея кернеуінің жартысына тең болуы керек. Осымен қуат көзінің кернеуді реттеу бөлігі аяқталады.
5В реттегіш
Ардуиноның 5 В кернеуі осы қарапайым кернеу реттегішінің көмегімен жасалған. Бұл 5 В ең дәл шығыс емес, бірақ бұл төменде шешіледі.
2.048 В кернеуге сілтеме
Бұл шағын чип 2.048 В кернеудің өте дәл анықтамасын береді. Бұл ADC_Vout, ADC_Iout, ADC_Vbatt аналогты сигналдарына сілтеме ретінде қолданылады. Бұл сигналдарды 2 В дейін төмендету үшін бізге кернеу бөлгіштері қажет болды. Микроконтроллер Бұл жобаның миы ATMEGA328P, бұл Arduino Uno -да қолданылатын чип. Біз бақылау сигналдарының көпшілігінен өттік, бірақ соған қарамастан қызықты толықтырулар бар. Айналмалы кодерлер arduino -ның сыртқы үзіліс 2 түйреуішіне қосылады: PD2 және PD3. Бұл бағдарламалық қамтамасыз етуді сенімді енгізу үшін қажет. Төмендегі қосқыштар ішкі тартқыш резисторды қолданады. Содан кейін потенциометрдің (Pot) чип таңдау сызығында кернеуді бөлетін біртүрлі қондырғы бар. Шығудағы кернеуді бөлгіш, бұл не үшін жақсы; деуіңіз мүмкін. Жоғарыда айтылғандай, 5 В кернеуі дәл емес. Мұны дәл өлшеп, сәйкесінше PWM сигналының жұмыс циклін реттеу жақсы болар еді. Бірақ менде бос кірістер болмағандықтан, маған екі еселенген істікшені тартуға тура келді. Қуат көзі жүктелген кезде, бұл түйреуіш алдымен кіріс ретінде орнатылады: ол жеткізу жолын өлшейді және өзін калибрлейді. Содан кейін ол шығыс ретінде орнатылады және ол чипті таңдау жолын басқара алады.
Дисплей драйвері
Дисплей үшін мен жалпыға қолжетімді және арзан - hitachi LCD экранын алғым келді. Олар 6 түйреуішпен басқарылады, бірақ менде түйреуіш қалмағандықтан, маған басқа шешім қажет болды. Құтқару үшін ауысымдық тіркеу! 74HC595 маған дисплейді басқару үшін SPI желісін пайдалануға мүмкіндік береді, осылайша тек 1 қосымша чип таңдау сызығы қажет.
FTDI
Бұл қуат көзінің соңғы бөлігі - қатыгез, сыртқы әлеммен байланыс. Ол үшін бізге сериялық сигналдарды USB сигналдарына түрлендіру қажет. Мұны FTDI чипі жасайды, ол оңай қосылу үшін микро USB портына қосылған.
Және мұның бәрі бар!
3 -қадам: ПХД және электроника
Енді біз схеманың қалай жұмыс істейтінін түсініп, оны құруға кірісе аламыз! Сіз өзіңіздің сүйікті өндірушіңізден ПХД -ге онлайн тапсырыс бере аласыз (шахтаның бағасы шамамен 10 доллар), гербер файлдарын менің GitHub -те табуға болады. ПХД құрастыру, негізінен, жібек экраны мен материалдардың есебіне сәйкес компоненттерді дәнекерлеу болып табылады.
Бірінші қадам - SMD компоненттерін дәнекерлеу. Олардың көпшілігін FTDI чипі мен микро USB қосқышын қоспағанда, қолмен жасау оңай. Сондықтан сіз осы 2 компонентті өздігінен дәнекерлеуге жол бермеуге болады және оның орнына FTDI ажырату тақтасын қолданыңыз. Мен оны дәнекерлеуге болатын тақырып түйреуіштерін ұсындым.
SMD жұмысы аяқталғаннан кейін сіз тесіктердің барлық компоненттеріне ауыса аласыз. Бұлар өте қарапайым. Чиптер үшін сіз розеткаларды тақтаға тікелей дәнекерлеудің орнына, Arduino жүктеушісі бар ATMEGA328P қолданған жөн, әйтпесе оны ICSP тақырыбымен жүктеу қажет болады (мұнда көрсетілген).
Кішкене назар аударуды қажет ететін жалғыз бөлшек - бұл экран, себебі оны бұрышта орнату керек. Пластикалық бөлік экранның төменгі жағына қаратып, оған бірнеше еркек бұрыштық басын дәнекерлеңіз. Бұл экранды компьютерде жақсы орналастыруға мүмкіндік береді. Осыдан кейін оны кез келген басқа тесік компоненті сияқты орнында дәнекерлеуге болады.
Алдыңғы тақтайдағы банан терминалдарына қосылатын 2 сымды қосу ғана қалады.
4 -қадам: Корпус және құрастыру
Компьютердің көмегімен біз корпусқа көшеміз. Мен осы гамманда корпустың айналасында ПХД арнайы әзірледім, сондықтан басқа корпусты пайдалану ұсынылмайды. Дегенмен, сіз әрқашан бірдей өлшемдегі корпусты 3D басып шығара аласыз.
Бірінші қадам-соңғы панельді дайындау. Біз бұрандалар, қосқыштар және т.б. үшін бірнеше тесіктерді бұрғылауымыз керек болады. Мен мұны қолмен жасадым, бірақ егер сізде CNC -ге қол жетімді болса, бұл дәлірек нұсқа болар еді. Мен тесіктерді схемаға сәйкес жасадым және бұрандалы тесіктерді таптадым.
Жібек жастықшаларды қазір қосып, оларды супер желімнің кішкене тамшысымен ұстаған дұрыс. Олар LT3080 мен TIP32 -ді артқы тақтадан оқшаулайды, сонымен қатар жылу өткізуге мүмкіндік береді. Оларды ұмытпаңыз! Чиптерді артқы панельге бұрап жатқанда, оқшаулауды қамтамасыз ету үшін слюда жуғышты қолданыңыз!
Енді біз алдыңғы тақтаға назар аудара аламыз, ол орнында сырғып кетеді. Енді банан ұялары мен айналмалы кодерлердің тұтқаларын қосуға болады.
Екі панельді орнында орнатуды корпусқа салып, батареяларды қосып, бәрін жабуға болады. Қорғалған батареяларды пайдаланғаныңызға көз жеткізіңіз, сіз жасушалардың жарылуын қаламайсыз!
Бұл кезде аппараттық құрал жасалды, енді бағдарламалық жасақтаманың көмегімен өмірге әсер ету ғана қалды!
5 -қадам: Arduino коды
Бұл жобаның миы - ATMEGA328P, біз оны Arduino IDE -мен бағдарламалаймыз. Бұл бөлімде мен кодтың негізгі әрекетін өтемін, мәліметтерді код ішіндегі түсініктеме ретінде табуға болады.
Код негізінен келесі қадамдардан өтеді:
- Java сериялық деректерін оқыңыз
- Сауалнама түймелері
- Кернеуді өлшеу
- Токты өлшеу
- INA219 көмегімен токты өлшеңіз
- Java -ге сериялық деректерді жіберіңіз
- Түрлендіргішті конфигурациялаңыз
- Батарея зарядын алыңыз
- Экранды жаңарту
Айналмалы кодерлер мүмкіндігінше жауап беру үшін үзіліс қызмет көрсету тәртібімен өңделеді.
Енді кодты micro USB порты арқылы тақтаға жүктеуге болады (егер чипте жүктеуші болса). Тақта: Arduino pro немесе pro mini Бағдарламалаушы: AVR ISP / AVRISP MKII
Енді біз Arduino мен ДК арасындағы өзара әрекеттесуді қарастыра аламыз.
6 -қадам: Java коды
Деректерді тіркеу және компьютер арқылы қуат беруді басқару үшін мен java қосымшасын жасадым. Бұл бізге GUI арқылы тақтаны оңай басқаруға мүмкіндік береді. Arduino коды сияқты мен барлық егжей -тегжейлерге тоқталмаймын, бірақ шолу жасаймын.
Біз батырмалар, мәтіндік өрістер және т.б терезені құрудан бастаймыз; негізгі GUI материалдары.
Енді қызықты бөлігі келеді: мен USB порттарын қосу үшін jSerialComm кітапханасын қолдандым. Порт таңдалғаннан кейін, java кез келген кіріс деректерді тыңдайды. Біз құрылғыға деректерді жібере аламыз.
Сонымен қатар, барлық кіріс деректер кейін өңдеу үшін csv файлына сақталады.
. Jar файлын іске қосқанда, алдымен ашылмалы мәзірден дұрыс портты таңдау керек. Қосылғаннан кейін деректер кіре бастайды және біз параметрлерді қуат көзіне жібере аламыз.
Бағдарлама өте қарапайым болғанымен, оны компьютер арқылы басқару және оның мәліметтерін тіркеу өте пайдалы болуы мүмкін.
7 -қадам: сәттілік
Барлық осы жұмыстан кейін бізде қазір толық функционалды қуат көзі бар!
Мен кейбір адамдарға қолдау көрсеткені үшін алғыс айтуым керек:
- Жоба EEVBLOG uSupply жобасына және оның Rev C схемасына негізделген. Дэвид Л. Джонсқа өзінің ашық схемасы бойынша лицензиясын ашық түрде шығарғаны және барлық білімімен бөліскені үшін ерекше алғыс.
- Бұл жобаның прототиптерін жасаған Йохан Паттинге үлкен рахмет.
- Сондай -ақ, Седрик Бусчоц пен Ханс Ингельбертс ақаулықтарды жоюдағы көмегі үшін лайықты.
Біз енді өз үйімізде жасалған қуатты жеткізуден ләззат ала аламыз, ол басқа керемет жобалармен жұмыс жасау кезінде пайдалы болады! Ең бастысы: біз жол бойында көп нәрсені үйрендік.
Егер сізге бұл жоба ұнаған болса, маған powerupply байқауында дауыс беруіңізді өтінемін, мен оны өте бағалаймын! Https: //www.instructables.com/contest/powersupply/
Электрмен жабдықтау байқауының екінші жүлдесі
Ұсынылған:
Батареямен жұмыс істейтін су коллекторының деңгей сенсоры: 7 қадам (суреттермен)
Батареямен жұмыс жасайтын су коллекторының деңгей сенсоры: Біздің үйде шатырға жауған жаңбырдан қоректенетін және дәретханаға, кір жуғыш машина мен бақшадағы суару қондырғыларына арналған су ыдысы бар. Соңғы үш жыл бойы жаз өте құрғақ болды, сондықтан біз резервуардағы су деңгейін бақылап отырдық. S
Батареямен жұмыс жасайтын қозғалыспен жұмыс істейтін жарықдиодты шам: 4 қадам
Батареямен жұмыс жасайтын жарықдиодты шам: егер сіз сымды қосуға болмайтын жерге жарық қойғыңыз келсе, бұл сізге қажет болуы мүмкін
Батареямен жұмыс істейтін құрылғы үшін қуат көзін пайдалану: 5 қадам (суреттермен)
Батареямен жұмыс жасайтын құрылғы үшін қуат көзін пайдалану: Менің досым маған бұл шар тәрізді ит ойыншығын әкелді, мен оны қуат көзінен қуаттандыруға болатынын сұрадым, өйткені батареяны үнемі ауыстырып тұру ауыртпалықты және экологиялық апатты болды. Ол 2 x АА батареясынан (барлығы 3В) шықты
Сандық USB C қуатымен жұмыс істейтін Bluetooth қуат көзі: 8 қадам (суреттермен)
Сандық USB C қуатымен жұмыс істейтін Bluetooth қуат көзі: Сіз кез келген уақытта, тіпті қабырғадағы розетка болмаса да, пайдалануға болатын қуат көзін алғыңыз келді ме? Егер ол өте дәл, цифрлық және компьютер мен телефон арқылы басқарылатын болса, жақсы болар ма еді? Бұл нұсқаулықта мен сізге дәл қалай салу керектігін көрсетемін
Батареямен жұмыс істейтін электрониканы айнымалы токта жұмыс істеуге түрлендіру: 4 қадам (суреттермен)
Батареямен жұмыс істейтін электрониканы айнымалы токпен жұмыс істеуге түрлендіру: Біз көптеген электрониканы қуаттандыру үшін батареяларды қолданамыз. Батареямен жұмыс істейтін құрылғылар бар, олар үнемі портативті болуды қажет етпейді. Бір мысал - менің ұлымның аккумуляторлық батареясы. Оны жылжытуға болады, бірақ ол әдетте қалады