2017年12月11日月曜日

PIC16F1705 サーボモータの設定

PIC16F1705を使用して、サーボモータの制御を試みています。


後閑哲也先生のPIC16F1モジュールの使用説明を参考にさせていただき、CLC機能の設定をする事で、PWM出力でサーボモータを制御する事ができます。

PWMのパルス幅は、2.4msなのに対して、サーボモータの制御信号の周期が20msと長いので工夫が必要です。 Timer1,2 及び SRラッチ,Dフリップフロップを組み合わせて 2.048ms-ON / 20.48ms-周期 のパルスを生成し、制御用のPWMとANDを取って出力をするといった設定となります。



実際この設定を行った所、どうもmTouchの処理(Timer6の割込み処理)が重いようでサーボ側へ出力信号が不安定でした。 そこでCPUのクロックを 8Mhzから32Mhzに上げてなんとか不安定を解消できました。
(※手持ちのUSBオシロの性能が低く、Timer1のオーバーフロー信号を捕まえる事ができずに手間取って時間がかかったのはまた別な話。)20171210+6.0h









0 件のコメント:

コメントを投稿

KT0913 FMラジオの作成(8) 出来上がったPCB基板にミスあり。

  FusionPCB から基板がとどきました。20240121. 1月11日に発注したので10日で出来上がって届きました。 早速組み立てましたがが、イヤホンジャックのフットプリントが裏返っており、痛恨のミス。。。 しかしながら、他にも問題が無いか一通り組み立ててチェックしました...