Як створювали розумний електровел

Як створювали розумний електровел
На Хабрі часто пишуть про електротранспорт. І про велосипеди. А ще про AI. Cloud4Y вирішив об'єднати ці три теми, розповівши про «розумний» електровелосипед, який завжди є онлайн. Йтиметься про модель Greyp G6.

Щоб вам було цікавіше, ми розбили статтю на дві частини. Перша присвячена процесу створення пристрою, платформи та протоколів зв'язку. Друга - це технічні характеристики, опис начинки та можливостей велосипеда.

Частина перша, бекенд

Greyp Bikes – хорватський виробник електровелосипедів преміум-класу, що належить місцевому виробнику екзотичних суперкарів Rimac. Компанія створює по-справжньому цікаві велосипеди. Чого варта лише попередня модель, двопідвіс G12S. Це було щось середнє між електровелосипедом та електромотоциклом, оскільки пристрій міг розігнатися до 70 км/год, мав потужний мотор і на одному заряді пробігав 120 км.

G6 вийшов більш витонченим та позашляховим, але головна його особливість – «підключеність». Грейп Велосипеди зробили важливий крок у бік розвитку IoT, запропонувавши велосипед, який завжди «у мережі». Але поговоримо спочатку про те, як взагалі створювався «розумний» електровел.

Народження ідеї

До інтернету підключається величезна кількість різних пристроїв. А чим велосипеди гірші? Так у Greyp Bikes і з'явилася ідея, що перетворилася на G6. У будь-який момент часу цей велосипед підтримує з'єднання з хмарним сервером. Мобільний оператор забезпечує зв'язок, а eSIM зашивається прямо у велосипед. І це відкриває безліч цікавих можливостей як для спортсменів, так і для звичайних любителів велопоїздок.

Платформа

Під час створення платформи для інноваційного продукту потрібно враховувати безліч нюансів. Тому вибір хмарної платформи для розміщення та запуску всіх сервісів, необхідних для сучасного електровелосипеда, був дуже важливим питанням. Компанія зупинила свій вибір на Amazon Web Services (AWS). Почасти це було пов'язано з тим, що Greyp Bikes вже мав досвід роботи з сервісом. Почасти через його популярність, широке поширення серед розробників по всьому світу і хороше ставлення до Java/JVM (так-так, їх активно використовують у Greyp Bikes).

У AWS був хороший IoT MQTT-брокер (Cloud4Y писав про протоколи раніше), що ідеально підходить для легкого обміну даними з велосипедом. Щоправда, потрібно було якось налагодити зв'язок із додатком для смартфона. Були спроби реалізувати це самостійно за допомогою Websockets, але пізніше в компанії вирішили не винаходити велосипеда і перейшли на платформу Google Firebase, яка широко використовується мобільними розробниками. З початку розробки архітектура системи зазнала безліч покращень та змін. Приблизно так це виглядає зараз:

Як створювали розумний електровел
технічний стек

Реалізація

Компанія передбачила два способи входу до системи. Кожен із них реалізований окремо, з різними технологіями для свого варіанта використання.

Від велосипеда на смартфон

Перше, що потрібно враховувати при створенні точки входу в систему, який протокол зв'язку використовувати. Як уже було сказано, компанія обрала MQTT через його легкий «характер». Протокол хороший з точки зору пропускної здатності, відмінно працює з потенційно ненадійними з'єднаннями, дозволяє заощаджувати заряд батареї, що особливо важливо для електровелосипеда від Greyp.

Використовуваний брокер MQTT необхідний для завантаження всіх даних, що надходять від велосипеда. Усередині мережі AWS знаходиться Lambda, яка зчитує двійкові дані, надані брокером MQTT, аналізує їх та доставляє до Apache Kafka для подальшої обробки.

Apache Kafka є основою системи. Всі дані повинні пройти через неї, щоб досягти кінцевого пункту призначення. Нині ядро ​​системи має кілька агентів. Найбільш важливим є той, який збирає дані і передає їх у «холодне сховище» InfluxDB. Інший передає дані в базу даних Firebase Realtime, роблячи їх доступними для додатків смартфона. Саме тут Apache Kafka дійсно потрібен — холодне сховище (InfluxDB) зберігає всі дані, які отримують від велосипеда, і Firebase може отримувати актуальну інформацію (наприклад, метрики в реальному часі — поточна швидкість).

