Mundarija:

Ma'lumotlarni hisobga olish oqimini kuzatish: 9 qadam (rasmlar bilan)
Ma'lumotlarni hisobga olish oqimini kuzatish: 9 qadam (rasmlar bilan)

Video: Ma'lumotlarni hisobga olish oqimini kuzatish: 9 qadam (rasmlar bilan)

Video: Ma'lumotlarni hisobga olish oqimini kuzatish: 9 qadam (rasmlar bilan)
Video: “Atom” innovatsion ta’lim markazida kimyoviy tajriba. “Qo’lda olov yoqish” 2024, Noyabr
Anonim
Ma'lumotlar oqimini nazorat qiluvchi AC oqim
Ma'lumotlar oqimini nazorat qiluvchi AC oqim

Hammaga salom, mening birinchi darsimni xush kelibsiz! Kunduzi men sanoat isitish uskunalari bilan ta'minlaydigan kompaniyaning sinov muhandisiman, kechasi esa men texnologik havaskor va DIYerman. Mening ishimning bir qismi isitgichlarning ishlashini sinab ko'rishni o'z ichiga oladi, shu sababli men 8 ta qurilmaning RMS oqimini 1000 soatdan ortiq kuzatib borishni va natijalarni keyinchalik grafikaga yozib olishni xohlardim. Ma'lumotlarni yozuvchidan foydalanishim mumkin, lekin u boshqa loyihaga sodiq qolgan edi va menga arzon narxda biror narsa kerak edi, shuning uchun men bu asosiy ma'lumotlar katalogini yig'ishga qaror qildim.

Loyiha analog sensorlarni raqamli konvertor (ADC) orqali o'qish uchun Arduino Uno -dan foydalanadi va ma'lumotlarni SD -kartaga vaqt belgisi bilan yozib qo'yadi. Zanjirlarni loyihalashda ko'p nazariya va hisob -kitoblar mavjud, shuning uchun men hamma narsani tushuntirish o'rniga, men buni qanday qilishni ko'rsataman. Agar siz FULL hitni ko'rishni xohlasangiz, izohlarda menga xabar bering va men batafsilroq tushuntiraman.

ESLATMA:

Menda haqiqiy RMS hisob -kitoblari haqida ko'p savollar bor edi. Bu qurilma to'lqin cho'qqisini egallash uchun yarim to'lqinli rektifikatordan foydalanadi, uni RMSni berish uchun 0,707 ga ko'paytirish mumkin. Shunday qilib, u faqat chiziqli yuklar bilan aniq natija beradi (ya'ni o'lchanayotgan tok - sinus to'lqin). Uchburchak, to'rtburchaklar yoki boshqa sinus bo'lmagan to'lqin shakllarini beradigan chiziqli bo'lmagan materiallar yoki yuklar haqiqiy RMS hisobini bermaydi. Bu qurilma o'zgaruvchan tokni o'lchaydi, faqat u kuchlanishni o'lchash uchun mo'ljallanmagan, ehtimol u quvvat faktorini hisoblamaydi yoki o'lchamaydi. Iltimos, buni amalga oshirish uchun quvvat omili hisoblagichini yaratish bo'yicha boshqa ko'rsatmalarni ko'ring. Ko'p odamlar, shuningdek, 2,5 V markaziy chiziqli to'g'ridan -to'g'ri AC ulanishi yaxshiroq ekanligini aytishdi, ammo bu murakkabliklarni keltirib chiqaradi, chunki bu raqamli namuna olish tezligi, o'rtacha o'rtacha/ma'lumotlarni tekislash va boshqalarni o'z ichiga oladi va bu noaniqlik o'lchovdan ancha yuqori. xom qiymati. Shaxsan men imkon qadar apparat echimlari va oddiy kodni afzal ko'raman, shuning uchun men bu usulga qiziqmayman. Aniqlik nuqtai nazaridan, men bu ikkinchisidan ancha yaxshi deb o'ylayman va keyinroq natijalarimda kalibrlashdan keyin 1.0 ga yaqin regressiya koeffitsienti borligini ko'rasiz.

1 -qadam: Hozirgi transformatorlar

Hozirgi transformatorlar
Hozirgi transformatorlar
Hozirgi transformatorlar
Hozirgi transformatorlar

Ushbu loyiha HMCT103C 5A/5MA oqim transformatoridan foydalanadi. Supero'tkazuvchi orqali o'tadigan har 5A oqim uchun 1: 1000 burilish nisbati bor, CT orqali 5mA oqadi. KTning ikkita terminali bo'ylab kuchlanish o'lchash uchun rezistorni ulash kerak. Shu munosabat bilan men 220 Ohmli rezistordan foydalandim, shuning uchun Ohm V = IR qonunidan foydalanib, har bir 5mA KT oqimi (yoki o'lchangan oqimning har 5A) uchun KT chiqishi 1,1 volt AC bo'ladi. KT lar rezistor bilan taxtani echish uchun lehimlangan va uchuvchi simlar yasash uchun asboblar simlari bilan ishlangan. Men kabellarni 3,5 mm erkak ovozli ulagichlari bilan to'xtatdim.

Bu erda oqim transformatorining ma'lumotlar jadvali

Tafsilotli ro'yxat

2 -qadam: signalni sozlash

Signalni sozlash
Signalni sozlash
Signalni sozlash
Signalni sozlash

KTdan signal kuchsiz bo'ladi, shuning uchun uni kuchaytirish kerak. Buning uchun uA741 dual rail op amp yordamida oddiy kuchaytirgich sxemasini lehimladim. Bu holda daromad Rf / Rin (150k / 1k) formulasi yordamida 150 ga o'rnatiladi. Kuchaytirgichning chiqish signali hali ham o'zgaruvchan bo'lsa, op-ampning chiqishidagi diod o'zgaruvchan tokning salbiy yarim aylanishini uzib qo'yadi va to'lqinni to'lqinli to'lqinli to'lqinli signalga tekislash uchun musbat kuchlanishni 0,1uF kondansatkichga o'tkazadi. Quyida sxemani tashkil etuvchi qismlar keltirilgan:

  • V1-bu diagrammada o'zboshimchalik bilan berilgan, u faqat op-ampning teskari kirmasiga uzatiladigan signal kuchlanishini ifodalaydi.
  • R1 - bu teskari aloqa qarshiligi (Rf) sifatida tanilgan va 150k ga o'rnatilgan
  • R2 - bu kirish qarshiligi (Rin) sifatida tanilgan va 1k ga o'rnatilgan
  • 741 - bu uA741 integratsiyalashgan sxemasi
  • VCC - Ijobiy ta'minot liniyasi +12V
  • VEE - Salbiy ta'minot temir yo'li -12V
  • D1 - Haf to'lqinni to'g'rilash signalli diodasi 1N4001
  • C3 - Bu kapaktor belgilangan vaqt davomida shahar signalini ushlab turadi

2 -rasmda siz Veroboard va kalaylangan mis sim yordamida yig'ilganini ko'rishingiz mumkin. PCB stendlari uchun 4 ta teshik ochildi, shuning uchun ularni bir -biriga yopishtirish mumkin edi (chunki sakkizta kanal bor, sakkizta kuchaytirgich sxemasi bo'lishi kerak).

3 -qadam: Elektr ta'minoti

Quvvatlantirish manbai
Quvvatlantirish manbai
Quvvatlantirish manbai
Quvvatlantirish manbai
Quvvatlantirish manbai
Quvvatlantirish manbai

Agar siz uni noldan yasashni xohlamasangiz, yuqorida ko'rsatilgan rasmda bo'lgani kabi, Xitoydan oldindan yig'ilgan taxtani sotib olishingiz mumkin, lekin sizga baribir 3VA transformator kerak bo'ladi (240V dan 12V gacha pastga). Rasmdagi rasm menga taxminan 2,50 funt sterlingga tushdi

Loyihani kuchaytirish uchun men o'zim 12VDC ikkita temir yo'lli temir yo'lni o'rnatishga qaror qildim. Bu qulay edi, chunki op -amperlarga +12V, 0V, -12V kerak bo'ladi va Arduino Uno 14 VDC gacha bo'lgan har qanday quvvatni qabul qila oladi. Quyida kontaktlarning zanglashiga olib keladigan qismlari keltirilgan:

  • V1 - bu 240V 50 Gts kuchlanishli rozetkadan keladigan quvvat
  • T1 - bu men yotgan 3VA kichik transformator. Transformatorda ikkilamchi markaziy kran bo'lishi muhim, u 0V ga, ya'ni erga ulanadi
  • D1 dan D4gacha - bu 1N4007 diodli to'lqinli ko'prikli rektifikator
  • C1 va C2 - 35V 2200uF elektrolitik kondansatkichlari (35V bo'lishi kerak, chunki musbat va manfiy o'rtasidagi potentsial 30V ga etadi)
  • U2 - LM7812 - 12V musbat kuchlanish regulyatori
  • U3 - LM7912 - 12V manfiy kuchlanish regulyatori (78xx va 79xx IC o'rtasidagi pin farqlarini e'tiborga oling!)
  • C3 & C4 - 100nF 25V elektrolitik kondensatorlarni yumshatuvchi
  • C5 & C6 - 10uF seramika diskli kondansatörler

Men tarkibiy qismlarni lentaga lehimladim va vertikal yo'llarni yalang'och bitta yadroli mis sim bilan birlashtirdim. Yuqoridagi 3 -rasmda DIY -ning elektr ta'minoti ko'rsatilgan, afsuski, fotosuratda juda ko'p o'tish moslamalari bor!

4 -qadam: Raqamli konvertorlarga o'xshash

Raqamli konvertorlarga o'xshash
Raqamli konvertorlarga o'xshash
Raqamli konvertorlarga o'xshash
Raqamli konvertorlarga o'xshash

Arduino Uno allaqachon 10-bitli ADC-ga ega, ammo faqat 6 ta analog kirish mavjud. Shuning uchun men ADS1115 16-bitli ikkita ADC uzilishidan foydalanishni tanladim. Bu 2^15 = 32767 bitga 0-4.096V kuchlanish darajasini ko'rsatishga imkon beradi (4.096V-uzilishning ishchi kuchlanishi), bu har bir bit 0.000125V ni bildiradi! Bundan tashqari, u I2C avtobusidan foydalanganligi uchun, agar kerak bo'lsa, 16 ta kanalni kuzatishga imkon beradigan 4 ta ADCga murojaat qilish mumkin.

Men Fritzing yordamida ulanishlarni tasvirlashga harakat qildim, lekin cheklovlar tufayli signal generatorini ko'rsatish uchun maxsus qismlar yo'q. Binafsharang sim kuchaytirgich zanjirining chiqishiga ulangan, uning yonidagi qora sim barcha kuchaytirgich davrlari umumiy asosga ega bo'lishi kerakligini ko'rsatadi. Shunday qilib, men taqish nuqtalarini qanday tuzganimni tasvirlash uchun taxtadan foydalandim. Ammo mening haqiqiy loyihamda tanaffuslar ayol boshlarida o'tirib, Veroboard -ga lehimlangan va barcha bog'lanish nuqtalari veroboardga lehimlangan.

5 -qadam: Mikrokontroller

Mikrokontroller
Mikrokontroller

Yuqorida aytib o'tilganidek, men tanlagan boshqaruvchi Arduino Uno edi, bu juda yaxshi tanlov edi, chunki uning bortida ko'p funktsiyalar mavjud bo'lib, aks holda alohida qurilishi kerak edi. Bundan tashqari, u ko'plab maxsus "qalqonlar" bilan mos keladi. Shu munosabat bilan men barcha natijalarni vaqt tamg'asi uchun real vaqt soati va natijalarni.csv yoki.txt faylga yozib olish uchun SD -karta yozuvchisini talab qildim. Yaxshiyamki, Arduino ma'lumotlarini yozish qalqoni qo'shimcha lehimsiz, Arduino-ning dastlabki taxtasiga mos keladigan qalqonga ega. Qalqon RTClib va SD -karta kutubxonalari bilan mos keladi, shuning uchun hech qanday maxsus kod kerak emas.

6 -qadam: yig'ish

O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish

Men 5 mm uzunlikdagi o'rta/past zichlikdagi PVXdan (ba'zan ko'pikli taxta deb ham ataladi) foydalanganman, ko'p qismlarimni vintlardek kesib tashladim va uni ishchi pichoq bilan qulay o'lchamga kesib oldim. Barcha komponentlar prototip uchun modulli usulda qurilgan, chunki agar biror narsa noto'g'ri ketsa, alohida qismlarni olib tashlashga imkon beradi, lekin u o'yilgan PCB kabi unchalik samarali va tartibli emas (keyingi ish), bu ham simlar orasidagi ko'p sonli simlarni bildiradi. komponentlar.

7 -qadam: Kodni yuklash

Kodni Arduino -ga yuklang yoki Github repo -dan kodni oling

github.com/smooth-jamie/datalogger.git

8 -qadam: Kalibrlash

Kalibrlash
Kalibrlash
Kalibrlash
Kalibrlash
Kalibrlash
Kalibrlash

Nazariy jihatdan o'lchangan oqim bir nechta narsalarning birlashuvi natijasida bo'ladi:

O'lchangan amper = (((a *0,45)/150)/(1.1/5000))/1000, bu erda 'a' - kuchaytirgichdan signal kuchlanishi

0,45-kuchaytirgich zanjirining Vout rms qiymati, 150-op-amp kuchayishi (Rf / Rin = 150k / 1k), 1,1-o'lchangan amper 5A, 5000-oddiy 5A mA, va 1000 - transformatordagi burilishlar soni. Buni soddalashtirish mumkin:

O'lchangan amper = (b * 9.216) / 5406555, bu erda b - ADC hisoboti qiymati

Ushbu formula Arduino 10-bitli ADC yordamida sinovdan o'tkazildi va multimetr qiymatlari bilan Arduino tomonidan ishlab chiqarilgan qiymatlar o'rtasidagi farq 11% ga kuzatildi, bu qabul qilinishi mumkin bo'lmagan og'ish. Kalibrlashning afzal ko'rgan usuli - ADC qiymatini va boshqalar oqimini multimetrda elektron jadvalda qayd etish va uchinchi tartib polinomini tuzish. Bundan o'lchangan tokni hisoblashda yaxshiroq natijalar berish uchun kub formulasidan foydalanish mumkin:

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

A, b, c va d koeffitsientlari Excelda oddiy ma'lumotlar jadvalidan hisoblanadi, x - bu sizning ADC qiymatingiz.

Ma'lumotni olish uchun men o'zgaruvchan tok manbaini 13 mA dan 100 mA gacha ishlab chiqarishga imkon beradigan 240 V kuchlanishli AC kuchlanishini pasaytirish uchun keramik 1k o'zgaruvchan qarshilik (reostat) va 12V transformatordan foydalanardim. Qancha ko'p ma'lumot to'plangan bo'lsa, shuncha yaxshi bo'ladi, lekin men aniq tendentsiyaga ega bo'lish uchun 10 ma'lumot punktini to'plashni taklif qilaman. Qo'shilgan Excel shabloni siz uchun koeffitsientlarni hisoblab chiqadi, ularni arduino kodiga kiritish kifoya.

Kodning 69 -qatorida siz koeffitsientlarni qaerga kiritish kerakligini ko'rasiz

chn0 float)));

bu Excel faylining 1 -varag'idagi formula bilan bir xil:

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

Bu erda siz sozlayotgan kanalning x = adc0

9 -qadam: tugatish

Tugatish
Tugatish
Tugatish
Tugatish
Tugatish
Tugatish
Tugatish
Tugatish

Uni loyiha qutisiga joylashtiring. Men hamma narsani yoqish/o'chirish uchun quvvat tugmachasini va elektr ta'minoti uchun IEC "8 -rasm" ulagichi bilan elektr ta'minotini o'chirdim. Hammasini bir joyga to'plang va uni sinab ko'rishga tayyormiz.

Keyingi ish

Butun loyiha juda tez masxara qilindi, shuning uchun takomillashtirish, o'yilgan sxemalar, yaxshiroq komponentlar uchun joy ko'p. Ideal holda, hamma narsa juda ko'p o'tish moslamalariga emas, balki FR4 -ga o'ralgan yoki lehimlangan bo'lishi kerak. Yuqorida aytib o'tganimdek, men aytmagan narsalar juda ko'p, lekin agar biror narsa bo'lsa, sharhlaringizda menga xabar bering va men ko'rsatma ma'lumotlarini yangilayman!

2016-12-18 yangilang

Men hozirda birinchi to'rtta kanalni kuzatish uchun I2C "ryukzak" yordamida 16x2 LCD qo'shdim, u post orqali kelganida oxirgi to'rttasini kuzatish uchun boshqasini qo'shadi.

Kreditlar

Bu loyiha mening Arduino eskizimda ishlatilgan barcha kutubxonalar mualliflari, shu jumladan DS3231 kutubxonasi, Adafruit ADS1015 kutubxonasi va Arduino SD kutubxonasi yordamida amalga oshirildi.

Tavsiya: