メインコンテンツへスキップ
ロボティクス Physical AI FORTE MuJoCo エンジニアリング

Codex Astraとロボットアームをつくる:開発工程と実践

Akash Verma - VoicePing
Codex Astraとロボットアームをつくる。淡い青の設計図を背景に、スライド台座上のFORTE型アーム、扉を開けたプリンター、デジタルツインを表示したノートPCが並ぶ。
プリンター操作の構想:扉を動かし、作業領域へ入り、戻る。実機での動作は今後検証します。
この記事の内容

3Dプリンターは、人がそばにいなくても部品を造形できます。しかし、扉を開け、その次の物理的な作業へ進むには、まだ人の手が必要です。私たちはこの課題を調べるために、オープンなロボットアーム設計であるFORTEを改良しています。機構、シミュレーション、検証ツールの開発にはCodex Astraを活用しています。

最初の目標は、プリンターの内部にアクセスすることです。将来はサーバーなど、ほかの機器との物理的なやり取りも探りたいと考えています。まずは、最初から最後まで測定できる一つの作業を出発点にします。

役に立つアームには、一連の作業を完了する力が必要

プリンター内部の一点に届くだけでは、プリンターを操作したことにはなりません。扉を動かし、筐体との干渉を避け、アームを引き抜き、次の作業を始められる状態に戻す必要があります。ある動作に有利な台座の位置が、別の動作を妨げることもあります。

試作機は、6関節のアーム、グリッパー、実験用のスライド台座を組み合わせた構成です。CADの調整、アクセス動作のシミュレーション、一部部品の造形まで進んでいます。組み立てを終えたアームに通電し、実際のプリンターを操作する段階には、まだ達していません。 以下の実験は、何を製作し、次に何を測定すべきかを判断するためのものです。

市販ロボットアーム:Universal Robots、Franka、UFACTORY

市販のプラットフォームからは、物体操作へのさまざまなアプローチが分かります。オープンハードウェアの選択肢であるOpenArmも、自作と購入を検討する際の参考になりました。

Universal Robots提供のe-SeriesアームUR7e-920の製品画像。

作業全体を統合する

Universal Robots e-Series

ツールI/O、力覚センシング、豊富な対応部品を備えたコンパクトな生産用アーム。

研究上の着眼点: アームだけでなく、グリッパー、治具、機械との接続も重要です。

画像:Universal Robots
メーカー画像で器用な物体操作を示す2台のFranka Research 3アーム。

接触を理解する

Franka Research 3

トルクセンシング付きの7関節と、低レベル制御・計測用の1 kHzインターフェース。

研究上の着眼点: 接触研究には、力を観測する手段と精密な制御へのアクセスが必要です。

画像:Franka Robotics
7つの関節と可動範囲を示す、UFACTORYのxArm 7図。

ソフトウェアを使いこなす

UFACTORY xArm 7

Python/C++ SDK、ROS/ROS 2パッケージ、対応グリッパーと直動軸アクセサリーを備えた7軸アーム。

研究上の着眼点: 予定する実験に、本当に必要なインターフェースを確認します。

画像:UFACTORY
中央の支柱に2本のアームを備えた、WowRoboのOpenArm 2双腕プラットフォーム。

オープンハードウェアを土台にする

OpenArm 2

製造パートナーから組立済みで購入できるオープンな双腕プラットフォーム。構成やサポートは供給元によって異なります。

研究上の着眼点: 実験の自由度と、組み立て・適格性確認の作業を分けて考えます。

画像:WowRobo

メーカー提供の画像と仕様を、2026年9月24日に確認しました。研究上の着眼点は私たちの分析であり、実機を使った比較ではありません。

市販機を購入すれば、機械部分の組み合わせや調整にかかる作業を減らせます。FORTEを自作する場合、ケーブルの経路、取り付け部、形状を自由に変えられる一方、その挙動を自分たちで把握する責任も負います。この選択は今回の実験に合っていますが、実際の生産現場でも自作アームの方が優れていると示すものではありません。

ロボティクス市場で私たちが目指す役割

既存のロボティクス企業は、すでに高性能なアーム、コントローラー、自動化プラットフォームを提供しています。私たちが取り組みたいのは応用の部分です。ロボットの能力を日々の業務で使える道具につなげるため、まず3Dプリンターの操作から始め、その後ほかの機器とのやり取りへ広げていきます。

目指しているのは、用途に合わせて変えやすく、コストにも配慮した自動化です。オープンハードウェア、AIを使った設計支援、作業に特化したソフトウェアを組み合わせ、周囲の仕事に合わせてロボットを調整しやすくしたいと考えています。FORTEは、実用性、保守性、経済性を備えたシステムをどう作るかを学ぶ最初の一歩です。

システム全体の構成

計画しているハードウェアの流れは、ホストPC → マイコンとモータードライバー → アームとグリッパーです。スライド台座によって、もう一つの作業位置を設けます。部品のはめ合い、関節の応答、接触を実測し、モデルの校正に役立てます。

3層の構成図。ソフトウェアが軌道を計画し、マイコンとモータードライバーが指令を出し、関節の伝達機構とグリッパーの分解図が機械部品を示す。
ソフトウェアが動きを定義し、電子回路がアクチュエーターを駆動し、伝達機構とグリッパーが物理的な動作につなげます。部品構成を説明する概念図です。

現在の動作検証はMuJoCo上で行っています。コントローラーがアクチュエーターに指令を出し、物理エンジンが接触を計算します。Codex Astraはこの制御ループの外で開発を支援します。役割を分けることで、動作に失敗したとき、原因を形状、制御、モデルの仮定にさかのぼって調べられます。

開発の進め方

七つの工程を進め、試験によって新たなことが分かるたびに設計へ戻ります。

目標設定、ハードウェア選定、ツール準備、Codex Astraによる設計支援、シミュレーション試験、設計改良、部品造形の7工程。結果を設計へ戻す。
Codex Astraは、設計と検証を繰り返す各工程で、変更案の作成と確認を支援します。

目標を定める

最初の動作は、開ける、内部へ伸ばす、引き抜く、閉じるという一連の流れで、1サイクル60秒を目標にしています。直立したアームが、駆動源を持たない扉を接触によって動かし、筐体を避ける必要があります。何もつかんでいないグリッパーを伸ばす試験で確認できるのはアクセス性です。造形物を取り出すには、別途、物体操作の試験が必要です。

ハードウェアを選ぶ

FORTEの論文 と公開リポジトリ には、改良の土台となる造形可能な構造、ケーブル駆動、タイミングベルトが含まれています。初期に決めたことの一つは、CADを確定する前にモーターの正確な型番を確認することでした。フレームサイズが同じでも、軸や本体の長さが異なる場合があるためです。

計画中の電気系統は、ホストとなるノートPCからPico 2、モータードライバー、グリッパーのサーボへとつながります。信号経路と電源経路を分けると、選定した各部品の役割を確認しやすくなります。

FORTEの電気系統。ノートPCとUSBケーブルをPico 2および信号インターフェースにつなぎ、ステッピングモータードライバーとグリッパーサーボを制御する。別の電源経路には、ヒューズ付き24 V電源、停止信号で制御するリレー、冷却ファン、サーボ用6 Vレギュレーターがある。
計画中の電気系統を機能ごとに示した図です。原寸表示で部品名と電源経路を確認できます。

現金支出の予算には、すでに所有する機材の再利用も織り込んでいます。構成や完成度は異なりますが、OpenArmは購入費用を考える参考になります。

自作・2026年9月11日の計画

私たちのFORTE試作機

¥145,338

予定支出額(四捨五入)

アーム1台。既存の作業場機材を再利用。

設計の人件費と作り直しの費用は含みません。

購入・2026年9月24日確認

OpenArm 2

US$6,500

開始価格・計画時の為替で約104万円

双腕の製品。能力と構成が異なります。

構成、送料、税を含む日本向け納入見積もりが必要です。

¥113,126機材・工具
¥19,000送料・輸入費用の引当
¥13,213予備費
当初計画の1米ドル160円で換算した支出規模の目安です。現在の為替レートではありません。FORTEの正確な予定総額は145,338.16円です。表示額は四捨五入しており、両者の構成や完成度も異なります。

FORTEの見積もりでは、手元のプリンター、ノートPC、作業場の機材を再利用し、人件費と作り直しの費用は計上していません。OpenArm 2は双腕の製品です。開始価格と供給元の選択肢 を踏まえた購入判断には、日本への納入費用を含む見積もりが必要です。

アームのCADと選定したモーターを見る (2)
アームの台座、肩、前腕、手首、グリッパーを示す部品図。
アームの主要な機構部です。各接続部は、選定したモーター、ベアリング、駆動部品に適合する必要があります。図を開くと、元の解像度で確認できます。

4 × NEMA17

軸径5 mm。うち1個は両軸モーター。

2 × NEMA23

軸径は8 mmと6.35 mmで異なります。

グリッパーサーボ1個

DS3225の270°仕様。

購入したモーター軸穴・取り付け・隙間
採用したモーター構成。フレームサイズだけでは、軸、取り付け、隙間の要件は決まりません。

構成は、NEMA17ステッピングモーター4個、NEMA23ステッピングモーター2個、グリッパー用サーボ1個です。軸の寸法によって取り付け部とプーリーのはめ合いが決まります。ハードウェアとの接続にはPico 2とモータードライバーを使う予定です。

ツールを準備する

ローカル環境は、メモリー128 GiBのApple M5 MaxとPython 3.11です。MuJoCoがCPUで物理計算を行い、PyTorchの学習にはAppleのMPSバックエンドを利用できます。学習による立方体の配置と、スクリプトによるプリンターへのアクセスという二つの実験が、マシンの排他的な利用枠を共有します。

シミュレーション構成と実験の流れを見る (1)
ローカルのmacOS環境CPU物理計算・PyTorch学習・ネイティブビューアー
タスク・ソースのスナップショット設定・変更不能なコード・ソースハッシュ
シミュレーションの排他利用枠管理対象ジョブ・研究用ランチャー・ビューアーで共有

ブロック配置の学習

  1. Prefect管理下の環境Gymnasium ↔ MuJoCo・スクリプトによる実演
  2. HDF5 → PyTorch軌跡・学習・方策の保存
  3. 評価用のシミュレーション試行方策+タスクシーケンサー+逆運動学
  4. MLflow + PostgreSQL実行履歴・指標・成果物の参照

プリンターへのアクセス研究

  1. 実行制限付き研究用ランチャーソースのスナップショット・利用枠の共有
  2. 接触コントローラー ↔ MuJoCoアクチュエーター指令・受動的な扉との接触
  3. サイクルの評価到達性・接触・隙間・経過時間
  4. 研究結果のファイル結果・トレース・再生記録
二つの実験がマシンと実行制限を共有します。ブロック配置は学習した方策、プリンターの動作はスクリプトで制御します。Codex Astraは物理計算ループの外で開発を支援します。

再現できる実行環境。 simctlランチャーは、ソースとタスク設定のスナップショットを保存します。Prefectワーカーが実行前にソースのハッシュを検証します。シミュレーション、学習、ビューアーは排他的な利用枠を共有し、メモリー、実行時間、数値計算のスレッド数、成果物のサイズに制限を設けています。

学習の流れ。 Gymnasiumが、MuJoCoのリセット、観測、行動、ステップのインターフェースを包みます。スクリプトで動くコントローラーが、タイムスタンプとシードを付けた実演軌跡をHDF5形式で記録します。PyTorchでは100件の実演を80/20に分け、16 → 128 → 128 → 4の行動模倣ネットワークを学習します。入力の正規化には学習用データだけを使い、検証損失でチェックポイントを選びます。明示的なタスクシーケンサーと数値的な逆運動学が、方策の出力を関節の動きに変換します。

評価用に取り分けた試行で、学習損失とは別にタスクの達成度を確かめます。PostgreSQLを追跡用ストアとするMLflowが、パラメーターや指標をデータセット、チェックポイント、再生記録に結び付けます。

プリンター実験の流れ。 別の、実行制限を設けたランチャーが、スクリプトによる接触コントローラーを動かし、研究結果と再生ファイルを書き出します。利用枠は共有しますが、すべての実行をMLflowに登録しているわけではありません。アクチュエーターへの指令とMuJoCoの接触計算で受動的な扉を動かし、扉のモーターやグリッパーとの剛体固定によって結果を強制してはいません。

ケーブルのたわみ、バックラッシュ、完全な自己衝突判定は、現在のモデルには含まれていません。FORTEの公開CAD 、ファームウェア 、シミュレーション は開発元の参照資料です。私たちが統合した実験環境は非公開です。

Codex Astraと設計する

Codex Astraには、具体的な機構上の課題、購入したハードウェア、合否を判断する確認項目を渡します。手首機構では、両方のプーリーとケーブル経路を一緒に確認することが重要でした。単体では妥当に見える部品でも、つないだ機構としては動かない場合があります。

制約を検証可能な設計へ

つながる機構を一緒に設計する

部品を調べる

実際の手首プーリーのCAD形状とケーブル固定部の拡大図。

ケーブル出口・固定部

対になる部品を確認

交差するケーブルでつながる手首プーリーとモータープーリー対になる機構の簡略図。ケーブル出口、固定部、巻き方向を一緒に検討します。寸法入りの製造図面ではありません。手首プーリーモータープーリー

経路・巻き方向

  1. 条件を明確にする

    モーター寸法、ケーブル経路、制約条件。

  2. Astraと案を作る

    CADの変更案と、その検証スクリプト。

  3. 検証する

    エンジニアがはめ合い、荷重経路、アクセス性を確認。

手首機構の例。形状と、つながった機構を一緒に調べます。CAD画像を開くと、元の設計図を確認できます。

Codex AstraがCADの変更案と検証スクリプトの作成を支援します。採用する前に、エンジニアがはめ合い、荷重の伝わり方、工具のアクセス性を確認します。変更案を、実際に確認して試せるものへ素早くつなげることに価値があります。

シミュレーションで試す

固定台座では、扉の操作と内部へのアクセスを10サイクル完了し、各サイクルのシミュレーション時間は58.18秒でした。ただし、届いたのは想定した造形領域の内側20 mmまでです。台座を近づけると奥へ届きやすくなりましたが、扉を含む一連の動作が成立しなくなりました。

固定台座のFORTEアームがモデル内のプリンター入口付近へ届く様子
固定台座

扉は操作できるが、届くのは手前まで

試験目標は、想定した造形領域の内側20 mm。

直線レールで移動し、想定したプレート中央へ向かうFORTEアーム
移動台座

二つ目の作業位置

移動量360 mmにより、空のグリッパーが想定したプレート中央へ届きます。

異なる構成での実際のシミュレーション画像です。どちらも空のグリッパーを使用しており、造形物の取り出しを実証したものではありません。

そこで考えたのが、移動量360 mmのスライド台座です。扉の操作と内部へのアクセスで、二つの位置を使い分けます。アームを折りたたんで内側へ移動し、想定したプレート中央に届いた後、逆の順序で戻ります。

シミュレーション全体を12倍速で再生した16秒の動画です。シミュレーション上の経過時間は190.02秒。空のグリッパーが想定したプレート中央へ届く動作で、造形物の取り出しは実証していません。

設計を改良する

スライド台座によって奥まで届くようになりましたが、1サイクルにシミュレーション時間で190.02秒かかり、60秒の目標を超えています。

移動台座のサイクル

190.02 sシミュレーション上の所要時間

目標60秒

中央に到達・時間の要件は未達成

≈61 s折りたたむ/展開する
≈48 s扉を開ける/閉じる
≈46 s入る/引き抜く
スライド台座で奥まで届きますが、全体では目標の60秒を超えています。工程別の概算時間から、次に改良すべき箇所を絞ります。

折りたたみ、扉の操作、接近経路に時間の多くを使っています。レールの速度だけを上げても、遅れの大部分は解消しません。また、サンプリングした隙間は約0.45 mmであり、実機の公差を確認する必要があります。シミュレーション内のレールは最新CADより前の設計です。この二点は、動作を実機へ移す前に解決しなければなりません。

部品を造形する

ターンテーブルから造形を始め、残りの部品はBambu Studioで準備しました。凹文字の識別番号によって、見た目の似た部品を組立資料と対応させやすくしています。

識別番号付きのアーム部品をBambu Studioに配置した画面
造形準備

すべての部品を識別する

識別番号で各部品を組立資料に対応させます。

CAD部品に設けた凹文字の識別番号の拡大図
部品の識別

識別番号を部品に刻む

プレートから外した後も、凹文字が部品に残ります。

凹文字の識別番号により、組立中も部品を見分けやすくなります。スライサーの画面には、形状に組み込んだ文字が表示されています。

残りの造形対象は35設計・37個で、選択したPLAプロファイルでは1.60 kg、80時間49分と見積もっています。ベアリング座のはめ合いや締結部への工具の入りやすさを早期に確認すれば、小さな誤差による長時間の再造形を避けられます。

条件を変えながらシミュレーションで学ぶ

シミュレーションでは、ハードウェアを変更する前に、仮定を一つずつ試せます。プリンターへのアクセスでは、次に三つの条件を変える実験を考えています。

  • 形状: 台座の位置、扉の開き方、目標位置を変え、どこで到達性や隙間が不足するか調べます。
  • 接触: 扉の抵抗と摩擦を変え、グリッパーが有効な接触を保てるか確かめます。
  • 位置の不確かさ: 推定した目標位置と関節位置にずれを与え、非現実的なほど正確な状態情報に依存する動作を見つけます。

まずコントローラーを固定し、完了の有無、意図しない接触、経過時間を記録します。未使用の条件の組み合わせを評価用に取り分け、実測値を基に現実的な変動範囲を定めていく予定です。

完了済みの学習実験は、より限定的なものです。実演から行動を学ぶ行動模倣によって、一辺30 mm、質量20 gの立方体1個を、評価用の100試行で配置でき、平均誤差は4.45 mmでした。開始位置は水平方向に±8 mm変化させています。カメラや学習済みのプリンター操作方策は使わず、正確なシミュレーターの状態と、以前のアームモデルを用いた結果です。

学習済みの配置動作全体を2倍速で再生した14秒の動画。立方体を許容誤差10 mm以内に置き、シミュレーション時間で2秒間安定させます。接触や知覚の条件をさらに広げた検証は今後の課題です。

この結果が確かめたのは、上記の条件における小規模な学習・評価の流れです。扉との接触や知覚誤差への頑健性を示したわけではありません。試験を広げることで、どの失敗に機構変更、制御の調整、実演の追加が必要なのかを調べます。

これから調べたい研究課題

シミュレーションから実機試験へ

次の節目は、組み立てと、通電して個々の動きを試すことです。アクセス動作全体を試す前に、関節の応答、ケーブル張力、プリンター形状、扉の抵抗を測定する必要があります。

まだ答えの出ていない設計上の問い

どの測定が、シミュレーターによる実機挙動の予測を改善するのでしょうか。 同じプリンターアクセス用コントローラーを、初期シミュレーターと校正済みモデルで動かし、両方の予測を評価用に取り分けた実機試験と比べる計画です。タスクとコントローラーを固定すれば、校正の効果を切り分けやすくなります。

サイクルの完了、意図しない接触、経過時間について、予測と実測を比較します。その後、同じ調整予算で各モデル上のコントローラーを開発し、同一条件での実機の完了率と人の介入を比較できます。予測の改善と制御の改善を分け、動作を速くしても安定して作業を終えられるかを検証します。

新しい仲間に取り組んでほしいこと

機構設計、接触制御、シミュレーションの校正、知覚には、具体的な課題があります。変更案を、繰り返せる実験と測定できる結果につなげる仲間を探しています。VoicePingのエンジニア採用を見る 。

この記事をシェア

一緒につくり、試し、学ぶ

VoicePingのエンジニア採用と、チームが取り組む研究課題をご覧ください。

動画
0:00 0:00