




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
S7-300實戰總結1:使用CPU
315F和ET
200S時應如何避免出現“通訊故障”消息?
使用CPU
S7
315F,
ET
200S以及故障安全DI/DO模塊,那么您將調用OB35
的故障安全程序。而且,您已經接受所有監控時間的默認設置值,并且愿意接收“通訊故障”消息。
OB
35
默認設置為100毫秒。您已經將F
I/O模塊的F監控時間設定為100毫秒,因此至少每100毫秒要尋址一次I/O模塊。但是由于每100毫秒才調用一次OB
35,因此會發生通訊故障。要確保OB35的掃描間隔和F監控時間有所差別,請確保F監控時間大于OB35的掃描間隔時間。
S7分布式安全系統,一直到V5.2
SP1
和
6ES7138-4FA00-0AB0,6
ES7138-4FB00-0AB0,6ES7138-4CF00-0AB0
都會出現這個問題。在新的模塊中,F
監控時間設定為150毫秒.
2:當DP從站不可用時,PROFIBUS上S7-300
CPU的監控時間是多少?
使用CPU的PROFIBUS接口上的DP從站操作PROFIBUS網絡時,希望在啟動期間檢查期望的組態與實際的組態是否匹配。在
CPU屬性對話框中的Startup選項卡上給出了兩個不同的時間。
3:如何判斷電源或緩沖區出錯,如:電池故障?
如果電源(僅S7-400)或緩沖區中的一個錯誤觸發一個事件,則CPU操作系統訪問OB81。錯誤糾正后,重新訪問OB81。電池故障情況下,如果電池檢測中的BATT.INDIC開關是激活的,則
S7-400僅訪問OB81。如果沒有組態OB81,則CPU不會進入操作狀態STOP。如果OB81不可用,則當電源出錯時,C
PU仍保持運行。
4:為S7
CPU上的I/O模塊(集中式或者分布式的)分配地址時應當注意哪些問題?
請注意,創建的數據區域(如一個雙字)不能組態在過程映象的邊界上,因為在該數據塊中,只有邊界下面的區域能夠被讀入過程映像,因此不可能從過程映像訪問數據。
因此,這些組態規則不支持這種情況:例如,在一個
256
字節輸入的過程映像的
254
號地址上組態一個輸入雙字。
如果一定需要如此選址,則必須相應地調整過程映像的大小(在CPU的Properties中)。
5:在S7
CPU中如何進行全局數據的基本通訊?在通訊時需要注意什么?
全局數據通訊用于交換小容量數據,全局數據(GD)可以是:
輸入和輸出
標記
數據塊中的數據
定時器和計數器功能
數據交換是指在連入單向或雙向GD環的CPU之間以數據包的形式交換數據。GD環由GD環編號來標識。
單向連接:某一CPU可以向多個CPU發送GD數據包。
雙向連接:兩個CPU之間的連接:每個CPU都可以發送和接收一個GD數據包。
必須確保接收端CPU未確認全局數據的接收。如果想要通過相應通訊塊(SFB、FB或FC)來交換數據,則必須進行通訊塊之間的連接。通過定義一個連接,可以極大簡化通訊塊的設計。該定義對所有調用的通訊塊都有效且不需要每次都重新定義。
6:可以將S7-400存儲卡用于CPU
318-2DP嗎?
在通常的操作中,只能使用訂貨號為6ES7951-1K...
(Flash
EPROM)和6ES7951-1A...
(RAM)的“短”>
存儲卡。
7:盡管LED燈亮,為什么CPU
31xC不能從缺省地址
124
和
125
讀取完整輸入?
對于下列型號的CPU
,請檢查
24V
電壓是否接入引腳
1。LED由輸入電流控制。引腳
1
上的
24V
電壓需要做進一步處理。
313C
(6ES7
313-5BE0.-0AB0),313C-2DP
(6ES7
313-6CE0.-0AB0),313C-2PTP
(6ES7
313-6BE0.-0AB0),
314C-2DP
(6ES7
314-6CF0.-0AB0),314C-2PTP
(6ES7
314-6BF0.-0AB0)
8:配置CPU
31x-2
PN/DP的PN接口時,當PROFINET接口偶爾發生通信錯誤時,該如何處理?
請確定以太網(PROFINET)中的所有組件(轉換)都支持
100
Mbit/s全雙工基本操作。避
免中心分配器割裂網絡,因為這些設備只能工作于半雙工模式。
9:在硬件配置編輯器中,“時鐘”修正因子有什么含義呢?
在硬件配置中,通過CPU
>
Properties
>
Diagnostics/Clock,你可以進入“時鐘”>
域內指定一個修正因子。這個修正因子只影響CPU的硬件時鐘。時間中斷源自于系統時鐘,并且和硬件時鐘的設定毫無關系。
10:如何通過PROFIBUS
DP用功能塊實現在主、從站之間實現雙向數據傳送?
在主站plc可以通過調用SFC14
“DPRD_DAT“和SFC15
“DPWR_DAT“來完成和從站的數據交換,而對于從站來說可以調用FC1
“DP_SEND“
和FC2
”DP_RECV“完成數據的交換。
11:可以從S7
CPU中讀出哪些標識數據?
通過SFC
51“RDSYSST”可讀出下列標識數據:
可以讀出訂貨號和CPU版本號。為此,使用SFC
51和SSL
ID
0111并使用下列索引:
1
=
模塊標識
6
=
基本硬件標識
7
=
基本固件標識
12:在含有CPU
317-2PN/DP的S7-300上,如何編程可加載通訊功能塊FB14("GET")和FB15("PUT")用于數據交換?
為了通過一個S7連接在使用CPU
317-2PN/DP的兩個S7-300工作站之間進行數據交換,其中該S7連接是使用NetPro組態的,<
在S7通信中,必須調用通訊功能塊。模塊FB14("GET")
用于從遠程CPU取出數據,模塊FB15("PUT")用于將數據寫入遠程CPU。
功能塊包含在STEP
7
V5.3的標準庫中。
CPU
317-2PN/DP的通訊模塊FB14("GET")和FB15("PUT")的屬性
:
FB14和FB15是異步通訊功能。
這些模塊的運行可能跨越多個OB1循環。
通過輸入參數REQ激活FB14或FB15。
DONE、NDR或ERROR表明作業結束。PUT和GET可以同時通過連接進行通信。
注意:不能將庫SIMATIC_NET_CP中的通訊塊用于CPU317-2PN/DP。
13:對于緊湊CPU
313C-2
PtP和CPU
314-2
PtP作業同步處理需要注意什么?
在用戶程序中,不可以同時編程SEND作業和FETCH作業。
即:
只要SEND作業(SFB
63)沒有完全終止(DONE或ERROR),就不能調用FETCH作業(SFB
64)(甚至在REQ=0的時候)。只要FETCH作業(SFB
64)沒有完全終止(DONE或ERROR),就不能調用SEND作業(SFB
63)(甚至在REQ=0的時候)。在處理一個主動作業(SEND作業、SFB
63或FETCH作業、SFB
64)時,同時可以處理一個被動作業(SERVE作業、SFB
65)。
14:可以將MICROMASTER
420到440作為組態軸(位置外部檢測)和CPU
317T一起運行嗎?
可以,但在動力和精度方面,對組態軸的要求差別非常大。在高要求情況下,伺服驅動SIMODRIVE
611U、MASTERDRIVES
MC或SINAMICS
S必須和CPU
317T一起運行。在低要求情況下,MICROMASTER系列也能滿足動力和精度要求。
15:如何在已配置為DP從站的兩個CPU模塊間組態直接數據交換(節點間通信)?
兩個CPU站配置為DP從站,而且由同一個DP主站操作,它們之間的通信通過配置交換模式為DX可以完成直接數據交換。
16:如何使用SFC65,SFC66,SFC67
和
SFC68
進行通信?
對于單向基本通信,使用系統功能
SFC67
(X_GET)從一個被動站讀取數據,使用系統功能SFC68(X_PUT)將數據寫入一個被動站(服務器)。這些塊只有在主動站中才調用。對于一個雙向基本通信,調用站中的系統功能SFC65
(X_SEND),在該站中想將數據發送到另一個主動站。在同樣為主動的主動接收站中,數據將通過系統功能SFC66
(X_RCV)記錄。
兩種類型的基本通信中,每次塊調用可以處理最多
76
字節的用戶數據。對于S7-300
CPU,數據傳送的數據一致性是
8
個字節,對于S7-400
CPU則是全長。
如果連接到S7-200,必須考慮到S7-200只能用作一個被動站。
17:什么是自由分配
I/O
地址?
地址的自由分配意味著您可對每種模塊(SM/FM/CP)自由的分配一個地址。地址分配在
STEP
7
里進行。先定義起始地址,該模塊的其它地址以它為基準。
自由分配地址的優點:因為模塊之間沒有地址間隙,就可以優化地使用可用地址空間。在創建標準軟件時,分配地址過程中可以不考慮所涉及的
S7-300
的組態。
18:診斷緩沖器能夠干什么?
更快地識別故障源,因而提高系統的可用性。評估STOP之前的最后事件,并尋找引起STOP的原因。
診斷緩沖器是一個帶有單個診斷條目的循環緩沖器,這些診斷條目顯示在事件發生序列中;第一個條目顯示的是最近發生的事件。如果緩沖器已滿,
最早發生的事件就會被新的條目所覆蓋。根據不同的CPU,診斷緩沖器的大小或者固定,或者可以通過HW
Config中通過參數進行設置。
19:診斷緩沖器中的條目包括哪些?
1)故障事件
2)操作模式轉變以及其它對用戶重要的操作事件
3)用戶定義的診斷事件(用SFC52
WR_USMSG)
在操作模式STOP下,在診斷緩沖器中盡量少的存儲事件,以便用戶能夠很容易在緩沖器中找到引起STOP的原因。因此,只有當事件要求用戶產生一個響應(如計劃系統內存復位,電池需要充電)或必須注冊重要信息(如固件更新,站故障)時,才將條目存儲在診斷緩沖器中。
20:如何確定MMC的大小以便完整地存儲STEP
7項目?
為了給項目選擇合適的MMC,需要了解整個項目的大小以及要加載塊的大小。可以按照如下所述的方法來確定項目的大小:
1)首先歸檔STEP
7項目。然后在Windows資源瀏覽器中打開已歸檔項目,并確定其大小(選中該項目并右擊)。這會告訴您歸檔文件的大小。
2)將塊加載入CPU。現在仍然需要選擇"PLC
>
Module
Information
>
Memory"。在此,在"
Load
memory
RAM
+
EPROM"中,可以看到分配的加載內存的大小。
3)必須將該值和已經確定的歸檔項目的大小相加。這樣就可以得出在一個MMC上保存整個項目所需的總內存的大小。
21:CPU全面復位后哪些設置會保留下來?
復位CPU時,內存沒有被完全刪除。整個主內存被完全刪除了,但加載內存中數據,以及保存在Flash-EPROM存儲卡(MC)或微存儲卡(MMC)上的數據,則會全部保留下來。除了加載內存以外,計時器(CPU
312
IFM除外)和診斷緩沖也被保留。具有MPI接口或一個組合MPI/DP接口的CPU只在全部復位之前保留接口所采用的當前地址和波特率。另一方面,另一個PROFIBUS地址也被完全刪除,不能再訪問。
重要事項:重新設置PG/PC之后,與CPU之間的通訊只能通過MPI或MPI/DP接口來建立。
22:為什么不能通過MPI在線訪問CPU?
如果在CPU上已經更改了MPI參數,請檢查硬件配置。可以將這些值與在"Set
PG/PC
interface"下的參數進行比較,看是否有不一致。
或者可以這樣做:打開一個新的項目,創建一個新的硬件組態。在CPU的MPI接口的屬性中為地址和傳送速度設置各自的值。將"空"項目寫入存儲卡中。把該存儲卡插入到CPU
然后重新打開CPU的電壓,將位于存儲卡上的設置傳送到CPU。現在已經傳送了MPI接口的當前設置,并且像這樣的話,只要接口沒有故障就可以建立連接。
這個方法適用于所有具有存儲卡接口的S7-CPU。
23:錯誤OB的用途是什么?
如果發生一個所描述的錯誤(見文件1),則將調用并處理相應OB。如果沒有加載該OB,則CPU進入STOP(例外:OB70、72、7
3和81)
S7-CPU可以識別兩類錯誤:
1)同步錯誤:
這些錯誤在處理特定操作的過程中被觸發,并且可以歸因于用戶程序的特定部分。
2)異步錯誤:
這些錯誤不能直接歸因于運行中的程序。這些錯誤包括優先級類的錯誤,自動化系統中的錯誤(故障模塊)或者冗余的錯誤。
24:在DP從站或CPU315-2DP型主站里應該編程哪些“故障
OBs”?
在組態一個作為從站的CPU315-2DP站時,必須在STEP7程序中編程下列OB以便評估分布式I/O類型的錯誤信息:
OB
82
診斷中斷
OB
、OB
86
子機架故障
OB
、OB
122
I/O
訪問出錯
1)診斷OB82:如果一個支持診斷,并且已經對其釋放了診斷中斷的模塊識別出一個錯誤,它既對進入事件也對外出的事件向
CPU
發出一個診斷中斷的請求。操作系統然后調用
OB82。在
OB82
自己的局部變量里包含有有缺陷模塊的邏輯基地址和
4
個字節的診斷數據。如果你還沒有編程
OB82,
則
CPU
進入“停止”模式。你可以阻斷或延遲診斷中斷
OB
,并通過
SFC
39
-
42
重新釋放它。
2)子機架故障OB86:如果識別出一個
DP
主站系統或一個分布式
I/O
站有故障(既對進入事件也對外出的事件),該
CPU
的操作系統就調用
OB
86
。如果沒有編程
OB
86
但出現了這樣一個錯誤,
CPU
就進入“停止”模式。你可以阻斷或延遲
OB86
并通過
SFC
39
-
42
重新釋放它。
3)I/O
訪問出錯OB122:當訪問一個模塊的數據時出錯,該CPU的操作系統就調用OB
122。比方說,CPU在存取一個單個模塊的數據時識別出一個讀錯誤,那么操作系統就調用OB
122。該OB
122以與中斷塊有相同的優先級類別運行。如果沒有編程OB
122,那么CPU由“運行”模式改為“停止”模式。
25:為什么在某些情況下,保留區會被重寫?
在STEP
7的硬件組態中,可以把幾個操作數區定義為“保留區”。這樣可以在掉電以后,即使沒有備份電池的話,仍能保持這些區域中的內容。如果定義一個塊為
“保留塊”,而它在
CPU
中不存在或只是臨時安裝過,那么這些區域的部分內容會被重寫。在電源接通/斷開之后,其他內容會在相關區里找到。
26:為何不能把閃存卡的內容加載入S7
300
CPU?
你的項目在閃存卡上。現在要用它加載
S7
300
。但加載結束后發現
CPU
的
RAM
中仍是空的。
出現此問題的原因是你的程序里有無法處理的,"錯誤的"組織塊(比如說,
OB86
沒有
DP
接口)。
在重新設置和重新啟動
CPU
后,
RAM
仍是空的。
診斷緩沖區對這個"無法加載"的塊會提示一些信息。
27:當把
CPU315-2DP
作為從站,把
CPU315-2DP
作為主站時的診斷地址
在組態一個
CPU315-2DP
站時,你使用
S7
工具
“H/W
CONFIG”
來分配診斷地址。如果發生一個故障,這些診斷地址被加入診斷
OB
的變量
“OB82_MDL_ADDR”
里。
你可在
OB82
里分析此變量,確定有故障的站并作出相應的反應。
下面是如何分配診斷地址的例子:
第
1
步:
通過
CPU315-2DP
組態從站并賦予一個診斷地址,比如
422。
第
2
步:
通過
CPU315-2DP
組態主站
第
3
步:
把組態好的從站鏈接到主站并賦予一個診斷地址,比如
1022。
28:需要為S7-300
CPU的DP從站接口作何種設置,才可以使用它來進行路由選擇?
如果使用CPU作為I-Slave,并且該CPU也起S7
路由器的作用,那么請注意如下事項:
用于路由選擇的從站的DP接口必須設置為活動狀態。這可以在HW
Config中完成:在DP接口的屬性對話框中,選項"
Commissioning/Test
operation"或"Programming,
status/modify..."必須激活。關于這些設置的注意事項可以在下表中獲得。
對于S7
路由連接,有
4
種可用的連接資源-與其它任何連接資源無關。沒有使用PG/OP的連接資源或S7基本通信。
如果必須通過DP接口來建立一個與位于其機架上的通信伙伴連接時(如在
CP
343-1
中),也要使用一個路由連接。而對于通過MPI接口與一個位于其機架上的通信伙伴的連接,則不使用路由連接資源,因為在這種情況下,能夠直接到達伙伴。注意事項:這不適用于CPU
318。
29:為什么當使用S7-300
CPU的內部運行時間表時,沒有任何返回值?
當對CPU
312IFM到316-2DP參數化系統功能塊
SFC2,
SFC3
和
SFC4
時,為一個運行時間表規定了一個大于
"B#16#0"的標識符,那么將出錯并且所需的功能也無法用。
此種情況下,將在塊的"
RETVAL"輸出處輸出標識符
"8080h"
。
說明:對于這些
CPU,只有一個計時器可用。因此你應該只用標識符
"B#16#0"。
在一個周期塊(OB1,
OB35)里一定不能調用系統功能
SFC2
"SET_RTM",而是應該在重啟動OB(OB100)調用它。你也可以通過外部觸發器來啟動該塊。不然的話,該塊將老是復位運行計時表,永遠完成不了計數。
30:變量是如何儲存在臨時局部數據中的?
L
堆棧永遠以地址“0”開始。
在
L
堆棧中,會為每個數據塊保留相同個數的字節,作為存放每個塊所擁有的靜態或局部數據。
當某個塊終止時,那么它的空間隨之也被重新釋放出來。
指針總是指向當前打開塊的第一個字節。41:進行I/O的直接訪問時,必須注意什么?
需要注意在一個S7-300組態中,如果進行跨越模塊的I/O直接讀訪問(用該命令一次讀取幾個字節),那么就會讀到不正確的值。可以通過hardware中查看具體的地址。
42:SM321模塊是否需要連接到DC24V上?
不需要,如果是MLFB為6ES7321-1BH02-0AA0的SM321模塊,就不再需要連接DC24V了。見圖:
43:在STEP7硬件組態中如何規劃模擬模塊SM374?在硬件目錄中如何找到此模塊?
模擬模塊SM374可用于三種模式中:作為16通道數字輸入模塊,作為16通道數字輸出模塊,作為帶8個輸入和8個輸出的混合數字輸入/輸出模塊。
現在把SM374按照您需要模擬的模塊來組態,就是說;
如果把SM374用作為一個16通道輸入模塊,則組態一個16通道輸入模塊-推薦使用:SM321:6ES7321-1BH01-0AA0,
如果把SM374用作為一個16通道輸出模塊,則組態一個16通道輸出模塊-推薦使用:SM322:6ES7322-1BH01-0AA0,
如果把SM374用作為一個混合輸入/輸出模塊,則組態一個混合輸入/輸出模塊(8個輸入,8個輸出)-推薦使用:SM323:6ES7323-1BH01-0AA0。
44:當測量電流時,出現傳感器短路的情況,模塊6ES7331-1KF0.-0AB0的模擬量輸入I+是否會被破壞?
當測量電流時,出現傳感器短路的情況,模塊6ES7331-1KF0.-0AB0的模擬輸入I+不會被破壞。該模塊具有內置的過流保護功能。>模塊中每個50歐姆的電阻器前面具有一個PTC元件,用于防止模塊的輸入通道被破壞。
請注意,輸入電壓允許的長期最大值為12V,短暫(最多1秒)值為30V。
45:如果切斷CPU,則2線制測量變送器是否繼續供電?
如果變送器模塊插入位置“D”,且模塊在引腳1和引腳20上由外部電壓供電,則2線測量變送器繼續供電。即使切斷CPU,其供電電流仍維持不變。
46:用S7-300模擬量輸入模塊測量溫度(華氏)時,可以使用模塊說明文檔中列出的絕對誤差極限嗎?
不可以直接使用指定的誤差極限。基本誤差和操作誤差都以絕對溫度和攝氏溫度說明。必須乘以系數1.8將其轉換為華氏溫度單位。
例:S7-300AI8xRTD:指定的溫度輸入操作誤差是+/-1.0攝氏度。當以華氏溫度測量時,可接受的最大誤差是+/-1.8華氏度。
47:為什么用商用數字萬用表在模擬輸入塊上不能讀出用于讀取阻抗的恒定電流?
幾乎所有的S5/S7模擬輸入設備仍然以復雜的方式工作,即,所有的通道都依次插到僅有的一個AD轉換器上。該原理也適用于讀取阻抗所必需的恒定電流。因此,要讀的流過電阻的電流僅用于短期讀數。對于有一個選定接口抑制"50Hz"和8個參數化通道的SM331-7KF02-0AB0,這意味著電流將會約每180ms流過一次,每次有20ms可讀取阻抗。
48:為什么S7-300模擬輸出組的電壓輸出超出容差?端子S+和S-作何用途?
下列描述適用于所有模擬輸出模塊SM332:
當使用模擬輸出模塊SM332時,必須注意返回輸入S+和S-的分配。它們起補償性能阻抗的目的。當用獨立的帶有S+和S-的電線連接執行器的兩個觸點時,模擬輸出會調節輸出電壓,以便使動作機構上實際存在的電壓為所期望的電壓。
如果想要獲得補償,那么執行器必須用4根電線連接。這意味著對于第一個通道,需要:
輸出電壓通過針腳3和針腳6連接到執行器。
分配執行器的針腳4和針腳5。
如果不想獲得補償,只需在前面的開關上簡單的跨接針腳3-4和針腳5-6。
注意事項:因為打開的傳感器端子(S+和S-),輸出電壓被調節到最大值140mV(用于10V)。g對于此分配,無法保持0.5%的電壓輸出使用誤差限制。
49:如何連接一個電位計到6ES7331-1KF0-0AB0?
電位計的采樣端和首端連接到M+,末端連接M-,并且S-和M-連接到一起。
注意:最大的可帶電阻是6K,如果電位計支持直接輸出一個可變的電壓,那么電位計的首端應該連接V+,M端連接M-。
50:如何把一個PT100溫度傳感器連接到模擬輸入模塊SM331?
PT100熱電阻隨溫度的不同其電阻值隨之變化。如果有一恒定電流流經該熱電阻,該熱電阻上電壓的下降隨溫度而變化。恒定電流加在接點Ic+和Ic-上。模擬模塊SM331在M+和M-電測定電流的變化。通過測定電壓就可以確定出溫度。
PT100到模擬輸入組有三類連接:4線連接可得到最精確的測定值。
***注意:
1)3線連接用的公式僅表明了模擬輸入模塊SM331(MLFB號為6ES7331-7Kxxx-0AB0)b"的實際測定過程。
2)在S7-300系列中,存在一些通過多次測定的模擬輸入端。它們規定出公共返回線的線電阻并作數學補償。所獲精確度幾乎與4線連接可比美。這樣模塊的一個例子就是SM331(MLFB號6ES7331-7PF00-0AB0)。
3)所給出的公式仍然適用于主要的物理關系,但并不包含確定PT100電阻的有效測定過程。
51:可以將HART測量轉換器連接到SIMATICS7-300系列常規的模擬輸入模塊嗎?
如果不需要HART測量轉換器的其它HART特性,還可以使用其它S7-300模擬輸入模塊。例如,可以使用模塊6ES7331-7KF0x-0AB0或一個帶隔離的4通道模塊(如6ES7331-7RD00-0AB0)。為此,將積分時間要設置為16.66ms,20ms或100ms。對于連接到手持式設備,或與手持式設備通信,電路中必須串接一個250-Ohm的電阻。
注意事項:如果要通過控制器(比如說,SIMATICPDM)來編程HART測量轉換器,必須使用一個相應的HART模塊(例如,6ES7331-7TB00-0AB0或6ES7332-5TB00-0AB0)。61:為什么在FM350-1中選24V編碼器,啟動以后,SF燈常亮,FM350-1不能工作?
要檢查一下,首先在軟件組態中要選擇編碼器類型(為24V),再檢查一下,FM350-1側面的跳線開關,因為缺省的開關設置為5V編碼器,一般用戶沒有設置,開機后,SF燈就會常亮。另外,還可以看看在線硬件診斷,可以看看錯誤產生的原因,是否模板壞了。
62:FM350-1的鎖存功能是否能產生過程中斷?
FM350-1的鎖存功能是不能產生過程中斷,但是可以產生過零中斷。
FM350-1的裝載值必須為零,隨者鎖存功能的執行(DI的上升沿開始),當前的計數值被儲存到另一地址然后置為初始值零,產生過零中斷,在OB40中可以讀出中斷并相應的鎖存值。鎖存值也可以從FM350-1的硬件組態地址的前4個字節中讀出。
63:在FM350-1中,怎樣觸發一個比較器輸出?
FM350-1中自帶的輸出點具有快速性、實時性,不必要經過CPU的映像區處理。輸出點一般對應于比較器,首先在硬件組態中定義比較器輸出類型,如:輸出值為1或為脈沖輸出,然后在程序中設置比較值。在FM350-1中,地址在通訊DB(UDT生成)塊中為18(比較值1)、22(比較值2),類型為DINT,然后激活輸出點28.0(DQ0)、28.1(DQ1),這樣比較器就可以工作了。
64:在FM350-2中,工作號的作用是什么?
工作號是S7-300CPU與FM進行通訊的任務號,每次的交換數據只是部分數據交換,而非全部數據,這樣可以減少FM的工作負載,工作號又分寫工作號和讀工作號,例如在FM350-2中指定DB1為通訊數據塊,如果把寫工作號12寫入到DB1.DBB0中,把200寫入到DB1.DBD52中,再調用FC3寫功能,這樣第一個計數器的初始值為200,這里工作號10的任務號是寫第一個計數器的初始值,DB1.DBB0為寫工作號存入地址,DB1.DBD52為第一個計數器裝載地址區,同樣讀工作號100為讀前4路,101為讀后4路計數器,讀工作號存入地址為DB1.DBB2。但寫任務不能循環寫,只能分時寫入。
65:如果對于4-20mA模擬量輸入模塊來說,小于4mA后轉換的數字量是多少?
如果小于4ma,那么將會是輸出負值,例如-1對應的是3.9995mA,而1.185mA時,這個數值是-4864(10進制)但是如果小于1.185mA,如果禁止斷線檢測,這個值是8000(16進制)如果有斷線檢測,會變成7FFF(16進制)。
66:怎樣對模擬量進行標準化和非標準化?
可以使用以下功能塊:
1.在塊FC164中,x和y都是整數。
2.FC165中x是整數,y是實數。
3.FC166中x是實數,y是整數。
4.FC167中x和y都是實數。
67:S7系列PLC之間最經濟的通訊方式是什么?
MPI通訊是S7系列PLC之間一種最經濟、數據量最小的一種通訊,需要做連接配置的站通過GD通訊,GD通訊適合于S7-300之間,S7-300、S7-400、MPI之間一些固定數據的通訊。不用作連接的MPI通訊適用于S7-300之間、S7-300與400之間、S7-300/400與S7-200系列PLC之間的通訊,建議在OB35(循環中斷100ms)中調用發送塊,在OB1(主循環組織塊)調用接收塊。
68:整個系統掉電后,為什么CPU在電源恢復后仍保持在停止狀態?
整個系統由一個DP主站S7-300/400以及從站組成。而從站通過一個主開關被切斷了電源。由于內部的CPU電壓緩沖器,CPU仍繼續運行大約50ms到100ms。此階段里CPU識別出所連接的從站的故障。如果沒有編程OB86和OB122的話,CPU就會因為這些有故障的從站而繼續保留在停止狀態。
69:在點到點通信中,協議3964(R)和RK512之間的區別是什么?
這兩個協議的主要區別在于消息報頭和響應消息的不同。使用RK512,提供有最高的數據完整性,程序3964(R)當傳送信息數據時,程序3964(R)將控制字符(安全層)添加到信息數據上。這些控制字符激活通信伙伴,檢查數據是否全部接收,是否無錯誤。
70:當一個DP從站出故障,如何在輸入的過程映像被清成“0”以前保存它們?
當一個DP從站出故障時,OB86(通過S7-300/400)被調用。可用下列方法“保存”輸入的過程映像:
1.把從站的所有輸入循環地復制到一個獨立的區里。
2.如果從站出問題,則OB86被啟動。在此OB里你可設一個標志位來可防止進一步的循環復制操作。
3.當從站返回總線后,你把OB86里的標志位復位。81:加密的300PLCMMC處理方法
如果您忘記了您在S7-300CPUProtection屬性中所設定的密碼,那么您只能夠采用siemens的編程器PG(6ES7798-0BA00-0XA0)上的讀卡槽或采用帶USB接口的讀卡器(USBdeleteS7MemoryCardprommer6ES7792-0AA00-0XA0),選擇SIMATICManager界面下的菜單File選項刪除MMC卡上原有的內容,這樣MMC就可以作為一個未加密的空卡使用了,但無法對MMC卡進行jie密,讀取MMC卡中的程序或數據。
82:以314C為例計數時如何清計數器值?
有兩種方法:
1:在參數設置中“Gatefunction”選“Cancelcount”軟件門為0,在為1時,值將清零,
2:利用寫“Job”的方式,寫計數值的任務號為1。
83:CP342-5能否用于PROFIBUSFMS協議通訊?
CP342-5支持PROFIBUSDP協議,不能用于PROFIBUSFMS協議通訊,同樣CP343-5只支持PROFIBUSFMS協議,不能用于PROFIBUSDP協議通訊,而CP342-5和CP343-5都支持PROFIBUSFDL的鏈接方式;
84:為什么CP342-5FO無法建立通訊?如何配置?
CP342-5FO不支持3MB,6MB的通訊速率,如果您購買的是5.1版本的CP342-5,而STEP7中沒有V5.1版的CP342-5時,則可以插入一個V5.0版的CP342-5模塊,功能不受影響。CP342-5在S7-300系統中的安裝位置與普通的S7-300I/O模塊一樣,可以插在4至11這8個槽位中的任何一個。
85:CP342-5的3中工作方式有什么區別?
NoDP方式下:可以用CP342-5通訊口進行S7編程或進行PROFIBUS的FDL連接,連接人機界面;
DPMaster方式下:CP342-5除了作為網絡中的PROFIBUS主站之外,也可用于S7編程、FDL連接和連接人機界面。DPdelaytime參數一般不需設定,除非您采用FDL連接時,要與DP的I、O點刷新時間相一致,才根據PROFIBUS網絡性能進行調整;
DPSlave方式下:CP342-5除了作為網絡中的從站之外,如果選擇了ThemoduleisanactivenodeonthePROFIBUSsubnet選擇框,那么CP342-5也可用于S7編程、FDL連接和連接人機界面,否則CP342-5只能作為從站使用;
86:CP342-5最多能完成多少數據交換?
一套S7-300系統中最多可以同時使用4塊CP342-5模塊,每塊CP342-5能夠支持16個S7Connection,16個S5-CompatibleConnection。當CP342-5處在NoDP模式下工作時,最多同時支持32個通訊鏈接,而處在DPSlave或DPMaster模式下時,最多同時支持28個通訊鏈接。CP342-5作為PROFIBUSDP主站時,最多鏈接124個從站,和每個從站最多可以交換244個輸入字節(Input)和244個輸出字節(Output),與所有從站總共最多交換2160個輸入字節和2160個輸出字節。CP342-5作為從站時,與主站最多能夠交換240個輸入字節和240個輸出字節。CP342-5可以最多連接16個操作面板(OP)以及最多創建16個S7Connnection。
87:如何實現在從站斷電、通訊失敗或從站通訊口損壞等現象出現時,主站能夠不停機?
需要在您的STEP7項目中插入相應組織塊。插入這些組織塊時,不需要編程內容,當從站斷電、通訊失敗等現象出現時,主站只報總線故障,但不停機。這樣,無論從站先上電,還是主站先上電,系統都能正常運行:
在S7-300中加入OB82、OB86、OB122;在S7-400中加入OB82~OB87、OB122;
88:CP342-5連接上位機軟件或操作面板時應該選擇什么工作模式?
如果您只是用CP342-5連接上位機軟件或操作面板(OP),這時通訊采用的是S7協議,那么建議您選擇NoDP模式,并且不需要調用FC1(DP_SEND)和FC2(DP_RECV)功能塊,它們只是在PROFIBUSDP通訊時才使用;
89:為什么系統上電后,即使CP342-5開關已經撥至Run,但始終處于STOP狀態?
應當檢查STEP7程序和組態是否正確(刪除程序,只下載硬件組態)、檢查CP342-5連接的24V電源線是否正常、M端是否與CPU的M端短接、通訊電纜連接是否正確(確認通訊電纜未內部短路),CP的firmware是否正確。如果您確認可以排除以上原因,那么可能您的CP342-5已經損壞,請更換;
90:如何用CP342-5組態PROFIBUS從站?
1.在STEP7中生成一個新的項目,并插入一個S7-300站。
2.在硬件組態窗口中選擇一個S7300的導軌以及相應的CPU。
3.硬件組態窗口中,在路徑"SIMATIC300>CP300>PROFIBUS>CP342-5"選中于您訂貨號和版本號對應的CP342-5,插入到S7300站對應的槽位中,注意如果您購買的是Version5.1,而組態中只能夠找到Version5.0,您可以選用Version5.1替代Version5.0.。
4.在插入CP342-5的過程中,會彈出一個PROFIBUS屬性窗口,請點擊”New…”按鈕,創建一個PROFIBUS網絡PROFIBUS(1),并設定CP342-5作為從站的站地址為3。
5.雙擊CP342-5,打開CP342-5的屬性窗口,在"OperatingMode"標簽頁下選擇"DPSlave"選項,此時會彈出一個警示窗口,告知您如果要用CP342-5實現CPU和PROFIBUS從站的通訊,必須調用FC1(DP_SEND)和FC2(DP_RECV)功能塊,實現CPU與CP342-5之間的數據交換,而CP342-5與PROFIBUS的數據交換是自動完成的,不用編程。FC3和FC4用于診斷和通訊功能的控制,一般不用調用。
6.點擊OK,存盤編譯。.
91:如何用CP342-5組態PROFIBUS主站?
1.在STEP7的SIMATICManager窗口中在插入一個S7300站;
2.重復以上組態從站步驟的2-4步,注意插入CP342-5時,不能點擊”new…”按鈕,而直接用鼠標選中以上創建的PROFIBUS(1)網絡,點擊OK;
在"OperatingMode"標簽頁中選擇"DPMaster"選項;
92:采用CP342-5的DP通訊口與采用CPU集成的DP通訊口進行通訊有什么不同,這兩種通訊口功能有什么不同?
可以通過CPU集成的DP通訊口或CP443-5模板的DP通訊口,調用Load/Transfer指令(語句表編程,如圖2)、Mov指令(梯形圖編程)或系統功能塊SFC14/15訪問從站上的I/O數據;
如果您使用342-5模塊的DP通訊口進行通訊,那么您就不能使用Load/Transfer指令(語句表編程)、Mov指令(梯形圖編程)直接訪問PROFIBUS從站的I/O數據。采用CP342進行PROFIBUS通訊包括兩個步驟:
1.CPU將數據傳輸到CP通訊卡的數據寄存器當中;
2.數據從CP342-5的數據寄存器當中寫到PROFIBUS從站的Output數據區(反過來就是CPU讀取從站Input數據的過程);CP342-5與從站的Input/Output數據區的通訊過程是自動進行的,但是您還必須自己手動的調用功能塊FC1(”SEND”)和FC2(”RECV”),完成CP342-5與CPU之間的數據交換。
93:功能塊DP_SEND、DP_RECV"的返回值代表什么意思,如何理解?
"DP_SEND"功能塊包括有"DONE","ERROR"和"STATUS"三個參數,用來指示數據傳輸的狀態和成功與否。"DP_RECV"功能塊包括有"NDR","ERROR","STATUS"和"DPSTATUS"四個參數,用來指示數據傳輸的狀態和成功與否。您可以定義相應的數據地址區,存放這些返回值,分析返回的值的意思,當Error=False,STATUS=0,DONE=True,NDR=True時,說明CPU與CP342-5之間的數據交換成功進行。
94:DP從站,CP模板以及CPU之間的數據通訊過程是如何進行的?
使用CP342-5模塊,無論調用"DP_SEND"功能塊還是"DP_RECV"功能塊,您都不能直接讀寫某個PROFIBUS從站的I/O數據。CP342-5模塊有一個內部的Input和Output存儲區,用來存放所有PROFIBUS從站的的I/O數據,較新版本的CP342-5模板內部存儲器的Input和Output區分別為2160個字節,Output區的數據循環寫到從站的輸出通道上,循環讀出從站輸入通道的數值存放在Input區,整個過程是CP342-5與PROFIBUS從站之間自動協調完成的,您不需編寫程序。您可以在PLC的用戶程序中調用"DP_SEND"和"DP_RECV"功能塊,讀寫CP342-5這個內部的存儲器。
95:通過CP342-5,如何實現對PROFIBUS網絡和站點的診斷功能?
用功能塊"DP_DIAG"(FC3)可以在程序中對cp模塊進行診斷和分析,可以通過job類型如DP診斷列表,診斷單個dp狀態,讀取dp從站數據,讀取cp或cpu的操作模式,讀取從站狀態等等
96:為什么當CP342-5模塊作為PROFIBUSDP主站,而ET200(如IM151-1或IM153-2)作為從站時,CP342-5上的SF等不停閃爍?
當S7-300系統中的CP342-5作為DP主站,下掛IM153-2模塊時,IM153-2只能作為DP主站,而不是S7從站運行。可以采取通過GSD文件將ET200從站組態進你的系統。隨后IM153模塊可作為DP標準從站運行。為此,您必須將GSD文件安裝到硬件目錄中(通過菜單序列Tools>"InstallnewGSDfile")。在更新了硬件目錄后您會在"PROFIBUS-DP>AdditionalFieldDevices".中發現DP從站。
97:11.2.在STEP7中打開一些對象時出錯是什么原因?
有的時候您在打開某些項目中的對象時,STEP7會彈出報錯窗口,錯誤信息為’*.dll’文件無法被裝載,代碼是257:5,界面如下:
可以看出,上面的錯誤信息是一個或多個對象不能被顯示,出現這種錯誤的原因是您沒有安裝與要打開對象相關的軟件包。
98:如果想通過上位或觸摸屏對PLC中S5TIME類型的參數進行設定,有什么方法?
1、從上位機寫整型數INT或實數REAL到PLC,首先該數值需包含以毫秒為單位的時間值,在寫入PLC的數據存儲區后,利用ITD(IntegertoDoubleInteger)或RND(RealtoDoubleIntegerwithRoundingOff)將該值轉換為雙整形,然后將該值寫到類型為TIME的變量里,在程序中調用FC40,將TIME轉換成S5TIME即可。
2、從上位機寫WORD到PLC,首先該數值需包含以某時基為單位的時間值,在寫入PLC的數據存儲區后,用WordLogic下的WOR_W指令將該值與其時基相或,再利用MOVE指令將得到的數值寫入S5TIME類型的變量中。
3、如果使用WinCC作為上位軟件,或上位軟件支持32位帶符號浮點數,可以從上位寫32位帶符號浮點數到PLC中定義為TIME的變量,然后在程序中調用FC40,將TIME轉換成S5TIME即可。
99:STEP7中相關時間處理和轉換的功能塊有哪些?
SFC0"SET_CLK"設置CPU時鐘
SFC1"READ_CLK"讀出CPU時鐘
FC3"D_TOD_DT"從DATE_AND_TIME中取出DATE。
FC6"DT_DATE"從DATE_AND_TIME中取出thedayoftheweek,即星期幾
FC7"DT_DAY"從DATE_AND_TIME中取出時間
FC8"DT_TOD"
FC33用于S5TIME到TIME的轉換
FC40用于TIME到S5TIME的轉換
100:如何實現帶電拔出或插入模板,即熱插拔功能?
硬件要求:
使用普通的S7-300導軌和U型總線連接器是不能實現熱插拔功能的,您必須購買有源總線底板,才能實現該功能。另外,您在配置時,必須使用MLFB6ES7153-1AA02-0XB0版本以上的接口模塊,因為它支持DP協議的DPV1版本,而MLFBIM153-1AA00-0XB0模塊是不支持該功能的。目前您能夠購買到的IM153接口模塊都支持熱插拔,只有2-3年以前的IM153接口模塊不支持熱插拔。
軟件要求:您必須在STEP75.1版本以上進行配置;
如果您采用S7-400CPU或S7-400CP作為DP主站,那么您可以直接在IM153的屬性窗口的"OperatingParameters"標簽頁里配置熱插拔功能。
1:在STEP7的硬件組態窗口的PROFIBUSDP目錄中選擇相應IM153模塊,可以看出該模塊支持“moduleexchangeinopration”(熱插拔);
2:將IM153模塊拖到PROFIBUS總線上;
3:選擇I/O模塊,插入到ET200M站的各個槽位中;
4:雙擊ET200M站,打開屬性窗口,選中“Replacemodulesduringoperation“(熱插拔)選項;
5:屬性窗口中提供了ET200M站熱插拔功能所需的有源總線導軌的訂貨號;
6:屬性窗口中提供了該型號IM153,插入的I/O模塊對應使用的有源總線底板的訂貨號;
除了以上的硬件組態之外,還要向S7-400中下載OB82、OB83、OB84、OB85、OB86、OB87、OB121、OB122等組織塊。當ET200M從站上進行模塊的熱插拔時,中斷組織塊OB83,OB85,OB122被調用。
如果您采用S7-300CPU或CP342-5作為DP主站,那么您只能夠通過安裝GSD文件的方式將IM153模塊組態成DP從站,并雙擊IM153,打開它的屬性窗口,進行設置。否則您在STEP7的硬件組態窗口中直接將PROFIBUSDP目錄ET200M文件夾下IM153模塊掛在PROFIBUS總線上。101:我如何做到對自己的程序塊進行加密保護?
您能夠通過STEP7軟件的KNOW_HOW_PROTECT功能實現對您程序代碼的加密保護。
如果您雙擊鼠標打開經過加密的程序塊時,您只能看到該程序塊的接口數據(即IN,
OUT
和
IN/OUT
等類型的參數)和注釋信息,而程序塊中的代碼及代碼的注釋,臨時/靜態變量是不能被看到的。同時您也無法對加密保護的程序塊做出任何改動。
如何實現程序塊保護:
1.打開程序編輯窗口LAD/FBD/STL;
2.將要進行加密保護的程序塊生成轉換為源代碼文件(通過選擇菜單
File—>Generate
source
生成);
3.在LAD/FBD/STL
窗口中關閉您的程序塊,并在SIMATIC
Manager項目管理窗口的source文件夾中打開上一步所生成的source文件;
4.在程序塊的聲明部分,TITLE行下面的一行中輸入”KNOW_HOW_PROTECT”;
5.存盤并編譯該source文件(選擇菜單FileàSave,FileàCompile);
6.現在就完成了您程序塊的加密保護;
102:我如何做到對自己的程序塊進行jie密?
取消對程序塊的加密保護
1.
打開程序塊的Source源文件;
2.
刪除文件中的KNOW_HOW_PROTECT;
3.
存盤并編譯該source文件;
現在程序塊的加密保護已經取消。
注意:
如果沒有
STL
source
源文件,您是無法對已經加密的程序塊進行編輯的;121:如何判斷電源出錯,如:電池故障?
如果電源(僅S7-400)或緩沖區中的一個錯誤觸發一個事件,則CPU操作系統訪問OB81。
錯誤糾正后,重新訪問OB81。電池故障情況下,如果電池檢測中的BATT.INDIC開關是激活的,則
S7-400僅訪問OB81。如果沒有組態OB81,則CPU不會進入操作狀態STOP。如果OB81不可用,則當電源出錯時,CPU仍保持運行。
122:如何診斷模擬量模板?
CPU
可以中斷用戶程序的執行處理診斷報警塊OB
82。
在用戶程序中你可以調用OB
82
中的SFC
51
或SFC
59
以從模板中獲得更為詳細
的診斷信息。
診斷信息在OB
82
退出之前都是一致的當OB
82
退出時將對模板作出診斷中斷響
應。
123:對于小功率輸入的觸發器,如何避免線路損壞?
將觸發器連接到SM322-8BF,如果它的1信號功率輸入低于10mA(例如1mA),則可能會報告線路損壞
。
不建議禁用“Wire
breakage”診斷,因為這將禁用所有的診斷,并且當SM322-8BF在一定電流范圍(0.5到10mA)內工作時,可能無法安全地開關。
補救措施:接一個與觸發器平行的電阻,這樣至少有10mA(24V
ca.
2.4
kOhm)的電流。該電阻應該直接安放在觸發器上,從而可以方便檢測線路損壞。
124:如何為S7
318-2
CPU進行操作系統更新?
創建一個操作系統更新卡所必需的條件:
1.
S7存儲卡的類型:2
MB的閃存,訂貨號6ES7
953-8LM00-0AA0、6ES7
951-1KL00-0AA0
2.
STEP
7
V3.1或更新版本
3.
具有外部PROM編程器的PC或者編程設備(PG),用于編程存儲卡
使用STEP7創建操作系統更新卡的步驟:
1.
下載所需的CPU文件;
2.
雙擊文件名將文件解壓縮;
3.
在Simatic
Manager中執行“File/S7
Memory
Card/Delete”,刪除微存儲卡內容;
4.
在Simatic
Manager中選擇“PLC/Update
CPU
Operating
System”對操作系統進行編程。選擇目標目錄并“打開”CPU_HD.UPD文件,開始編程過程;
5.
當標準鼠標指針重新出現時,即完成對操作系統更新卡的編程。
執行操作系統更新:
1.
切斷CPU所處機架的電源(PS);
2.
在CPU中插入準備好的操作系統更新卡;
3.
接通CPU所處機架的電源(PS);
4.
操作系統從微存儲卡傳送到內部CPU閃存EPROM。此時,將點亮CPU的所有LED(INTF、EXTFFRCE、<
span
lang="EN-GB">CRST、RUN、<
span
lang="EN-GB">STOP);
5.
大約2分鐘后完成操作系統更新,此時STOP
LED將慢速閃動=>請求系統存儲器復位;
6.
切斷電源,插入操作所需的微存儲卡;
7.
接通電源,CPU執行一次自動存儲器復位,之后立即進入準備就緒狀態。.
注意:為執行更新,必
須從模塊中拆除電池.
125:模擬量模板的信號轉換時間如何計算?
轉換時間由基本轉換時間和模板的以下其它處理時間組成
1)電阻測試
2)斷線監控
基本轉換時間直接取決于模板量輸入模板的轉換方法積分方法瞬時值轉換
對于積分轉換方法積分時間將直接影響轉換時間積分時間取決于你使用STEP
7
所設置的干擾頻率抑制。
126:是否可能在兩個DP從站之間運行一個DP網絡?
不能。不可能建立從站-從站通信。總是需要一個主站來操作DP網絡。智能從站可以訪問其它從站的初始值(直接數據通信),但是總是需要DP主站來控制DP網絡。
智能從站也可以不使用DP網絡而獨自工作(單機工作),但是它們不能作為DP主站來提供服務。僅可以與模塊接口共同工作。
127:對于有些模擬量輸入模板你可以使用STEP
7
設定模擬值的平滑指數,它能起到什么作用?
使用平滑指數:模擬值的平滑指數可以保證進一步處理的穩定模擬信號;這對于模擬值與被測值之間的緩慢變化相適應非常重要,例如溫度測量時。
平滑原理:被測值可以通過數字濾波進行平滑平滑可以通過模板根據轉換數字化模擬值的規定數量計算平均值來實現;用戶可以在最多四個等級賦值平滑參數無低平均高這四個等級決定了用于平均計算的模擬信號數量;所選平滑等級越高所平滑的模擬值將越穩定時間越長直到在一個階躍響應后適用所平滑的模擬信號。
128:模擬信號電纜應該單端接地還是2端接地?
為了減少電子干擾對于模擬信號應使用雙絞屏蔽電纜模擬信號電纜的屏蔽層應該兩
端接地。
但是如果電纜兩端存在電位差將會在屏蔽層中產生等電線連接電流造成對模擬信號的干
擾在這種情況下你應該讓電纜的屏蔽層一點接地。
129:模擬量信號為:7FFFH,是什么原因?
每個模擬量輸入模板都可提供被測值7FFFH
與發現故障時的參數賦值無關,該被測值
可以是上溢故障或通道無使能
130:防止靜電放電危險一般有哪些措施?
保證良好的接地:在處置對靜電敏感的設備時應確保人體工作表面和包裝有良好的接地這樣可以避免充上靜電。
避免直接接觸:只在不可避免的情況下才接觸對靜電敏感的設備例如在維修時手持模板但不要接觸元件的針腳或印刷板的導體用這種方法使放電能量不會影響對靜電敏感的設備
如果必須在模板上進行測量在開始測量之前必須先接觸接地的金屬部分使人體放電這種方法只適用于接地的測量設備。
141:應用軟件冗余當一個長度錯誤出現導致CPU處于STOP模式應該作些什么?
當在OB100中設置軟件冗余功能塊FC100時,必須注意下列情況:參數IEC_NO的背景數據塊必須至少有兩個字的長度,同樣應用于冗余用戶程序的參數DB_NO的數據塊也必須時這樣。
142:在S7程序中,有許多FC、FB塊,我怎樣對其中的一些塊進行保護,而其它的塊可以是開放的呢?
1)Step7中,可以先任意打開一塊如OB1,在"file"中選擇"GenerateSource"或快捷方式"Ctrl+T",彈出一個畫面,填寫"objectname"如"tt",然后按OK確認,就會再彈出另一個畫面,左邊是你的程序中所有的塊,如果你需要保護哪些塊,就把這些塊移到右邊,如FB1、FB2等等,然后退出所有的程序塊,再進入SIMATICManager中。
2)在S7ProgramSources找到文件tt,雙擊tt打開,在第四行中加入"Know_How_Protect",然后編譯,無錯后存盤。這樣FB1、FB2就被保護住,如想去掉保護,在tt中去掉"Know_How_Protect"編譯存盤即可。
注意:千萬不要丟失或刪除源文件(如tt),否則程序被保護,用戶可以另存到其它目錄中,或ExportSource到硬盤中,再刪除源文件,這樣別人只能看到未保護的塊。
143:SFB41,SFB42,SFB43和FB41,FB42,FB43的區別?
SFB41(CONT_C),SFB42(CONT_S),SFB43(PULSEGEN)塊和FB41(CONT_C),FB42(CONT_S),FB43(PULSEGEN)的區別:SFB41,42,43與FB41,42,43的參數設置是一樣的。SFB41,42,43只能用于CPU314IFM;FB41,42,43可用于CPU313以上的CPU(除CPU314IFM),因為SFB41,42,43集成于CPU314IFM中,而在普通CPU中沒有這些塊。
144:如何在多例兼容功能塊中找到變量地址?
在多例兼容功能塊中,為塊參數和靜態本地數據加載與地址寄存器AR2有關的絕對地址。如果要在情景數據塊中找到變量的絕對地址,則必須把域內指針(只是AR2的地址)加載到變量地址。
樣例:
TAR2//將地址寄存器加載到累加器AC1(偏移量)
UDDW#16#00FF_FFFF//關閉區域ID
LP##variable//加載變量地址
+D//增加偏移量和變量地址
LAR1//保存地址寄存器AR1中的結果
這樣可在AR1中獲得絕對地址以進行進一步處理。
當功能塊作為本地實例調用時,總要使用該方法。比如,在一個功能塊中創建可做為類型“FB”的靜態變量的功能塊。這樣所調用的情景數據塊的數據偏移量就存儲到情景數據塊中。單個實例的偏移量在AR2中。如果不調用作為本地實例的功能塊,則可以結束計算。值‘0’就在地址寄存器中。
注意事項:如果改變程序中的地址寄存器AR2,那么也改變了變量的偏移量地址。因此就不能保證再對變量進行正確訪問。在這種情況下,必須預先保存AR2,并在對程序動作完之后將其復位為初始狀態。
樣例:
TAR2//在累加器中加載偏移量地址
T#save//比如,靜態本地數據域0中的變量
LDID0//地址絕對是由DI加載的beds<Y
LAR2//核對
145:怎樣才能訪問上一函數的本地數據?
如要訪問以前的本地數據(“V-e>L”數據),可以傳送一自創建ANY指針或絕對地址到被調用的FC。如果傳送的是自創建ANY指針,區域指針會指向其本地數據,而這是無意義的。>因此“V”區域碼必須置于ANY指針中。此碼必須準確傳送。當指定絕對地址時可由編譯器完成此工作。
常規程序結構:
以ANY指針或絕對(地址)方式傳送:
LAR1P##target//本地定義的ANY變量初始地址
LW#16#87//為“V”區域載入碼
TLB[AR1,P#6.0]//傳送到ANY變量
CALLFCxy
source1:=#target//傳送自創建的ANY指針
source2:=P#L0.0BYTE8//傳送完全L數據區
絕對尋址與通過ANY指針尋址的區別:
下圖顯示了絕對尋址與通過自創建ANY指針尋址間的區別。在這種情況下“87”碼不傳送,因此ANY指針指向其本地區域。
146:怎樣在DB內進行間接尋址?
請參照:
在DB內進行間接尋址例子
147:下面是一個在STEP7軟件中實現簡單指針尋址的例子程序,您可以參考它的結構實現您的指針尋址功能?
siemens指針尋址例子_cpu315
148:絕對地址和符號尋址的定義和區別是什么?
在STEP7程序中要用到I/O信號、位寄存器、計數器、定時器、數據塊及功能塊。在程序中可以采用直接地址,或者更便于讀程序的符號尋址,例如Motor_A_On,或采用你的公司或行業常用的代碼。這樣在你的用戶程序中就可以通過符號來尋址。
絕對地址:絕對地址由地址標識符和存儲器的位置組成,例如Q1.0,I1.1,M2.0,FB21等。
符號地址:如果為絕對地址指定一個符號名,程序會更便于閱讀和查錯。
STEP7可以自動將符號名翻譯成所需的絕對地址。如果要用符號名存取ARRAY、STRUCT、數據塊、局部數據、邏輯塊、以及用戶自定義數據類型,必須首先為絕對地址指定一個符號名。
例如,可以為Q0.0指定一個符號名MOTOR_ON,然后在程序中將MOTOR_ON作為一個地址使用。使用符號地址更容易將您的過程控制項目中的元件與程序中的元件相對應。
注意:在符號名中不允許使用兩個連續的下劃線,例如MOTOR__ON。
編程支持:LAD、FBD、STL中地址、參數、塊名可用絕對地址或符號表示。
用菜單命令View>Display>SymbolicRepresentation,可以切換絕對地址和符號地址
為了使用符號地址編程更加容易,可以同時顯示絕對地址和符號名。使用菜單命令View>Display>SymbolInformation來激活。這就意味著STL語句的注釋包含了更多的信息。不能在該界面下進行修改,只能在符號表(symboltable)或變量聲明表(variabledeclarationtable)中進行修改。
149:S7-300/400系統存儲區域共有多少種?
S7CPU的系統存儲區域分為下表中列出的地址區域。在程序中可以根據相應的地址直接讀取數據。
150:如何把一個DATE_AND_TIME變量轉換為STRING變量?
為了以日期/時間字符串(STRING)形式顯示DATE_AND_TIME變量,必須DATE_AND_TIME變量的專用字節轉換為相應的CHAR字符。
讀取DATE_AND_TIME變量的專用字節并從這兩位數所在ASCII碼中創建專用位。將確定了的CHAR字符存儲在字符串的期望位置。
示例:
L字節年
SLD12
SRW4
SRD8
LW#16#3030
+I
T數字字符年
也可以用相反順序將一個STRING格式的日期/時間字符串轉換為一個DATE_AND_TIME變量。
關于300系列的問題解答就整理到這里,如果有您無法解決的問題,歡迎貼出來,我會陸續進行補充。地有多種
GND---地
一般是電源地
SGND---signal
GND
信號地
AGND--ANALOG
GND
模擬地
DGND---DIGITAL
GND
數字地之所以分這么多,
是為了在復雜系統中增強抗干擾能力,
這個可以參考電磁兼容方面的資料.VCC---雙極型(BJT)集體管電路的正電源一般標成VCC,
是因為這種晶體管集電極用C表示.
VDD--場效應管(FET)電路的正電源一般標成VDD,是因為這種管子的漏極用D表示.單片機如何入門
一、前言很多單片機初學者與我交流時總說的一句話是我現在是單片機初學者,我怎樣才能更快的學好單片機,我該從哪方便入手。對于這個問題,現在就我自己如何學單片機,如何入門,如何熟練談談想法。先說單片機,現在用的比較多的以51為內核的8位單片機(考慮到成本及引腳資源在實際開發中用的51單片機型號不一),它的學習資料非常多,且學習成本非常低,可能有些初學者會說企業里用的不是51單片機,更多的是松翰、義隆什么,但是我想說的是那些單片機的輔助開發工具你有嗎。51單片機對于智能電子技術的入門學習是非常有優勢,成本低,開發簡單,一線下載程序,ARM太神秘,PLC太高貴,想來想去還是51,曾經有過AVR和PIC,但是現在51也不賴。
那怎樣才能更快更好的學好單片機呢?
單片機作為集電子技術與計算機編程技術為一體是一項非常重視動手實踐的科目,如果你是單片機高手,那么說明你也是計算機編程和電子技術高手。二、學習單片機一定要看書不能總是看書,但是學習它首先必須得看書,那這不很矛盾?因為從書中你需要了解單片機各個功能寄存器(比如引腳控制寄存器、定時、中斷、串口相關寄存器),控制單片機的核心是用程序去控制單片機的各個功能寄存器,給寄存器賦值二進制數據0或者1,對于像中斷、定時器、串口、AD轉換等內部資源寄存器,單片機也可以通過二進制數據0和1進行設置和使用。比如單片機引腳寄存器P1,語句P1=0xfe;(MOV
P1,#0FEH)指控制單片機P1口的第一個引腳輸出低電平,其他引腳輸出高電平,外設電路根據高低電平工作。比如中斷允許寄存器IE,語句IE=0x81;(MOV
IE,#81H)
則說明控制中斷打開總開關和外部中斷0的子開關。當然了,單片機的寄存器還可以接受位控制,這樣編程更方便。至于看書,只需大概了解單片機各管腳、各個功能寄存器是干什么的能實現什么功能就夠了?這個非常重要,這也許是看單片機參考書最主要目的之一。第一次,第二次你可能看不明白,但這不要緊,因為還缺少實際的感觀認識。通過接下來的實驗就可以非常感觀的認識,在這個過程一定要花時間,學習程序不能硬背,但是學習寄存器一定要下功夫,理解他的功能所在,適當的時候當單詞背下來。推
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 村委會入股合同協議書
- 退卡退費協議書
- 測量工臨時用工協議書
- 租金返還協議書
- 資料丟失協議書
- 酒吧禁毒協議書
- 實驗室安全合同協議書
- 租賃客戶協議書
- 美發解約協議書
- 打印店股權分配協議書
- 重慶地區現代方言中的古語詞
- 3第三章申論寫作 寫作課件
- 廣西建設工程質量檢測和建筑材料試驗收費項目及標準指導性意見(新)2023.10.11
- 商戶撤場退鋪驗收單
- 國開電大 可編程控制器應用實訓 形考任務5實訓報告
- PEP英語四年級下冊U5 My clothes Read and write(教學課件)
- DB37-T 2671-2019 教育機構能源消耗定額標準-(高清版)
- 信息系統項目管理師論文8篇
- (完整版)重大危險源清單及辨識表
- 試驗室儀器設備檢定校準證書和測試報告確認表(公司范本)
- 《傳媒翻譯》教學大綱
評論
0/150
提交評論