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

Янз бүрийн санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц: 7 алхам (зурагтай)
Янз бүрийн санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц: 7 алхам (зурагтай)

Видео: Янз бүрийн санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц: 7 алхам (зурагтай)

Видео: Янз бүрийн санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц: 7 алхам (зурагтай)
Видео: Leslie Kean on David Grusch (UFO Whistleblower): Non-Human Intelligence, Recovered UFOs, UAP, & more 2024, Арваннэгдүгээр
Anonim
Дифференциал санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц
Дифференциал санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц
Дифференциал санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц
Дифференциал санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц
Дифференциал санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц
Дифференциал санал хүсэлт бүхий энгийн Arduino дээр суурилсан эргометр дэлгэц

Зүрхний дасгал хийх нь уйтгартай байдаг, ялангуяа гэртээ дасгал хийхдээ. Одоогийн хэд хэдэн төслүүд эргометрийг тоглоомын консол руу холбох, эсвэл VR дээр унадаг дугуй унах гэх мэт гайхалтай зүйл хийх замаар үүнийг багасгахыг хичээдэг. Техникийн хувьд сэтгэл хөдөлгөм мэт боловч тэд төдийлөн тус болохгүй: Дасгал нь уйтгартай хэвээр байна. Тиймээс үүний оронд би бэлтгэл хийж байхдаа зүгээр л ном уншиж, зурагт үзэхийг хүсч байна. Гэхдээ дараа нь тогтвортой хурдаар явах нь хэцүү байдаг.

Энд байгаа санаа бол сүүлийн асуудалд анхаарлаа төвлөрүүлж, таны одоогийн сургалтын түвшин хангалттай сайн байгаа эсэх, эсвэл та илүү их хүчин чармайлт гаргах хэрэгтэй эсэх талаар шууд санал хүсэлт өгөх явдал юм. Гэсэн хэдий ч "хангалттай сайн" түвшин нь зөвхөн нэг хүнд төдийгүй цаг хугацааны явцад өөр өөр байх болно (урт хугацаанд, сайжирснаараа, гэхдээ бас бэлтгэлийн үеэр: жишээлбэл, өмнө нь бүрэн хурдтай явах бараг боломжгүй юм. дулаарсан). Тиймээс энэ төслийн цаад санаа нь а) өмнөх гүйлт, б) хамгийн сайн гүйлт (өндөр оноо гэх мэт) -ийг бүртгэж, дараа нь эдгээр гүйлтүүдтэй харьцуулахад ямар байгаа талаар шууд санал хүсэлт өгөх явдал юм.

Хэрэв энэ нь жаахан хийсвэр сонсогдож байвал дууссан дэлгэц дээр юу харуулах талаар 7 -р алхам руу ороорой

Энэхүү төслийн өөр нэг зорилго бол бүх зүйлийг үнэхээр энгийн бөгөөд хямд байлгах явдал юм. Сэлбэгээ хаанаас захиалахаасаа хамааран та энэ төслийг ойролцоогоор 5 доллараар (эсвэл дээд зэрэглэлийн дотоодын борлуулагчдаас захиалахдаа ойролцоогоор 30 доллараар) дуусгах боломжтой бөгөөд хэрэв та Arduino орчинд тоглож байсан бол өмнө нь танд маш сайн боломж байна. танд хэрэгтэй ихэнх хэсэг эсвэл бүх хэсгүүд байна.

Алхам 1: Хэсгийн жагсаалт

Хэсгийн жагсаалт
Хэсгийн жагсаалт

Танд хэрэгтэй зүйлсийн жагсаалтыг авч үзье.

Arduino нийцтэй микропроцессор

Сүүлийн хэдэн жилийн турш зарагдсан бараг бүх Arduino үүнийг хийх болно. Яг хувилбар (Uno / Nano / Pro Mini, 8 эсвэл 16 MHz, 3.3. Эсвэл 5V) нь хамаагүй. Гэсэн хэдий ч танд ATMEGA328 эсвэл түүнээс дээш процессор хэрэгтэй болно, учир нь бид бараг 2k RAM, 1k EEPROM ашиглах болно. Хэрэв та Arduino ертөнцийн нарийн ширийн зүйлийг мэддэг бол 3.3V хүчдэлтэй Pro Mini ашиглахыг зөвлөж байна, энэ нь хамгийн хямд бөгөөд батерейны хувьд хамгийн хэмнэлттэй байх болно. Хэрэв та (харьцангуй) Arduino -д шинээр орсон бол "Нано" -г санал болгож байна, учир нь энэ нь "Uno" -той ижилхэн, арай хямдхан багцаар хангадаг.

Энэхүү зааварчилгаа нь танд үндсэн мэдлэгийн талаар ярихгүй гэдгийг анхаарна уу. Та ядаж Arduino програмыг суулгасан байх ёстой бөгөөд Arduino -г хэрхэн холбож, ноорог байршуулахаа мэддэг байх ёстой. Хэрэв та миний юу яриад байгааг мэдэхгүй байгаа бол эдгээр хоёр хялбар хичээлийг нэгдүгээрт, хоёрдугаарт уншаарай.

128*64 пикселийн SSD1306 OLED дэлгэц (I2C хувилбар, өөрөөр хэлбэл дөрвөн зүү)

Энэ бол өнөөгийн хамгийн хямд, хялбар дэлгэцүүдийн нэг юм. Зөвшөөрч байна, энэ нь жижигхэн, гэхдээ хангалттай сайн. Мэдээжийн хэрэг, хэрэв та ижил төстэй эсвэл илүү нарийвчлалтай дэлгэцтэй бол үүнийг ашиглах боломжтой болно, гэхдээ энэ заавар нь SSD1306 -д зориулагдсан болно.

  • Прототипээ бүтээхэд зориулагдсан "гагнуургүй талхны самбар" ба зарим холбогч утас
  • 100nF керамик конденсатор (шаардлагатай эсвэл хэрэггүй байж магадгүй; 4 -р алхамыг үзнэ үү)
  • Зарим клип, эсвэл соронз, зэгс унтраалга, зарим кабель (4-р алхамыг үзнэ үү)
  • Улаан, ногоон LED, тус бүр (заавал биш; 5 -р алхамыг үзнэ үү)
  • Хоёр 220 Ом эсэргүүцэл (хэрэв LED ашигладаг бол)
  • Товчлуур (заавал биш)
  • Тохиромжтой зай (6 -р алхамыг үзнэ үү)

Алхам 2: Дэлгэцийг холбох

Дэлгэцийг холбож байна
Дэлгэцийг холбож байна

Эхний ээлжинд бид дэлгэцийг Arduino -той холбох болно. Нарийвчилсан зааврыг авах боломжтой. Гэсэн хэдий ч SSD1306 -ийг холбоход үнэхээр хялбар байдаг.

  1. VCC дэлгэц -> Arduino 3.3V эсвэл 5V (аль аль нь хийх болно)
  2. Gnd -> Arduino Gnd -ийг харуул
  3. SCL дэлгэц -> Arduino A5
  4. SCA -> Arduino A4 дэлгэцийг харуулна уу

Дараа нь Arduino орчинд Sketch-> Номын санг оруулах> Номын санг удирдах хэсэгт очиж "Adafruit SSD1306" -ийг суулгана уу. Харамсалтай нь та 128*64 пикселийн хувилбарт тохируулахын тулд номын санг засах хэрэгтэй болно: arduino "libraries" фолдероо олоод "Adafruit_SSD1306/Adafruit_SSD1306.h" -ийг засах хэрэгтэй. "#Define SSD1306_128_32" гэж хайгаад тэр мөрийг идэвхгүй болгож, "#Define SSD1306_128_64" -г идэвхжүүлнэ үү.

Энэ үед та дэлгэцээ зөв холбосон эсэхийг шалгахын тулд File-> Examples-> Adafruit SSD1306-> ssd1306_128x64_i2c-ийг ачаалах хэрэгтэй. I2C хаягийг тохируулах шаардлагатай болж магадгүйг анхаарна уу. 0x3C бол хамгийн нийтлэг утга юм.

Асуудал гарсан тохиолдолд илүү дэлгэрэнгүй зааврыг үзнэ үү.

Алхам 3: Ноорогыг байршуулах

