ホーム ソリューション ArduinoとModbus RS485を使用したSmart Displayの画面切り替え制御

ArduinoとModbus RS485を使用したSmart Displayの画面切り替え制御

September 26,2023

イントロダクション

本例では、Arduinoボードを使用し、Modbus RS485経由で標準3.5インチSmart Displayモジュールの画面を切り替える方法を紹介します。ホストコントローラにはArduino Mega 2560を使用し、Modbus RS485シールド、物理ボタン、LEDを接続します。

このデモでは、物理ボタンを押すとSmart Displayの画面が1ページ目から2ページ目に切り替わり、もう一度ボタンを押すと1ページ目に戻ります。

Arduino Modbus RS485 Smart Display システム構成図

システム構成図

必要な構成部品

  1. 3.5インチ Modbus Smart Display
  2. Arduino Mega 2560
  3. Arduino Mega 2560用 Modbus RS485シールド
  4. Arduino IDE v2.0.4
  5. Modbus RS485ドングル
  6. 物理ボタン
  7. GUI Builder v0.4.2以降
  8. LED
 

デモの流れ

  1. GUI Builderでプロジェクトを設計
  2. プロジェクトをビルドしてアップロード
  3. Arduinoホストプログラムを作成
 

GUI Builderでプロジェクトを設計

まず、GUI Builderで新規プロジェクトを作成し、プロジェクト名を入力します。"Device Type"で3.5インチTFTデバイスを選択し、"Protocol"で"ModbusRTU (RS485)"を選択して、画面の向きをLandscapeに設定します。次に、"UI Template"でBlankを選択し、"Create"をクリックしてプロジェクトを作成します。

GUI Builderでプロジェクトを設計 - 1

 

プロジェクトを作成すると、GUI Builderに初期ページが表示されます。

GUI Builderでプロジェクトを設計 - 2

 

このデモでは2つのページを使用します。"Page"をクリックし、続いて"+"をクリックして2ページ目を追加します。

GUI Builderでプロジェクトを設計 - 3

 

背景スタイルはResourceセクションで管理できます。

GUI Builderでプロジェクトを設計 - 4

 

その後、"Page"セクションで各ページに使用する背景を選択できます。

GUI Builderでプロジェクトを設計 - 5

プロジェクトのビルドとアップロード

2つのページの設計が完了したら、接続設定を行い、プロジェクトをSmart Displayにアップロードします。まず、"Page Info"ページに切り替え、"Device"をクリックして"Device Property"を選択します。Device Config Windowで、プロトコルが"ModbusRTU (RS485)"に設定されていることを確認し、適切なCOMポートを選択して、ボーレートをSmart Displayと同じ値に設定します。"OK"をクリックして設定を適用した後、"Connect to Device"をクリックします。Smart Displayとの接続が完了したら、"Upload The Project"をクリックしてプロジェクトをアップロードします。

プロジェクトのビルドとアップロード - 1

 

プロジェクトのアップロードが完了したら、"OK"をクリックします。

プロジェクトのビルドとアップロード - 2

 

アップロードが完了すると、Smart Displayに起動画面が表示されます。

プロジェクトのビルドとアップロード - 3

 

続いて、Smart Displayが起動画面から1ページ目に切り替わり、プロジェクトが正常にアップロードされたことを確認できます。

プロジェクトのビルドとアップロード - 4

Arduinoホストプログラムの作成

Modbusを使用してホストとSmart Displayを接続する場合、プログラム内で正しいレジスタアドレスを使用することが重要です。ホストとSmart Display間のRS485通信について詳しく確認するには、GUI Builderの通信ログを参照してください。下図は、本例のArduino IDEプログラムで必要となるレジスタアドレスの定義を示しています。

Arduinoホストプログラムの作成 - 1

 

次に、各ピンのモードおよび物理ボタンやLEDなどの外部部品を設定し、シリアル通信のボーレートを設定します。

Arduinoホストプログラムの作成 - 2

 

下図は、Arduinoホストが物理ボタンの入力変化を検出し、対応する値をModbus通信経由でSmart Displayに送信して、表示ページを切り替える処理を示しています。

Arduinoホストプログラムの作成 - 3

 

Arduino IDEでプログラムの検証とアップロードが完了すると、物理ボタンを使用してSmart Displayのページを切り替えることができます。Smart Displayに1ページ目が表示されているときはLEDが消灯し、物理ボタンを押して2ページ目に切り替えるとLEDが点灯します。

物理ボタンによるSmart Displayのページ切り替え

 

ArduinoプログラムはGitHubから入手でき、このデモプロジェクトの詳細も確認できます。実際のハードウェア構成を下図に示します。このデモで使用しているModbus RS485シールドの詳細については、技術資料を参照してください。

ArduinoとSmart DisplayのModbus RS485ハードウェア構成

まとめ

本例では、Arduino Mega 2560をホストコントローラとして使用し、Modbus RS485経由でSmart Displayのページを切り替える方法を紹介しました。GUI Builderで表示ページを作成し、必要な設定を完了すると、Arduinoホストは物理ボタンからの入力に応じて2つのページを切り替えることができます。

本例を通じて、ArduinoホストとSmart Display間のModbus通信および制御の基本を理解でき、ホストからSmart Displayを制御するアプリケーションを開発する際の参考として活用できます。

ディスプレイ ソリューションについてのご質問はあるのでしょうか。 お問合わせ!

配信申し込み

Winstar からの最新情報を受け取ります。

お問合わせ

価格/データシート/一般的なお問合せ

技術的なサポート

技術情報についてはお問合せください。

go top
お問合わせ
close

私たちはあなたのプライバシーを大切にします

「すべてのクッキーを許可」をクリックすると、サイトのナビゲーションを向上させ、サイト使用状況を分析し、マーケティングおよびパフォーマンスの取り組みを支援するために、クッキーをデバイスに保存することに同意したことになります。この件に関する詳細情報は、ポリシーをご覧ください。プライバシーポリシー

私たちはあなたのプライバシーを大切にします

Winstarおよび特定の第三者は、www.winstar.com.twでクッキーを使用しています。クッキーの種類、目的、および関与する第三者に関する詳細は、以下および当社のクッキーポリシーに記載されています。「すべて許可」をクリックして、当社のクッキー使用に同意し、ウェブサイトでの最良の体験を得てください。また、設定を変更するか、必要なクッキーを除きクッキーを拒否することもできます。

同意設定の管理

常にアクティブ
必須なクッキー

これらのクッキーは、ウェブサイト内を移動したり、プライバシーの設定、ログイン、フォームの記入などの機能を使用できるようにするために不可欠です。

分析用クッキー

「統計クッキー」とも呼ばれるこれらのクッキーは、ウェブサイトの使用方法に関する情報を収集します。たとえば、どのページを訪れ、どのリンクをクリックしたかなどです。詳細を確認してください。