ロボットプログラミング

MATLABと仿真万博1manbetx软件を使用したロボットのプログラミング

ロボットプログラミングでは,ロボットによる環境の知覚,計画および決定,タスクの実行を有効にするためのコンピュータープログラムの記述が行われます。たとえば,地上用ロボットが建物内を自律的に移動するようプログラミングを行うには,検知と知覚,自己位置推定と環境地図作成,パスプランニングとパス追従,アクチュエータ制御などのタスクが必要です。

ロボットプログラミングには,一般的に以下の内容が含まれます。

  • ロボットによる,コンピュータービジョンとディープラーニングアルゴリズムを用いたオブジェクト検出,分類と追跡,および動き推定のための環境知覚の実現
  • 自己位置推定と環境地図作成(大满贯),衝突回避,動作プランニング用アルゴリズムを介した自律的なロボットの実現
  • モデル予測制御,計算トルク制御,パス追従などの制御システムの設計によるロボットの動作制御
  • CPU、GPU FPGA,マイクロコントローラーなど,さまざまな組み込みプラットフォームに接続されたセンサーやアクチュエータとの通信およびインターフェイス

ロボットプログラミングを始める際,エンジニアは通常,ロボットの意図する動作のステートマシン図を開発します。また,アルゴリズム開発にはC / c++、Python®, Java®, MATLAB®などのプログラミング言語が使用され,ハードウェア抽象化,低水準デバイス制御,プロセス間のメッセージ伝達,およびハードウェア展開には,ロボットオペレーティングシステム(ROS)などのミドルウェアが使用されています。

一般的なロボットプログラミングのワークフロー。

1つの手順でのエラーが,ロボットプログラミングのワークフロー全体に影響を与えることはよくあります。ソフトウェアのモデル化とシミュレーションをすることで,プロトタイピング中に問題を特定して,実装エラーが生じるのを回避し,ロボットの生産段階や,さらには実稼働環境での使用中に問題が判明するという事態を避けることができます。また,システムをシミュレーションすることで,エンジニアは,プラットフォーム依存の心配なく,ロボットハードウェアにアクセスせずに制御パラメーターを調整して,システム設計を改良することができます。

MATLABには,ロボットプログラミング向けの複数の組み込みアルゴリズムと関数が用意されています。たとえば,MATLABですぐに使えるディープラーニングアルゴリズムを数行作成するだけで,ロボットが環境内のオブジェクトを識別できるようになります。万博1manbetx动态仿真模块®には,ロボットプログラミング向けにモデルベースデザインを用いたモデル化とシミュレーションに使用できる,プリビルドのブロックが用意されています。たとえば,万博1manbetx仿真软件のROSブロックは,ロボットプログラマーがコードを記述しなくてもセンサーデータをサブスクライブ(受信)し,ROSネットワーク上でロボットコマンドをパブリッシュ(送信)することを可能にします。

例を参照。

" data-toggle="lightbox">

ROSブロックを使用した仿真万博1manbetx软件におけるメッセージのパブリッシュおよびサブスクライブ。例を参照。

ロボットのプログラミングにMATLABや仿真软万博1manbetx件を使用することで,スケーラブルなロボットシミュレーションを構築して,プロトタイピング,概念モデルのテスト,低価格でのデバッグを行うことができます。これにより,残りのアルゴリズムを同じシミュレーション環境に保持したまま,高忠実度モデルを妥当性確認に使用することができます。ロボットシミュレーションで望ましい結果が得られたら,一般的なプログラミング言語で仿真万博1manbetx软件モデルから組み込みシステム用のスタンドアロン実行コードを生成することができます。MATLABや Simulink から ROS ネットワークへの ROS 接続を使用すると、MATLAB や Simulink から直接 C++ ROS ノードを生成して、ROS 対応ロボットや Gazebo などのロボット シミュレーターでアプリケーションをテストし、検証することができます。

ロボットプログラミングの詳細については,机器人系统工具箱™导航工具箱™ROS工具箱MATLAB,および万博1manbetxを参照してください。


例および使用方法

検知と知覚

パスプランニングと決定

制御


ロボットプログラミングのソフトウェアリファレンス

参考:ロボティクスと自律システムメカトロニクスSimscape多体控制系统工具箱Stateflow自动驾驶的工具箱计算机视觉的工具箱嵌入式编码器MATLAB编码器万博1manbetx仿真软件编码器PID制御逆運動学クラウドロボティクス