Агуулгын хүснэгт:

AC гүйдлийн хяналт мэдээллийн өгөгдөл бүртгэгч: 9 алхам (зурагтай)
AC гүйдлийн хяналт мэдээллийн өгөгдөл бүртгэгч: 9 алхам (зурагтай)

Видео: AC гүйдлийн хяналт мэдээллийн өгөгдөл бүртгэгч: 9 алхам (зурагтай)

Видео: AC гүйдлийн хяналт мэдээллийн өгөгдөл бүртгэгч: 9 алхам (зурагтай)
Видео: 2020/03/25 ЕБС 10-р ангийн ТЕЛЕ хичээл: Мэдээллийн технологи - Өгөгдлийн сангийн үндэс 2 FORM үүсгэх 2024, Долдугаар сарын
Anonim
AC гүйдлийн хяналт мэдээллийн өгөгдөл бүртгэгч
AC гүйдлийн хяналт мэдээллийн өгөгдөл бүртгэгч

Сайн байна уу, миний анхны зааварчилгаанд тавтай морил! Өдрийн турш би аж үйлдвэрийн халаалтын төхөөрөмж нийлүүлдэг компанийн туршилтын инженер, шөнийн цагаар технологийн сонирхогч, DIY -ийн сонирхогч юм. Миний ажлын нэг хэсэг нь халаагчийн гүйцэтгэлийг туршиж үзэх явдал юм. Энэ тохиолдолд би 1000 цаг гаруй хугацаанд 8 төхөөрөмжийн RMS гүйдлийг хянаж, үр дүнг дараа нь график болгохын тулд өгөгдлийг бүртгэхийг хүсч байна. Би өгөгдөл бүртгэгчтэй болох боломжтой, гэхдээ энэ нь өөр төсөлд аль хэдийн орсон байсан бөгөөд надад бага зардалтай зүйл хэрэгтэй байсан тул би энэ үндсэн өгөгдөл бүртгэгчийг холбохоор шийдсэн.

Энэхүү төсөл нь Arduino Uno ашиглан аналог мэдрэгчийг аналоги тоон хөрвүүлэгч (ADC) ашиглан уншиж, өгөгдлийг SD картанд цагийн тэмдэгээр тэмдэглэдэг. Цахилгаан хэлхээг зохион бүтээхэд маш олон онол, тооцоо байдаг тул бүх зүйлийг тайлбарлахын оронд би үүнийг хэрхэн яаж хийхийг зааж өгөх болно. Хэрэв та FULL цохилтыг үзэх сонирхолтой байгаа бол коммент хэсэгт мэдэгдээрэй, би цаашид тайлбарлах болно.

ТАЙЛБАР:

Үнэн RMS тооцооллын талаар надад олон асуулт байсан. Энэ төхөөрөмж нь долгионы оргилыг авахын тулд хагас долгионы Шулуутгагч ашигладаг бөгөөд үүнийг дараа нь 0.707 -аар үржүүлж RMS өгөх боломжтой. Энэ нь зөвхөн шугаман ачааллын хувьд үнэн зөв үр дүнг өгөх болно (өөрөөр хэлбэл хэмжиж буй гүйдэл нь цэвэр синус долгион юм). Гурвалжин, тэгш өнцөгт эсвэл бусад синусын бус долгионы хэлбэрийг өгдөг шугаман бус хангамж эсвэл ачаалал нь RMS-ийн жинхэнэ тооцоог өгөхгүй. Энэ төхөөрөмж нь зөвхөн гүйдлийн хүчийг хэмждэг бөгөөд энэ нь хүчдэлийг хэмжихэд зориулагдаагүй, гэхдээ хүчдэлийн коэффициентийг тооцдоггүй. Үүнийг хийхийн тулд цахилгаан коэффициент хэмжигчийг хэрхэн бүтээх талаар миний зааврыг үзнэ үү. 2.5V төв шугамтай шууд AC холболт нь илүү дээр гэж олон хүмүүс хэлдэг боловч энэ нь дижитал түүвэрлэлтийн хурд, найдвартай дундажлах/өгөгдлийг жигд болгох гэх мэт хүндрэлүүд дагуулдаг бөгөөд энэ нь тодорхой бус байдал нь хэмжихээс хамаагүй өндөр юм. түүхий үнэ цэнэ. Би хувьдаа тоног төхөөрөмжийн шийдэл, боломжтой бол энгийн кодыг илүүд үздэг тул энэ аргыг сонирхдоггүй. Нарийвчлалын хувьд энэ нь сүүлчийнхээс хамаагүй дээр гэж би бодож байна, шалгалт тохируулгын дараа 1.0 -тэй ойролцоо регрессийн коэффициент байгааг миний үр дүнгээс хожим харах болно.

