日々の記録

マイコンとかFPGAとかアクアリウムとか猫とか

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


モチベーション上がるんでぽちっと応援よろしくです!
お盆ですが、サーボ動かします。

サーボ
  GWS MINI SERVO , MINI STD / MINI BB
って書いてありました。

地道にいろんな信号を与えて調べたところ、
このサーボは大体20msごとに制御パルス(2.5~0.7ms)信号を送ると動きます。
ただ同じ製品でも固有差はあるらしいです。

0.7[ms]の時を角度0度と仮定すると、
2.5[ms]の時は角度180度となりました。

0.7~2.5[ms]のパルス信号を20[ms]の周期で生成する動作には、
16ビットタイマーを利用します。

はじめにメインルーチンで20[ms]待つようにタイマーをセット。
タイマー割り込みルーチンでは、
0.7~2.5[ms]を待つようにセット。
状態変数を用意しておき、次の割り込みでは、
再び20[ms]待つようにする。

次のタイマー割り込みでは
20[ms]を待つようにセットし、
状態変数を変更し、また0.7~2.5[ms]待つようにセット。

こんな感じの繰り返しです。


0.7~2.5は比較用のレジスタの値を変更することで可能ですが、
ここで前回紹介した、アナログ出力の距離センサを使いました。

センサからの値によって0.7~2.5[ms]値が変化するようにしました。

センサに何か物体を近づけたり、離したりすることで制御可能です。



今度はA/D変換を2PORT利用し、
サーボを2つ制御しようと思います。


モチベーション上がるんでぽちっと応援よろしくです!

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://charochiro.blog99.fc2.com/tb.php/4-31cfa8a6

charochiro

Author:charochiro
ぎりぎり学生の雑記
なんかアクアブログになってしまいそうな不安も抱きながら、電子工作もやってきます。

QRコード

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。