如何使用Waveshare ESP32-P4高性能開發(fā)板連接Modbus RTU
Modbus RTU與Waveshare ESP32-P4高性能開發(fā)板和RS485 HAT樹莓派。pressif發(fā)布了ESP32-P4,這是一款新的強大雙核RISC處理器,時鐘速度為400 MHz。在本教程中,我將向您展示如何使用Waveshare ESP32-P4高性能開發(fā)板連接Modbus RTU。
硬件
在本教程中,我選擇了來自Waveshare的ESP32-P4高性能開發(fā)板,因為該開發(fā)板是按照眾所周知的樹莓派的外形設(shè)計的。這意味著樹莓派的現(xiàn)有hat也可以與ESP32-P4一起使用。MODBUS RTU連接需要RS485接口,本例中為Zihatec的樹莓派提供RS422/RS485 HAT。
跳線設(shè)置
RS485 HAT可以跳接到樹莓派上的各種uart。ESP32-P4也有5個uart,可以根據(jù)需要路由到各種gpio。
在Waveshare的ESP32-P4板上,ESP32-P4的UART0連接到擴展頭的8和10引腳(在Raspberry Pi的GPIO14和15 - UART0上)。但與此同時,這些引腳還在板上連接UART-USB橋接進行編程調(diào)試,使這些引腳無法使用。相反,我們可以為樹莓派的其他uart使用替代引腳:
我們現(xiàn)在可以在U3、U4或U5處設(shè)置兩個跳線(然后必須在軟件中啟用引腳路由的相應(yīng)線路-見下文)。
我們不需要額外的跳線用于自動發(fā)送/接收開關(guān)RE0/3。
撥碼開關(guān)設(shè)置
HAT可以通過3個撥碼開關(guān)設(shè)置為不同的配置。我們在實驗中使用以下設(shè)置:
S1:開-開-關(guān)
S2:關(guān)-關(guān)-開-開
開-關(guān)-開-開
網(wǎng)絡(luò)通訊協(xié)議設(shè)置
對于我們的實驗,我們自然需要另一個MODBUS設(shè)備來進行通信。在這個測試中,我使用了一個MODBUS中繼箱,同樣來自Waveshare。
HAT上的連接A和B與另一臺設(shè)備上的連接A和B簡單相連。
軟件
首先,必須在ESP32下的Arduino IDE中選擇正確的板“ESP32- p4 Dev Module”。
在測試程序中,第60至62行,用于初始化UART的對應(yīng)行現(xiàn)在必須根據(jù)跳線設(shè)置啟用:
測試程序使用Vishnu Mohanan (CIRCUITSTATE Electronics LLP)的RS485庫和MODBUS庫。
程序?qū)⑺B接的繼電器箱的繼電器一個接一個地接通和斷開。
本文編譯自hackster.io