スリープタイマー(時限タイマー)が必要となった理由 |
||
就寝時、トランジスタラジオ並みのスピーカー音で鳴り続けているのは苦痛・・・・。 この為、無電源で動作する時限タイマーをアンテナ端子とアンテナの間に接続する方法を思いついたもの。 |
||
【浴室換気ファン用 遅延OFFタイマーによる、スリープタイマー】 |
||
就寝時に、任意の時間経過後にスピーカーの鳴動を止める目的で、 アンテナ側に、このタイマースイッチを挿入。 (2007/8/18 〜 2008/5/1 ) 松下電工製。 |
結果: 特有のカチカチ音が気になるが、とりあえず目的達成。 このタイマーの接点は、高周波用でも微弱電流用でも ないので、接触不良が発生する可能性がありましたが、 約9ケ月間トラブルなしでした。 |
|
目覚ましタイマー(電波時計利用)について |
||
毎朝、中波ラジオ(乾電池式タイマーラジオ)を聞く習慣があり、 スピーカが鳴るゲルマラジオ用に、PIC(Peripheral Interface Controller)を用いたタイマー(目覚まし+時限)を作れないか検討していました。 目覚ましタイマの時刻精度と省電力を重視した結果、市販の電波時計にラッチングリレーを組合わせる方式に至りました。 試作機(電波時計+トランジスタSW+ラッチングリレー)を仕立てたところ、 思いのほか簡単に安定動作を実現できました。 ラジオ放送の時報の直前に毎日、ゲルマラジオが確実に動き出すのは感動ものです。 |
||
試作したタイマは、目覚まし機能しかないので、 時限タイマ機能部分をPICにて実現し、ドッキング。 |
||
目覚ましタイマと同様にブレッドボード上で、PICの動作評価後、下の基板を作成。 PICとラッチングリレーはICソケットを使用して実装。 参考:=pic 工作関連 備忘録=(ソフト開発環境や、参考プログラム) PICのタイマソフト参照先 “電気電子工作の部屋 http://cba.sakura.ne.jp/index.htm →Memoran 上記ソフトは、2008.5〜2009.11まで使用させていただきました。 2009.11.22にやっと、自作(非常にシンプルながら・・・)版に乗せ替えしました。 |
||
【動作概要(PIC直近以外の周辺回路はオリジナルです)】 電波時計からのアラーム信号でのラッチングリレーの SET(on)コイル駆動 この結果、PICの電源が入り、時限動作開始。 スナップSW指定の時間後、ラッチングリレーの RESET(Off)コイル駆動という仕掛けです。 赤色SWは、マニュアルON 緑色SWは、マニュアルOFF スナップSWは、左、中央、右で時限選択。 【ソフトウエアの入手について】 PICのプログラムは、完全自作の方針だったのですが、 ”電気電子工作の部屋”さんの公開ファイル(実行形式)を流用 させていただき、1年半使用。 【ソフトウエアの自作について】 機能を絞れば、非常に簡素なプログラムで済むことから、 1年半後に、自作版に入れ替えしました。 機会を見て、機能追加をしてみたいと思っています。 【3個のトランジスタの役割】 トランジスタは、ラッチングリレーのSET,RESETコイル駆動用に各1個 、残り1個は電波時計からの1分間のON信号を約100msec のON信号に制限する制御に使用しています。 【各端子の接続】 赤・黒のワニグチはアンテナ系。 赤と黒のコードは電池BOXへ 乳白色のコードは電波時計に繋がっています。 【部品レイアウトについて】 量産機なら、トランジスタ・ダイオード・コンデンサの向きを、一方向に 揃え、誤実装防止を行ったりするのですが、初号機でもあり、ご愛嬌。 2台目を作る機会があったら、修正したい点です。 押しボタンSWの文字は、透明カバーの下に、文字を挟みました。 【ユニバーサルプリント板について】 今回は、片面にのみランドがあるプリント板を使用しました。 表裏に丸いランドが見える、両面スルーホール基板゚の方が、ハンダの流れが 良いのと、ランドが熱で剥がれるなどのトラブル(部品つけ直し時)が起き にくい長所があります。 |
||
近況: 2008年5月18日(土) ・スピーカー右後方の松下製タイマーは、先日まで時限タイマとして 使用していたものです。 ・中央の電波時計は、10年以上前に、たしか2千円で購入したもの (現在は、もっと洗練されたデザインの時計が980円!)。 表示:午後6:31 アラーム設定時刻午前5:20 電波時計のアラームにて、ラッチングリレーがON PICによる時限タイマーでOFFとなる仕掛けです。 電源は単三電池×3本 待機電流ほぼゼロ。 時限動作しているときに、約1mA(LED発光・・)。 マニュアルSWもあり、ON/OFF自由 マニュアルでONしても、時限タイマにより勝手に OFFとなります。 地震センサ(振り子のようなもの想定)を接続し、 地震発生時にラジオが勝手に鳴動するよう・・検討中。 窓からは、田植え直前の水田が見えています・・・。 |
||
近況:2010年5月18日(火) 毎朝、定刻にラジオが鳴り出すが、今日は一時間後に自動OFFにならなかった・・・。 PICの時限動作はしているものの、ラッチングリレーコイルのOFF側が動作できていない模様。 電池が無くなった場合の動作としては、安全方向の動作といえる・・・。 メカニズムとしては、 ON動作後、PICおよびLEDの動作電流により、電池電圧がさらに下がり、 OFF動作できない状態・・・・・。 回路定数や回路的工夫すればもう少し低い電圧までがんばれるようにも思うが、機会を見て検討 したい。 運用開始して既に2年、約800時間の稼動。 当初、実験目的で中古の電池を使用し、途中で1回電池交換した記憶あり・・・・。 3.36V⇒4.84V(交換後もアルカリ電池) たまに、電圧測定することにした・・・。 2010/05/18 4.84V 2010/06/20 4.56V 近況:2019年2月13日(水) 何の改良もせず,初稼働から11年経過! ついに電波時計の液晶表示板の縁に 染み出したような汚れが出てきた・・・。 この電波時計は1995年ごろ購入した記憶あり,24年稼働! そろそろ電波時計の入替更新要。 |
||
近況: 2024年5月11日(土) 電波時計は、26年以上前に、たしか2千円で購入したもの (時刻表示)午前5:30 (アラーム設定時刻) 午前3:59 地震センサ(振り子のようなもの想定)を接続し、 地震発生時にラジオが勝手に鳴動するよう・・検討中・・・でしたが、 まだ実現していません(反省)。 窓からは、 2008年5月の近況報告と同じく、田植え前の水田が見えています。 なんと、 スピーカーが鳴るゲルマラジオは、まもなく24年稼働。 電波時計連動の時限タイマーは16年稼働。 変わったのは 近所の家が新しくなったりして眺望が変わったこと。 また、生活スタイルの変化により、 NHKの ラジオ深夜便を 朝4時から聴くようになったこと・・・。 ラッチングリレーが、 16年×365日+α回動いているが寿命は? 接点寿命50万回以上なので・・1,369年? 電波時計の液晶表示がそろそろ限界。 上が、朝5時半 下が、朝7時の写真 僅かですが、NHKラジオ仙台のメーター指針が 僅かに振れが増しています・・・・。 室温は大きく変化していないので、朝の陽ざしで大気の 温度が上昇したためと思われます。 |
||
電波時計のブザー駆動電圧波形 |
これは、電波時計の圧電ブザー駆動波形 この信号をシリコンダオードと電解コンデンサ で整流・平滑しトランジスタSWに接続。 マイナス側のヒゲの原因は不明。 電波時計のどこかにコイル負荷が入って いそう・・・・。 |
|
ラッチングリレー(双安定リレー) アンテナSWとして使用してみました。 状態を変更するとき以外、全く電力を必要としない優れものです。 駆動コイルに極性があるのが特徴です(この理由は→ 双安定リレーの動作原理 ) また、ラッチング動作をしない、通常のリレーは、単安定リレーと呼ぶようです。 価格:@588円 サイズ:16pin DIP-IC 16pin 丸ピンICソケット(@68円)に挿入して使用しました。 (写真は8ピン型) 板バネ式のICソケットは安価ですが、PICとかROMなど挿抜の繰り返しが予想される用途では、 丸ピン型の方が構造上、接触点が多い点で接触不良が起こりにくいようです。 端子配置図中の、SはSetの略、RはResetの略。 両コイルともに仕様上 10m秒の通電で、SET・RESET動作完了する優れもの。 コイルの駆動時間が短いため、きわめて省電力(70mA×5V×1/100秒=3.5mW秒)。 高周波での特性(メーカー仕様書よりの抜粋) |
||
遅延OFFを実現するために採用したワンチップCPU PIC12F683 Microchip PIC12F683 Data Sheet 1チップでありながら、 RESET回路やクロックの外付不要(電源や温度・ノイズ環境が厳しい場合は、外付けで用意(メーカー推奨))。 電源さえ接続すれば動作する為、ハード的敷居が極めて低いマイコンチップ。 ソフト的には、PICにプログラムを書込む道具(昔は”焼く”と言ったものですが・・・死語?)が必須です。 EP-ROM(Z80とかが全盛だった時代、20〜40年前)のような消去器(紫外線ランプ)が不要な為、 自作に挑戦する際の道具立てが少なくて済みます。 この辺の事情が、PIC工作人気の理由なのかもしれません。 また、個人的には8pinというサイズに大きな魅力を感じています(最少の工作(=手間)で、必要機能を実現)。 |
||
ユニバーサルプリント板(裏面レイアウト) |
この図は, ユニバーサルプリント板の裏面(ハンダ付け面) から見た部品配置と配線接続図(案)です。 赤線の部分は、ラッチングリレーが SET(アンテナSW-ON)時に、電源が印加する ラインです。 部品面側のレイアウト図の作成を省略したのが たたり、 トランジスタの向きを誤って組立ててしまい、 修正に苦労してしまいました。 (2008/05/31) |
|
電波時計のブザー駆動電圧で,ラッチングリレーをセットアップ リセット(OFF)は,OFF側の押しボタン ON側の押しボタンでの手動動作もできるようにしました。 (基本回路の説明) ・電波時計の圧電ブザ−駆動信号で、ラッチングリレーを駆動する基本回路です。 ・この回路は、ブレッドボード上に組みました。 ・R・Sのコイルには10D1等(100V 1A)のシリコンダイオードを並列に接続する必要があります。 このダイオードは、コイルの通電がOFFになった際に発生する逆起電力(電源電圧の数十倍)による、 トランジスタやICの誤動作や損傷を防止するため必須です。 (使用結果) ・簡易な回路でかつ、非常に便利。 ・待機電流は、ほぼゼロμA 。 ・試作回路のまま、数週間使用し、PICによる時限タイマ付加版にバトンタッチ。 |
||
先の回路に、遅延OFFタイマ回路を追加したもの (回路の説明) ・基本回路に、PICによる時限タイマを付加したものです。 ・回路図に書かないでしまいましたが、PICの1番ピンと8番ピンの間に、0.1μFの積層セラミックコンデン サを接続します。 ロジック回路やCPU組込系回路での安定動作のため必須(定石)です。 ・5番6番7番ピンは、必要によりDIP-SW等をGND間に接続することで、時限タイマーの動作時間を選択でき るようになります。 (ソフトウエア次第ではありますが・・・・) (使用結果: 2008/8/10) ・省電力の点で、詰めの甘い部分がありますが、ほぼ満足。 ・LEDランプの点滅動作(点灯時間と消灯時間の比が1:1)が今ひとつ不満。 1:10ぐらいでも十分確認 できるし、省電力。 (↑自作の簡易ソフトでは、この点を改善済み) (使用結果: 2009/9/24) ・1時間×一年間にて、電池電圧が4.8Vから3.85Vに下がったものの、まだまだ元気。 【アマチュア無線局も運用される方・・・】 アンテナSWの6番pinにも端子を設け,これをLOOPアンテナのGNDラインにつなぎ, タイマーOFFの時に,ゲルマラジオの受信端子をGNDに落とす使い方を お勧めします。 ※無線機(100Wクラス)の送信影響により,ゲルマニウムラジオのポリバリコンを数度, 耐圧オーバー?で不安定(故障)させた経験から・・・・ (2020/05/06付記) |
8pinのPIC12F675とPIC12F683の比較 | ||||||||||
PIC | プログラム メモリ (ワード) |
データ メモリ (ワード) |
EEPROM メモリ (ワード) |
入出力 pin数 |
10bit A/D変換 (CH) |
コンパ レータ |
CCP PWM |
タイマ (個) |
クロック (MHz) |
内臓 クロック (MHz) |
12F675 | 1K | 64 | 128 | 6 | 4 | 1 | − | 2 | 20 | 4 |
12F683 | 2K | 128 | 256 | 6 | 4 | 1 | 1 | 3 | 20 | 8 |
ターゲット | PIC12F675 |
使用コンパイラ | HI-TECH C PRO 9.60PL3 |
目的 | 最新のフリー環境(開発環境コンパイラ、Cコンパイラ)での簡易タイマー プログラム作成評価。 |
/***************************** 60minTIMER_03.c 参考(0.5秒タイマ) http://www.ne.jp/asahi/niko.niko/neko/675gpio2.c を元に、1時間タイマを作って見ました 2009/11/22 (16F675) *****************************/ #include <htc.h> #define _XTAL_FREQ 4000000 __CONFIG(UNPROTECT & BORDIS & MCLRDIS & PWRTEN & WDTDIS & INTIO); //メイン・ルーチン main() { int i=60*60; /* 60秒×60で1時間 */ GPIO5=0; /* timeup port を off*/ GPIO4=0; /* LEDランプ port を 点灯*/ TRIS5=0; /* GPIO5,4 を出力portに設定*/ TRIS4=0; while(i>0) /* i秒 タイマー */ { i--; __delay_ms(120); /* 120msec LED点灯後、消灯*/ GPIO4=0; __delay_ms(190); __delay_ms(190); __delay_ms(120); __delay_ms(190); __delay_ms(190); /* 880msec後 LED点灯 */ GPIO4=1; } GPIO4=0; /* LEDランプ消灯 */ GPIO5=1; /* timeup port を on */ while(1); /* END(無限LOOP) */ } |
|
時間精度 | 評価結果:60分に対し誤差+13秒(0.3%) 素子毎のキャリブレーションを有効にしていないので、このぐらいの精度は・・。 (電池電圧が3.8V程度まで下がっているのも悪影響?、追試要。) |
開発環境 | 評価結果:**** |
参考文献 | ADWIN ”キットで学ぼう電子回路シリーズNo.09 新PIC入門” |
オーム社 ”C言語で始めるPICマイコン” |
最近、気になっている感震装置・・・ 2024/07/03 |
|