» Mga Tema » Mga tip »Meter-salansan kasalukuyang sa isang malawak na hanay, boltahe at temperatura

Malawak na saklaw ng kasalukuyang, boltahe at metro ng temperatura

Paghirang:
Para sa pagsukat at pag-aayos ng oras sa flash memory ng mahabang proseso na ipinahayag sa kasalukuyan at boltahe, tulad ng pagsingil - paglabas ng mga baterya at baterya. Posible na sabay na ayusin ang temperatura.

Mga parameter ng input ng:
kasalukuyang I = 25mka - 2a
boltahe U = 0 - 5V
temperatura t = -30 - + 120gі
ang oras ay itinakda ng panloob na built-in na relo ng kuwarts

Nutrisyon:
mula sa mapagkukunan 12v / 0.3a
Kinonsumo ko ang <70ma

Konstruksyon:
Ang metro ay tipunin sa dalawang mga module Arduino Nano konektado sa pamamagitan ng Protocol ng ModBus, tingnan ang diagram. Ang isang Arduino ay naka-mount sa isang riser na may mga block block. Ang mga module ay konektado sa pamamagitan ng mga konektor. Ang mga wire at ang mga module mismo ay insulated mula sa thermal-cambric faults.

Ang mga signal ng input ay pinakain sa pamamagitan ng mga terminal ng tornilyo

Sa harap na panel ay may isang tagapagpahiwatig na likido-kristal ng mga sinusukat na mga parameter at LED na nagpapahiwatig ng paglilipat ng isang saklaw o wala sa saklaw.

Ang metro ay tipunin sa isang pabahay 145x85x40.
Ang sensor ng temperatura ay isinasagawa sa pamamagitan ng konektor. Ang paghahatid ng signal ay isinaayos sa isang linya ng dalawang kawad. Ang risistor ng feed sa konektor.

Para sa kadalian ng pagprograma, ang mga konektor ng Arduino USB ay panlabas.






Scheme

Maaaring mai-download ang iskema mula sa file Meter.rar

Dalawang Arduino ang napili sa dalawang kadahilanan: Ang Arduino Nano ay magagamit at hindi sapat sa isang memorya, at ito ay pinlano na magdagdag pa ng mga sensor. Bilang karagdagan, nais kong makabisado ang samahan ng Arduino, para sa napiling protocol ng network ng ModBus. Tinutukoy ng ModBus ang isang master processor - Master at maraming mga alipin - Alipin. Sa gawaing ito, mayroong isang Alipin, sa ibabaw nito ay isang pagsukat ng temperatura, boltahe at kasalukuyang. Sa Master - isang orasan at tala sa isang file. Ang memorya ng laman ay dapat na mas mababa sa 4GB at na-format sa FAT.

Dahil pinlano nitong sukatin ang mga alon mula sa AA hanggang A, ang mga alon ay sinusukat sa 4 na saklaw (tingnan ang talahanayan ng Ranges), sinusubaybayan ng Arduino Slave ang paglipat mula sa isang saklaw patungo sa isa pa, na bumubuo ng kaukulang code ng shunt para sa kasalukuyang sinusukat na kasalukuyang mula sa M1-2. Kapag papalapit sa hangganan ng saklaw, ang susunod na saklaw ay naka-on, iyon ay, ang kasalukuyang key mula sa T1-1 --- T2-2 ay naka-off at ang susunod na nakabukas. Sa kasong ito, ang maximum na shunt = 100ohm ay patuloy na. Kung may labis na halaga sa saklaw, ang mga LEDs D8, D9 ay naiilaw.

Paghahati ng kasalukuyang pagsukat sa mga saklaw
Uout_max = 5v KusOU = 20 Δ = Ish / 1024

Ang pakinabang ng pagpapatakbo ng amplifier M1-2 ay nakatakda = 20 at pagkatapos ay hindi nagbabago. (Sa harap na panel ito ay naka-mount nang mali).
Ang boltahe ay sinusukat sa pamamagitan ng isang tagasunod sa OU M1-1.Ang mga input circuit ng op-amp at Arduino ay protektado ng mga diode (ang mga zener diode ay nasa Arduino, ngunit hindi ko alam ang mga parameter, samakatuwid ito ay mas mahusay na overdo ito).

Ang LCD1602 ay pinili bilang isang tagapagpahiwatig. Ito ay konektado sa Arduino Master. Bukod dito, ang tagapagpahiwatig ay maaaring konektado sa parehong Arduino sa pamamagitan lamang ng paglipat ng mga konektor ng Arduino. (Kapag nawala ang kapangyarihan.) Ang koneksyon sa Alduino Alipin ay ipinapakita sa isang putol na linya (na ginamit kapag nagsusulat ng mga programa). Gamit ang pangunahing koneksyon (sa Master) sa LCD1602, 4 na mga screen ang maaaring ipakita sa pamamagitan ng paglipat ng slide switch slider p1-p2.

Screen1: mula sa itaas ng impormasyon ng serbisyo ng palitan sa pagitan ng Arduino: C ang bilang ng mga palitan sa pagitan ng Arduino, E ang bilang ng mga pagkakamali sa panahon ng pagpapalitan ng Sh-No. ng shunt;
ilalim ng araw - oras ng buwan.


Screen2: U1, I1, Shunt No., (0.00 ibaba-reserba)


Screen3: U2, temperatura, (ui-standby)


Screen4: pinagana ang pag-record ng SD, oras ng pag-record sa mga oras, numero ng linya sa file,
00- estado ng kasalukuyang saklaw1 0-normal na 1-out ng saklaw, estado ng saklaw ng boltahe1, nakapirming kapangyarihan ng isang panlabas na mapagkukunan


Kapag nakakonekta sa Slave - 2 screen. Lumipat ang p3 na nagbibigay-daan sa pag-record sa memorya ng Micro Flesh.
Ang power supply ay napili 12v upang makakuha ng mga guhit na katangian ng op-amp (upang maiwasan ang mga blockage sa mga gilid ng saklaw). Sa parehong dahilan, ginamit ang negatibong boltahe mula sa shaper sa KR1006VI1. Ang paggamit ng isang generator ng Arduino ay gumagawa ng hindi gaanong matatag na boltahe. Upang makabuo ng 5v power, ginamit ang isang step-down converter, ngunit magagawa mo nang wala ito sa pamamagitan ng pagbibigay ng + 12V sa VIN Arduino Nano input.
Ang magkasanib na programming Arduino ay may mga tampok, dahil ang komunikasyon sa computer ay abala sa Protocol ng ModBus. Upang mai-load ang isang sketch sa isa sa Arduino, sa kabilang banda na kailangan mo upang paganahin ang signal ng RST reset. Upang gawin ito, gamitin ang mga jumper ng Block S, I-block ang M. O pindutin at hawakan ang mga pindutan ng pag-reset sa mga module ng Arduino hanggang matapos ang pag-download, na hindi gaanong maginhawa at may isang pagkakataon na masira ang pag-download. Dahil plano kong palawakin ang aking USB Arduino na aparato, hinila ko ang kaso.

Ang transistor T5 (FR024N) ay dapat na gamitin upang i-on / off ang isang proseso, halimbawa, isang pag-aalis ng isang baterya. Habang hindi ito kasangkot.

Software.
Ito ay pinakamataas na chewed na ang mga nagsisimula (at ako mismo) ay hindi makakasakit at maaaring magsilbing sanggunian na materyal, ngunit hindi inaangkin na pagiging maaasahan.

Matatagpuan ang mga aklatan at mga code ng programa sa file na Izmeritel PRO.rar.
Sketch para sa master ModBus_Master10_SD_T_10_2. Sketch para sa alipin ModBus-Slave10_T_UI_10_2. Ang natitirang bahagi ng aklatan.
Nai-program sa kapaligiran ng Arduino1.6.0. Naglalaman ito ng mga aklatan SD, LiquidCrystal, Wire ay hindi kailangang i-download.

Ang oras sa oras ay nakatakda sa Setup tulad ng sumusunod. Itakda ang tunay na oras at i-load ang sketch. Pagkatapos ay magkomento sa mga linya para sa pagtatakda ng petsa at oras at i-reload ang sketch.

Ang resulta ng programa ay magiging indikasyon ng oras at petsa (oras), kasalukuyang, boltahe, temperatura sa LCD1602 at ang pag-record ng mga parameter na ito sa IZMER1.TXT file sa Micro Flesh memory. Ang file ay maglalagay ng isang talahanayan ng ganitong uri:

0; 04/13/2019; 00:11:10; Zap (h) = 0.05; tc = 29.31; U1 = 1.71; I1 = 0.00; P1 = 0.00; U2 = 0.14; DiaI norma; DiaU norma; C = 762
1; 04/13/2019; 00:11:16; Zap (h) = 0.05; tc = 29.38; U1 = 1.79; I1 = 0.00; P1 = 0.00; U2 = 0.19; DiaI norma; DiaU norma; C = 788
2; 04/13/2019; 00:11:22; Zap (h) = 0.05; tc = 29.38; U1 = 1.54; I1 = 0.00; P1 = 0.00; U2 = 0.16; DiaI norma; DiaU norma; C = 813
3; 04/13/2019; 00:11:28; Zap (h) = 0.05; tc = 29.31; U1 = 1.30; I1 = 0.00; P1 = 0.00; U2 = 0.17; DiaI norma; DiaU norma; C = 839
4; 04/13/2019; 00:11:34; Zap (h) = 0.05; tc = 29.31; U1 = 1.90; I1 = 0.00; P1 = 0.00; U2 = 0.17; DiaI norma; DiaU norma; C = 864
5; 04/13/2019; 00:11:40; Zap (h) = 0.05; tc = 29.25; U1 = 1.53; I1 = 0.00; P1 = 0.00; U2 = 0.16; DiaI norma; DiaU norma; C = 890
6; 04/13/2019; 00:11:46; Zap (h) = 0.05; tc = 29.19; U1 = 2.03; I1 = 0.00; P1 = 0.00; U2 = 0.18; DiaI norma; DiaU norma; C = 915
7; 04/13/2019; 00:11:52; Zap (h) = 0.05; tc = 29.13; U1 = 1.81; I1 = 0.00; P1 = 0.00; U2 = 0.18; DiaI norma; DiaU norma; C = 941
8; 04/13/2019; 00:11:58; Zap (h) = 0.05; tc = 29.00; U1 = 1.30; I1 = 0.00; P1 = 0.00; U2 = 0.16; DiaI norma; DiaU norma; C = 966
9; 04/13/2019; 00:12:04; Zap (h) = 0.07; tc = 28.94; U1 = 1.25; I1 = 0.00; P1 = 0.00; U2 = 0.17; DiaI norma; DiaU norma; C = 992
10; 04/13/2019; 00:12:10; Zap (h) = 0.07; tc = 29.00; U1 = 1.85; I1 = 0.00; P1 = 0.00; U2 = 0.16; DiaI norma; DiaU norma; C = 1017
11; 04/13/2019; 00:12:16; Zap (h) = 0.07; tc = 29.00; U1 = 1.21; I1 = 0.00; P1 = 0.00; U2 = 0.18; DiaI norma; DiaU norma; C = 1043
12; 04/13/2019; 00:12:23; Zap (h) = 0.07; tc = 28.94; U1 = 1.55; I1 = 0.00; P1 = 0.00; U2 = 0.18; DiaI norma; DiaU norma; C = 1068
13; 04/13/2019; 00:12:29; Zap (h) = 0.07; tc = 28.88; U1 = 1.82; I1 = 0.00; P1 = 0.00; U2 = 0.16; DiaI norma; DiaU norma; C = 1094
14; 04/13/2019; 00:12:35; Zap (h) = 0.07; tc = 28.88; U1 = 1.30; I1 = 0.00; P1 = 0.00; U2 = 0.18; DiaI norma; DiaU norma; C = 1119

kung saan matatagpuan ang mga haligi n / a; Petsa oras pag-record ng oras sa oras; temperatura sinusukat boltahe U1; sinusukat ang kasalukuyang I1; ang pangalawang sinusukat boltahe U2; impormasyon tungkol sa exit / kawalan ng saklaw ng pagsukat; impormasyon ng serbisyo sa bilang ng mga palitan sa pagitan ng Arduino.

Ang pagitan ng pag-record ng pagsukat ay napili para sa 6 segundo, madaling baguhin ito sa pamamagitan ng pagpapalit ng halaga ng #define CYCLE_TIME_F 3000 na pare-pareho sa isa pa ng formula na Tsec = Constant (ms) * 2/1000 sa Master.
Karagdagang talahanayan na ito ay maaaring iharap sa anyo ng mga magagandang grap.



Kapag nagsusulat ng mga programa ginamit ko ang mga materyales. Nagpahayag ako ng pasasalamat sa may-akda.

Angkop para sa paksa

Kaugnay na mga paksa

Magdagdag ng isang puna

    • ngitinakangitixaxaok langhindi alamyahoonea
      bosskumamottangaoooo-ooagresibolihim
      sorrysayawsayaw2sayaw3kapatawarantumulonginumin
      humintomga kaibiganmabutigoodgoodsipolswoondila
      usokpumapalakpakkrayolaipahayagnakakainisdon-t_mentionpag-download
      initnakakainistumawa1mdapagpupulongnakikipag-usapnegatibo
      hindi_ipopcornparusahanbasahintakottakotpaghahanap
      panunuyasalamat_youitoto_clueumniktalamaksumang-ayon
      masamabeeeblack_eyeblum3namulamagyabanginip
      censoredkaaya-ayalihim2nagbabantatagumpayyusun_bespectacled
      shokrespektlolnagustuhanmaligayang pagdatingkrutoyya_za
      ya_dobryikatulongne_huliganne_othodimapusokpagbabawalmalapit
2 komentaryo
Ang kakaibang pagsasama ng NE555 sa negatibong driver. ((
Upang ang meander ay pumunta sa bukid, dapat silang konektado sa IP output.
Pagkasyahin Arduino para sa iyong sariling mga pangangailangan, siyempre, isang kapaki-pakinabang na negosyo, ngunit kamakailan nakuha, ang presyo ng isyu ay mas mababa sa 1t.r .:
Mga pagtutukoy ng UM24C
• display: 1.44 ", 128х128, kulay, pagtingin sa mga anggulo ay malapit sa 180º
• mga port ng input: USB Type Isang lalaki, Micro USB Type B na babae
• output port: USB Type Isang babae
• boltahe: 4.50-24.00V
• kasalukuyang lakas: 0-3.000A
• resolusyon ng pagpapakita ng boltahe: 0.01V
• pagpapakita ng resolution ng kasalukuyang lakas: 0.001A
• katumpakan ng pagsukat ng boltahe: ± (0.2% + 1 digit)
• kasalukuyang katumpakan ng pagsukat: ± (0.8% + 3 numero)
• Suporta sa Mabilis na Qualcomm: QC 2.0 at QC 3.0
• 10 mga cell ng memorya upang maiimbak ang sinusukat na kapasidad at enerhiya
• Pag-andar ng pagsukat ng paglaban ng micro USB cable
• manu-manong pagpili ng threshold ng pagsukat ng pagsukat: 0.00-0.30A
• pagpapakita ng temperatura, paglaban ng konektadong pag-load, lakas
• pagpapakita ng boltahe at kasalukuyang mga graph
• pagpapakita ng boltahe sa mga linya ng data ng USB port, kasalukuyang operating mode
• auto power off screen: 1-9 minuto, off
• ilaw ng screen: 0-5 (6 na antas)
• pagpapakita ng temperatura: sa mga degree Celsius o Fahrenheit
• tulong na on-line
• Pag-ikot ng screen 90º / 180º / 270º
• wireless two-way na koneksyon sa Bluetooth sa isang PC (SPP - Serial Port Profile)
ngiti

Pinapayuhan ka naming basahin:

Ipasa ito para sa smartphone ...