Алхам 1: Одоогийн трансформатор

Одоогийн трансформаторууд
Одоогийн трансформаторууд
Одоогийн трансформаторууд
Одоогийн трансформаторууд

Энэхүү төсөл нь HMCT103C 5A/5MA гүйдлийн трансформаторыг ашигладаг. Энэ нь 1: 1000 эргэлтийн харьцаатай бөгөөд дамжуулагчаар дамжих 5А гүйдэл бүрт 5мА нь СТ -ээр урсах болно. СТ -ийн хоёр терминал дээр хүчдэлийг хэмжихийн тулд резисторыг холбох шаардлагатай. Энэ тохиолдолд би 220 Ом эсэргүүцэл ашигласан тул Ом -ийн V = IR дүрмийг ашигласнаар СТ -ийн гаралт нь 5 ВА гүйдлийн 5мА тутамд (эсвэл хэмжсэн гүйдлийн 5А тутамд) 1.1 вольтын AC байх болно. СТ -ийг резистор болон зарим багажны утсаар туузаар гагнасан. Би 3.5 мм -ийн эрэгтэй аудио залгуурын залгуураар утсаа таслав.

Одоогийн трансформаторын мэдээллийн хуудсыг энд оруулав

Мэдээллийн хуудас

Алхам 2: Дохио тохируулах

Дохио тохируулагч
Дохио тохируулагч
Дохио тохируулагч
Дохио тохируулагч

СТ -ийн дохио сул байх тул үүнийг нэмэгдүүлэх шаардлагатай. Үүний тулд би uA741 хос төмөр замын op өсгөгч ашиглан энгийн өсгөгчийн хэлхээг гагнав. Энэ тохиолдолд Rf / Rin (150k / 1k) томъёог ашиглан ашиг орлогыг 150 болгож тохируулна. Гэсэн хэдий ч өсгөгчийн гаралтын дохио нь АС хэвээр байгаа бөгөөд оп-өсгөгчийн гаралт дээрх диод нь хувьсах гүйдлийн сөрөг хагас мөчлөгийг тасалж, эерэг хүчдэлийг 0.1uF конденсатор руу дамжуулж долгионыг долгиолсон DC дохио болгон хувиргадаг. Дугуйг бүрдүүлдэг хэсгүүдийг доор харуулав.

  • V1-Энэ диаграммд дур зоргоороо оруулсан бөгөөд энэ нь зөвхөн оп-өсгөгчийн урвуу оролтгүй оролтын дохионы хүчдэлийг илэрхийлнэ.
  • R1 - Энэ нь эргэлтийн эсэргүүцэл (Rf) гэж нэрлэгддэг бөгөөд үүнийг 150k гэж тохируулдаг
  • R2 - Үүнийг оролтын эсэргүүцэл (Rin) гэж нэрлэдэг бөгөөд үүнийг 1k гэж тохируулдаг
  • 741 - Энэ бол uA741 интеграцийн хэлхээ юм
  • VCC - Эерэг нийлүүлэлтийн төмөр зам +12V
  • VEE - Сөрөг нийлүүлэлтийн төмөр зам -12V
  • D1 - Хаф долгион нь 1N4001 дохионы диод юм
  • C3 - Энэхүү капактор нь DC дохиог тогтоосон хугацаанд барьдаг

Зураг 2 -т үүнийг Veroboard болон цагаан тугалган зэс утас ашиглан угсарсан болохыг харж болно. ПХБ -ийн зогсоолд зориулж 4 цооног өрөмдсөн тул тэдгээрийг овоолох боломжтой (найман суваг байдаг тул найман өсгөгчийн хэлхээ байх шаардлагатай.

Алхам 3: Цахилгаан хангамж

Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж

Хэрэв та үүнийг эхнээс нь хийх дургүй бол дээрх зураг дээрх шиг Хятадаас угсарсан хавтанг худалдаж авч болно, гэхдээ танд 3VA трансформатор хэрэгтэй болно (240V-аас 12V хүртэл доош). Зурган дээрх нэг зураг надад 2.50 фунт стерлингийн үнэтэй байсан

Төслийг дэмжихийн тулд би 12VDC хос төмөр замыг өөрөө хийхээр шийдсэн. Энэ нь тохиромжтой байсан, учир нь op -amps нь +12V, 0V, -12V шаарддаг бөгөөд Arduino Uno нь 14 VDC хүртэлх бүх хангамжийг хүлээн авах боломжтой. Дугуйг бүрдүүлдэг хэсгүүдийг доор харуулав.

  • V1 - Энэ нь 240В 50Гц сүлжээний залгуураас нийлүүлэлтийг илэрхийлнэ
  • T1 - Энэ бол миний хэвтэж байсан жижиг 3VA трансформатор юм. Трансформатор нь хоёрдогч хэсэгт 0V буюу газардуулгатай холбогдсон төв цорго байх нь чухал юм
  • D1 -ээс D4 хүртэл - Энэ бол 1N4007 диод ашигладаг бүрэн долгионы гүүр Шулуутгагч юм
  • C1 & C2 - 35V электролитийн конденсатор 2200uF (эерэг ба сөрөг хоорондох потенциал 30В хүрэх тул 35В байх ёстой)
  • U2 - LM7812 нь 12V эерэг хүчдэлийн зохицуулагч юм
  • U3 - LM7912 нь 12V сөрөг хүчдэлийн зохицуулагч юм (78xx ба 79xx IC хоорондын зүү ялгааг анхаарч үзээрэй!)
  • C3 & C4 - 100nF 25V электролитийн конденсаторыг зөөлрүүлнэ
  • C5 & C6 - 10uF керамик диск конденсатор

Би бүрэлдэхүүн хэсгүүдийг туузан хавтан дээр гагнаж, нүцгэн ганц судалтай цагаан тугалгатай зэс утсаар босоо замыг холбосон. Дээрх 3 -р зурагт миний DIY цахилгаан хангамжийг харуулав. Уучлаарай, зураг дээр маш олон холбогч байна!

Алхам 4: Дижитал хөрвүүлэгчийн аналог

Дижитал хөрвүүлэгчийн аналог
Дижитал хөрвүүлэгчийн аналог
Дижитал хөрвүүлэгчийн аналог
Дижитал хөрвүүлэгчийн аналог

Arduino Uno нь аль хэдийн 10 битийн ADC-тэй байсан боловч зөвхөн 6 аналог оролт байдаг. Тиймээс би ADS1115 16 бит бүхий ADC хоёр таслагчийг ашиглахаар шийдсэн. Энэ нь 2^15 = 32767 бит нь 0-4.096V (4.096V нь таслах ажиллагааны хүчдэл) -ийн хүчдэлийн түвшинг илэрхийлэх боломжийг олгодог бөгөөд энэ нь бит бүр 0.000125V байна гэсэн үг юм! Түүнчлэн, энэ нь I2C автобус ашигладаг тул 4 ADC -ийг шийдвэрлэх боломжтой бөгөөд хэрэв хүсвэл 16 хүртэлх сувгийг хянах боломжтой болно.

Би Fritzing ашиглан холболтыг дүрслэн харуулахыг хичээсэн боловч хязгаарлагдмал байдлаас шалтгаалан дохио үүсгэгчийг харуулах тусгай хэсэг байхгүй байна. Нил ягаан утас нь өсгөгчийн хэлхээний гаралттай холбогдсон бөгөөд түүний хажууд байгаа хар утас нь бүх өсгөгчийн хэлхээ нь нийтлэг ойлголттой байх ёстойг харуулж байна. Би талхны самбар ашиглан тэнцсэн оноогоо хэрхэн хийснээ харууллаа. Гэсэн хэдий ч миний бодит төсөл бол эмэгтэй толгойн хэсэгт сууж, Veroboard руу гагнаж, бүх тэнцсэн цэгийг veroboard дээр гагнаж байна.

Алхам 5: Микроконтроллер

Микроконтроллер
Микроконтроллер

Дээр дурдсанчлан миний сонгосон хянагч нь Arduino Uno байсан бөгөөд энэ нь маш сайн сонголт байсан, учир нь энэ нь маш олон тооны самбар дээр суурилагдсан бөгөөд тусдаа бүтээх шаардлагатай байсан. Нэмж дурдахад энэ нь тусгайлан бүтээсэн олон тооны "бамбай" -тай нийцдэг. Энэ тохиолдолд би бүх үр дүнг цаг хугацааны тамга дарах бодит цагийн цаг, үр дүнг.csv эсвэл.txt файлд бичихийн тулд SD карт бичигч шаардлагатай байв. Аз болоход, Arduino өгөгдөл бүртгэх бамбай нь хоёуланд нь нэмэлт гагнуур хийхгүйгээр анхны Arduino самбар дээр бэхлэх зориулалттай бамбайтай. Бамбай нь RTClib болон SD картны номын санд нийцдэг тул тусгай код шаардагддаггүй.

Алхам 6: Чуулган

Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
Чуулган

Би 5мм хэмжээтэй дунд/бага нягтралтай PVC (заримдаа хөөсөнцөр хавтан гэж нэрлэдэг) ашиглан ихэнх эд ангиудыг нурааж, гар урлалын хутгаар тохиромжтой хэмжээгээр хайчилж авав. Бүх бүрэлдэхүүн хэсгүүдийг прототипийн хувьд модульчлагдсан загвараар бүтээсэн бөгөөд хэрэв алдаа гарсан тохиолдолд эд ангиудыг салгаж авах боломжтой боловч сийлсэн ПХБ шиг үр ашигтай, цэвэр биш (цаашдын ажил) энэ нь хоорондоо олон тооны холбогч утас гэсэн үг юм. бүрэлдэхүүн хэсгүүд.

Алхам 7: Кодыг байршуулж байна

Кодыг Arduino -д байршуулах эсвэл миний Github репо -с кодыг аваарай

github.com/smooth-jamie/datalogger.git

Алхам 8: Калибровк хийх

Тохируулгын
Тохируулгын
Тохируулгын
Тохируулгын
Тохируулгын
Тохируулгын

Онолын хувьд хэмжсэн гүйдэл нь хэд хэдэн зүйлийг нэгтгэсний үр дүнд бий болно.

Хэмжсэн ампер = (((a *0.45)/150)/(1.1/5000))/1000, энд 'a' нь өсгөгчийн дохионы хүчдэл юм

0.45 бол өсгөгчийн хэлхээний Vout-ийн эргэлтийн утга, 150 нь op-amp-ийн ашиг (Rf / Rin = 150k / 1k), 1.1 нь амперийг хэмжих үед 5А, 5000 нь ердөө 5А мА, 1000 нь трансформаторын эргэлтийн хэмжээ юм. Үүнийг дараах байдлаар хялбарчилж болно.

Хэмжсэн ампер = (b * 9.216) / 5406555, энд b нь ADC -ийн мэдээлсэн утга юм

Энэхүү томъёог Arduino 10 битийн ADC ашиглан туршиж үзсэн бөгөөд мултиметр ба Arduino-ийн үүсгэсэн утгуудын хоорондох зөрүү 11% -иар ажиглагдсан нь хүлээн зөвшөөрөгдөхгүй хазайлт юм. Калибровк хийх миний сонгосон арга бол ADC -ийн утга vs Current -ийг мультиметр дээр хүснэгтэд бичиж, гурав дахь эрэмбэтэй полиномыг зурах явдал юм. Эндээс кубын томъёог ашиглан хэмжсэн гүйдлийг тооцоолохдоо илүү сайн үр дүнг өгч болно.

(ax^3) + (bx^2) + (cx^1) + d

A, b, c, d коэффициентүүдийг Excel дээр энгийн өгөгдлийн хүснэгтээс тооцоолсон болно, x бол таны ADC утга.

Мэдээлэл авахын тулд би керамик 1к хувьсах эсэргүүцэл (реостат), 12V трансформатор ашиглан AC -ийн хүчдэлийг 240В -аас бууруулж чадсан бөгөөд энэ нь 13mA -аас 100mA хүртэлх хувьсах гүйдлийн эх үүсвэрийг бий болгоход тусална. Илүү их өгөгдөл цуглуулах тусам илүү сайн байх болно, гэхдээ үнэн зөв чиг хандлагыг олж авахын тулд 10 мэдээллийн цэг цуглуулахыг санал болгож байна. Хавсаргасан Excel загвар нь коэффициентийг тооцоолох болно, үүнийг зөвхөн arduino код руу оруулах л үлдлээ.

Кодын 69 -р мөрөнд коэффициентийг хаана оруулахыг харах болно

float chn0 = ((7.30315 * pow (10, -13)) * pow (adc0, 3) + (-3.72889 * pow (10, -8) * pow (adc0, 2) + (0.003985811 * adc0) + (0.663064521)));

энэ нь excel файлын 1 -р хуудасны томъёотой ижил байна:

y = 7E-13x3-4E-08x2 + 0.004x + 0.663

Таны тохируулж буй сувгийн x = adc0 хаана байна

Алхам 9: Дуусгах

Дуусгах
Дуусгах
Дуусгах
Дуусгах
Дуусгах
Дуусгах
Дуусгах
Дуусгах

Төслийн хашлагад оруулна уу. Би тэжээлийн хангамжийг бүхэлд нь асаах/унтраах товчлуураар цахилгаан тэжээлийг унтраасан бөгөөд сүлжээний оролтын IEC "зураг 8" холбогч. Бүгдийг боож, туршиж үзэхэд бэлэн байна.

Цаашдын ажил

Төслийг бүхэлд нь маш хурдан доромжилсон тул сайжруулах, сийлсэн хэлхээ, илүү сайн эд ангиудыг ашиглах олон боломж бий. Хамгийн тохиромжтой нь бүхэл бүтэн хэсгийг үсрэхээс илүү FR4 дээр сийлсэн эсвэл гагнах болно. Өмнө нь хэлсэнчлэн миний дурдаагүй олон зүйл байгаа, гэхдээ хэрэв танд ямар нэгэн зүйл байгаа бол надад тайлбар дээр бичээрэй, би зааварчилгаагаа шинэчлэх болно!

2016 оны 18 -р сарын 12 -ны өдөр шинэчлэх

Би одоо 16x2 хэмжээтэй LCD дэлгэцийг I2C "үүргэвч" ашиглан эхний дөрвөн сувгийг хянахын тулд нэмж орууллаа.

Зээл

Энэхүү төслийг DS3231 номын сан, Adafruit ADS1015 номын сан, Arduino SD номын сан гэх мэт миний Arduino ноорог дээр ашигласан номын сангийн бүх зохиогчид боломжтой болгосон.

Зөвлөмж болгож буй: