Data Streamer Google Sheets
Десктопное приложениеИнтеграцияАвтоматизация

Data Streamer Google Sheets
Цели
- Подключить проприетарное оборудование к Google Sheets
- Обеспечить логирование в реальном времени и пакетно
- Улучшить кроссплатформенную совместимость
Соединяя оборудование и облачные данные
Этот проект был разработан для Sensor Electronics, чтобы обеспечить беспрепятственную передачу данных с их аппаратных устройств напрямую в Google Sheets. Мы заменили устаревшее Excel-решение на прошивке надёжным десктопным приложением, построенным на Rust и фреймворке Tauri.
Процесс разработки шёл в тесном сотрудничестве с заказчиком для определения требований. Ключевой проблемой стала несовместимость прошивки под Linux и macOS со стандартными драйверами. Мы выявили эти узкие места, передали их команде разработки прошивки и внедрили исправление. Итоговое решение поддерживает как пакетное, так и потоковое логирование в Google Sheets. Опираясь на безопасность памяти и zero-cost абстракции Rust, мы построили устойчивый мост между нестабильными последовательными соединениями оборудования и облаком. Tauri позволил сохранить лёгкий размер и при этом обеспечить нативное ощущение во всех операционных системах.
Процесс
- 1
Discovery и сбор требований
Структурированные воркшопы с инженерами Sensor Electronics для картирования полного пути данных: прошивка сенсора → USB/Serial → десктопное приложение → Google Sheets; задокументированы форматы вывода, частоты дискретизации и шаблоны таблиц.
- 2
Аудит прошивки и драйверов
Запуск устаревшего устройства на Windows, Linux и macOS, воспроизведение сбоев драйверов под Linux/macOS со стандартными последовательными драйверами и подача детального баг-репорта команде прошивки; совместная реализация и верификация исправления.
- 3
Проектирование архитектуры
Разработка ядра на Rust с асинхронными задачами tokio для последовательного ввода-вывода, локального lock-free write-ahead буфера для устойчивости к offline и контракта Tauri-фронтенда; выбор Google Sheets API v4 со стратегией обновления токена через сервис-аккаунт.
- 4
Прототип и Hardware-in-the-Loop тесты
Собран ранний прототип, транслирующий показания сенсора в реальном времени в Sheets; протестировано на смену кабелей, перезапуски устройства и смоделированные сетевые обрывы для проверки переподключения и буферизации.
- 5
Реализация
Разработка продуктивного Tauri-приложения: потоковая передача строк в реальном времени, режим пакетного импорта, обработка back-pressure, переподключения с экспоненциальным backoff и структурированное логирование для диагностики на местах.
- 6
QA и развёртывание
Проведение soak-тестов (многочасовое непрерывное логирование) и сборка кроссплатформенных инсталляторов для Windows/Linux/macOS; поставка приложения с руководством пользователя и передача операторам заказчика.
Подробнее

