aptpod Tech Blog

株式会社アプトポッドのテクノロジーブログです

ASAM規格への対応サービス-CCP DAQのご紹介

f:id:aptpod_tech-writer:20210913192557j:plain

こんにちは、オートモーティブグループの榮枝です。

オートモーティブグループでは、アプトポッド製品のIoTプラットフォームである「intdash」を活用して自動車産業へのIoTソリューションを提供しています。

昨今では、お客様の個別ニーズに応じてのソリューション提供に加えて、業界規格や業界共通的なニーズに対応すべくサービス開発も進めています。

今日は、開発中の、CCP(CAN Calibration Protocol)という自動車の内部状態を計測し調整するための通信をintdashを活用して遠隔で行えるようにするサービスについてご紹介させていただこうと思います。

  • 予備知識
    • CCP
    • 適合
    • ASAM
    • CAN
    • ECU
    • A2Lファイル
    • DAQ
  • 開発中のCCPサービスのご紹介
    • 既存の適合プロセス
      • 1. 初期設定
      • 2. 計測・適合の設定・準備
      • 3. 計測・適合
      • 4.分析
    • 既存の適合プロセスの課題
    • 本サービスが提案する適合プロセス
      • 1.初期設定
      • 2&3.計測の設定
      • 4&5.(自動)CCP通信とクラウドへのデータ送信
      • 6&7.リアルタイムモニタリングと計測データダウンロード
        • 参考:本サービスのUIイメージ
  • まとめ-今後の展望と要望投稿のお願い
続きを読む

ROS2メッセージの遠隔リアルタイムデータ伝送を実現する新プロダクトのご紹介

f:id:aptpod_tech-writer:20210728181223p:plain

Protocol/Robotics Teamの酒井 (@neko_suki) です。

今回は「ROS2メッセージの遠隔リアルタイムデータ伝送を実現する新プロダクトのご紹介」というタイトルでintdash_ros2bridgeという開発中の新プロダクトについてご紹介します。

弊社は、ROS1で任意トピックをC++ノードでPublish/Subscribeする方法を活用したROSメッセージの遠隔リアルタイムデータ伝送を行うintdash Bridge というプロダクトを提供しています。intdash Bridgeを使うことで遠隔地のROS1空間をつなぎROS1のメッセージをやり取りすることによる遠隔制御やモニタリングなどのユースケースが実現できます。

今回ご紹介するintdash_ros2bridgeは、ROS2上で「任意のROSトピック、サービス、アクションのブリッジ」を実現*1します。intdash_ros2bridgeによって遠隔地のROS2空間をつなぐことが可能になります。その結果ROS1と同様にROS2でも遠隔制御やモニタリングなどが実現できます。

現在、intdash_ros2bridgeは開発の最終段階を進めるとともに、将来のintdash_ros2bridgeの利用拡大やROSコミュニティへの貢献を視野に入れたOSS化に向けた計画も進めています。

本記事では実際に動作させてみたデモ動画と構成について紹介します。

*1:pythonによる実装は、rosbridge_serverがありますが、本プロダクトはc++で実装しています

続きを読む

intdashで遠隔アナログデータ計測をはじめよう

f:id:aptpod_tech-writer:20210720153020j:plain

はじめに

Hardware/OTグループの加藤です。 私はハードウェア系のエンジニアで、これまでデータ計測にオシロスコープ・デジタルマルチメータ・データロガー等を使用したことがあります。 それぞれ一長一短なので組み合わせて使用することになるのですが、それぞれ別々の測定器である為、取得したデータは連携していませんでした。特にオシロスコープの波形には時刻の概念はなく、他の測定器のデータとタイムスタンプを合わせて検証することはできませんでした。

また、長時間連続稼働テストや遠隔地での長時間におよぶ動作テスト等ではネットワークカメラを使用しました。 自宅やオフィスで状態を確認できるようになるのは便利なのですが、 エラーや故障が起きてしまった場合にはどういう状況でそうなったかはさっぱりわからず遠い場所で途方に暮れるしかありませんでした。 製品そのものに通信機能が無い場合が最悪で、常に見張る必要がありました。 製品か自分か動作が止まってしまう(寝てしまう)のはどちらが先かみたいな状況になりがちでした。

intdashEDGEPLANT T1を使用すると、LTE回線で各種データを同じ時系列上のタイムスタンプを付加して記録することができます。 今回、ANALOG-USB Interfaceという製品を約1年かけて設計→開発→量産に至り、アナログデータも測定できるようになりました。 これら弊社の製品を組み合わせると、LTE回線経由の遠隔アナログデータ計測や、計測したデータの可視化が行えるようになり、冒頭の課題が全て解決します。 本記事では、ANALOG-USB Interfaceを使用したアナログデータ計測のメリットとこれを試した結果を共有します。

f:id:aptpod_tech-writer:20210719135455p:plain
ANALOG-USB Interface

続きを読む

AWS Fargateで発話箇所を自動検出するシステムを作った話

f:id:aptpod_tech-writer:20210623183848j:plain

こんにちは。製品開発グループにて機械学習の研究開発まわりを担当しているきしだです。
現在、研究開発の一環として、「デバイスから収集された時系列データから、発話された箇所を自動で検出するシステム」を開発しています。現在はまだ試作段階ですが、この試作品を用いて実際に利用機会があるかどうか検証しているフェーズです。そこで、今回はこの試作内容をテックブログにてご紹介します。

※ 現在こちらの試作品にご興味がある方々を募集しております。試しに利用してみたい、という方がいらっしゃいましたらぜひこちらまでお問い合わせください。

  • ことの背景
    • 走行データをフィードバックデータとして活用する
    • フィードバックデータの価値を高める難しさ
    • フィードバックデータの価値を"発話箇所"で高める
  • 機能の概要
  • 実現方法
    • アーキテクチャ
    • 発話検出のロジック
    • 実際に動かしてみる
  • まとめ
続きを読む

Linux で CAN通信するために EDGEPLANT CAN-USB Interface を利用する

はじめに

こんにちは、ハードウェア/OT 製品開発グループ1 でソフトウェア開発を担当している矢部です。

アプトポッドでは以前より、EDGEPLANT CAN-USB Interface という自社開発製品を取り扱っています。 こちらは車載機器の通信規格であるCAN2 データの送受信に対応したもので、CANバスに接続して使用する製品です。

EDGEPLANT CAN-USB Interface

EDGEPLANT CAN-USB Interface とその周辺プロダクトについては、こちらの記事でもご紹介しておりますので、よろしければご覧ください。

tech.aptpod.co.jp


これまでCAN-USB Interfaceは、 弊社のアプライアンス製品 に付属する形としてのみ提供していました。 デバイスドライバーも専用のものを開発・提供しており、専用ソフトウェアからしか利用できませんでした。

今後、幅広いお客様にこちらの製品をお使いいただけるよう、オープンソースのCANドライバーであるSocket CAN3 への対応を進めています。 Socket CANはオープンソースのため、当社の専用ソフトウェアで直接利用する場合と比較すると、インターフェイス機器側で付与されるタイムスタンプが利用できないなど機能面で劣る部分もありますが、様々なサードパーティプロダクトと連携できる点が魅力です。 当社製品をSocket CANを介して利用可能にすることで、サードパーティプロダクトを介して誰でも簡単に当社製品を利用できるようになります。

今回は、CAN-USB InterfaceをSocket CANによってLinuxマシン上で使用する方法についてご紹介します。以降の説明では、当社の車載対応のLinux搭載エッジコンピュータ EDGEPLANT T1 を前提として解説していきます。

  • はじめに
  • これまでの使われ方
  • EDGEPLANT CAN-USB Interfaceの特長
  • EDGEPLANT T1 でCANデータを見る
    • CAN-USB Interface を準備する
      • ドライバをインストールする
      • インターフェースを確認する
      • CAN の設定を行う
    • can-utils を利用する
      • CANデータを受信する
      • CANデータを送信する
    • SavvyCAN を利用する
      • 事前準備
      • SavvyCAN をビルドする
      • SavvyCAN でデータを見る
    • Python で実装する
      • python-can をインストールする
      • CANデータを送受信する
  • おわりに

  1. OT : Operational Technology の略。ハードウェアおよび組込みソフトの製品開発をミッションとするグループ
  2. Controller Area Network の略。 https://ja.wikipedia.org/wiki/Controller_Area_Network
  3. https://en.wikipedia.org/wiki/SocketCAN
続きを読む