Как стать автором
Обновить
32
-1

Пользователь

Отправить сообщение

А какая именно задача? В статье много про сами излучатели, но из разработки там - только хардовая часть: мостовой драйвер управления, да dc-dc конвертер. Это все не сложно было - потестировать и воплотить в дизайн.
А вот как мы уже перерабатывали софтовую часть потом, экспериментировали со звуками и раскатывали на флот - про это будет во второй части, там ресурсов ушло поболее.

Согласен, но мы просто не даем им пищать без необходимости - думаю, тут вопрос не к громкости излучателя, а к проработке сценариев использования озвучки в поле

У нас почти все звуки отключены по дефолту с 22 вечера по 7 утра, по местному времени. Эти настройки хранятся на IoT модуле и время отслеживается по данным модуля RTC. Стараемся не шуметь, когда не нужно.

Мне кажется, в этом случае попроще - то есть, просто совсем без шансов идти в магазины общего назначения :). С 47 надежда все же есть

  1. Если вы считаете, что самокатов там быть не должно - напишите, пожалуйста в поддержку в чате приложения или на support@whoosh.bike

  2. У нас нету больше фотоподтверждения завершения аренды, если вы об этом

Мне вот всегда было интересно, кому я могу сказать так же, когда не получается найти в магазине обувь 47 размера :)

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

Тут снова стоит дополнить, что наша цель - не штрафы, наказания и блокировки - а более глубокое понимание, как пользователи эксплуатируют флот и какие мотивы побуждают поступать их так или иначе.
Может быть, просто не было рядом еще одного самоката? Это сигнал для нас, что спрос превышает предложение
Может быть, пассажир боится встать на самокат сам и занимает роль пассажира? Для таких у нас есть школа вождения: https://whoosh-bike.ru/school
А возможно, кому-то просто нравиться кататься вдвоем. Тут мы бессильны, можем лишь просто напомнить о правилах еще раз

То, что вы считаете вес пользователя и сохраняете его вообще поднимает вопрос о правомерности использования вами таких данных

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

Самокат - не поверенное средство измерения, не сертифицированный инструмент проведения метрологических исследований по ГОСТ, мы не претендуем на аккредитацию в этой области ни разу.

А про каких именно продавцов речь? Сейчас все наши поставщики отправляют нам самокаты с посадочным отверстием известной формы, на финишной сборке мы производим комплектацию IoT модулем и выставляем в поле. Есть опция - поставить IoT модуль от производителя, но мы изначально требовали от них кастомизации рамы под свое железо

Так в этом же и была цель - проводить доступные измерения по имеющимся данным без каких либо доработок текущей конструкции самоката

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

Но если кратко:

  • У нас есть отдельный сервис для плановой доставки обновлений с разными возможностями кастомизации - например, обновить 1% какого-то региона или только самокаты определенной модели

  • Стараемся выносить фичетоглы или ключевые настроки фичей в конфиг сервис, что бы опять же - регулировать тестовый период и иметь возможность быстро вмешаться (обновление прошивки всегда более длительный процесс)

  • Реализованы разные фоллбеки на случай, если все совсем плохо. Например, если после обновления самокат даже не может подключиться к платформе - через какое-то время он откатится на дефолтную прошивку

  • Мониторинги, алерты и т.д. - когда важно понять, что что-то идет не так, максимально быстро и не от пользователей или сервисной команды

  • Но самое важное - это процессы. То есть, просто набор правил и практик, которые если соблюдать (а лучше - автоматизировать), то фоллбеки никогда не сработают, т.к. проблема будет отловлена в самом начале процесса раздачи прошивок

Мне больше нравятся антенны на самой плате (ну или SMD керамические, хотя это дороже и менее эффективно). Я понимаю, у них разные области применения и где-то нужны внешние, но у меня таких задач не было…
Ориентировался вот на эти аппноты от TI:
swra351a.pdf, swra228c.pdf, swru120b.pdf, swra161b.pdf.

Ну и не всегда есть под рукой приборы, которые позволяют оценить, как ваша, только что придуманная антенна работает. Однажды у меня в питании nRF24L01 стоял DC-DC и все работало вроде, но не очень. А когда дошли руки посмотреть анализатором спектра — был неприятно удивлен:

image

Такую несущую он выдавал

А вот такую должен (при питании от LDO):

image

На плате ни одного 0805, все 0603. Действительно, на отладке фирменной от нордик (правда, MCU — nRF51) стоят 0402.

Я лично не проверял с 0402, не знаю. Дальность особо не тестил, но по квартире метров 20 с парой не несущих стен работает.

Купил в китае на Али по 30р/шт, так что вряд ли.
Проще же сделать это на внешних компонентах, а МК использовать любой, который удобно программировать.
К примеру, я когда-то делал Zero-crossing на компаратор + аналоговый мультиплексор (Low Capacitance, Low Charge Injection)

image

Нужно было измерять только положительную полуволну синуса микроконтроллером (сигнал симметричен был). В схеме компаратор кроме того, что детектирует переход через 0, так еще и переключает мультиплексор так, что бы в положительную полуволну сигнал шел на АЦП МК, а в отрицательную выдавал 0.
Если честно, не очень понял, о чем речь. Скорее всего, нету, но вы можете проверить сами!
Кстати, в отдельном файле у меня все же есть макросы BUZZER_PIN, BUZZER_PORT, BUZZER_CLK_PINS (BuzzerConfig(void)). Туда же, при желании, можно записать таймер:

#define BUZZER_TIM TIM2
#define BUZZER_CH  CH1
О хорошей переносимости между программами, использующими FreeRTOS. Точнее даже, о сложной переносимости самодельных способов синхронизации между задачами. Мне лично проще потратить двадцать минут и исправить конфигурацию функций инициализации руками, чем создавать полностью универсальные функции.

ST уже пробовали так сделать и что вышло? Ага, SPL. Не то, что бы совсем плохо, но ругаться есть на что. Каждый сам выбирает себе эту грань, главное не вдаваться в крайности.
У меня он работал очень плохо, без преувеличесний. Много ложных срабатываний. Ради интереса покажу позже код инициализации и то, как это работает.

А серия тоже f103? Может, в старших камнях исправили?
Ага =)
Но только шины данных и адреса для NOR flash и OLED
Не знаю. Думаю, что не очень сильно, но не готов это грамотно обосновать.
1

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность