首頁 解決方案 使用 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 會從第一頁切換至第二頁;當 Smart Display 顯示第二頁時,再次按下實體按鈕,即可切換回第一頁。

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 Dongle
  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

 

本示範使用兩個頁面,因此需新增第二個頁面。點選「Page」,再點選「+」新增第二個頁面。

在 GUI Builder 中設計專案 - 3

 

背景樣式可在 Resource 區域中進行設定。

在 GUI Builder 中設計專案 - 4

 

接著,可在「Page」區域中為各頁面選擇所需的背景。

在 GUI Builder 中設計專案 - 5

建立並上傳專案

 

完成兩個頁面的設計後,即可進行連線設定並將專案上傳至 Smart Display。先切換至「Page Info」頁面,點選「Device」,再選擇「Device Property」。在 Device Config Window 中,確認通訊協定設定為「ModbusRTU (RS485)」,選擇對應的 COM 埠,並將傳輸速率(Baud Rate)設定為與 Smart Display 相同。點選「OK」套用設定後,再點選「Connect to Device」。Smart Display 連線完成後,點選「Upload The Project」將專案上傳至裝置。

建立並上傳專案 - 1

 

專案上傳完成後,點選「OK」。

建立並上傳專案 - 2

 

上傳完成後,Smart Display 會顯示開機畫面。

建立並上傳專案 - 3

 

接著,Smart Display 會由開機畫面切換至第一頁,表示專案已成功上傳。

建立並上傳專案 - 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 顯示第一頁時,LED 熄滅;按下實體按鈕切換至第二頁後,LED 亮起,如下圖所示。

使用實體按鈕切換 Smart Display 頁面

 

上述 Arduino 程式可由 GitHub 下載,並可參考其中內容了解此示範專案的更多詳細資訊。下圖為本範例的實際硬體接線。關於示範中使用的 Arduino Modbus RS485 擴充板,請參考 相關技術文件

Arduino 與 Smart Display Modbus RS485 硬體接線

結語

本範例示範如何使用 Arduino Mega 2560 作為主機,透過 Modbus RS485 控制 Smart Display 的頁面切換。透過 GUI Builder 建立顯示頁面並完成相關設定後,Arduino 主機即可根據實體按鈕的輸入,在兩個頁面之間進行切換。

透過此範例,開發人員可以了解 Arduino 主機與 Smart Display 之間的基本 Modbus 通訊與控制方式,並作為後續開發 Smart Display 主機控制應用的參考。

對顯示器解決方案有疑問?您想做的,由我們實現。 聯絡我們!

訂閱

接收最新顯示器技術知識與新品消息

聯絡我們

價格/規格書/一般查詢

技術支援

聯繫我們詢問技術內容

go top
聯絡我們
close

我們重視您的隱私

通過點擊「允許所有 Cookie」,代表您同意在您的設備上存儲 Cookie 以增強網站瀏覽體驗、分析網站使用情況並協助我們的行銷和網站效能優化工作。您可以在我們的隱私權政策中找到有關於此的更多資訊。

我們重視您的隱私

Winstar 及部分第三方在 www.winstar.com.tw 上使用 cookies。關於 cookie 的種類、用途及相關第三方的詳細資訊,請參見下文及我們的《Cookie 政策》。請點擊「允許全部」來同意我們使用 cookies,以確保您在我們網站上獲得最佳體驗。您也可以設置您的偏好或拒絕 cookies(必要的 cookies 除外)。

管理同意聲明

永久啟用
必要的 Cookie

這些 Cookie 是必不可少的,以便讓您在瀏覽網站並使用其功能上有更好地體驗,例如設置您的隱私偏好、登錄或填寫表單。

分析 Cookie

這些也被稱為「統計cookie」,用於收集您使用網站的資訊,例如您訪問了哪些頁面以及點擊了哪些連結。查看詳細資訊