サーボ制御スケッチを整理した。 消費電流制限の為に単位時間当たりのサーボ角度変位を制限する機能を追加した。 モーションを作る時に角度変位を気にするけどリセットする時に大電流が流れたら困る。 今の所は1種類のサーボを使った機体だけに対応する。 異なるサーボで機体を作ったら制限値は変えないといけない。
サーボ制御スケッチを整理するつもりだったけど体調不良で進捗無し。 月曜日に体調を崩す事が多いな。
PWM周波数を250Hzにした。 サーボ角度からパルス幅に変換する計算式で符号の扱いを間違えてた。 角度とパルス幅を変換する式は誤差が蓄積しない様にした。 計算の途中結果は32Bitに収まる。 トリム調整は今迄と同じくかなりズレてた。 1度単位の角度指定に反応する。 指定した角度と実際の角度が合ってる。 これでモーション作りに進める。
PCA9685のPWMパルス幅を調整中。 PWM周波数を200Hzにして見た。 消費電流が増えるかと思ったけど増えなかった。 制御周期は変えてない。 PCA9685のパルス幅計算方法だと250Hzにした方が計算誤差が小さくなる。 膝関節のトリム値がPWM周波数に関係なく変わらないのはサーボホーンの取付け角度がズレてるのかな。 もう少し試そう。
PCA9685のPWMパルス幅を調整中。 サーボ自体の角度指定範囲は±144度だった。 色々やったつもりだけど進展なし。 map関数で計算してるのが良くないのかな。
PCA9685を載せた機体の関節角度の限界を調べてた。 指定した角度と実際の角度が違ってたのでPWMパルス幅を調整した。 膝関節が限界までは動かせないので膝下フレームの取付け角度を変更した。 色々修正してたらサーボ角度指定が±90度を越えてしまうケースが出て来た。 サーボ自体は±130度で動かせるのでトリム調整などで±90度を越えても対応出来る様にしよう。
PCA9685を載せた機体のモーション作成用に関節角度と機体高さの関係を確認中。 脚を伸ばした状態から脚根元関節角度を5度づつ増やして膝関節角度は脚根元関節の2倍にする。 脚根元関節角度が10度を越えた辺りから機体高さが5mmづつ低くなってる。 爪先が床に接地する位置が脚根元の駆動軸直下になってる。 次は関節角度の限界を確認しよう。