西門子S7-200SMAT Modbus RTU
用485設(shè)置一個溫控器的值,我用串口調(diào)試軟件可以設(shè)置如圖2101,用S7-200SMAT Modbus RTU指令溫控器沒有反應(yīng)如圖2102,圖2103功能號一直是16我怎么改成6
問題補(bǔ)充:
這是一個寫溫控器的設(shè)定值,站號01,功能碼06.地址00 02.后面的是數(shù)據(jù),我用調(diào)試軟件可以寫。PLC VB1002是功能碼值是16,我怎么讓他和06功能碼對應(yīng)
圖片說明:
1、第一張圖中的值你是不能動的,那是MODBUS 的庫存儲區(qū),是由庫指令使用的。
2、
06H 功能碼寫單個寄存器指令,根據(jù)中間那張圖,
01 06 00 02 00 2F 69 D6
第1個字節(jié) 從站地址 1;
第2個字節(jié) 功能碼 06;
第3、4 個字節(jié),保持寄存器地址 0002,換算成十進(jìn)制再加上1,最后變成保持寄存器地址則為 40003
第5、6個字節(jié),CRC 校碼碼
這個對應(yīng)主站指令,第3張圖,則MBUS_MSG 的主要管腳為
Slave: 1
RW: 1 讀寫請求:0 = 讀, 1 = 寫
Addr: 40003
Count: 1 數(shù)據(jù)個數(shù),就是因為你這里寫的是 2 ,所在你看到功能碼是 16,16是寫多個保持寄存器的意思。
DataPtr: 你寫的是 &VB500,那就將 16#002F 傳送到 VW500 中
CRC 校驗碼由指令自動產(chǎn)生,不需要你管,只要填好管腳就可以了。
3、
S7-200 SMART Modbus RTU通信常見問題
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/SmartSMS/020.html