
今週はサーボが届いていたのでサーボの制御をやってみた。(と、昨日書いた。)
が、断念した方が良いような気がしている。理由は2つ。
小さな理由
起動時に勝手に動く。電源をOFFからONにした時、最初のattach(ピン番号, 最小値, 最大値)の時に動く。
ライブラリを改造すれば良いのかと思って見たがわからなかった。
なので回避する手段はリレーでこの瞬間だけPWM信号線をカットする事か?
大きな理由
サーボは自分の位置を把握する手段が無い。だから脱調してしまった時に自ら暴走を止める事ができない。プログラムもそれを検知できない。サーボが動かす相手は重い物なのでこれはとても危険だ。
そう書いているうちに1つ対策を思いついた。
簡単に言うと、同じ位置への移動命令を何回も繰り返す事。
脱調を始めると位置が遠くまでズレるか回転してしまうので命令を出した後にすぐに停止命令を出す。停止命令の後に再度同じ場所への移動命令を出す。これを何回も繰り返す、と言うわけ。これが可能な事なのかわからないが、何回もテストして脱調が無くなるかを確認してみる事にする。
これは元の対策前プログラム。


これが対策した部分。
が、断念した方が良いような気がしている。理由は2つ。
小さな理由
起動時に勝手に動く。電源をOFFからONにした時、最初のattach(ピン番号, 最小値, 最大値)の時に動く。
ライブラリを改造すれば良いのかと思って見たがわからなかった。
なので回避する手段はリレーでこの瞬間だけPWM信号線をカットする事か?
大きな理由
サーボは自分の位置を把握する手段が無い。だから脱調してしまった時に自ら暴走を止める事ができない。プログラムもそれを検知できない。サーボが動かす相手は重い物なのでこれはとても危険だ。
そう書いているうちに1つ対策を思いついた。
簡単に言うと、同じ位置への移動命令を何回も繰り返す事。
脱調を始めると位置が遠くまでズレるか回転してしまうので命令を出した後にすぐに停止命令を出す。停止命令の後に再度同じ場所への移動命令を出す。これを何回も繰り返す、と言うわけ。これが可能な事なのかわからないが、何回もテストして脱調が無くなるかを確認してみる事にする。
これは元の対策前プログラム。


これが対策した部分。

※コメント投稿者のブログIDはブログ作成者のみに通知されます