🧪 新しいチュートリアルを公開中 — ロボットアームからセンサーまで
コンテンツへスキップ
この製品を購入公式ストア公式サイト

PWM ウェブコントロール ​

本ページはウェブコントロールの PWM(ESP32-S3)版専用の説明です。共通の画面、起動方法、プリセットポーズ、カメラテレオペは ウェブコントロール概要 を参照してください。

ハードウェアと書き込み ​

  • 配線、GPIO、給電、サーボ型番は PWM 配線、GPIO、給電 を参照してください。
  • ファームウェアの書き込み(ESP-IDF またはビルド済み bin)は PWM クイックスタート を参照してください。
  • PC ↔ ESP32 は固定 115200 8N1。サーボ自体にボーレートはありません。

ウェブ接続 ​

  1. 上部の「Driver」ドロップダウンで PWM(ESP32-S3) を選択
  2. Add port… をクリックし、ESP32-S3 の USB シリアルポートを選択
  3. Connect をクリック:ページが自動的にハンドシェイク(NOP)し、左右手の選択を送信して中間位置へ戻します
  4. あとはスライダー、プリセットポーズ、カメラテレオペで制御します。指の見出しには CH 1/2 …(PWM チャンネル番号)が表示されます

PWM モード:上部のドライバー選択と CH チャンネル表示

PWM モードの手動制御パネル:指の見出しに CH チャンネル、トルクボタンは非表示

SCS0009 版との違い ​

項目SCS0009 バス版PWM 版
シリアルボーレート1,000,000115,200
ドライバ基板USB バスドライバ基板ESP32-S3 + PWM 変換基板
トルクオン/解放が可能なし(ファームウェアにトルクコマンドがなく、ボタンは非表示)
緊急停止すべてのトルクを解放0xFF を送信してジェスチャーを中止。サーボは通電したまま位置を保持
速度速度パラメータに対応直接駆動フレームに速度パラメータはない
フィードバック位置/温度/電圧/速度の読み戻し読み戻しなし。ストールや脱調を検出できない
左右手サーボ ID が異なる同じチャンネル群を使用し、0xF1 を送って切り替え(主にファームウェアのジェスチャーに影響。ウェブのポーズは各手のマッピングを使用)

角度のキャリブレーション ​

ウェブページはポーズ値を 8 系統の 0–180° 角度へ変換します。デフォルトの式:

angle = 90 + dir × scale × ポーズ値 + offset
  • 各指の 1 つ目のチャンネルは dir = -1、2 つ目のチャンネルは dir = +1
  • デフォルトは scale = 1、offset = 0 で、サーボ軸の角度をそのままミラーします
  • mirror_pose が真のときは、先に各指の 2 つのポーズ値を入れ替えます(本リポジトリでは左右手とも有効)

実機で向きが逆、または中間位置がずれている場合は、config.json の pwm.calibration を編集します:

jsonc
"pwm": {
  "calibration": {
    "right": {
      "pointer": { "scale": 1.0, "offset_deg": [0, 0] }
    }
  }
}
  • 向きが逆:該当する指の scale を -1 に変更
  • 中間位置のずれ:offset_deg を調整(2 つのチャンネルを個別に)
  • 指ごとの手順:中間位置へ戻す → 1 本の指だけ動かす → 向き/中間位置を確認 → scale/offset_deg を変更 → ページを再読み込みして再試行

よくある質問 ​

  • 接続に失敗する/ESP32 が応答しない:ボーレートが 115200 であること、ESP32 の COM ポートを選んでいること、5 V/3 A の給電と共通グラウンドを確認してください。シリアルポートを開くと ESP32 がリセットされることがあり、その場合ページは自動的に NOP を再試行します
  • サーボが動かない、または震える:まずサーボが 333 Hz のデジタルサーボ(PTK 7452 MG-D または同等品)で、電源容量が十分か確認してください。SG90 はファームウェアの変更が必要です
  • 向きが逆:該当する指の scale を -1 に変更
  • 中間位置がずれている:該当するチャンネルの offset_deg を調整
  • 「忙(ジェスチャー実行中)」と表示される:ファームウェアが内蔵ジェスチャーを実行中です。完了を待つか、緊急停止(0xFF)をクリックしてください
  • サーボのスキャン:tools/scan_servos.py は SCS0009 専用です。PWM では AmazingHand-PWM/tools/serial_test.py またはウェブページを使用してください

関連ページ ​