緑の中に

緑の中に
国立天文台

10/02/2024

赤外線センサー & ICオルゴール

 赤外線センサー & ICオルゴール

PIC12F683でOneShotを実現










9/17/2024

Monitor Display (監視表示)

 Monitor Display (監視表示)

先の「電子カレンダー」と似たようなプログラムではあるが、違いはアラーム動作に入ったことが眼で確認できるプログラムである。現在Unoにプログラムを書き込んで実験しています。
UnoはSRAM容量の制限がNanoより厳しく、アラームのすべてを記述したプログラムではありません。今後Nanoへ書き込み、すべての予定のアラームを書き込んだプログラムで実験する必要があります。

マイコン(Arduino Nano)が正しく時刻を検出しているか確認します。
そのためにマイコンにLCDを取付けて動きを表示することが必要です。

LCD表示様子_ACM 1602NI-FLW-FBW-M01-I2C接続キャラクタLCDモジュール 16x2行 白色バックライト付 を使用。







マイコンNanoのRestスイッチを押下すると、

Nanoへ書き込んだプログラム名を表示  [Rtc60SecIntLcdAlm_100] [Wk-1]

 [9_Mon 16_Day]     Wk-1  は0から数えて1番目の曜日 月曜日


現在時刻 日付 曜日(曜日番)を表示 [11:4:1]

60秒毎に割込み動作に入ります   [その結果 in Func()]

通常動作に入ります [in Loop()]


*LCD表示器への電源OFFとしても問題ありません。そのようにすれば電流消費を節約できます。


*RTCは初期化した内容を保持するため
必ず電池でBackUp通電しておくこと。
(主原電OFFの前にBackUPを通電すれば良い)


以上によりこのLCD表示器を見れば、現在時刻および警報動作へ入ったときが確認できます。



----------------------------

3V電池 抵抗100Ω ダイオード RTC +電極 のハード。Uno 3.3V のルートに *ダイオードを入れた。

装置電流測定 

Uno 3.3V 端子電源より 9.3mA を吐き出してる. RTCへは3V電池でBackUpの状態である

3V電池でBackUp その接続を外しても9.3mA と同じ値であった。

(4.5mA LCD照明を暗くして)

LCDの電源OFFでは 1mA  ●  <--- 今後SWを入れて構成すると良いと思う。


BackUp3V電池からRTCへの吐き出し電流は0.02mAであった。この状態は、Uno3.3VがRTCへ給電してある時である。

Uno3.3VがRTCへ給電STOPでは0.02mA であった。 ● <---- RTCをこの状態で保管できる。BackUp電池の消費を抑えながら保管できる。

--------------------  




9/08/2024

RTC(Real Time Clock) 電子カレンダーを作る

 RTC(Real Time Clock) 電子カレンダーを作る




2秒間隔の歩進としました

RTCの初期設定部の要の一部を載せます。
問題は、Initializeプログラム書き込み時に
いかに実時刻を書き込むかにかかっている

// ★★★★
// Wire.write(0x59); //秒   00秒と書いては良くない. 59秒と書くこと. [ 下記↓[分+1]が直ちに書き込まれると考える.59秒だから.
// Wire.write(0x23); //分  20分などと.  [[ここの分+1] がスタートすると考える.よって[Compile&Write]時間を見込むこと]
// [↑一度[Compile&Write] に要する経験値秒を調べる. それを考慮してWriteする.おおよそ15~30秒ぐらいの範囲である]
// Wire.write(0x17); //時 11時など [↑一度[Compile&Write] に要する経験値秒を調べる.(一度実行する) それを考慮して再度Writeする]
// ★★★★

すばらしい!

主電源OFFとするときは、RTCのSRAMへバックアップ電源を供給してからとする事。
そうでないと、上記実時刻合わせを再度強いられます。

先の獣害対策装置には、時計の様にLCD部に表示するまでの機能は付けませんでした。
しかし、運用中の保守において必ず欲しいという機能です。

--
書きかけです



8/27/2024

稼働中です

稼働中です

 



使用バッテリーについて

|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

2024.6.14 Amazon からバッテリー&充電器&バッテリテスター 到着 総額\40247円

LiTime 12V50Ah リン酸鉄リチュウムイオンバッテリー 640W 出力 4000回以上リサイクル
¥23199.

================================================
12V 50Ah

Li Time
Ampere Timeから
LiFeP04

(50A BMS)
製品
マニュアル
リン酸鉄リチュウムイオン (LiFeP04) バッテリー

service.jp@litime.com


製品概要

12.8V 50Aバッテリー
動作電圧:12.8V
充電電圧:14.4V±0.2V
推奨充電電流:10A (0.2C)
最大継続充電/放電電流:50A
最大継続負荷電力:640W

M8*1.25mmピッチ マイナス端子

M8*1.25mmピッチ  プラス端子

W198mmXD166mmxH170mm

付属部品
M8-35/64"(14mm)ターミナルボルト

ボルト絶縁カバー

===============================

14.6V10A LiFeP04 バッテリー充電器

LIFE & DISCOVERY

jp.litime.co

メーカー:Shenzhen Litime Technology Co.,Ltd
公式サイト:jp.litime.com
メール:service.jp@litime.com

-----
10A(0.2C) 約5時間で容量の100%まで満充電されます。

==========================================

++++++++++++++++++++++++++++++++++++++
2024年
*到着バッテリー 13.15V 66% 6月15日 到着バッテリー
6月15日 10:00~13:30 充電したt 13.65V  100%
6月16日 8:00  13.4V

6月17日 9:05  13.40V 100%  
6月17日 11:15  負荷(獣害対策装置)へ通電
6月17日 14時 畑に設置完了。運用開始。 天候は曇りから、雨になる予報である。

2024.8.19 6:50 残量計78% 12.5V(負荷接続状態にて)
特に変わったこと無し

2024.8.25 18:30
バッテリー電圧(デジタルテスタ)計 9.92V 無負荷開放端子電圧
別アナログ電圧テスタでは内部抵抗が表出するせいか、1.5V 
バッテリー残量計 全く反応せず

●8月19日 まで確実に出力供給は行えました。
バッテリーを満充電からの日数は63日です。2か月間は供給できたことになります。
負荷の使用頻度・負荷の状態によりますが、66日間持続できたことは喜びです。

2024.8.26 7:17 
デッキにて充電開始 7:17   RedLED常時点灯
充電完了 12:50  GreenLED常時点灯

●約5時間で充電満状態でした。このことは、バッテリー説明書通りでした。
「10A(0.2C) 約5時間で容量の100%まで満充電されます」
 
●再度、畑へ設置し再稼働させました
2024.8.26  午後   15:00 再稼働





第2電源基板の作成

 第2電源基板の作成






 12Vバッテリー から5V 3.3V を生成します。これにより、3V駆動の装置にも対応できるようにしました。
 収納する方法について。写真のような透明トレーの利用を考えています。ダイソーで入手しました。同トレーを重ねることができます。

重ねた場合の内部高さは25mmまでとなります。工作済の基板の高さを25㎜以内に収めるようにします。

これらのトレーを屋外BOXへ入れます。このBOX  にはバッテリーも収納します。
BOXにきれいに収納できれば良いのですが?
やってみなければわかりません!

バッテリー端子への接続は、丸型端子を使用しました。バッテリーの電極のボルト径は直径8㎜とありました。丸型端子の穴径の表示もφ8mmとあります。

実際に適合するか心配になりました。丸型端子の穴径は実測すると直径8mmよりわずか大きいです。ピッタリ適合しました。


6/17/2024

2個目のリアルタイムクロック RTC-8564NB

 2個目のリアルタイムクロック RTC-8564NB 




Arduino Uno も2個目を使用しました。
RTC-8564NB も2個目を使用しました。

RTC-8564NBは秋月電子通商で入手しました。
JP1,JP2,J3を有効にします。すなわち、半田上げします。
これによ、5pin,6pinの外付けプルアップ抵抗器は付ける必要がありません。
ただし、3pinへは2KΩの抵抗を付け+5Vへ接続します。
3pinは/INT 端子として機能させます。

RTC-8564NBの3pin  ------- Uno 2pin  を結線します。Active Low を検知するため、Normal(常時)Highとするために先ほどは2KΩの抵抗を付け+5Vへ接続したわけです。この作業をしないと、おかしな動作をします。何度も割込みへ入りました。

/INT 動作で内蔵の青色LEDが点灯します。

RTC-8564NB を2個ぐらい買って、1つはこのよう半田を上げて使用すると楽にプログラムに集中できます。もし、内蔵プルアップ抵抗器での電流を抑えたいなら、半田は上げないで外付け抵抗器(適切な抵抗値)で対処する方法もありと思います。

動作は見事です!! 動作と時刻確認は眼だけですと疲れます。音を利用すると確認は楽になります。それでブザーを入れました。トランジスタを入れて、駆動してください。ブザーはそれなりに電流が流れますから。

* 5Vブザーですが、音量をコントロールすることは難しいブザーです。
5Vで動作する仕様だとおもいます。

 そこで、現在電子ブザーを製作中です。PICおよび小型スピーカーそしてトランジスタを使用します。そこへ、可変抵抗器によりベース電流をコントロールすることにより音量を調節できました。








5/16/2024

セイコーエプソン・エプソントヨコム RTC-8564NB

 セイコーエプソン・エプソントヨコム RTC-8564NB

ついにセイコーエプソン・エプソントヨコムのリアルタイムクロックIC(RTC-8564NB)を使ったクロックモジュールを使えました。(秋月電子通商)
 I2Cインターフェース(2線式)で行えました。

■IC内に高精度クリスタルが内蔵されています。

■パーツは全て実装済み。8ピンDIPのICとしてお使いになれます。

■INT割り込み用のLED付

※ICは全て基板に実装済です。
(上記、4行は添付説明文より引用)

5,6pin はプルアップ処理が必要です。私の場合は敢えて外付け抵抗器によるプルアップ処理をしました。理由は、この抵抗値を変更して消費電流をできるだけ少なくしたいという事からです。

3pinは/INT 端子で、内蔵LEDを点灯させることができます。しかし、私は敢えて外付け抵抗器を接続してモニタしました。理由は消費電流を抑えるために、プログラム完成後は最終的に不要と判断しました。

*添付の回路図がややこしく、最初結線を間違えて通電しました。このモジュールのGNDは4pinです。VDDは8pinです。

*確実に60秒毎の/INT 信号を取得できました。説明書によると、60秒未満の割込みも可能なようです?。私の場合、幾度となくプログラムを試しましたが確認できませんでした。
30秒毎の割込みも試しましたが、できませんでした。

最初の結線を私がミスしたことにより、ハード部が壊れた?
オープン・ドレイン出力? この扱いの処理をしていなかった?
などの原因を今、考えています。が

●「60秒毎の/INT 信号を取得」で十分です。

添付の回路図を読み取る時注意が必要です。p2の回路図の8ピンを中心に見ます。p5の端子機能と対比する時間違わないように注意してください。



すばらしい!! 見事です!! 
検索[分]の[更新]を察知して、確実に/INT 割込み動作へ入っています。

条件設定として 時:分 の指定は可能です。さらに分のみの二桁条件も可能です。

また、分の下一桁の条件も可能です。例えば、X1,X2 など下一桁に1分や2分となったときの
/INT 動作も可能です。

[曜日] 
条件は、まだ私は試していません。可能なはずです。
検索条件式では、if文による条件論理を作ります。この
条件式をdefine 定義すると、以降使用の利便性が格段に良くなります。


プログラムの一部
#define dawn (hour >= 4) && (hour < 6) 

#define evening (hour >= 17 && hour < 19)

#define morning ((hour >= 6 && hour < 9))

#define day (hour >= 9 && hour < 17)

#define night1  (hour >= 19 && hour < 21 )

#define night2  (hour >= 21 && hour < 23 )

#define night   (hour >= 19 && hour < 24 )

#define midnight  ((hour >= 23 && minute >= 00) || (hour < 4 && minute >= 00))

このようにすることでプログラムがしやすくなりました。


[動作したプログラムを状況に応じて無償提供いたします]

下記メールアドレスまで、連絡を下されば下記プログラムのテキスト形式を添付して、返信します。

なお、恐れ入りますがこのメールアドレスは月に1回程度しか確認しませんので

返信が遅れることをご承知下さい。

studytom234@gmail.com

<以下の環境でプログラム作りをしました>

・パソコン Windows10 (win8のアップグレード)

・Arduino Uno 

・リアルタイムクロック RTC-8564NB

---------------------------------------------------------

プログラムの構成は3部という3本から成り立っています。以下にその内訳を記します。

