Orodha ya maudhui:

Dijiti ya Dijiti ya C inayotumiwa na Dereva ya Bluetooth: Hatua 8 (na Picha)
Dijiti ya Dijiti ya C inayotumiwa na Dereva ya Bluetooth: Hatua 8 (na Picha)

Video: Dijiti ya Dijiti ya C inayotumiwa na Dereva ya Bluetooth: Hatua 8 (na Picha)

Video: Dijiti ya Dijiti ya C inayotumiwa na Dereva ya Bluetooth: Hatua 8 (na Picha)
Video: PXN V10 vs V9: Entry-level steering wheel SHOWDOWN 2024, Julai
Anonim
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth
Dijiti ya USB C Iliyopewa nguvu ya Bluetooth

Je! Umewahi kutaka nguvu ambayo unaweza kutumia popote ulipo, hata bila duka la ukuta karibu? Na haingekuwa baridi ikiwa pia ilikuwa sahihi sana, ya dijiti, na inayoweza kudhibitiwa kupitia PC na simu yako?

Katika hii nitafundishwa nitakuonyesha jinsi ya kujenga haswa hiyo: nguvu ya dijiti, ambayo inaendeshwa juu ya USB C. Inapatana na arduino na inaweza kudhibitiwa kupitia PC kupitia USB au kupitia simu yako kupitia Bluetooth.

Mradi huu ni mabadiliko ya nguvu yangu ya awali, ambayo ilikuwa ikiendeshwa na betri na ina onyesho na vifundo. Angalia hapa! Walakini, nilitaka kwenda ndogo, kwa hivyo ndio sababu nilifanya hii!

Powerupply inaweza kuwezeshwa kutoka kwa benki ya betri ya USB C au chaja ya simu. Hii inaruhusu hadi 15W ya nguvu, ambayo ni ya kutosha kuwezesha umeme wa chini zaidi! Ili kuwa na UI mzuri kwenye kifaa kidogo kama hicho, nilijumuisha Bluetooth na programu ya Android kwa vidhibiti.

Nitaonyesha mchakato wote wa kubuni, na faili zote za mradi zinaweza kupatikana kwenye ukurasa wangu wa GitHub:

Tuanze!

Hatua ya 1: Vipengele na Gharama

Vipengele na Gharama
Vipengele na Gharama

Vipengele

  • Inaendeshwa na USB C
  • Inadhibitiwa kupitia programu ya Android kupitia Bluetooth
  • Kudhibitiwa kupitia Java juu ya USB C
  • Voltage ya mara kwa mara na njia za sasa za mara kwa mara
  • Inatumia kiboreshaji cha chini cha laini ya kelele, iliyotanguliwa na preregulator ya ufuatiliaji ili kupunguza utaftaji wa nguvu
  • Inayoendeshwa na ATMEGA32U4, iliyowekwa na Arduino IDE
  • Inaweza kutumiwa na benki ya betri ya USB C kuifanya iweze kubeba
  • Kutambua chaja ya USB C na Apple
  • Plugs za ndizi zilizo na milimita 18 kwa utangamano na adapta za BNC

Ufafanuzi

  • 0 - 1A, hatua za 1 mA (10 bit DAC)
  • 0 - 25V, hatua za 25 mV (10 bit DAC) (operesheni ya kweli ya 0V)
  • Upimaji wa Voltage: azimio 25 mV (10 bit ADC)
  • Kipimo cha sasa: <40mA: 10uA resolution (ina219) <80mA: 20uA resolution (ina219) <160mA: 40uA resolution (ina219) <320mA: 80uA resolution (ina219)> 320mA: 1mA resolution (10 bit ADC)

Gharama

Nguvu kamili ya nguvu ilinigharimu karibu $ 100, na vifaa vyote vya moja. Ingawa hii inaweza kuonekana kuwa ya gharama kubwa, vifaa vya umeme na utendaji mdogo na huduma mara nyingi hugharimu zaidi ya hii. Ikiwa haujali kuagiza vifaa vyako kutoka kwa ebay au aliexpress, bei itashuka hadi karibu $ 70. Inachukua muda mrefu kwa sehemu kuingia, lakini ni chaguo linalofaa.

Hatua ya 2: Mpangilio na nadharia ya Uendeshaji

Mpangilio na nadharia ya Uendeshaji
Mpangilio na nadharia ya Uendeshaji

Ili kuelewa utendaji wa mzunguko, itabidi tuangalie skimu. Niliigawanya katika vitalu vya kazi, kama kwamba ni rahisi kuelewa; Kwa hivyo pia nitaelezea operesheni hatua kwa hatua. Sehemu hii ni ya kina kabisa na inahitaji ujuzi mzuri wa elektroniki. Ikiwa unataka tu kujua jinsi ya kujenga mzunguko, unaweza kuruka hadi hatua inayofuata.

Kizuizi kuu

Operesheni hiyo imejikita karibu na chip ya LT3080: ni mdhibiti wa umeme wa laini, ambayo inaweza kushuka kwa voltages, kulingana na ishara ya kudhibiti. Ishara hii ya kudhibiti itazalishwa na mdhibiti mdogo; jinsi hii imefanywa, itaelezewa kwa undani baadaye.

Kuweka voltage

Mzunguko karibu na LT3080 hutoa ishara zinazofaa za kudhibiti. Kwanza, tutaangalia jinsi voltage imewekwa. Mpangilio wa voltage kutoka kwa mdhibiti mdogo ni ishara ya PWM (PWM_Vset), ambayo huchujwa na kichujio cha chini (C23 & R32). Hii hutoa voltage ya analog - kati ya 0 na 5 V - sawia na voltage inayotakiwa ya pato. Kwa kuwa kiwango chetu cha pato ni 0 - 25 V, itabidi tuongeze ishara hii na sababu ya 5. Hii inafanywa na usanidi wa opamp usiobadilisha wa U7C. Faida kwa pini iliyowekwa imedhamiriwa na R31 na R36. Vipimo hivi vinavumilia 0.1%, ili kupunguza makosa. R39 na R41 haijalishi hapa, kwani ni sehemu ya kitanzi cha maoni.

Mpangilio wa sasa

Pini hii iliyowekwa inaweza pia kutumiwa kwa mpangilio wa pili: hali ya sasa. Tunataka kupima sare ya sasa, na kuzima pato wakati hii inazidi sasa inayotafutwa. Kwa hivyo, tunaanza tena na ishara ya PWM (PWM_Iset), iliyotengenezwa na microcontroller, ambayo sasa imechujwa na kupunguzwa kwa kiwango cha chini kutoka anuwai ya 0 - 5 V hadi safu ya 0 - 2.5 V. Voltage hii sasa inalinganishwa na kushuka kwa voltage kwenye kipinga nguvu cha sasa (ADC_Iout, angalia hapa chini) na usanidi wa kulinganisha wa opamp U1B. Ikiwa sasa ni ya juu sana, hii itageuka kuongozwa, na pia kuvuta laini iliyowekwa ya LT3080 chini (kupitia Q1), na hivyo kuzima pato. Upimaji wa sasa, na kizazi cha ishara ADC_Iout kinafanywa kama ifuatavyo. Pato la sasa linapita kupitia kontena R22. Wakati wa sasa unapita kupitia kontena hili, inaunda kushuka kwa voltage, ambayo tunaweza kupima, na imewekwa mbele ya LT3080, kwani kushuka kwa voltage haifai kushawishi voltage ya pato. Kushuka kwa voltage hupimwa na amplifier tofauti (U7B) na faida ya 5. Hii inasababisha upeo wa voltage ya 0 - 2.5 V (zaidi baadaye), kwa hivyo mgawanyiko wa voltage kwenye ishara ya PWM ya sasa. Bafa (U7A) iko ili kuhakikisha kuwa mtiririko wa sasa wa vipinga R27, R34 na R35 haupitii kontena la sasa la akili, ambalo linaweza kushawishi kusoma. Pia kumbuka kuwa hii inapaswa kuwa opamp ya reli-kwa-reli, kwa sababu voltage ya pembejeo kwenye pembejeo nzuri ni sawa na voltage ya usambazaji. Amplifier isiyo ya kugeuza ni ya kipimo cha kozi tu, kwa vipimo sahihi kabisa, tuna chip INA219 kwenye bodi. Chip hii inatuwezesha kupima mikondo ndogo sana, na inashughulikiwa kupitia I2C.

Vitu vya ziada

