私たちは今、ロボット工学の歴史において驚くべき瞬間を生きています。ここ数年で、人型ロボットはSFの世界から飛び出し、工場や研究室で実用化されました。ボストン・ダイナミクスのアトラスは宙返りをし、テスラのオプティマスは洗濯物をたたみ、ユニツリーのH1は毎秒4メートル近い速度で走行します。かつては数十億ドル規模のプロジェクトが必要だったものが、今では小規模なチームや熱心な個人でも実現可能になりつつあります。そして、そのチャンスの窓は今まさに大きく開かれているのです。
しかし、なぜ特に人型ロボットなのか?その答えは、私たちが既に築き上げてきた世界にある。階段、ドアノブ、工具、乗り物、作業スペース――すべては私たちの体型に合わせて設計されている。人型ロボットは、世界を改造する必要がない。ドリルプレスを操作したり、はしごを登ったり、車のシートに座ったり、狭い廊下を移動したりできる。こうした汎用性は、車輪型ロボットや固定アーム型ロボットでは決して再現できないものだ。
エンジニアやメイカーにとって、人型ロボットをゼロから構築することは、大学のロボット工学研究室以外では最も包括的な技術教育と言えるでしょう。機械設計、運動学、電子機器の統合、組み込みプログラミング、制御理論、センサーフュージョンといったあらゆる技術を、すべて同じプロジェクトで同時に習得することを余儀なくされます。課題は現実的で、フィードバックは即座に得られ、ロボットが初めて歩み出した時の満足感は、他では味わえないものです。
このガイドは、CNC加工設備を備えた製作者向けに書かれています。これは大きな利点です。ほとんどの趣味のヒューマノイドロボット製作プロジェクトは3Dプリント部品に限定されており、関節の精度、耐荷重、長期耐久性に制約があります。CNCマシンがあれば、ミクロン単位の精度でベアリング嵌合を実現するアルミニウム製関節ハウジングを製作したり、独自のサイクロイドギアボックスを加工したり、数万ドルもする市販のプラットフォームに匹敵する機械的品質のロボットを構築することができます。
これは週末でできるようなプロジェクトではありません。本格的なヒューマノイドロボットの開発には、設計、機械加工、配線、プログラミング、そして反復的なテストに数ヶ月を要します。しかし、このガイドでは、最初の設計決定から最初の歩行動作まで、あらゆる段階を詳細かつ具体的に解説し、実際にロボットを完成させるお手伝いをします。
何か特別なものを作り上げよう。