1本目[Initialize] 

 初期設定であり現在時刻を登録するプログラムです。
 RTC-8564NBへ書き込むとき、コンパイル&書き込み時間による遅延を予測して(私の場合、設定時刻より30秒前に書き込みます。すなわち、30秒未来を設定時刻にします)

  2本目[Read]

時刻を読み出すプログラムです。1本目の[Initialize] に影響を与えないプログラムです。

3本目[INT-Timer]

60秒毎に、RTC-8564NBの3pinにActive Low 信号を出します。この3pinは2KΩでプルアップ処理します。

以上の3本のプログラムで動作が確認できると思います。
プログラムには注釈(コメント)がたくさんついています。開発の過程そのものであり、自分自身の記憶の経過でもあります。利用される方は、自分なりの注釈に変更したり、あるいは削除してお使い下さい。


* RTC-8564NBのメモリバックアップ電源(電池)を取付けないと、メイン電源OFFのたびに時刻の初期設定を強いられます。

*1本目と2本目のプログラムが動作すると、うれしくなり自信がつきます。その後、3本目を試します。

尚、この件に関して貴殿への不利益等なる責任は一切負いませのであらかじめご承知下さい









5/09/2024

■リアルタイムクロック RTC-8564NB を扱う

 ■リアルタイムクロック RTC-8564NB を扱う

Arduino Uno が扱えたので、リアルタイムクロック RTC-8564NB  を扱えたと極論できます。私の場合です。


上 プログラムの開発は経過ポイントにピンを立てます --通過点 


上 60秒毎の割込み動作です 
見事です!  時・分・秒のデータです


上 回路図 正しく読み取り解釈すること
RTCの1pinから8pin において、3pinが/INT 端子です。
8pinがVDDです。GNDが4pinです
*JP1,JP2,JP3 はいじりませんでした。よって、外付け抵抗器でプルアップしました。
また外付けLEDとしました。


上 3pin へLED、Uno_2pinへ結線 60秒間隔で点滅します


                                    上  Uno 2pin が/INT 端子  Uno 8pinはまだ未使用です

                                    上  Uno_2pin へActive Low スイッチ 単独動作検査用に

        
RTCの3pin からUno_2pinへ結線します。このとき、Uno_2pin Active Low スイッチは外します。これにより、RTCのACTIVE LOW 信号がUnoへ伝達されます。


プログラムを後日アップしたいと思います。


*注意 RTCのGNDは4pin ?
 4pinです。回路図をじっくり読むと4pinです。
私、ひょっとしてICを壊したかもしれません。それで、60秒以下の割込み動作のプログラムが動作しなかったかも?
    
            

 *60秒インターバル 2分インターバル の割込み動作のプログラム作りは確認できました。

 しかし、10秒や30秒が不可能です。今のところ。
最小割込み時間60秒で十分です。この値以下の必要性は、現在ありません。


  

                           



4/18/2024

リアルタイムクロック(RTC-8564NB)を扱う

 リアルタイムクロック(RTC-8564NB)を扱う


このRTCを初期設定して、時刻を表示することができました。
Arduino Uno マイコンを利用できたことによって、私でも可能になったと思います。
Web上の参考資料など、それを活用できたことにもよります。

このRTCには標準で初期設定値をメモリーへ保存する機能は持っていません。



一度電源を切ると、再度現在時刻を初期設定してから利用することになります。
そこで、メモリーを保持するようにバッテリーを付ける必要があります。

[RTC-10] と[RTC-8564NB] を比較すると、金額的には約 5000円:500円
になります。RTC-10は設定しやすくメモリーバックアップ方式を考慮した製品であることが理解できました。(10年以上昔の\5000ですから、現在に換算するともっと高価です)
現在、[RTC-10]は入手不可能です。



 













4/17/2024

電子回路の収納箱

 電子回路の収納箱


    
現在、雨にも問題ありません





4/14/2024

庭に対策装置を

 庭に対策装置を

獣害対策装置を庭に設置して、様子をみました。
この1週間は天候も良く、雨が降りません。その中でのテストをしています。

 朝、4時代から警報音を発しています。
1日間のみ警報音を出す実験となりました。フラッシュは継続しています。

線香花火のようにきれいです。
これから天候も雨になりそうですので、収納BOXを買って入れ込みたいと考えています。
今のところ。朝夕の結露によるトラブルは発生していません。

最後の問題は、バッテリーとなりました。


4/13/2024

