一、產(chǎn)品功能
TP5404作為分布式IO的子模塊,需要搭配適配器使用,如Profinet的TP8001,通過在組態(tài)里配置串口和寄存器地址等信息之后,可以將Modbus寄存器的輸入和輸出映射到PLC的QW和IW中,不用在PLC程序中編寫協(xié)議來操作。
二、接線方法
左側(cè)4個(gè)端子皆為RS485的A端,右側(cè)4個(gè)端子皆為RS485的B端,內(nèi)部互通。
三、PLC組態(tài)
3.1配置485參數(shù)
- Baudrate:從站設(shè)備波特率,接到同一個(gè)模塊上的RS485從站,串口配置需要相同,4個(gè)通道共用串口配置
- Parity:串口校驗(yàn)等配置
- Wait time:寄存器指令等待時(shí)間,每個(gè)寄存器讀取所需時(shí)間,單位ms,如配置成100,則每個(gè)寄存器操作需要100ms,如果配置了5個(gè)寄存器,則輪詢時(shí)間為500ms,如果配置了10個(gè)寄存器,則讀取時(shí)間為1s。
- Stop or offline output value:適配器與PLC斷開連接,或者PLC處于Stop狀態(tài)時(shí),輸出寄存器的操作,可以選擇讓該寄存器輸出值保持上一個(gè)狀態(tài),也可以選擇將替代值寫入該寄存器,替代值再對(duì)應(yīng)通道中配置。
- Error or timeout input value:當(dāng)輸入寄存器沒有返回正確指令的情況下,傳給PLC的值可以選擇一直使用上一個(gè)值,也可以選擇在連續(xù)多次讀不到的情況下,用替代值,如選擇10 time set 65535,則連續(xù)10次沒有讀到寄存器的值時(shí),傳給PLC數(shù)值為65535,在PLC程序中,將65535這個(gè)數(shù)值當(dāng)錯(cuò)通道錯(cuò)誤來判斷。
- Modbus No: RS485從站ID,如果該ID設(shè)置為0,則該通道的所有寄存器都不會(huì)讀取,不會(huì)占用刷新時(shí)間。
- Register Addr input1:第1個(gè)輸入寄存器地址,根據(jù)從站寄存器地址對(duì)應(yīng)表填寫第一個(gè)需要讀的寄存器,如果設(shè)置為65535,則該寄存器不會(huì)讀取,不會(huì)占用刷新時(shí)間。
- Register Addr output1:第1個(gè)輸出寄存器地址,根據(jù)從站寄存器地址對(duì)應(yīng)表填寫第一個(gè)需要寫入的寄存器,如果設(shè)置為65535,則該寄存器不會(huì)寫入,不會(huì)占用刷新時(shí)間。
- Substitute value output1:第一個(gè)輸出寄存器替代值,結(jié)合Stop or offline output value來使用。
3.2數(shù)據(jù)映射
每個(gè)TP5404能映射8個(gè)寄存器的輸入,和8個(gè)寄存器的輸出,配置了Register Addr input1對(duì)應(yīng)的寄存器地址后,TP5404會(huì)循環(huán)讀取該寄存器,并將讀到的數(shù)值放到IW(n+0)中,(n為TP5404輸入起始地址),如下圖所示,輸入的起始地址是10,則第一個(gè)輸入寄存器映射到IW10中,每個(gè)寄存器數(shù)值占2個(gè)字節(jié),所以第二個(gè)輸入寄存器映射到IW(n+2)中,為IW12,依次類推,Register Addr input8,對(duì)應(yīng)寄存器數(shù)值映射到IW(n+14)中,為IW24。
輸出寄存器類似,配置了Register Addr output1后,TP5404會(huì)將QW(n+0)中的數(shù)值寫入到該寄存中,如下圖配置的輸出起始地址為20,則第一個(gè)輸出寄存器映射的數(shù)值為QW20,Register Addr output8映射到QW(n+14),為QW34
示例1:監(jiān)控帶RS485接口的變頻器
Step1:配置變頻器RS485相關(guān)的參數(shù),控制及頻率源選擇由通訊給定,并記錄ID和波特率等參數(shù)。
Step2:找到變頻器控制字和頻率的寄存器對(duì)應(yīng)表。
如該變頻器主要寄存器對(duì)應(yīng)關(guān)系-
寄存器名稱 |
寄存器地址 (16進(jìn)制) |
寄存器地址 (10進(jìn)制) |
寄存器說明 |
控制字 | 2000 | 8192 |
1為正轉(zhuǎn),9為反轉(zhuǎn) 3為停機(jī),4為自由停機(jī) |
頻率給定 | 2001 | 8193 | 給定數(shù)值為 頻率*100 |
狀態(tài)字 | D017 | 53271 | 第1位為啟停狀態(tài) |
實(shí)際頻率 | D000 | 53248 | 監(jiān)視數(shù)值為 頻率*100 |
Step3:配置TP5404組態(tài)參數(shù)
串口參數(shù)配置波特率等參數(shù)配置和變頻器相同,Wait time設(shè)置成100ms(2400以上的波特率100ms足夠,如果波特率為115200,且對(duì)實(shí)時(shí)性要求高,可以設(shè)置為10ms)
變頻器地址為1,則Modbus NO設(shè)置為1
寄存器地址根據(jù)變頻器寄存器地址表配置,填寫十進(jìn)制地址
變頻器類型的設(shè)備,如果PLC或者網(wǎng)絡(luò)出現(xiàn)故障,一般需要它停止運(yùn)行,因此Stop or offline output value:我們選擇了substitution value(替代值),控制字寫入3的時(shí)候是停機(jī),我們將第一個(gè)寄存器的替代值填寫為3(substitute value output1),第二個(gè)寄存器替代值填寫為0,這樣在斷網(wǎng)等情況,變頻器會(huì)自動(dòng)停機(jī)。
Error or timeout input value:將該參數(shù)設(shè)置為10 time set 65535,如果485連續(xù)10次通訊故障,則IWn即IW10會(huì)變成65535,通過判斷此數(shù)值,來確認(rèn)RS485是否通訊正常。
Step4:在線測(cè)試
演示1:控制變頻器啟動(dòng)
給控制字賦值1(正轉(zhuǎn)),頻率輸出2000(20HZ)
可以看到,狀態(tài)的第1位(啟停狀態(tài))由0變成了1,實(shí)際頻率也變成了2000。
控制字賦值3,正常停機(jī)
演示2:RS485斷線故障
將RS485線拆下,則模塊與變頻器通訊故障,狀態(tài)和頻率監(jiān)視值均變?yōu)?5535
演示3:斷網(wǎng)線
先將RS485接回去,并且控制變頻器正轉(zhuǎn)
變頻器正常工作在20HZ
將PLC與適配器之間的網(wǎng)線斷開,變頻器自動(dòng)停機(jī),頻率變?yōu)?。
審核編輯:湯梓紅
-
模塊
+關(guān)注
關(guān)注
7文章
2613瀏覽量
47021 -
寄存器
+關(guān)注
關(guān)注
31文章
5253瀏覽量
119212 -
plc
+關(guān)注
關(guān)注
5001文章
12948瀏覽量
459288 -
Profinet
+關(guān)注
關(guān)注
6文章
1001瀏覽量
23167
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論