goo blog サービス終了のお知らせ 

Charry-charry工房(チャーリー・チャーリーコウボウ)

50歳の手習い
(県立秋田工業高校 機械科卒業後、40年目に自分用の旋盤・フライス盤を所有することに)

2023OCT25 釣りは急遽中止 と arudino(RTC)

2023-10-25 08:30:10 | arudino
〇釣り
早くに目が覚めたものの、

車でさて、出かけようとしたらピカ
「うん?????」
自分の所の街灯が誤動作で点いたかな?

車で走りだして、一時停止して海の方を見
ると「ピカ」
やっぱり雷だ
と言うことで自宅に戻り返して来ました。
いそいで、雷対策
アンテナ系は全部ケーブルを外し、無線機
の電源もAC100Vから取り外しており
ました。

そんな中 強者はおります。
既に浜でソゲ(ヒラメの小さい物)を釣り上
げていたとLINEで連絡がありました。

ワォ!
でも直ぐに辞めて帰って来たとの連絡があり
ました。
雷怖い。
午後3時過ぎには雷も影響が無くなりそうな
ので午後に期待。

後日談
直ぐ側に雷が落ちて、その瞬間ロッドを地面
に投げたとのこと。



〇arudino
RTCでは本当に惑わされております。
どうもRTCの機能が分からないのが原因だ
と思います。
インターネットを調べるとRTCとJJYを
組み合わせて時計を作る記事もあるのでRTC
は余り信用がないのか?

次はJJYかGPSで時計を合わせることに
トライしたいと思います。
時計はなかなか難しい。

ChatGPTとやり取りしていて、プログ
ラムが動かない所から動くようになった変遷
をみていると面白いと思います。
なかなか、プログラムを覚えられません。
まぁ、覚える気持ちも余りないのですが・・・

プログラムを作成するのはHPの記事をコピー
してそれをChatGPTに直して貰う方法
がいいかなと思っております。

なかなか解決しない事象もありますが、私自身
がプログラムを組める訳でもないので、付き合
っております。
こんなことをしてるとアッと言う間に時間が経
過してしまいします。
コンパイルする時間とそれをarudinoに書き込む

「時間が節約できないかな」

2023OCT25 14:22
やっと、RTCの挙動が分かったような、パソ
コンの電源を落としても、RTCが時を刻み
そのデータをarudinoに返しているのが分かり
ました。
難しい。






2023OCT23 RTC の変数はmyRTCにしよう。

2023-10-23 20:21:00 | arudino
リアルタイムクロックでは大変苦労致し
ました。
それは分からないから。

いくらやっても時計を合わせることがで
きませんでした。
まだ、正確な時間を表示させることが出来
る訳ではないのですが、1分位の乖離の時
計をなんとかシリアルモニタで確認するこ
とができました。
RTCに直接書き込むことができれば、時
計合わせが完了すると思われます。

いろいろなHPを見ましたが、私みたいに
苦労している人は居ないようでした。
私の場合は
変数にRTCと記載するとだめなようだと
言うことが分かりました。
よって、変数を
myRTCにしました。
これによって、なんとか解消したもようです。


今日の先生は
https://zenn.dev/megeton/articles/73051700566574
zenn様
実時間モジュールの使い方 

このRTCを変数に使わないようにとは
英語のQ&Aでも掲載されておりました。

スケッチは次のとおりです、

#include <DS3232RTC.h>
#include <TimeLib.h>

DS3232RTC myRTC;

void setup() {
Serial.begin(9600);
myRTC.begin();
setSyncProvider(myRTC.get);
if (timeStatus() != timeSet) {
Serial.println("Unable to sync with the RTC");
} else {
Serial.println("RTC has set the system time");
tmElements_t tm;
tm.Year = CalendarYrToTm(2023); // 2023年
tm.Month = 10; // 10月
tm.Day = 23; // 23日
tm.Hour = 20; // 19時
tm.Minute = 07; // 53分
tm.Second = 0; // 0秒
myRTC.write(tm);
}
}

void loop() {
char str[80];
tmElements_t tm;
myRTC.read(tm);
sprintf(str, "%04d/%02d/%02d %02d:%02d:%02d", tmYearToCalendar(tm.Year) , tm.Month, tm.Day, tm.Hour, tm.Minute, tm.Second);
Serial.println(str);
delay(1000);
}

ライブラリの選択では本当に迷いました。
結局
#include <DS3232RTC.h>
が一番良かったです。

このライブラリは
arudino
→libraries
  →DS3232RTC(ここではUNIX対応なので大文字小文字が関係あり)
  →src
          →ヘッダファイル
とならないとarudinoは認識しないようです。

まぁなんとか遊んでおります。
こんなに固執したことが今まであり
ませんでした。
次はこれをシリアルモニタではなく
LCDに表示させようと思います。

いやぁー わがらねぇ!
でもおもへぇ!

明日は待ちに待った魚釣りだぁ!
気温は8度とのこと沢山重ね着して
参戦します。



2023OCT22 arudino I2C

2023-10-22 04:22:57 | arudino


釣りができないので、毎日のように
arudinoで遊んでいます。

今はI2C通信に関して、LCDと
かRTC・ジャイロセンサー等こと
ごとくいろいろな実験をする時にこ
のI2C通信が出現します。そこで
通信方式を集中的に勉強中です。

その中で各素子のアドレス確認をす
るツールとして
I2Cスキャナーがあります。

GITHUBに掲載されております。
このzipファイルをダウンロード
していざ使おうとしたら使えない事
なぜだろう?

ファイルを確認する、エキスプロー
ラ―(アプリ)で見ると、どうも階
層が一段深いように思えたので、
ファイルをコピーして一階層上に移
動したら動くようになりました。

Arduinoのエラー(英語)にそんな事
が書いているような????

Arduinoホルダ
   librariesホルダ
      i2CScanner-masterホルダ
  → i2CScannerホルダ
         →  i2CScanner.ino(スケッチ)
       ↓
Arduinoホルダ  
 librariesホルダ
    →  i2CScannerホルダ
          →i2CScanner.ino(スケッチ)

ZIPファイルを解凍したら出て来
たのは
I2CScanner.inoファ
イルでしたので、なんとか気づく事
ができました。

こうして勉強していると、分からな
い事だらけであることに、再度気づ
かされます。

今まで購入していた各種IC、セン
サーを使って遊んでいきたいと思い
ます。

ソーラーパネルの放電に関してはイ
ンターネットで調べたら、私の思う
ような動作をする基盤が売ってまし
た。


2023OCT17 ARUDINO遊び

2023-10-17 07:34:46 | arudino
アマゾン プライムフェアで
LCD2004を購入しました。

インターネットに掲載されていた記事から
自分の環境に合うように
ChatGPTにプログラムを修正しても
らいました。
LiquidCrystal_I2C.h
はGithubからダウンロードしました。
ZIPファイルをインストールする形式で
上手く行きました。

下のプログラムはエラーが出たら、
ChatGPTにその都度修正して貰いな
がら、遊んでおります。
次はこのLCDを使った、表示できる物を
作成したいと思います。

Arudinoを勉強するのにストレスが
軽減されました。
しかし、分からない事象に遭遇すると解決
するのに随分と時間がかかります。
一番はライブラリかな???
今勉強しているのが皆さんより5年から10
年遅いので・・・。
RTCを使った時計については4ケタLED
で上手く行きません。どこが悪いのか調査
中です。
これから魚釣りが出来なくなる1月から3月
にかけて勉強して行きたいと思います。
役に立つ物を作ってみたいものです。


#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 20, 4); // Set the LCD I2C address, 20x4 characters

void setup() {

lcd.init();
lcd.backlight();

for (int i = 0; i < 3; i++) {
lcd.backlight();
delay(250);
lcd.noBacklight();
delay(250);
}

lcd.backlight();

lcd.setCursor(3, 0);
lcd.print("Hello, world!");

lcd.setCursor(3, 1);
lcd.print("DE JA7OVC");

lcd.setCursor(3, 2);
lcd.print("AKITA JAPAN");

lcd.setCursor(3, 3);
lcd.print("TEST TEST TEST");

}





2023OCT07 ARUDINO R4

2023-10-07 16:37:48 | arudino
〇釣りは海が荒れてできないのでお休み
となっております。

〇Arudino
Arudino R4を買って遊んでおります。
今回は基盤底面の保護用としてプラスチ
ックのカバーが付いてきました。

4ケタLEDで時計を作ろうと四苦八苦
しております。
何も考えずにRTC8564NBを秋月
電子から購入したらArudinoのライブラリ
にありませんでした。
ネット―サーフィンするとGithub
にありました。
ZIPファイルをダウンロードしたはず
なのですが、ライブラリーにZIPでダ
ウンロードすることができず。

どうしたものか?
ChatGPTに聞いてみました。

Q:arudinoにZIPでない形式でインスト
ールするにはどうしたらいいですか
A:ChatGPT
Arduino IDEにZIPファイル以外の形式で
ライブラリをインストールするには、以
下の手順を試してみてください。

ライブラリフォルダを手動でコピー:

ダウンロードしたライブラリがZIPファ
イルでない場合、通常はフォルダ内にラ
イブラリファイルが含まれています。
Arduinoのライブラリフォルダにライブラ
リファイルを手動でコピーします。
Windowsの場合: 通常、ドキュメント フ
ォルダ内に Arduino フォルダがあり、そ
の中に libraries フォルダがあります。ラ
イブラリをこのフォルダにコピーします。
macOSの場合: 通常、ドキュメント フォ
ルダ内に Arduino フォルダがあり、その
中に libraries フォルダがあります。ライ
ブラリをこのフォルダにコピーします。
Linuxの場合: 通常、ユーザーホームディ
レクトリ の中に .arduino15 フォルダが
あり、その中に libraries フォルダがあ
ります。ライブラリをこのフォルダに
コピーします。

Arduino IDEを再起動:

ライブラリをコピーしたら、Arduino
 IDEを再起動して変更が反映されるこ
とを確認します。
ライブラリを使用:

Arduino IDEを再起動した後、スケッチ
でライブラリを使用することができます。
通常の方法でライブラリを含めることが
できます。
これらの手順に従ってライブラリを手動
でインストールすることができます。た
だし、ライブラリの依存関係や設定があ
る場合、ZIPファイルを使用してインス
トールすることが推奨されることがあり
ます。ZIPファイル形式の場合、Arduino
 IDEが依存関係を自動的に解決し、設定
を適切に処理します。ZIPファイルが提
供されている場合は、それを使用するこ
とをお勧めします。


この回答でなんとか解決しました。
このアンサーで気がついたこと

ライブラリーにフォルダを追加して
※.hを追加できること

RTCに一杯ライブラリがあるので、
スケッチを作成する時には一つを選
択すること。

Githubに開発されたArudino用の
ライブラリが保管されていること。


ライブラリは追加できたものの、また
前に壁が出来ております。ひとつひとつ
クリアするしかないようです。
修行の毎日!

〇T22T
T22TがLOTWに登録してくれまし
たのでDXCCが281になりました。

フレンチポリネシアが3.5Mhzで日本
に入感中ですが、私のところでは聞こえ
ません。残念!
グレーラインタイムに入れば聞こえるか
な?