Каденс на ардуино


    Всех неистово приветствую!

    Периодически я довольно активно накручиваю педали по местным паркам. И тут до меня снизошло, что, возможно, я не очень правильно их накручиваю. Стал изучать вопрос. Велопедия утверждает, что частота педалирования в среднем должна быть от 80 до 110 об/мин. Ок. Значит нужен велокомп с датчиком каденса. Китай брать не хотелось. Нарыл Sigma 16.12 STS + Cadence за 2900руб. Цена не копеечная, а на дворе крЫзис и сам я, так-сказать, безработный B-) Прикинул и решил… По сути роль велокомпа у меня выполняет связка из айфона, программы Циклометр и часов Casio STB-1000 — и эта связка меня вполне устраивает. Да и показания каденса нужны лишь некоторое время. Затем тело привыкает и постоянно его отслеживать смысла нет. Одним словом пришло понимание, что надо собрать временную лабуду из говна и палок из ардуино и запасов.

    Идея: на руль помещаем два светодиода — зелёный и красный. Зелёный — каденс в норме. Красный, соответственно, нет. Затем пришёл к идее, что красный будет гореть только когда обороты выше нормы. Так и батарейки меньше жрать будет.

    Реализация:
    — на «перо» геркон из соседнего радио-магазина, на «шатун» неодимовый магнит
    — светодиоды запихну в валяющийся китайский габарит
    — роль контроллера исполнит Arduino Pro Mini 3.3V 8MHz

    Собрал всё это дело на макетке с UNO (легче шить и дебажить). Заместо геркона тактовая кнопка.


    И залил скетч с выводом данных в порт.
    Тестовый скетч:
    int cadInt = 0;  // задаём вывод геркона 0=pin2
    int ledGreen = 10;  // вывод зелёного светодиода
    int ledRed = 11;  // вывод красного светодиода
    
    int count = 0;  // счётчик оборотов
    int lastCount;  // переменная хранящая последнее значение счётчика оборотов
    int count4period;  // количество оборотов совершённое за период
    
    // ниже переменные чисто для дебага и доп инфо в сериал порте:
    long time;  // переменная которой присваивается значение внутреннего счётчика времени
    long lastTime;  // переменная хранящая последнее значение счётчика времени
    int period;  // период времени отработки
    
    void setup() {
      pinMode (cadInt, INPUT);  // пин датчика (геркона) на вход
      pinMode (ledGreen, OUTPUT);  // пин светодиода на выход
      pinMode (ledRed, OUTPUT);  // второго тоже
      
      attachInterrupt(cadInt, swap, RISING);
      
      lastTime = millis();  // после дебага удалить или закоментить
      
      Serial.begin(9600);  // после дебага удалить или закоментить
    }
    
    void swap() {
      count = count+1;
    }
    
    void loop() {
      delay(5000);
      
      count4period = count - lastCount;
      
      time = millis();  // после дебага удалить или закоментить 
      period = time - lastTime;  // после дебага удалить или закоментить 
     
      Serial.println(period);  // после дебага удалить или закоментить
      Serial.println(count4period);  // после дебага удалить или закоментить
      
      if (count4period >= 6 && count4period <= 9)
      {
        Serial.println ("Green");  // после дебага удалить или закоментить
        digitalWrite(ledGreen, HIGH);
        digitalWrite(ledRed, LOW);
        } else {
            if(count4period > 9){
            Serial.println ("Red");  // после дебага удалить или закоментить
            digitalWrite(ledGreen, LOW);
            digitalWrite(ledRed, HIGH);
            } else {
              Serial.println ("LOW CADENCE");  // после дебага удалить или закоментить
              digitalWrite(ledGreen, LOW);
              digitalWrite(ledRed, LOW);
            }
         }
          
      lastTime = time;  // после дебага удалить или закоментить
      lastCount = count;  
    }
    


    Всё норм. Всё работает.


    Затем всё это пересобрал на макетке и воткнул миньку.


    Кстати, вот схема:

    Вот только батареек у меня три, ибо двух будет мало, а Фритз три не показывает.

    А вот как выглядит китайский велогабарит:


    В разборе и процессе перепайки:

    Перепаять пришлось только один светик, тк второй прозрачный на самом деле красный.

    Вот так он выглядел по окончанию операции:

    В процессе продумывания проекта надумалось, что вместо зелёного и красного светодиодов — можно воткнуть два RGB, но в ближайшем электро-шопе таких не оказалось, потому имеем что имеем.

    Ну, а геркон я засунул в какую-то полиэтиленовую трубочку и загерметизировал сопледавом клеевым пистолетом.


    И так, что по затратам… Потратиться пришлось лишь на геркон (15р.), три элемента питания АА (86р.) и неодимовые магниты (их сцуко дорого купил ибо искать было впадлу, а с Али ждать не готов (160р.)). Остальное всё валялось по коробочкам и ждало применения. Вот даже провод мажорный от сдохшей кулермастеровской мышки применил:


    Естчё фото кому мало...







    Внимание! Буду рад увидеть буханку с рогами в комментариях ;) Но давайте серьёзно. На самом деле можно было спокойно вместо целой ардуины применить Atmega8L и отказаться от двух резюков на светики, а управлять ими ШИМом. Но, в загашнике у меня только обычная и нет держателя под аккум 18650 чтобы это дело питать. Может быть позже…

    … Финальный скетч. (Не бейте «программиста» он пишет как может):
    Cadence_1.0
    int cadInt = 0;  // задаём вывод геркона 0=pin2
    int ledGreen = 10;  // вывод зелёного светодиода
    int ledRed = 11;  // вывод красного светодиода
    
    int count = 0;  // счётчик оборотов
    int lastCount = 0;  // переменная хранящая последнее значение счётчика оборотов
    int count4period = 0;  // количество оборотов совершонное за период
    
    void setup() {
      pinMode (cadInt, INPUT);  // пин датчика (геркона) на вход
      pinMode (ledGreen, OUTPUT);  // пин светодиода на выход
      pinMode (ledRed, OUTPUT);  // второго тоже
      
      attachInterrupt(cadInt, swap, RISING);
    }
    
    void swap() {
      count = count+1;
    }
    
    void loop() {
      delay(5000);
      
      count4period = count - lastCount;
      
      if (count4period >= 6 && count4period <= 9) {
        digitalWrite(ledGreen, HIGH);
        digitalWrite(ledRed, LOW);
        } else {
            if(count4period > 9){
            digitalWrite(ledGreen, LOW);
            digitalWrite(ledRed, HIGH);
            } else {
              digitalWrite(ledGreen, LOW);
              digitalWrite(ledRed, LOW);
            }
        }
          
      lastCount = count;  
    }
    



    Фото на объекте:




    … и во весь рост


    На закуску видео:


    PS Статью перепечатывать без спроса нельзя — типа ©. Проект улучшать и перерабатывать можно. Всем плодотворной рабочей недели! А я — кататься на велике!

    PPS Сегодня сделал тестовый заезд. Выводы:
    — Всё отлично работает. Сбой был замечен лишь один раз. Видимо, проскочил дребезг.
    — Стоит применять RGB светодиоды — на ярком солнце будет наглядней.
    Поделиться публикацией

    Похожие публикации

    Комментарии 73
      +2
      Самое важное-то не сказали — в результате его работы вы стали крутить педали правильнее? Заметили ли улучшение?
        0
        На этот вопрос я смогу ответить лишь через месяц-два…
          0
          Как оказалось моя частота педалирования как раз находиться в зелёной зоне (катался до этого подсчитывая обороты в голове). Однако периодически забываешься и каденс падает. Индикатор напоминает и заставляет набрать темп.
        0
        По-моему, ATTiny13 хватит «за глаза». В мелком (SOIC) корпусе, чтобы конструкция была минимальных габаритов.
          0
          Посмотрел одним глазом дата шит «тринадцатой». Внешние прерывания вроде как обрабатывает, но вот мой код тупо из IDE Arduino в тиньку не зальёшь — памяти маловато. А на Си я не умею.
          ЗЫ А вот в 2313 — влезет! )
            0
            Если прямо так хочется ардуину, то можно ATTiny45 habrahabr.ru/post/245429
            Ну а вообще, на C не сложнее, чем на ардуине.
              0
              Ага, спасибо за ссылку. Если будет лишнее время, может и пересоберу.
          +1
          Смысл, вроде бы, в том, чтобы не крутить слишком медленно, иначе на колени большая нагрузка, так что красный надо зажигать когда частота недостаточна.
            0
            Думал об этом. Но пришёл к выводу, что мне этого не нужно. По не горящему зелёному я и так пойму, что частота недостаточна. При этом я же не спортсмен и достаточно часто есть участки где особо не попедалируешь и вот на них красный свет будет:
            а) раздражать
            б) вызывать привыкание.
              0
              Но в том и суть, что на таких участках тоже надо крутить с каденсом 80-110, но на меньших передачах. Не-спортсмены чаще вредят своим коленям заниженным каденсом, а не завышенным.
                0
                Сегодня сделал тестовый заезд. Никаких проблем. Кинул взгляд на педометр каденсометр, нет сигналов — поддал жару или скинул передачу.
            +1
            Вот объясните мне одну вещь:
            от 80 до 110 об/мин

            это значит что пока я скажу «раз» я уже должен полтора-два раза прокрутить педали. Но по факту я почти никогда не видел настолько бешено вкручивающих лисапедистов. Они что, все ездят неправильно?
              +1
              Скорее всего такой каденс актуален для тех, кто ездит по дорогам, а не по тротуарам в прогулочном темпе. В этом видео можно увидеть как педалируют с таким каденсом.

              Еще за каденсом следят бегуны, у них считается оптимальным каденс — около 90 (число для одной ноги) и 180 (для двух) касаний в минуту.
                0
                Речь про спортсменов и увлеченных любителей (т.е. тех, кто ездит много и далеко). Если человек катает пару раз в месяц в прогулочном темпе на 10-20-30 км, то заморачиваться с каденсом ему наверное нет смысла. А вот если вы проезжаете по 100+ км за день, то стоит начать думать о своем здоровье. А это и техника кручения, и правильная вода/еда, одежда и т.п.
                  +1
                  Кстати, 80-100 — это еще совсем не бешено (так можно вполне спокойно крутить даже без контактов), бешено это вот так — www.youtube.com/watch?v=h5a3C2MC87g
                    +4
                    80-90 — это не бешено, это как раз комфортный каденс, независимо от того, как вы ездите. 90-110 — это хороший каденс, который будет комфортным для большинства, кто регулярно активно катается, неважно как и где.

                    Различные сити-байки, круизёры и прочие чисто прогулочные велосипеды, накладывают некоторую специфику на саму манеру передвижения и на усилия прилагаемые для этого. Плавно, меланхолично и вальяжно ползая по парку на круизёре вы не стараетесь прилагать усилия и напрягаться, даже в малейшей степени и скорость пешехода обычно вас устраивает, как и то, что вся ваша прогулка обычно не занимает больше, чем пару десятков минут, по этому вопрос каденса тут не стоит вообще.

                    Если вы двигаетесь, чуть более активно, чем полусонно по парку или тротуарам, то имеет смысл контролировать свой каденс. Самое главное, что надо контролировать — это низкий каденс. Если вы ездите на работу не спеша или прогуливаетесь вечером на велосипеде для поднятия тонуса, то старайтесь всё равно держать каденс не ниже 80. Поверьте — это не много и это совершенно не сложно. Почему низкий каденс плохо — написано очень много всего и можно лишь вкратце перечислить: разрушение суставов коленей, разрушение мелкой кровеносной капиллярности в мышцах, гипертрофия и деградация венозной структуры, деградация энерго-транспортной системы мышц.

                    Почему новичку не стоит обращать внимание на высокий каденс? Очень просто — поддержание высокого каденса для новичка требует работы над координацией. Как это ни странно для некоторых звучит, но техника езды на велосипеде гораздо сложнее, чем кажется на первый взгляд. Поддерживая высокий каденс (выше комфортного, а не запредельный) вы работаете над координацией движения ног и одновременно тренируете сердечно-сосудистую систему, поскольку повышая саму скорость движения ног, вы повышаете пульс, даже если работа происходит частично в холостую. Но постепенно увеличивается капиллярность в мышцах и повышается эффективный объём сердца и сглаживается координация и комфортным становится более высокий каденс, чем раньше.

                    Не вдаваясь в физиологические выкладки, оптимальный каденс это компромисс между силой и сердцем:

                    1) низкий каденс аналогичен приседаниям со штангой, т.е. высокая нагрузка на мышцы и суставы, очень быстрое накопление молочной кислоты, но относительно невысокая нагрузка на сердечно-сосудистую систему. Никто не приседает со штангой по 30-40 минут непрерывно, а вот на велосипеде многие новички ездят в таком режиме.

                    2) высокий каденс — бОльшая нагрузка на сердечно-сосудистую систему (не только сердце, а на всю инфраструктуру, включая мелкие каппиляры), требует лучшей и более правильной координации, но существенно снижается разрушающая нагрузка на суставы и мышцы работают в режиме хорошего снабжения кровью и не забиваются продуктами распада топлива.
                      0
                      Спасибо за подробный ответ. Понял, что надо заниматься собой… я постоянно с низким катаюсь, и привык уже давно так. Впрочем, езжу немного, но тем не менее…
                      При поднятии начинаю уставать намного быстрее, хотя теоретически энергии не должно тратиться сильно больше. Или должно?
                        +1
                        Значит нужно понизить передачу. Да, скорость упадет, но зато снизится нагрузка на колени. Вы сами почуствуете где и когда можно будет повысить передачу.
                          +1
                          Энергия тратится по разному, когда вы крутите педали медленно на низком каденсе, вы тратите больше сил на продавливание педали. Когда вы вращаете быстро педали на высоком каденсе, вы тратите меньше сил на саму педаль, но увеличиваются «накладные расходы» на то, что бы быстро передвигать сами ноги в воздухе. Если у вас совершенно не тренированная сердечно-сосудистая система, то эти накладные расходы будут больше и тогда да, при более высоком каденсе энергии в целом будет тратится больше, но при этом существенно снижаются риски травматизма. Но поддерживая постоянно каденс чуть-чуть выше, вы тренируете сердечно-сосудистую систему и очень быстро вы начнёте уставать гораздо меньше вообще и на высоком каденсе в частности.
                            0
                            Спасибо за ответ, буду тренироваться.
                            В принципе в любом случае при высоком каденсе энергии уйдет больше — элементарно надо больше раз поднимать ноги вверх, вот тут и будет проигрыш. Но зато меньше нагрузка на колени плюс тренировка сердечно-сосудистой системы. Это аргумент серьезнее:)
                        0
                        Это не бешено, это вполне себе «рабочий» ритм по более-менее ровной дороге. Я когда в сельпо езжу, даже на грунтовке примерно такой каденс и имею.
                          0
                          0
                          Классика… 3000 это дорого но зато айфон и Casio…
                            +2
                            Не считайте чужие деньги ;) И да, три рубля в общем-то не деньги и я уже хотел купить ту сигму, однако:
                            — деньги есть куда пристроить
                            — через месяц-два эти показания мне будут уже не нужны
                            — в чемоданчике без дела валяются 6шт ардуин.
                              +1
                              Это уже веские аргументы.
                              Об этом и надо было написать а не «дорого».
                            0
                            Была где-то у меня удобная таблица, но не нашёл, но вот калькулятор каденса velo-kursk.ru/velo_calc.htm
                            Выбрать часто используемые передачи и просто поглядывая на скорость контролировать свой каденс, зная какую минимум скорость нужно выдерживать.
                            Это так, самый экономный вариант, если часто кататься, то потом все это уже не нужно и все на автомате.
                              +1
                              Буквально в субботу делал уроки по обучению для ардуино. Сделал примерно аналогичную макетку. При нажатии на кнопку по прерыванию на спад увеличивалось значение переменной. И вот там столкнулся с одной большой проблемой называемой дребезг контактов. То есть на одно нажатие могло быть до 10 операций инкремента.
                              Вопрос, как в данном решении решен данный момент?
                                0
                                Резистор + конденсатор. Классика! ;)
                                  0
                                  Извиняюсь, слепой я, не заметил конденсатор )))
                                0
                                Покажите как ваш каденсометр выглядит на самом велике и на педалях и как выглядят провода на велике!
                                Интересно глянуть как получилось, без ехидства. Изображения и в статье смотрелись бы интересно. :)
                                  0
                                  Вы меня опередили )) Хотел попозже этим заняться, но ради Вас вытащил вел на улицу и провёл фото сессию. Держите!
                                  +4
                                  Напомню, как должен выглядеть идеальный велосипедист
                                    0
                                    Эта тенденция 1995-2005 годов уже не актуальна, сейчас в велоспорте от этой крайности уже отходят и если внимательно изучить топ-20 успешных гонщиков, то среди них заметный процент весьма сбитых и крепких мужичков, далеко не всегда «веса пера» и это относится не только к тяжёлым спринтерам и громоздким раздельщикам, но и достаточно часто к горнякам.
                                    0
                                    Сразу оговорюсь, я начинающий ардуинщик, в схемотехнике не шарю. Воник вопрос, зачем нужен конденсатор на кнопке? Ведь вы уже поставили резистор, этого недостаточно для защиты от дребезга? Плюс ко всему, почему нельзя использовать pinMode(cadInt, INPUT_PULLUP) — судя по документации, все пины уже обородованы подтягивающим резистором, который остаётся лишь активировать.
                                      0
                                      Есть два вида подключения кнопок к микроконтроллерам.
                                      Первый это так как указано на схеме.
                                      Второй это как раз подача низкого сигнала на ногу, вот тогда и надо переводить ножку в состояние PULLUP.
                                      Посмотрите документацию на ардуино, там указано.
                                      Не всегда хватает встроенного резистора.
                                        0
                                        Я совсем запутался. Вот тут ребята подают 5V на ножку через внутренний резистор без конденсатора.
                                          0
                                          Ну правильно! На пальцах: они к пину тянут, через кнопку, минус. А у меня в схеме к пину (через кнопку) подведён плюс.
                                          Т.е. если порт контроллера должен отрабатывать по низкому уровню (-), то можно использовать внутренний подтягивающий резистор, а если по высокому (+), то обвязка делается снаружи.
                                            0
                                            И правильно, подключать надо БЕЗ конденсатора.
                                            В данной схеме конденсатор просто маскирует проблему добавляя новую проблему, более серьёзную.

                                            А внутренний резистор не всегда хорош, у него слишком большой номинал и схема начинает ловить помехи, от мобильника например. Это решение хорошо когда кнопка сразу возле контроллера, а когда она на проводах и далеко… надо подтяжка посильнее и ЗАЩИТУ ОТ СТАТИКИ. Попробуйте проехаться с незащищенной схемой под ЛЭП например — конец схеме в 99% случаев.
                                              0
                                              Может и правильно, но без кондера дребезг дай боже. По хорошему, как кто-то писал, надо вообще через триггер Шмитта, но у меня с ним не взлетело. «Свариться» геркон — буду разбираться.
                                                0
                                                Все входы контроллера и так имеют триггер шмидта на входе.
                                                Вообще странно, геркон у вас похоже изначально коцнутый, из всех контактов он имеет наименьший дребезг.
                                                  0
                                                  Ой, Alexeyslav не читайте мой предыдущий ответ (#comment_8381924) — не правильно понял Ваш. Сообразил, что Вы имели ввиду, что нельзя навешивать кондер когда идёт управление через 0.
                                                  Геркон в норме. Я вообще сначала же всё на макетке с кнопкой собрал, которой и имитировал работу нормально разомкнутого геркона.
                                                  Про триггер взял отсюда:
                                                  Про триггер взял отсюда:

                                                    0
                                                    Собственно что через "+" что через "-" один фиг, кондёр параллельно кнопке — это плохо. Не знаю откуда это повелось, но еще во времена больших компьютеров все кнопки были зашунтированы конденсаторами, как с того видео. Кнопки обгорали за месяц-другой при том что конденсатор там был 0.1мкФ и эти кондеры оттуда постоянно выкусывали, без них кнопки были вечные. Причем кнопки эти были не клавиатурные, а концевики которые редко срабатывают — на открытие дверцы и т.д.
                                                    Наверно смотрят что 40 лет назад таким образом боролись с дребезгом значит и мы будем, тогда ведь не дураки проектировали.

                                                    Как минимум, в таком случае надо ограничивать ток через кнопку. резистор в 100...500 Ом последовательно с кнопкой погоды не сделает, зато очень сильно уменьшат ток разряда через кнопку.
                                          0
                                          Я сам гуманитарий ;) За 2 года из «Электроника шаг за шагом» Рудольфа Свореня осилил лишь 60 страниц.
                                          А по схеме… Эксперементальным путём было установлено, что резистора мало и нужен конденсатор. Так же было выявлено что INPUT_PULLUP в моей схеме не работает. С чем связано — разбираться не стал. С опытом пришёл к пониманию фразы: «Не тронь, что работает».
                                            0
                                            p.s. О! Выше уже ответили. mcleod095 СПС! )
                                              0
                                              Нельзя так делать! Это просто ужасно. Уберите конденсатор оттуда. Резистора достаточно, а дребезг подавлять надо программно.
                                              Ваше решение конечно же решает проблему дребезга, но за ней вы не замечаете главного — конденсатор раз за разом разряжается через контакты, они просто обгорают и очень скоро настанет время когда обгорят настолько что перестанет контачить вообще. Герконы тоже подвержены этому воздействию.

                                              Программно подавить дребезг просто — в момент когда зарегистрировали замыкание отключайте реакцию на кнопку на время 1мС и только после истечения этого времени надо принимать во внимание состояние кнопки.
                                                0
                                                Вот тут-то и кроется сам подвох.
                                                Для данной задачи в принципе достаточно даже решения через каждые 50мс проверять состояние ноги.
                                                На прерывании тоже достаточно отключить при вхождении в обработчик прерывания обработку прерывания (масло масляное). Сделать задержку в 50мс и после чего инкрементировать переменную с последующим включением обработчика прерываний.
                                                Что-то вроде того.
                                                void swap() {
                                                  noInterrupts();
                                                  delay(50);
                                                  count++;
                                                  interrupts();
                                                }
                                                


                                                Но вот что делать когда у меня два таких прерывания могут быть? И мало того, вся схема питается от батареи, и желательно на время ожидания уводить ее в глубокий сон. Ставить микросхему триггера — понижать время жизни от батареи.
                                                  0
                                                  Так и сделай. настрой таймер с периодом в 10мс и фиксируй состояние контактов. Можно даже подтяжкой управлять — между проверками она НЕ НУЖНА, но может быть ситуация что надолго остановишься в момент замыкания контакта и высадит всю батарейку.
                                                  Прерывание будет реально коротким — считать с порта и проверить состояние кнопки — если состояние изменилось — выполнить необходимые действия иначе спать. На всё-про-всё 20...30 тактов.
                                                    0
                                                    Не делайте так никогда.
                                                    Я по незнанию так написал.
                                                    Контроллеры AVR на время обработки прерывания сами блокируют выполнение других прерываний. Так что в принципе кода
                                                    void swap() {
                                                      delay(50);
                                                      count++;
                                                    }
                                                    


                                                    Может быть вполне достаточно.
                                                      0
                                                      Не было достаточно такого кода — я пробовал. Причём значение delay ставил 100.
                                                        0
                                                        Я имел ввиду что не надо отключать прерывания в функции обработчике прерываний.
                                                        А так да, при дребезге контактов даже с задержкой 1 секунда мы получим зачастую две операции ингредиента.
                                                        После того как придет первый сигнал на обработку, будет снят бит прерывания, и функция будет делать то что ей сказали, а именно ждать. Но в это время произойдет спад сигнала и снова подъем, естественно это выставит бит прерывания опять. Все последующие изменения сигнала просто не будут обработаны.
                                                        После того как завершится функция обработки прерывания, МК увидит что стоит опять бит прерывания и запустит данную функцию еще раз.
                                                        более правильным выходом наверное будет все таки не по прерыванию считать, а в основном цикле программы, но тогда время работы от батареи будет намного меньше.
                                                        Наверное выход в обработчике прерываний конфигурировать прерывание по таймеру и уже в обработчике прерывания по таймеру делать операцию ингредиента и вгонять МК в сон.
                                                        Хотя все конечно надо проверять и тестировать.
                                                          +1
                                                          Сбросить признак прерывания после задержки.
                                                          Да и задержка вовсе не необходима — запустили таймер, который отсчитает милисекунды и разрешит внешнее прерывание перед этим его сбросив. Это будет программный аналог одновибратора по входу. Кстати, можно не запрещать прерывания — пусть с каждым импульсом таймер перезапускается, и как только импульсов не будет больше 1 милисекунды — таймер досчитает до нуля, вызовет прерывание в котором уже можно анализировать состояние контакта. Пожалуй, такой режим будет экономичней чем постоянный опрос.
                                                            +1
                                                            то что сбросить бит прерывания я вот что-то и не подумал, хотя как сделать это на arduino C не знаю, видел как сделать такое на асме.
                                                            Но схема с таймером мне нравится больше.
                                                            Даже предложенный Вами вариант с перезапуском таймера в принципе будет довольно интересным решением. Надо теперь воплотить в макете и проверить работу.
                                              0
                                              del
                                                0
                                                Кстати вот схема
                                                Для тех кто захочет повторить было бы неплохо разместить Электрическую принципиальную схему
                                                  0
                                                  Каденс конечно важен, но пульс гораздо важнее, особенно если ведете малоподвижный образ жизни и/или если есть лишний вес — покупка пульсометра может привести к весьма печальным выводам типа — чсс в районе 180 во время всей поездки. Это плохо. Очень плохо (гуглим «спортивное сердце»). Поэтому настоятельно рекомендую всем начинающим (и не очень) внимательно наблюдаться за своим мотором и не перегружать его.

                                                  ЗЫ: Интересно, сколько катается автор? Похоже не очень много (ну или велосипед новый) — стандартные кубовские педали полное УГ и обычно одна из них дохнет после первой тысячи км…
                                                    0
                                                    Накатано как раз в районе тысячи. Пока вроде норм. Вел купил в 2011 и тогда катал часто. Потом женился… Сейчас думаю восстановить форму.
                                                      0
                                                      У меня тоже норм было (если, конечно, не считать того что они очень скользкие), а потом взяла и умерла :) (сточился конус)
                                                      0
                                                      А сколько максимальный допустимый пульс при поездке? У меня как раз малоподвижный образ жизни — программист как никак.
                                                      При увеличении каденса как раз растет пульс, и устаю быстрее. Где граница?
                                                        +1
                                                        От целей зависит, гуглим «пульсовые зоны» :) Если хочется избавиться от лишнего жира то ~130 (только по началу это очень медленно, возможно, даже быстрым шагом)… Кстати, еще про питание не надо забывать forum.velomania.ru/showthread.php?t=193599
                                                          0
                                                          В смысле ~130 это быстрым шагом? Или это если вообще никогда не катался — то так будет? Я в принципе с детства на велосипеде катаюсь (не профессионально, а так — по городу), поэтому не совсем новичек. Просто последние года 4 практически забил, теперь вот решил восстанавливаться.
                                                            0
                                                            В смысле что если ведете сидячий образ жизни и есть пару десятков лишних кг — то вполне возможно что пульс 130 будет уже при быстром шаге (на велосипеде, соответственно, это легко может быть и 160 и 170 и выше, даже при совсем смешных нагрузках) — поэтому и пишу что пульсометр очень желателен.
                                                              0
                                                              Понял, спасибо за уточнение.
                                                          +1
                                                          То что устаете — это хорошо )))
                                                          Если не влезать в дебри профессионального спорта, то вообще есть два уровня пульса при кардио нагрузках. Первый направлен на сжигание жира, а второй на тренировку сердца. Расчитываются они по формуле. Формулы можете поискать в интернете — статей посвещенных теме over 9000. Не знаю Ваш возраст, но если он в районе 33+-, то для начала советовал бы держать в диапазоне 115-140. Тут главное не переусердствовать на начальном этапе — как говорил один известный человек: «Лучше меньше, да лучше».
                                                            0
                                                            Понял, спасибо за развернутый ответ. Правда пульсометра нет, буду «на глаз» оценивать.
                                                              0
                                                              Если под рукой часы или смартфон, то считаете количество ударов за 10 секунд и множите на 6. Получается очень быстро.
                                                                0
                                                                Лучше за 6 секунд и умножать на 10. 6 секунд отсчитать легче чем умножить на 6.
                                                                  0
                                                                  Зато точность ниже. Один «недосчет» приведет к десяти «потерянным» ударам сердца. Часто так и бывает, что удар приходится, например, на конец счета, стоишь и сомневаешься, включать ли его в расчет.
                                                                  А что насчет умножения — через несколько тренировок наизусть помнишь типовые значения и результат сразу всплывает в памяти.
                                                                  Хотя в целом, конечно, это компромисс. Либо точность, либо скорость.
                                                                    0
                                                                    Так можно примерно прикинуть фазу на которой истекла 6-я секунда и сделать корректировку.
                                                                      0
                                                                      Я перфекционист. Могу зависнуть на этом шаге:)
                                                          0
                                                          Наш физрук говорил что если начинаете дышать ртом, то пульс поднялся выше 140.
                                                          0
                                                          Тема каденса важна.
                                                          Когда-то тоже задавался этим вопросом, но у меня были цели считать каденс без паяльников.
                                                          Была написана Java програмулька для мобилки, которая считала каденс исходя из текущей передачи и скорости.
                                                          Та прога давно потерялась, но живет ее порт на андроид: goo.gl/CWrKSz
                                                          В поездках по дорогах, конечно же, вещь совсем не удобная, даже если снимать скорость с GPS, но вот позанимавшись с прогой на станке, потом быстро запоминаешь соотношение передачи/скорости и уже знаешь, когда тебе пора переключится. При этом затрат 0, ничего паять/покупать не надо.

                                                          Еще можно катать с метрономом. Включил в наушники и вперед.
                                                            0
                                                            А я когда-то еще проще сделал: kibergus.su/node/40
                                                            Геркон замыкает сопротивление, подключенное к микрофонному входу гарнитуры. Программа на телефоне пишет звук и считает щелчки. P.S. я тогда знал только про чип и дип, поэтому цены указаны конские. На самом деле детали дешевле.
                                                              0
                                                              Идея «светофора» на руле — отлично. Я раньше тоже был озабочен цифрой каденса на руле, пока не потерял велоцомпутер. После чего перестал беспокоиться о каденсе и стал больше наслаждаться прогулками )

                                                              Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                              Самое читаемое