- Mga Materyal na Kinakailangan:
- Paggawa ng ACS712 Kasalukuyang Sensor:
- Diagram ng Circuit:
- Simulation:
- Pag-program ng PIC Microcontroller:
- Nagtatrabaho:
Ang pagsukat ng boltahe at kasalukuyang ay palaging magiging kapaki-pakinabang habang gumagawa o nagde-debug ng anumang sistemang elektrikal. Sa proyektong ito gagawa kami ng aming sariling Digital Ammeter gamit ang PIC16F877A Microcontroller at kasalukuyang sensor ACS712-5A. Maaaring sukatin ng proyektong ito ang parehong kasalukuyang AC at DC na may saklaw na 0-30A na may katumpakan na 0.3A. Sa ilang mga pagbabago sa code maaari mo ring gamitin ang circuit na ito upang masukat hanggang sa 30A. Kaya't magsimula tayo !!!
Mga Materyal na Kinakailangan:
- PIC16F877A
- 7805 Boltahe Regulator
- Kasalukuyang Sensor ng ACS712
- 16 * 2 LCD display
- Isang kantong kahon at pag-load (Para lamang sa pagsubok)
- Mga kumokonekta na mga wire
- Mga capacitor
- Breadboard.
- Suplay ng kuryente - 12V
Paggawa ng ACS712 Kasalukuyang Sensor:
Bago namin simulan ang pagbuo ng proyekto napakahalaga para sa amin na maunawaan ang pagtatrabaho ng ACS712 Kasalukuyang sensor dahil ito ang pangunahing sangkap ng proyekto. Ang pagsukat ng kasalukuyang lalo na ang kasalukuyang AC ay palaging isang matigas na gawain dahil sa ingay kasama ng hindi tamang problema sa paghihiwalay atbp. Ngunit, sa tulong ng module na ACS712 na ito na ininhinyero ng bagay ng Allegro ay naging mas madali.
Gumagana ang modyul na ito sa prinsipyo ng Hall-effect, na natuklasan ni Dr. Edwin Hall. Ayon sa kanyang prinsipyo, kapag ang isang kasalukuyang nagdadala konduktor ay inilalagay sa isang magnetic field, ang isang boltahe ay nabuo sa mga gilid nito patapat sa mga direksyon ng parehong kasalukuyang at ang magnetic field. Huwag tayong lumalim sa konsepto ngunit, sa madaling salita ay gumagamit kami ng isang sensor ng hall upang sukatin ang magnetikong patlang sa paligid ng isang kasalukuyang dalang konduktor. Ang pagsukat na ito ay magiging sa mga tuntunin ng millivolts na tinawag namin bilang boltahe ng bulwagan. Ang sinusukat na hall-voltage na ito ay proporsyonal sa kasalukuyang dumadaloy sa pamamagitan ng conductor.
Ang pangunahing bentahe ng paggamit ng ACS712 Kasalukuyang Sensor ay na maaaring masukat ang parehong AC at DC kasalukuyang at nagbibigay din ito ng paghihiwalay sa pagitan ng Load (AC / DC load) at Unit ng Pagsukat (bahagi ng Microcontroller). Tulad ng ipinakita sa larawan mayroon kaming tatlong mga pin sa module na kung saan ay Vcc, Vout at Ground ayon sa pagkakabanggit.
Ang 2-pin terminal block ay kung saan ang kasalukuyang nagdadala ng kawad ay dapat na dumaan. Gumagana ang module sa + 5V kaya ang Vcc ay dapat na pinalakas ng 5V at ang lupa ay dapat na konektado sa Ground ng system. Ang Vout pin ay mayroong isang offset boltahe na 2500mV, ibig sabihin kapag walang kasalukuyang dumadaloy sa pamamagitan ng wire pagkatapos ang output boltahe ay magiging 2500mV at kapag ang kasalukuyang daloy ay positibo, ang boltahe ay magiging mas malaki sa 2500mV at kapag ang kasalukuyang dumadaloy ay negatibo, ang ang boltahe ay magiging mas mababa sa 2500mV.
Gagamitin namin ang module ng ADC ng PIC microcontroller upang mabasa ang output voltage (Vout) ng module, na magiging 512 (2500mV) kapag walang kasalukuyang dumadaloy sa pamamagitan ng kawad. Ang halagang ito ay mababawasan habang ang kasalukuyang daloy sa negatibong direksyon at tataas habang ang kasalukuyang daloy sa positibong direksyon. Tutulungan ka ng talahanayan sa ibaba na maunawaan kung paano nag-iiba ang boltahe ng output at halaga ng ADC batay sa kasalukuyang dumadaloy sa pamamagitan ng kawad.
Ang mga halagang ito ay kinakalkula batay sa impormasyong ibinigay sa Datasheet ng ACS712. Maaari mo ring kalkulahin ang mga ito gamit ang mga formula sa ibaba:
Vout Boltahe (mV) = (Halaga ng ADC / 1023) * 5000 Kasalukuyang Sa pamamagitan ng Wire (A) = (Vout (mv) -2500) / 185
Ngayon, na alam natin kung paano gumagana ang ACS712 Sensor at kung ano ang maaari nating asahan mula rito. Magpatuloy tayo sa diagram ng circuit.
Diagram ng Circuit:
Ang kumpletong diagram ng circuit ng Digital Ammeter Project na ito ay ipinapakita sa imahe sa ibaba.
Gumagawa ang kumpletong digital na kasalukuyang circuit ng metro sa + 5V na kinokontrol ng isang 7805 Voltage regulator. Gumamit kami ng isang 16X2 LCD upang maipakita ang halaga ng kasalukuyang. Ang output pin ng kasalukuyang Sensor (Vout) ay konektado sa ika- 7 na pin ng PIC na kung saan ay ang AN4 upang mabasa ang boltahe ng Analog.
Dagdag dito ang koneksyon ng pin para sa PIC ay ipinapakita sa talahanayan sa ibaba
S. Hindi: |
Numero ng Pin |
Pangalan ng Pin |
Nakakonekta sa |
1 |
21 |
RD2 |
RS ng LCD |
2 |
22 |
RD3 |
E ng LCD |
3 |
27 |
RD4 |
D4 ng LCD |
4 |
28 |
RD5 |
D5 ng LCD |
5 |
29 |
RD6 |
D6 ng LCD |
6 |
30 |
RD7 |
D7 ng LCD |
7 |
7 |
AN4 |
Vout ng Kasalukuyang Sesnor |
Maaari mong buuin ang digital ammeter circuit na ito sa isang breadboard o gumamit ng isang perf board. Kung sinusundan mo ang mga tutorial na PIC pagkatapos ay maaari mo ring magamit muli ang hardware na ginamit namin para sa pag-aaral ng mga microcontroller ng PIC. Ginamit namin dito ang parehong perf Board na itinayo namin para sa LED Blinking sa PIC Microcontroller, tulad ng ipinakita sa ibaba:
Tandaan: Hindi sapilitan para sa iyo na itayo ang board na ito maaari mo lamang sundin ang circuit diagram at itayo ka sa isang board board at gumamit ng anumang dumper kit upang itapon ang iyong programa sa PIC Microcontroller.
Simulation:
Ang kasalukuyang circuit ng metro na ito ay maaari ring gayahin gamit ang Proteus bago ka talaga magpatuloy sa iyong Hardware. Italaga ang hex file ng code na ibinigay sa dulo ng tutorial na ito at mag-click sa play button. Dapat mong mapansin ang kasalukuyang sa display ng LCD. Gumamit ako ng isang lampara bilang isang pag-load ng AC, maaari mong baguhin ang panloob na paglaban ng Lampara sa pamamagitan ng pag-click dito upang maiiba ang kasalukuyang dumadaloy sa pamamagitan nito.
Tulad ng nakikita mo sa larawan sa itaas, ipinapakita ng Ammeter ang aktwal na kasalukuyang dumadaloy sa pamamagitan ng Lampara na nasa 3.52 A at ipinapakita ng LCD ang kasalukuyang nasa paligid ng 3.6A. Gayunpaman sa praktikal na kaso maaari kaming makakuha ng Error hanggang sa 0.2A. Ang halaga ng ADC at boltahe sa (mV) ay ipinapakita din sa LCD para sa iyong pag-unawa.
Pag-program ng PIC Microcontroller:
Tulad ng sinabi kanina, ang kumpletong code ay matatagpuan sa pagtatapos ng artikulong ito. Ang code ay ipinaliwanag sa sarili sa mga linya ng komento at nagsasangkot lamang ng konsepto ng interfacing ng isang LCD sa PIC Microcontroller at Paggamit ng ADC module sa PIC Microcontroller na sakop na namin sa aming nakaraang mga tutorial ng pag-aaral ng PIC Microcontrollers.
Ang halagang nabasa mula sa sensor ay hindi magiging tumpak dahil ang kasalukuyang ay alternating at napapailalim din sa ingay. Samakatuwid binasa namin ang halaga ng ADC para sa 20 Times at average ito upang makuha ang naaangkop na kasalukuyang Halaga tulad ng ipinakita sa code sa ibaba.
Gumamit kami ng parehong mga formula na ipinaliwanag sa itaas upang makalkula ang boltahe at Kasalukuyang halaga.
para sa (int i = 0; i <20; i ++) // Basahin ang halaga para sa 20 Times {adc = 0; adc = ADC_Read (4); // Basahin ang ADC Boltahe = adc * 4.8828; // Kalkulahin ang Boltahe kung (Boltahe> = 2500) // Kung positibo ang kasalukuyang Amps + = ((Boltahe-2500) /18.5); kung hindi man kung (Boltahe <= 2500) // Kung ang kasalukuyang negatibo Amps + = ((2500-Boltahe) /18.5); } Amps / = 20; // Karaniwan ang halagang binasa nang 20 beses
Dahil ang proyektong ito ay maaari ring basahin ang kasalukuyang AC ang kasalukuyang daloy ay magiging negatibo at positibo din. Iyon ang halaga ng boltahe ng output ay nasa itaas at mas mababa sa 2500mV. Samakatuwid tulad ng ipinakita sa ibaba binabago namin ang mga formula para sa negatibo at positibong kasalukuyang upang hindi kami makakuha ng negatibong halaga.
kung (Boltahe> = 2500) // Kung ang kasalukuyang positibo Amps + = ((Boltahe-2500) /18.5); kung hindi man kung (Boltahe <= 2500) // Kung ang kasalukuyang negatibo Amps + = ((2500-Boltahe) /18.5);
Paggamit ng isang kasalukuyang 30A na sensor:
Kung kailangan mong sukatin ang kasalukuyang higit sa 5A maaari mo lamang bilhin ang isang module na ACS712-30A at i-interface ito sa parehong paraan at baguhin ang linya sa ibaba ng code sa pamamagitan ng pagpapalit ng 18.5 sa 0.66 tulad ng ipinakita sa ibaba:
kung (Boltahe> = 2500) // Kung ang kasalukuyang positibo Amps + = ((Boltahe-2500) /0.66); kung hindi man kung (Boltahe <= 2500) // Kung ang kasalukuyang negatibo Amps + = ((2500-Boltahe) /0.66);
Suriin din ang 100mA Ammeter gamit ang AVR Microcontroller kung nais mong masukat ang mababang kasalukuyang.
Nagtatrabaho:
Kapag na-program mo na ang PIC Microcontroller at nagawa mong handa ang iyong hardware. Lamang lakas sa pag-load at ang iyong PIC microcontroller dapat mong makita ang kasalukuyang dumadaan sa wire na ipinapakita sa iyong LCD screen.
TANDAAN: KUNG gumagamit ka ng isang module na ASC7125A tiyakin na ang iyong karga ay hindi kumakain ng higit sa 5A gumagamit din ng mas mataas na mga gauge wire para sa kasalukuyang nagdadala ng conductor.
Ang kumpletong pagtatrabaho ng PIC microcontroller based ammeter project ay ipinapakita sa Video sa ibaba. Inaasahan kong nakuha mo ang proyekto na nasisiyahan at nasiyahan sa paggawa nito. Kung mayroon kang anumang pag-aalinlangan maaari mong isulat ang mga ito sa seksyon ng komento sa ibaba o i-post ang mga ito sa aming mga forum.