產(chǎn)品簡(jiǎn)介
產(chǎn)地類別 | 進(jìn)口 | 應(yīng)用領(lǐng)域 | 石油 |
---|
一年,假一罰十,以客戶的需求為宗旨 , 以誠(chéng)為本 , 精益求精是專業(yè)從事西門(mén)子工業(yè)自動(dòng)化產(chǎn)品銷售和集成的優(yōu)良企業(yè)。
上海燁哲自動(dòng)化科技有限公司 |
—— 銷售熱線 ——
18201799071 |
參考價(jià) | 面議 |
更新時(shí)間:2024-06-05 18:10:48瀏覽次數(shù):152
聯(lián)系我們時(shí)請(qǐng)說(shuō)明是化工儀器網(wǎng)上看到的信息,謝謝!
產(chǎn)地類別 | 進(jìn)口 | 應(yīng)用領(lǐng)域 | 石油 |
---|
西門(mén)子6FC5357-0BB25-0AB0
6FC5357-0BB25-0AB0
SINUMERIK 840D/DE CNC 硬件 NCU 572.5B 1.0 GHz,128 MB 不帶系統(tǒng)軟件 存儲(chǔ)器:NC 3MB,PLC 128KB PROFIBUS-DP 準(zhǔn)備
問(wèn)題:
S7-400中保持?jǐn)?shù)據(jù)傳輸?shù)?性使用的是什么機(jī)理?
解答:
*的數(shù)據(jù)指的是就內(nèi)容來(lái)說(shuō)是*的,而 且它所描述了在某個(gè)時(shí)間點(diǎn)的一個(gè)稱之為*性數(shù)據(jù)的過(guò)程狀態(tài)。要保持?jǐn)?shù)據(jù)的*性,它在傳輸或處理過(guò)程中不得被更新或改動(dòng)。< /span>
樣例 1:< /span>
為了對(duì)CPU在循環(huán)程序處理過(guò)程中有*的過(guò)程信號(hào)的映像,在程序處理前就把過(guò)程信號(hào)讀入輸入的過(guò)程映像中,并 且在程序處理后又寫(xiě)到輸出的過(guò)程映像。然后,在程序處理過(guò)程中,用戶程序在對(duì)操作數(shù)區(qū)輸入(I)和輸出(Q) 尋址時(shí)并不直接訪問(wèn)信號(hào)模塊,而是訪問(wèn)CPU 的內(nèi)部存儲(chǔ)區(qū)里的過(guò)程映像 。< /span>
樣例 2:
如果一個(gè)通訊塊(比如 SFB 14 “GET”, SFB 15 “PUT”)被較高優(yōu)先級(jí)的過(guò)程警報(bào)OB所中斷,就有可能出現(xiàn)不*性。 現(xiàn)在,如果在該過(guò)程警報(bào)OB中的用戶程序更改了已經(jīng)部分被通訊塊處理過(guò)的數(shù)據(jù),那樣的話被傳輸?shù)臄?shù)據(jù)中,部分是過(guò)程警報(bào)處理以前時(shí)間的數(shù)據(jù),部 分則是過(guò)程警報(bào)處理以後時(shí)間的數(shù)據(jù),這意味著,此數(shù)據(jù)是不*的。
SFC 81 "UBLKMOV"
使用 SFC 81 “UBLKMOV”,把一個(gè)內(nèi)存區(qū)(源區(qū))的內(nèi)容*地復(fù)制到另一個(gè)內(nèi)存區(qū)(目標(biāo)區(qū))里 。復(fù) 制過(guò)程不得被操作系統(tǒng)的任何其它動(dòng)作所打斷。
使用SFC 81 “UBLKMOV”,可復(fù)制下列內(nèi)存區(qū):
可復(fù)制的大數(shù)據(jù)量為 512 字節(jié)。請(qǐng)注意與CPU性能有關(guān)的限制。有關(guān)的限制可從操作列表中看到。
既然復(fù)制過(guò)程不能打斷,在使用 SFC 81“UBLKMOV” 時(shí),可增大CPU對(duì)報(bào)警的響應(yīng)時(shí)間。
源區(qū)和目標(biāo)區(qū)不得互相交迭。如 果的目標(biāo)區(qū)大于源區(qū),那么只把與源區(qū)里同樣多的數(shù)據(jù)復(fù)制到目標(biāo)區(qū)。如果的目標(biāo)區(qū)小于源區(qū),那 么只把目標(biāo)區(qū)能接收的那么多的數(shù)據(jù)復(fù)制入目標(biāo)區(qū)。
通訊塊和功能之間的*性
對(duì) S7-400 ,通 訊作業(yè)不在循環(huán)程序的執(zhí)行處來(lái)處理,而是在程序循環(huán)過(guò)程中的一個(gè)固定的時(shí)間段里處理。從系統(tǒng)來(lái)講,數(shù)據(jù)格式字節(jié),字 和雙字永遠(yuǎn)可以得到*性的處理,就是說(shuō)傳輸一個(gè)字節(jié),一個(gè)字(兩個(gè)字節(jié))或雙字(4個(gè)字節(jié))是不會(huì)被打斷的。
如果通訊塊(比如 SFB 12 “BSEND”)只能成對(duì)使用(象SFB 12 “BSEND” 和 SFB 13 “BRCV”) 而且它訪問(wèn)公共數(shù)據(jù)在用戶程序中被調(diào)用,那么也訪問(wèn)本身數(shù)據(jù)區(qū),比如通過(guò) “DONE”參數(shù)對(duì)該數(shù)據(jù)區(qū)的訪問(wèn),是可以協(xié)調(diào)的。通 過(guò)這些通訊塊局部傳輸?shù)臄?shù)據(jù)的*性,因而可以在用戶的程序里得到保證。
使用 S7 的通訊功能時(shí)動(dòng)作是不一樣的。用這些功能時(shí)目標(biāo)設(shè)備 (比如 SFB 14 “GET”, SFB 15“PUT”) 里的用戶程序不要求通訊塊。在編程時(shí)就必須把*性數(shù)據(jù)的大小已經(jīng)考慮在內(nèi)。
訪問(wèn) CPU的工作內(nèi)存
操作系統(tǒng)的通訊功能是以固定長(zhǎng)度數(shù)據(jù)包來(lái)訪問(wèn)CPU的工作內(nèi)存。此數(shù)據(jù)包的大小與CPU性能有關(guān),S7-400 CPU是32個(gè)字節(jié)。< /span>
這樣就確保了在使用通訊功能時(shí)報(bào)警響應(yīng)時(shí)間不會(huì)被延長(zhǎng)。由于這種訪問(wèn)與用戶程序異步,你無(wú)法*地傳輸任意個(gè)數(shù)字節(jié)的數(shù)據(jù)。< /span>
下面將解釋為保證數(shù)據(jù)*性所要遵循的規(guī)則。
如果是 SFB 14 “GET”,只要遵循下列規(guī)則就可*性地傳輸數(shù)據(jù)。
下圖給出了一個(gè)無(wú)法保證數(shù)據(jù)傳輸*性的例子。因?yàn)樗鼪](méi)有遵守*性規(guī)則的第二條:被動(dòng) CPU (數(shù)據(jù)發(fā)送方)的數(shù)據(jù)塊大小為 8 個(gè)字節(jié),而傳輸?shù)膮s是 32 個(gè)字節(jié)。
圖 1:數(shù)據(jù)傳輸?shù)睦?/p>
用于 SFB 15“PUT”或?qū)懽兞康?性規(guī)則
對(duì)于 SFB 15 “PUT”,如果遵循下列規(guī)則,數(shù)據(jù)傳輸將具有*性:
下圖為一個(gè)數(shù)據(jù)傳輸?shù)睦印S?于*性規(guī)則的第二條沒(méi)有得到遵守<被動(dòng)CPU(數(shù)據(jù)接收方)的數(shù)據(jù)塊大小只有32 個(gè)字節(jié),而發(fā)送的卻是64個(gè)字節(jié)>,無(wú) 法保證數(shù)據(jù)的*性。
圖 2:無(wú) 法保證*性的數(shù)據(jù)傳輸
通過(guò)SFC 81 “ UBLKMOV”可在S7-400 的用戶程序里實(shí)現(xiàn)跨幾個(gè)變量的大數(shù)據(jù)塊*性傳輸(不可中斷的塊移動(dòng))。
這樣,例如通過(guò)SFB 14 “ GET”, SFB 15 “PUT”以及讀/寫(xiě)變量,可實(shí)現(xiàn)對(duì)此數(shù)據(jù)的*性訪問(wèn)。
從一臺(tái) DP 標(biāo)準(zhǔn)從站讀出*性數(shù)據(jù),/ 然后把它*性地寫(xiě)入一臺(tái) DP 標(biāo)準(zhǔn)從站。
通過(guò)SFC 14 “DPRD_DAT”從一臺(tái) DP 標(biāo)準(zhǔn)從站*性地讀出數(shù)據(jù)
通過(guò)SFC 14 “DPRD_DAT”(從一臺(tái) DP 標(biāo)準(zhǔn)從站讀出*性數(shù)據(jù)), 從一臺(tái)DP標(biāo)準(zhǔn)從站*性地讀出數(shù)據(jù)。如果數(shù)據(jù)傳輸中無(wú)錯(cuò)誤,則讀出的數(shù)據(jù)被輸入由RECORD的目標(biāo)區(qū)。< /span>
目標(biāo)區(qū)必須與你已經(jīng)用STEP 7為選定的模塊組態(tài)好的長(zhǎng)度*。每次調(diào)用SFC 14只能訪問(wèn)一個(gè)模塊/DP ID 的數(shù)據(jù)(從組態(tài)好的起始地址)。
通過(guò) SFC 15“DPWR_DAT”( 把數(shù)據(jù)*性地寫(xiě)入一臺(tái)DP標(biāo)準(zhǔn)從站)把 RECORD 里的數(shù)據(jù)*性地傳輸入賦址好的DP 標(biāo)準(zhǔn)從站。
源區(qū)的長(zhǎng)度必須與通過(guò) STEP 7 為選定模塊組態(tài)好的長(zhǎng)度*。
注意:
PROFIBUS DP標(biāo)準(zhǔn)定義了傳輸*性用戶數(shù)據(jù)的上限(見(jiàn)下一節(jié))。通常的DP標(biāo)準(zhǔn)從站遵守這些限制。對(duì)于較老的CPU (<1999),對(duì) 傳輸*性用戶數(shù)據(jù)存在與 CPU 有關(guān)的限制。
請(qǐng)參考這些CPU的技術(shù)數(shù)據(jù)。在關(guān)鍵字 “DP 主站 -每臺(tái)DP 從站的用戶數(shù)據(jù)” 下去尋找CPU 可以*性地從一臺(tái)DP標(biāo)準(zhǔn)從站讀出數(shù)據(jù)和*性地寫(xiě)入一臺(tái)DP標(biāo)準(zhǔn)從站的數(shù)據(jù)的大長(zhǎng)度,一些近期CPU的此項(xiàng)指標(biāo)已經(jīng)超過(guò)標(biāo)準(zhǔn)DP從站可能或接受的數(shù)據(jù)長(zhǎng)度值。< /span>
*性傳輸用戶數(shù)據(jù)到一臺(tái) DP 從站的上限大值
PROFIBUS DP標(biāo)準(zhǔn)規(guī)定了傳輸*性用戶數(shù)據(jù)到DP從站的上限。這就是為什么在一臺(tái)DP標(biāo)準(zhǔn)從站里,可用一個(gè)數(shù)據(jù)塊來(lái)*性地傳輸大達(dá)64 個(gè)字 = 128 字節(jié)的用戶數(shù)據(jù)。
當(dāng)組態(tài)時(shí),你定義了*性區(qū)的大小。該大小用特殊的代碼格式(德語(yǔ)縮寫(xiě): SKF)表示為64 個(gè)字 = 128 字節(jié)(輸入用128個(gè)字節(jié),128個(gè)字節(jié)用于輸出)設(shè)置的*性數(shù)據(jù)大長(zhǎng)度。再長(zhǎng)就不可行了。
這個(gè)上限只適用于純用戶數(shù)據(jù)。診斷數(shù)據(jù)和參數(shù)被分組到完整的數(shù)據(jù)紀(jì)錄里,因而總是得到*性地傳輸。< /span>
在通常的代碼格式里(德語(yǔ)縮寫(xiě): AKF),可為*性數(shù)據(jù)設(shè)置大長(zhǎng)度16 個(gè)字 = 32 個(gè)字節(jié) (32 個(gè)字節(jié)用于輸入,32 個(gè)字節(jié)用于輸出)。再長(zhǎng)就不可行了。
在本文里請(qǐng)同樣注意, 通常在一個(gè)非系統(tǒng)主站 (通過(guò)GSD連接)上的CPU 41x 作為 DP 從站時(shí),必 須是用一般代碼格式才可加以組態(tài)。基于這個(gè)理由,作為PROFIBUS DP上從站的 CPU 41x 的傳輸內(nèi)存的大長(zhǎng)度為16 個(gè)字 = 32個(gè)字節(jié)。
不使用SFC 14 或 SFC 15 時(shí)的*性數(shù)據(jù)訪問(wèn)
*性數(shù)據(jù)訪問(wèn) 大于 4 個(gè)字節(jié)時(shí),對(duì)于下列的CPU 是可行的(不用SFC 14或SFC 15)。要 被*性傳輸?shù)囊粋€(gè) DP 從站的數(shù)據(jù)區(qū)數(shù)據(jù)是被傳輸?shù)揭粋€(gè)過(guò)程映像分區(qū)的。這樣在此區(qū)域里的信息永遠(yuǎn)是*的。然后可用 裝載/傳輸命令 (比如L EW 1) 來(lái)訪問(wèn)過(guò)程映像。
這為訪問(wèn)*性數(shù)據(jù)提供了特別方便和有力的選項(xiàng)(低運(yùn)行開(kāi)銷)。這一方案又為高效地結(jié)合和參數(shù)化驅(qū)動(dòng)或其它 DP 從站成為可能。< /span>
它適用于下列CPU。固件版本 3.0 以上:
S7-400 CPU | MLFB |
CPU 412-1 | 6ES7 412-1XF03-0AB0 |
CPU 412-2 | 6ES7 412-2XG00-0AB0 |
CPU 414-2 | 6ES7 414-2XG03-0AB0 |
CPU 414-3 | 6ES7 414-3XJ00-0AB0 |
CPU 416-2 | 6ES7 416-2XK02-0AB0 |
CPU 416-3 | 6ES7 416-3XL00-0AB0 |
CPU 417-4 | 6ES7 417-4XL00-0AB0 |
CPU 414-4H | 6ES7 414-4HJ00-0AB0 |
CPU 417-4H | 6ES7 417-4HL01-0AB0 |
表 1:支持*性數(shù)據(jù)訪問(wèn)的CPU(不用 SFC14/SFC15)
當(dāng)你進(jìn)行直接訪問(wèn)時(shí) (比方說(shuō) L PEW 或 T PAW),沒(méi)有 I/O 訪問(wèn)錯(cuò)。
從 采用SFC14/15 方案轉(zhuǎn)向采用過(guò)程映像方案時(shí)的注意要點(diǎn):< /b>
樣例:
下面的例子 (過(guò)程映像分區(qū) 3 “TPA 3”)顯示了 HW Config 中一種可能的組態(tài)。
在輸入下的下拉列表里選擇 “過(guò)程映像分區(qū) -> ---” 意味著過(guò)程映像里沒(méi)有存儲(chǔ)內(nèi)容。只 能用系統(tǒng)功能SFC14/15來(lái)處理它。
圖 3:在HW Config 里組態(tài)DP從站的屬性。
問(wèn)題:
如何為S7-22x編程一個(gè)時(shí)間控制的中斷?
解答:
下列CPU可以處理一個(gè)時(shí)間控制的中斷:
中斷 | CPU221 | CPU222 | CPU224 | CPU226 | CPU226XM |
支持的時(shí)間控制中斷的個(gè)數(shù) | 2 | 2 | 2 | 2 | 2 |
中斷個(gè)數(shù) | 0 和 1 | 0 和 1 | 0 和 1 | 0 和 1 | 0 和 1 |
可能的中斷程序的個(gè)數(shù) | INT 0 | INT 0 | INT 0 | INT 0 | INT 0 |
S7-200 支持一個(gè)或更多的時(shí)間控制的中斷。可以用時(shí)間控制中斷來(lái)定義要在周期中執(zhí)行的動(dòng)作。定義的周期時(shí)間以 1 毫秒為單位。范圍在 1毫秒(1)至 255 毫秒(255)間。在特殊標(biāo)志字節(jié)SMB34中寫(xiě)入中斷 0 的周期時(shí)間,在SMB35中寫(xiě)入中斷 1的周期時(shí)間。
每當(dāng)延時(shí)時(shí)間到達(dá)時(shí),時(shí)間控制中斷事件就會(huì)調(diào)用相應(yīng)的中斷程序。通常可以使用時(shí)間控制中斷控制模擬量輸入的定期采樣。當(dāng)把一個(gè)中斷程序分配給一個(gè)時(shí)間控制中斷事件時(shí),時(shí)間控制中斷就被激活后并開(kāi)始計(jì)時(shí)。在樣例中,這是啟動(dòng)子程序“SBR 0”所做的一的事情。系統(tǒng)確定該周期時(shí)間使后續(xù)的修改不會(huì)影響到該周期時(shí)間。如果想要修改周期時(shí)間,必須為周期時(shí)間一個(gè)新值然后重新將中斷程序賦予該時(shí)間控制的中斷。重新賦予時(shí),函數(shù)會(huì)刪除以前賦予中累計(jì)的時(shí)間值并以新值開(kāi)始運(yùn)行時(shí)間。
命令的作用 | Command | Operand | Example of |
主程序 |
|
|
|
網(wǎng)絡(luò) 1 |
|
|
|
通過(guò)查詢只在*個(gè)周期里置“1”的標(biāo)志,給該事件分配一個(gè)少有的中斷程序號(hào) | LD | SM 0.1 | SM 0.1 |
在*個(gè)循環(huán)中調(diào)用子程序“0” | CALL | 0 |
|
主程序結(jié)束 | MEND |
|
|
啟動(dòng)子程序“0” | SBR | 0 |
|
使用“確定為“ 1 ”的系統(tǒng)標(biāo)志SM 0.1 ”,設(shè)置時(shí)間控制段的時(shí)間間隔為 100 * 1ms = 100 ms | LD | SM 0.1 |
|
允許使用所有中斷 | ENI |
|
|
分配時(shí)間控制中斷“0”到中斷程序“0” | ATCH | INT,EVENT | 0,10 |
終止子程序 | RET |
|
|
啟動(dòng)中斷程序 | INT | 0 |
|
現(xiàn)在可以寫(xiě)想要每隔 100 毫秒處理一次的程序 | ....... | .... | .... |
從中斷程序返回 | RETI |
|
|
注意事項(xiàng):
隊(duì)列 | 特殊標(biāo)志 |
通訊中斷的隊(duì)列溢出 | SM 4.0 |
I/O中斷的隊(duì)列溢出 | SM 4.1 |
時(shí)間控制中斷的隊(duì)列溢出 | SM 4.2 |