wyc6745625
接PLC、觸摸屏、C#上位機(jī)組態(tài)監(jiān)控16639500085
級別: 略有小成
|
安裝2樓說的做 |
|
---|---|---|
|
li8110
級別: 工控俠客
|
一個字里邊有16個位,比如WM0。你可以先讀取這個字,然后按二進(jìn)制顯示?這樣就能看到這個字的所有位了。 或者說,就直接按二樓說的,就直接把從M0.0到M1.7的每一個位都分別顯示。 你是用到通訊的功能了嗎?自由口通訊自己寫協(xié)議那種? 還是要控制十六個位的輸入或輸出顯示不同的造型啥的? |
---|---|
|
qq771621929
級別: 正式會員
|
就是modbusRTU通訊,讀的丹佛斯變頻器,1200里面取位很簡單,SMART200還沒用過 |
---|---|
|
li8110
級別: 工控俠客
|
1200我只會打開博圖組態(tài)然后弄個起保停啥的,不知道1200的MODBUS RTU的庫是不是和200SMART一樣。 以下是200SMART說明文檔里邊關(guān)于MBUS_MSG指令里邊的一段解釋。你可以看一下。 參數(shù)“計數(shù)”(Count) 用于分配要在該請求中讀取或?qū)懭氲臄?shù)據(jù)元素數(shù)。對于位數(shù)據(jù)類型,“Count”是位數(shù),對于字?jǐn)?shù)據(jù)類型,則表示字?jǐn)?shù)。 對于地址 0xxxx,“計數(shù)”(Count) 是要讀取或?qū)懭氲奈粩?shù) 對于地址 1xxxx,“計數(shù)”(Count) 是要讀取的位數(shù) 對于地址 3xxxx,“計數(shù)”(Count) 是要讀取的輸入寄存器字?jǐn)?shù) 對于地址 4xxxx 或 4yyyyy,“計數(shù)”(Count) 是要讀取或?qū)懭氲谋3旨拇嫫髯謹(jǐn)?shù) MBUS_MSG/MB_MSG2 指令最多讀取或?qū)懭?120 個字或 1920 個位(240 個字節(jié)的數(shù)據(jù))。Count 的實際限值取決于 Modbus 從站設(shè)備的限制。 參數(shù) DataPtr 是間接地址指針,指向 CPU 中與讀/寫請求相關(guān)的數(shù)據(jù)的 V 存儲器。對于讀請求,將 DataPtr 設(shè)置為用于存儲從 Modbus 從站讀取的數(shù)據(jù)的第一個 CPU 存儲單元。對于寫請求,將 DataPtr 設(shè)置為要發(fā)送到 Modbus 從站的數(shù)據(jù)的第一個 CPU 存儲單元。 程序?qū)?DataPtr 值以間接地址指針的形式傳遞到 MBUS_MSG/MB_MSG2。例如,如果要寫入到 Modbus 從站設(shè)備的數(shù)據(jù)始于 CPU 的地址 VW200,則 DataPtr 的值將為 &VB200(地址 VB200)。指針必須始終是 VB 類型,即使它們指向字?jǐn)?shù)據(jù)。 DataPtr 這個指針指向的存儲空間就是“字”。你可以監(jiān)控一下。比如你在 DataPtr 這個管腳填寫的是&VB200,那你就在狀態(tài)圖表里監(jiān)控VW200,這個就是你讀取到的字。然后你想讀取哪個位就分開監(jiān)控哪個位唄。V200.0,V200.1,V200.2等等。 |
---|---|
|