PIC初心者用掲示板

★★ 質問する前に下記をチェック ★★
(PICに関する疑問は必ず解決するはず)
←←←「電子工作の実験室」へ
←←←← 

■最新ツリー一覧

□このツリー付近のツリー一覧

★新規ツリー作成

◆ 9800. 時計を作ったけど・・・ [よしゆき2006/03/04 22:39
    ┗ 9801. Re: 時計を作ったけど・・・ [Kazu2006/03/04 23:18
        ┗ 9802. Re: 時計を作ったけど・・・ [よしゆき2006/03/04 23:46
        ┗ 9803. Re: 時計を作ったけど・・・ [よしゆき2006/03/04 23:50
            ┗ 9806. Re: 時計を作ったけど・・・ [PIC_FAN2006/03/05 09:35
                ┗ 9807. 投稿者削除 [ ] 2006/03/05 09:53
                ┗ 9808. Re: 時計を作ったけど・・・ [PIC_FAN2006/03/05 09:58


9800. 時計を作ったけど・・・ [よしゆき2006/03/04 22:39
どうも〜
時計を作ったのですが後一歩です・・・
1点不具合というか時計本来の機能が今一歩です
どなたか出来ればご教授願いたいです・・
問題は「誤差が大きい」です。
PIC16F84で水晶4.194304MHzを使用して作りました。
水晶は振動子を購入して自分で33PFを水晶両端子に
接続後GNDラインに落としました(PIC15・16番端子)。また、タイマー0機能を使用して1/256とし割り込み発生後16カウントして1.00000秒を作りましたが、
どうも誤差が大きすぎるのです。
どうすれば高精度化できるのでしょう〜
超高精度クリスタル(発振子がいいのか発振器がいいのかは分かりませんが・・・)を使用すればいいのでしょうか?
超高精度クリスタル4.194304MHzはどこに売っているのだろう〜
こんな問題です・・お分かりの方が見えましたらご教授願います〜

9801. Re: 時計を作ったけど・・・ [Kazu2006/03/04 23:18
>どうも誤差が大きすぎるのです。
>どうすれば高精度化できるのでしょう〜
時計を作るには、一般の水晶振動子ではかなり誤差を生じます。

こちらに参考になる製作例が載っています。
http://www.picfun.com/appframe.html


KTXO-18シリーズは、秋月電子で販売されています。

9802. Re: 時計を作ったけど・・・ [よしゆき2006/03/04 23:46
早速のご意見ありがとうございます〜
なかなか難しいですね
秋月にありましたが4.19・・・はありませんでした〜
もうちょっと探してみます〜

9803. Re: 時計を作ったけど・・・ [よしゆき2006/03/04 23:50
フリーランの数値とカウント数を変えて12.8MHzを使用すればいいんですね!
分かったような〜

9806. Re: 時計を作ったけど・・・ [PIC_FAN2006/03/05 09:35
簡単ですが あまり知られていない解決方法を・・・・・

たとえば1日に5秒進むとします。

60*60*24+5秒で24時間カウントするようなプログラムを作ればOKです。

1例としては1日5回 59分59秒を2回カウントする様なプログラムを作れば 1日に5秒遅れますから差し引き「0」と言う計算です。

補正は1秒単位よりもう少し細かい方がいいと思いますが 素性のわからない安物水晶の場合限界はあります。

この方法では 水晶の固有発信周波数のずれは補正できますが温度特性は補正できません。それでも月差数秒程度までは簡単に補正できます。

9807. 投稿者削除 [ ] 2006/03/05 09:53

9808. Re: 時計を作ったけど・・・ [PIC_FAN2006/03/05 09:58
尚 ここで云う月差数秒は 通常の室内据え置き状態での話です。又 夏冬の温度差や電圧変動は考慮していない事を付け加えます。

>この方法では 水晶の固有発信周波数のずれは補正できますが温度特性は補正できません。それでも月差数秒程度までは簡単に補正できます。

9809. Re: 時計を作ったけど・・・ [よしゆき2006/03/05 16:42
どうもありがとうございます。
なるほどですね〜
固定的に発生する日差は分かりますからそれを1日
単位で一括補正する・・・なるほど
たしかにそうですね〜
面白い解決策ですね〜
とりあえず高精度な水晶(発振子ではなく発振器)を
買って試してみます。
その後本対策案も考えます〜
ありがとうございます!!

9810. Re: 時計を作ったけど・・・ [[--]2006/03/05 22:18
普通の時計用水晶発振子(32768Hz)を使ったほうが安くできそうですが・・・。
別のIC(c-mosの4060など)で発振させて、2Hzパルスを外部割り込み入力に食わせて計時、として、主発振とは別の回路にしてしまうのです。
発振回路のコンデンサを選べば、月差10秒程度に追い込めるでしょう。
16F84じゃなく内蔵オシレータを持つPICを使って、PIC自身で32768Hz水晶を発振させるのは?
32768Hzの水晶は、使っていないクォーツ時計や時計機能付きの電化製品から発掘できます。
停電時のバックアップをどうするかも課題かと。

9811. Re: 時計を作ったけど・・・ [よしゆき2006/03/05 22:34
うむ〜
なるほど・・・
32768Hzって聞いたことないっすね^^
ジャンクから〜手間がいりますね@@
停電は考慮しません
AC100Vを電源とし、A/Dで5V供給しています。
ただ誤差が大きい〜 いまは20秒/日程度の誤差・・・・・・・
外部で別に基準発振回路を構築して割り込みをかける方法ですね@了解です
今日の朝、秋月で12.8MHz超高精度水晶発振器を注文したので、それで一旦チャレンジしてみますね^^
ただ、今までは4.194304MHzの安い水晶を使用していましたが、4*256*256でフリーランさせ、16回カウントさせていたので、16回のカウントを変更するソフト改修が必要なので、ちょっと厄介ですが・・
ま、とりあえずがんばってみます〜

9812. Re: 時計を作ったけど・・・ [PICマスター2006/03/05 23:13
>普通の時計用水晶発振子(32768Hz)を使ったほうが安くできそうですが・・・。
ですね〜。新品のクリスタルでも1個\50程ですし、コンデンサ入れても\100程度ってなところでしょうか。
これで16F648の内部発振で月差5秒程度まではつくれますよね。

9813. Re: 時計を作ったけど・・・ [初心者キング2006/03/06 05:32

リアルタイムクロックICを外付けして、表示のみをPICが.....
というのは反則ですね。

9814. Re: 時計を作ったけど・・・ [HHHH2006/03/06 09:18
>停電は考慮しません
>AC100Vを電源とし、A/Dで5V供給しています。
>ただ誤差が大きい〜 いまは20秒/日程度の誤差・・・・・・・

AC100V電源を標準として考えているのなら、
ACをフォトカップラなどで絶縁して PICのポートに入力、
入力の H,L を 50カウントまたは60カウントして1秒にする と言う方法もあります。

9815. Re: 時計を作ったけど・・・ [オレも天狗2006/03/06 10:59
http://park11.wakwak.com/~domo/time.html
ほとんど狂いません。

9816. Re: 時計を作ったけど・・・ [ELILE2006/03/06 22:44
16F648AあたりにPICを変更してTIMER1のCCPでやってみてはいかがでしょう?

9817. Re: 時計を作ったけど・・・ [よしゆき2006/03/06 23:32
なるほど!
すごく面白い解決策ですね
電力会社の周波数はほとんど狂わないし、
60Hz系だと、59.98Hzが数秒続くと60.02Hzを数秒するなど、トータル的に±0とするようですね!
100Vをフォトカプラで絶縁し、パルスを読む・・・・
一度チャレンジしたいですね〜
ちょっと回路が難しそうなのと、タイマー0割り込み
の技法を捨てることになるのでなんとも複雑な感じですが〜
でも面白い案!ありがとうございます

9818. Re: 時計を作ったけど・・・ [よしゆき2006/03/06 23:35
私はまた16F84Aしか知識がありません〜
ほかのPICはこれから勉強していきます〜
16F648の内部発振・・・って、外付け水晶など
発振回路が不要ということですか?
勉強不足ですいません〜
モシそうだとすると、PIC内の発振回路はそれほど
正確なものなのでしょうか?
一度トライしたいですが、まだ初心者なので・・・
お許しを〜〜(笑)


9819. Re: 時計を作ったけど・・・ [[--]2006/03/06 23:36
悪いけど・・・

>32768Hzって聞いたことないっすね^^

これを言っちゃ、あなたぁ、勉強不足ですよ。

>ジャンクから〜手間がいりますね@@

道ばたに捨ててあるジャンク拾ってきて、ばらして、中を見て、どんな部品が、どんな具合に使われているか、じっくり見て、どうぞタダで勉強してくださいな。

>ま、とりあえずがんばってみます〜

がんばりかたを間違わないようにねぇ。
一生かかって勉強するんだからねぇ。

9820. Re: 時計を作ったけど・・・ [よしゆき2006/03/06 23:39
別の方の回答にもありましたが、
一度16F648Aのチャレンジしてみます!
ただ、別の方のレスにも書いたように
*****
私はまた16F84Aしか知識がありません〜
ほかのPICはこれから勉強していきます〜
16F648の内部発振・・・って、外付け水晶など
発振回路が不要ということですか?
勉強不足ですいません〜
モシそうだとすると、PIC内の発振回路はそれほど
正確なものなのでしょうか?
*******
ってとこがどうなんでしょうね^^
タイマー1って簡単なんでしょうか〜
16F84Aしか知らないので・・・
16F84Aはタイマー0割り込みしかありませんね〜
それしか知識が今のところないっす〜
勉強します!

9821. Re: 時計を作ったけど・・・ [よしゆき2006/03/06 23:43
そうっすね
自分でばらして興味を持って勉強する!
これが最高に覚える方法ですね〜
ありがとうございます

9822. Re: 時計を作ったけど・・・ [よしゆき2006/03/06 23:45
ネットワークが必要ですね〜
これでは・・・
単独自走状態での精度が必要です〜
ご意見ありがとうございます!

9823. Re: 時計を作ったけど・・・ [ELILE2006/03/07 00:03
>別の方の回答にもありましたが、
>一度16F648Aのチャレンジしてみます!
>ただ、別の方のレスにも書いたように
>*****
>私はまた16F84Aしか知識がありません〜
>ほかのPICはこれから勉強していきます〜
>16F648の内部発振・・・って、外付け水晶など
>発振回路が不要ということですか?

そういうことです。

>勉強不足ですいません〜
>モシそうだとすると、PIC内の発振回路はそれほど
>正確なものなのでしょうか?

残念ながらそれほど正確なものではありません。
正確さを求めるのであれば内部発信を用いずにI/O二本を犠牲にして水晶をつけます。

ちなみに、内部発信周波数を微調整できたりします。

>*******
>ってとこがどうなんでしょうね^^
>タイマー1って簡単なんでしょうか〜
>16F84Aしか知らないので・・・
>16F84Aはタイマー0割り込みしかありませんね〜
>それしか知識が今のところないっす〜
>勉強します!

84Aが使えるのであれば648Aでも問題ないと思います。問題はモジュール(TMR0とかTMR1とか)が使えるかどうかです(^^

がんばって!

9824. Re: 時計を作ったけど・・・ [HHHH2006/03/07 09:16
>一度チャレンジしたいですね〜
>ちょっと回路が難しそうなのと、タイマー0割り込み
>の技法を捨てることになるのでなんとも複雑な感じですが〜
>でも面白い案!ありがとうございます

TLP521-2 などの二回路入りのフォトカップラを用いて、
LED側は、二つの回路のアノードとカソードを交互に接続します。
(Pin1 と Pin4 を接続,Pin2 と Pin3 を接続)
Pin1,4 から 50k〜100kオーム程度の抵抗を介してACへ、
Pni2,3 は もう一方のACへ接続。
フォトカップラの二次側は コレクタどうし、エミッタどうしを接続、
(Pin5 と Pin7 を接続,Pin6 と Pin8 を接続)
エミッタ(Pin5,7)は PIC の 0V へ
コレクタ(Pin6,8)は、+5Vへのプルアップ抵抗を付けてPIC の入力ポートへ接続します。
これで、100Hz または、120Hz のパルス入力として使えると思います。

9825. Re: 時計を作ったけど・・・ [初心者2006/03/07 17:10
>うむ〜
>なるほど・・・
>32768Hzって聞いたことないっすね^^
>ジャンクから〜手間がいりますね@@
>停電は考慮しません
>AC100Vを電源とし、A/Dで5V供給しています。
>ただ誤差が大きい〜 いまは20秒/日程度の誤差・・・・・・・
>外部で別に基準発振回路を構築して割り込みをかける方法ですね@了解です
>今日の朝、秋月で12.8MHz超高精度水晶発振器を注文したので、それで一旦チャレンジしてみますね^^
>ただ、今までは4.194304MHzの安い水晶を使用していましたが、4*256*256でフリーランさせ、16回カウントさせていたので、16回のカウントを変更するソフト改修が必要なので、ちょっと厄介ですが・・
>ま、とりあえずがんばってみます〜

FMの100円ラジオを使って
http://www.seiko-sts.co.jp/systemlist/23.htm
みたいに時刻補正をすることはできるでしょうか。
時報を認識するにはどうしたら良いでしょうか。

9829. Re: 時計を作ったけど・・・ [よしゆき2006/03/07 21:14
「電子工作のためのPIC16F活用ガイドブック」技術評論社@@を買ってきました〜
そこにタイマー1割り込みについて丁寧に書いてありました〜
一度よく読んで研究します。。
タイマー1はカウンターが16bitなんですね〜
タイマー0は8bitだったので、多くカウントできず
ソフトでのカウントとしていましたが、タイマー1
のほうが楽チンみたいですね^^
目標は精度のいい時計!がんばります〜

9842. Re: 時計を作ったけど・・・ [松本2006/03/09 10:22
>FMの100円ラジオを使って
>http://www.seiko-sts.co.jp/systemlist/23.htm
>みたいに時刻補正をすることはできるでしょうか。
>時報を認識するにはどうしたら良いでしょうか。

まずは時報の信号の仕様を調べてください。
んで、それをどうやったら検出できるかを考えましょう。
すでに実現しているものがあるわけですから、やり方は必ずあります。