Микросхема акселерометр LIS3DH.


Всем привет!

Надеюсь, по заглавному фото всем стало ясно, о чём будет обзор :)
Если нет, то про это: «Lis3dh импортированы оригинальные подлинные поддельные потерять начиная одиннадцать больших ценовые преимущества — HWDDZ» — как гласит описание товара со страницы продавца :))

Ну, а если серьёзно, то будет рассказано про то, что на aliexpress такие микросхемы есть (в отличие от Украины, где они появились совсем недавно), они рабочие и про поделку, которую я собрал с её помощью.


Итак, предыстория такова.

Дочка научилась кататься на велосипеде и папа сообразил ей светотехнику на батарейке.
Включать передние и задние габариты она умеет сама, но вот выключать забывает, что в 3,5 года простительно :)
Поэтому я решил собрать схему автоматического включения-выключенния, которую придумал Дмитрий Погребняк и реализовал в своём велофонаре. Пользуясь случаем, хочу передать ему огромное спасибо за плату и прошивку.

Схема собрана на основе акселерометра LIS3DH.
У нас в Украине таких микросхем в продаже я не нашел (на тот момент), потому и заказал на aliexpress.
Цена, конечно, не маленькая, но в момент поиска и заказа у продавца была акция «минус 2 доллара за заказ от 2,1», чем я и воспользовался.
В итоге лот из 5-ти штук мне обошелся в 5,2 доллара.
Посылка пришла через 3 недели, микросхемы упакованы в катушечную ленту, такую, как на фотографии (свои фото не делал):


Сами микросхемы:



Оригинальные или нет, я, конечно, не скажу, но на фотографии адаптера компании www.st.com маркировка вполне похожая на оригинал:



Судя по даташиту, на данной микросхеме собирается куча всего:
— функция активирования по движению;
— обнаружение свободного падения;
— распознание нажатия/двойного нажатия;
— интеллектуальное энергосбережение для портативных устройств;
— шагомер;
— ориентация дисплея;
— устройства игровые и виртуальной реальности;
— реагирование и регистрация на удары или воздействия;
— мониторинг и компенсации вибрации.
(перевод мой с помощью google, поэтому могут быть ошибки).

Моя конструкция получилась такой:



Платка простенькая, собиралась на скорую руку для проверки акселерометра.
Работает так:
— при первом нажатии на кнопку фонарик включается, при езде светятся крайние и центральный светодиоды, периодически вспыхивая в режиме авиалайнера. Если воздействия нет (велосипед поставили у стены), через 1 минуту выключается. От воздействия моментально включается.
— при втором нажатии крайние и центральный светодиоды светятся без вспышек.
В этих двух режимах активные тряски приводят к яркому свечению всех светодиодов.
Работают функции переноски, парковки и падения.
— при третьем нажатии постоянно светятся три центральных светодиода без реагирования на положение фонаря и без автовыключения.
— четвёртое нажатие выключает фонарь.
Видео работы не показываю, потому что качественное снять нечем, а на некачественном мало что понятно.
Видео есть на страничке автора схемы, здесь или здесь.

Вывод: микросхемы LIS3DH хорошие, брать стоит.

Всем пока и спасибо за внимание!
Планирую купить +25 Добавить в избранное +48 +92
+
avatar
0
Спасибо, мои подрастут — такую же хреновину слабаю :-)
+
avatar
0
Спасибо за обзор! Эту микросхему как-то можно без фена припаять?
+
avatar
  • ksiman
  • 12 июля 2015, 20:40
+3
Можно!
Перевернуть кверху пузом и проводочками :)
+
avatar
+2
Ниже способ проще, но он тоже достаточно сложный. А этот — ювелирный. Он однозначно возможен (с точки зрения пайки), но с точки зрения акселерометра — нужно внести достаточно серьезные изменения в логику. Т.е. нужны сырцы и понимание, как в сях поправить то, что нужно ;)
На плиту — реальней, к ремонтникам — еще и проще :)
Плюс в статье нет ссылки на сырцы платы и прошивки.
+
avatar
  • bombus
  • 12 июля 2015, 22:02