Kafka дозволяє приймати повідомлення з різною швидкістю і доставляти їх практично відразу Firebase (для відображення в додатку на смартфоні) і в кінцевому підсумку передавати їх в InfluxDB (для аналізу даних, статистики, моніторингу).

Використання Kafka дозволяє використовувати горизонтальне масштабування зі збільшенням навантаження, а також підключати інших агентів, які можуть обробляти вхідні дані у своєму власному темпі і для власного варіанту використання (наприклад, при змаганні між групою велосипедів). Тобто рішення дозволяє велосипедистам конкурувати один з одним за різними характеристиками. Наприклад, максимальна швидкість, максимальний стрибок, максимальна продуктивність тощо.

Всі сервіси (звані GVC - Greyp Vehicle Cloud) в основному реалізовані на базі Spring Boot і Java, хоча використовуються й інші мови. Кожна збірка упакована в образ Docker, розміщений у репозиторії ECR, запускається та організується Amazon ECS. Хоча NoSQL досить зручний і популярний для низки випадків, Firebase не завжди може задовольнити всі потреби Greyp, і тому компанія також використовує MySQL (в RDS) для спеціальних запитів (Firebase використовує дерево JSON, яке в деяких випадках ефективніше) та зберігання конкретних даних. Ще одним сховищем, що використовується, є Amazon S3, що забезпечує безпеку зібраних даних.

Від смартфона на велосипед

Як ми вже говорили, зв'язок зі смартфонами налагоджено через Firebase. Платформа використовується для автентифікації користувачів програми та їх шматочка бази даних у режимі реального часу. По факту, Firebase є комбінацією двох речей: одна - це база даних для постійного зберігання даних, а інша - для доставки даних в режимі реального часу на смартфони через підключення до Websocket. Ідеальний варіант для цього типу з'єднання – подача команд на велосипед, коли пристрої не знаходяться близько один до одного (немає доступне з'єднання BT/Wi-Fi).

В даному випадку Greyp розробили власний механізм обробки команд, який отримує повідомлення від смартфона через базу даних у режимі реального часу. Цей механізм є частиною основних служб додатків (GVC), завдання яких – перетворювати команди смартфона на повідомлення MQTT, що передаються велосипеду через брокера IoT. Коли велосипед отримує команду, він обробляє її, виконує відповідну дію та повертає відповідь у Firebase (смартфон).

моніторинг

Як створювали розумний електровел
Контроль параметрів

Практично кожен бекенд-розробник любить спати ночами, не перевіряючи кожні 10 хвилин сервери. А це означає, що потрібно впроваджувати автоматизовані рішення моніторингу та оповіщень у системі. Це правило актуальне і для велосипедної екосистеми Greyp. Там теж є поціновувачі нормального нічного сну, тому компанія використовує два хмарні рішення: Amazon CloudWatch і jmxtrans.

CloudWatch — це сервіс моніторингу та спостереження, який збирає дані моніторингу та операційні дані у вигляді журналів, метрик та подій, допомагаючи отримати єдине представлення додатків, сервісів та ресурсів AWS, що працюють на платформі AWS, а також у локальному середовищі. За допомогою CloudWatch зручно виявляти аномальну поведінку у своїх середовищах, налаштовувати попередження, створювати загальні візуальні уявлення журналів та метрик, виконувати автоматизовані дії, усувати неполадки, а також дізнаватися корисні відомості, які допомагають підтримувати стабільну роботу програм.

CloudWatch збирає метрики і доставляє їх на панель моніторингу. Там вони поєднуються з даними, що надходять від інших керованих Amazon ресурсів. Метрики JVM отримує через кінцеву точку JMX за допомогою з'єднувача, званого jmxtrans (також розміщеного у вигляді контейнера Docker всередині ECS).

Частина друга, характеристики

Як створювали розумний електровел

То який у результаті вийшов електровел? Електричний гірський велосипед Greyp G6 оснащений літій-іонним акумулятором на 36V, 700 Wh, що працює від елементів LG. Замість ховати батарею, як це роблять багато виробників електровелосипедів, Greyp розташував знімну батарею прямо в центрі рами. G6 оснащений двигуном MPF номінальною потужністю 250 Вт (а ще є варіант із 450 Вт).

Greyp G6 – це гірський велосипед, оснащений задньою підвіскою Rockhox, заправленою близько до верхньої труби і залишає достатньо місця для знімної батареї між колінами водія. Рама виконана в «ендуро» стилі та пропонує 150 мм ходу завдяки підвісці. Кабель та гальмівні магістралі пропущені всередині рами. За рахунок цього забезпечується естетичний зовнішній вигляд та знижується ризик зачепитися за гілки.

Каркас із 100% вуглецевого волокна був спеціально розроблений у Greyp з використанням досвіду, набутого під час створення електричного гіперкара Concept One.

Комплект електроніки на Greyp G6 управляється центральним інтелектуальним модулем (CIM) на штоку. Він включає кольоровий дисплей, WiFi, Bluetooth, підключення 4G, гіроскоп, роз'єм USB C, фронтальну камеру, а також інтерфейс із задньою камерою під сідлом. До речі, задню камеру оточують 4 LED-світлодіоди. Ширококутні камери (1080p 30 fps) передусім призначені для зйомки відео під час поїздок.

Приклади фотоЯк створювали розумний електровел

Як створювали розумний електровел

Як створювали розумний електровел

Особливу увагу у компанії приділяють рішенню eSTEM.

«Greyp eSTEM – це центральний інтелектуальний модуль для велосипеда, який керує двома камерами (передньою та задньою), контролює частоту серцевих скорочень водія, має вбудований гіроскоп, систему навігації та eSIM, що дозволяє підключати його у будь-який час. Система e-bike використовує смартфон як інтерфейс користувача, а мобільний додаток створює унікальний інтерфейс завдяки різним новим опціям, таким як віддалений вимикач велосипеда, отримання фотографій, відправка тексту на велосипед і обмеження потужності».

На кермі велосипеда є спеціальна кнопка "Поділитися". Якщо під час поїздки станеться щось цікаве чи захоплююче, можна натиснути на кнопку та автоматично зберегти останні 15-30 секунд відео, завантаживши його в обліковий запис у соціальних мережах велосипедиста. Також на відео можуть бути накладені додаткові дані. Наприклад, споживання енергії велосипедом, швидкість, час поїздки тощо.

З телефоном, встановленим на велосипеді в режимі панелі приладів, Greyp G6 може надати величезну кількість інформації, а не тільки показати поточну швидкість або рівень заряду батареї. Так, велосипедист може вибрати будь-яку точку на карті (наприклад, високий пагорб), і комп'ютер обчислить, чи вистачить заряду акумулятора на те, щоб доїхати до вершини. Або розрахує точку неповернення, якщо раптом вам не хочеться крутити педалі по дорозі назад. Хоча педалі цілком можна і покрутити. Виробник запевняє, що велосипед не важкий (хоча це як подивитися, його вага – 25 кг).

Як створювали розумний електровел
Greyp G6 цілком можна підняти

Greyp G6 має протиугінну систему, яка схожа на Режим сентрі від Tesla. Тобто, якщо доторкнутися до припаркованого велосипеда, він повідомить про це власника і дасть йому доступ до камери, щоб дізнатися, хто обертається навколо електровела. Потім водій може вибрати дистанційне відключення велосипеда, щоб не дати зловмиснику виїхати. І, враховуючи, що ці системи розроблялися в Greyp протягом багатьох років, цілком імовірно, що вони справді вигадали цю систему до того, як її запровадила Tesla.

У продажу є кілька моделей серії: G6.1, G6.2, G6.3. G6.1 розганяється до 25 км/год (15,5 миль на годину) і коштує 6 євро. G499 має максимальну швидкість 6.3 км/год (45 миль на годину) і коштує 28 євро. У чому відмінність моделі G7 - неясно, але вона коштує 499 євро.

Що ще корисного можна почитати у блозі Cloud4Y

Шлях штучного інтелекту від фантастичної ідеї до наукової галузі
4 способи заощадити на бекапах у хмарі
Налаштовуємо top у GNU/Linux
Літо майже скінчилося. Не втеклих даних майже не залишилося
IoT, туман та хмари: поговоримо про технології?

Підписуйтесь на наш Telegram-Канал, щоб не пропустити чергову статтю! Пишемо не частіше двох разів на тиждень і лише у справі.

Джерело: habr.com

Додати коментар або відгук