內江S7-1200PLC西門子代理商原裝現貨
發布日期 :2023-03-27 13:35發布IP:113.247.101.239編號:11546377
詳細介紹 內江S7-1200PLC西門子代理商原裝現貨 內江西門子S7-1200PLC代理,內江西門子PLC代理,西門子S7-1200PLC代理,西門子PLC代理 西門子PLC局部變量表與子程序使用技巧有哪些??局部變量表 ??1.局部變量與全局變量 ??程序中的每個POU(Program Organizational Unit,程序組織單元)均有白己的由64字節L存儲器組成的局部變量表。它們用來定義有范圍限制的變量,局部變量只在它被創建的POU中有效。與之相反,全局符號在各POU中均有效,只能在符號表/全局變量表中定義。全局符號與局部變量名稱相同時,在定義局部變量的POU中,該局部變量的定義優先,該全局定義則在兒它POU中使用。 ??局部變量適用于以下兩種情況: ??(1)在子程序中只用局部變量,不用**地址或全局符號,子程序可移植到別的項目去。 ??(2)如果使用臨時變量(TEMP),同一片物理存儲器可在不同的程序中重復使用。 內江S7-1200PLC西門子代理商原裝現貨 內江西門子S7-1200PLC代理,內江西門子PLC代理,西門子S7-1200PLC代理,西門子PLC代理 西門子S7-1200作為IO設備與另一臺作為控制器的1200在不同項目下的通信 一、要完成的功能任務 1. S7-1200 CPU (控制器) 將通訊數據區 QB100至QB109 中的 10個字節的數據發送到 S7-1200 CPU (IO設備) 的接收數據區 IB100至IB109中; 2. S7-1200 CPU (IO設備) 將發送數據區 QB200至QB209 中的 10 個字節的數據發送到 S7-1200 CPU (控制器) 的接收數據區 IB100至IB109 中。 二、硬件設備 1. CPU 1214C DC/DC/DC,V4.4 2. CPU 1214C DC/DC/DC,V4.4 三、軟件 西門子plc編程軟件:TIA 博途V16 四、實現方法 1. 組態IO設備端,使用 STEP7 V16 創建一個名為IO設備的項目,并通過“添加新設備組態一個 S7-1200 作為IO設備,選擇 CPU1214C DC/DC/DC V4.4,在設備組態的設備視圖中建立新子網并設置IP地址。 2. 點選“操作模式”,在右邊的操作模式選項下勾選IO設備 ,因與IO控制器不在同一項目下,所以“已分配的IO控制器”選擇“未分配”. 3. 配置與IO控制器的傳輸區域。組態了兩個傳輸區域,1為接收區域IB100一個字節,2為發送區域QB100一個字節. 4. 導出GSD文件。在導出GSD文件之前必須點“編譯”選項,否則“導出”按鈕為灰色不可選,如上圖3所示。編譯無誤后,“導出”按鈕變為黑色可操作,這時點擊“導出”,按給出的提示選擇GSD文件的保存路徑,本例保存在桌面上, ??如果不是上述兩種情況,不需要使用局部變量。通過在符號表(SIMATIC)或全局變量表(IEC)中進行定義,可使符號成為全局變量。 ??2.局部變量的類型 ??TEMP(臨時變量):暫時保存在局部數據區中的變量。只有在執行該POU時,定義的臨時變量才被使用,POU執行完后,不再使用臨時變量的數值。在主程序或中斷程序中.局部變量表只包含TEMP變量。子程序中的局部變量表還有下面的3種變量: ??IN(輸人變量):由調用它的POU提供的輸人參數。 ??OUT(輸出變量);返回給調用它的POU的輸出參數。 ??IN_OUT(輸人/輸出變量);其初始值由調用它的POU提供,被子程序修改后返問給調用它的POU。 ??3.局部變量的賦值 ??在局部變量表中賦值時,只需指定聲明局部變量的類型(TEMP,IN,IN_OUT或OUT)和數據類型(參見SIMATIC和IEC1131-3的數據類型),但不指定存儲器地址,程序編輯器自動地在L存儲區中為所有局部變量指定存儲器位置。 ??4.在局部變量表中增加新的變量 ??對于主程序與中斷程序,局部變量表顯示一組已被預先定義為TEMP(臨時)變量的行。要向表中增加行,只需用右鍵單擊表中的某一行,選擇“插人→行"指令,在所選行的上部插人新的行,選擇“插人→行下"指令,在所選行的下部插人新的行。 ??對于子程序,局部變量表顯示數據類型被預先定義為IN、IN_OUT.OUT和TEMP的一系列行,不能改變它們的順序。如果要增加新的局部變量,必須用鼠標右鍵單擊已有的行,并用彈出菜單在所擊行的上下插人相同類型的另一局部變量。 ??5.局部變量數據類型檢查內江S7-1200PLC西門子代理商原裝現貨 內江西門子S7-1200PLC代理,內江西門子PLC代理,西門子S7-1200PLC代理,西門子PLC代理 ??局部變量作為參數向子程序傳遞時,在該子程序的局部變量表中指定的數據類型必須調用POU中的數據類型值匹配。 ??例如從主程序0B1調用子程序SBR0,使用名為INPUT1的全局符號作為子程序的輸人參數。在SBRO的局部變量表中,已經定義了一個名為FIRST的局部變量作為該輸入參數,當0B1調用SBR0時,INPUTI的數值被傳人FIRST,INPUTI和FIRST的數據類型必須匹配。 ??6.顯示或隱藏局部變量表 ?2. 錯誤的分類 ??被S7 CPU檢測到并且用戶可以通過組織塊對其進行處理的錯誤分為兩個基本類型∶ ??1)異步錯誤是與PLC的硬件或操作系統密切相關的錯誤,與用戶程序的執行無關。異步錯誤的后果一般都比較嚴重。異步錯誤對應的組織塊為OB70~OB73和OB80~OB87(見表4-9),具有*高的優先級。 ??2)同步錯誤是與程序執行有關的錯誤,OB121和OB122用于處理同步錯誤,它們的優先級與出現錯誤時被中斷的塊的優先級相同,即同步錯誤OB中的程序可以訪問塊被中斷時累加器和狀態寄存器的內容。對錯誤進行適當處理后,可以將處理結果返回被中斷的塊。 ??3.時間錯誤處理組織塊(OB80) ??循環時間的默認值為150ms,時間錯誤包括實際循環時間超過設置的循環時間、因為向前修改時間而跳過時間中斷、處理優先級時延遲太多等。 ??為OB80編程時應判斷是哪個時間中斷被跳過,使用SFC29“CAN_TINT”可以取消被跳過的時間中斷。只有新的時間中斷才會被執行。 ??4 電源故障處理組織塊(OB81) ??電源故障包括后備電池失效或未安裝,S7-400的CPU機架或擴展機架上的DC24V電源故障。電源故障出現和消失時操作系統都要調用OB81。 ??5.診斷中斷處理組織塊(OB82) ??OB82、OB85和OB86的功能將在7.1.1節詳細介紹。 ??6.插入/拔出模塊中斷組織塊(OB83) ??S7-400和某些型號的ET 200在RUN、STOP或STARTUP模式下帶電拔出和插入模塊時,將產生插入/拔出模塊中斷。在這些操作模式不能拔出CPU模塊、電源模塊、接口模塊和適配器模塊。在下列情況下調用0B83被組態的模塊插入或拔出,用STEP7修改了模塊的參數,并且在RUN模式時將它下載。 ??將水平分裂條拉至程序編輯器視窗的傾部,則不再疑示局部變量表,但它仍然存在。將分裂條下拉,將再次顯示局部變量表。 ??7.在局部變量表中進行賦值 ??在程序中使用符號名時,程序編輯器首先檢查有關POU的局部變量表,然后檢查符號表/全局變量表。如果某符號名在兩處都沒有定義,程序編輯器則將其視為全局符號,程序編輯器指定一條綠色波浪狀下畫線,并將名稱括在雙引號中,例如"UndefinedLocalVar(未定義的局部變量)。如果后來對該符號名賦了值,程序編輯器不會自動再次讀取局部變量表并修改它。為了將該符號名作為局部變量使用,必須手工刪除程序代碼中的引號,并在符號名前插人#號,例如改為#UndefinedLocalVar。 ??各子程序*多可調用16個輸人/輸出參數,如果超出16個,將返回錯誤。 ??選擇希望的變量類型所在的行,并在名稱域中鍵人變量名稱,在數據類型城中鍵人數據類型。不需在局部變量表中的安量名稱前加并號,#號只在程序代碼中的局部變量名之前使用。 ??局部變量名可包含數字、字母和下畫號(“_”),也可以包含擴展字符(ASII128-ASCII255)。第一個字符必須是字可或擴展字符,關鍵字不能作為符號名。 ??局部變量表中的變量名被下載和存儲在CPU存儲器中,使用較長的變量名將占用較多的存儲空問。 相關分類 |
推薦產品 信息搜索
上海卓曙自動化設備有限公司
|