注目キーワード

【Arduino】UNO R4 WiFi で「時刻同期」する!

すけろく
前回の記事で、Arduino UNO R4 WiFiを使って
Wi-Fi接続することができた。
げんろく
ああ。インターネットへのアクセスが
できるようになったな。
すけろく
これで、Arduino UNO R4 WiFiの時刻を
正確に合わせることもできるな!
げんろく
よし。インターネット上の
NTP(時刻提供)サーバと時刻同期してみるか!
今回は記事では、「Arduino UNO R4 WiFi」をArduinoでプログラミングして、インターネット上の時刻提供サーバ(NTPサーバ)と時刻同期してみます。
Arduino UNO R4 WiFi」を時刻同期することで、正確な時刻を元にデータ取得や、命令の実行を行うことができます。
この記事の前提となる「Arduino UNO R4 WiFi」のはじめかたは、次の記事で紹介しています。
関連記事

すけろく ついに、Arduino UNO R4 を手に入れたぞ! げんろく Arduinoをこれから使ってみる人には良いモデルだな。 しかもWi-Fiモジュールがついているので、 これ一台でできるこ[…]

 

記事内でご紹介する「Arduino UNO R4 WiFi」はこちら!

created by Rinker
Arduino (アルドゥイーノ)
¥4,780 (2024/04/14 12:16:59時点 Amazon調べ-詳細)

時刻同期とは?

Webサイトを構成するサーバやパソコン、スマートフォンなどでも内部に時刻を持っていますよね。インターネットに接続する各機器で内部に持っている時刻がずれていたら、正確な処理や履歴が残せないといったことが起こります。

そこでインターネットには、標準時刻の提供サービスを行う場所があります。それがNTPサーバです。スマートフォンやパソコンでもNTPサーバを使って時刻同期することができます。

また、一度時刻同期を行っても機器内部の時刻をカウントしているクロックの微細なずれが積み重なって時刻がずれていきますので定期的な時刻同期が必要です。

日本国内の環境にて時刻同期をする際に使用できるNTPサーバは以下のものがあります。

  • 独立行政法人情報通信研究機構(NICT)
    NTPサーバー:ntp.nict.jp
  • MFEED時刻情報提供サービス
    NTPサーバ:ntp.jst.mfeed.ad.jp

今回は、「MFEED」の公開NTPサーバーを使用したいと思います。

Arduino UNO R4 WiFiの時刻を同期させよう!

それでは早速、時刻同期のプログラムを記述していきます。

Wi-Fiアクセスポイントへの接続後、「MFEED」の公開NTPサーバーとの時刻同期を行います。

この手順を行う際には、事前に「Arduino UNO R4 WiFi」に対して、Arduino IDEで書き込みができるようにする必要があります。

「Arduino UNO R4 WiFi」のはじめかたについては、次の記事を参照してください。
関連記事

すけろく ついに、Arduino UNO R4 を手に入れたぞ! げんろく Arduinoをこれから使ってみる人には良いモデルだな。 しかもWi-Fiモジュールがついているので、 これ一台でできるこ[…]

時刻管理用ライブラリの追加

今回は、以下のライブラリを追加します。

このライブラリは、NTPサーバと同期するために使用します。

使用する情報 設定値(バージョン)
ライブラリ名 NTPClient (3.2.1)

ライブラリのインストール手順については、次の記事を参考にしてください!

関連記事

「Arduino IDE」では、使用する機能やセンサー、ボードを使用するプログラムで使用できる有効なライブラリが公開されています。 ライブラリを使用すると、効率的かつ品質を確保したプログラミングが可能です。 この記事では、Ar[…]

時刻同期プログラム

Arduino IDEを起動して、「ファイル」メニューから「新規ファイル」を選択し、表示されるスケッチに以下のように記述します。

 Arduino IDE スケッチ例

 Arduino UNO R4 WiFi への書き込み

書き込み

  1. Arduino UNO R4 WiFiをパソコンにUSB接続します。
  2.  Arduino IDEで前述のプログラムを記載して、 「ファイル」メニューから「名前を付けて保存」で任意の名前を付けて保存します。
  3. 「ツール」メニューから「ボード」情報を確認し、次のものを選択します。
    「Arduino UNO R4 Boards」-「Arduino UNO R4 WiFi」
  4. 「シリアルポート」にマイコンを接続したCOMポートが指定されているかも確認します。
    COMポートが正常に認識されている場合、COMポート名の右側に「Arduino UNO R4 WiFi」と表示されます。
  5. 「ツール」メニューから「シリアルモニタ」を選択してシリアルモニタを起動します。(転送速度は「115200」です)
  6. 「スケッチ」メニューから「マイコンボードに書き込む」を選択します。

