在樹莓派3上測試Modbus RTU通訊

libmodbus咱們已經在公衆號和應用筆記中介紹過不少次了,關於他的下載編譯安裝,編譯配置,交叉編譯等,若是不清楚能夠參考以前的公衆號文章微信

Modbus TCP/IP經典例程演示
測試

今日我推薦:libModbus
spa

本文主要涉及Modbus RTU模式的測試。關於Modbus TCP/IP在以前的文章中也推送過,由於樹莓派3的硬件串口和藍牙是公用的,因此在用串口通訊的時候,須要對樹莓派作一些配置和設置。並關掉串口控制檯功能。.net

須要運行sudo raspi-confg 命令配置3d

配置完須要重啓reboot,使得配置生效。orm

修改cmdline.txt 配置文件,  使用vi或者nano 打開文件server

輸入命令sudo nano /boot/cmdline.txtblog

設置  config.txt
get

輸入命令 sudo nano /boot/config.txtcmd

在文件最後一行加入對藍牙的禁止,

全部配置完後,重啓reboot樹莓派。

把電腦經過串口和樹莓派鏈接起來,由於樹莓派引出的GPIO腳串口是TTL電平,因此咱們須要用到TTLRS232若是你的筆記本有RS232串口,那麼就能夠用TTLRS232鏈接你的電腦了,可是如今大多數的筆記本電腦是沒有串口的,因此在加一個RS232USB轉換器鏈接到電腦,注意接線必定要正確,防止損壞樹莓派硬件。以下圖所示

===========================================================下面來測試

測試前須要修改一些源碼,在樹莓派上須要修改一點代碼,由於例程中不是ttyAMA0串口

而後保存,退出編譯

 在電腦上進入libmodbus目錄源碼的tests文件夾下運行

sudo ./unit-test-server rtu

在樹莓派上運行sudo ./unit-test-client rtu

注意必定要帶上參數rtu,並且是小寫,由於若是不帶參數的話,默認是測試modbus TCP/IP


能夠看到對不少的功能碼都進行了測試,像01,02,03,04,05 06,10等等。最後能夠看到all tests passwith success.證實咱們的MODBUS RTU測試徹底能經過,其中還對一些異常碼進行了測試,有興趣的能夠看看這些源碼。至此咱們對libmodbus 協議棧的 MODBUS RTU模式測試就算完成,加上以前公衆號推送的MODBUSTCP/IP至此咱們對libmodbus 下的 RTUTCP都介紹完成,在這個基礎上你們就能夠修改例程,實現本身的功能,例如能夠用樹莓派作爲客戶端,鏈接一些設備,例如能夠用樹莓派的串口跟一些帶有串口的控制器設備經過mdobus RTU通訊,而後樹莓派能夠經過Modbus TCP/IP連入互聯網,實現了一個網關功能。

本文分享自微信公衆號 - 嵌入式程序猿(InterruptISR)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索