Obsah:

Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou: 7 krokov (s obrázkami)
Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou: 7 krokov (s obrázkami)

Video: Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou: 7 krokov (s obrázkami)

Video: Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou: 7 krokov (s obrázkami)
Video: How to Assemble YescomUSA Portable Pedal Exercise Machine w/ LCD Display 2024, November
Anonim
Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou
Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou
Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou
Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou
Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou
Jednoduchý displej Ergometer na báze Arduina s diferenciálnou spätnou väzbou

Kardio cvičenia sú nudné, najmä ak cvičíte v interiéri. Niekoľko existujúcich projektov sa to pokúša zmierniť tým, že robí skvelé veci, ako je pripojenie ergometra k hernej konzole, alebo dokonca simulácia skutočnej jazdy na bicykli vo VR. Aj keď sú tieto vzrušujúce, technicky veľmi nepomáhajú: Cvičenie je stále nudné. Namiesto toho by som chcel, aby som si počas tréningu mohol len prečítať knihu alebo sledovať televíziu. Potom je však ťažké udržať ustálené tempo.

Ide o to, zamerať sa na posledný problém a poskytnúť priamu spätnú väzbu o tom, či je vaša súčasná úroveň školenia dostatočne dobrá, alebo by ste mali vynaložiť ďalšie úsilie. Úroveň „dosť dobrej“sa však bude líšiť nielen na osobu, ale aj v priebehu času (z dlhodobého hľadiska, ako sa budete zlepšovať, ale aj počas školenia: napríklad je takmer nemožné ísť plnou rýchlosťou skôr, ako zahriaty). Cieľom tohto projektu je preto jednoducho zaznamenať a) predchádzajúci beh a b) najlepší beh (alias highscore) a potom poskytnúť priamu spätnú väzbu o tom, ako sa vám v súčasnosti v porovnaní s týmito behmi darí.

Ak to znie trochu abstraktne, preskočte na krok 7, kde nájdete podrobnosti o tom, čo ukáže dokončený displej

Ďalším cieľom tohto projektu je udržať veci skutočne jednoduché a lacné. V závislosti od toho, kde si objednáte diely, môžete tento projekt dokončiť za približne 5 dolárov (alebo asi 30 dolárov pri objednávke u prémiových domácich predajcov) a ak ste už v minulosti hrali s prostredím Arduino, existuje celkom dobrá šanca, že už máte väčšinu alebo všetky potrebné diely.

Krok 1: Zoznam súčiastok

Zoznam dielov
Zoznam dielov

Prejdeme si zoznam vecí, ktoré potrebujete:

Mikroprocesor kompatibilný s Arduino

Postačí takmer každé Arduino predané za posledných niekoľko rokov. Na presnom variante (Uno / Nano / Pro Mini, 8 alebo 16 MHz, 3,3. Alebo 5V) nezáleží. Budete však potrebovať procesor ATMEGA328 alebo lepší, pretože budeme používať takmer 2 kB pamäte RAM a 1 kB pamäte EEPROM. Ak ste oboznámení so vstupmi a výstupmi sveta Arduino, odporúčam použiť Pro Mini na 3,3 V, pretože bude najlacnejší a najefektívnejší na batérie. Ak ste (relatívne) noví v Arduine, odporúčam „Nano“, pretože poskytuje rovnakú funkčnosť ako „Uno“v menšom a lacnejšom balení.

Všimnite si toho, že tento návod vás neprehovorí úplnými základmi. Mali by ste mať nainštalovaný najmenej softvér Arduino a vedieť, ako pripojiť Arduino a nahrať skicu. Ak nemáte predstavu, o čom hovorím, prečítajte si tieto dva jednoduché návody, najskôr: Prvý, druhý.

128*64 -pixelový displej SSD1306 OLED (variant I2C, t.j. štyri piny)

Jedná sa o jeden z najlacnejších a najľahších dostupných displejov súčasnosti. Súhlasím, je to malé, ale dosť dobré. Ak už máte displej s podobným alebo lepším rozlíšením, bude možné ho namiesto toho použiť, ale tento návod je napísaný pre SSD1306.

  • „Bezpájkovacia doska“a prepojovací kábel na stavbu vášho prototypu
  • Keramický kondenzátor 100 nF (môže, ale nemusí byť potrebný; pozri krok 4)
  • Buď nejaké krokosvorky, alebo magnet, jazýčkový spínač a nejaký kábel (pozri krok 4)
  • Červená a zelená LED dióda, každá (voliteľné; pozri krok 5)
  • Dva 220Ohm odpory (ak používajú LED diódy)
  • Tlačidlo (tiež voliteľné)
  • Vhodná batéria (pozri krok 6)

Krok 2: Pripojenie displeja

Pripojenie displeja
Pripojenie displeja

Ako prvú vec pripojíme displej k Arduinu. K dispozícii sú podrobné pokyny. Pripojenie jednotky SSD1306 je však skutočne jednoduché:

  1. Displej VCC -> Arduino 3,3 V alebo 5 V (bude to stačiť)
  2. Zobraziť Gnd -> Arduino Gnd
  3. Displej SCL -> Arduino A5
  4. Displej SCA -> Arduino A4

Ďalej vo svojom prostredí Arduino prejdite na Skica-> Zahrnúť knižnicu-> Spravovať knižnice a nainštalujte „Adafruit SSD1306“. Knižnicu bohužiaľ budete musieť upraviť, aby ste ju mohli nakonfigurovať pre variant 128*64 pixelov: vyhľadajte priečinok „knižnice“arduino a upravte „Adafruit_SSD1306/Adafruit_SSD1306.h“. Vyhľadajte výraz „#define SSD1306_128_32“, deaktivujte tento riadok a namiesto toho povoľte „#define SSD1306_128_64“.

V tomto mieste by ste mali správne načítať súbor-> Príklady-> Adafruit SSD1306-> ssd1306_128x64_i2c, aby ste mohli otestovať, či je váš displej pripojený. Upozorňujeme, že možno budete musieť upraviť adresu I2C. 0x3C sa zdá byť najbežnejšou hodnotou.

V prípade problémov si prečítajte podrobnejšie pokyny.

Krok 3: Nahrajte náčrt

Ak všetko fungovalo, tak teraz je čas nahrať skutočný náčrt do vášho Arduina. Kópiu náčrtu nájdete nižšie. Potenciálne novšiu verziu nájdete na stránke projektu github. (Pretože sa jedná o náčrt jedného súboru, stačí skopírovať súbor erogmetrino.ino do okna Arduino).

Ak ste v predchádzajúcom kroku museli zmeniť adresu I2C, budete musieť znova vykonať rovnakú úpravu v riadku začínajúcom na „display.begin“.

Po nahraní by sa vám na displeji mali zobraziť niekoľko núl. Potom, čo sa pripojí všetko ostatné, sa pozrieme na význam rôznych častí displeja.

Všimnite si toho, že pri úplne prvom štarte sa rozsvieti displej pomerne pomaly (môže to trvať asi desať sekúnd), pretože skica najskôr vynuluje všetky údaje uložené v EEPROM.

Krok 4: Pripojenie Ergometra

Pripojenie Ergometra
Pripojenie Ergometra

Tento krok nemožno skutočne opísať univerzálne, pretože nie všetky ergometre sú rovnaké. Nie sú však ani iní. Ak váš ergometer vôbec obsahuje elektronický ukazovateľ rýchlosti, musí mať niekde elektronický snímač na detekciu otáčok pedálov alebo nejakého (možno vnútorného) zotrvačníka. V mnohých prípadoch to bude jednoducho pozostávať z magnetu prechádzajúceho v blízkosti jazýčkového spínača (pozri tiež nižšie). Zakaždým, keď magnet prejde, spínač sa zatvorí, čo signalizuje jednu otáčku pre zobrazenie rýchlosti.

Prvá vec, ktorú by ste mali urobiť, je pozrieť sa na ukazovateľ rýchlosti na vašom ergometri, či neobsahuje prichádzajúce káble. Ak nájdete niekde v ergometri dvojvodičový kábel, takmer určite ste našli spojenie so senzorom. A pri troche šťastia to môžete jednoducho odpojiť a jednoducho pripojiť k svojmu Arduinu pomocou niekoľkých krokosvoriek (za minútu vám poviem, ku ktorým kolíkom sa chcete pripojiť).

Ak však nemôžete nájsť taký kábel, nie ste si istí, či ste našli ten pravý, alebo ho nemôžete odpojiť bez toho, aby ste niečo poškodili, stačí na jeden z pedálov prilepiť malý magnet a na rámček vášho erogmetra pripevniť jazýčkový spínač., taký, že magnet ním prejde veľmi tesne. Pripojte k prepínaču dva vodiče a veďte ich k svojmu Arduinu.

Pripojte dva vodiče (či už vlastné alebo tie z existujúceho senzora) k Arduino Gnd a Arduino pin D2. Ak máte jeden po ruke, zapojte tiež kondenzátor 100nF medzi kolíky D2 a Gnd, aby ste mohli vykonať nejaké „odbúranie“. To môže, ale nemusí byť potrebné, ale pomáha to stabilizovať hodnoty.

Keď je hotovo, je čas zapnúť Arduino a nasadnúť na bicykel na prvý rýchly test. Vľavo hore by sa malo začať zobrazovať meranie rýchlosti. Ak to nefunguje, skontrolujte všetky káble a uistite sa, že je magnet dostatočne blízko jazýčkového spínača. Ak sa miera rýchlosti javí stále príliš vysoká alebo príliš nízka, jednoducho upravte definíciu „CM_PER_CLICK“v hornej časti náčrtu (poznámka: skica používa názvy metrík, ale nikde nie sú zobrazené ani uložené žiadne jednotky, takže to jednoducho ignorujte a dodajte 100 000 tisíc míľ za kliknutie).

Krok 5: Voliteľné diódy LED rýchleho stavu

Voliteľné diódy LED rýchleho stavu
Voliteľné diódy LED rýchleho stavu

LED diódy popísané v tomto kroku sú voliteľné, ale úhľadné: Ak to s čítaním knihy / sledovaním televízie pri cvičení myslíte vážne, nechcete sa príliš pozerať na displej. Dve diódy LED v rôznych farbách však budú v periférnom videní ľahko viditeľné a stačia na približnú predstavu o tom, ako sa vám darí.

  • Pripojte prvú (červenú) LED k pinu D6 (dlhšia časť LED smeruje k Arduinu). Pripojte krátku časť LED k Gnd cez odpor 220 Ohmov. Táto dióda LED sa rozsvieti, keď ste v aktuálnej fáze tréningu o 10% alebo viac nižšiu, ako je vaša najlepšia rýchlosť. Čas vynaložiť viac úsilia!
  • Druhú (zelenú) LED zapojte na pin D5, opäť s odporom do Gnd. Táto dióda LED sa rozsvieti, keď sa nachádzate do 1%alebo viac od svojho najlepšieho behu. Ide ti to dobre!

Chcete, aby sa diódy LED rozsvietili v závislosti od toho, ako sa vám darí v porovnaní s vašim predchádzajúcim behom, alebo od ľubovoľnej priemernej rýchlosti? Stačí pripojiť tlačidlo medzi kolíky D4 a Gnd. Pomocou tohto tlačidla môžete prepínať medzi odkazmi „váš najlepší beh“, „váš predchádzajúci beh“alebo „vaša aktuálna rýchlosť“. Malé posledné písmeno „P“alebo „C“v ľavom dolnom rohu bude znamenať posledné dva režimy.

Krok 6: Napájanie displeja Ergometra

Napájanie displeja Ergometra
Napájanie displeja Ergometra

Existuje mnoho spôsobov, ako napájať displej, ale uvediem dva, ktoré sa zdajú byť praktickejšie ako ostatné:

  1. Ak používate Arduino Uno alebo Nano, pravdepodobne ho budete chcieť napájať pomocou powerbanky USB so vstavanou indikáciou vybitia batérie.
  2. Keď používate Arduino Pro Mini @ 3,3 V (moje odporúčanie pre pokročilých používateľov), môžete ho napájať buď z jednej batérie LiPo, alebo z troch článkov NiMH. Pretože ATMEGA bude tolerovať napájacie napätie až 5,5 V, môžete ho pripojiť k „VCC/ACC“priamo a obísť tak palubný regulátor napätia. V tomto nastavení bude existovať aj varovanie „vybitá batéria“pri približne 3,4 V bez dodatočného hardvéru (zobrazené v pravom dolnom rohu). Pretože je možné očakávať, že ATMEGA bude správne fungovať, prinajmenšom do napätia 3,0 V, malo by vám to nechať dostatok času na dokončenie tréningovej jednotky pred nabíjaním.

Krok 7: Používanie displeja Ergometra

Používanie displeja Ergometra
Používanie displeja Ergometra
Používanie displeja Ergometra
Používanie displeja Ergometra

Pozrime sa podrobnejšie na rôzne čísla na vašom displeji. Väčší počet vľavo hore je jednoducho vaša aktuálna rýchlosť a väčšie číslo vpravo hore je celková vzdialenosť vo vašom aktuálnom tréningu.

Nasledujúci riadok predstavuje vašu priemernú rýchlosť od začiatku tréningu (vľavo) a čas od začiatku tréningu (vpravo). Všimnite si toho, že načasovanie sa zastaví, keď je bicykel zastavený.

Zatiaľ tak triviálne. Zaujímavé sú dva ďalšie riadky na pravej strane: Tieto porovnávajú vaše aktuálne načasovanie s predchádzajúcim a najlepším tréningom. Tj. a "- 0:01:23" v hornom riadku týchto riadkov bude znamenať, že ste dosiahli aktuálnu vzdialenosť o 1 minútu a 23 sekúnd skôr ako pri predchádzajúcom behu. Dobre. Dolný riadok „+ 0:00:12“bude znamenať, že až do aktuálneho bodu zaostávate o 12 sekúnd za svojim najlepším behom. (Všimnite si toho, že tieto rozdielové časy nebudú 100% presné. Časové body sa ukladajú každých 0,5 km / míle a interpolujú sa medzi nimi.) Pri prvom spustení však samozrejme nie sú nevyhnutné žiadne časové referencie a takže oba vyššie uvedené riadky zobrazia iba „-:-:-“.

Nakoniec ľavá dolná časť displeja obsahuje graf vašej rýchlosti za poslednú minútu. To vám umožní na prvý pohľad vidieť, či idete stabilne alebo spomaľujete. (Všimnite si, že táto čiara bude v reálnom tréningu oveľa plynulejšia - ale jednoducho nie je ľahké udržať stabilné tempo pri pokuse o fotografovanie …) Horizontálne čiary označujú predchádzajúcu / najlepšiu rýchlosť, ktorú ste dosiahli v blízkosti aktuálneho bodu vášho predchádzajúceho školenia.

LED diódy umiestnené v hornej časti porovnávajú vašu aktuálnu rýchlosť s vašou najlepšou rýchlosťou počas tejto fázy tréningu. Zelená farba ukazuje, že sa nachádzate v rozmedzí 1% svojich najlepších síl, červená farba ukazuje, že ste o viac ako 10% pomalší ako váš najlepší tréning. Keď uvidíte červené svetlo, je načase vynaložiť ďalšie úsilie. Všimnite si toho, že na rozdiel od vyššie popísaných rozdielových časov, tieto sa vzťahujú iba na aktuálnu časť školenia, tj. Je možné, že v absolútnom čase zaostávate, ale zelená ukazuje, že stíhaš, a naopak.

Referenčnú rýchlosť použitú pre dve diódy LED je možné zmeniť pomocou tlačidla. Jedným stlačením sa prepne z najlepšieho na predchádzajúci zaznamenaný tréning (vľavo dole sa zobrazí malé písmeno „P“). Ďalším stlačením a vašou aktuálnou rýchlosťou v čase stlačenia tlačidla sa stane nová referenčná rýchlosť (zobrazí sa malé písmeno „C“). Ten je obzvlášť užitočný pri prvom tréningu s novým displejom ergometra, keď ešte nebola zaznamenaná žiadna referencia.

Keď skončíte s tréningom, odpojte batériu. Váš tréning už bol uložený do internej EEPROM vášho Arduina.

Ako vidíte, môj prototyp som spájkoval. Jasné znamenie, že sa mi výsledok sám páčil. Dúfam, že vám to bude tiež užitočné. Veselé cvičenie!

Odporúča: