Как это было


Мой отец увлекался электроникой. Дома был паяльник, провода, куча радиодеталей. Он с лёгкостью чинил телевизоры, холодильники — в качестве хобби. Я всегда был рядом.


В 10 лет мне подарили радио конструктор, я думаю у многих такой был.




Я собрал на нем все схемы, мне нравилось как они работали. Изучил все основные радиодетали. Потом купили радиоконструктор — «радиоприемник в корпусе». Надо было уже паять, он тоже скоро был готов и отлично работал. Я продолжал делать небольшие схемки. Платы — лак и стеклянные трубочки. Но потом увлёкся программированием. Освоил Си, потом Си++. По окончанию университета, стал работать программистом, чем и занят по сей день.


Arduino


Когда у меня подрос сын, я решил его тоже научить электронике. Взял свой старый пыльный конструктор и … сын его «выкинул». Что это за хлам, зачем мне пищать разными тонами. Какие- то не интересные схемы. Я задумался, и стал смотреть, чем можно заменить его. Знаток и другие конструкторы, были в общем-то аналогичны. И тут я случайно наткнулся на Arduino. Вот то, что нужно. Электроника и программирование в одном флаконе.




Купили плату и стали заниматься программированием, и изучать электронику. Поделав различные задания, накупив кучу датчиков, встал вопрос — чего делать дальше. Сын спросил— а что можно реальное сделать на Arduino? Мы провели мозговой штурм и составили перечень интересных, полезных приборов, которые было бы интересно сделать. Начали думать, как мы их будем делать. Первым нашим прибором стал велокомпьютер. У нас как раз были велосипеды на всю семью, вот их и надо было оснастить мощным вычислительным центром на микроконтроллере. Мы набросали программу в Arduino, датчики — кнопки, все отлично работало. Осталось дело за малым — собрать все в коробочку и пользоваться.


Мне хотелось научить сына паять, и показать, что если захотеть, то можно сделать красивый компактный современный прибор самостоятельно, а не покупать его. Пришлось вспоминать былые навыки. Как же все изменилось…


Мои знакомые выводные резисторы заменились на SMD компоненты. Очень сложные платы можно было делать дома с помощью лазерного принтера. Схемы можно тестировать в симуляторах. В интернет очень много информации, схемы, курсы по программированию. Я стал во всем этом разбираться.


Выбираем компоненты для велокомпьютера, схема


Все должно быть недорого. Если сгорит, то не жалко. Это ведь первый прибор. Посмотрели, что продаётся на рынке. Как правило, все велокомпьютеры крепятся на руле, имеют экран, защищены от дождя, имеют один или два датчика (на колесо и на педали). Они могут посчитать пробег, показать текущую скорость, каденс (количество оборотов педалей), время поездки, потраченные калории и другие показатели.


Экран решили исключить. Как правило они или дорого стоят (в виде готовых плат) или их сложно припаять (например экран от сотового), да и программу он сильно усложняет. У нас уже была практика общения с bluetooth модулем. Его решили и взять на замену экрана.




Экраном, в итоге, будет смартфон, но смотреть туда будем редко, прибор автономный, а экран нужен будет, в основном, чтобы посмотреть итоги поездки или промежуточные данные. Bluetooth модуль позволяет на ходу программировать прибор, начать замер, устроить соревнование — все это легко.


Решили добавить звук — пищалку, так можно сигнализировать о разных событиях. Очень понравилась идея, что каденс должен быть не меньше 80, вот об этом и будем пищать. В качестве пищалки — динамик от сотового телефона:




Батарейки порядком надоели, решили осваивать аккумуляторы. У нас был небольшой аккумулятор от детского вертолёта — его и берём, потом оказалось? что такой тяжело купить, поменяли на LIR2450.




Выбираем корпус. Понравился вот такой от компании Gainta.




У них очень широкий выбор корпусов. Правда есть минимальная сумма покупки, купили сразу наперёд, и на другие приборы тоже.


Микроконтроллер — конечно ATMEGA, как на Arduino. Сколько же он стоит — больше 100р в москве. Странно, в китае готовая Arduino всего 200р. Решил выбрать замену — Attiny, но она не очень понравилась. Я стал копать, и случайно наткнулся на серию stm8, stm8s003f3p всего 20руб, при том, что есть вся периферия. Отлично! Будем делать на нем. Правда среда другая, но там Си, который я знал. Так же плюсом стало наличие нормального отладчика, чем в Arduino очень не хватало!


Подбираем схемы зарядки li-ion. Довольно быстро я вышел на микросхему TP4056 — 10р, правда в Китае — заказываем десяток — пригодятся. Плата защиты от переразряда встроена в аккумулятор — так что не нужна. Но в принципе, у STM8 порог включения 3в, так что плат защиты особенно не нужна.


Все — схема готова, компоненты выбраны. Нужен программатор ST-link, купил готовый в Москве, как оказалось потом дорого, ну да ладно. Наша первая схема:




Делаем плату и все паяем, прибор готов


