spase_omsk 149 Жалоба Опубликовано: 5 л В 13.06.2019 в 06:54, Daemon сказал: без алгоритмической обработки показания высотника будут прыгать в очень большом диапазоне. Отображать показания с той частотой, что опрашивается датчик - вообще гиблое дело, ты их с такой частотой читать не сумеешь. И уж тем более не сумеешь усреднить их в голове. Вот кстати не согласен. Что Бошевские BMPx80, что NXP-шный MPL умеют усреднять данные за N замеров (1..128) и частота опроса при этом будет меняться от 10мс до 1с. Можно выбрать усреднение за 32 замера, скажем, и получить частоту опроса датчика 250мс, что уже можно сразу и отображать. MPL ко всему умеет сам пересчитывать килопаскали в метры (а для повышения точности брать на вход давление на уровне моря либо высоту "нулевой" точки над уровнем моря), считать вертикальную скорость, подавать сигнал при достижении заданной высоты и имеет на борту фильтр Калмана для снижения шумов измерения. Кажется, что этого хватит более чем. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
karlasan 23 Жалоба Опубликовано: 5 л 1 час назад, spase_omsk сказал: Вопрос к тем, кто уже погружался в эту тему. Решал ли кто-нибудь проблему обдувания высотомера потоком и изменения по этой причине давления на сенсоре? мастерил на похожей элементной базе, пару раз прыгал, забросил потом. изучал матчасть, первое, что советуют для сглаживания показаний - фильтр Калмана, простое усреднение может сильно врать. тут на форуме есть бывший сотрудник альтера, поищи в соответствующей ветке, может, еще чего подскажет по этой теме. но, имхо, бОльшая проблема - энергосбережение. ардуина крайне прожорлива, даже если смастеришь отдельную плату с минимальной обвязкой. stm32 гораздо экономичнее (на нем, вроде бы, сделан альтер и несколько других схожих высотников), но в идеале лучше сразу смотреть в сторону stm32 L-серии (пониженного энергопотребления) или msp430. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л 10 минут назад, karlasan сказал: мастерил на похожей элементной базе, пару раз прыгал, забросил потом. изучал матчасть, первое, что советуют для сглаживания показаний - фильтр Калмана, Фильтр Калмана есть в самОм датчике (одна из причин выбора MPL вместо BMP), с этим, получается, проще. В сторону stm32 посмотрю, спасибо! Хотя по подсчётам при общем потреблении порядка 5ма (контроллер между измерениями в Sleep mode, по таймеру просыпаемся и опрашиваем датчик; LCD и датчик можно не считать, там потребление измеряется микроамперами) батареи 450ма/ч хватит на 4 суток непрерывной работы, а далее можно и зарядить. Но - посмотрим. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
karlasan 23 Жалоба Опубликовано: 5 л 3 минуты назад, spase_omsk сказал: Фильтр Калмана есть в самОм датчике в даташите о нем ни слова. в любом случае, если он и есть, то он не универсален и параметры к нему нужно все равно подбирать под конкретное приложение, дефолтные в скайдайве будут врать так же, как и в бмп. то есть задача по сути проще не стала, а если фильтр в датчике не настраиваемый - то, возможно, даже и усложнилась. 5 минут назад, spase_omsk сказал: LCD и датчик можно не считать, там потребление измеряется микроамперами в даташите на экранчик - 5 ма без подсветки, 20 ма с подсветкой. проверь, кстати, видны ли показания экрана через поляризационные очки, т.к. некоторые модели высотников этим грешат. отправление мк в сон несколько раз в секунду поможет сократить потребление (правда, неизвестно, как себя будет вести экран при этом), но stm32l и особенно msp430 даже без сна покажут в несколько раз лучшие результаты. 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л 18 минут назад, karlasan сказал: проверь, кстати, видны ли показания экрана через поляризационные очки, т.к. некоторые модели высотников этим грешат. 100% не видны - проверял. И если честно, не знаю ЖК экранов с хорошим углом обзора, которые уживались бы с такими очками. Светодиоды не рассматриваю - сомневаюсь, что в небе за облаками их будет видно хоть как-то. А вот при отправлении МК в сон экран продолжает работать - у него свой буфер и главное, не убирать с него питание. Энергопотребление PCD8544 заявлено вроде как 150мка. С Калманом поразбираюсь ещё. За остальную информацию спасибо, буду думать и пробовать. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Ивановец 18 Жалоба Опубликовано: 5 л В 23.08.2019 в 17:14, spase_omsk сказал: Кстати занимаюсь сейчас разработкой похожего изделия на Arduino Pro Mini (Atmega328P) + MPL3115A2 + Nokia5110 LCD + пьезодинамик + RGB светодиод + вибромотор (на высоте раскрытия и на 600 метрах). Если кто желает скооперироваться - буду рад. Готовность первого образца примерно в середине сентября 2019, для тестирования запасся заводской пищалкой и двумя заводскими высотниками. Вопрос к тем, кто уже погружался в эту тему. Решал ли кто-нибудь проблему обдувания высотомера потоком и изменения по этой причине давления на сенсоре? Вместо Nokia5110 лучше HX1230 (он же 1202 только на плате) он тоньше и подсветка более ровная. bmp280 для этих целей по-моему достаточно будет. В падении из-за турбулентности он все-равно не будет точно показывать. Да и под куполом я сделал так, чтобы он по 5 метров отсчитывал. Точнее вряд ли надо. А вообще примерно прикидывал какой объем будут занимать эти комплектующие вместе с аккумулятором хотя бы на 300 мАч? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
_Shura 281 Жалоба Опубликовано: 5 л (изменено) В 23.08.2019 в 17:14, spase_omsk сказал: Решал ли кто-нибудь проблему обдувания высотомера потоком По моему скромному опыту : Давление скачет при выходе из ЛА сильно, и когда сальто делаешь - меньше. Для практической точности показаний высоты на руке - хватит простого усреднения по 2-4 точкам. Если захочешь сделать функцию логбука, чтоб точно определял высоту выхода , раскрытия и среднюю и особенно максимальную скорость - то тебя ждут проблемы. Мы их пытались решать , без Калманов, всякими усреднениями , получилось но но не до конца , в теме ez430посмотри исходники и примеры прыжков, Можешь из той ветки открыть в блокноте .log файлы , там посекундный лог падения как есть с датчика , нефильтрованный, график падения чёрным цветом тоже нефильтрованный, анализируй Удачи ! Изменено 5 л пользователем _Shura 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л Ребята, спасибо всем откликнувшимся, в ближайшее время подниму репозиторий на гитхабе (по готовности хоть сколько-нибудь рабочей версии). 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л Вот такой пока колхоз. Первоначальная прошивка в процессе написания. На борту кроме собственно дисплея присутствует 3-цветный светодиод для грубой оценки высоты, динамик (не знаю, зачем, но пусть будет) и вибромотор. По готовности хоть сколько-нибудь рабочей прошивки создам отдельную тему. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
rimerio 50 Жалоба Опубликовано: 5 л @space_omsk, я в обратном порядке пройдусь по сообщениям 1) Купите 3Д-принтер. Серьезно, такой колхоз стыдно даже показывать. 2 года назад в Москве покупал принтер за 9 тысяч рублей, штука даже вне разработки корпусов в хозяйстве полезная. 2) Экран я себе ставил OLED, видно прекрасно, но при пересчете на массовое производство дороговато может выйти. 3) NXP-шный даташит ничего не говорит про фильтр Калмана. И да, чудес не бывает. То, что в BMP180 называют фильтром Калмана, на самом деле смешная пародия, которая годится только для стационарно закрепленного датчика. Об этом даже в даташите говорится - при превышении определенной скорости изменения давления даже даташит на Бошевские датчики говорит "не используйте встроенного Калмана". Полноценный Калман требует внедрения матмодели процесса, и записать такую модель в регистры дешевого (да даже дорогого) датчика давления - никто этим заморачивается, обсчитывайте на контроллере. 4) Выкиньте Ардуино. Прямо сразу. На полевых испытаниях первая проблема, которую обнаружите - через неделю (в лучшем случае) или день прыжков батарейка сдохнет. Ищите энергосберегающие решения: упомянутая выше STM32L, MSP430 и EFM32 (последние - дороже, но ничего жрущего меньше я еще не видел). 5) Выкиньте вибромотор. В обычных прыжках пользы от него нет, зато резко возникающая индуктивная нагрузка на батарейке просадит напряжение на несколько десятых вольт и с легкостью отправит микроконтроллер в перезагрузку. Ну или отдельную питающую цепь тащить на моторчик - с просчетом просадки по напряжению, в полном расчетном температурном диапазоне. Есть мнение, что некоторые непоседовские высотомеры вырубались во взлете из-за этой "инновации" . 6) Забудьте про "обдувание потоком", все варианты не учесть. Одни стоят на голове, соответственно, если это пищалка - она находится в зоне уплотнения воздуха. Другие - в сите, пищалка в затенении. Третьи на пузе летают. Четвертые - крылатые. Все требуют разных моделей, если хочется прям гидродинамику подключать. 7) А вы что делаете-то? Высотомер? Пищалку? Комбайн точно смысла не имеет, если высотомер - там все проще, "точно" мерять высоту и скорость не надо. Пищалка в этом плане намного сложнее - надо на основе сильно зашумленных данных принимать решения о подаче сигналов,и лучше бы этим решениям быть правильными. 8 - Удачи, да 4 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л 4 часа назад, rimerio сказал: @space_omsk, я в обратном порядке пройдусь по сообщениям Спасибо! Тоже в произвольном порядке. Ориентируюсь я на высотомер с дополнительной индикацией категории DIY. Это определяет, в частности, отказ от STM32 и прочего, что в единичных экземплярах использовать проблемно - развести и изготовить под него плату в одном экземпляре выйдет дорого, паять дома многовыводные SMD - нужен фен или очень прямые руки, а готовые макетные платы по размерам слишком великИ - 55мм длина потянет за собой и корпус с припусками, толщиной стенок и прочим. Поэтому эксперименты пока на Arduino в версии 32u4. Питание предусматривается от аккумулятора с возможностью подзарядки (так сделаны Sirius/Vega/Orion, например), поэтому если на полевых испытаниях прибор продержится хотя бы 2 дня - я буду считать, что всё меня устраивает. По расчётам, аккумулятора на 450мА/ч хватит часов на 200, что более чем приемлемо. DIY решений с stm32, подходящих мне по габаритам, я не нашёл. Калман. В том, что Вы правы, я уже убедился, поэтому с датчика буду забирать raw данные с усреднением и обсчитывать их самостоятельно. В MPL Калманом назвали банальное усреднение по нескольким отсчётам (урок мне - читать даташиты нужно в оригинале), а то, что есть в BMP388, действительно больше смахивает на Low-Pass фильтр и строго говоря, годится только для стационарных условий. Пока думаю пособирать статистику - что-то мне подсказывает, что интересные результаты можно получить, ограничив ускорение и попробовав его привязать к скорости (тут возможны варианты, конечно). Набортный usb в приборе позволит невозбранно сливать статистику терминалом, а памяти хватит минут на 15 raw данных. Вибромотор. Недавними инцидентами и не вовремя однажды отказавшей лично у меня пищалкой навеяно. Хочу настроить его на критические высоты, когда надо бы обязательно посмотреть на высотомер - это высота раскрытия и высота принятия решения на отцепку. Питание развести, думаю, сумею, а перезагрузка контроллера не страшна совершенно, т.к. автоустановка нуля предусмотрена в нём не будет. Экран. Я не ориентируюсь даже на мелкосерийное производство, максимум - единичные экземпляры, так что плюс/минус 100р не критично, но OLED в связке с Arduino кажется мне не самым оптимальным выбором. Хотя - посмотрим. Корпус. Для макетирования/отладки удобнее колхоз, а дальше нужно будет думать.. Кстати, скотч на фото исключительно для защиты на время сборки/монтажа. 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
rimerio 50 Жалоба Опубликовано: 5 л Цитата развести и изготовить под него плату в одном экземпляре выйдет дорого Двуслойка при заказе в Китае - два доллара за 10 штук + доставка, четырехслойка - от 30 долларов за 10 штук. На сегодняшний день всевозможные ЛУТы утеряли какой-либо смысл, реально очень дешево сейчас платы делать. JLCPCB/PCBWay тащат. KiCad в пятой версии тоже позволяет более-менее качественно делать несложные платы, а если open-source не смущает - можно и бесплатную куцую версию Altium Designer использовать (CircuitMaker называется) Цитата паять дома многовыводные SMD - нужен фен или очень прямые руки Фен нужен, чтобы выпаивать. Паять - только прямые руки, их достаточно, и это не так сложно, посмотрите парочку видео на ютубе. Цитата не вовремя однажды отказавшей лично у меня пищалкой навеяно Лучше ставьте вторую пищалку. Мотор - тяжелая индуктивная нагрузка, гораздо легче сделать громкую пищалку (имхо конечно). Цитата OLED в связке с Arduino Вот тут ровно одна проблема - от 3.3 и даже от 5 вольт OLEDы стартовать не любят, им нужно 9-12 вольт. Но DC-DC поставить на плату несложно (если не ограничивать себя готовыми отладочными платами, а заморочиться и таки сделать кастомную PCB). Цитата Для макетирования/отладки удобнее колхоз Вообще с 3Д-печатью пробовали связаться? Очень знатная штука, крайне советую попробовать Вообще один товарищ из Кирова тоже делал пищалку-вариометр на ардуино, можете тут посмотреть: https://habr.com/ru/post/394975/ 2 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
_nw_ 1537 Жалоба Опубликовано: 5 л 7 часов назад, spase_omsk сказал: Вибромотор. Недавними инцидентами и не вовремя однажды отказавшей лично у меня пищалкой навеяно Очень сомнительно, что вибро почувствуется в свободном падении, если на его ожидании/ощущении не сфокусироваться 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
stiner_rd 772 Жалоба Опубликовано: 5 л 5 минут назад, _nw_ сказал: Очень сомнительно, что вибро почувствуется в свободном падении, если на его ожидании/ощущении не сфокусироваться смотря куда вставить... 6 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
sky_one 1022 Жалоба Опубликовано: 5 л 6 минут назад, stiner_rd сказал: смотря куда вставить... 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
_Shura 281 Жалоба Опубликовано: 5 л 22 часа назад, _nw_ сказал: вибро почувствуется в свободном падении, если на его ожидании/ощущении не сфокусироваться 22 часа назад, stiner_rd сказал: смотря куда вставить.. И даже не пытайтесь сфокусироваться на этом ощущении, может вторнуть так - что про парашют забудешь, ну это я так теоретически думаю, если что. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л (изменено) На этапе предварительного макетирования "на столе" получилось примерно вот что: Вибро. С электропитанием и стабильностью работы процессора проблем не возникло, но вибрация с трудом ощущается даже если прибор просто лежит в кармане. Поэтому - скрипач вибро не нужен. Потребление энергии. В активном режиме процессора с подключенной периферией (дисплей, датчик давления, часы RTC) схема потребляет порядка 10ма. С уходом процессора в паузах между измерениями в глубокий сон и переключением в активный режим с интервалом 500мс (подумаю ещё; возможно, уменьшу его до 250мс в режиме "прыжок" и увеличу до 5..10с в режиме "на земле") для считывания высоты и обновления информации на дисплее потребляемый усреднённый ток падает примерно до 1ма (периферия продолжает работать при этом). Этот параметр ещё будет уменьшен выбором другого исполнения датчика давления (без встроенного стабилизатора 3.3) и переходом на чтение датчика по прерыванию. Но даже в таком виде прибор работает непрерывно уже сутки и б/у аккумулятор на 360мА/ч за это время разрядился с 4,18 до 4,10в. Включение подсветки дисплея добавляет 15ма и светодиод добавляет до 30мА (он RGB с ШИМ-управлением). В режиме "Выключено" (в этом режиме контроллер снимает питание с периферии, оставляя только часы RTC и полностью отключает встроенный стабилизатор 3.3в, переходя на питание непосредственно от батареи) потребление энергии измерить не удалось, что-то в районе 2мкА. Железо для всего этого такое: Arduino Pro Micro 3.3v 8MHz на базе Atmega 32u4. Допустимы Pro Mini на Atmega328P - габариты те же - либо даже голая 328P, но Pro Mini потребует переходника COM-USB или хотя бы конвертер уровней, а голый процессор потребует внешнего кварца и отдельного программатора хотя бы для прошивки загрузчика. К тому же 32u4 меньше ест. Датчик давления MPL3115A2. Выбирать желательно вариант исполнения без встроенного стабилизатора 3.3в. Микросхема RTC PCF8583 + кварц 32768Hz + батарея на 1,5в + диоды Шоттки RB520s 2шт или сборка BAT54C, в крайнем случае - кремниевый (1N4004, КД521, КД522) + германиевый (Д9, Д18) диод, в самом крайнем случае - два кремниевых диода с увеличением напряжения резервной батареи до 3в. Выбрана за то, что считает время с точностью до 1/100с, что позволяет процессору спокойно уходить между измерениями в сон и при том иметь возможность более-менее точно измерять скорость в падении. Просто покупаем микросхему в любом корпусе, для макетирования я брал в DIP-8. Дисплей Nokia 5110 или HX1230, второй предпочтительней - меньше габариты, больше разрешение и более экономичный. Транзисторные сборки AO4606 3шт (либо 3 p-канальных и 3 n-канальных MOSFET). В крайнем случае можно обойтись и без них, но питать периферию прямо с порта ардуины так себе идея, ибо близко к предельному току на порт, плюс увеличится паразитное потребление энергии в режиме "Выключено". RGB светодиод, крайне желательно с общим катодом. 4 кнопки - три для управления и одна для сброса. Резисторы на 330, 470, 1к, 10к, 1М Диоды Шоттки с малым обратным током (RB520s, сборки BAT54/BAT54C) либо кремниевые для работы в цифровой технике - импортные 1N4004 или наши КД521, КД522. Конденсаторы керамические блокировочные и электролиты на 10-47мкФ Пьезодинамик. Можно обычный динамик + какой-нибудь npn транзистор: наш КТ315, КТ3102, импортный C939, любители некрофилии могут поискать в загашниках МП35 или МП37 )) Модуль зарядки Li-Ion TP4506. Если применяемая батарея не имеет модуля защиты - то модуль зарядки брать с модулем защиты. Батарея Li-Ion ёмкостью 500мА/ч и выше. Модуль защиты желателен; если без него - см. предыдущий пункт. О разводке дополнительной платы и возможном размещении на ней датчика давления и часов, а также о 3D-печати либо другом способе изготовления приличного корпуса буду думать после завершения этапа макетирования. И кстати у ардуины остаются порты, чтобы добавить в изделие ещё и GPS, а памяти остаётся ещё на реализацию режима "Стендбай по прыжкам" в виде тетриса или змейки (не, нуачо, дисплей от нокии же ) Изменено 5 л пользователем spase_omsk 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л Итак, понемногу приступаем. На сегодня прибор умеет показывать текущую высоту, сбрасываться кнопкой на 0, управлять подсветкой дисплея, экономить энергию и отключаться, уходя в глубокий сон. На очереди поддержка часов и светодиода, работа с прерываниями и полевые испытания. Смотреть тут: https://github.com/spase74/OpenSkydiveAltimeter 3 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Guest 41 Жалоба Опубликовано: 5 л В 06.06.2019 в 15:34, _nw_ сказал: Вот сдох у тебя визо/нептун, ты что будильник на руку напялишь? зачем? без него никак?)) был период, когда высоту раскрытия определял по часам - вкл. секундомер в хронографе тогда же арендовал высотомер, а у него в подъёме стрелка отвалилась - высоту раскрытия определял по соседям В 01.10.2019 в 14:48, spase_omsk сказал: Итак, понемногу приступаем. На сегодня прибор умеет показывать текущую высоту, сбрасываться кнопкой на 0, управлять подсветкой дисплея, экономить энергию и отключаться, уходя в глубокий сон. На очереди поддержка часов и светодиода, работа с прерываниями и полевые испытания. Смотреть тут: https://github.com/spase74/OpenSkydiveAltimeter температуру ещё не показывает как Neptune?)) (а мой Neptune начал очень быстро жрать батарейку - приходится её вытаскивать..( 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л 5 часов назад, Guest сказал: Температуру ещё не показывает как Neptune?)) (а мой Neptune начал очень быстро жрать батарейку - приходится её вытаскивать..( С датчика она приходит, можно и показать, но зачем? Когда прибор на руке, температура на датчике всё равно будет неправильной, во время прыжка она вроде ни к чему, так что мелким шрифтом в уголке может и сделаю, но смысла особого не вижу. А вот что точно добавлю - так это будильник. Пригодится. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Ёжик 703 Жалоба Опубликовано: 5 л 2 часа назад, spase_omsk сказал: А вот что точно добавлю - так это будильник. Пригодится. Еще место для таблетки алкозепцера и нычку для заначки на прыжки). Шучу. 2 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л 4 часа назад, Ёжик сказал: Еще место для таблетки алкозепцера и нычку для заначки на прыжки). Шучу. Учитывая, что применённый аккумулятор рОдом из электронной сигареты, я долго удерживал себя от мысли совместить высотомер с power-банком и vape-модом... 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
_Berkut_ 25 Жалоба Опубликовано: 5 л Нормальный такой проект) Одобряю.) Но высотникам - никаким не доверяйте! Открывайтесь по очкометру. 2 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л 58 минут назад, _Berkut_ сказал: Но высотникам - никаким не доверяйте! Открывайтесь по очкометру. Вот что верно, то верно! Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
spase_omsk 149 Жалоба Опубликовано: 5 л Итак. Как тупой высотник оно заработало, в ближайшее время свожу его на высоту, сравню с промышленным. Размер получился ровно в половину сигаретной пачки. Да, цифирки в левом нижнем углу - raw данные с сенсора батареи. 2 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах