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

Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL): 5 алхам (зурагтай)
Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL): 5 алхам (зурагтай)

Видео: Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL): 5 алхам (зурагтай)

Видео: Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL): 5 алхам (зурагтай)
Видео: Мария Жеймсийн аллага | Дөрвөн жилийн хүйтэн нууц 2024, Долдугаар сарын
Anonim
Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL)
Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL)
Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL)
Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL)
Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL)
Нээлттэй эх сурвалжийн мэдээлэл бүртгэгч (OPENSDL)

Энэхүү төслийн зорилго нь доод тал нь температур, харьцангуй чийгшил, гэрэлтүүлгийг багтаасан, нэмэлт мэдрэгчтэй байх боломжтой барилгын гүйцэтгэлийг үнэлэх судалгааг хийх өртөг багатай хэмжих системийг зохион бүтээх, бүтээх, турших, эдгээр төхөөрөмжийн загварыг хөгжүүлэхэд оршино..

Үүний үр дүнд байгаль орчны олон параметрүүдийг нэг дор бүртгэх замаар гүйцэтгэлийн үнэлгээнд шаардагдах хэмжилтийг үр ашигтай, боломжийн түвшинд хийх боломжийг оролцогч талуудад олгодог, өөрчилсөн, боломжийн системийг бий болгодог. Нээлттэй эх сурвалжийн мэдээлэл бүртгэгчийг (OPENSDL) HOBO U12-012 өгөгдөл бүртгэгчтэй харьцуулсан болно. Энэхүү арилжааны систем нь температур, RH, гэрэлтүүлэг, бусад мэдрэгчийн нэг гадаад суваг гэсэн 3 параметрийг хэмжих боломжтой. Бусад параметрүүдийг хэмжихийн тулд өөр мэдрэгч төхөөрөмж шаардлагатай болно. Хэмжих параметрүүдийн шинж чанар нь хувийн тоног төхөөрөмж, програм хангамжаар хязгаарлагддаг бөгөөд энэ нь системийг тодорхой нарийвчлалтайгаар тодорхой параметрүүдийг хэмжих боломжийг хязгаарладаг. HOBO U12-012 нь ойролцоогоор 13,000 185 (185 доллар) үнэтэй байдаг бол OPENSDL нь, 4, 605 (66 доллар) үнэтэй байдаг бөгөөд энэ нь арилжааны түншүүдийн бараг гуравны нэг юм.

Arduino Uno -ийн тусламжтайгаар температур, RH, гэрлийн түвшинг (гэрэлтүүлгийг) хянах нээлттэй эх сурвалж бүхий өгөгдөл бүртгэгч Энэ бол OPENSDL өгөгдөл бүртгэгчийг хөгжүүлэх DIY юм.

Шаардлагатай хугацаа: гагнах ажилд 2-3 цаг, савлахад 5 цаг (4 цаг - 3D хэвлэх, лазер хайчлахад 1 цаг) Шаардлагатай ур чадвар: Гагнах, програмчлал, электроникийн талаар огт мэдэхгүй эсвэл огт мэдэхгүй

Шаардлагатай эд ангиуд:

  1. Кабельтай Arduino Uno
  2. Өгөгдөл бүртгэх бамбай
  3. CR1220 зоосны батерей
  4. BME280 температурын чийгшлийн даралт мэдрэгчийн хагарах самбар
  5. TSL2561 гэрэл мэдрэгчийн таслах самбар
  6. ESP01-8266 Wi-Fi модуль
  7. RJ-9 эрэгтэй, эмэгтэй холбогч
  8. Arduino -д зориулсан толгойн бамбай
  9. SD санах ойн карт (дурын багтаамж)
  10. Векторын самбар (26 x 18 цооног)
  11. 8 АА зай Зай эзэмшигч

Шаардлагатай хэрэгсэл:

  • Гагнуурын төмөр (35W)
  • Гагнуурын утас
  • Утас таслагч
  • Crimper хэрэгсэл
  • Мультиметр

Шаардлагатай програм хангамж: Arduino IDE (1.0.5 ба түүнээс дээш)

Arduino номын санг ашигласан:

  • Утасны номын сан
  • SparkFun TSL2561 номын сан
  • Кактус BME280 олон мэдрэгчтэй номын сан
  • SD картны номын сан
  • SPI номын сан
  • RTC номын сан

Тэмдэглэл: BME280 мэдрэгч нь Bosch -ийн маш нарийвчлалтай, температур, харьцангуй чийгшил, даралтын мэдрэгч юм. Үүний нэгэн адил DS1307 нь Maxim -ийн бодит цаг бөгөөд TSL2561 нь үнэн зөв гэрлийн мэдрэгч юм. Эдгээр бүтээгдэхүүний өртөг багатай, нарийвчлал багатай хувилбарууд байдаг боловч энэхүү заавар нь өндөр нарийвчлал, нарийвчлал шаарддаг барилгын гүйцэтгэлийн үнэлгээ, барилгын мониторингийн аппликейшнүүдийн талаар мэдээлэл цуглуулах сонирхолтой хүмүүст зориулагдсан болно. Энэ нь аливаа тоног төхөөрөмжийн тохиргоо, програм хангамжийн тохиргоо (номын сан, програмын код) нь зөвхөн заасан бүтээгдэхүүнд зориулагдсан гэсэн үг юм.

Алхам 1: угсрах

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

Мэдээлэл бүртгэх бамбайг Arduino Uno самбар дээр хялбархан байрлуулж болно. Энэхүү бамбай нь өгөгдлийг бүртгэх боломжийг олгодог (цаг хадгалах, өгөгдөл хадгалах). Бамбайг овоолох ёстой байв. CR1220 зоосны батерейг Arduino унтраалттай байсан ч цагийг ажиллуулахын тулд дугуй үүрэнд оруулах ёстой байв. SD санах ойн картыг самбар дээрх картны үүрэнд оруулах ёстой. RJ-9 холбогч эмэгтэй тээглүүр, Arduino бамбай овоолсон толгой ашиглан өвөрмөц өөрчлөн бамбай бүтээжээ. Бамбай нь Arduino тавцан дээр бүрэн нийцсэн тул зохих толгойнуудыг зохих газруудад гагнав. Arduino нь нэг талдаа 18 голтой, нөгөө талдаа 14 голтой. Ижил тооны голтой толгойнуудыг Arduino дээрхтэй ижил зайнд (18 зүү зайтай) ашигласан. Толгойн хажууд үлдсэн нэмэлт зайг RJ-9 холбогчийг байрлуулахад ашигласан болно.

Толгой нь шаардлагатай тээглүүрийг ашиглах хамгийн сайн арга бөгөөд бусад бүрэлдэхүүн хэсгүүдэд ашиглах боломжтой хэвээр байна. Ашигласан мэдрэгч нь I2C холбооны протоколыг дагаж мөрддөг бөгөөд үүнд Arduino -аас 4 зүү шаардлагатай байдаг: SDA (бас A4 хэлбэрээр байдаг), SCL (мөн A5 хэлбэрээр байдаг), 3.3V & GND. RJ-9 холбогчоос гарч буй дөрвөн утсыг эдгээр дөрвөн толгойн гол руу гагнасан байна. Шаардлагатай RJ-9 холбогчдын тоо нь мэдрэгчийн тооноос хамаарна. Энэ төсөлд 3 RJ-9 холбогчийг ашигласан (хоёр нь BME280, нэг нь TSL2561). RJ-9 холбогчоос гарч буй дөрвөн утас нь өнгөөр кодлогдсон бөгөөд өнгөт утас бүр нь бүх RJ-9 холбогчдод зориулагдсан тусгай зүүгээр томилогдсон байв. Өнгөний код нь өөр өөр RJ-9 хэсгүүдэд өөр өөр байж болохыг анхаарах хэрэгтэй. Энэ тохиолдолд холбогч дээрх утасны байршлыг тэмдэглэх шаардлагатай. RJ-9 холбогчийг гагнуурын дараа Февиквик ашиглан векторын самбар дээр наасан бөгөөд ингэснээр гадаргуу дээр бэхлэгддэг. Мультиметр дээрх тасралтгүй горимыг ашиглан эдгээр холболтыг шалгаж болно. Тасралтгүй горимд байх үед мултиметр нь тэг эсэргүүцэл үзүүлэх ёстой. Мультиметрийн нэг датчикийг гагнасан зүү рүү, нөгөө датчикийг RJ-9 холбогч доторх зүү рүү холбоно уу. Мультиметр нь дуу гаргах ёстой бөгөөд энэ нь гагнуурын холболт зөв, холболт зөв хийгдсэн гэсэн үг юм. Хэрэв ая гарахгүй бол гагнуурын үеийг шалгана уу. Үүний нэгэн адил RJ-9 холбогчийг мэдрэгч таслах самбар дээрх ижил нүх рүү холбосон ижил утастай, өөрөөр хэлбэл A4, A5, 3.3V & GND. BME280 мэдрэгч нь хоёр I2C хаягийг дэмждэг бөгөөд нэг BME280 мэдрэгчийг нэг хянагчтай зэрэг холбох боломжтой гэсэн үг юм. Үүнийг хийхдээ мэдрэгч дээрх гагнуурын дэвсгэрийг холбох замаар нэг мэдрэгчийн хаягийг өөрчлөх шаардлагатай болдог. ESP-01 утасгүй холболтын чип нь Arduino-тай дараах холболтыг шаарддаг.

ESP-01 --------- Arduino Uno

10 -------------------- TX

11 -------------------- RX

Vcc ---------------- CH_PD

Vcc ------------------- Vcc

GND ----------------- GND

Тэмдэглэл:- Arduino Uno дээрх олон тооны LED-ийг зайны ашиглалтын хугацааг сайжруулах зорилгоор хассан. Цахилгаан индикаторын LED, RX, TX LED -ийг гагнуурын үеийг халааж, LED -ийг хямсаагаар түлхэх замаар арилгасан.

Алхам 2: IDE болон номын санг тохируулах

Аливаа програмчлахаас өмнө Arduino IDE (Хөгжлийн нэгдсэн орчин) татаж авах ёстой. Програмчлалыг энэ платформ дээр хийсэн. OPENSDL -ийн өөр өөр бүрэлдэхүүн хэсгүүдтэй харилцан үйлчлэхийн тулд өөр өөр номын сан шаардлагатай байсан. Өгөгдсөн бүрэлдэхүүн хэсгүүдэд дараах номын санг ашигласан.

Бүрэлдэхүүн хэсэг ------------------------------------------------- -------------- Номын сан

BME280 температур ба RH мэдрэгч -------------------------------- Cactus_io_BME280_I2C.h

Гэрлийн мэдрэгч ------------------------------------------------ -------------- SparkFun TSL2561.h

Бодит цагийн цаг ----------------------------------------------- ------------ RTClib.h

SD картны залгуур ----------------------------------------------- ------------ SD.h

I2C холболт ------------------------------------------------ ------------ Утас.h

ESP01-тэй харилцах тусдаа номын сан шаардлагагүй, учир нь Arduino-д байршуулсан код нь AT командуудтай бөгөөд үүнийг ESP-01 зааврыг авдаг цуваа дэлгэц рүү илгээдэг. Үндсэндээ ESP01-ийг ажиллуулж буй AT командыг ESP-01-ийн оролтын команд болгон авдаг Цуваа монитор дээр хэвлэдэг. Эдгээр номын санг суулгахын тулд татаж авсны дараа Arduino IDE -ийг нээгээд Sketch -> Номын санг оруулах -> Зип номын сан нэмэх хэсэгт очоод татаж авсан номын сангуудыг сонгоно уу.

Алхам 3: Системийг програмчлах

Системийг програмчлах
Системийг програмчлах

OPENSDL програмчлахаас өмнө Arduino -г зөөврийн компьютерээр холбоно уу. Холбогдсоны дараа Tools -> Port руу очоод OPENSDL холбогдсон COM портыг сонгоно уу. Мөн Багаж хэрэгсэл -> Самбарууд хэсэгт Arduino Uno сонгогдсон эсэхийг шалгаарай.

OPENSDL нь 2 горимд ажиллахаар бүтээгдсэн. Эхний горимд SD карт дээрх өгөгдлийг өгөгдөл бүртгэх бамбай дээр хадгалдаг. Хоёрдахь горимд ESP-01 Wi-Fi чип ашиглан интернетээр дамжуулан өгөгдлийг вэбсайт руу илгээдэг. Хоёр горимын програм өөр өөр байдаг. Эдгээр кодын мөрүүдийг Arduino IDE редактор дээр шууд хуулж буулгаж, шууд ашиглаж болно. Кодыг оруулсны дараа бид өөрсдийн хэрэгцээнд нийцүүлэн хэд хэдэн тохиргоог хийх хэрэгтэй болно.

  1. Бүртгэлийн интервалыг өөрчлөхийн тулд кодын төгсгөлд саатал (1000) утгыг гараар өөрчлөх. 1000 утга нь интервалийг миллисекундээр илэрхийлнэ.
  2. MySensorData = SD.open ("Logged01.csv", FILE_WRITE) гэсэн кодын мөрийг засах; мөн Logged01 -ийг хүссэн файлын нэрээр солино уу. Файлын нэрний дараа.csv өргөтгөлийг өөрчлөх замаар файлын өргөтгөлийг өөрчилж болно.
  3. Мастер/лавлагааны мэдрэгч ба BME280 хоорондын хамаарлыг олох замаар хийсэн шалгалт тохируулгын тэгшитгэл нь мэдрэгч тус бүрт өөр өөр байх болно. Энэ кодын мөрийг мэдрэгчийг тохируулах тэгшитгэлээр солино уу: Serial.print ((1.0533*t2) -2.2374)-анхдагч хаягтай (0x77) мэдрэгчийн хувьд t2 нь температур мэдрэгчийн уншсан утга юм.

OPENSDL -ийн хоёр дахь бэлэн горимыг утасгүй системээр програмчлах тусдаа програмыг өгсөн болно. ESP-01 нь 2-р алхамд тайлбарласан холболтын дагуу OPENSDL-тэй холбогдсон байх ёстой. Холболтыг дуусгасны дараа Arduino -ийг зөөврийн компьютерт холбоод Arduino -д хоосон ноорог байршуулна уу. ESP-01-ийг шинэчлэлтийн горимд оруулж, програм хангамжийг хамгийн сүүлийн үеийн шинэчлэлт болгон шинэчлээрэй. Шинэчилж дууссаны дараа Arduino ачаалагчийг тойрч гарах 3.3V зүү бүхий Arduino -ийн дахин тохируулах зүүг холбох хэрэгтэй.

Алхам 4: Үйлдвэрлэл

Үйлдвэрлэл
Үйлдвэрлэл
Үйлдвэрлэл
Үйлдвэрлэл
Үйлдвэрлэл
Үйлдвэрлэл

OPENSDL -ийн хамгаалалтыг хамгаалах, гоо зүйг сайжруулах зорилгоор бүтээсэн. Бүрхүүлийг PLA материалыг ашиглан 3D хэвлэх аргаар боловсруулсан бөгөөд микроконтроллерийн бүрхүүлийг БСХС -ийн хуудсыг лазераар хайчилж, хэсгүүдийг нааж хийжээ. 3D хэвлэмэл загварыг SketchUp програм хангамжийн тусламжтайгаар боловсруулсан бөгөөд лазер хайчлах зориулалттай 2D dxf зургийг AutoCAD ашиглан бүтээжээ.

3D хэвлэхийн тулд SketchUp ашиглан үйлдвэрлэсэн STL файлуудыг Ultimaker Cura 3.2.1 програм дээр нээж шалгасан. PLA материалыг ашиглаж байгаа бөгөөд хэвлэгчийн цорго нь 0.4 мм хэмжээтэй хэвлэх зориулалттай эсэхийг шалгаарай. 3D хэвлэгчийн бүтээх хавтан нь 3D хэвлэсэн объектыг наалдуулахын тулд цавуу шаардаж магадгүй юм. Гэхдээ хэвлэх ажил дууссаны дараа цавуу нь хэвлэсэн объект ба хавтангийн хооронд хүчтэй наалддаг.

Алхам 5: Код

Код (.ino файлууд) нь Arduino IDE програм дээр ажиллахаар хийгдсэн. Код болон бусад дэлгэрэнгүй мэдээллийг авахын тулд миний Github хуудасны линк энд байна.

github.com/arihant93/OPENSDL

Төслийн талаар асуулт асуухаас бүү эргэлзээрэй.

Баярлалаа.

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