■Home||プリント基板

ライトプレーン用電子タイマーの作製

2007/03/17

LP-Timer完成
●部品の入手先。
・PIC16F630-ST  -----  e-shop・www.digikey.com
・モーターMK04S  ----  e-shop・DIDEL(www.didel.doc)
・チップ・コンデンサ0.1uF ---秋月電気・e-shop
・チップ・抵抗100オーム---千石電商・e-shop
・LED 3mm VF:2V----秋月電気
・DIPスイッチ4P----秋月電気
・タクトスイッチ---秋月電気
・生基板0.25mm-----秋月電気(秋葉店)
・JSTコネクタ-----西川電気・e-shop
・P.CねじM-3-----西川電気・ホームセンター
・極細リード線(6色組み)----タイガー無線
・パイプφ0.6(PP)---上州屋釣り具店
・ステンレス・ワイヤーφ0.5---東急ハンズ・ホームセンター
・航空ベニヤ0.5t(SIG又は木村バルサ)---模型店等
・カーボンリボン----出口工房・e-shop
・電池30mAh Li-po:1セル----e-shop
プログラム・ソース--LP-Desa-Timer.asm--|| PIC書き込みデータ--LP-Desa-Timer.HEX--

具体的な製作方法はプリント基板の作製|| フェイス・プレートの作製と最終組立を参照して下さい。
●図面はいつもの図面置き場からダウンロードして下さい。

●一般的なFF用タイマーは入力デバイスを使い外部で設定したデータを通信でタイマーに送り実行するように
 なっているが、今回はデサマファンクションのみしか対象にしないので予めEEPROMに登録しておいたデータを
 タイマー起動時にレジスタに取り込み実行する方式としました。
・登録データの選択は4ピンスイッチの組み合わせで行います。つまり、00hから0Fhまでの16種類から選択出来ます。
・データ長は2バイトとし、1カウント当たり0.1秒に設定しました。
 つまり、最大-FFFFh→6,553.5sec=109M22.5sec→1時間49分22.5秒のカウンターが作れることになります。
・データは設定値を2倍したアドレスから2バイト単位で読み込みます。
・データの書き換えは外部端子に秋月のPICライターを接続して行いPIC本体を外す必要はありません。
●プログラムの流れ。
1、電源投入(ウオッチドッグタイマーはOFFです)。
2、入出力設定。
  ・ RC0-RC5出力設定
  ・ RA0-RA5デジタル入力設定、内部プルアップ
  ・ クロックは内部4Mhzを使う
  ・ MCLREは内部プルアップとする
3、タクトスイッチ入力待ちループ。
  ・約2秒毎に0.1秒LEDが点灯する
4、タクトスイッチON。
  ・LEDが点灯、Dipスイッチの値を読みEEROMの2バイトデータを読み出しカウントダウン・レジスタにセット
5、タクトスイッチOFF。
  ・LED OFF、INT割り込み許可
  ・2バイトカウンターをスタートする。
  (カウントダウン中にINT割り込みが入った場合、レジスタをクリヤーしカウントを終了する)
6、カウント終了。(デサマヒューズ出力)
  ・モータON,0.5sec/OFF,0.5sec/ON,0.5sec/OFF
  ・LED ON,0.2sec/OFF,0.1sec/*0Fh回繰り返す
  ・出力ポートを全てOFFにする。
  ・INT割り込みを許可する
  ・SLEEPモードに入る
7、INT割り込み。(タクトスイッチ)
  ・Wake-Up(SLEEPモードからの復帰)
8、割り込み処理。
  ・INT割り込み-OFF
  ・カウントダウン・レジスタをクリヤー
  ・割り込みのあった所へ戻る。
9、「2、入出力設定」に戻る。
  ・チャタリング防止のためLEDをONにしてしばらく待つ。

●水平尾翼からのリンケージ・ラインのテンションを測定しながら動作テストを行いました。
結果は以下の通りです。
1)----------20g:以下では振動で外れてしまう。
2)----------30g:OK、動作良好。
3)----------40g:OK、動作良好。
4)----------50g:1/20の確率で動作しない事がある。
5)----------60g:動作可能だが・・・。
6)----------100g:3/7の確率で動作不良となる。
これ以上のテストは無意味なのでここでテスト終了としました。
結論として30g-40gのテンションでセットするのがベストであることが分かりました。 また、リンケージに付ける輪ゴムは小さな輪ゴム(8号)より大きな16号の方が振動を吸収して 不用意に外れにくくなることも分かりました。

●キャリブレーション調整。
・初期設定値、(1110)にて15分計測。
・誤差分を計数化してPICライターにてEEROMデータを書き換えます。
 書き換えはHEXデータを秋月のPIC PGMで行います。
 プログラム・ソースの変更は必要ありません。
注)PICの書き換え端子とDIPスイッチの端子は一部共有してます、
  PICライター接続時は必ず全てのDIPスイッチをOFFにします。

●測定値を使ってデータの補正を行うための計算シートをエクセルで作りました。
右クリックでLP-Timer.xlsをダウンロードして使います。
PICライターとの接続用ハーネス。(8p)
右側はPIC PGMと接続した状態。

接続ハーネス
接続し書き換え

●秋月・PIC PGM 及び LP-Timer.xls の使い方。
1、15分間測定。
2、誤差分を「調整値」に秒数で入力。・・係数と調整タイムが表示される。
3、調整タイムをパソコンの電卓を使って16進数に変換し入力値に書き込む。
4、別のセルに入力値をコピーする。
5、秋月のプログラマーでタイマーに書き込む。

●パソコン電卓の使い方。
Windows,P.Cには標準で電卓機能があります。
スタートボタンからプログラム→アクセサリーとたどって行くと見つかるはずです。
もし無い場合は設定→コントロールパネル→アプリケーションの追加と削除で追加してください。

・電卓を立ち上げたら、表示(V)→関数電卓(S)に設定します。10進数とDegのラジオボタンをチェックします。
・調整タイム(E16〜E31)の値を1セルずつクリップしコピーする。
・電卓上で貼り付けを実行(編集(E)→貼り付け(P))。
・電卓の計算ウィンドウに処理したい数値が表示されますので10進数のラジオボタンを16進のラジオボタンに
 切り替えます。
・ウィンドウ表示が16進になるので(編集(E)→コピー(C))を実行。
・エクセルシートの貼り付けたいセルにカーソルを移動し、貼り付けを実行します。
・表示内容を手作業で2桁の16進数に書き換えます。
・完成したシートは別のシートにコピーして保管します。
●秋月のPICライターを使ってEEPROMの内容を修正します。
PIC-pgm  Hexロード ●デバイス選択をPIC16F630、
PIC内部のキャリブレーションデータを使うにチェック。

●修正には拡張機能を使います。
PIC_PGMの右上にある拡張ボタンを押すと拡張
ウィンドウが現れます。
予め基本プログラムをロードしておき(HEXロード)拡張ウィンドウの下側
(EEPROM DATAメモリ)のPCバッファメモリ修正ボタンを押し修正ウィンドウを開きます。
拡張ウィンドウを開く
・データはバイト単位で表示されますので2バイトで区切って読み替えて下さい。
修正が必要な窓にカーソルを移動し修正します。この時、Enterキーを使わないように注意して下さい。
修正が完了したらOKボタンを押し修正ウィンドウを閉じます。
●最後にPIC本体への書き込みはメインウィンドウのプログラムボタンを使います。
デバイス選択をPIC16F630、PIC内部のキャリブレーションデータを使うにチェック。
設定を確認してから書き込みを行って下さい。

・設定値を保管しておきたい場合はPIC_PGMアプリケーションのインストール
フォルダー内にある<<eepmemory_temp.txt>>ファイルをコピーし別のフォルダーに
日付をファイル名に追記し保管すると良いでしょう。
一時ファイルですのでアプリケーションを終了すると消えてしまいます。
PIC_PGMを開いた状態で作業して下さい。
●ジャンパーピンの設定も忘れずに確認。→
ジャンパーピンの設定
拡張ウィンドウ EEPROM 修正ウィンドウ

●リンケージを配線して動作テストを行う。
・P.Cネジの滑りが悪い場合はシリコーンオイルを綿棒で少量塗布します。


■Home||プリント基板

Yasuu