始める前に複雑さを理解しておく
部品を一つ購入したり、パーツを一つ設計したりする前に、明確な思考の枠組みが必要です。ヒューマノイドロボットが難しい理由は、以下の3つが重なり合っています。
- 機械的: 二足歩行には、車輪型ロボットでは決して直面しない高度なバランス制御が求められる。
- 電気: 数十個のジョイントが同時に作動するため、電流管理と信号干渉は深刻な問題となる。
- ソフトウェア: 静的安定性 → 準静的運動 → リアルタイム動的バランス ― 各段階はそれぞれ独立した工学分野である
初心者向けの現実的な目標設定方法:
| 相 | 目標 | マイルストーンムーブメント |
|---|---|---|
| フェーズ1 | 静的安定性 | 立ち上がる、腕を動かす、頭を回す――転倒せずに |
| フェーズ2 | 準静的運動 | 体重移動、片足支持 |
| フェーズ3 | ダイナミックウォーキング | 連続的なステップ ― 最も難しく、最後に取り組む |
⚠️ 初めてのヒューマノイドプロジェクトのほとんどは、製作者が歩行に直結することを目指し、フェーズ 1 と 2 を完全にスキップしてしまうため失敗します。
設計計画:まずは紙の上で全てを準備する
2.1 規模はあらゆる下流の意思決定に影響を与える
| 規模 | 高さ | 優位性 | デメリット |
|---|---|---|---|
| S | 30〜40 cm | 低コスト、低トルク要求、安全なテスト | 視覚的な影響は限定的 |
| 技法 | 50〜80 cm | 機能性と管理性のバランスが取れている | 中級クラスのモーターが必要 |
| L | > 100 cm | 人間規模で、印象的な成果 | 高トルク要求、高価、落下時に危険 |
CNC加工のおすすめ:まずは中型から始めましょう。部品のサイズが大きければ加工精度が大きな利点になりますが、大きすぎて重量が制御不能になるほどではありません。
2.2 自由度 ― 切断作業を行う前にこれを定義してください
これは機械設計全体の骨組みです。部品を一つでも加工する前に、これを確定させておきましょう。
Head: 2 DOF → pan (yaw) + tilt (pitch)
Neck: 1 DOF → optional forward lean
Each arm: 7 DOF
Shoulder: 3 DOF (flexion / abduction / internal rotation)
Elbow: 1 DOF (flexion/extension)
Wrist: 2 DOF (flexion / radial-ulnar deviation)
Forearm: 1 DOF (pronation/supination)
Torso: 2 DOF → forward bend + lateral bend
Each leg: 6 DOF
Hip: 3 DOF (flexion / abduction / rotation)
Knee: 1 DOF (flexion/extension)
Ankle: 2 DOF (plantar-dorsiflexion / inversion-eversion)
Total: ~30 DOF (beginner version can trim to 16–20 DOF)
💡 自由度を1つ増やすごとに、モーター、トランスミッション、エンコーダーがそれぞれ1つずつ増え、制御コードも数百行増えます。不要な自由度を削減することは、基本的なエンジニアリングスキルであり、妥協ではありません。
2.3 予算配分
途中で資金が尽きないように、事前にカテゴリー別に予算を割り当てておきましょう。
| カテゴリー | 割り当て | Notes |
|---|---|---|
| サーボモーター/駆動モーター | 40% | 最大のコスト |
| 構造材料(CNC加工用材料) | 20% | アルミニウム、ベアリング、ファスナー |
| 電子機器およびコントローラー | 15% | MCU、ドライバボード、センサー |
| パワーシステム | 15% | バッテリーパック、BMS、DC-DCコンバータ |
| 工具、消耗品、スペアパーツ | 10% | エンドミルの摩耗、テストピース |
基本的なヒューマノイドロボットの価格は、サイズと機能によって500ドルから2,000ドル程度です。予算超過は必ず発生するので、余裕を持って予算を立てておきましょう。
部品選定:モーターと材料
3.1 サーボモーターの選定 ― 最も重要な決定事項
デジタルサーボはアナログサーボよりも常に優れています。精度が高く、位置保持力が高く、フィードバックも豊富です。
トルク計算式:
Required torque = Load mass × Gravity × Moment arm × Safety factor (1.5–2.0×)
Units: kg × 9.8 m/s² × m = N·m
Convert: 1 N·m ≈ 10.2 kg·cm
関節トルク要件(30~40cmロボット):
| ジョイント | 必要なトルク | 理由 |
|---|---|---|
| お尻 | 15~25 kg・cm | 片足立ちの際に全身の体重を支える |
| 膝 | 15~20 kg・cm | 曲げ加工時の高負荷 |
| 足首 | 10~15 kg・cm | バランス矯正に不可欠 |
| ショルダー | 5~10 kg・cm | 腕は比較的軽い |
| 肘/手首 | 3~8 kg・cm | エンドエフェクタ負荷が低い |
| 頭 | 3~5 kg・cm | 頭部の質量は小さい |
⚠️ サイズが小さすぎるサーボは過熱したり、負荷がかかるとドリフトしたり、動作を完了できなかったりします。迷った場合は、ワンサイズ上のものを選びましょう。
アクチュエーションシステムの比較:
| アプローチ | 製品例 | メリット | デメリット |
|---|---|---|---|
| スマートバスサーボ | Dynamixel MX-64、XH540 | プラグアンドプレイ、エンコーダーフィードバック内蔵 | 高価な |
| BLDC + 遊星歯車機構 | T型モーター+ギアボックス | 高トルク密度 | 外部ドライバーが必要です |
| BLDC + サイクロイド駆動 | 自己加工 | 高比率、バックラッシュゼロ | 精密なCNC加工が必要 |
| 中空コア+ハーモニックドライブ | 工業用グレード | 超精密 | 非常に高いコスト |
3.2 構造材料 ― あなたのCNC技術が輝く場所
アルミニウム合金の比較:
| 学年 | 抗張力 | 被削性 | 以下のためにベスト | Notes |
|---|---|---|---|---|
| 6061-T6 | 310 MPaで | ★★★★★ | ほとんどの構造部品 | 第一の選択肢 ― 最もお得な価格 |
| 7075-T6 | 572 MPaで | ★★★☆☆ | 高負荷関節(股関節、膝関節) | 丈夫だが加工が難しい |
| 2024-T3 | 483 MPaで | ★★★★☆ | 疲労がかかりやすい場所 | 航空宇宙グレード、耐疲労性 |
CNC加工の主要パラメータ:
- 最小壁厚: 非構造部材には2mm、耐荷重部材には3mm
- ベアリング内径公差: H7 適合 — 例: ø22 H7 = +0 / +0.021mm
- ネジ穴: アルミニウムのM3/M4ねじにはヘリコイルねじインサートを使用してください。ねじ山の破損を防ぎます。
- 表面処理: 硬質アルマイト処理(タイプIII)—接合界面の耐摩耗性を劇的に向上させる
- 減量: ポケットミーリング ― 積極的な材料除去により、剛性を維持しながら部品重量を30~50%削減できる。
建築に使用されたその他の材料:
| 材料 | 用途 | プロセス |
|---|---|---|
| カーボンファイバーチューブ | 上腕部/下腕部リンク | 既製チューブ、CNC加工アルミニウム製エンドフィッティングを購入 |
| ステンレス鋼(304) | ピン、シャフト | 旋削加工 - 十分な硬度 |
| 真鍮 | 小型ブッシング、ねじ込みインサート | 旋削加工 - 自己潤滑特性 |
| デルリン (POM) | 小型プーリー、ケーブルガイド | CNC加工可能 - 軽量、低摩擦 |

