Мазмуну:
- 1 -кадам: Бөлүктөрдүн тизмеси
- 2 -кадам: Дисплейди туташтыруу
- 3 -кадам: Эскизди жүктөө
- 4 -кадам: Эргометрди туташтыруу
- 5 -кадам: Кошумча Ыкчам Статус LED
- 6 -кадам: Эргометр дисплейиңизди иштетүү
- 7 -кадам: Эргометр дисплейиңизди колдонуу
Video: Жөнөкөй Arduino негизделген эргометр дисплейи Дифференциалдуу пикир менен: 7 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:42
Кардио-машыгуу кызыксыз, өзгөчө үйдө машыгуу учурунда. Бир нече иштеп жаткан долбоорлор муну жеңилдетүүгө аракет кылышат, мисалы, эргометрди оюн консолуна кошуу, же VRде чыныгы велосипедди тууроо. Кызыктуусу, техникалык жактан алар анча деле жардам бербейт: Машыгуу дагы кызыксыз. Ошентип, анын ордуна, мен машыгуу учурунда жөн эле китеп окуп же телевизор көргүм келет. Бирок андан кийин туруктуу темп менен жүрүү кыйын.
Бул жердеги идея, акыркы көйгөйгө көңүл буруу жана түздөн-түз кайтарым байланышты камсыз кылуу, сиздин учурдагы даярдык деңгээлиңиз жетиштүүбү же дагы бир аз күч жумшашыңыз керекпи. Бирок, "жетишерлик жакшы" деңгээли бир адамга эле эмес, убакыттын өтүшү менен да өзгөрөт (узак мөөнөттүү, жакшырган сайын, бирок машыгуу учурунда да: мисалы, толук ылдамдыкта жүрүү дээрлик мүмкүн эмес жылуу). Ошондуктан, бул долбоордун идеясы жөн гана а) мурунку чуркоо жана б) эң мыкты чуркоо (aka highscore) жазуу, анан ошол жүгүрүүлөргө салыштырмалуу өзүңүздүн кандай экениңиз жөнүндө түздөн -түз пикир берүү.
Эгерде бул бир аз абстрактуу угулса, 7 -кадамга өтүңүз, аяктаган дисплей эмнени көрсөтөрүн билүү үчүн
Бул долбоордун дагы бир максаты - чындыгында жөнөкөй жана арзан нерселерди сактоо. Бөлүктөрүңүздү кайда заказ кылганыңызга жараша, бул долбоорду болжол менен 5 долларга (же премиум ички сатуучулардан заказ кылууда 30 долларга) бүтүрө аласыз, эгер сиз Arduino чөйрөсү менен ойногон болсоңуз, анда буга чейин сизде жакшы мүмкүнчүлүк бар сизге керектүү бөлүктөрдүн көбү же бардыгы бар.
1 -кадам: Бөлүктөрдүн тизмеси
Келгиле, керектүү нерселердин тизмесин карап көрөлү:
Arduino менен шайкеш келген микропроцессор
Акыркы бир нече жыл ичинде сатылган Arduino дээрлик баарын жасайт. Так вариант (Uno / Nano / Pro Mini, 8 же 16 MHz, 3.3. Же 5V) мааниге ээ эмес. Бирок, сизге ATMEGA328 же андан жакшыраак процессор керек болот, анткени биз 2км оперативдүү RAM менен 1кг EEPROM колдонобуз. Эгерде сиз Arduino дүйнөсүнүн майда -чүйдөсүнө чейин тааныш болсоңуз, анда мен Pro Mini 3.3V колдонууну сунуштайм, анткени ал эң арзан жана батарейканы үнөмдүү кылат. Эгерде сиз (салыштырмалуу) Arduino үчүн жаңы болсоңуз, анда мен "Нанону" сунуштайм, анткени ал кичинекей жана арзаныраак пакетте "Uno" менен бирдей мүмкүнчүлүктү камсыз кылат.
Белгилей кетчү нерсе, бул көрсөтмө сизге эң негиздери аркылуу сүйлөбөйт. Сиз жок дегенде Arduino программасын орнотуп алышыңыз керек жана Arduino менен туташууну жана эскизди жүктөөнү билишиңиз керек. Эгерде сизде түшүнүк жок болсо, мен эмнени айтып жатам, бул эки оңой үйрөткүчтү окуңуз: биринчиси, экинчиси.
128*64 пикселдүү SSD1306 OLED дисплейи (I2C варианты, б.а. төрт казык)
Бул бүгүнкү күндө эң арзан жана эң оңой дисплейлердин бири. Макулмун, кичинекей, бирок жетиштүү. Албетте, эгерде сизде буга окшош же жакшыраак чечимдин дисплейи болсо, анын ордуна аны колдонууга болот, бирок бул көрсөтмө SSD1306 үчүн жазылган.
- Прототипти жасоо үчүн "solderless breadboard" жана кээ бир секирүүчү зымдар
- 100nF керамикалык конденсатор (мүмкүн же кереги жок; 4 -кадамды караңыз)
- Же кээ бир крок-клиптер, же магнит, камыш которгуч жана кээ бир кабель (4-кадамды караңыз)
- Кызыл жана жашыл LED, ар бири (милдеттүү эмес; 5 -кадамды караңыз)
- 220Ohm эки резистор (эгерде LEDди колдонсоңуз)
- Баскыч (ошондой эле милдеттүү эмес)
- Ылайыктуу батарея (6 -кадамды караңыз)
2 -кадам: Дисплейди туташтыруу
Биринчи нерсе катары, биз дисплейди Arduino менен байланыштырабыз. Толук көрсөтмөлөр бар. Бирок, SSD1306 туташтыруу чынында оңой:
- VCCди көрсөтүү -> Arduino 3.3V же 5V (же жасайт)
- Gnd көрсөтүү -> Arduino Gnd
- SCL дисплейи -> Arduino A5
- SCA дисплейи -> Arduino A4
Андан кийин, Arduino чөйрөңүздө Sketch-> Китепкана кошуу-> Китепканаларды башкаруу бөлүмүнө өтүп, "Adafruit SSD1306" орнотуңуз. Тилекке каршы, китепкананы 128*64 пикселдик вариантка конфигурациялоо үчүн аны түзөтүүгө туура келет: arduino "китепканалар" папкасын таап, "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ге кетет. Эгерде сизде колуңузда болсо, анда 100nF конденсаторун D2 жана Gnd pinлеринин ортосуна туташтырып, "дебунинг" үчүн. Бул керек же мүмкүн эмес, бирок көрсөткүчтөрдү турукташтырууга жардам берет.
Бүткөндөн кийин, Arduinoңузду иштетүү убактысы келди жана велосипед менен секирип, биринчи тез тесттен өтүңүз. Сол жактагы сан ылдамдыкты көрсөтө башташы керек. Эгерде бул иштебесе, бардык зымдарды текшериңиз жана магнит камыш которгучка жетишерлик жакын экенин текшериңиз. Эгерде ылдамдык ченеми өтө эле жогору же өтө төмөн көрүнсө, эскиздин үстүнө жакын жайгашкан "CM_PER_CLICK" аныктамасын тууралаңыз (эскертүү: эскизде метрикалык аталыштар колдонулат, бирок эч бирдик эч жерде көрсөтүлбөйт жана сакталбайт, андыктан аны этибарга албаңыз жана бир чыкылдатууга 100,000ths миля жеткирүү).
5 -кадам: Кошумча Ыкчам Статус LED
Бул кадамда сүрөттөлгөн диоддор милдеттүү эмес, бирок тыкан: Эгерде сиз машыгуу учурунда китеп окууга / сыналгы көрүүгө олуттуу карасаңыз, дисплейди көп карап турганыңыз келбейт. Бирок ар кандай түстөгү эки светодиод перифериялык көрүнүштө оңой эле байкалат жана сизге кандай кылып жатканыңыз жөнүндө орой түшүнүк берүү үчүн жетиштүү болот.
- Биринчи (кызыл) LEDди D6 пинге туташтырыңыз (LEDдин узун буту Arduinoго кетет). LEDдин кыска бутун 220Ohms резистору аркылуу Gndге туташтырыңыз. Бул светодиод күйүп кетет, эгер сиз тренингдин учурдагы баскычында эң жакшы ылдамдыгыңыздан 10% же андан көп болсоңуз. Дагы аракет кылуу убактысы келди!
- Экинчи (жашыл) светодиодду D5 пинге кайра Gnd резистору менен туташтырыңыз. Бул светодиод күйөт, качан сиз 1%чегинде, же эң жогору чуркаганыңыздан жогору. Сен жакшы кылып жатасың!
Сиз мурдагы чуркооңузга же орточо ылдамдыкка салыштырмалуу кандай болгонуна жараша светодиоддордун күйүшүн каалайсызбы? Ооба, жөн эле пин D4 менен Gndдин ортосундагы баскычты туташтырыңыз. Бул баскычты колдонуу менен сиз "эң мыкты чуркоо", "мурунку чуркоо" же "учурдагы ылдамдыгыңыз" ортосундагы шилтемени алмаштыра аласыз. Кичи тамга "P", же "C" төмөнкү сол бурчунда акыркы эки режимди билдирет.
6 -кадам: Эргометр дисплейиңизди иштетүү
Дисплейиңизди иштетүүнүн көптөгөн жолдору бар, бирок мен башкаларга караганда кыйла практикалык көрүнгөн экөөнү көрсөтөм:
- Arduino Uno же Nano колдонгондо, балким, батарейканын көрсөткүчү аз USB кубаттуулук банкын колдонуп кубаттайсыз.
- 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" тамгасы сол жактын төмөн жагында көрүнөт). Башка басуу жана баскычты басуу учурунда учурдагы ылдамдыгыңыз жаңы маалымдама ылдамдыгына айланат (кичинекей "С" тамгасы көрсөтүлөт). Экинчиси, эч кандай шилтеме жазыла элек кезде, жаңы эргометрдин дисплейи менен биринчи машыгуу учурунда өзгөчө пайдалуу.
Машыгууңуз бүткөндөн кийин, батареяны ажыратыңыз. Сиздин машыгууңуз Arduino ички EEPROMда сакталган.
Көрүнүп тургандай, мен прототипимди ширетип бүттүм. Жыйынтык мага жакты дегендин белгиси. Сизге да пайдалуу болот деп ишенем. Бактылуу машыгуу!
Сунушталууда:
Arduino менен Servo Position пикир системасы: 4 кадам
Arduino менен Servo Position Feedback System: Эй, бул менин биринчи үйрөткүчүм. МЕНИН проектим сериялык мониторго же Arduino IDEнин сериялык плоттерине сервонун позициясын алууга мүмкүндүк берет. Бул гуманоид роботтор сыяктуу servo моторлорду колдонгон arduino роботторун программалоону жеңилдетет
Дифференциалдуу стробоскоп менен убакытты манипуляциялоо эффекти (кылдат деталдуу түрдө): 10 кадам
Дифференциалдык стробоскоп менен убакытты манипуляциялоо эффекти (кылдат деталдуу түрдө): Бүгүн биз мезгил -мезгили менен кыймылдап турган нерселер көзгө көрүнбөй турган дифференциалдуу стробоскопту жасоону үйрөнөбүз. Айлануучу объектте анча -мынча деталдарды эске алуу жетиштүү, антпесе көрүнбөйт. Ал ошондой эле бону көрсөтө алат
TFT LCD дисплейи менен жөнөкөй аба сапатын көзөмөлдөө- Ameba Arduino: 3 кадам
TFT ЖК дисплейи менен жөнөкөй абанын мониторинги-Ameba Arduino: Киришүү Азыр адамдардын көпчүлүгү потенциалдуу COVID-19 вирус ташуучусу менен тыгыз байланышта болбоо үчүн үйдө калышкандыктан, абанын сапаты адамдардын жыргалчылыгынын маанилүү факторуна айланат, айрыкча тропикалык өлкөлөрдө кондиционерди колдонуу бул мезгилде сөзсүз керек
Аба ырайына негизделген музыка генератору (ESP8266 негизделген Midi генератору): 4 кадам (сүрөттөр менен)
Аба ырайына негизделген музыка генератору (ESP8266 негизделген Midi генератору): Саламатсызбы, мен бүгүн өзүңүздүн кичинекей аба ырайына негизделген музыкалык генераторду кантип жасоону түшүндүрүп берем. жана жарыктын интенсивдүүлүгү. Бул бүтүндөй ырларды же аккорд программасын түзөт деп күтпөңүз
Кантип жөнөкөй жана күчтүү туткасын башкаргычты чогултуу керек- Микро негизделген: Бит: 10 кадам (Сүрөттөр менен)
Кантип жөнөкөй жана күчтүү туткаларды башкаргычты чогултуу керек- Микро негизделген: Бит: туткасынын аты Handlebit.The формасы туткасы жана абдан сонун көрүнөт! Эми биз Handlebit жөнүндө киришүү жасай алабыз, ага өтөлү