プログラム実行結果

シリアルモニタ上に以下の通り表示されれば成功です。

Please upgrade the firmware
Attempting to connect to WPA SSID: YourSSID
You're connected to the networkSSID: Password
BSSID: xx:xx:xx:xx:xx:xx
signal strength (RSSI):-41
Encryption Type:2

IP Address: xxx.xxx.xxx.xxx
MAC address: xx:xx:xx:xx:xx:xx

Starting connection to server...
Unix time = 1710166276
The RTC was just set to: 2024-03-11T14:11:16
Disconnect from WiFi

WiFi disconnected
Current time: 2024-02-11 14:11:16
Current time: 2024-02-11 14:11:17
Current time: 2024-02-11 14:11:18
....(1秒おきに時刻を表示)

編集後記

さて、これでWi-Fiアクセスポイントに接続して、時刻同期を行うことができました。

時刻をきちんと設定できると、動作ログや、センサー値の表示などの際に有用です。

Arduino UNO R4 WiFi」は、Arduino IDEでプログラムで比較的容易にプログラミングできますね。

 

今回の記事は以上になります。

最後までご覧いただき、ありがとうございました。

記事内でご紹介した「Arduino UNO R4 WiFi」はこちら!

created by Rinker
Arduino (アルドゥイーノ)
¥4,780 (2024/04/14 12:16:59時点 Amazon調べ-詳細)


「Arduino Uno R4 WiFi」のその他の記事はこちら!

すけろく Arduino UNO R4 WiFでWi-Fi接続することができた。 インターネット上のサービスと連携させたいな。 げんろく それなら、インターネット上のサービスから データを取得する際によく使う形式があるので そこを押さえてからだな。 すけろく いつもの、JSON形式だな! げんろく そのとおり。 今回は、Arduino UNO R4 WiFiでJSON形式データを 取り扱う方法をお […]

すけろく 前回の記事で、Arduino UNO R4 WiFiを使って Wi-Fi接続することができた。 げんろく ああ。インターネットへのアクセスが できるようになったな。 すけろく これで、Arduino UNO R4 WiFiの時刻を 正確に合わせることもできるな! げんろく よし。インターネット上の NTP(時刻提供)サーバと時刻同期してみるか! 今回は記事では、「Arduino UNO […]

すけろく Arduino UNO R4 WiFi はWiFi接続が できるのだよね。 げんろく ああ。ボードに実装されているな。 すけろく 次は、Arduino UNO R4 WiFi の特徴である Wi-Fi接続してみたいな。 げんろく よし、今度はWi-Fi接続してみるか。 今回は記事では、「Arduino UNO R4 WiFi」をArduinoでプログラミングして、Wi-Fi接続してみます […]

すけろく ついに、Arduino UNO R4 WiFiの、LED マトリックスで もっと強いメッセージを出したいぞ! げんろく わかった。 文字列をスクロールして表示させてみるか! この記事では、「Arduino UNO R4 WiFi」に搭載されているLEDマトリックスを使って、文字列をスクロールさせてみます。 「Arduino UNO R4 WiFi」は、「Wi-Fi」機能が開発ボード上に実 […]

すけろく ついに、Arduino UNO R4 WiFiには、LED マトリックスが 搭載されているぞ! げんろく しかもArduinoで表示するイメージやアニメーションの フレーム構成を作ることができるツールもある! すけろく LEDマトリックス。挑戦したいぞ! げんろく よし、まずは第一弾として簡単なアニメーションを LEDマトリックスで表示させてみよう! この記事では、「Arduino UN […]

すけろく ついに、Arduino UNO R4 を手に入れたぞ! げんろく Arduinoをこれから使ってみる人には良いモデルだな。 しかもWi-Fiモジュールがついているので、 これ一台でできることが一気に増えた。 すけろく これから、いろいろと調べてみたいぞ! げんろく よし、まずはArduino UNO R4 の仕様を確認して Hello Worldをやってみよう! ようやく、国内の技適認証 […]