0
Так его можно опять на пузо положить и подпаивать уже на проводочки. И никаких исправлений в код.
+
avatar
0
А если залудить сплавом Розе, совместить с дорожками и прогреть паяльником максимально близко к корпусу?
+
avatar
  • P43YM
  • 13 июля 2015, 03:04
0
Тоже подумал об этом. Если залудить контакты и положить микросхему на луженые большие площадки на плате, по идее прогрев их хорошо то они спаяются. Хотя может она и слишком мелкая для этого.
Ну или прожектор галогеновый с трафаретом вниз, и строительным феном сверху… я так у GPU на своей видеокарте шары перекатывал, когда заняться было нечем.
+
avatar
+2
Есть два ответа на данный вопрос :)
Судя по вопросу, первый ответ — нет, нужна сноровка.
А второй, по большому счету — можно залудить контактные площадки на чипе и плате. Поставить плату на подогрев (можно использовать металлокерамическую бытовую поверхность, не индукционку, либо утюг, но на нем сложней). Предварительно совместить чип и место на плате, положить сверху гайку, размером примерно с чип, но максимально тяжелую для этого размера. Затем прогревать всю поверхность снизу.
Но если был задан первый вопрос, то может лучше обратиться к ремонтникам мобил, например, они за пиво припаяют.
+
avatar
0
C паяльником дружу (на уровне любителя), но максимум что паял это TQFP. Поэтому интересовала конкретно технология (видимо второй ответ) :) За ответ спасибо.
+
avatar
+2
Лудишь сплавом розе, берешь хороший флюс для BGA, кладешь плату на утюг и ждешь когда розе поплывет, легонько касаешься микросхемы и она садится по дорожкам. Как то так.
+
avatar
+2
Чего только ни придумают люди, чтоб только фен за 30 долларов не покупать.
+
avatar
+1
на утюг положить. но паяльная паста желательна. ну, которая припой+флюс в виде пасты. намазал через трафарет плату, положил микруху (а я лично так светодиоды на «звёзды» распаивал) и плату на утюг прогретый до максимума. наблюдаем расплавление пасты и испарение флюса, снимаем плату с утюга.

оно, конечно, не по термопрофилю, но вполне себе работает.
+
avatar
  • Spyle
  • 12 июля 2015, 20:40
+2
< по заглавному фото всем стало ясно, о чём будет обзор>
Да, по фото понятно, что речь о чем-то китайском :)
+
avatar
  • Aahz
  • 12 июля 2015, 22:50
+1
Дык что не понято, аксели мерять будем :)
+
avatar
  • vvmel
  • 12 июля 2015, 20:47
+2
Первый раз вижу нечто полезное из китайского велосипедного фонарика :)
+
avatar
+1
А вообще слишком сложный акселерометр. Веревка с грузиком — наше все :-)
+
avatar
0
пока прикручена верёвка к ребёнку фонарик светится?
+
avatar
  • Aahz
  • 13 июля 2015, 10:55
+2
+
avatar
0
Ах, вы про этот камень с верёвкой… Но где же автоматизация?
+
avatar
+2
Китайцы продают фиговины такие — накручиваешь на нипель и, когда едешь, светится.
Вот такие.
Весь акселерометр там — цилиндрик, свитый из довольно мягкой проволоки, в центре которого второй проводник, из жесткой проволоки.
Работают, блин, хотя наверняка у этой микросхемы функций больше, да и надежность выше — те мне все равно не нравятся. :)

А за обзор плюс.
+
avatar
0
Буду краток-молодца!
+
avatar
  • kirich
  • 12 июля 2015, 22:25
+2
на aliexpress такие микросхемы есть (в отличие от Украины)
Почему нет?
Есть не именно такие, но аналогов вполне достаточно, стоят правда раза в полтора дороже, но доступны здесь, сейчас и поштучно.
Есть и LIS3DSH, стоит 53грн или около 2.2 бакса.
+
avatar
0
Да, действительно, уже появились. Неделю назад ещё не было.
А насчёт аналогов интересовался у автора схемы, оказалось, для других микросхем нужно сильно менять программу.
+
avatar
+1
ДжЫдай! Завидую. Я SOIC еле-еле паяю.
+
avatar
0
Как раз такие паять мне нравится больше, чем SOIC. Делаю площадки, мажу флюсом, кладу и грею феном. Как только припой расплавился, видно как микруха шевельнулась и села ровно на свое место.
+
avatar
+4
Дороговатая микросхема. MPU-6050 уже распаянная на модуле стоит меньше двух долларов. aliexpress.com/item/MPU-6050-3-Axis-Gyroscope-Gyro-Sensor-Module-For-Arduono/32365753509.html
+
avatar
  • Bloop
  • 13 июля 2015, 09:42
0
… плюс трех-осевой гироскоп в довесок!
+
avatar
0
Автор, поделитесь пожалуйста прошивкой и печаткой, давно такую штуку хотелось сделать.
+
avatar
0
К сожалению, прошивку и плату может дать только автор данной схемы.
Попробуйте обратиться к нему по вышеуказанным ссылкам.
www.drive2.ru/b/1072182/ или vk.com/wall-66175676_37
+
avatar
0
Он уже писал, что «не жадный», но прошивку так и не выложил.
+
avatar
0
Если ещё актуально и модеры пропустят мой большой ответ со ссылками в самом низу темы, то качайте всё там.
+
avatar
  • MLook
  • 13 июля 2015, 12:04
0
Почему производители вело-фонарей до сих пор не ставят акселерометры и современные диоды Cree? Неужели потому, что себестоимость увеличится на пару баксов?
+
avatar
0
естественно поэтому. во-первых на больших партиях разница существенна, во-вторых более дешевый товар и раскупать будут быстрее — акселерометр далеко не всегда и не всем нужен.
+
avatar
  • vigera
  • 13 июля 2015, 13:23
0
Идея индицировать торможения таким образом отличная, только ради её реализации и стоило бы спаять это устройство!

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

Но это я не про борьбу с забывчивостью детей в качестве цели сооружения, естественно :-)
+
avatar
  • Bloop
  • 14 июля 2015, 12:50
0
Я думаю, такой «индикатор торможения» будет также срабатывать при движении под уклон, если крутизна превысит некоторый угол…
+
avatar
  • vigera
  • 14 июля 2015, 17:00
0
Судя по инфе автора разработки, индикатор торможения работает прекрасно, причём в экстренном режиме даже в прерывистом режиме. А даже если и будут ложные срабатывания под сильный уклон, то это не беда, сколько там тех сильных уклонов! :)
+
avatar
  • Omega
  • 15 июля 2015, 21:26
0
А ADXL20E2 от Analog Device это из той же оперы? Никто не щупал? Ато досталась по случаю… валяется в ожидании применения
+
avatar
0
Вопрос к автору поста.
Я вот тоже собрал по данной схеме фонарик, даже прошил с трудом, но прошил. Мой стандартный USBASP v2.0 без обновления прошивки не очень-то хотел работать с разными прогами. Получилось с горем пополам только через eXtreme Burner
Sinaprog, Khazama, Avrdudess, Avrdudeprog, Ponyprog и прочие либо не видели программатор, либо видели, но «не могли открыть порт», либо им что-то не нравилось с SCK.
eXtreme Burner увидел, выругался, что нет в базе Atmega88PA (позже я в базу его внёс и он уже не ругался, но это не спасает), но прошил. Фьюзы тоже прошил нормально, как завещалось в скромном мануале от автора Дмитрия с Drive.ru) (62, DE, FF). А вот потом начались проблемы.

Я довольно быстро понял, что, то ли не до конца продуманы-подогнаны все коэффициенты в прошивке, то ли мой режим езды на электровелосипеде какой-то особенный, но возникла необходимость внести изменения как в реакции, так и в сами режимы горения, например: Сделать чувствительнее режим экстренного торможения, переработать режим обычного маяка, что-то настроить с обычным торможением, а то во время обычной езды он как-то хаотически смешивался ещё с каким-то миганием и получалась полная ерунда.
Ни один из тех зрителей, кому я показывал «смотри, какой крутой фонарик я сделал», не впечатлился. Говорили — нифига не понятно, что вообще сработало и сработало ли. Более-менее понятно, когда экстренное торможение мигает, но 1-2 секунды и оно тухнет и возникает ощущение «что это было?» Мало того, что само торможение не долго длится, так ещё и не всегда и не совсем явные изменения. По уму вообще после экстренного торможения не сразу прекращать его бешенное мигание, а хотя бы ещё секунд пять чтобы помигало. А то я резко тормознусь до полной остановки, а через секунду уже почти темнота и мне в зад въедет кто-нить…
Ну и таких допиливаний режимов можно придумать много.

Я и стал копать. Конечно разжёванных смыслов в файле VeloTailLight.h нет, но мало-помалу стал делать что мне нужно. С непосредственно миганиями почти разобрался. но нужны были попытки и попытки для отлаживания…
А вот теперь сама проблема:
Влить без последствий новую прошивку получалось один раз из 4-5. В остальных случаях Фонарик становился кирпичом.
При этом фьюзы я не трогал — просто лил прошивку. eXtreme Burner мог на середине процесса выругаться на что-то и всё, амба.
Приходилось выпаивать чип, обнулять его и стрепетом пытаться снова. Точно помню, что он хорошо прошился на плате, где ничего кроме чипа не было впаяно. Считал фьюзы, залил свои, затем залил прошивку. Гладко. Потом уже, на этой же плате второй раз так не прокатило…
Выпаиваю и затираю я не сам, т.к. нет ни фена ни параллельного пограмматора ни фьюз-доктора, поэтому эта эпопея бешенно затянулась, да и человека просить неудобно уже…

Скажите, вы с таким не сталкивались? Или просто один раз залили и радуетесь тому, что есть, поэтому не заметили ничего такого? Может быть у вас программатор менее проблемный?

Писал Дмитрию, он предположил, что это уход чипа на слишком низкие частоты (8 Кгц), в сон и поэтому его программатор не видит… Не понятно только, что, это во время прошивки тоже происходит?)) Кнопкой он не будится — просто камешек…
Высота заглавных букв 1 мм, дорожки под акселерометром - 0,25 мм. ЛУТ

с разъёмами для программирования, но без СД
+
avatar
0
Скажите, вы с таким не сталкивались? Или просто один раз залили и радуетесь тому, что есть, поэтому не заметили ничего такого?
Да, именно так — раз залил и всё.
Сделал две платы — прошились и работают одинаково, без проблем, по алгоритму автора.
Меня устраивает то, что: взял велик — фонарь загорелся, оставил велик — потух.
+
avatar
+1

Прошивание микросхемы через переходник, прямо на макетке, посредством USBASP
А вот тут видос, как я выпаивал ейаз32 Атмегу 100 Вт паяльником с платы фонарика:


Вторая часть, продолжение


До вытравливания. Ролик «Как сделать весь цикл качественного ЛУТ за 20 минут» я когда-нибудь сделаю на своём канале.


До <--|--> После. Заменил штатные два диода на 5 нормальных по 30 Кд. Потребление на них правда судя по всему возросло.


Проверка работы


Всё воспроизводимо. Теперь работает стабильно.
Помимо переработки более половины режимов, я добавил очень важную, как оказалось, вещь — калибровку горизонта (точнее, просто компенсацию наклона).
Без неё фонарик, в случае не очень ровного закрепления, становился или бездушным кирпичом (при завале назад) или гиперчувствительным, при завале вперёд). Как реализовать это, подсказал мой друг-программист (к моему огромному к сожалению на мои предложения довести до ума конечно и без того отличный. но с небольшой недоработочкой код, автор сказал: «у меня нет на это времени»..) а дальше пришлось ломать голову самому.
Работает для небольших наклонов в пределах 10-15°. При больших просто уменьшается чувствительность по нужным осям. Всё потому, что там не по уму математически создаются некие виртуальные «правильные» оси, а просто добавляется поправка… Ну… работает как надо, но наклонить вбок плату на 90°, откалибровать и радостно использовать не получится..((( Поэтому, в случае, если будете использовать прошивку для вертикально расположенной платы, просто придётся вам играться с заменой осей в исходниках. Но, что на что менять — это не ко мне.


А вот так реализована Alterlux'ом фильтрация данных с акселерометра. Неплохо. Задержка ни на что не влияет.
Это я пытался разобраться в работе этого фильтра и сделал график… Так до конца и не понял суть математики… ну и ладно)))


Вставил я это в распространённый на Али фонарик с солнечной батарейкой.
Снизу закрыл отверстие армированным скотчем, чтобы не залетала вода и пыль. Мелкие 20 мАч Ni-MH аккумуляторы заменил на 80 мАч 16 мм в диаметре. Они туда отлично становятся.


Моя плата в Easyeda после допиливания в Кореле и других прогах, если надо в каком-то ином формате,
пишите тут или vk.com/write226228


Эх… если бы я заказывал на заводе, выглядела бы она так… Сделано в EasyEDA:
easyeda.com/NyyphoHerr/smart_led-light_for_bike
Для самостоятельного изготовления рекомендую последний вариант, где есть метки-дорожки для установки акселерометра:
«LUT_PCB_WITH_HOLES»
easyeda.com/projects/bf43cb6d653e477a81fc26caca5d3174/documents/0b6fd6f6699d4534b0598b5b727fd71e/download_gerber — Гербер-файлы

Здесь есть немного технического видео по данному фонарику. vk.com/videos-165313526

Нормальный видеообзор всех функций, в том числе и изменённых и новых я до сих пор не сделал. Но расписал текстом их тут в группе: vk.com/smart_bycicle_flashlight — там же есть архив с моей прошивкой
Подробное описание режимов и функций в обсуждениях: vk.com/topic-165313526_37669745
+
avatar
  • devgram
  • 06 августа 2018, 21:15
0
Такой ответ уже на обзор тянет, на драйв2 видел, автор фонаря выложил прошивку, но собрать все времени не хватает.
+
avatar
+1
Я ж от той статьи и скакал… Ну, как-то странно наверное было бы делать статью, отталкиваясь от материалов другой статьи, не знаю.
Та прошивка на мой взгляд сделана без сомнения очень крутым программистом, но, как он сам признал, «велосипедистом не аховым». Дело не в крутости велосипедиста конечно, а в том, как часто он сталкивается с тем, как должен работать велофонарик и как много думает над тонкими ньюансами этого… И как много у него времени, чтобы тратить его на доделку безделушки. Я сперва довольно много вопросов задавал автору с Drive-ру и они были поначалу достаточно примитивны (уровня, чем прошивать и какую использовать прогу. Но ведь это не сложно было написать там же в теме, не так ли, чтобы повторить могло побольше народа, чем 1-2 на СНГ). А потом либо я его достал, либо он стал очень занят…
Поэтому пришлось достаточно много допиливать режимы горения, разбираться в чужом коде самому, чтобы они хоть как-то дифференцировались водителями и подгонять уровни чувствительности под реалии наших дорог (без авторских мануалов и комментариев), а потом выяснилось, что для адекватной работы ещё и калибровать надо… Я показывал своим товарищам-автомобилистам работу на родной прошивке и ни один из них не понял, что это вообще индикация торможения… Мало ли что там мигает и какие режимы в веломигалках.
Чтобы хоть как-то это работало, разница между режимом езды и торможения должна быть максимально адской! Поэтому дефолтовый режим я немного приглушил, а торможение сделал вырвиглазным и т.д…

Про необходимость периодической калибровки ещё пара слов.
Фонарик я снимаю, если вел где-то пристёгиваю, да и закреплён он не на суперклее или болтах.
Это вызвало проблему. Надевается он на крепёж с подложенной резинкой и иногда в спешке можно наклон крепежа «прощелкнуть» или просто резинка даст просадку со временем. И вот эти градусы как оказалось, критичны.
Допиливать… допиливать… месяц наверное страдал…. пока оно стало из почти хаотической мигалки, работающей только в идеальных условиях, чем-то нормальным, на данный момент даже испытанным временем.
(реально на родной прошивке в условиях, отличных от стадионных торможений, так и было. Я был сперва удивлён, что автор этого поста остался доволен, но потом прочитав ответ, что «останавливается — гаснет, едешь — загорается» — это круто и удивление пропало)
Уже больше месяца почти ежевечерне использую.
Группу создал, куда всё выложил. Думал привлечь программистов, чтобы мне помогли с допилингом или хотя бы просто энтузиастов, но пока никто интереса не проявил))))
Пришлось самому корячиться. Нехватка гиков с руками))