CPU模塊6ES7510-1DJ01-0AB0銷售
議題
該主題包含供Modbus主站協(xié)議庫(kù)的用戶使用的信息。Modbus主站協(xié)議庫(kù)的大部分用戶不需要該
信息,不得修改Modbus主站協(xié)議庫(kù)的缺省操作。
重試
如果檢測(cè)到下列其中一個(gè)錯(cuò)誤,則Modbus主站指令將自動(dòng)將請(qǐng)求重新發(fā)送至從站設(shè)備。
□在響應(yīng)超時(shí)時(shí)間(MBUS_CTRL上的Timeout參數(shù))指令內(nèi)沒(méi)有響應(yīng)(錯(cuò)誤代碼3)。
□響應(yīng)字符之間的時(shí)間超出允許的數(shù)值(錯(cuò)誤代碼3)。
□在來(lái)自從站的響應(yīng)中出現(xiàn)奇偶校驗(yàn)錯(cuò)誤(錯(cuò)誤代碼1)。
□在來(lái)自從站的響應(yīng)中出現(xiàn)CRC錯(cuò)誤(錯(cuò)誤代碼8)。
□返回的功能與請(qǐng)求不匹配(錯(cuò)誤代碼7)。
Modbus主站在置位Done和Error■輸出參數(shù)之前將請(qǐng)求重新發(fā)送兩次。
在執(zhí)行了 MBUS—CTRL后,通過(guò)查找Modbus主站符號(hào)表中的符號(hào)mModbusRetries,然后更改該數(shù)
值來(lái)更改重試。mModbusRetries數(shù)值是BYTE類型,范圍為0-250次重試。
字符間隔超時(shí)
如果響應(yīng)中各字符之間的時(shí)間超出的時(shí)間,則Modbus主站將中止來(lái)自從站設(shè)備的響應(yīng)。缺
省時(shí)間設(shè)為100毫秒,這允許Modbus主站協(xié)議通過(guò)有線或電話調(diào)制解調(diào)器與大部分從站設(shè)備一起工
作。如果檢測(cè)到該錯(cuò)誤,則MBUS CTRL Error參數(shù)將被設(shè)為錯(cuò)誤代碼3。
當(dāng)字符間需要較長(zhǎng)時(shí)間時(shí)可能出現(xiàn)該類情況,原因可能是傳輸介質(zhì)(即,電話調(diào)制解調(diào)器)或因?yàn)閺恼?br />設(shè)備本身需要更多的時(shí)間。在執(zhí)行了 MBUS_CTRL后,可通過(guò)查找Modbus主站符號(hào)表中的符號(hào)
mModbusCharTimeout,然后更改該數(shù)值來(lái)超時(shí)。mModbusCharTimeout數(shù)值是INT型,范圍為
1 -30000毫秒。
單個(gè)與多個(gè)位/字寫功能
一些Modbus從站設(shè)備不支持Modbus功能寫單個(gè)離散輸出位(Modbus功能5)或?qū)憜蝹€(gè)保持寄存器
(Modbus功能6)。相反,這些設(shè)備僅寫支持多個(gè)位(Modbus功能15)或?qū)懚鄠€(gè)寄存器(Modbus功能
16)。如果從站設(shè)備不支持單個(gè)位/字Modbus功能,則MBUS_MSG指令將返回錯(cuò)誤代碼101。
Modbus主站協(xié)議允許強(qiáng)制使用MBUS_MSG指令使用多個(gè)位/字Modbus功能,而不使用單個(gè)位/字
Modbus功能。在執(zhí)行了 MBUS—CTRL后,可通過(guò)查找Modbus主站符號(hào)表中的
mModbusForceMulti,然后更改該數(shù)值來(lái)強(qiáng)制使用多個(gè)位/字指令。mModbusForceMulti數(shù)值是
BOOL型數(shù)據(jù)類型,當(dāng)寫人單個(gè)位/寄存器時(shí),應(yīng)設(shè)為1,強(qiáng)制使用多個(gè)位/字功能。
362
使用Modbus協(xié)議庫(kù)
第12章
累加器用法
累加器(ACO、AC1、AC2、AC3)由Modbus主站指令使用并顯示在交叉參考列表中。由Modbus主站
指令保存和恢復(fù)累加器中的數(shù)值。在執(zhí)行Modbus主站指令期間,保留累加器中的所有用戶數(shù)據(jù)。
保持寄存器地址大于9999
Modbus保持寄存器通常位于范圍40001到49999之間。該范圍足以大多數(shù)應(yīng)用的要求,但有些
Modbus從站設(shè)備將數(shù)據(jù)映地址大于9999的保持寄存器中。這些設(shè)備不常規(guī)的Modbus尋址
方案。
Modbus主站指令通過(guò)另一種尋址支持尋址大于9999的保持寄存器。MBUS_MSG指令允許參數(shù)
Addr的一個(gè)附加范圍,用于支持保持寄存器的附加地址范圍。
用于保持寄存器的400001到465536
例如:若要訪問(wèn)保持寄存器16768,MBUS_MSG的Addr參數(shù)必須設(shè)為416768。
擴(kuò)展尋址允許訪問(wèn)Modbus協(xié)議支持的65536的*地址范圍。該擴(kuò)展尋址僅用于保持寄存器。
363
S7-200可編程序控制器手冊(cè)
使用配方
13
STEP 7-Micro/Win中提供了配方向?qū)С绦騺?lái)幫助您組織配方和定義配方。配方存在存儲(chǔ)卡中,
而不是PLC中。
在本章中
概述..................................... 366
配方的定義和術(shù)語(yǔ)............................... 367
使用配方向?qū)?................................ 367
由配方向?qū)?chuàng)建的指令............................. 371
365
S7-200可編程序控制器手冊(cè)
概述
STEP 7-Micro/WIN和S7-200 PLC已經(jīng)支持配方功能。STEP 7-Micro/Win中提供了配方
向?qū)С绦騺?lái)幫助您組織配方和定義配方。
^ 所有配方存在存儲(chǔ)卡中。因此,為了使用配方功能,必須要在PLC中一塊64K或者256K的存儲(chǔ)
卡。要查閱關(guān)于存儲(chǔ)卡的更多信息,參見(jiàn)附錄八。
所有配方存在存儲(chǔ)卡中。但是,當(dāng)用戶程序處理一條配方時(shí),該條配方被讀人PLC的存儲(chǔ)區(qū)。例如:
如果您生產(chǎn)餅干的話,您會(huì)有很多種餅干的配方,巧克力夾心餅干、甜餅干和麥片餅干。但在同一時(shí)
間只能生產(chǎn)一種餅干,因而必須選擇的配方讀人PLC的存儲(chǔ)區(qū)。
圖13-1闡述了一個(gè)使用配方來(lái)生產(chǎn)多種餅干的處理。每一種餅干的配方存在存儲(chǔ)卡中。操作員使
用TD 200C文本顯示器來(lái)選擇所要生產(chǎn)餅干的種類,用戶程序?qū)⑴浞阶x人PLC的存儲(chǔ)區(qū)。
存儲(chǔ)卡
S7-200CPU
TD200C
配方定義:甜甜圈
配方定義:餅干
黃油
白糖
烹調(diào)時(shí)間
1麥片餅干
1甜餅干
1 1巧克力夾心餅干
黃油 白糖 8盎司 6盎司
烹調(diào)時(shí)間 9分鐘
配方
V
7V^F
I 8, 6, ... 9 I
V存儲(chǔ)區(qū)中的餅干緩沖區(qū)
請(qǐng)求配方
Specialty SekctloDS Hjk r your sr 1 v c I l o Press a Key.
■ .1 W i
圖13-1 配方應(yīng)用舉例
366
使用配方
第13章
配方的定義和術(shù)語(yǔ)
為了幫助您理解配方向?qū)?,首先?lái)解釋以下定義和術(shù)語(yǔ)。
□配方結(jié)構(gòu)是由配方向?qū)傻囊惶捉M件。這些組件包括指令子程序、數(shù)據(jù)塊標(biāo)簽和符號(hào)表。
□配方集是指一個(gè)配方的,它們擁有相同的參數(shù)。但是依賴于配方,參數(shù)的數(shù)值各不
相同。
□ 一條配方是一組參數(shù)值,它提供了生產(chǎn)一種產(chǎn)品和控制一個(gè)所需要的信息。
例如:生產(chǎn)多納圈和餅干的配方就分別屬于不同的配方集。而餅干配方集中又包含多種不同的配方。
表13-1中列出了例子中的域和值。
表13-1 配方應(yīng)用舉例-餅干
域名 數(shù)據(jù)類型 巧克力夾心(配方0) 甜餅干 (配方1) 注釋
黃油 Byte 8 8 盎司
白糖 Byte 6 12 盎司
紅糖 Byte 6 0 盎司
雞蛋 Byte 2 1 個(gè)
香草 Byte 1 1 茶匙
面粉 Byte 18 32 盎司
碳酸氫鈉 Real 1.0 0.5 茶匙
發(fā)酵粉 Real 0 1.0 茶匙
鹽 Real 1.0 0.5 茶匙
巧克力夾心 Real 16 0.0 盎司
檸檬皮 Real 0.0 1.0 大湯匙
烹調(diào)時(shí)間 Real 9.0 10.0 分鐘
使用配方向?qū)?br />使用配方向?qū)?lái)創(chuàng)建配方和配方集。配方是存在存儲(chǔ)卡中的。使用配方向?qū)Э梢灾苯虞斎伺浞胶团浞?br />集。如需修改配方,可以再次運(yùn)行配方向?qū)?,或者在用戶程序中調(diào)用RCPx_WRITE指令子程序。
用配方向?qū)?lái)創(chuàng)建配方結(jié)構(gòu)包含以下步驟:
□為每個(gè)配方集建立一個(gè)符號(hào)表。每張表中都包與配方域名相同的符號(hào)名。這些符號(hào)定義了
訪問(wèn)當(dāng)前載人PLC存儲(chǔ)區(qū)的配方值的V存儲(chǔ)區(qū)地址。每張表還包含一個(gè)用于標(biāo)識(shí)每個(gè)配方的符
號(hào)常數(shù)。
□為每個(gè)配方集建立一個(gè)數(shù)據(jù)塊標(biāo)簽。這個(gè)標(biāo)簽定義了符號(hào)表中所描述的V存儲(chǔ)區(qū)的地址的起
始值。
□生成一個(gè)RCPx_READ指令子程序。該指令用于將的配方從存儲(chǔ)卡中讀取到V存儲(chǔ)區(qū)中。
□生成一個(gè)RCPx_WRITE指令子程序。該指令用于將V存儲(chǔ)區(qū)中的配方值寫人存儲(chǔ)卡中。
367
S7-200可編程序控制器手冊(cè)
定義配方
要用配方向?qū)?chuàng)建一個(gè)配方,可在命令菜單中選擇工具 > 配方向?qū)?。這時(shí)屏幕上將出現(xiàn)配方向?qū)Щ?br />本操作的一個(gè)簡(jiǎn)單介紹?!跋乱徊?,開(kāi)始配制您的配方。
要?jiǎng)?chuàng)建一個(gè)配方集,執(zhí)行以下步驟。參見(jiàn)