6ES7132-6GD51-0BA0
當(dāng)寫入離散輸出數(shù)據(jù)類型(線圈)時(shí),用戶負(fù)責(zé)在通過(guò)DataPtr將數(shù)據(jù)傳遞到MBUS_MSG指令之前,,將 位組合字節(jié)內(nèi)的正確位位置,。
在發(fā)送請(qǐng)求和接收響應(yīng)期間,Done輸出關(guān)閉,。當(dāng)響應(yīng)完成,,或MBUS_MSG指令因出錯(cuò)而中止時(shí),
Donw輸出接通,。
只有在Done輸出接通時(shí),,Error輸出才有效。請(qǐng)參見由MBUS_MSG指令返回的Modbus主站
MBUS_MSG執(zhí)行錯(cuò)誤,。
低編號(hào)的錯(cuò)誤代碼(1- 8)是由MBUS_MSG指令檢測(cè)的錯(cuò)誤,。這些錯(cuò)誤代碼通常指示MBUS_MSG指令的輸入?yún)?shù)錯(cuò)誤,或從從站接收響應(yīng)錯(cuò)誤,。奇偶校驗(yàn)和CRC錯(cuò)誤指示存在響應(yīng),,但數(shù)據(jù)沒(méi)有正確接收。這通常由電氣故障引起,例如連接不良或電氣噪聲,。
高編號(hào)的錯(cuò)誤代碼(從101開始)是由Modbus從站設(shè)備返回的錯(cuò)誤,。這些錯(cuò)誤指示從站不支持所請(qǐng)求的 功能,或Modbus從站設(shè)備不支持所請(qǐng)求的地址(數(shù)據(jù)類型或地址范圍),。
表12- 11 Modbus主站MBUS_MSG執(zhí)行錯(cuò)誤代碼
錯(cuò)誤代碼 | 描述 |
0 | 無(wú)錯(cuò) |
1 | 響應(yīng)中的奇偶校驗(yàn)錯(cuò)誤:只有在使用偶校驗(yàn)或奇校驗(yàn)時(shí)才可能發(fā)生此類錯(cuò)誤,。傳輸受 到,可能接收錯(cuò)誤的數(shù)據(jù),。該錯(cuò)誤通常由電氣故障引起,,例如接線錯(cuò)誤或影響通 訊的電氣噪聲。 |
2 | 不用 |
3 | 接收超時(shí):在Timeout時(shí)間內(nèi)沒(méi)有來(lái)自從站的響應(yīng),。一些可能的原因是到從站設(shè)備的電 氣連接不良,,主站和從站設(shè)為一種不同的波特率/奇偶校驗(yàn)設(shè)置以及錯(cuò)誤的從站地址。 |
4 | 請(qǐng)求參數(shù)出錯(cuò):一個(gè)或多個(gè)輸入?yún)?shù)(Sle,、RW,、Addr或Count)被設(shè)為非法數(shù)值。查 看輸入?yún)?shù)允許數(shù)值的文檔,。 |
5 | Modbus主站未啟用:在每次掃描時(shí)在調(diào)用MBUS_MSG之前調(diào)用MBUS_CTRL,。 |
表12- 11 Modbus主站MBUS_MSG執(zhí)行錯(cuò)誤代碼
錯(cuò)誤代碼 | 描述 |
6 | Modbus正忙于處理另一個(gè)請(qǐng)求:一次只有一個(gè)MBUS_MSG指令處于活動(dòng)狀態(tài)。 |
7 | 響應(yīng)出錯(cuò):所接收的響應(yīng)與請(qǐng)求不*,。這表示從站設(shè)備出現(xiàn)某些故障或錯(cuò)誤的從站 設(shè)備對(duì)請(qǐng)求進(jìn)行了響應(yīng),。 |
8 | 響應(yīng)中的CRC錯(cuò)誤:傳輸受到,可能接收到錯(cuò)誤的數(shù)據(jù),。該錯(cuò)誤通常由電氣故障 引起,,例如接線錯(cuò)誤或影響通訊的電氣噪聲。 |
101 | 從站不支持該地址的請(qǐng)求功能:請(qǐng)參見“使用Modbus主站指令”幫助主題中的所要求 的Modbus從站功能支持表,。 |
102 | 從站不支持?jǐn)?shù)據(jù)地址:Addr和Count所請(qǐng)求的地址范圍超出從站的允許地址范圍,。 |
103 | 從站不支持?jǐn)?shù)據(jù)類型:從站設(shè)備不支持Addr類型。 |
105 | 從站接受消息,,但響應(yīng)被:這是MBUS_MSG錯(cuò)誤,,用戶程序應(yīng)稍后重新發(fā)送 請(qǐng)求。 |
106 | 從站接受消息,,但響應(yīng)被:這是MBUS_MSG錯(cuò)誤,,用戶程序應(yīng)稍后重新發(fā)送請(qǐng) 求。從站忙碌,,拒絕消息:可以重新嘗試同一個(gè)請(qǐng)求來(lái)獲取響應(yīng),。 |
107 | 由于某種未知原因,從站拒絕消息 |
108 | 從站存儲(chǔ)器奇偶校驗(yàn)錯(cuò)誤:從站設(shè)備出錯(cuò),。 |
程序?qū)嵗?/span>
該實(shí)例程序顯示每當(dāng)輸入I0.0接通時(shí),,如何使用Modbus主站指令向Modbus從站寫或從Modbus從站
讀4個(gè)保持寄存器,。
S7- 200 CPU將從VW100開始的4個(gè)字寫入Modbus從站。數(shù)據(jù)將寫入從站中從地址40001開始的4
個(gè)保持寄存器,。
然后,,S7- 200 CPU將從Modbus從站讀4個(gè)保持寄存器。數(shù)據(jù)來(lái)自保持寄存器40010- 40013,,并將放到S7- 200 CPU中從VW200開始的V存儲(chǔ)器中,。
S7-200 CPU
存儲(chǔ)器
.... |
VW100 |
VW102 |
VW104 |
VW106 |
.... |
.... |
VW200 |
VW202 |
VW204 |
VW206 |
.... |
圖12- 3 數(shù)據(jù)傳送實(shí)例程序
Modbus從站保持寄存器
.... |
40001 |
40002 |
40003 |
40004 |
.... |
.... |
40010 |
40011 |
40012 |
40013 |
.... |
Modbus主站協(xié)議編程示例 |
如果從MBUS_MSG指令返回一個(gè)錯(cuò)誤,則程序?qū)⒔油ㄝ敵?/span>Q0.1和Q0.2,。 |
| Network 1 //通過(guò)在每次掃描時(shí)調(diào)用MBUS_CTRL //初始化和 //Modbus主站。 //Modbus主站設(shè)為9600波特,, //無(wú)奇偶校驗(yàn),。從站允許1000 //毫秒(1秒)內(nèi)進(jìn)行響應(yīng)。 Network 2 //在次掃描時(shí),,復(fù)位用于 //兩個(gè)MBUS_MSG指令的 //啟用標(biāo)記(M2.0和M2.1),。 Network 3 //當(dāng)I0.0從OFF變?yōu)?/span>ON時(shí), //設(shè)置個(gè)MBUS_MSG //指令(M2.0)的啟用標(biāo)記,。 Network 4 //當(dāng)個(gè)啟用標(biāo)記(M2.0)為ON時(shí),,調(diào)用 //MBUS_MSG指令。 //只需為啟用該指令的 //次掃描設(shè)置First參數(shù),。 //該指令將(RW = 1) 4個(gè)保持寄存器 //寫入從站2,。從CPU的 //VB100 VB107 (4個(gè)字)獲取寫數(shù)據(jù), //然后寫入到 //Modbus從站的地址 //40001 - 40004 ,。 Network 5 //當(dāng)個(gè)MBUS_MSG指令完成時(shí) //(Done從0變?yōu)?/span>1),,清除個(gè) //MBUS_MSG的啟用標(biāo)記,然后設(shè)置 //第二個(gè)MBUS_MSG //指令的啟用標(biāo)記,。 //如果Error (MB1)不為零,,則置位Q0.1 //顯示錯(cuò)誤。 Network 6 //當(dāng)?shù)诙€(gè)啟用標(biāo)記(M2.1)為ON時(shí),, //調(diào)用第二個(gè)MBUS_MSG指令,。 //只需為啟用此指令的 //個(gè)掃描 //設(shè)置First參數(shù)。 //該指令從站2讀取(RW = 0) 4個(gè)保持 //寄存器,。從Modbus從站的地址 //40010- 40013 //讀取數(shù)據(jù),, //然后將數(shù)據(jù)到CPU中的VB200 - VB207 (4個(gè)字)。 Network 7 //當(dāng)?shù)诙€(gè)MBUS_MSG指令完成 //(Done從0改為1)時(shí),,清除第二個(gè) //MBUS_MSG指令 //的啟用標(biāo)記,。 //如果Error (MB1)不為零,則置位Q0.2 //來(lái)顯示錯(cuò)誤,。 |
議題
該主題包含供Modbus主站協(xié)議庫(kù)的用戶使用的信息,。Modbus主站協(xié)議庫(kù)的大部分用戶不需要該 信息,,不得修改Modbus主站協(xié)議庫(kù)的缺省操作。
重試
如果檢測(cè)到下列其中一個(gè)錯(cuò)誤,,則Modbus主站指令將自動(dòng)將請(qǐng)求重新發(fā)送至從站設(shè)備,。 q 在響應(yīng)超時(shí)時(shí)間(MBUS_CTRL上的Timeout參數(shù))指令內(nèi)沒(méi)有響應(yīng)(錯(cuò)誤代碼3)。q 響應(yīng)字符之間的時(shí)間超出允許的數(shù)值(錯(cuò)誤代碼3),。
q 在來(lái)自從站的響應(yīng)中出現(xiàn)奇偶校驗(yàn)錯(cuò)誤(錯(cuò)誤代碼1),。
q 在來(lái)自從站的響應(yīng)中出現(xiàn)CRC錯(cuò)誤(錯(cuò)誤代碼8)。
q 返回的功能與請(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)閺恼?/span> 設(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è)位/字功能,。
累加器用法
累加器(AC0,、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ò)展尋址僅用于保持寄存器,。

流程五:5、客戶收到合同查閱同意后蓋章回傳并按照合同銷售額到公司行
當(dāng)對(duì)品牌的從企業(yè)層面正式上升到層面,,當(dāng)更多企業(yè)以品質(zhì)迎接消費(fèi)結(jié)構(gòu)升級(jí),,這意味我國(guó)的品牌建設(shè)將翻開全新的一頁(yè)。核心競(jìng)爭(zhēng)力也不再是一家企業(yè)的核心,,快遞企業(yè)需要打開新的創(chuàng)新空間,。一帶一路”沿線都面臨著發(fā)展經(jīng)濟(jì)和保護(hù)等共性問(wèn)題,并且,,沿線與產(chǎn)業(yè)結(jié)構(gòu)互補(bǔ)性強(qiáng),,具有攜手共建“一帶一路”的共同需求。實(shí)體產(chǎn)品檢測(cè)業(yè)務(wù)將呈下降趨勢(shì),,與此同時(shí)教育,、培訓(xùn)等服務(wù)性業(yè)務(wù)有較高的增長(zhǎng)潛力。這也標(biāo)志著,,地表水監(jiān)測(cè)事權(quán)上收工作邁出了的一步,。
配方的定義和術(shù)語(yǔ)
為了幫助您理解配方向?qū)В紫葋?lái)解釋以下定義和術(shù)語(yǔ),。
q 配方結(jié)構(gòu)是由配方向?qū)傻囊惶捉M件,。這些組件包括指令子程序,、數(shù)據(jù)塊標(biāo)簽和符號(hào)表。
q 配方集是指一個(gè)配方的,,它們擁有相同的參數(shù),。但是依賴于配方,參數(shù)的數(shù)值各不相同,。
q 一條配方是一組參數(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 | 分鐘 |
6ES7132-6GD51-0BA0
位模式測(cè)試(Dark test/Light test/Switch on test)
故障安全輸出模塊為了實(shí)現(xiàn)功能安全,采取了一些*的設(shè)計(jì)用來(lái)診斷輸出短路,、斷線或是接地故障等,,使用的方法是位模式測(cè)試,分為3種形式:Dark test,、Light test,、Switch on test。
Dark test:在安全輸出模塊輸出激活時(shí)(輸出為1),,模塊內(nèi)部周期的以脈沖方式交替的將P和M開關(guān)斷開(PM方式輸出模塊 6ES7 136-6DB00-0CA0)或兩個(gè)P開關(guān)交替斷開(PP方式輸出模塊6ES7136-6DC00-0CA0),,同時(shí)有測(cè)試電路回讀狀態(tài)進(jìn)行診斷。

圖1 PM輸出模塊的Dark test

圖2 PP輸出模塊的Dark test
西門子6ES71326BF610AA0
Light test:在安全輸出模塊輸出沒(méi)有激活時(shí)(輸出為0),,模塊內(nèi)部周期的以脈沖方式同時(shí)的將P和M開關(guān)接通(PM方式輸出模塊 6ES7 136-6DB00-0CA0)或兩個(gè)P開關(guān)同時(shí)接通(PP方式輸出模塊6ES7136-6DC00-0CA0),,同時(shí)有測(cè)試電路回讀狀態(tài)進(jìn)行診斷。

圖3 PM輸出的Light test

圖4 PP輸出的Light test
注意:Dark test可能會(huì)導(dǎo)致某些負(fù)載執(zhí)行器出現(xiàn)短暫斷開的現(xiàn)象,,Light test可能會(huì)導(dǎo)致某些負(fù)載執(zhí)行器自動(dòng)接通的現(xiàn)象,,避免這兩種現(xiàn)象需要正確設(shè)置最大回讀時(shí)間,參考2.7章節(jié)和模塊技術(shù)手冊(cè),。
Switch on test:在安全輸出模塊輸出沒(méi)有激活時(shí)(輸出為0),,模塊內(nèi)部周期的以脈沖方式交替的將P和M開關(guān)接通(PM方式輸出模塊 6ES7 136-6DB00-0CA0),同時(shí)有測(cè)試電路回讀狀態(tài)進(jìn)行診斷,。這種方式只有PM方式輸出模塊具有,,相對(duì)于Light test方式?jīng)]有電流通過(guò)負(fù)載執(zhí)行器,不會(huì)自動(dòng)接通,。

圖5 PM輸出的Switch on test