屋外で実験

 屋外で実験



 
2024.4.10 より屋外実験を始めました。庭に設置して動作を確認しています。
早朝4時からsound の動作が入ります。動作しています。発光器は線香花火のようできれいです。
 
 防水・防雨対策として、今はビニール袋で仮に保護しています。
 今後、適当な収納ケースを検討しています。しかし、その前に電源としてのバッテリーを決めてからの順番になります。その理由は、バッテリーも収納ケースに入れるからです。収納ケースの大きさの選定に影響します。

*12Vバッテリーの容量をどのくらいにするか? とりあえず計算が必要です。
 その前に、この対策装置の使用状況でどのくらいの電力を消費しているか計測が必要です。その後に容量計算です。


 






Arduino Nano Every 


Arduino Nano Every


                                Arduino Nano Every



制御部一式です


天候が良いので防水できています

4/09/2024

発光器とスピーカーを載せる三脚

発光器とスピーカーを載せる三脚


三脚です

三脚の上部に天板を載せます


天板 防腐・防水塗料を2回塗りました


各基板(機能モジュール)を固定するパネル(樹脂0.5mm厚)

 *各基板をパネルに固定したら、中央横ラインで山折りにします。


4/04/2024

ブレッドボード用ダイナミックスピーカーの利用

 ブレッドボード用ダイナミックスピーカーの利用



 小型に作るため、スピーカーの選定をブレッドボード用のスピーカーにしました。秋月電子通商で求めたスピーカーです。


最初、板を電気丸のこで切断しました。精密な切断ができませんでした。隙間だらけのでこぼこのBOXとなりました。

ミニテーブルソー 丸鋸機  卓上丸鋸盤 なる製品がどうしても必要であることが判明しました。今後、正確な木材の切断工作をするなら「ミニテーブルソー 丸鋸機  卓上丸鋸盤」を求めた方が良いと実感しました。

私の電気丸鋸は大きな板を大雑把に切断する場合に意味があります。


最も端的な方法は次のようになります。秋月電子通商で、プラスチックケースを買う方法です。SW-65S LIGHT GRAY TAKACHI  とブレッドボード用ダイナミックスピーカーの組み合わせです。







3/29/2024

UnoからNanoへ移植

 UnoからNanoへ移植

Arduino Uno マイコンからArduino Nano マイコンへ移しました。ハード・ソフト的にまったく問題なくそのまま移植できました。

Nanoへのプログラム書き込みは、IDEの「ツール」-->ボード でNanoを確実に指定しない場合は書き込みが行われません。


ここで使用したブレッドボードは、中タイプの長めのブレッドボードです。小形のブレッドボードの2倍の大きになります。

このブレッドボードはNanoマイコンに最適です。Nanoを半田上げまでして使いたくはありません。


3/28/2024

スピーカーBOX 完成

 スピーカーBOX 完成

完成しました。
防水塗料を施しました。
赤印などは合いマークで、解体し組み立てるときの目印となります。
予想よりも大きなBOXとなりました。

箱を作るときの苦労は、寸法の考え方です。内寸法・外寸法そして部材の厚さを計算に入れます。考えているより悩みました。

フロントパネルを設けてスピーカーのコーンを保護しています。





3/18/2024

スピーカBOXも自作

 スピーカBOXも自作

箱を作ることは、簡単そうに見えて大変です。寸法をどのように入れるか?

外寸法、内寸法、使用板の厚さなど考慮しながら苦戦しました。


    

   仮固定しました。隙間だらけです。



(*注意) スピーカの径より少し小さく打ち抜きました。この時、工具としてホールソーを電動ドリルに取りつけて行いました。ここで反省点があります。片面からのみ打ち抜くと、ホールソーが抜けた面はボロボロな縁になりました。刃物を入れた面は寸法通りですが、刃物が抜けた面の美しさは確保できません。

そこで今後は、両面から板厚の半分ずつまでの深さにドリルを回す事にします。おそらく、改善されると思います。

(*注意)電動マルノコの作業台を所持していません。それゆえか大変作業がしずらく寸法線通りの切断とはなっていない感じです。切断作業もしずらかったです。数ミリのずれはありそうです。作業台が欲しいところです。

スピーカ・コードの穴を開ける事を忘れていました。背面が適切でしょうか。

六面の各板に防水塗料を施します。その後、細いネジで仮止めをします。