モバイルロボットソフトウェアの自動テストの課題への対応

モバイルロボットソフトウェアの自動テストの課題への対応

自動化されたモバイル ホーム ロボットの複雑さを探り、セットアップの特有の課題と制約の克服に焦点を当てて、スムーズな開梱体験を実現します。

前回の記事では、April Tag テクノロジーを使用して E2E ホームロボットを自動化する方法について説明しました。家庭用ロボット、あるいはあらゆるロボットの自動化には大きな課題があります。デバイスをセットアップするにはどうすればよいですか?デバイス、電話、モバイル アプリの世界では、デバイスは USB 経由でホスト デバイスに接続され、常に電源に接続されます。現在、ロボットのテストには、ロボットが移動中にどのようにテストするかという独特の課題が生じています。ホストデバイスに物理的に接続することはできません。開封体験をどのように検証するのでしょうか?心配しないでください。この記事で説明します。

複雑さと課題

ロボット自動化テストのセットアップ段階におけるさまざまな課題について簡単に紹介しましたが、ここではさらにいくつかの課題について詳しく説明したいと思います。

ロボットは移動しており、ホストデバイスに物理的に接続することはできません。一部のコンポーネント レベルのテストでは可能かもしれませんが、E2E テストでは不可能です。

開梱体験は、デバイスが Wi-Fi に接続されていないときに行われます。ホスト デバイスは、デバイスが新品の場合、どのようにデバイスと対話しますか?これは、日常的なロボットテストでは非常に一般的な状況です。

エラーや例外が発生した場合にロボットを回復します。自動テストの主な目的は、ロボットの潜在的なソフトウェアおよびハードウェアの問題を発見することです。何か問題が発生した場合、どのように報告してデバイスを回復すればよいですか?

ロボットのバッテリーは切れてしまうので、ロボットのバッテリーに電力を供給するための信頼できる電源が必要です。

同じセットアップを複数のラボおよび自宅環境に拡張します。 1 つの環境だけでボットに署名したりテストしたりすることはできないため、これは重要です。

これらの質問に時系列順に取り組んでみましょう。

Raspberry Piを使用してロボットをプリセットする

この問題を解決することは極めて重要です。ある場所にあるテスト自動化ラボに設置されたロボットを考えてみます。会社の内部ネットワークに接続されたホスト デバイスがあり、コマンドの送受信、さまざまなソース コード、内部ツール、インフラストラクチャへのアクセスに使用されます。 Raspberry Pi をデバイスに接続し、Raspberry Pi 上で REST サービスを実行して、ホスト デバイスとデバイスと通信します。以下にこの設定を示す図を示します。

Raspberry Piを使用してロボットをプリセットする

開封体験のユースケースを解決する

ここでは、Raspberry Pi を使用してテスト環境を事前に設定する方法を説明します。それでは、デバイスが Wi-Fi に接続されないという初期状態の問題を修正する方法を見てみましょう。

これが、Raspberry Pi 上の RESTful サービスが行うことです。 RESTful サービスには、次のエンドポイントがいくつか含まれている必要があります。

  • 点滅装置
  • OOBEを完了する
  • Wi-Fiの設定など
  • DUTのIPアドレスを取得する

これで、デバイスにワイヤレスで接続するのが簡単になり、デバイスはテストの準備が完全に整いました。

エラーや例外が発生した場合にロボットを回復する

これは非常によくある状況です。こうした種類の質問に圧倒されたり落胆したりしないでください。この時点で、デバイスの低レベルコンポーネントを使用して、デバイスを元の位置に戻す必要があります。たとえば、さまざまなソフトウェア スタックに関する前回の記事で述べたように、ロボットを元の位置に戻すには、プラットフォームまたはモビリティ レイヤーにアクセスする必要があります。これは最も難しくて難しい作業なので、April Tag などの他のテクノロジーやその他の外部システムを使用してデバイスを元に戻します。これで次の問題に移ります。次のテスト実行に備えて、デバイスを充電ドックに戻す必要があります。

複数のテスト環境への拡張

低レベルのコマンドを使用すると、デバイスを充電ドックに戻す際の信頼性が大幅に高まります。トップレベルの移動コマンドまたはナビゲーション コマンドを使用すると、プラットフォーム ドライバーまたはモビリティ レイヤー ドライバーを使用する場合よりも失敗する可能性が高くなり、効率も悪くなります。

セットアップを複数のテスト環境に拡張するためのヒント:

  • セットアップはシンプルにしてください。ソリューションを過度に複雑にしたり、過度に設計したりしないでください。
  • 展開可能な Raspberry Pi イメージを備えているため、新しい Raspberry Pi を簡単にロードできます。
  • テスト コードをリモート リポジトリに配置します。オンプレミスに移動しても拡張できません。

最後に、ロボットによる自動化は単純なことではなく、多くの設計作業と市場にある他の選択肢の検討が必要になります。すべての状況に適合する唯一の解決策は存在しません。最終的な解決策を決定する前に、概念実証を行うことをお勧めします。

代替案

私たちが解決しようとしている問題の性質と複雑さを考えると、「代替手段はあるか?」という質問は簡単にできます。答えは「はい」です。シミュレーター/エミュレーターをテストに効果的に使用して、説明したユースケースのほとんどをカバーすることができますが、実際のデバイスでのテストに代わるものはありません。

<<:  5分間の技術講演 | GET3D生成モデルの簡単な分析

>>:  顔認識の「レッドライン」と「ボトムライン」を理解していますか?

ブログ    
ブログ    

推薦する

人工知能は将来の仕事や生活にどのような影響を与えるのでしょうか?

記憶の道をたどってみると、この時代に人類がどれだけ進歩したかがわかるでしょう。昔は、愛する人に手紙を...

深セン大学教授が顔検出ライブラリをオープンソース化、顔検出速度は最大1500FPS以上

先週、深セン大学コンピュータサイエンスおよびソフトウェア工学部の Yu Shiqi 教授が、最大 1...

世界トップ10のAIトレーニングチップの包括的なレビュー

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

AIはもはや派手なものではなく、日常生活にもっと関連している

2020年に入り、業界におけるAIの発展は単なる技術革新やブレークスルーの範囲を超え、製品と業界の統...

公式スタンプ! 35の大学がAI専門建設資格の第1期生を取得

最近、教育部は「2018年度一般高等教育機関の学部専攻登録および認可結果の発表に関する教育部の通知」...

...

LSTM の父が LLaMA 2 を激しく非難: 私のアイデアをコピーして私を辱めた!ネットユーザー:それをしたのはLeCunですか?

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

...

李開復氏、ペントランド氏と会談:AIはワンマンショーではない、AI冷戦は避けるべき

最近、Sinovation Venturesの会長兼CEOであるKai-Fu Lee博士とAlex ...

...

2021 年に AI と ML に参入する前に知っておくべき 10 のこと

高度な新しい AI アルゴリズムを使用して複雑な問題を解決し、高い給料を得られるというのは魅力的に思...

OpenAIの創設者は、Nvidiaに対抗するチップを設計・製造するためのグローバルなチップ工場ネットワークを構築したいと考えている

OpenAIの共同創設者サム・アルトマン氏は最近、Nvidiaに対抗するために世界中にAIチップ工場...

ChatGPT が作成した履歴書が人事部の心を動かし、彼は卒業後すぐに夢のオファーを獲得しました。

こんにちは、最近卒業した人が ChatGPT を使用してカバーレターを作成し、数分で履歴書のスクリー...

色を選ぶと、このAIシステムがロゴをデザインします

LoGANがデザインしたいくつかのロゴ画像提供: マーストリヒト大学[51CTO.com クイック翻...

データインテリジェンスのない人工知能は人工的である

良いロボット掃除機が動いているところを見たことがありますか?最初は楽しいのですが、掃除してほしかった...