機械加工(CNC加工に重点を置く)
4.1 ビルドシーケンス
Torso frame → Single leg (validate first) → Both legs → Both arms → Head/neck → Full integration
すべてを設計してからすべてを構築するのではなく、まずは一本の足を作り、動かしてみて、問題点を見つけ出すことこそが、真の進歩への最短ルートだ。
4.2 胴体加工
胴体は他のすべてのものの基準点となるため、剛性がなければならない。
- 使用 箱型またはフレーム構造 内部空間にはケーブルが配線され、バッテリーが収納され、制御基板が取り付けられる。
- 脚部取り付け面には 平行度および垂直度 ≤ 0.1mm — 2つの脚取り付け面が平行でない場合、ロボットは常に傾きます
- 設計 取り外し可能なサイドパネル デバッグ中に内部電子機器にアクセスするため
4.3 脚部接合部の加工 ― 最高精度の要求
共同設計コンセプト:
Motor output shaft → Reduction mechanism → Cross-roller / deep groove bearing → Link arm
接合部のCNC加工公差:
| 機能 | 要件 | それが重要な理由 |
|---|---|---|
| ベアリング穴の真円度 | ≤0.01mm | ベアリングの取り付け品質は、耐用年数に直接影響します。 |
| 関節軸のアライメント | ≤0.05mm | 位置ずれは、引っかかりやモーターの過負荷を引き起こします。 |
| シャフトと穴の嵌合 | H7/p6干渉 | ベアリング外輪の回転を防ぎます |
| ピンジョイントフィット | H7/h6クリアランス | 緩みなく回転が可能 |
| 膝から足首までの軸の平行性 | ≤0.02mm | 脚をスムーズに振るには、両軸が平行でなければならない。 |
推奨ベアリング選定(直径20~30mmのジョイント):
- 深溝玉軸受:6004 / 6005 — 軽荷重用、アームに適しています
- クロスローラーベアリング:RVシリーズ ― 高剛性、股関節に最適
- 薄肉ベアリング:61800シリーズ ― 軸方向のスペースが狭い場合
4.4 サイクロイド駆動 — 高度なCNCチャレンジ
加工能力が高い場合、自社加工のサイクロイド減速機はバックラッシュゼロで非常に高いトルク密度を実現します。
重要なパラメータ:
- サイクロイド歯車の歯形精度: プロファイル誤差 ≤ 0.02mm
- 偏心: e = 1~3mm(ロボットが小さいほど値は小さくなる)
- 縮小率: 通常1分11秒から1分87秒
- ピンホイールの穴: 真円度 ≤ 0.01mm、位置公差 ≤ 0.015mm
これらの公差は、高性能なマシニングセンタであれば十分に達成可能ですが、工具、主軸回転速度、送り速度を厳密に管理する必要があります。切れ味の良い超硬エンドミルを使用し、重要な部分すべてに専用の仕上げ加工工程を設けてください。
4.5 腕と頭
腕:
- 腕は体重を支えません。 カーボンファイバーチューブ+アルミニウム製エンドフィッティング 質量を最小限に抑える
- エンドフィッティングのCNC加工:モーターマウントフランジ+ベアリングハウジング+ねじ穴
- エスプレッソマシン 統合型ケーブル配線チャネル リンクアームを介してケーブルがジョイントに挟まれるのを防ぎます
頭:
- 深度カメラ(Intel RealSense)、超音波センサー、またはRGBカメラをマウントします。
- センサーの配置は、視界を遮らないように設計すること。通常の動作姿勢において、肩や胴体が視野を妨げないようにすること。
- ネックケーブルの配線:±90°の回転範囲全体にわたって十分な余裕を持たせてください。余裕が不足すると、数時間以内に配線が断線します。
4.6 最終組み立て前にすべての部品を仮組みする
すべての部品は、永久的に固定する前に、仮合わせと検証を行う必要があります。
組み立て前のチェックリスト:
- すべての関節は機械的な干渉を受けることなく、可動域全体にわたってスムーズに動きます。
- すべてのケーブルは、どの位置でも過度の張力なく終端に到達します。
- ベアリングはしっかりと固定され、傾きや回転時の異音はありません。
- 全てのねじ込み式ファスナーには中強度ねじロック剤(Loctite 243)を使用してください。これを使用しないと振動で全て緩んでしまいます。
電子機器の統合
5.1 配線する前に配線図を描こう
何かを接続する前に、以下の項目を含む完全な電気回路図を作成してください。
- すべての電力経路:バッテリー → BMS → DC-DCコンバータ → 負荷
- すべての信号経路:コントローラ → モータドライバ → モータ
- すべてのセンサーインターフェース
電線ゲージの選択:
| 電流範囲 | 推奨ゲージ | 用途 |
|---|---|---|
| <1A | 28 AWG | 信号線、センサー |
| 1-3A | 24 AWG | 個別のサーボ接続 |
| 3-8A | 20 AWG | 単軸モーター駆動 |
| > 8A | 16~18AWG | 主配電母線 |
5.2 電源アーキテクチャ
最も重要な原則:ロジック電源とモーター電源を完全に分離する
LiPo Battery Pack (24V main bus)
├── DC-DC Buck → 5V / 3A → MCU, sensors (independently regulated)
├── DC-DC Buck → 12V → cooling fans, auxiliary loads
└── Direct → Motor driver boards (high-current motor path)
Single-point ground tie between logic and power grounds at the source
なぜこれらを分離するのか?モーターの起動時には大きな電流スパイクが発生し、共有電源ラインで瞬間的な電圧降下が生じる。これによりマイクロコントローラがリセットされ、動作中にセンサーの読み取り値が破損する。
コンデンサフィルタリング:サーボ電源レール間に1000~4700μFの電解コンデンサを追加して、電流の過渡現象を吸収します。
5.3 センサーの配置
| センサー | マウント位置 | 演算 |
|---|---|---|
| IMU(6軸/9軸) | 胴体にしっかりと固定されている | 傾斜検知 ― バランス制御の中核 |
| 足圧センサー | 内側のフットプレート | 重量分布測定 |
| デプスカメラ | 頭 | ナビゲーションと障害物回避 |
| エンコーダー | すべての関節 | 正確な位置フィードバック |
| 電流センサー | モータードライバーの入力 | 過負荷検出とモーター保護 |
制御システムアーキテクチャ
6.1 階層型制御 ― プロフェッショナルなアプローチ
High-level decision layer (Raspberry Pi 5 / NVIDIA Jetson Orin)
↓ Gait planning, behavior trees, computer vision
Mid-level coordination layer (STM32 / ESP32)
↓ Trajectory interpolation, inverse kinematics solving
Low-level execution layer (Motor drivers / Dynamixel bus)
↓ Current loop → velocity loop → position loop
各層には明確に定義された責任があり、他の層に干渉することはありません。これは、あらゆる本格的なロボットシステムの基本的なアーキテクチャであり、プロ仕様のロボットが保守しやすい理由でもあります。
6.2 プログラミング ― ステップバイステップ
ステップ1:単一関節の検証
cpp
#include <Servo.h>
Servo hipJoint;
void setup() {
hipJoint.attach(9);
}
void loop() {
hipJoint.write(45);
delay(1000);
hipJoint.write(90);
delay(1000);
}
ステップ2:姿勢ベースのモーションシステム
cpp
struct Pose {
int angles[20]; // Angles for all 20 joints
};
void moveToPose(Pose target, int duration_ms) {
// Incrementally step each joint toward target
// over duration_ms milliseconds
}
ステップ3:静的歩行ロジック
① Shift center of mass over left leg (left leg becomes support)
② Lift right leg (right foot clears ground)
③ Swing right leg forward and plant foot
④ Shift center of mass over right leg
⑤ Lift left leg — repeat cycle
ステップ4:IMUフィードバックバランス補正
cpp
float pitch = imu.getPitch();
if (abs(pitch) > TILT_THRESHOLD) {
int correction = (int)(pitch * Kp);
ankleServo.write(ankleServo.read() + correction);
}
テストと反復
7.1 テスト手順 ― 手順を飛ばさない
Static stand (power OFF) → Static stand (power ON) → Single joint motion
→ Compound poses → Weight shifting → Single foot lift → One step → Continuous walking
電源オフ状態での静止立位テスト:モーターをオフにした状態でロボットが倒れる場合は、機械的な重心の問題です。これはソフトウェアでは解決できません。まずは機械的な問題を解決してください。
7.2 ビデオ分析
- 例外なくすべてのテストセッションを記録してください。
- 0.25倍速で確認して、残高減少がどこから始まるかを正確に把握しましょう。
- 成功した試みと失敗した試みを比較すると、その差はしばしば重心のずれが数ミリメートル、あるいはタイミングの誤差が数ミリ秒である。
7.3 良いイテレーションとはどのようなものか
一度に一つの問題を解決し、再テストを行い、修正が効果的だったことを確認してから、次の問題に取り掛かりましょう。これは当たり前のことのように聞こえますが、実際に実行している人はほとんどいません。すべてを一度に解決しようとするのが自然な反応ですが、それではどの修正が効果的だったのかが分からなくなってしまいます。体系的な単一変数テストを行うことで、測定可能な着実な進歩が生まれます。

一般的な問題と解決策
| 症状 | 根本的な原因 | 修正する |
|---|---|---|
| モーターの過熱 | トルク不足/機械的な固着 | モーターのアップグレード/ジョイントの可動範囲の確認 |
| ロボットは常に片側に傾く | 重心が中心線からずれている | バッテリーの位置を変更する/カウンターウェイトを追加する |
| サーボのジッターと不安定性 | 負荷時の電圧降下 | ワイヤーの太さを太くする/フィルタコンデンサを追加する |
| ジョイントのバックラッシュ(ガタつき) | トランスミッションプレイ | ハーモニック/サイクロイド駆動/プリロードベアリングに切り替える |
| コントローラーは動作中にリセットされます | 共有電源におけるモーターノイズ | ロジック回路とモーター電源は完全に分離されています。 |
| 接合部で切断されたワイヤー | ジョイント部分のケーブルのたるみが不十分です | 配線経路を再設計し、保護管を追加する |
拡張ロードマップ
ベースロボットが安定したら:
Voice control → Speech recognition (XMOS / Google Coral) + command parsing
Computer vision → Object detection (YOLOv8 on Jetson) + manipulation targeting
Wireless telemetry → WiFi / Bluetooth + real-time data dashboard
Advanced motion → Full IK solver + real-time trajectory planning
ML gait learning → Reinforcement learning (MuJoCo sim → real hardware transfer)
概要 — CNCの利点
CNC加工技術者として人型ロボットの世界に足を踏み入れるあなたは、ほとんどの製造業者が持ち合わせていない3つの利点を持っています。
1. 3Dプリンティングをはるかに超えるジョイント精度→ ベアリングの嵌合が正確で、動きが滑らかで、耐摩耗寿命が長い
2. 減速機を自作できます→ 市販品の数分の一のコストで、サイクロイド歯車減速機や遊星歯車減速機を自作できます
3. 材料の自由度が最大限に高い→ 6061アルミニウムはPLAよりも5~10倍強度が高く、荷重と熱の両方に対して寸法安定性に優れています。
まずは片方の脚から始めましょう。動かしてみてください。運動学、関節の許容誤差、トルクの余裕などを検証してから、もう片方の脚を組み立ててください。これが、動作するロボットを完成させるための最短ルートであり、システム全体に問題が広がる前に問題点を早期に発見できる最速の方法です。
ライアン・ワン
ライアン・ワンはCncpioneerのCNC加工エキスパートであり、CNCプログラマー、プロセスエンジニア、上級加工技師、そして精密製造スペシャリストとして15年以上の実務経験を有しています。航空宇宙、自動車、医療、エレクトロニクス分野の企業において、ミクロンレベルの公差の実現と試作から量産までのスケールアップを支援してきました。また、高度なCNC技術、特に5軸加工や難削材加工の経験豊富なインストラクターでもあります。





