Познакомьтесь с API gRPC RemotiveBroker и узнайте, как он упрощает создание прототипов, создание и тестирование автомобильного программного обеспечения. Создавайте программное обеспечение так, как вы хотите, и на по вашему выбору. Мы упрощаем задачу с помощью оболочки Python и заглушек gRPC, доступных в общедоступном репозитории на нашем GitHub. языке программирования Делайте все с помощью нашего API gRPC Хотите создать быстрый прототип с помощью Python? Вас интересует Раст? API gRPC можно использовать для чтения и записи данных сигналов транспортного средства на выбранном вами языке. Это означает, что вы можете использовать предпочитаемые вами инструменты для быстрого создания приложений, которые зависят от реальных данных сигналов транспортных средств. Имея простую конфигурацию и файл базы данных сигналов, вы можете сразу приступить к работе с записанными данными или внутри физического транспортного средства с живыми данными. RemotiveBroker Используйте один и тот же API независимо от того, работаете ли вы с записанными или реальными данными, напишите свое приложение один раз и протестируйте его на своем рабочем столе и в автомобиле! Вы можете повторно использовать ранее записанные ездовые циклы, например, при детерминированном тестировании ЭБУ или при создании прототипов графических пользовательских интерфейсов. Как только вы будете удовлетворены своей работой, вы можете, в истинном духе сдвига влево, перенести ее на испытательный стенд или на физическое транспортное средство, зная, что код был протестирован. В сочетании с нашей платформой для совместной работы вы можете быстро масштабировать свои усилия по разработке с помощью нескольких виртуализированных RemotiveBrokers! RemotiveCloud Начните с трех строк кода Запустите RemotiveBroker с помощью трех строк кода: $ git clone https://github.com/remotivelabs/remotivebroker-bootstrap.git $ cd remotivebroker-bootstrap $ docker-compose up -d Попробуйте нашу или ознакомьтесь с некоторыми нашими материалами на Github, например , , ) и перейдите в репозиторий для запуска . бесплатную 3-минутную демонстрацию API простыми примерами интеграцией ProtoPie загрузочного RemotiveBroker на рабочем столе Что такое RemotiveBroker? RemotiveBroker — это гибкий инструмент разработчика, который подходит для большинства систем. он предоставляет данные сигнала транспортного средства через API-интерфейс gRPC публикации/подписки. Мы поддерживаем наиболее распространенные автомобильные сети, такие как CAN, Flexray, LIN и Automotive Ethernet, поддерживаемые форматами .dbx, .xml (fibex), .ldf и .arxml. Мы также доказали защиту E2E. Сделайте это еще проще с помощью оболочек API и заглушек gRPC. У нас есть для наших оберток и заглушек. Любой желающий может отправить запрос на включение с оболочкой на своем любимом языке. Начните работу с нашими файлами прототипов gRPC. Наша цель — сделать оболочки и заглушки/клиенты доступными для всех. общедоступный репозиторий Преимущества gRPC Учитывая простую конфигурацию, RemotiveBroker предоставит API-интерфейс gRPC, который позволит вам контролировать ситуацию. Благодаря широкой языковой поддержке gRPC вы можете использовать то, что предпочитаете, например Node.js, Ruby, C# или Kotlin. gRPC использует HTTP/2 и формат двоичных сообщений, что помогает уменьшить пропускную способность сети и уменьшить задержку. Это позволяет нашему RemotiveBroker отправлять большие объемы данных в режиме реального времени, как в случае высокоскоростных CAN & CAN-FD или FlexRay. Python-обертка У нас есть API-оболочка Python для подмножества API , что еще больше упрощает создание приложений. Он также доступен для простой установки через Этот API-оболочка упрощает выполнение общих операций, таких как подключение к RemotiveBroker и настройку подписок на данные сигналов транспортных средств. RemotiveBroker индекс пакетов Python. Подключитесь к RemotiveBroker и настройте подписку на сигнал: # Connect to RemotiveBroker client = Client() client.on_connect = lambda c: print(f"Yay! - connected as {c.client_id} to {c.url}") client.on_signals = lambda signals: print(signals.to_json()) client.connect(url="http://localhost:50051") subscription = client.subscribe( signal_names=["Vehicle.Speed"], namespaces=["vss"], changed_values_only=False) Заглушки/клиенты Typescript и Javascript Поскольку мы работаем с gRPC-web в наших веб-клиентах, у нас есть заглушки/клиенты Typescript и Javascript, доступные для grpc-web. Он также доступен через . Хотя заглушки/клиенты не так полезны, как правильный API-оболочка, они необходимы при работе с gRPC. Однако при изучении API полезно просто просмотреть заглушки. npm/yarn Подпишитесь на рассылку кадров по частоте: // Setup request const config = new FramesDistributionConfig() const namespace = new NameSpace()namespace.setName(namespaceName) config.setNamespace(namespace) // Subscribe this._frameDistributionStream = this._networkServiceClient.subscribeToFramesDistribution(config) Наши инструменты и API постоянно развиваются. Следуйте за нами на и , чтобы не пропустить более полезный контент для разработчиков. GitHub LinkedIn Если у вас есть пожелания или мысли о том, что нам следует развивать дальше, не будьте чужаком!