【阿里雲IoT+YF3300】9.快速開發modbus設備驅動


       Modbus是一種串行通信協議,是莫迪康公司為PLC(編程邏輯控制器)通信而設計的協議。Modbus目前已經成為工業領域通信協議的業界標准,大部分的儀器儀表都支持該通信協議。很早以前就開發過基於Modbus協議的各種驅動,在2007年的時候還曾寫了一篇《我的Modbus Slave/Client開發歷程》的博客文章

       YFIOs就是YFSoft I/O Server的簡稱,是一款物聯網時代的輕量級嵌入式組態系統。支持策略和驅動二次開發,不過常規策略和驅動開發有些繁瑣,由於大部分物聯網設備都支持modbus協議,所以提供給一款快速開發的modbus驅動的工具,還是非常必要的。

    本篇文章將介紹一款基於modbus協議的溫濕度模塊的快速驅動開發過程。

    打開“YFIOsIDE”程序,啟動后,單擊“文件”主菜單下面的“modbus驅動開發向導”。

 

    查溫濕度傳感器的說明書我們可以知道,溫度和濕度在modbus寄存器的偏移地址是0140000區),我們把標識符分別設置為T”和“H”。看說明書我們可知,直接讀取的值還不是溫度和濕度,還需要除以10,所以我們配置一下運算表達式為$Value/10.0”,其中$Value就是我們直接從指定地址區讀到的原生值。

       驅動名稱和制造商等信息,可以根據實際進行填寫就行,我們這里采用默認值。設備地址和串口參數,可以設置為該設備的默認參數。

     參數配置好后,我們單擊“編譯”按鈕進行驅動文件編譯,為了讓YFIOs管理程序方便加載我們新編譯的驅動,我們選擇目錄為YFIOsManager程序下的Driver”目錄。

 

    編譯成功后,我們發現在指定的目錄出現一個dllpe文件,文件名就是我們配置的“驅動名稱”。

 

       我們打開YFIOsManager程序,單擊“驅動列表”項,可以看到我們剛剛編譯的驅動。

         好,我們測試一下剛剛編譯好的驅動,看看是否能正常工作。我們添加一個用戶驅動,選擇我們剛剛創建好的驅動。

       YF3300RS485COM2。配置好后,數據配置里面就會自動出來對應的變量來,如下圖所示:

     我們讓YF3300接一個溫濕度模塊,把相關的組態配置部署到YF3300中去。

       YF3300采購鏈接(最后一個顏色分類是YF3300網關):

https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-10400358307.7.82854d48viZm7V&id=42910631014  

    部署運行后,我們在“數據監控”中看到溫濕度已經可以正常讀取了。

    從以上可以看成,只要知道對應的屬性地址,我們可以非常迅速的開發出一款比較實用的設備驅動。另外驅動的配置可以導出為xml文件,后續可以根據需要進行修改和擴展。如果要實現的驅動比較復雜,還可以導出為Visual Studio C#項目,可以更為自由的實現對應的驅動了。

    單擊“導出為C#工程”,選定好要導出的目錄,然后就可以到一個完整的C#驅動程序了(一個驅動接口工程,一個驅動pe工程)。

 

想體驗阿里雲IoT平台的網友,可以單擊如下鏈接https://dev.iot.aliyun.com/sale?source=deveco_partner_yefan

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM