google-site-verification: google3bd66dd162ef54c7.html

昼と夜の長さの変化の記録、夏至を過ぎた頃

 和時計の明るさセンサーで測定した昼と夜の長さの変化データーを久しぶりに整理してみました。

 これまでの経過は、2月11日の記事3月21日の記事で整理しているので、測定方法などはそちらをご覧下さい。

▼明るさセンサーで測定した昼と夜の長さの変化
昼と夜の長さの変化
 天気が悪いと昼は短く(夜は長く)観察されるので、プロットはばらつきますが、それぞれの最大値(最小値)が晴天時の値とみなせば良いと思います。

 昼夜の長さの変化は1年(365.25日)を周期とする正弦波になり、その位相は決まっているので理論カーブを黄色の線で書いてみました。理論カーブと言っても冬至と夏至で位相を合わせ、振幅とオフセットはグラフを見ながら試行錯誤で合わせ込んでいます。ということで理論はほとんど使ってない、というかちゃんとした計算式まで遡ってないです。

 とは言ってもおよそ合っている感じですが、4月終わりから5月の終わりまでの期間で理論カーブより昼の長さが短いです。周辺の地形の影響?この頃天気が悪かった?、、何でだろう?

 ところどころで欠測になっているのは和時計を動かしていなかったり、データをメモるのを忘れていたためです。自動的にEEPROMに記録させるようにすれば確実に記録を残せるのでそのうち改良したいと思います。

 ところで、マヤなどの古代文明は太陽や星の動きを正確に把握していたらしいですが、こんなデーターをたくさん蓄積していたんでしょうね。こういう測定をずっと続ければ1年がおよそ365日ということが判るはずです。

tag : 日の長さ 季節変化 自動測定 マイコン

ハイテク和時計完成(ハード、ソフト解説編)

 前回の記事に引き続いて、製作した和時計の回路とソフトの解説編です。

▼CPUと液晶基板
和時計のCPUと液晶基板
 16文字×二行のキャラクタ液晶にCPU基板をコネクタで接続。

▼CPU基板
和時計の制御基板(部品面)
 27×10グリッドに収まりました。左のタクトスイッチはリセット、右のトグルスイッチは時計の時刻合わせスイッチです。

▼CPU基板の配線面
和時計の制御基板(はんだ面)
 液晶の接続にはライトアングルのコネクタを使うべきなんでしょうが、部品を持ってないので手抜きしてます。
赤いワイヤは電源です。

▼回路図(クリックで拡大)
回路図
 AVRはおろかマイコンで回路を作ったのは始めてなので、変なところがあったご指摘下さい。

◆回路の説明
 電源の入力コネクタが二つあるのは、無計画に箱にACアダプタ用のコネクタを明けて、その後追加で別のコネクタをつないだ為で、特に意味はありません。ただ、12Vのバッテリーから電源を取ることもあるので、安全のためにポリスイッチを入れてあります。他は普通の回路だと思いますが、時計なのでクロックにはセラロックではなく水晶を使用。

 時計のステッピングモーターの駆動に、以前は固定抵抗を入れてソフトで最適なパルス幅を設定していたのですが、これを止めてVR1の半固定抵抗で調整するようにしています。こうしておけば、別のムーブメントを持ってきた時にいちいちソフトを書き換えないで済むので楽です。
 昼夜信号の入力にフォトカプラを使っているのは相手の回路がプラス接地になっているためで、GNDの電位が合うならこんなことしなくても大丈夫です。

◆ソフト
スケッチはこちら
 消費電流を減らすために処理は割り込みルーチン内で行い、メインのループではスリープ状態にしています。

 昼夜の変化検出のアルゴリズムをもう少し厳密にしておいた方が安心なのですが、検出するハードのシュミットトリガでヒステリシスを大きくしてあるのでとりあえずこのまま使ってます。

 このプログラムをRrduino UNOで書き込み、そのCPUを引っこ抜いてこっちの基板に挿すことでプログラムライター無しで済ましてます。

 ATmega328Pのプログラム領域32kBのうち6.5kBくらいしか使っていません。I/Oの残りも5ピンくらいあるので、上に二挺天賦を付けて本物の和時計みたいに仕立てても面白いと思います。で、人に聞かれたら、「あ、あれはクォーツの振り子みたいなものです」と、のたまうのも楽しいかも。

ハイテク和時計完成(機能説明編)

 Arduinoの勉強を兼ねて取り組んでいた和時計作りですが、とりあえず完成状態になりました。

 ということで、今回の記事は機能説明編。まずはどんな仕様の物になったかまとめます。なお、中の回路やソフトの内容は次回の記事で紹介予定です。

▼外観
自作したハイテク和時計
 100円ショップの木製アクセサリーボックスに入れました。サイズは150×100×52mm。
 上が和時計、下は液晶で今日と昨日の昼と夜の長さを表示します。

▼和時計の文字盤
和時計の文字盤
 いい感じに仕上がりました。

 9時の位置が明け六つ、3時の位置が暮れ六つになります。普通の和時計は針が一つですが、この時計は現代の時計のメカを使っているので短針、長針、秒針があり細かい時刻まで判ります。

 昼と夜の時間の長さは季節によって変わるので、マイコンを使って時計の進む速さを調整し不定時法の表示をさせています。なお、昼夜の同期はミニ太陽光発電のソーラーパネルの電圧検出で行っているので、天候の影響があります。また、時計の運針速度は前日の昼(夜)の長さの測定結果を使っているのでこちらも天候の影響を受けます。

 ちなみに、前日の昼(夜)の長さで運針させると、実際の日暮れとのズレはどうしても避けられません。そこで、日暮れが予想より早かった場合は夜の運針速度で調整。予想より日暮れが遅くなった場合は時計の針を止めて日暮れを待ちます。このあたりの話はこちらの記事で。

 この時計は日の出日の入りに同期しているので、これが正午を示す時は太陽が南中していることになります。私は太陽の南中時刻は経度だけで決まる、つまりここ東京は東経135度の明石より4度くらい東にあるので太陽の南中時刻は60分×4度/15度=16分だけ早い。つまり11時44分が南中時刻だと思っていました。しかし、調べてみると話はこんなに簡単では無く、均時差というのがあって太陽の南中時刻は年間では±15分くらいの変化があるそうです。この和時計が正午を示す時刻を見ていると、この近時差が実感できて面白いです。もちろん天気が良くて時計の精度が高い日に限りますが。

▼液晶表示
昼/夜の時間表示LCD
 今日と昨日の昼と夜の長さを HH:MM.X 形式で表示します。また、夜明け(日没)からの現在までの経過時間も合わせて表示します。また、夜は液晶のバックライトが点灯します。

 この写真はリセット直後の時刻合わせモードの状態です。時刻合わせの方法は、昼なら日暮れの暮れ六つ(15:00)に時計の針を合わせておき、日暮れになると自動的に時計がスタート、という方法で同期させます。液晶の Set3:00 と言う表示は、時計の針を3:00の位置に合わせなさいという指示です。もちろん夜にスタートさせる場合は Set9:00 という表示が出ます。
 こうやって一度合わせてやれば後は時刻合わせ不要で、勝手に時計が同期します。

▼背面
和時計の背面
 電源と昼夜信号を接続します。電源はDC7.5~20Vで、ACアダプタかミニソーラー発電の12Vが使用可能で、現在はミニソーラ発電の電力で動かしています。

▼内部
jisaku和時計の内部
 100円ショップの目覚まし時計と制御回路が入っています。
 時計の上に緑色のLEDが点灯していますが、これは毎正時の前後数秒間点滅させて時刻を知らせるものです。本物の和時計は正時刻毎にチンとか鐘が鳴るそうなのでその代わりです。

▼心臓部
ハイテク和時計の心臓部はArduino
 ArduinoでプログラムしたAVRのCPU ATmega328Pで動かしています。
 この部分の解説は次回の記事で紹介を予定しています。

tag : 和時計 arduino 製作 作る 100円ショップ 均時差 不定時法

カレンダー
04 | 2017/05 | 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -
プロフィール

ラジオペンチ

Author:ラジオペンチ
電子工作を中心としたブログです。たまに近所(東京都稲城市)の話題など。60過ぎて視力や器用さの衰えを感じつつ日々挑戦!
コメントを入れる時にメールアドレスの記入は不要です。なお、非公開コメントは受け付けていません。

記事が気に入ったらクリックを!
最新記事
カテゴリ
最新コメント
リンク
FC2カウンター
検索フォーム
月別アーカイブ
RSSリンクの表示
QRコード
QRコード