Katika pato la LT3080, tuna vitu vingine zaidi. Kwanza kabisa, kuna kuzama kwa sasa (LM334). Hii inachora mkondo wa mara kwa mara wa 677 uA (uliowekwa na kontena R46), kutuliza LT3080. Hata hivyo haijaunganishwa na ardhi, lakini kwa VEE, voltage hasi. Hii inahitajika ili kuruhusu LT3080 kufanya kazi hadi 0 V. Inapounganishwa ardhini, voltage ya chini kabisa itakuwa juu ya 0.7 V. Hii inaonekana kuwa ya chini vya kutosha, lakini kumbuka kuwa hii inatuzuia kuzima kabisa nguvu. Kwa bahati mbaya, mzunguko huu uko kwenye pato la LT3080, ambayo inamaanisha sasa yake itachangia pato tunalotaka kupima. Kwa bahati nzuri, ni mara kwa mara ili tuweze kusawazisha kwa sasa. Diode ya zener D7 hutumiwa kubana voltage ya pato ikiwa itaenda juu ya 25 V, na kigawanyaji cha kipinga kinashusha kiwango cha voltage kutoka 0 - 25 V hadi 0 - 2.5 V (ADC_Vout). Bafa (U7D) inahakikisha vipinga havichangi sasa kutoka kwa pato.

Pampu ya malipo

Voltage hasi ambayo tumetaja hapo awali inazalishwa na mzunguko mdogo wa kushangaza: pampu ya malipo. Inalishwa na PWM 50% ya microcontroller (PWM).

Kuongeza Converter

Wacha tuangalie voltage ya kuingiza ya block yetu kuu: VCC. Tunaona kuwa ni 5 - 27V, lakini subiri, USB inatoa upeo wa 5 V? Kwa kweli, na ndio sababu tunahitaji kuongeza voltage, na kibadilishaji kinachoitwa kuongeza. Tunaweza kuongeza voltage kila wakati kuwa 27 V, bila kujali ni pato gani tunataka; Walakini, hii itapoteza nguvu nyingi katika LT3080 na vitu vingepata moto! Kwa hivyo badala ya kufanya hivyo, tutaongeza voltage kwa zaidi ya voltage ya pato. Karibu 2.5 V ya juu inafaa, kuhesabu kushuka kwa voltage katika kontena la sasa la hisia na voltage ya kuacha ya LT3080. Voltage imewekwa na wapinzani kwenye ishara ya pato ya kibadilishaji cha kuongeza. Kubadilisha voltage hii kwenye nzi, tunatumia potentiometer ya dijiti, MCP41010, ambayo inadhibitiwa kupitia SPI.

USB C

Hii inatuongoza kwa voltage halisi ya pembejeo: bandari ya USB! Sababu ya kutumia USB C (aina ya USB 3.1 kuwa sawa, USB C ni aina tu ya kiunganishi) ni kwa sababu inaruhusu sasa ya 3A kwa 5V, hiyo tayari ni nguvu. Lakini kuna upatikanaji wa samaki, kifaa hicho kinafaa kutii kuteka hii ya sasa na 'kujadili' na kifaa cha mwenyeji. Kwa mazoezi, hii inafanywa kwa kuunganisha vizuizi viwili vya 5.1k (R12 na R13) kwa laini ya CC1 na CC2. Kwa utangamano wa USB 2, nyaraka hazieleweki sana. Kwa kifupi: unachora chochote cha sasa unachotaka, maadamu mwenyeji anaweza kuipatia. Hii inaweza kuchunguzwa kwa kufuatilia voltage ya basi ya USB: moja voltage inashuka chini ya 4.25V, kifaa huchota sasa sana. Hii hugunduliwa na kulinganisha U1A na italemaza pato. Pia hutuma ishara kwa mdhibiti mdogo kuweka kiwango cha juu cha sasa. Kama bonasi, vipingaji vimeongezwa kusaidia kugundua kitambulisho cha chaja ya chaja za apple na samsung.

Mdhibiti wa 5V

Voltage 5 V ya ugavi wa arduino kawaida huja moja kwa moja kutoka kwa USB. Lakini kwa kuwa voltage ya USB inaweza kutofautiana kati ya 4.5 na 5.5 V kulingana na maelezo ya USB, hii sio sahihi ya kutosha. Kwa hivyo, mdhibiti wa 5V hutumiwa, ambayo inaweza kutoa 5V kutoka kwa voltages za chini na za juu. Bado, voltage hii sio sahihi sana, lakini hii hutatuliwa na hatua ya upimaji ambapo mzunguko wa ushuru wa ishara ya PWM hubadilishwa ipasavyo. Voltage hii inapimwa na mgawanyiko wa voltage iliyoundwa na R42 na R43. Lakini kwa kuwa sikuwa na pembejeo za bure zaidi, ilibidi nifanye pini kuvuta ushuru mara mbili. Wakati buti za nguvu, pini hii imewekwa kwanza kama pembejeo: inapima reli ya usambazaji na inajilinganisha yenyewe. Ifuatayo, imewekwa kama pato na inaweza kuendesha laini ya kuchagua chip ya potentiometer.

Marejeleo ya voltage ya 2.56 V

Chip hii ndogo hutoa kumbukumbu sahihi ya 2.56 V ya voltage. Hii hutumiwa kama rejeleo la ishara za Analog ADC_Vout, ADC_Iout, ADC_Vbatt. Ndio sababu tulihitaji wagawanyaji wa voltage kuleta ishara hizi hadi 2.5 V.

FTDI

Sehemu ya mwisho ya nguvu hii ni uhusiano na ulimwengu mkatili, wa nje. Kwa hili, tunahitaji kubadilisha ishara za serial kuwa ishara za USB. Kwa bahati nzuri, hii inafanywa na ATMEGA32U4, hii ndio chip ile ile ambayo hutumiwa katika Arduino Micro.

Bluetooth

Sehemu ya Bluetooth ni rahisi sana: moduli ya Bluetooth ya rafu imeongezwa na hutunza kila kitu kwetu. Kwa kuwa kiwango cha mantiki ni 3.3V (VS 5V kwa mdhibiti mdogo) mgawanyiko wa voltage hutumiwa kusawazisha ishara.

Na ndio tu kuna hiyo!

Hatua ya 3: PCB na Elektroniki

PCB na Elektroniki
PCB na Elektroniki
PCB na Elektroniki
PCB na Elektroniki
PCB na Elektroniki
PCB na Elektroniki

Sasa kwa kuwa tunaelewa jinsi mzunguko unafanya kazi, tunaweza kuanza kuijenga! Unaweza kuagiza PCB mkondoni kutoka kwa mtengenezaji wako unayempenda (gharama yangu ni karibu $ 10), faili za kijiti zinaweza kupatikana kwenye GitHub yangu, pamoja na muswada wa vifaa. Kukusanya PCB basi kimsingi ni suala la kuuza viambishi vilivyowekwa kulingana na skrini ya hariri na muswada wa vifaa.

Wakati nguvu yangu ya awali ilikuwa na vifaa vya shimo tu, kikwazo cha saizi ya mpya yangu ilifanya hii isiwezekane. Vipengele vingi bado ni rahisi kuuza, kwa hivyo usiogope. Kama kielelezo: rafiki yangu ambaye hakuwahi kuuza kabla alifanikiwa kujaza kifaa hiki!

Ni rahisi kufanya vifaa upande wa mbele kwanza, kisha nyuma na kumaliza na vifaa vya shimo. Wakati wa kufanya hivyo, PCB haitatetereka wakati wa kugeuza vifaa ngumu zaidi. Sehemu ya mwisho ya kuuzwa ni moduli ya Bluetooth.

Vipengele vyote vinaweza kuuzwa, isipokuwa vifurushi 2 vya ndizi, ambavyo tutapanda katika hatua inayofuata!

Hatua ya 4: Uchunguzi na Mkutano

Uchunguzi na Mkutano
Uchunguzi na Mkutano
Uchunguzi na Mkutano
Uchunguzi na Mkutano
Uchunguzi na Mkutano
Uchunguzi na Mkutano

Pamoja na pcb iliyotengenezwa, tunaweza kuendelea na kesi hiyo. Nilibuni PCB karibu na kesi ya alumini 20x50x80mm (https://www.aliexpress.com/item/Aluminium-PCB-Instr…), kwa hivyo haifai matumizi ya kesi nyingine. Walakini, unaweza kuchapisha kila wakati kesi ya 3D na vipimo sawa.

Hatua ya kwanza ni kuandaa jopo la mwisho. Tutahitaji kuchimba mashimo kadhaa kwa vifuniko vya ndizi. Nilifanya hivi kwa mkono, lakini ikiwa una ufikiaji wa CNC ambayo itakuwa chaguo sahihi zaidi. Ingiza viroba vya ndizi ndani ya mashimo haya na uviweke kwenye PCB.

Ni wazo nzuri kuongeza vidonge vya hariri sasa, na uzishike pamoja na tone ndogo la gundi kubwa. Hizi zitaruhusu uhamishaji wa joto kati ya LT3080 na LT1370 na kesi hiyo. Usiwasahau!

Sasa tunaweza kuzingatia jopo la mbele, ambalo lina screw tu mahali. Pamoja na paneli zote mbili mahali sasa tunaweza kuingiza mkutano katika kesi hiyo na kuifunga yote. Kwa wakati huu vifaa vimekamilika, sasa kilichobaki ni kupiga maisha ndani yake na programu!

Hatua ya 5: Msimbo wa Arduino

Msimbo wa Arduino
Msimbo wa Arduino

Ubongo wa mradi huu ni ATMEGA32U4, ambayo tutapanga na Arduino IDE. Katika sehemu hii, nitapitia operesheni ya msingi ya nambari, maelezo yanaweza kupatikana kama maoni ndani ya nambari.

Nambari kimsingi hupunguka kupitia hatua hizi:

  1. Tuma data kwa programu
  2. Soma data kutoka kwa programu
  3. Pima voltage
  4. Pima sasa
  5. Kitufe cha kura ya maoni

Overcurrent ya USB inasimamiwa na utaratibu wa huduma ya kukatiza ili iwe kama msikivu iwezekanavyo.

Kabla ya chip kusanidiwa juu ya USB, bootloader inapaswa kuchomwa moto. Hii imefanywa kupitia bandari ya ISP / ICSP (vichwa vya kiume vya 3x2) kupitia programu ya ISP. Chaguzi ni AVRISPMK2, USBTINY ISP au arduino kama ISP. Hakikisha bodi inapokea nguvu na bonyeza kitufe cha "burn bootloader".

Nambari hiyo sasa inaweza kupakiwa kwenye ubao kupitia bandari ya USB C (kwani chip ina bootloader). Bodi: Arduino Micro Programmer: AVR ISP / AVRISP MKII Sasa tunaweza kuangalia mwingiliano kati ya Arduino na PC.

Hatua ya 6: Programu ya Android

Programu ya Android
Programu ya Android

Sasa tunayo nguvu ya kufanya kazi kikamilifu, lakini hakuna njia ya kuidhibiti bado. Inakera sana. Kwa hivyo tutafanya programu ya Android kudhibiti nguvu juu ya Bluetooth.

Programu imetengenezwa na mpango wa uvumbuzi wa programu ya MIT. Faili zote zinaweza kujumuishwa ili kubadilisha na kurekebisha mradi. Kwanza, pakua programu rafiki ya MIT AI2 kwenye simu yako. Ifuatayo, ingiza faili ya.aia kwenye wavuti ya AI. Hii pia hukuruhusu kupakua programu kwenye simu yako mwenyewe kwa kuchagua "Jenga> Programu (toa nambari ya QR ya.apk)"

Kutumia programu, chagua kifaa cha Bluetooth kutoka kwenye orodha: itaonekana kama moduli ya HC-05. Ukiunganishwa, mipangilio yote inaweza kubadilishwa na pato la nguvu inaweza kusomwa nje.

Hatua ya 7: Msimbo wa Java

Msimbo wa Java
Msimbo wa Java

Kwa data ya magogo na kudhibiti nguvu kupitia PC, nilifanya programu ya java. Hii inatuwezesha kudhibiti bodi kwa urahisi kupitia GUI. Kama ilivyo na nambari ya Arduino, sitaenda kwa maelezo yote, lakini toa muhtasari.

Tunaanza kwa kutengeneza dirisha na vifungo, uwanja wa maandishi nk; mambo ya msingi ya GUI.

Sasa inakuja sehemu ya kufurahisha: kuongeza bandari za USB, ambazo nilitumia maktaba ya jSerialComm. Mara bandari ikichaguliwa, java itasikiliza data yoyote inayoingia. Tunaweza pia kutuma data kwenye kifaa.

Kwa kuongezea, data zote zinazoingia zinahifadhiwa kwenye faili ya csv, kwa matibabu ya data baadaye.

Wakati wa kuendesha faili ya.jar, tunapaswa kwanza kuchagua bandari inayofaa kutoka kwenye menyu kunjuzi. Baada ya kuunganisha data itaanza kuingia, na tunaweza kutuma mipangilio yetu kwa nguvu.

Wakati programu hiyo ni ya msingi sana, inaweza kuwa muhimu kuidhibiti kupitia PC na ingiza data.

Hatua ya 8:

Picha
Picha
Picha
Picha
Picha
Picha

Baada ya kazi hii yote, sasa tuna nguvu ya kufanya kazi kikamilifu!

Sasa tunaweza kufurahiya nguvu yetu ya nyumbani iliyoundwa, ambayo itafaa wakati wa kufanya kazi kwenye miradi mingine ya kushangaza! Na muhimu zaidi: tumejifunza vitu vingi njiani.

Ikiwa ulipenda mradi huu, tafadhali nipigie kura katika mashindano ya ukubwa wa mfukoni na microcontroller, ningeithamini sana!

Ilipendekeza: