Мазмуну:
- 1 -кадам: Учурдагы трансформаторлор
- 2 -кадам: Сигналды кондициялоо
- 3 -кадам: Электр менен камсыздоо
- 4 -кадам: Санарип которгучтарга аналог
- 5 -кадам: Микроконтроллер
- 6 -кадам: Ассамблея
- 7 -кадам: Кодду жүктөө
- 8 -кадам: Калибрлөө
- 9 -кадам: Бүтүрүү
Video: AC Current Monitoring Data Logger: 9 Кадам (Сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Салам баарына, менин биринчи үйрөткүчүмө кош келиңиз! Күндүз мен өнөр жай жылытуучу жабдуулар менен камсыз кылган компаниянын сыноо инженери болом, түнкүсүн мен технологияга кызыккан хоббист жана DIY'erмин. Менин ишимдин бир бөлүгү жылыткычтардын иштешин текшерүүнү камтыйт, бул учурда мен 8 сааттын ичиндеги 8 түзмөктүн RMS учурдагы тартылышын көзөмөлдөп, кийинчерээк жыйынтыктарды графикке келтирүү үчүн маалыматтарды жазгым келет. Менде маалымат жазгычка кирүү мүмкүнчүлүгү бар, бирок ал башка долбоорго мурда эле берилген жана мага арзан баада бир нерсе керек болчу, ошондуктан мен бул негизги маалымат каталогун чогултууну чечтим.
Долбоор санариптик которгучка (ADC) аналог аркылуу аналогдук сенсорлорду окуу үчүн Arduino Uno колдонот жана SD картадагы убакыт мөөрү менен маалыматтарды жазат. Микросхемаларды долбоорлоодо көптөгөн теория жана эсептөөлөр бар, ошондуктан баарын түшүндүрүүнүн ордуна, мен аны кантип жасоону көрсөтөм. Эгерде сиз FULL хитти көргүңүз келсе, анда комментарийлерде мага билдириңиз, мен дагы түшүндүрөм.
ЭСКЕРТҮҮ:
Менде чыныгы RMS эсептөөлөрү боюнча көптөгөн суроолор бар болчу. Бул түзмөк толкундун чокусун кармоо үчүн жарым толкундуу түзөткүчтү колдонот, аны RMS берүү үчүн 0,707ге көбөйтүүгө болот. Демек, бул сызыктуу жүктөөлөр менен гана так натыйжа берет (б.а. өлчөнүүчү ток таза синус толкуну). Үч бурчтуу, тик бурчтуу же башка синус эмес толкун формаларын берген сызыктуу эмес материалдар же жүктөмдөр чыныгы RMS эсептөөсүн бербейт. Бул түзмөк AC токту гана өлчөйт, ал чыңалууну өлчөө үчүн иштелип чыккан эмес, ал кубаттуулук факторун эсептебейт же өлчөй албайт. Сураныч, менин башка көрсөтмөмдү караңыз, бул үчүн күч факторун эсептегичти кантип түзүү керек. Көптөгөн адамдар ошондой эле 2.5V борбордук линиясы бар түз AC туташтыргычы жакшыраак деп айтышкан, бирок бул татаалдыктарды алып келет, анткени ал санариптик ылдамдыктын ылдамдыгын, орточо/маалыматтын тегизделишин ж.б. камтыйт жана бул белгисиздик өлчөөдөн алда канча жогору чийки наркы. Жеке мен мүмкүн болгон жерде аппараттык чечимдерди жана жөнөкөй кодду артык көрөм, ошондуктан бул ыкма мени кызыктырбайт. Тактык боюнча, бул экинчисинен алда канча жакшы деп ишенем жана кийинчерээк менин жыйынтыктарымда калибрлөөдөн кийин 1.0ге жакын регрессиялык коэффициент бар экенин көрөсүз.
1 -кадам: Учурдагы трансформаторлор
Бул долбоор HMCT103C 5A/5MA ток трансформаторун колдонот. Ал өткөргүч аркылуу агып жаткан ар бир 5А үчүн 1: 1000 бурулуш катышына ээ, 5мА КТ аркылуу агат. Чыңалууну өлчөө үчүн КТнын эки терминалына резистор туташтырылышы керек. Бул учурда мен 220 Ом резисторун колдондум, ошондуктан Ом мыйзамын колдонуп V = IR, КТнын чыгымы 1,1 Вольт AC болот, ар бир 5мА КТ (же өлчөнүүчү токтун ар 5А). КТ резистор менен тактаны чечүү үчүн жана кээ бир приборлордун зымдары учуучу учтарды жасоо үчүн ширетилген. Мен 3,5 мм эркек аудио джек штепсельдери менен коргошундарды токтоттум.
Бул жерде ток трансформаторунун маалымат баракчасы
Маалымат жадыбалы
2 -кадам: Сигналды кондициялоо
КТнын сигналы алсыз болуп калат, ошондуктан аны күчөтүү керек. Бул үчүн uA741 кош рельстүү оп -ампти колдонуп, жөнөкөй күчөткүчтү бириктирдим. Бул учурда пайда Rf / Rin (150k / 1k) формуласын колдонуу менен 150гө коюлат. Бирок күчөткүчтөн чыккан сигнал дагы эле AC болуп саналат, оп-амптын диоду ACнын терс жарым циклин кесип, толкунду толкундуу DC сигналына тегиздөө үчүн оң чыңалууну 0.1uF конденсаторго өткөрөт. Төмөндө схеманы түзгөн бөлүктөр:
- V1-Бул диаграммада бул өзүм билемдик, ал жөн эле оп-амптын инверттелбеген киришине берилген сигналдын чыңалуусун билдирет.
- R1 - Бул кайтарым байланыштын каршылыгы (Rf) деп аталат жана 150k деп коюлган
- R2 - Бул киргизүү каршылыгы (Rin) деп аталат жана 1k деп коюлат
- 741 - Бул uA741 интегралдык схемасы
- VCC - Позитивдүү темир жол +12V
- VEE - Терс жеткирүүчү темир жол -12V
- D1 - Haf толкуну түздөөчү сигнал диод 1N4001би
- C3 - Бул капактор белгиленген убакытка чейин DC сигналын кармап турат
2 -сүрөттө ал Veroboard жана калай жез зымдын жардамы менен чогулганын көрө аласыз. PCB стенддери үчүн 4 тешик бургуланды, ошондуктан аларды тизип койсо болот (анткени сегиз канал бар, анткени сегиз күчөткүч схемасы болушу керек.
3 -кадам: Электр менен камсыздоо
Эгерде сиз муну нөлдөн баштап жасоону каалабасаңыз, анда жогоруда сүрөттөлгөндөй эле Кытайдан алдын ала куралган тактаны сатып алсаңыз болот, бирок сиз дагы 3ВА трансформаторуна муктаж болосуз (240Vдан 12Vга чейин). Сүрөттөгү мага £ 2.50 тегерегинде бааланган
Долбоорду иштетүү үчүн мен 12VDC менен кош темир жолду өз колум менен жасоону чечтим. Бул ыңгайлуу болгон, анткени оп -амперлерге +12V, 0V, -12V талап кылынат жана Arduino Uno 14 VDCге чейин каалаган жабдууну кабыл алат. Төмөндө схеманы түзгөн бөлүктөр:
- V1 - Бул 240В 50Гз розеткасынан келген камсыздоону билдирет
- T1 - Бул мен жаткан 3ВА кичинекей трансформатор. Трансформатордун экинчиликте борбордук краны болушу маанилүү, ал 0V, башкача айтканда жерге туташтырылат
- D1ден D4ке чейин - бул 1N4007 диоддорун колдонгон толук толкундуу көпүрө түзөткүчү
- C1 & C2 - 35V электролитикалык конденсаторлор 2200uF (оң жана терс ортосундагы потенциал 30Вга жетет деп 35В болушу керек)
- U2 - LM7812, 12В оң чыңалуу жөнгө салуучу
- U3 - LM7912, 12В терс чыңалуу жөнгө салуучу (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 автобусун колдонгондуктан, эгер кааласаңыз 16 каналга чейин көзөмөлдөөгө мүмкүндүк берип, 4 ADCге чейин кайрылууга болот дегенди билдирет.
Мен Fritzing аркылуу байланыштарды көрсөтүүгө аракет кылдым, бирок чектөөлөрдөн улам Сигнал Генераторун көрсөтө турган бажы бөлүктөрү жок. Күлгүн зым күчөткүч чынжырынын чыгуусуна туташкан, анын жанындагы кара зым бардык күчөткүч микросхемалары жалпы негизге ээ болушу керек экенин көрсөтөт. Ошентип, мен галстук пункттарын кантип жасаганымды көрсөтүү үчүн нан тактасын колдондум. Бирок, менин чыныгы долбоорумда аялдардын башына отуруп, Veroboardго жалгаштырылган үзүндүлөр бар жана бардык галстук чекиттер вероборго кошулган.
5 -кадам: Микроконтроллер
Жогоруда айтылгандай, мен тандаган контроллер Arduino Uno болчу, бул жакшы тандоо болчу, анткени анын бортунда көптөгөн функциялары бар, антпесе өзүнчө курулушу керек болчу. Мындан тышкары, ал атайын курулган "калканчтар" менен шайкеш келет. Бул жолу мен бардык жыйынтыктарды белгилөө үчүн реалдуу убакыт саатын жана SD карта жазуучусун жыйынтыктарды.csv же.txt файлына жаздырууну талап кылдым. Бактыга жараша, Arduino маалыматын каттоочу калкан экөө тең экинчисин камтыйт, алар кошумча Arduino тактасына кошумча ширетүүсүз түшөт. Калкан RTClib жана SD карта китепканалары менен шайкеш келет, андыктан эч кандай адистин кодунун кереги жок.
6 -кадам: Ассамблея
Мен 5 мм ridgid орто/аз тыгыздыктагы ПВХ (кээде пенопласт деп аталат) колдонуп, менин компоненттеримдин көбүн талкалап, кол өнөрчүлүк бычагы менен ыңгайлуу өлчөмгө кесип алдым. Бардык компоненттер прототип үчүн модулдук түрдө курулган, анткени эгерде баары туура эмес болуп калса, айрым бөлүктөрдү алып салууга мүмкүндүк берет, бирок ал чегилген ПКБ сыяктуу эффективдүү же тыкан эмес (мындан аркы иш) бул дагы секирүүчү зымдардын көптүгүн билдирет компоненттери.
7 -кадам: Кодду жүктөө
Кодду Arduino'го жүктөңүз же Github репоумдан кодду алыңыз
github.com/smooth-jamie/datalogger.git
8 -кадам: Калибрлөө
Теориялык жактан өлчөнгөн ток бир нече нерселердин жыйынтыгы болот:
Ченелген амперлер = ((((a *0,45)/150)/(1.1/5000))/1000, мында 'a' - күчөткүчтөн келген сигналдык чыңалуу
0.45-күчөткүч схемасынын Voutунун rms мааниси, 150-оп-амптин пайдасы (Rf / Rin = 150k / 1k), 1.1-ампердин ченелген ампасы 5А болгондо КТнын толук масштабдуу чыңалуусу, 5000-жөн гана 5А мА, жана 1000 - трансформатордогу бурулуштардын саны. Муну жөнөкөйлөтсө болот:
Ченелген ампер = (b * 9.216) / 5406555, мында ADC билдирилген мааниси
Бул формула Arduino 10-бит ADC аркылуу текшерилген жана мультиметрдин баалуулуктары менен Arduino тарабынан түзүлгөн баалуулуктардын ортосундагы айырма 11% га байкалган, бул кабыл алынгыс четтөө. Калибрлөөнүн менин эң жакшы көргөн ыкмасы - ADC маанисин vs Токту мультиметрге электрондук жадыбалда жазуу жана үчүнчү даражадагы полиномду түзүү. Бул жерден куб формуласы өлчөнүүчү токту эсептөөдө жакшы жыйынтык берүү үчүн колдонулушу мүмкүн:
(ax^3) + (bx^2) + (cx^1) + d
A, b, c жана d коэффициенттери Excelде жөнөкөй маалымат таблицасынан эсептелет, x - бул сиздин ADC маанисиңиз.
Маалыматтарды алуу үчүн мен керамикалык 1k өзгөрмөлүү резистор (реостат) жана 12в трансформаторду колдонуп, AC чыңалуусун 240Втан түшүрдүм, бул мага 13мАдан 100мАга чейин өзгөрмө токтун булагын түзүүгө мүмкүнчүлүк берет. Канчалык көп маалымат пункттары чогултулса, ошончолук жакшы болот, бирок мен так трендге жетүү үчүн 10 маалымат пунктун чогултууну сунуштайм. Тиркелген Excel шаблону сиз үчүн коэффициенттерди эсептейт, бул аларды ардуино кодуна киргизүү гана.
Коддун 69 -сабында коэффициенттерди кайда киргизүү керек экенин көрөсүз
chn0 float)));
бул Excel файлынын 1 -баракчасындагы формула менен бирдей:
y = 7E-13x3-4E-08x2 + 0.004x + 0.663
Кайсы каналдын x = adc0 сиз калибрлеп жатасыз
9 -кадам: Бүтүрүү
Аны долбоордун корпусуна салыңыз. Мен электр менен камсыздоону бүтүндөй күйгүзүү/өчүрүү үчүн которгуч менен бүтүрдүм жана IECтин "фигура 8" тармагынын туташтыргычы. Баарын бириктирип, аны сынап көрүүгө даярсыз.
Андан аркы иш
Бүт долбоор тез эле шылдыңдалды, андыктан өркүндөтүүгө, чегилген схемага, жакшыраак компоненттерге көп орун бар. Идеалында, бардыгы секиргендердин ордуна FR4ге чегилип же ширетилет. Мен мурда айткандай, мен айтпаган нерселер көп, бирок эгерде конкреттүү бир нерсе болсо, комментарийлерде мага билдирип коюңуз, мен инструкцияны жаңыртам!
Жаңыртуу 2016-12-18
Мен азыр биринчи төрт каналды көзөмөлдөө үчүн I2C "рюкзагын" колдонуп, 16x2 ЖК коштум, ал пост аркылуу келгенде акыркы төртүн көзөмөлдөө үчүн дагы кошулат.
Кредиттер
Бул долбоор DS3231 китепканасы, Adafruit ADS1015 китепканасы жана Arduino SD китепканасы, анын ичинде менин Arduino эскизимде колдонулган китепканалардын бардык авторлору тарабынан мүмкүн болду.
Сунушталууда:
GPS Cap Data Logger: 7 кадам (Сүрөттөр менен)
GPS Cap Data Logger: Бул жерде дем алыш күндөрү эң сонун долбоор, эгер сиз велосипед менен сейилдеп же сейилдеп жүргөн болсоңуз жана бардык тректериңизди/тректериңизди көзөмөлдөө үчүн GPS маалыматын каттоочу керек болсо … Курууну бүтүргөндөн кийин маалыматтарды GPSтин модулунан жүктөп алышты
Ultimate High тоолуу аба ырайы Balloon Data Logger: 9 кадам (Сүрөттөр менен)
Ultimate High тоолуу аба ырайы Balloon маалымат жазгыч: жогорку бийиктикте аба шарынын маалыматтарын жогорку бийиктиктеги аба шарынын маалыматын жазуучу менен жазыңыз. Бийик тоолуу аба шары, ошондой эле бийик тоолуу шар же HAB деп аталат, гелий менен толтурулган чоң шар. Бул шарлар платформа
Open Source Data Logger (OPENSDL): 5 кадам (Сүрөттөр менен)
Open Source Data Logger (OPENSDL): Бул долбоордун максаты, жок дегенде температураны, салыштырмалуу нымдуулукту, жарыктуулукту камтыган жана кошумча сенсорлорго жайылуучу имараттын иштөөсүн баалоо боюнча изилдөө үчүн арзан баадагы өлчөө системасын иштеп чыгуу, куруу жана сыноо, жана өнүктүрүү үчүн
Nest Thermostat History Data Logger: 6 кадам (сүрөттөр менен)
Nest Thermostat History Data Logger: Nest термостаты температураны, нымдуулукту жана мешти/АСтын колдонулушун көзөмөлдөйт жана колдонуучулар тарыхый маалыматтарды 10 күн ичинде гана көрө алышат. Мен тарыхый маалыматтарды чогулткум келди (> 10 күн) жана Google электрондук таблицасынын сценарийине кезигип калдым
Cardio Data Logger: 7 кадам (Сүрөттөр менен)
Кардио маалыматын каттоочу: Азыркы учурда жүрөктүн кагышын (HR) аныктай турган жана из анализин жүргүзө турган көптөгөн портативдүү түзмөктөр (смартфондор, акылдуу сааттар, смартфондор, …) бар болсо да, көкүрөк боолоруна негизделген системалар (жогорку бөлүктөгүдөй) Сүрөттөн) ст