丹佛斯用Modbus批量讀寫非連續(xù)寄存器的方法-變頻器維修
發(fā)布時間:2019-08-05 10:12:15來源:
丹佛斯用Modbus批量讀寫非連續(xù)寄存器的方法-變頻器維修
在新版本的FC102、FC202、FC300系列產(chǎn)品中,添加了參數(shù)組8-42 PCD寫配置,以及參數(shù)組8-43 PCD讀配置。將要讀寫的內(nèi)容,配置在這兩組參數(shù)中,可以實現(xiàn)批量讀寫非連續(xù)地址的寄存器數(shù)據(jù)。
PCD寫配置格式
地址 | 2810 | 2811 | 2812 | 2813 | 2814 | … | 2873 |
作用 | PCD 0 CTW | PCD1 REF | PCD2 寫 | PCD3 寫 | PCD4 寫 | … 寫 | PCD63 寫 |
參數(shù) | 8-42【0】 | 8-42【1】 | 8-42【2】 | 8-42【3】 | 8-42【4】 | … | 8-42【63】 |
其中PCD0的功能固定為控制字寫入,PCD1的功能固定為參考值的給定,不能更改。
例:參數(shù)3-02,比較小參考值設(shè)置為10HZ;參數(shù)3-41,加速時間設(shè)置為5秒。
由于參數(shù)3-02為32位長度,需要兩個寄存器,參數(shù)8-42【2】設(shè)置為302,參數(shù)8-42【3】設(shè)置為302,使用寄存器2812和2813來寫入數(shù)據(jù)。
由于參數(shù)3-41為32位長度,需要兩個寄存器,參數(shù)8-42【4】設(shè)置為341,參數(shù)8-42【5】設(shè)置為341,使用寄存器2812和2813來寫入數(shù)據(jù)。
注意,采用兩個連續(xù)的寄存器(2N,2N+1)來存儲32位數(shù)據(jù),必須是偶數(shù)位地址在前
Modbus的通訊功能代碼為10,寫入多個寄存器數(shù)值
報文格式如下
Byte1 | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 | Byte7 | Byte7+n | |
站址 | 功能碼 | 字起始地址 | 字的個數(shù) | 字節(jié)數(shù) | 字的值 | CRC16 | ||
01 | 10 | 0AFB | 0004 | 08 | 0000 2710 0000 01F4 | CF A9 |
字起始地址=(2812-1)轉(zhuǎn)換成十六進(jìn)制數(shù)字 0AFB
字的個數(shù),從2812開始寫入4個數(shù)字
字節(jié)數(shù)=字的個數(shù)*2
字的值:3-02轉(zhuǎn)換指數(shù)為0.001HZ,設(shè)置10HZ,則寫入的數(shù)值為10000,十六進(jìn)制為2710,32位數(shù)據(jù)為0000 2710;3-41轉(zhuǎn)換指數(shù)為0.01秒,設(shè)置5秒,則寫入的數(shù)值為5000,十六進(jìn)制為01F4,32位數(shù)據(jù)為0000 01F4;
PCD讀配置
地址 | 2910 | 2911 | 2912 | 2913 | 2914 | … | 2973 |
作用 | PCD 0 STW | PCD1 MAV | PCD2 讀 | PCD3 讀 | PCD4 讀 | … 讀 | PCD63 讀 |
參數(shù) | 8-43【0】 | 8-43【1】 | 8-43【2】 | 8-43【3】 | 8-43【4】 | … | 8-43【63】 |
其中PCD0的功能固定為狀態(tài)字讀取,PCD1的功能固定為實際輸出頻率的讀取。
例:讀取參數(shù)16-30,直流回路電壓,和參數(shù)16-34,散熱片溫度的數(shù)值。
由于參數(shù)16-30為32位長度,需要兩個寄存器,參數(shù)8-43【2】設(shè)置為1630,參數(shù)8-43【3】設(shè)置為1630,使用寄存器2912和2913來讀取數(shù)據(jù)。
參數(shù)16-34為8位長度,參數(shù)8-43【4】設(shè)置為1634,使用寄存器2914來讀取數(shù)據(jù)。
使用Modbus功能碼03,讀取保存寄存器
報文格式如下
站址 | 功能碼 | 字起始地址 | 字個數(shù) | CRC16 |
01 | 03 | 0B 5F | 00 03 | 37 FD |
字起始地址=(2912-1)轉(zhuǎn)換成十六進(jìn)制數(shù)字 0B5F
字的個數(shù),從2912開始讀取3個數(shù)字
正常通信的情況下,返回的信息
站址 | 功能碼 | 字節(jié)數(shù) | 返回信息 | CRC16 |
01 | 03 | 06 | 0000 0132 001D | 41 4F |
0000 0132 轉(zhuǎn)換為十進(jìn)制為 306,直流回路電壓為306V;
001D 轉(zhuǎn)換為十進(jìn)制為29,散熱片的溫度為29度。