Хэрэв бүх зүйл үр дүнтэй байсан бол одоогоор ноорог зургийг Arduino дээрээ байршуулах цаг болжээ. Та доорх зургийн хуулбарыг олох болно. Хамгийн сүүлийн хувилбарыг github төслийн хуудаснаас үзнэ үү. (Энэ бол нэг файлын ноорог тул erogmetrino.ino файлыг Arduino цонх руу хуулахад л хангалттай).

Хэрэв та өмнөх алхамдаа I2C хаягийг өөрчлөх шаардлагатай байсан бол яг одоо "display.begin" -ээс эхэлсэн мөрөнд ижил тохируулга хийх шаардлагатай болно.

Байршуулсны дараа дэлгэц дээр хэдэн тэг гарч ирэхийг та харах ёстой. Бусад бүх зүйлийг холбосны дараа бид дэлгэцийн янз бүрийн хэсгүүдийн утгыг авч үзэх болно.

Анх эхлэхэд дэлгэц асах нь удаан байх болно (ойролцоогоор арван секунд зарцуулагдах боломжтой), учир нь ноорог нь EEPROM -д хадгалагдсан өгөгдлийг тэг болгоно.

Алхам 4: Эргометрийг холбох

Эргометрийг холбож байна
Эргометрийг холбож байна

Энэ алхамыг бүхэлд нь тайлбарлах боломжгүй, учир нь бүх эргометрүүд ижил байдаггүй. Гэсэн хэдий ч тэд бүгд өөр өөр байдаггүй. Хэрэв таны эргометр электрон хурдны дэлгэцтэй бол хаа нэгтээ дөрөө, эсвэл зарим нэг дотоод нисдэг дугуйны эргэлтийг илрүүлэх электрон мэдрэгчтэй байх ёстой. Ихэнх тохиолдолд энэ нь зэгс унтраалгын ойролцоо өнгөрөх соронзоос бүрдэнэ (доороос үзнэ үү). Соронзон өнгөрөх бүрт унтраалга хаагдах бөгөөд энэ нь хурдны дэлгэц рүү нэг хувьсгал хийх дохио юм.

Таны хийх ёстой хамгийн эхний зүйл бол эргометр дээрх хурдны дэлгэцийг ирж буй кабелийг шалгах явдал юм. Хэрэв та эргометрээс хоёр утастай кабель хаа нэгтээ ирж байгааг олж харвал та мэдрэгчийн холболтыг олсон нь лавтай. Хэрэв та азтай бол үүнийг зүгээр л салгаад Arduino-тойгоо холбоно уу.

Гэсэн хэдий ч хэрэв та ийм кабелийг олж чадахгүй байгаа бол зөв кабелийг олсон эсэхээ мэдэхгүй байж болно, эсвэл ямар нэгэн зүйлийг гэмтээхгүйгээр салгаж чадахгүй бол та жижиг соронзыг дөрөөний аль нэгэнд наагаад, зэгсэн унтраалгыг erogmeter -ийнхээ хүрээ рүү залгаарай., соронз нь түүний хажуугаар маш ойрхон өнгөрөх болно. Шилжүүлэгч рүү хоёр утас холбоод Arduino руугаа холбоно уу.

Хоёр утсыг холбоно уу (таных эсвэл одоо байгаа мэдрэгчийн утас) Arduino Gnd, Arduino pin D2 руу очно. Хэрэв танд гар байгаа бол D2 ба Gnd зүү хооронд 100nF конденсаторыг холбож, "задлах" боломжтой. Энэ нь шаардлагагүй эсвэл шаардлагагүй байж болох ч уншилтыг тогтворжуулахад тусалдаг.

Дууссаны дараа Arduino -г асааж, анхны хурдан туршилтаа хийхийн тулд дугуй унах цаг болжээ. Зүүн дээд дугаар нь хурд хэмжигчийг харуулж эхлэх ёстой. Хэрэв энэ нь ажиллахгүй бол бүх утсыг шалгаж, соронз нь зэгс унтраалгатай ойрхон байгаа эсэхийг шалгаарай. Хэрэв хурдны хэмжүүр хэт өндөр эсвэл хэт бага мэт санагдаж байвал ноорогны дээд хэсэгт байрлах "CM_PER_CLICK" гэсэн тодорхойлолтыг тохируулна уу нэг товшилт тутамд 100.000 миль нийлүүлэх).

Алхам 5: Нэмэлт хурдан статусын LED

Нэмэлт хурдан төлөвийн LED
Нэмэлт хурдан төлөвийн LED

Энэ алхамд тайлбарласан LED нь заавал биш боловч цэвэрхэн байдаг: Хэрэв та дасгал хийж байхдаа ном унших / зурагт үзэх талаар нухацтай хандаж байвал дэлгэц рүү хэтэрхий ширтэх хэрэггүй. Гэхдээ өөр өөр өнгийн хоёр LED нь захын алсын хараанд амархан анзаарагдах бөгөөд энэ нь танд хэрхэн хийж байгаа талаар бүдүүлэг ойлголт өгөхөд хангалттай байх болно.

  • Эхний (улаан) LED -ийг D6 зүү рүү холбоно уу (LED -ийн урт хөл нь Arduino руу явдаг). LED -ийн богино хөлийг 220 Ом эсэргүүцэлтэй холбож Gnd руу холбоно уу. Энэхүү LED нь сургалтын одоогийн шатанд хамгийн дээд хурднаасаа 10% ба түүнээс доош байх үед асах болно. Илүү их хүчин чармайлт гаргах цаг боллоо!
  • Хоёрдахь (ногоон) LED -ийг D5 зүү рүү холбож, дахин Gnd руу резистортой холбоно уу. Энэхүү LED нь хамгийн сайн гүйлтийнхээ 1%-иас дээш байх үед асах болно. Та сайн ажиллаж байна!

Өмнөх гүйлтийнхтэй харьцуулахад хэр сайн байгаа эсвэл дурын дундаж хурд зэргээс шалтгаалан LED гэрэл асахыг хүсч байна уу? D4 болон Gnd зүү хооронд товчлуурыг холбоно уу. Энэ товчлуурыг ашигласнаар та "хамгийн сайн гүйлт", "өмнөх гүйлт" эсвэл "одоогийн хурд" хоёрын хооронд шилжих боломжтой. Зүүн доод буланд "P" эсвэл "C" гэсэн жижиг үсэг нь сүүлийн хоёр горимыг илэрхийлнэ.

Алхам 6: Эргометрийн дэлгэцээ асаах

Эргометрийн дэлгэцээ асааж байна
Эргометрийн дэлгэцээ асааж байна

Дэлгэцээ асаах олон арга бий, гэхдээ би бусдаас илүү практик мэт санагдах хоёр аргыг тодруулах болно.

  1. Arduino Uno эсвэл Nano-ийг ашиглахдаа батерейны багтаамж багатай USB тэжээлийн банк ашиглан үүнийг асаахыг хүсч магадгүй юм.
  2. Arduino Pro Mini @ 3.3V (дэвшилтэт хэрэглэгчдэд өгөх миний зөвлөмж) ашиглахдаа та үүнийг нэг LiPo батерей эсвэл гурван NiMH үүрнээс шууд асааж болно. ATMEGA нь 5.5 В хүртэлх хүчдэлийг тэсвэрлэдэг тул та үүнийг "VCC/ACC" руу шууд холбож, самбар дээрх хүчдэлийн зохицуулагчийг тойрч болно. Энэ тохиргоонд 3.4V орчимд "бага зайтай" анхааруулга байх бөгөөд нэмэлт тоног төхөөрөмж байхгүй болно (баруун доод буланд харуулав). ATMEGA нь дор хаяж 3.0В хүртэл ажиллах ёстой гэж бодож байгаа тул цэнэглэхээс өмнө сургалтын нэгжээ дуусгахад хангалттай хугацаа үлдэх болно.

Алхам 7: Эргометрийн дэлгэцээ ашиглах

Эргометрийн дэлгэцээ ашиглаж байна
Эргометрийн дэлгэцээ ашиглаж байна
Эргометрийн дэлгэцээ ашиглаж байна
Эргометрийн дэлгэцээ ашиглаж байна

Дэлгэц дээрх янз бүрийн тоог нарийвчлан авч үзье. Зүүн дээд булангийн тоо нь зөвхөн таны одоогийн хурд бөгөөд баруун дээд буланд байгаа тоо нь таны одоогийн сургалтын нийт зай юм.

Дараагийн мөр бол сургалт эхэлснээс хойших таны дундаж хурд (зүүн талд), сургалт эхэлснээс хойших хугацаа (баруун талд). Унадаг дугуй зогсох үед цаг зогсдог болохыг анхаарна уу.

Өнөөг хүртэл өчүүхэн. Баруун гар талын өөр хоёр мөр нь сонирхолтой байх болно: Эдгээр нь таны одоогийн цагийг өмнөх болон хамгийн сайн бэлтгэлтэй харьцуулж үздэг. Өөрөөр хэлбэл Эдгээр мөрүүдийн дээд хэсэгт байрлах "- 0:01:23" нь таны одоогийн гүйлтээс 1 минут 23 секундын өмнө хүрсэн гэсэн үг юм. Сайн байна. "+ 0:00:12" гэсэн доод мөр нь одоогийн он хүртэл хамгийн сайн гүйлтээсээ 12 секундын хоцорч байна гэсэн үг юм. (Эдгээр дифференциал цагууд нь 100% яг нарийн байдаггүй гэдгийг анхаарна уу. Цагийг 5 км / мил тутамд хадгалдаг бөгөөд үүний хооронд интерполяци хийдэг.) Мэдээжийн хэрэг, таны анхны гүйлтэд цаг хугацааны лавлагаа бүртгэгдээгүй байна. Дээрх хоёр мөр хоёулаа "-:-:-" -ийг харуулах болно.

Эцэст нь, дэлгэцийн зүүн доод хэсэгт сүүлийн минутанд таны хурдны график байна. Ингэснээр та тогтвортой явж байгаа эсэх, эсвэл удааширч байгаа эсэхээ нэг дор харах боломжтой болно. (Энэ шугам нь жинхэнэ сургалтанд илүү жигд байх болно гэдгийг анхаарна уу. Гэхдээ зураг авах гэж байхад тогтвортой хурдыг хадгалах нь тийм ч хялбар биш юм.) Хэвтээ шугамууд нь өмнөх өмнөх хамгийн сайн хурдыг харуулсан болно. сургалтууд.

Дээд талд байрлуулсан LED нь сургалтын энэ үе шатанд таны одоогийн хурдыг хамгийн сайн хурдтай харьцуулж үздэг. Ногоон шоу нь таны хамгийн сайн үзүүлэлтийн 1% дотор байдаг бол улаан шоу нь таны хамгийн сайн бэлтгэлээс 10% илүү удаан байдаг. Улаан гэрлийг хараад илүү их хүчин чармайлт гаргах цаг болжээ. Дээр дурдсан ялгаатай хугацаанаас ялгаатай нь эдгээр нь зөвхөн сургалтын одоогийн хэсгийг хэлнэ, өөрөөр хэлбэл та үнэмлэхүй хугацаанд хоцрогдож магадгүй, гэхдээ ногоон нь таныг гүйцэж байгааг харуулж байна.

Хоёр LED -ийн ашиглалтын хурдыг товчлуур ашиглан өөрчилж болно. Нэг дарахад үүнийг өмнөх бичлэгээс хамгийн сайн руу шилжүүлэх болно ("P" гэсэн жижиг үсэг зүүн доод талд гарч ирнэ). Товчлуур дарах үед өөр нэг даралт болон таны одоогийн хурд нь шинэ лавлах хурд болно ("C" гэсэн жижиг үсэг харагдана). Ялангуяа лавлагаа хараахан бүртгэгдээгүй байгаа бол сүүлийн үеийн эргометрийн дэлгэцтэй анхны сургалтын үеэр энэ нь илүү хэрэгтэй болно.

Сургалт дууссаны дараа батерейгаа салга. Таны сургалт Arduino -ийн дотоод EEPROM -д хадгалагдсан байна.

Таны харж байгаагаар би прототипээ гагнах ажлыг дуусгасан. Үр дүн нь надад таалагдсан гэсэн дохио юм. Танд ч бас хэрэг болно гэж найдаж байна. Аз жаргалтай дасгал хийлээ!

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