Сделали плату. ЛУТ методом не получилось. Нашли новый метод — путём холодного переноса тонера, с помощью ацетоном. Получилась отличная плата, правда конечно с небольшими косяками, метод потом довели до идеала. Пользуемся до сих пор. Плата готова. Ждём микросхемы из китая (TP4056 у нас купить не реально). Все приехало. Начинаем паять и видим, что при разводке микросхемы зарядки выбрали не тот корпус, очень похожи названия SO8, MSOP8! Но плата уже готова, переделывать лень, во второй версии учтём! Убираем функцию зарядки и делаем ее на отдельной плате. Проводками все замыкаем как надо.




Собираем все в корпус — обе дырки крепёжные не там. Ладно не беда, крепим вверх ногами, и подбиваем поролоном. Крепим кнопку — не крепится. Заливаем термоклеем — отваливается. В итоге делаем так:




На будущее — лучше было делать кнопку на плате сразу! Крепим пищалку — куча проводов, все мешается, но работает.




Переходим к программированию


Для облегчения работы сыну, пришлось провести небольшую лекцию, что вместо одной функции надо писать другую:


  • digitalWrite = GPIO_WriteHigh
  • digitalRead = GPIO_ReadInputPin
  • pinMode = GPIO_Init
  • Delay — написали сами
  • millis() — не нужен, перешли на миллисекундный таймер и прерывания, очень удобно.

Начали писать программу. Таймеры, кнопки, все через прерывания. Написали тестовую программу и перешли к тестированию. Первая строка кода — включаем bluetooth модуль. И тут получаем кризис «мозга». Сколько времени убито, чтобы решить проблему. Включаем bluetooth модуль и… МК перегружается. Что не так, все работает, конденсаторы на месте, модуль потребляет 30 мА, но не работает. Через 2 недели мучительных проверок, тестов и различных советов на форумах — причина найдена. На плате bluetooth модуля есть конденсаторы, при быстром включении модуля они заряжаются, питание МК резко проседает и он перегружается. В итоге ограничиваем линию питания модуля через резистор 10 ом (подобрали опытным путем) — все отлично работает. Правильнее было питать модуль от отдельного LDO.

Готова первая тестовая мини программа — пищим, считаем скорость и выдаём на телефон. Включаем — писк еле слышно. Оказалось питание у нас не 5в и потому тихо. Добавляем на отдельной мини платке — тразистор — отлично — слышно громко.




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




Итак поехали. Вместо одного оборота — тысячи. Что за ерунда. Разбираемся, ага, дребезг контактов, ставим задержки — отлично работает. Проверяем скорость совпадает с GPS на телефоне. Начинаем заниматься энерго сбережением. Прибор должен спать очень долго и работать экономно.


Энергосбережение.


Основная цель, на одном заряде прибор должен работать очень долго. Выключателя нет, будем использовать спящий режим. Прибор должен сам включаться, внешние прерывания от геркона, сам выключаться, если нет движения 2 минуты, то выключаемся. И самое главное, он должен сам собирать статистику по поездкам и хранить ее в памяти. Долго думали как определить, что такое одна поездка? И решили, что если в течение 3 часов не было движения, то поездка закончилась, и велосипед дома. Чтобы 3часа не работать в полном режиме, решено использовать режим сна, с таймером автопробуждения. Таймер можно завести максимум на 30 секунд, так что просыпаемся каждые 30 сек, уменьшаем счётчик, и так, пока не пройдет 3ч. Как прошло — поездка закончена фиксируем данные. Отладить данный алгоритм было не легко, компилятор пытался каждый раз помешать оптимизацией кода. Но, в итоге, все получилось.


По теоретическому расчёту, прибор должен спать больше года, МК в спящем режиме 4мка, если все отключить, отлично. Программируем спящий режим — проверяем. Спит 3 недели и батарея садится. Вместо 4мка — откуда то имеем больше 200мка. Опять все проверяем, и видим, что LDO потребляет в пассивном режиме 200мка.!!! Нашли. Надо менять схему! Пока тестируем дальше.


Дополнительные функции


В отличие от велокомпьютеров, которые есть на рынке, решили добавить функционал. Наш прибор должен уметь:


  • вести статистику за последние 4 поездки, и хранить это все в энергонезависимой памяти
  • считать калории, только когда крутятся педали
  • считать активное время поездки, когда скорость была больше 4 км\ч
  • иметь возможность контролировать скорость и каденс, и при нарушении выбранного режима оповещать звуком
  • программироваться по bluetooth: очистка памяти, вывод информации о прошлых поездках, установка параметров — вес, диаметр колеса, параметры контроля скорости
  • учитывать не среднюю скорость, а скорость, с которой ехали большую часть времени. Это необходимо, например, для случая, когда вы едете час, потом отдыхаете 30 минут, потом опять едете, опять постояли 5 минут. Всегда была разная скорость. 5 минут ехали в гору, 10 секунд с горы. В итоге средняя скорость будет совсем не показательна. А вот скорость, с которой ехали наибольшее время — то, что надо

Дописываем все эти функции. Задача не простая, но интересная — работа с массивами, условиями. На очередной новой функции получаем сообщение — программная память закончилась. У МК всего 8 кбайт. Жалко, что можно сделать? Начинаем анализировать лог, куда все ушло, и видим, что в стандартной библиотеке есть режим отладки и он включён, выключаем — получаем дополнительно 2кб памяти. Теперь хватает. В итоге, все функции влезли, и ещё чуть-чуть осталось.

Отдельно стоит рассказать про сам микроконтроллер STM8. Все это время он показывал себя просто отлично. Чего только с ним не делали, по ошибке. И питание подавали плюс на минус — жив, и на ножки подавали HIGH, при коротком замыкании на землю, тоже жив. В общем довольно надёжный микроконтроллер. Очень понравилось работать в отладчике. Почти как на компьютере. Симулятор помог отладить сложные функции, тоже удобно. В общем при такой цене, микроконтроллер просто отличный. А ещё есть версия с 32к флеша на борту, за 60 рублей, вообще супер.


Финальная версия


Сын очень доволен, прибор работает как хотели! Устраиваем гонки, все лето катаемся с ним, оказалось за одну прогулку мы проезжали больше 14 км, раньше не задумывались об этом. По функциям прибор получился лучше покупного, жаль только не хватает экрана! Но буквально через месяц пользования про экран забываешь, изредка смотришь статистику, об остальном прибор сам оповещает. Отлично работает функция контроля каденса, помогает выбирать нужный скоростной режим.


Для остальных членов семьи делаем новую схему и переделываем плату. Учитываем ошибки:


  • заменяем пищалку на более громкую HC0903A
  • убираем LDO с МК, оставляем его для bluetooth, для сопряжения простой делитель на резисторах
  • Добавляем usb разъем — так заряжать удобнее
  • Добавляем угловую кнопку сразу на плату — проводов лишних нет
  • Один геркон убрали в корпус, а второй, для педалей оставили на проводе, разъем убрали — почти полное отсутствие проводов.

Катались все лето, за 3 месяца аккумулятор ни разу не пришлось заряжать.

Проектом очень довольны. Оказалось от макета на Arduino, до конечного изделия — как океан переплыть, даже на таком просто приборе. Столько много мелких недоработок никто не ожидал встретить. Зато на практике проверили, что не так сложно перейти на другой класс микроконтроллеров, они оказались очень похожи между собой. Жалко, что smt8 не так распространён. Но, если писать простую программу, то хватает стандартной библиотеки от ST, все драйвера там есть — UART, I2C, SPI, ADC, EEPROM.


Подведём итоги. Готов реальный прибор, приносит пользу, работает до сих пор. Новый вариант полностью устраивает. Сын показал его всем своим друзьям — он просто молодец. Чего и вам желаем! Если вы все еще тестируете на что способна ваша Arduino, то подумайте, какой прибор вам нужен, чтобы вы хотели купить — и сделайте его сами! Вы получите море удовольствия и опыта.


Если же вам интересно сделать такой же велокомпьютер, то вся информация по проекту есть на github. Единственное, очень рекомендую, написать прошивку самостоятельно, чтобы заработать опыт! Делая этот прибор, вы научитесь:


  • Разводить платы в Kicad
  • Делать платы дома
  • Паять smd компоненты
  • Программировать микроконтроллеры

Комментарии (78)


  1. 2morrowMan
    19.10.2017 11:26

    Если планируете и дальше тренироваться и мастерить, то рекомендую еще 3д-принтер прикупить. На thingiverse.com можете посмотреть какие есть уже готовые 3д-модели для печати, которые могли бы вам пригодится.


    1. myowndevice Автор
      19.10.2017 13:36

      3D принтер хотел купить, но пока не время, дорого еще стоят. Ну и хотелось, чтобы без какого то спец оборудования все это делать, чтобы каждый мог. Корпуса — те, которые легко купить. Комплектующие — тоже. Прибор этот сделал уже давно, больше 2 лет назад. Сейчас просто описать решил. За это время уже много поделано, буду тоже описывать. Сейчас занят Time Lapse камерой на STM32, хочу чтобы 5 mpx снимки в jpeg, отправлялись по GSM. Такое статичное фото наблюдение.


      1. Foreglance
        19.10.2017 18:56

        Возможно для начала пользоваться сервисом 3д печати — не тратясь пока на принтер, освоение, брак? У меня принтер года 3 уже есть и он мне нравится, но вопрос по прежнему для меня открытый.


        1. Visphord
          19.10.2017 20:21

          тут как с лутом — когда сам делаешь платку дома и не от кого не зависишь — цена ошибки мала и переделать не проблема. если заказывать — это время\отвезти-забрать\и еще куча негативных факторов. 3d принтер можно купить сейчас за ~7тыс(народный Anet a8) — и он стоит этих денег на все 100% =)


          1. Foreglance
            19.10.2017 23:27

            Если принтеры столько теперь стоят, да еще и работают, тогда конечно.


  1. Delsian
    19.10.2017 11:49
    +2

    Странная идея — брать ВТ-модуль с готовым мощным АРМ-процессором и кучей примеров программирования, и к нему привешивать костыль с Ардуино.


    1. dlinyj
      19.10.2017 11:53
      +3

      Идея проста — ардуино разжижает мозг. А тут надо учиться, разбираться.


    1. tmin10
      19.10.2017 12:01
      +1

      Эм, так в итоге ардуино не вошло же в проект? Прибор сделан на базе stm8s003f3p. Тем более это обучающий проект, BT модуль используется как blackbox в данном случае, и так проблем много, чтобы углубляться сразу.


      1. myowndevice Автор
        19.10.2017 13:29

        BT модуль к сожалению программировать почти не реально. Прошивки нет, описания нет. HC-05 еще можно, а вот на этот модуль описания нет. Конечно было бы здорово все в одном, но к сожалению сам чип BK3231, еще и купить нельзя и соотв. изучать тоже его особенно смысла нет.


        1. Delsian
          19.10.2017 14:24

          www.aliexpress.com/wholesale?catId=0&initiative_id=AS_20171019032325&SearchText=cc2541+module
          На сайте техасских инструментов софта хоть завались.


          1. myowndevice Автор
            19.10.2017 14:36

            ну так чип cc2541 стоит других денег 7$, и запять его не так легко, и RF часть стоит не дешево — катушки всякие и т.д. А уж если модуль готовый на cc2541 — то вообще смысла нет. Проще тогда от ST blueNRG — он дешевый, но тоже RF часть дорогая, и опять QFN. Так что, не так все просто. Вот недавно КОМПЭЛ писал, что сейчас многие переходят на простые дешевые МК STM8 тот же, и периферию, когда уже содержит свой МК, так в итоге выгоднее.


          1. myowndevice Автор
            19.10.2017 14:39

            Не увидел ссылку на али. Да это не плохой вариант. Возьму на вооружение.


          1. GarryC
            19.10.2017 16:41

            Ну как они делают модуль за 1.5 $, если чип в 1к штук на TI стоит 1.6 $?


            1. Tomasina
              19.10.2017 17:21

              Сбывают выбраковку, которая не прошла QC по температурным или электрическим параметрам.


              1. myowndevice Автор
                19.10.2017 17:25

                Вот вот… Была статья про китайские запчасти на easyelectroniks. Так там брак вполне себе приличный. И прошивку и не залить, и ноги не работают, разное. В общем конечно в ките лучше брать не бракованное, а их микросхемы — родной китай так сказать. Например TP4056, Ch340, QMC5883, BK3231 — как раз их родной чип. А вот если честно от TI купить, то очень дорого выходит. Честный чип от ST, как я написал, лучше будет.


            1. apple01
              19.10.2017 17:24

              В Китае производят клоны, часто едва работающие, потом на ebay и aliexpress продают под видом оригинальных по цене в несколько раз меньше.


            1. Delsian
              19.10.2017 17:27

              Обычно все эти дешевые чипы — остатки от больших заказов. Очень часкто можнно найти на Али продажу 10шт чипов с бесплатной пересылкой раза в 3 дешевле, чем 1к на дижикее. Либо старый ревижн, с ошибками. Кстати, все нордики на али — ревижн А, который никуда использовать не получится :)


              1. Bobnecat
                19.10.2017 21:18

                В плане не получится? Уже год работает самодельная метеостанция с 2 беспроводными датчиками на китайских NRF (один из которых постоянно находится в среде 90-100% влажности) и ничего, все прекрасно работает.


          1. AlNi89
            20.10.2017 07:55

            Лучше тогда уж NRF51822, СС2541 сильно проблемный для начинающих


  1. j_wayne
    19.10.2017 12:00

    На ebay есть готовые модули на TP4056 и подобных.
    www.ebay.com/sch/i.html?_nkw=5v+microusb+1a+18650+li+lithium+battery+module
    Если нужна защита от разряда, добавьте в строку поиска «Protection». Они чуть дороже, но я их беру.


    1. myowndevice Автор
      19.10.2017 13:30

      конечно полно. но смысл покупать модуль за 20р, который места занимает много, если сама микросхема — 6р. Об этом и речь, что Китай нас завалил готовыми модулями из одной микросхемы и пары конденсаторов. Но вот если платы научится делать, то они вообще не нужны. Берешь микросхему и паяешь. Я и от блютус модуля хотел уйти, но там все плохо — QFN корпуса и т.д., не для новичков.


      1. j_wayne
        19.10.2017 13:35

        Время же… Можно еще поделку сделать)


        1. myowndevice Автор
          19.10.2017 13:40

          Время лучше потратить на изучение Kicad или другое. Можно же его с пользой провести. Я думаю хватит эти модули покупать, надо плату делать нормальную и все. Если бы еще в России был сервис типа EasyEDA без стоимости доставки и сроков, так вообще проблем нет. Модули — это точно зло!


          1. j_wayne
            19.10.2017 13:44

            Кому как уж. Лично для меня вспомогательные вещи типа заряда лития особого интереса не представляют, почему бы и не сэкономить время.


            1. myowndevice Автор
              19.10.2017 14:32

              Так все равно плату делать и паять. Одной микросхемой больше. А модуль покупать не надо. Если отработать схему, то вообще без проблем, вставляй дальше во все приборы.


  1. green_worm
    19.10.2017 12:44

    Очень интересный проект.
    Очень жаль, конечно, что у меня в детстве некому было рассказать даже основы программирования и тем более заняться таким проектом.
    А теперь вроде и деньги есть прикупить пару плат, а внутренний прокрастинатор всё рассказывает, как проблематично разбираться в С++ и ардуине даже по документации. =)
    Вы большой молодец, что сыну такие вещи прививаете!


    1. Daniil1979
      19.10.2017 17:06

      Ой, да какие там ++… Скорее, --.
      :-) Если что-то C-подобное знаете, разберётесь влёт.


      1. green_worm
        19.10.2017 17:45

        Эм… Турбопаскаль со школы и несколько тегов из html Х-D


        1. Daniil1979
          19.10.2017 17:49

          навыки программирования есть, осталось только к синтаксису привыкнуть.


  1. WST
    19.10.2017 13:00
    +4

    А я в детстве припаялся проводом к контактам «=» калькулятора, закрепил калькулятор на велике, на спицах установил небольшой магнит, а на раме — геркон. Зная длину окружности колеса (в моём случае оказалось 1 метр 17 сантиметров, если мне не изменяет память), можно было ввести эту величину в калькулятор, нажать «+ 1.17», затем просто садиться и ехать, при каждом обороте колеса длина его окружности прибавлялась к величине на экране, в конечном итоге получалось пройденное расстояние.

    Способ, правда, изобрёл не я — мне его подсказал знакомый; зная его, рискну предположить, что это и не его изобретение. К слову, это было не единственное издевательство, которое пережил тот велосипед… :)


    1. tmin10
      19.10.2017 13:35

      Видел данный совет в мурнале для молодёжи, в своё время покупал такие. Там были какие-то несложные схемы полезных электронных приборов.


    1. D_Starikov
      19.10.2017 14:36

      Эта идея с журнала Юный Техник. Только там предлагали на «равно» нажимать специальной планкой, без припайки.


      1. WST
        19.10.2017 14:49

        Ну, или по-нашему «костылём». Видимо, по пути ко мне эту идею уже кто-то развил.


    1. uterr
      19.10.2017 19:47

      крутая идея :) интересно, насколько широко использовали такой лайвхак, ведь раньше (намного раньше, в 90-е) калькуляторы уже были дешовые, а велокомпьютеры — дорогие


    1. quwy
      20.10.2017 04:27

      Идея на поверхности, я шагомер делал на этом принципе, знакомый — счетчик оборотов для намоточного станка. Независимо друг от друга и иных источников.


  1. z09
    19.10.2017 13:31

    Как быстро срабатывает сигнализация о низком каденсе? Не бывает ли такого, что когда трогаешься оно пищит? Еще как велосипедист хотел бы несколько уточнений внести:
    1) Каденс это не количество оборотов, это частота оборотов.
    2) Задней вилки не бывает, бывают верхние и нижние перья.


    1. myowndevice Автор
      19.10.2017 13:32

      Ну если посмотреть программу, или статью, там описано. Во первых начинает считаться когда скорость больше 4км\ч, а во вторых, если было нарушение в течение 30с как минимум 20 сек. То есть срабатывает в итоге нормально, лишний раз не пищит.


  1. xmax
    19.10.2017 13:36

    А защита от события, что геркон окажется во время остановки на уровне магнита есть? Помню где-то читал подобное и там всплыл этот баг, что за ночь на балконе велосипед устроил путешествие более чем на овердохрена км. Т.е. Сделать какое-то сравнение, если скорость больше 70км(допустим), то не считать пробег и уходить в сон, тк видимо совместили геркон и магнит


    1. vconst
      19.10.2017 14:06

      Просто же решается, надо считать за «клик» замыкание и быстрое размыкание цепи, а то и стоя на светофоре можно метров 200 «проехать».


      1. myowndevice Автор
        19.10.2017 14:30

        Ну так во-первых не выйдет. Это надо, чтобы геркон колебался, стоя на месте, вкл — выкл. А он или включится, или не включится — по сути один раз. Стоя на месте — дребезга контактов не будет. Здесь хуже другое, что будет резистор подтягивающий питание потреблять, целых 60 мкА.


        1. vconst
          19.10.2017 14:41

          Я в электронике понимаю не много, на Ардуинке немного светодиодами поморгал только :) Потому мне непонятно.

          Вот есть цепь, в которой стоит разомкнутый геркон и она периодически замыкается. Сигнал 0 меняется на 1. Что мешает считать за такт — замыкание и размыкание не позднее, чем какое-то небольшое время, если такт длится больше 10 секунд (с потолка) — он не засчитывается. Кнопки тоже имеют дребезг, с ним, вроде бы, эти резисторы и справляются? И этот резистор будет потреблять много энергии?


          1. myowndevice Автор
            19.10.2017 14:47

            Так не об этом речь. Так все и считается. Просто если вы например остановили магнит на против геркона, то она замкнется и будет постоянно замкнут. Будет постоянно 0. А так как есть подтяжка к питанию через резистор, то будет постоянно тратится ток 60мкА. Мало конечно. Но и этого жалко. А вот если он остановится в таком положении, что будет дрожать непрерывно, вот тут он будет считать все время. Но это маловероятное событие. У меня не разу не вышло такого.


            1. vconst
              19.10.2017 15:04

              Мне кажется такая дрожь геркона — это и правда маловероятно. Но потребление тока на резисторе, оно с чем сравнимо? Сколько вообще работает комп на одном заряде аккумулятора? Если резистор сократит время работы в два раза — это будет серьезно, но если пара процентов — то и пускай с ними.


              1. myowndevice Автор
                19.10.2017 15:30

                Нет, ток очень маленький. Это микроамперы. Сократит на оч маленький процент. Но если оставить на балконе в такой ситуации, то вместо 3 месяцев спящего режима, получите 1 месяц. Что не очень хорошо. По хорошему об этом надо пищать.


                1. vconst
                  19.10.2017 15:34

                  Мне кажется — можно принудительно отключать комп, если он больше суток в такой ситуации.

                  Мне другое любопытно. Почему не светодиодная индикация о каденсе? Три разных цвета на руле — будут хорошо видны периферическим зрением, можно еще и мигать для привлечения внимания.


                  1. myowndevice Автор
                    19.10.2017 15:49

                    Ну, мысль хорошая. Почему то показалось, что звуком лучше. Ну и убрать сам прибор можно подальше с глаз. Финальная версия у меня на заднем колесе стоит. Не видно ее.


                    1. vconst
                      19.10.2017 15:52

                      Три пары тонких советских проводков во фторопластовой изоляции — можно убрать в термоусадку цвета рамы велосипеда, маленькая платка со светодиодами. Все можно сделать очень компактно. Просто как вариант с возможностью переключения типа индикатора, не удаляя пищалку.


                      1. myowndevice Автор
                        19.10.2017 15:55

                        Ну как говорится на любителя. Пищалки хватает. Слышно хорошо.


            1. Nikita_64
              20.10.2017 14:43

              У геркона есть некоторый механический гистерезис, поэтому в замкнутом состоянии даже при небольшом дрожании магнита он «дребезжать» не будет. Что не отменяет электрического дребезга в момент замыкания или размыкания.


        1. klirichek
          20.10.2017 05:30

          Ну это же всё программно решается. Если, конечно, резистор используется не внешний, а встроенный.
          Видим определённое (длительное) время (скажем, 300мс) «единичку» — перепрограммируем вывод, чтобы ничего никуда не подтягивалось и уходим в спячку. Секунд через 6 смотрим снова. В итоге те же 60мкА будут потребляться уже со скважностью 1:20, что в среднем даст всего 3мкА


  1. myowndevice Автор
    19.10.2017 13:38

    Ну да мысль была. Но програмно не сделана. Слежу когда ставлю, чтобы не было такой ситуации. Но в принципе не сложно реализовать.


  1. Tomasina
    19.10.2017 14:15

    Теперь еще закажите печатную плату на oshpark и вообще получится конфетка.


    1. myowndevice Автор
      19.10.2017 14:26

      Да в принципе у меня отличные платы получаются методом холодного переноса тонера, ЛУТ без утюга. Сверлить только муторно, а так 30 минут и готово. Если бы сервис был в Москве и готово 2-3 дня, то да, можно. А так слишком сложно. Когда делаешь прототип, надо плату быстро переделать и т.д. Вот пример платы.image


      1. Tomasina
        19.10.2017 14:44

        Прототип — на ЛУТ, а уже готовое изделие должно радовать глаз, и сроки уже некритичны, поэтому можно и обождать 20-30 дней, а после всего за 150-300 р. получить три замечательные платки, которые даже подарить кому-то не стыдно.


      1. Potok
        19.10.2017 22:02

        А фоторезист не пробовали? Я долго развлекался с лазерным утюгом, но нестабильность результата удручала. Очень уж как-то всё «по-шамански». С фоторезистом результат, имхо, куда стабильнее.


        1. quwy
          20.10.2017 04:30

          Только протухает слишком быстро. Если делать платы постоянно, то норм, а если от случая к случаю, то нуевонафиг. Плюс могут сразу полутухлый продать…


          1. holomen
            20.10.2017 23:49

            В чем проявляется «протух»? Хуже липнет? Так это решается ламинатором.
            Есть рулон фоторезиста, который завалился лет пять назад. Кроме чуть худшей адгезии — проблем нет если накатывать ламинатором на чуть влажную медь.


            1. quwy
              21.10.2017 21:16

              Не липнет, не смывается, дубеет, короче. Бывают отзывы вроде вашего, что и через годы можно пользоваться, но чаще уже через 6 месяцев больше геморроя, чем пользы, особенно это касается спрея.


        1. myowndevice Автор
          20.10.2017 07:53

          Ну я тоже пробовал ЛУТ, как то не очень понравилось. Фоторезист, тоже был напуган стоимостью реактивов и самого фоторезиста. Также лампа нужна и т.д. Для начала как то жалко денег.

          В итоге остановился на методе холодного переноса тонера с помощью ацетона. Плата делается 5 мин, до травления. Ничего греть не надо. Из химии — ацетон и жидкость для снятия лака. Утюг не нужен. Печатаете на фото бумаге Lomond. Качество и результат — 100% из раза в раз. Единственный минус — жидкость для снятия лака — разная каждый раз, разные производители, партии. И надо один раз к ней пристроиться, тесты провести. А дальше делается сразу. В итоге дорожки 0.2 и промежутки 0.2 всегда одинаково идеально. Попробуйте — рекомендую.

          А самое главное в этом методе, что испортить нельзя ничего. Можно пробовать хоть 10- раз. Каждый раз — 5 мин. В общем, как его попробовал, так и делаю.


          1. zartarn
            20.10.2017 16:48

            Не обязательно жидкость для снятия лака, можно спирт.
            Тут вот в коментариях можно еще увидеть кто с чем мешает.

            Чтоб не отдельным сообщением, видос сюда же докину.


            1. myowndevice Автор
              20.10.2017 23:49

              С этой статьи и начинал. Но не вышло, как у многих в коментах. Потом нашел другую, про факсовую бумагу и жидкость для снятия лака. И вышло отлично. Но с факсовой бумагой большая проблема в печати, слишком тонкая. И еще картридж портит. В итоге после разных опытов — остановился на фото бумаге Lomond. Работает идеально. Пробовал потом опять на спирт перейти, но выходит плохо, тонер как то кусками прилипает. В общем не то. А у него на видео красиво конечно.


  1. myowndevice Автор
    19.10.2017 17:21

    Да верно, правда они бывают разной ширины. Но я перепутал с MSOP8… Он меньше в два раза.


  1. SL_RU
    19.10.2017 17:25

    Год назад я тоже делал велокомпьютер по фану. Только на STM32 и с экранчиком. Только вот забросил, т.к. появился более серьёзный проект.
    Планировал выводить карту на экран, писать трек, и кучу других параметров, в том числе каденс, передачи(чтобы считать КПД) и тд. Сделал плату и заказал на заводе, написал ПО для компаса и начал работать с GPS — уже выводил координаты. На этом и бросил… А сейчас уже некогда. Да и лучше куплю уже готовый Garmin.

    Фоточки, если интересно imgur.com/a/TpoHY


    1. Rumlin
      20.10.2017 12:46

      Если уже не надо, то можно было бы выгрузить исходники проекта на github, например.


  1. Scooby-do
    19.10.2017 17:31

    Прошу заметить, что SO8 и SOIC 8 это одинаковые корпуса. Даже SOP 8 который указан в даташите.


  1. trapwalker
    19.10.2017 20:18

    Я бы посоветовал слать пакеты во время поездки на смартфон регулярно и решать вопрос с интерфейсом через него полностью. Вплоть до голосовых уведомлений. По аналогии с браслетами MiFit.
    Интересно было бы запаять акселерометр и громкий зуммер для сигнализации против угона, если вел шевелят, а знакомых блютузов рядом не видно.
    Еще интересно делают ли педальные шатуны со встроенным тензо-датчиком? Если нет, то, наверно, стоило бы наладить такое производство для спортсменов всяких. Тут тебе и каденс и момент силы. Можно с большой точностью мощность и калории считать.
    Почему геркон, а не датчик холла? Ресурс не побольше будет? Сколько там у геркона переключений пока не сломается по даташиту?

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

    Расскажите, какие еще у вас были общие проекты? Какие еще изделия рассматривали для реализации? Робота делать не думали? Погодную станцию? Полу-автономную субмарину с телеметрией и солнечными батареями? Много есть идей, которые у меня бы в детстве вызвали лютый бешеный интерес. Только задуматься — оставить в глуши или в море автономную станцию или робота и управлять им как марсоходом по телеметрии и тонкому GSM каналу. Тот еще челлендж.


    1. r4tz52
      20.10.2017 04:16

      Почему геркон, а не датчик холла?
      У датчика Холла еще и с гистерезисом все проще — дребезга можно не бояться.


    1. klirichek
      20.10.2017 05:36

      Геркон потребляет нуль.
      А ресурс… Я встречал велокомпьютеры с 5-разрядным счётчиком километров, которые пошли на 3-й круг.


    1. myowndevice Автор
      20.10.2017 07:44

      Датчик холла — не вариант — 5ма. Все время на связи со смартфоном — тоже — 8ма. Я хотел этой статьей показать, что не надо бояться ПАЯТЬ, все не так сложно, и очень интересно. Не надо ставить себе не реальные задачи, делайте простые несложные вещи — с чего-то надо начинать. Данный прибор для новичков самое то, особенно если это лет 12-14, с небольшой помощью родителей.

      Делали в итоге много — ГПС логгер, погодную станцию с дисплеем уже, паяльную станцию, робота машину на Arduino. Добрались до квадрокоптера, очень классный проект, получился. Мозг — open source — paparazzi UAV. Очень понравилось. Радиосвязь. Сейчас перешли к TFT дисплеям и image senosrs. GSM передача данных. В планах сделать подводную лодку на радиоуправлении.

      По прошествии времени, хочу всем сказать, кому интересна эта тема, не надо бояться СХЕМ, DATASHEETS и паяльника. Делайте платы, сами делайте схемы, сейчас море информации — это совсем не сложно и интересно.

      Про свои проекту буду писать дальше. Это первый пробный вариант. На github больше информации. По данному проекту, там плата в Kicad — кто хочет может усовершенствовать, вся программа. Есть схема и плата ST-Link.


      1. trapwalker
        21.10.2017 11:32

        «Все время на связи со смартфоном»
        Я не предлагал все время, я предлагал периодически. Вон MiFit2 мелкий и с экраном и то живёт 2 недели, а смартфон всегда знает сколько пройдено. Тут же оборот от колеса передавать не требуется, а средние значения меняются не так быстро. К тому же, если экран выключен, можно слать реже.


        1. myowndevice Автор
          22.10.2017 08:44

          Ну так идея была, чтобы всю статистику сам прибор собирал. Он же хранит данные и собирает за 4 последние поездки. А смартфон, чтобы быстро посмотреть и все. Если же делать все время на связи, то надо BLE использовать, bluetooth 2 очень много кушает.


  1. ArtemDolgih
    20.10.2017 07:28

    В качестве дисплея можно использовать OLED ssd1306, бывают разного разрешения и паять легко, там шлейф или просто готовый модуль со штырьками


    1. myowndevice Автор
      20.10.2017 07:35

      Ну до дисплеев, в итоге, мы добрались. Просто для первого прибора было страшно. Дисплеи пробовали разные. Самый недорогой вариант от Nokia 1110 — 70р. Но вообще, с ситуация с дисплеями мне не нравится. В России вообще купить негде — очень дорого. Только китай выручает. Но вообще, если кто то захочет с чего-то начать, то я точно не посоветую прибор с дисплеем. Лучше тогда светодиодный индикатор — 3,4 цифры, но он много потребляет.


      1. vitperov
        20.10.2017 23:35

        По поводу дисплея:
        Я всё вспоминаю, как лет 10 назад подключал к PIC16 дисплей от Nokia 3310, программируя всё на ассемблере. Уж сколько время на это я тогда убил…
        Теперь всё проще.

        Мне понравился дисплей «OLED 0.96» IIC Serial 128X64 display". К сожалению, нормального названия у него нет.
        Шина I2c, всего 4 провода, а главное — DIP-разъём, можно хоть на макетке разводить. По-моему идеально для домашних разработок.
        Ещё к нему уже есть готовые библиотеки для ардуино.


  1. Wan-Derer
    20.10.2017 11:37

    А что это за ЛУТ без утюга? Где почитать?
    KiCAD это жесть и пичаль! Я проектирую поатки нерегулярно, поэтому каждый раз вспоминать его… особенности было мучительно. Я перешёл на DipTrace и мир стал простым и понятным :)


  1. myowndevice Автор
    20.10.2017 11:54

    Ну вот видео как делать, там и статья рядом. www.youtube.com/channel/UCCW32mJ3kHPm-tTI9h2vkOA. Там же про Kicad есть, мне он очень нравится. Но конечно, кто как привык. Kicad понравился, тем что есть под linux, я на нем работаю, и он бесплатный. Ничего сложного не увидел.


  1. ToSHiC
    21.10.2017 16:11

    Я делал пару девайсов на stm8s003, но, к большому сожалению, у них нету встроенного бутлоадера :( Сейчас планирую попробовать LPC11C24, со встроенным CAN трансивером и бутлоадером, выглядит очень перспективно.


    1. myowndevice Автор
      22.10.2017 08:42

      А зачем он нужен? ST link сделать не сложно. И потом, все равно отладчик нужен. Просто загрузить прошивку мало. Тем более, если вы сами пишите прошивку. Для бутлоадера нужно 2 провода, а тут один! и земля. Супер удобно. В старших stm8 уже есть бутлоадер. По мне, если вы делаете для себя, то бутлоадер не нужен совсем. Нужен отладчик! А вот если это конечный прибор, то загрузки прошивки это плюс.