Мазмуну:

Arduino Pro-mini Маалыматты жазуучу: 15 кадам
Arduino Pro-mini Маалыматты жазуучу: 15 кадам

Video: Arduino Pro-mini Маалыматты жазуучу: 15 кадам

Video: Arduino Pro-mini Маалыматты жазуучу: 15 кадам
Video: Crypto Pirates Daily News - Tuesday January 19th, 2022 - Latest Crypto News Update 2024, Июль
Anonim
Arduino Pro-mini маалыматтарды каттоочу
Arduino Pro-mini маалыматтарды каттоочу

Ачык булак Arduino маалымат каттоочу үчүн нускамаларды түзүңүз

Disclaimer: Төмөнкү дизайн жана код жүктөө жана колдонуу үчүн бекер, бирок эч кандай кепилдик же кепилдик менен келбейт.

Мен биринчи кезекте бул маалымат жазуучу үчүн идеяны жараткан жана колдонулган кодго жана сенсорлорго салым кошкон таланттуу адамдарга ыраазычылык билдирип, алдыга жылдырышым керек. Биринчиден, маалымат жазуучу үчүн идея Эдвард Маллондун абдан жакшы иштелип чыккан жана жакшы түшүндүрүлгөн (кечирим суроолорубуз жакшы эмес) келип чыккан: https://thecavepearlproject.org/2017/06/19/ ардуин…

Экинчиден, бул жерде колдонулган топурактын нымдуу сенсорлору, ошондой эле аларды иштетүү үчүн код/китепкана Catnip Electronics тарабынан иштелип чыккан жана курулган. Бул жогорку сапаттагы сенсорлор жана абдан бышык. Аларды кайдан сатып алуу жана иштетүү үчүн кодду алуу боюнча маалымат (рахмат Инго Фишерге) төмөндө келтирилген.

1 -кадам: Керектүү материалдар, шаймандар, жабдуулар

Керектүү материалдар, шаймандар, жабдуулар
Керектүү материалдар, шаймандар, жабдуулар

Pro-mini Arduino тактасы. Бул колдонмо үчүн биз ачык булакты (бардык бөлүктөрүбүз сыяктуу) кытай өндүрүшүнүн про-мини клондорун (5V, 16MHz, ATmega 326 микропроцессор) колдонобуз (1а-сүрөт). Бул такталарды Aliexpress, Ebay жана ушул сыяктуу вебсайттардан $ 2US $ дан арзан сатып алууга болот. Бирок, башка тактайларды оңой эле колдонсо болот (керектүү сенсорлордун чыңалуу талаптарын, ошондой эле программанын эс тутумунун талаптарын эске алыңыз).

SD карта жана реалдуу убакыт сааты (RTC) Deek-Robot тарабынан чыгарылган модулу (ID: 8122) (Figure 1b). Бул модулга DS13072 RTC жана micro-sd карта окугучу кирет. Бул такталар 2 АКШ долларынан төмөн турат жана абдан бекем.

Arduino нано (ооба-"нано") винт-терминалдуу адаптер, ошондой эле Aliek же ушуга окшош 2 АКШ долларынан арзаныраак сатып ала турган Дик-Роботту чыгарды (1с-сүрөт). Көрүнүп тургандай, биз жөн гана Aliexpressти жакшы көрөбүз.

22 гейдж катуу өзөктүү изоляцияланган зым (1d-сүрөт).

Маалыматтарды каттоочу кутуча (1е-сүрөт). Биз "изилдөө класстагы" кутучаларды колдонобуз, бирок арзан пластикалык буюмдар көпчүлүк учурда жакшы иштейт.

Батарея корпусу 4 AA NiMh батарейка үчүн (Сүрөт 1f). Буларды Aliexpressтен болжол менен сатып алса болот. $ 0,20 ар бири (ооба - 20 цент). Акчаңызды кымбатыраак батарейкаларга коротпоңуз.

6V, болжол менен 1W күн панели. Aliexpressтен 2 АКШ долларынан арзан сатып алса болот.

Лампочка, ширетүүчү жана өткөн типтеги флюс.

Ысык желим мылтык.

2 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Курууга керектүү убакыт: болжол менен 30-60 мүнөт.

Нано терминалынын адаптерин ширетүүгө даярдаңыз.

Бул демонстрация үчүн, биз I2C кыртышынын нымдуулук сенсорлорун туташтыруу үчүн нано винт терминал адаптерин даярдайбыз. Бирок, бир аз чыгармачылык менен, бурама терминалдар башка түзмөктөрдү жеңилдетүү үчүн ар кандай жолдор менен даярдалышы мүмкүн. Эгерде I2C эмне экенин билбесеңиз, төмөнкү вебсайттарды карап көрүңүз:

howtomechatronics.com/tutorials/arduino/ho…

www.arduino.cc/en/Reference/Wire

Нано бурамалуу адаптерлерди колдонуу идеясы Эдвард Маллондун сонун маалыматтарды жазуучу дизайнынан алынган:

thecavepearlproject.org/2017/06/19/arduino…

3, 5, 9, 10 жана 11 -позицияларда чоң жана кичине казыктардын ортосундагы бурамалуу терминалдын арткы жагындагы издерди кескиле (терминалдын үстүнөн саноо) (2 -сүрөт). Бул издер бурамалуу терминалда "RST", "A7", "A3", "A2", & "A1" энбелгилерине туура келет. Эгерде сизде 'Dremel' тибиндеги курал болсо, издерди кесүү бир топ оңой, бирок эгерде жок болсо, кичинекей бычак оңой иштейт. Өзүңдү кыйба! Винт терминалындагы жана про-минидеги энбелгилердин баары бирдей эместигине көңүл буруңуз (нано менен про-мини ар кайсы жерде кээ бир төөнөгүчтөргө ээ). Бул бул дизайндагы ыңгайсыздыктардын бири, бирок, эгер кааласаңыз, бүткөндөн кийин терминал тактасын кайра белгилөө оңой.

Этияттык менен кырып алыңыз (Дремел же кичинекей бычак менен), эпоксиддин жука катмары 9, 10 жана 11 чоң казыктарга жанаша (нано терминалында 'A3', 'A2', 'A1' деп белгиленген) (Сүр. 2). Эпоксидин астындагы ачык жез каптоо Arduino про-мини тактасына негизделген. Биз кийинчерээк бул ачык бөлүктү чектеш казыктарга ширетебиз, ошону менен үч жерге буралган терминал менен камсыз кылабыз.

3 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Узундугу 8 см болгон 8 изоляцияланган 22 калибрлүү зымды кесип, бир четинен 5 мм жана экинчи четинен 3 мм изоляцияны кескиле. Биз катуу негизги зымды колдонууну сунуштайбыз.

Бул зымдардын төртөөсүн алыңыз, бир четин 90 градуска бүгүңүз (аягы 5 мм же ачык зым менен) жана * туурасынан * (башкача айтканда, бардык казыктарды көп ширетүү жана агым менен бириктирүү) төмөнкү пункттарга бүгүңүз:

Зым 1: чоң казыктар 3, 4 жана 5 (нано терминалында 'RST', '5V', 'A7' деп белгиленген). Биз бул үч бурамалуу терминалды үч VCC терминалына өзгөртөбүз (Сүр. 3).

4 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Wire 2: чоң казыктар 9, 10 жана 11 (нано терминалында 'A3', 'A2', 'A1' деп белгиленген), ошондой эле мурда ачык болгон жез каптоо. Көп ширетүүнү колдонуңуз. Эгерде ал башаламан көрүнсө, кабатыр болбоңуз. Биз бул үч бурамалуу терминалды үч жер терминалына (-) терминалга өзгөртөбүз (Сүр. 4).

5 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Зым 3: чоң казыктар 13, 14 жана 15 (нано терминалында 'REF', '3V3', 'D13' деп белгиленген). Биз бул үч бурамалуу терминалды I2C байланыштары үчүн үч A5 SCL терминалына өзгөртөбүз (Сүр. 5).

6 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Wire 4: чоң казыктар 28, 29 жана 30 (нано терминалында 'D10', 'D11', 'D12' деп белгиленген). Биз бул үч бурамалуу терминалды I2C байланыштары үчүн үч A4 SDA терминалына өзгөртөбүз (Сүр. 6).

7 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Ар бир кичинекей (дагы бир жолу айтам - кичине) казыктарга 9, 10 жана 11 (нано терминалында 'A3', 'A2', 'A1' деп белгиленген) бир зым менен ширеткиле (7 -сүрөт).

8 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Solder

калган зымды чоң пинге 22 (нано терминалында 'D4' деп белгиленген) (8 -сүрөт).

9 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Ар бир зымдын бекер учун Дик-Роботтун маалымат жазуучу калканчындагы тиешелүү пин-тешиктерине (9-сүрөт):

чоң пин 'RST+5V+A7' 5V пин тешигине

чоң пин 'A3+A2+A1' GND пин тешигине

кичинекей пин 'A3' SCK пин тешигине

кичинекей пин 'A2' MISO пин тешигине

кичинекей пин 'A1' MOSI пин тешигине

чоң казык 'REF+3V3+D13' SCL пин тешигине

чоң пин 'D10+D11+D12' SDA пин тешигине

жана чоң пин 'D4' CS пин тешигине

10 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Сураныч, биз бул жерде нано энбелгилерин жөн гана туташуу үчүн камсыздайбыз. Бул энбелгилер мини-тактадагы казыктарга туура келбейт, алар бурама терминалга салынгандан кийин.

Про-мини тактанын астынан A4 жана A5 тешиктерине 6 см узундуктагы эки зымды кошуңуз (Сүр. 10).

11 -кадам: Инструкцияларды түзүү

Инструкциялар
Инструкциялар

Про-мини тактасына Solder казыктары жана бүткөн сай терминалына салыңыз. A5 жана A4 зымдарын нано тактасындагы D12 (A4) жана D13 (A5) терминалдарына салууну унутпаңыз. Ар дайым Arduino жана бурама терминал этикеткаларындагы төөнөгүчтөр дал келбей турганын эстен чыгарбаңыз (про-мини жана нано такталарында түрдүү пин түзүлүштөрү бар).

CR 1220 батарейкасын жана micro-sd картасын журналга тактага салыңыз. Биз сыйымдуулугу 15 ГБдан ашпаган SD карталарды колдонобуз, анткени чоңураак карттар менен кыйынчылыктар болгон. Биз карталарды FAT32 форматында колдонобуз.

Акыр -аягы, бардык ширетилген муундарды жаап, бардык зымдарды терминалдын тактайына ысык желим менен бекиңиз.

Такта азыр колдонууга даяр. Толтурулган такта эми мындай болушу керек: 11 -сүрөт.

12-кадам: Талаа колдонуу үчүн маалыматтарды каттоочу орнотуу

Талаа колдонуу үчүн маалыматтарды каттоочу орнотуу
Талаа колдонуу үчүн маалыматтарды каттоочу орнотуу

Маалыматты каттоочуңуздун маалымат чогултуучу кутусуна түшүп кетүүсүн алдын алуу үчүн, ошондой эле байланыш түйүндөрүнө оңой жетүүнү камсыз кылуу үчүн, биз стабилдештирүүчү платформа түзүүнү сунуштайбыз. Платформа ошондой эле суу каптаган учурда электрониканы кутунун түбүнөн эң аз дегенде бир нече сантиметр аралыкта сактайт. Биз 1.5мм акрил баракты колдонобуз жана аны 4мм болт, гайка жана шайба менен маалымат жазуучуга туташтырабыз (12-сүрөт).

13 -кадам:

Сүрөт
Сүрөт

Биз ачык булак I2C сыйымдуулук түрүндөгү топурактын ным сенсорлорун колдонобуз. Биз аларды Catnip Electronicsтен сатып алабыз (төмөндөгү вебсайт). Аларды Tindieден сатып алса болот жана стандарттуу модель үчүн болжол менен $ 9US жана орой модель үчүн $ 22US турат. Биз катаал версияны талаа эксперименттеринде колдондук. Алар абдан күчтүү жана анча кымбат эмес коммерциялык альтернативаларга окшош аткарууну сунушташат (биз эч кимди Фронт -стритке койбойбуз, бирок кадимки шектүүлөрдү билсеңиз керек).

Catnip Electronics I2C сенсору бул окуу куралында көрсөтүлгөн:

бул жерден сатып алыңыз:

arduino китепканасы:

Githubдагы arduino китепканасы:

I2C сенсорунан A5 бурама терминалдарынын бирине сары зымды тиркеңиз. Жашыл зымды I2C сенсорунан A4 терминалдарынын бирине туташтырыңыз. Сенсордун кызыл жана кара зымдары тийиштүү түрдө VCC жана жер терминалдарына барат.

Батарея корпусуна төрт заряддалган NiMh батареясын коюңуз. Кызыл (+) зымды маалымат каттоочудагы RAW пинге туташтырыңыз (б.а., про-мини тактасындагы RAW пин) (бирок төмөндөгү "энергияны үнөмдөө" бөлүмүн караңыз). Кара (-) зымды маалымат жазуучудагы жерге төөнөгүчтөрдүн бирине тиркеңиз.

Узак мөөнөттүү талаада колдонуу үчүн 6В 1W күн панелин журналга туташтырыңыз. Күн панели маалымат каттоочу иштетүү жана батарейканы күндүз кубаттоо үчүн колдонулат, ал тургай булуттуу асмандын астында иштейт (кар көйгөй болсо да).

Биринчиден, күн панелинин оң терминалында ~ 2A Schottky диодун ширетүү. Бул күн радиациясы болбогондо токтун кайра күн панелине агып кетишине жол бербейт. Муну унутпаңыз, болбосо бат эле батарейкасы түгөнөт.

(+) Терминалын күн панелинен (б.а. диоддон) журналдагы RAW пинге (б.а., pro-mini боюнча RAW пин) жана (-) терминалын күн панелинен жердин бирине туташтырыңыз. журналдагы терминалдар.

Бул орнотуу про-мини тактасында орнотулган чыңалуу жөнгө салуучуга күн панелинен да, батарейка пакетинен да келген чыңалууну жөнгө салууга мүмкүндүк берет. Азыр… Мен бул NiMh батареяларын кубаттоо үчүн идеалдуу орнотуу эмес экенин айтам (идеалдуу шарттарда деле кыйын). Бирок, биз колдонгон күн панелдери күндүн ачык шартында болжол менен 150мАны өчүрөт, бул 0,06 С (C = батарейканын кубаттуулугуна) туура келет, бул бизди жөнөкөй, коопсуз жана ишенимдүү кубаттоо ыкмасы экенин далилдеди. биздин жазуучулар үчүн. Биз аларды Колорадодо бир жылга чейин талаада ушундай чуркап жүрдүк. Бирок, жоопкерчиликтен баш тартууну караңыз - биздин бакчылар эч кандай кепилдик же кепилдик менен келишет. Батареяларды же күн батареяларын талаада колдонгонуңузда өрт чыгуу коркунучу бар. Абайла. Бул дизайнды өз тобокелиңизге колдонуңуз!

Берилиштерди жана батарейканы аба ырайына каршы коробкага салыңыз (Сүр. 13).

14 -кадам: Электр энергиясын үнөмдөө

Биз көбүнчө про-мини жана маалымат жазуучу такталарынан электр диоддорун өчүрөбүз. Бул диоддордун изин устара менен кылдаттык менен кесүүгө болот (төмөндөгү шилтемени караңыз). Ар бир светодиод 5В учурда 2,5 мА токту керектейт (төмөндөгү шилтеме). Бирок, көптөгөн колдонмолор үчүн бул көлөмдөгү электр энергиясын жоготуу анча деле чоң болбойт жана изилдөөчү жөн эле электр диоддорун ошол бойдон калтыра алат.

www.instructables.com/id/Arduino-low-Proje…

Биз ошондой эле 'LowPower.h' китепканасын иштетебиз ('rocketscream' тарабынан; шилтеме төмөндө берилген), аны колдонуу абдан оңой жана журналдын аралыгы ортосунда электр энергиясын керектөөнү кыйла азайтат.

github.com/rocketscream/Low-Power

Про-мини жана маалымат жазуу тактасынан кубаттуулуктун светодиоддорун алып салып, LowPower.h китепканасын иштеткенден кийин (төмөндөгү 'кодду' караңыз), журнал жазуучу ca. Уктоодо 5Вда 1мА ток. Үч I2C сенсорун бир убакта иштетип, уйку режиминдеги логер (үлгүлөрдү кайталоонун ортосунда) 5Вда 4.5мА, ал эми тандоодо болжол менен 80мА керектейт. Бирок, үлгүлөрдү алуу өтө тез жана сейрек кездешкендиктен, 80мА учурдагы чүчүкулак батареяны сарптоого олуттуу салым кошпойт.

Күн батареяларын колдонбогондо көбүрөөк энергияны үнөмдөсө болот (+) батарея терминалын түз киргичтин VCC пинине туташтыруу. Бирок, RAW пинге эмес, түздөн-түз VCCге туташуу борттогу чыңалуу жөндөгүчүнөн оолак болот жана сенсорлорго ток жөнгө салуучу аркылуу өткөрүлгөндөй дээрлик туруктуу болбойт. Мисалы, батарейка күндөр жана жумалар бою түгөнгөндө чыңалуу азаят жана көп учурларда бул сенсордун көрсөткүчтөрүнүн олуттуу өзгөрүшүнө алып келет (сиз колдонуп жаткан сенсорлорго жараша). Күн панелин VCCге түз туташтырбаңыз.

15 -кадам: Код

Биз үч I2C топурактын нымдуу сенсорлору менен маалымат каттоочу иштетүү үчүн эки эскизди камтыйбыз. Биринчи эскиз 'logger_sketch' ар бир сенсордон алынат жана сыйымдуулук жана температура маалыматтарын SD картка 30 мүнөт сайын киргизет (бирок колдонуучу оңой эле өзгөртө алат). Экинчи эскиз 'ChangeSoilMoistureSensorI2CAddress' колдонуучуга сенсорлордун ар бирине I2C даректерин дайындоого мүмкүндүк берет, андыктан алар бир убакта маалыматтарды каттоочу тарабынан колдонулушу мүмкүн. 'Logger_sketch' даректери 25, 26 жана 27 -саптарда өзгөртүлүшү мүмкүн. Сенсорду иштетүү үчүн керектүү китепканаларды Githubдан тапса болот.

Сунушталууда: