西門子S7-300 編程多個問題解答之六(101-130)
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 源文件,您是無法對已經加密的程序塊進行編輯的;
103:在冗余電源配置中,電源模塊掉電,調用那個OB可以防止CPU停機?
通過在程序中添加OB83可以防止CPU停機而添加OB81不能防止CPU停機。
通常我們很容易以為OB81就是處理所有電源故障的OB塊,但對于冗余電源配置中,某個電源模塊掉電故障,實際上CPU當作模塊插拔故障來處理,因此需調用OB83。
104:WinCC作為Modbus主站,進行浮點數讀取時數據不正確是什么原因?
WinCC作為Modbus主站,進行浮點數讀取時,Tag的類型應當選為浮點數32位,注意地址偏移為32的整數倍+1(即33、65、97),如果采用選用Input Bits/Output Bits方式讀寫(Function Code 01,02),在PLC當中應當將一個字的高低8位進行對調。如果選用Input Words/Output Words方式讀寫(Function Code 03,04),在PLC當中將一個雙字的高低16位進行對調,S7300 Modbus程序塊的浮點數處理存在誤差,大致在0.5%左右。
105:CP341 modibus通訊時,modibus功能碼如何設定?
Function Code 01,05,15 對應M,Q,T,C等數據區,可讀可寫,具體的字節范圍由您在modbus從站組態時設定。
Function Code 02對應M,I數據區,只讀,具體的字節范圍由您在modbus從站組態時設定。
Function Code 03,06,16 對應DB區,可讀可寫,在modbus從站組態時設定對應的DB塊。
Function Code 04 對應DB區,只讀,在modbus從站組態時設定對應的DB塊。
106:CP34x的通訊連接電纜中,自己制作電纜應該注意哪些?
如果你使用自己制作的電纜,那么必須使用帶屏蔽外殼的D型接頭,屏蔽線應當和接頭的外殼連接,禁止將電纜的屏蔽層和GND連接,否則會造成通訊接口的損壞,請注意RS232不支持熱插拔,所以一定要斷電后在插拔通訊電纜;
107:在用CP340,CP341與第三方產品通訊時(如PC機,用VB,VC讀數據)怎樣識別聯線是否是好的?
在用CP340,CP341與PC機通訊時,常常讀不出數據,這樣有兩個方面原因。
其一,在PLC側程序是否正確。用上升沿觸發P_Send,可以看見TXD燈閃,這樣可以判斷PLC側程序沒問題;
其二,PC側VB,VC程序的問題及電纜線的聯接好壞,無從知道,如果聯線沒問題,就可以集中精力在PC側找原因,判定聯線是否接好,顯得非常重要,有一個小方法可以測出。在PLC側修改CP340用ASCII方式傳送,在發送DB塊中寫幾個字符形式的數據(chat 如'1','2','A'等)并間隔觸發P_Send功能塊。
在PC側修改串口參數與PLC一致,如波特率,數據長度,停止位,奇偶校驗,無握手信號等。在Windows下附件中打開"Hyper Terminal"建立一個直接到串口的連接,這樣就可以讀到從PLC中發送的數據如‘12A’等。同樣用"Send Text File"的功能,把一些字符送到PLC。這樣如果聯接電纜是好的,那么可以簡單地判斷問題是出在哪里。
108:如何使用CP341模板實現Modbus主站或從站通訊,我應當定購那些產品?
1)CP341 模塊: 6ES7 341-1xH01-0AE0 (x:= A: RS232; x:= B: TTY; x:= C: RS422/485)
2)**(MODBUS master): 6ES7 870-1AA01-0YA0
或者**(MODBUS slave): 6ES7 870-1AB01-0YA0
109:每當斷電重啟后,CP341模板和調制解調器(如SATEL的modem)之間的通訊出錯是什么原因?
這是因為 DTR 、 RTS信號默認為0造成的,可以在OB1中調用FC6 (V24_SET). 參數RTS 和 DTR 設置為"TRUE".
110:配置"CP 340 RS232C"打印工作應注意什么?
調用功能塊FB4"P_PRINT"打印字符信息。功能塊"P_PRINT"傳送信息給通訊處理器CP340,CP340發送信息給打印機把信息打印出來。為了打印這些信息必須知道參數"P_PRINT","Pointer DB","Variables DB"和"Format String"的相對關系。
111:CP 341 / CP 441-2 需要多少許可證(License)?
在任何情況下,每一個MODBUS站都需要一個單獨的許可證。6ES7 870-1AA01-0YA0包含軟件CD,文檔(PDF文件)和硬件狗。如果在同一個站使用幾個CP341或CP441通訊處理器,則每個CP都需要一個MODBUS許可證副本(copy license),即不帶手冊和軟件的MODBUS Dongle,只有一個硬件狗,訂貨號為6ES7 870-1AA01-0YA1。
注意事項:
對于有兩個接口的 CP 441-2,僅需要一個許可證,并且每個接口都可以使用任何協議。
112:關于CP34x串行通訊中的起始位、數據位、校驗位、停止位的說明?
CP34x通訊模板與其他設備進行通訊時,串口傳輸的是一個10位或11位的數據幀,在模塊的Parameters屬性窗口中您可以設置數據幀的格式,對這個10或11位組成的數據幀的組成遵循以下規則:
幀的第一位必須是起始位,始終為1,不能修改;
起始位之后是7-8位數據位,由用戶收發的數據組成;
數據位之后是校驗位,odd奇校驗,even偶校驗,any不校驗但校驗位為0,none無校驗位;
校驗位之后是停止位,可以設為1-2個位,始終為1,不能修改;
113:如何通過單向通信從S7-300 / 400訪問S7-200上的數據?
通過MPI,從帶有X_PUT / X_GET的S7-300 / 400 可以訪問幾個S7-200 CPU。在這種情況下,g S7-300 / 400 是主站,S7-200 是從站。
對于CPU22x系列的S7-200 CPU,可以在19,2 kBd 和 187,5 kBd下工作。從某個固件狀態起,CPU21x系列的S7-200 CPU只能控制波特率19,2 kBd。
114:使用通訊處理器(CP340, CP341, CP441-2, CP441-1)時對于協議 3964(R) 和 RK512 可以使用 2 線和 4 線模式嗎?
在點對點通訊中,在使用上述的通訊處理器時,只能在 4 線模式中執行協議 3964(R) 和 RK512.
115:當傳輸字符串或ASCII字符應注意什么?
當傳送字符串必須確認最高為254字符。一個STRING(character string)的數據格式最大256字符,包括254個字符,最大的字符長度在字符串的第一字節中定義,實際長度在第二個字節中定義,接下來的是字符ASCII格式。
當傳送字符串數據時,指針必須指向用戶數據的第一位而不是字符串的第一個位。
116:通過PROFIBUS-DP使用SFC 58/59或者 SFB 52/53進行通信時,存在通信限制嗎?
當使用寫操作標簽和讀操作標簽(SFC 58/59或者SFB 52/53)時,存在根據CPU而定的對活動工作的限制:
CPU 31x-2DP: 每個DP鏈上允許同時進行4個寫操作和4個讀操作。
CPU 317, CPU 318-2: 每個DP鏈上允許同時進行8個寫操作和8個讀操作。
CPU 41x-2DP: 每個DP鏈上允許同時進行8個寫操作和8個讀操作。
在外部鏈上,每個SFC/SFB同時進行的寫操作和讀操作的數目總共不能超過32。因此,每個CPU和SFC/SFB上可以同時進行最多40個(內部鏈上8個 + 外部鏈上32個)作業。
如果在PROFIBUS Net上運行幾個通信伙伴,請確保不要激活比指示值更多的作業。一個SFC/SFB可能持續幾個CPU循環周期.
118:可以用模擬輸入模塊SM 331-7NF00進行參數設置的最大干擾頻率是多少?
通過硬件配置,可以設置參數為400Hz的最大干擾頻率。通過特殊的濾波器可以得到這個數值。
最小的有效綜合時間是10ms——這樣就可抑制100Hz的干擾頻率。模塊的最小基本執行時間(釋放所有通路)是140ms.
119:關于機架故障,在編程OB86時需要注意哪些事項?
只要檢測出機架故障,操作系統就會調用OB86,例如:報告機架故障(例如:缺少IM或IM故障導致連接電纜中斷),機架的分布式電源故障,在總線系統PROFIBUS-DP的主站系統中,DP從站發生故障。
在S7-300和S7-400中處理故障的方法不同:
在S7-300中,當中央機架出現故障時,不調用OB 86;只有分布式機架發生故障才調用它。
在S7-400中,非分布式或分布式機架出現故障的情況下,均調用OB 86。
120:關于300的硬件安裝配置應該注意什么?
通常一套S7-300 PLC系統有一個主機架,安裝有CPU的機架稱為主機架,當主機架上的I/O模塊(最多8塊)上的控制點數不夠時,可以再增加1-3個擴展機架,每個擴展機架最多可安裝8個I/O模塊,裝在4到11槽,3個擴展機架最多安裝24個I/O模塊。
在使用擴展機架時,需要機架(Rack),電源模塊(PS),接口模塊(IM),連接電纜368,S7-300的模塊(信號模塊、通訊模塊、功能模塊等)。
S7-300的安裝機架是一種導軌。你可以使用該導軌,安裝S7-300系統的所有模板。S7-300既可以水平安裝,也可以垂直安裝。要注意其允許的環境溫度為:
垂直安裝:0 至 40°C、水平安裝:0 至 60°C、 CPU和電源必須安裝在左側或底部。
如果電源(僅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:防止靜電放電危險一般有哪些措施?
保證良好的接地:在處置對靜電敏感的設備時應確保人體工作表面和包裝有良好的接地這樣可以避免充上靜電。
避免直接接觸:只在不可避免的情況下才接觸對靜電敏感的設備例如在維修時手持模板但不要接觸元件的針腳或印刷板的導體用這種方法使放電能量不會影響對靜電敏感的設備
如果必須在模板上進行測量在開始測量之前必須先接觸接地的金屬部分使人體放電這種方法只適用于接地的測量設備。
文章版權歸西部工控xbgk所有,未經許可不得轉載。