本記事をストックしておくと記事追加時に通知が届くので、よろしければストックおねがいします!
- 更新内容(最新5件)
はじめに
お疲れ様です,秋並です.
ロボティクス(ロボット工学)は様々な技術が組み合わさった総合的な分野であるため,「ロボティクスについて学ぼう!」となったときに
「何から学んで良いかわからない,そもそもどんな技術があるのかさえ分からない」
といった状況になりやすいと思っています.
そこで,本記事は「ロボティクスの辞書」的な記事を目指したいと思っています.
また、実装できる項目に関しては、できる限りPythonを使用して実装する予定です。
ロボットの辞書的なもの
以降では,ロボティクスの技術をリスト形式でまとめています.徐々に関連する記事を増やしていきたいと考えているため,定期的にこの記事を確認しにきていただけると幸いです.
とりあえず私が知っている技術に関する記事を作成していく予定です.ロボティクスは幅が広いため,私が知らない技術も多くあるため,「この技術もあるよ!」というものがあったら教えていただけるとありがたいです.
全般
ロボットの種類
形状による分類
| 名称 | 説明 | 一言コメント |
|---|---|---|
| ロボットアーム | - | - |
| 移動ロボット | - | - |
| 四足歩行ロボット | - | - |
| ヒューマノイドロボット | - | - |
| クモ型ロボット | - | - |
| 蛇型ロボット | - | - |
| 水中ロボット | - | - |
| ドローン | - | - |
役割による分類
| 名称 | 説明 | 一言コメント |
|---|---|---|
| 協働ロボット | - | - |
| コミニュケーションロボット | - | - |
| 産業用ロボット | - | - |
| サービスロボット | - | - |
| 農業ロボット | - | - |
| 医療ロボット | - | - |
ロボットアーム
全般
| 名称 | 説明 | 一言コメント |
|---|---|---|
| ロボットアームの種類 | 主要なロボットアームの「メリット」「デメリット」「用途」を解説 | 「垂直多関節ロボット」「SCARA」「パラレルリンク」「直交」の4種類について解説
|
| 可操作度 | - | - |
運動学
順運動学:ロボットアームの 「各関節角度」から 「手先の位置」を求める
逆運動学:ロボットアームの「手先位置」から 「各関節角度」を求める
| 名称 | 説明 | 一言コメント |
|---|---|---|
| 順運動学【概要】 | 「各関節の変位」から「エンドエフェクタの位置・姿勢」を求める | ロボットアームを制御するための最も基本的な技術. 順運動学単体で何かをすることは少ないが,逆運動学などの関連する技術に必要になってくる!
|
| 順運動学(三角関数) | 【Pythonコード付】 三角関数により順運動学を解く | 図的にわかるので直感的.最初に順運動学を学ぶならこっち
|
| 順運動学(同次変換行列) | 【Pythonコード付】同次変換行列を用いて順運動学を解く | 機械的に解けるので,複雑な構成のロボットへの適用も容易. 実際のロボットには,三角関数による解法よりもこちらの方ががよく使われているイメージ.
|
| 3次元空間における順運動学(DH法) | - | - |
| 逆運動学 | 「エンドエフェクタの位置・姿勢」から「各関節の変位」を求める | 「あそこにあるペットボトルを取りたい!」といったようなロボットアームで実現したい最も基本的かつ重要な作業を実現するために必要な技術
|
| 逆運動学(解析的解法) | 【Pythonコード付】解析的解法を用いて逆運動学を解く。 | 解析的解法のメリット: 一度数式を求めれば解が一瞬で求まる(高速) 精度が高い 解析的解法のデメリット: 軸数が多いロボットの場合、数式が複雑になる(ロボットの構成によっては解析的な数式が存在しない場合もある)
|
| 逆運動学(数値的解法) | 【Pythonコード付】数値解法を用いて逆運動学を解く。 | 数値解法のメリット: 解析解が求まらないようなロボットアームでも繰り返し計算により近似解を求めることが可能 数値解法のデメリット: 繰り返し計算を行うため、解析的解法よりも計算時間がかかる。
|
| 基礎ヤコビ行列を用いた逆運動学 | - | - |
| ビジュアルサーボ | - | - |
動作計画
動作計画:ロボットアームが 障害物と衝突しないような軌道を導出
概要
| 名称 | 説明 | 一言コメント |
|---|---|---|
| 動作計画【概要】 | 「初期姿勢」から「目標姿勢」に至るまでの軌跡を計画 | 「あそこにあるペットボトルを取りたい!」時に,間に障害物があってもうまく避けながらペットボトルがある位置までロボットアームを制御する.
|
| タスク空間における動作計画 | 【Pythonコード付】タスク空間において「初期姿勢」から「目標姿勢」に至るまでの軌跡を計画 | タスク空間において軌道を導出するので、任意の手先軌道を導出可能
|
| コンフュギュレーション空間を用いた動作計画 | 【pythonコード付】コンフュギュレーション空間を用いて「初期姿勢」から「目標姿勢」に至るまでの軌跡を計画 | 一般的には、コンフィギュレーション空間上で軌道を求めることの方が多い。
|
動作計画法
これらの手法は「経路計画法」とも呼ばれ、移動ロボットの経路計画にも適用可能だが、 ロボットアームで使用されることが多いものを記載 。
下記手法は一般にタスク空間上ではなく 「コンフィギュレーション空間上」で実施 することが一般的。
| 名称 | 説明 | 一言コメント |
|---|---|---|
| RRT (Rapidly Exploring Random Tree) | 動作(経路)計画法の一つ 高次元空間でも高速に動作 |
- |
| RRT* (Rapidly Exploring Random Tree star) | 動作(経路)計画法の一つ RRTを拡張した手法で、最適経路を導出可能 |
- |
| CHOMP(Covariant Hamiltonian Optimization for Motion Planning) | 最適化手法の一つ RRTなどで導出した経路を滑らかにする目的で使用されることが多い |
- |
制御
| 名称 | 説明 | 一言コメント |
|---|---|---|
| PID制御 | - | - |
| MPC制御 | - | - |
| LQR制御 | - | - |
| コンプライアンス制御 | - | - |
| インピーダンス制御 | - | - |
| 重力補償 | - | - |
| アドミッタンス制御 | - | - |
| マスター・スレーブ制御 | - | - |
移動ロボット
自己位置推定
| 名称 | 説明 | 一言コメント |
|---|---|---|
| (wheel)オドメトリ | - | - |
| カルマンフィルタ | - | - |
| 拡張カルマンフィルタ | - | - |
| パーティクルフィルタ | - | - |
経路計画
概要
| 名称 | 説明 | 一言コメント |
|---|---|---|
| 経路計画【概要】 | - | - |
大域的経路計画法
大域的経路計画:環境マップの情報をもとに、 スタート地点とゴール地点を結ぶ(障害物と衝突しないような)大域的な経路を算出
これらの手法は「動作計画法」とも呼ばれ、ロボットアームの動作計画にも適用可能だが、 移動ロボットで使用されることが多いものを記載 。
| 名称 | 説明 | 一言コメント |
|---|---|---|
| ダイクストラ法 | 経路計画手法の1つ |
- |
| A* | 経路計画手法の1つ ダイクストラ法の拡張 |
- |
局所的経路計画法
局所的経路計画: センサなどで周囲の状態を確認しながら局所的な経路を算出。一般に、大域的経路計画法で算出した経路に追従するようにリアルタイムで局所的な経路を算出。
逐次的に経路を求めるため、動的障害物を回避することも可能(どの程度の動的障害物に対応できるかは、手法によって異なる)
| 名称 | 説明 | 一言コメント |
|---|---|---|
| DWA (Dynamic Window Approach) | - | - |
地図作成
| 名称 | 説明 | 一言コメント |
|---|---|---|
| 占有格子地図 | 格子(grid)上に分割された地図上で各セルにおける障害物の有無を確率的に表現 | 移動ロボットが障害物を回避し、安全に走行するために重要な技術
|
| SLAM | - | - |
| LiDAR SLAM | - | - |
| Visual SLAM | - | - |
画像処理
| 名称 | 説明 | 一言コメント |
|---|---|---|
| CNN | - | 機械学習の項目にも記載 |
| ICP | - | - |
音声認識
| 名称 | 説明 | 一言コメント |
|---|---|---|
| フーリエ変換 | - | - |
| 隠れマルコフモデル(HMM) | - | - |
| ガウス混合モデル (GMM) | - | - |
| CTC (Connectionist Temporal Classification) | - | - |
機械学習
| 名称 | 説明 | 一言コメント |
|---|---|---|
| ニューラルネットワーク | - | - |
| ディープラーニング | - | - |
| CNN (convolutional neural network) | - | - |
| GAN (Generative adversarial network) | - | - |
| AE (Autoencoder) | - | - |
| VAE (Variational Autoencoder) | - | - |
| RNN (Recurrent Neural Network) | - | - |
| LSTM (Long Short Term Memory) | - | - |
| GRU (Gated Recurrent Unit) | - | - |
| Transformer | - | - |
| LLM (Large Language Model) | - | - |
| VLM (Vision-Language Model) | - | - |
| 強化学習 | - | - |
| 模倣学習 | - | - |
| sim2Real | - | - |
センサ
| 名称 | 説明 | 一言コメント |
|---|---|---|
| Gyro | - | - |
| 加速度センサ | - | - |
| IMU | - | - |
| エンコーダ | - | - |
| LiDAR | - | - |
| RGBカメラ | - | - |
| RGBDカメラ | - | - |
| 超音波センサ | - | - |
| 赤外線センサ | - | - |
| 温度センサ | - | - |
| 気圧センサ | - | - |
| 高度センサ | - | - |
| 磁気センサ | - | - |
| ポテンショメータ | - | - |
| ロータリーエンコーダ | - | - |
| 力学センサ | - | - |
アクチュエータ
| 名称 | 説明 | 一言コメント |
|---|---|---|
| サーボモータ | - | - |
| ステッピングモータ | - | - |
| DCモータ | - | - |
デバイス
| 名称 | 説明 | 一言コメント |
|---|---|---|
| arduino | - | - |
| M5Stack | - | - |
| Raspberry Pi | - | - |
| Jetson nano | - | - |
通信
| 名称 | 説明 | 一言コメント |
|---|---|---|
| DDS | - | - |
| MQTT | - | - |
| HTTP / REST API | - | - |
| Websocket | - | - |
| CoAP | - | - |
| gRPC | - | - |
| CAN | - | - |
| Modbus | - | - |
| EhterCAT | - | - |
| Profinet | - | - |
| zenoh | - | - |
ソフトウェア
OS
| 名称 | 説明 | 一言コメント |
|---|---|---|
| ubuntu | - | - |
| RTOS | - | - |
ミドルウェア
| 名称 | 説明 | 一言コメント |
|---|---|---|
| ROS | - | - |
シミュレータ
| 名称 | 説明 | 一言コメント |
|---|---|---|
| gazebo | - | - |
| isaac sim | - | - |
| unity | - | - |
規約
| 名称 | 説明 | 一言コメント |
|---|---|---|
| ISO 10218 | - | - |
| ISO/TS 15066 | - | - |











