




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
S7-1200PLC的用戶(hù)程序結(jié)構(gòu)提綱電氣控制與S7-1200應(yīng)用技術(shù)教程2函數(shù)和函數(shù)塊組織塊交叉引用函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程3函數(shù)(Function,F(xiàn)C)和函數(shù)塊(Functionblock,F(xiàn)B)是用戶(hù)編寫(xiě)的子程序,它們包含完成特定任務(wù)的程序。FC和FB有與調(diào)用它的代碼塊交互信息的輸入、輸出接口參數(shù),執(zhí)行完FC和FB后,將執(zhí)行結(jié)果返回給調(diào)用它的代碼塊。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程4函數(shù)函數(shù)FC主要用于進(jìn)行一些運(yùn)算,沒(méi)有專(zhuān)用存儲(chǔ)區(qū),在FC執(zhí)行結(jié)束后所有內(nèi)部數(shù)據(jù)空間將全部釋放。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程5函數(shù)函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程6函數(shù)注意:在函數(shù)接口區(qū)中定義的這些變量都只能在函數(shù)所在塊內(nèi)使用,都屬于局部變量。程序編輯器自動(dòng)地在局部變量的前面添加#號(hào),例如#in1。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程7函數(shù)圖8-3函數(shù)FC在OB1中的調(diào)用在OB1中對(duì)函數(shù)FC1進(jìn)行了調(diào)用,方框外面的參數(shù)是實(shí)參。程序編輯器自動(dòng)地在全局變量的符號(hào)地址兩邊添加雙引號(hào),例如“Tag_1”。注意:調(diào)用函數(shù)時(shí),Output和InOut不能用常數(shù)來(lái)作實(shí)參。只有Input的實(shí)參能設(shè)置為常數(shù)。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程8函數(shù)函數(shù)FC除了像上面那樣作為處理一個(gè)復(fù)雜的運(yùn)算的子程序外,還可以將函數(shù)FC作為子程序被OB1調(diào)用,使得整個(gè)程序更加結(jié)構(gòu)化。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程9函數(shù)塊函數(shù)塊FB是用戶(hù)編寫(xiě)的有自己的存儲(chǔ)區(qū)(背景數(shù)據(jù)塊)的代碼塊。每次調(diào)用FB時(shí),都需要指定一個(gè)背景數(shù)據(jù)塊。函數(shù)塊FB的輸入、輸出參數(shù)和靜態(tài)局部數(shù)據(jù)(Static)用指定的背景數(shù)據(jù)塊保存,函數(shù)塊執(zhí)行完后,背景數(shù)據(jù)塊中的數(shù)值不會(huì)丟失。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程10函數(shù)塊去掉FB1“優(yōu)化的塊訪(fǎng)問(wèn)”屬性。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程11函數(shù)塊UDT用戶(hù)自定義數(shù)據(jù)類(lèi)型“Motor”,“Motor”的定義如圖所示。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程12函數(shù)塊FB1函數(shù)塊的接口區(qū)變量定義m是“Motor”類(lèi)型變量,T0_IDB是IEC_TIMER類(lèi)型變量,用來(lái)作IEC定時(shí)器的背景數(shù)據(jù)塊。還定義了一個(gè)Input參數(shù)“制動(dòng)時(shí)間”,Time數(shù)據(jù)類(lèi)型。圖8-7函數(shù)塊FB1接口區(qū)變量定義函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程13函數(shù)塊圖8-8函數(shù)塊FB1的梯形圖程序函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程14函數(shù)塊注意:
在FB中,IEC定時(shí)器的背景數(shù)據(jù)塊如果指定FB外的一個(gè)固定的數(shù)據(jù)塊,在同時(shí)多次調(diào)用FB1時(shí),該固定的定時(shí)器背景數(shù)據(jù)塊將會(huì)被同時(shí)用于兩處或多處,程序運(yùn)行將會(huì)因共用背景數(shù)據(jù)塊而出錯(cuò)。這里通過(guò)在FB1接口區(qū)中定義IEC_TIMER的靜態(tài)變量“T0_IDB”,用它提供FB1中所用定時(shí)器的背景數(shù)據(jù)。每次調(diào)用FB1時(shí),在FB1不同的背景數(shù)據(jù)塊中,都有保存定時(shí)器背景數(shù)據(jù)的存儲(chǔ)區(qū)“T0_IDB”。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程15函數(shù)塊注意:
在編寫(xiě)梯形圖中的TOF定時(shí)器時(shí),會(huì)彈出“調(diào)用選項(xiàng)”對(duì)話(huà)框,用來(lái)選擇TOF定時(shí)器背景數(shù)據(jù)塊的類(lèi)型,注意這里需要選擇“多重實(shí)例”->“#T0_IDB”選項(xiàng),并“確定”。也即使用FB1數(shù)據(jù)塊的IEC_TIMER類(lèi)型變量“T0_IDB”保存定時(shí)器TOF的背景數(shù)據(jù)。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程16函數(shù)塊OB1代碼塊中對(duì)上面定義的FB1進(jìn)行兩次調(diào)用。在出現(xiàn)的如圖8-10所示的“調(diào)用選項(xiàng)”對(duì)話(huà)框中,輸入背景數(shù)據(jù)塊的名稱(chēng),這里取系統(tǒng)默認(rèn)名稱(chēng)。單擊“確定”按鈕,自動(dòng)生成FB1的背景數(shù)據(jù)塊。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程17函數(shù)塊程序的仿真調(diào)試可以通過(guò)“監(jiān)控表”進(jìn)行:函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程18函數(shù)塊函數(shù)塊中定義的Static類(lèi)型的UDT變量與PLC軟元件進(jìn)行映射:圖8-13新建用于映射的FC圖8-14用于映射的PLC變量函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程19函數(shù)塊圖8-15FC中編寫(xiě)的SCL映射代碼函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程20函數(shù)塊打開(kāi)“Main[OB1]”代碼塊,在代碼塊中增加“Mapping”映射函數(shù)的調(diào)用,OB1梯形圖程序如圖所示。圖8-16OB1中增加Mapping映射FC的調(diào)用函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程21函數(shù)塊添加映射代碼程序的仿真調(diào)試可以通過(guò)“監(jiān)控表”進(jìn)行圖8-17添加映射后的監(jiān)控表調(diào)試程序函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程22函數(shù)塊總結(jié): 1.FB接口區(qū)的參數(shù)類(lèi)型與FC相比,新增了Static型數(shù)據(jù);2.FB通過(guò)定義Static的UDT類(lèi)型變量,而不是Input、Output類(lèi)型變量,可以減少調(diào)用FB時(shí)因配置參數(shù)傳遞而帶來(lái)的大量額外工作。至于Static的UDT類(lèi)型變量與PLC的I點(diǎn)、Q點(diǎn)、M點(diǎn)映射可以通過(guò)新建一個(gè)FC,在FC中通過(guò)SCL語(yǔ)言進(jìn)行映射;3.FB中使用定時(shí)器時(shí),在FB的Static型數(shù)據(jù)中定義IEC_TIMER型變量,并將其作為定時(shí)器的背景數(shù)據(jù),也即多重背景。多重背景使得多次調(diào)用相同F(xiàn)B時(shí),各個(gè)FB中的定時(shí)器的背景數(shù)據(jù)被包含在它們所在FB的背景數(shù)據(jù)塊中,從而避免使用FB外的一個(gè)固定的DB作背景數(shù)據(jù)塊,也即單個(gè)實(shí)例,所帶來(lái)的相同F(xiàn)B被多次調(diào)用時(shí)定時(shí)器因共享同一背景數(shù)據(jù)塊而產(chǎn)生的嚴(yán)重沖突。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程23函數(shù)塊的多重背景函數(shù)塊“電動(dòng)機(jī)控制FB1”使用的是單個(gè)實(shí)例。因此在兩次調(diào)用FB1時(shí)在“程序塊”目錄下生成了兩個(gè)背景數(shù)據(jù)塊“電動(dòng)機(jī)控制_DB[DB1]”和“電動(dòng)機(jī)控制_DB_1[DB2]”。試想,如果一個(gè)程序需要控制一百臺(tái)電機(jī)或者更多的電機(jī),那“程序塊”目錄下的背景數(shù)據(jù)塊也會(huì)生成一百個(gè)甚至更多,整個(gè)“程序塊”的目錄將十分龐大,不便于管理,因此這里提出多重實(shí)例,也叫多重背景的方式。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程24函數(shù)塊的多重背景打開(kāi)“添加新塊”對(duì)話(huà)框,單擊其中的“函數(shù)塊”按鈕,F(xiàn)B默認(rèn)的編號(hào)為2,默認(rèn)的語(yǔ)言為L(zhǎng)AD,設(shè)置函數(shù)塊名稱(chēng)為“多臺(tái)電動(dòng)機(jī)控制”,單擊“確定”按鈕,在項(xiàng)目樹(shù)中生成FB2。去掉FB2“優(yōu)化的塊訪(fǎng)問(wèn)”屬性。打開(kāi)FB2,在函數(shù)塊的接口區(qū)定義2個(gè)數(shù)據(jù)類(lèi)型為“電動(dòng)機(jī)控制”的Static類(lèi)型變量“1號(hào)電動(dòng)機(jī)”和“2號(hào)電動(dòng)機(jī)”。每個(gè)Static類(lèi)型變量將用作FB1調(diào)用時(shí)的背景數(shù)據(jù),相當(dāng)于在FB2中定義了FB1的2個(gè)背景數(shù)據(jù)。以此類(lèi)推,如果在FB2中要控制一百臺(tái)電機(jī),那就可以在FB2中定義一百個(gè)數(shù)據(jù)類(lèi)型為“電動(dòng)機(jī)控制”的Static類(lèi)型變量,這時(shí)可以通過(guò)數(shù)組的方式進(jìn)行定義。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程25函數(shù)塊的多重背景注意:FB2接口區(qū)中Static類(lèi)型變量的數(shù)據(jù)類(lèi)型是“電動(dòng)機(jī)控制”。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程26函數(shù)塊的多重背景接下來(lái)在FB2代碼塊中對(duì)FB1進(jìn)行兩次或多次調(diào)用。注意第一次調(diào)用FB1時(shí),這里需要選擇“多重實(shí)例”->#"1號(hào)電動(dòng)機(jī)"(或#電動(dòng)機(jī)數(shù)組[0])選項(xiàng),并“確定”,第二次調(diào)用FB1時(shí),這里需要選擇“多重實(shí)例”->#"2號(hào)電動(dòng)機(jī)"(或#電動(dòng)機(jī)數(shù)組[1])選項(xiàng),并“確定”,以此類(lèi)推。因FB2中存在多個(gè)背景數(shù)據(jù),故也稱(chēng)為多重背景或多重實(shí)例。使用多重背景后“程序塊”的目錄結(jié)構(gòu)清晰,不會(huì)因多次調(diào)用FB1而生成多個(gè)背景數(shù)據(jù)塊。函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程27函數(shù)塊的多重背景函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程28函數(shù)塊的多重背景圖8-21函數(shù)塊FB2調(diào)用選項(xiàng)對(duì)話(huà)框函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程29函數(shù)塊的多重背景圖8-22OB1中調(diào)用FB2函數(shù)和函數(shù)塊電氣控制與S7-1200應(yīng)用技術(shù)教程30函數(shù)塊的多重背景圖8-23用于映射的PLC變量表和函數(shù)Mapping中的SCL映射代碼組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程31程序循環(huán)OB程序循環(huán)OB在CPU處于RUN模式時(shí),周期性地循環(huán)執(zhí)行??稍诔绦蜓h(huán)OB中放置控制程序的指令或調(diào)用其它功能塊(FC或FB)。主程序(Main)為程序循環(huán)OB,要啟動(dòng)程序執(zhí)行,項(xiàng)目中至少有一個(gè)程序循環(huán)OB。操作系統(tǒng)每個(gè)掃描周期調(diào)用該程序循環(huán)OB一次,從而啟動(dòng)用戶(hù)程序的執(zhí)行。S7-1200允許使用多個(gè)程序循環(huán)OB,按OB的編號(hào)順序執(zhí)行。OB1是新建工程時(shí)默認(rèn)生成的,其它程序循環(huán)OB的編號(hào)必須大于或等于123。程序循環(huán)OB的優(yōu)先級(jí)為1,可被高優(yōu)先級(jí)的組織塊中斷;程序循環(huán)執(zhí)行一次需要的時(shí)間即為程序的循環(huán)掃描周期時(shí)間。最長(zhǎng)循環(huán)時(shí)間缺省設(shè)置為150ms。如果您的程序超過(guò)了最長(zhǎng)循環(huán)時(shí)間,操作系統(tǒng)將調(diào)用OB80(時(shí)間故障OB);如果OB80不存在,則CPU停機(jī)。例如:在循環(huán)組織塊OB123中調(diào)用FC1。具體實(shí)現(xiàn)過(guò)程如下:組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程32程序循環(huán)OB組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程33程序循環(huán)OB組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程34程序循環(huán)OB組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程35時(shí)間中斷OB時(shí)間中斷OB用于在時(shí)間可控的應(yīng)用中定期運(yùn)行一部分用戶(hù)程序,可實(shí)現(xiàn)在某個(gè)預(yù)設(shè)時(shí)間到達(dá)時(shí)只運(yùn)行一次;或者在設(shè)定的觸發(fā)日期到達(dá)后,按每分/小時(shí)/天/周/月等周期運(yùn)行。只有在設(shè)置并激活了時(shí)間中斷,且程序中存在時(shí)間中斷組織塊的情況下,才能運(yùn)行時(shí)間中斷。時(shí)間中斷OB的默認(rèn)編號(hào)是10。與時(shí)間中斷OB10相關(guān)的指令:SET_TINTL(設(shè)置時(shí)間中斷)、CAN_TINT(取消時(shí)間中斷)、ACT_TINT(激活時(shí)間中斷)和QRY_TINT(查詢(xún)時(shí)間中斷狀態(tài)),這些指令的位置在指令列表的“擴(kuò)展指令”->“中斷”->“時(shí)間中斷”。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程36時(shí)間中斷OB例如:從設(shè)定時(shí)間開(kāi)始每分鐘執(zhí)行時(shí)間中斷OB10,每調(diào)用一次OB10將MD200加1。具體實(shí)現(xiàn)過(guò)程如下:1、按如下步驟創(chuàng)建時(shí)間中斷OB10。如圖8-27所示。2、OB10中編程,當(dāng)觸發(fā)時(shí)間中斷時(shí)執(zhí)行OB10,將MD200加1。如圖8-28所示。3、OB1中編程,設(shè)置時(shí)間中斷、激活時(shí)間中斷、取消時(shí)間中斷、查詢(xún)時(shí)間中斷。如圖8-29所示。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程37時(shí)間中斷OB圖8-27創(chuàng)建時(shí)間中斷OB10組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程38時(shí)間中斷OB圖8-28OB10中編程組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程39時(shí)間中斷OB圖8-29OB1中編程組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程40延時(shí)中斷OBPLC的普通定時(shí)器的工作過(guò)程與掃描工作方式有關(guān),其定時(shí)精度較差。如果需要高精度的延時(shí),應(yīng)使用延時(shí)中斷。延時(shí)中斷OB在經(jīng)過(guò)一段指定的時(shí)間延時(shí)后,才執(zhí)行相應(yīng)的延時(shí)中斷OB中的程序??梢酝ㄟ^(guò)在OB1中調(diào)用“SRT_DINT”指令啟動(dòng)延時(shí)中斷OB。在使用“SRT_DINT”指令編程時(shí),需要提供延時(shí)中斷OB號(hào)、延時(shí)時(shí)間,當(dāng)?shù)竭_(dá)設(shè)定的延時(shí)時(shí)間,操作系統(tǒng)將啟動(dòng)相應(yīng)的延時(shí)中斷OB;當(dāng)啟動(dòng)延時(shí)中斷后,在延時(shí)時(shí)間到達(dá)之前,也可以通過(guò)“CAN_DINT”指令取消已啟動(dòng)的延時(shí)中斷,同時(shí)還可以使用“QRY_DINT”指令查詢(xún)延時(shí)中斷的狀態(tài)。這些指令的位置在指令列表的“擴(kuò)展指令”->“中斷”->“延時(shí)中斷”中。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程41延時(shí)中斷OB例如:當(dāng)M0.0由1變0時(shí),延時(shí)5s后啟動(dòng)延時(shí)中斷OB20,將Q0.0置位。具體實(shí)現(xiàn)過(guò)程如下:1、按如下步驟創(chuàng)建延時(shí)中斷OB20。如圖所示。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程42延時(shí)中斷OB2、打開(kāi)OB20,在OB20中編程,當(dāng)延時(shí)中斷執(zhí)行時(shí),置位Q0.0。如圖8-32。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程43延時(shí)中斷OB3、在OB1中編程調(diào)用“SRT_DINT”指令啟動(dòng)延時(shí)中斷;調(diào)用“CAN_DINT”指令取消延時(shí)中斷;調(diào)用“QRY_DINT”指令查詢(xún)中斷狀態(tài)。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程44延時(shí)中斷OB4、測(cè)試結(jié)果:當(dāng)M0.0由1變0時(shí),延時(shí)5s后執(zhí)行延時(shí)中斷OB20,可看到PLC輸出點(diǎn)Q0.0指示燈亮;當(dāng)M0.0由1變0時(shí),在延時(shí)的5s到達(dá)之前,如果M0.1由0變1則取消延時(shí)中斷,OB20將不會(huì)執(zhí)行。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程45循環(huán)中斷OB循環(huán)中斷OB在經(jīng)過(guò)一段固定的時(shí)間間隔后執(zhí)行循環(huán)中斷OB中的程序。S7-1200在創(chuàng)建循環(huán)中斷OB時(shí)設(shè)定固定的間隔掃描時(shí)間??梢允褂谩癝ET_CINT”指令設(shè)置循環(huán)中斷的間隔掃描時(shí)間;使用“QRY_CINT”指令查詢(xún)循環(huán)中斷的狀態(tài)。這些指令的位置在指令列表的“擴(kuò)展指令”->“中斷”->“循環(huán)中斷”中。循環(huán)中斷OB的默認(rèn)編號(hào)為30。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程46循環(huán)中斷OB例如:運(yùn)用循環(huán)中斷,使Q0.0點(diǎn)500ms輸出為1,500ms輸出為0,即實(shí)現(xiàn)周期為1s的方波輸出。具體實(shí)現(xiàn)過(guò)程如下:1、按如下步驟創(chuàng)建循環(huán)中斷OB30,這里將循環(huán)時(shí)間設(shè)置成500ms。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程47循環(huán)中斷OB2、OB30中編程如下圖,當(dāng)循環(huán)中斷執(zhí)行時(shí),Q0.0以方波形式輸出。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程48循環(huán)中斷OB3、在OB1中編程調(diào)用“SET_CINT”指令,可以重新設(shè)置循環(huán)中斷時(shí)間間隔,例如:CYCLE=1s(即周期為2s)。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程49循環(huán)中斷OB4、測(cè)試結(jié)果:程序下載后,可看到CPU的輸出Q0.0指示燈0.5s亮,0.5s滅交替切換;當(dāng)M100.0由0變1時(shí),通過(guò)“SET_CINT”將循環(huán)間隔時(shí)間設(shè)置為1s,這時(shí),可看到CPU的輸出Q0.0指示燈1s亮,1s滅交替切換。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程50硬件中斷OB硬件中斷OB在發(fā)生相關(guān)硬件事件時(shí)執(zhí)行,可以快速的響應(yīng)并執(zhí)行硬件中斷OB中的程序(例如立即停止某些關(guān)鍵設(shè)備)。硬件中斷事件包括內(nèi)置數(shù)字輸入端的上升沿和下降沿事件以及HSC(高速計(jì)數(shù)器)事件。當(dāng)發(fā)生硬件中斷事件,硬件中斷OB將中斷正常的循環(huán)程序而優(yōu)先執(zhí)行。S7-1200可以在硬件配置的屬性中預(yù)先定義硬件中斷事件。硬件中斷OB的編號(hào)默認(rèn)為40起始。與硬件中斷OB相關(guān)的指令功能:“ATTACH”將硬件中斷事件和硬件中斷OB進(jìn)行關(guān)聯(lián);“DETACH”將硬件中斷事件和硬件中斷OB進(jìn)行分離。這些指令的位置在指令列表的“擴(kuò)展指令”->“中斷”中。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程51硬件中斷OB例如:當(dāng)硬件輸入I0.0上升沿時(shí),觸發(fā)硬件中斷OB40(執(zhí)行累加程序),當(dāng)硬件輸入I0.1上升沿時(shí),觸發(fā)硬件中斷OB41(執(zhí)行遞減程序)。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程52硬件中斷OB1、按如下步驟創(chuàng)建硬件中斷OB40,同樣的方法創(chuàng)建OB41。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程53硬件中斷OB2、OB40中編程如下圖,當(dāng)硬件輸入I0.0上升沿時(shí),觸發(fā)硬件中斷執(zhí)行MW200加1。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程54硬件中斷OB3、OB41中編程如下圖,當(dāng)硬件輸入I0.1上升沿時(shí),觸發(fā)硬件中斷執(zhí)行MW200減1。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程55硬件中斷OB4.在CPU屬性窗口中關(guān)聯(lián)硬件中斷事件,分別將I0.0和OB40關(guān)聯(lián),I0.1和OB41關(guān)聯(lián)。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程56硬件中斷OB5、測(cè)試結(jié)果:硬件中斷只能在物理PLC上進(jìn)行測(cè)試,不能仿真。程序下載后,在監(jiān)控表中查看MW200的數(shù)據(jù)。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程57診斷錯(cuò)誤、插拔中斷、機(jī)架或站故障用戶(hù)在寫(xiě)程序時(shí)由于沒(méi)有考慮到現(xiàn)場(chǎng)很多因素,導(dǎo)致寫(xiě)的程序,有可能進(jìn)入死循環(huán)的狀態(tài),當(dāng)出現(xiàn)這種錯(cuò)誤時(shí)就會(huì)啟用診斷錯(cuò)誤OB82。如果程序在編寫(xiě)的時(shí)候沒(méi)有建立OB82這個(gè)組織塊,PLC將會(huì)停機(jī)。除了程序錯(cuò)誤,還有硬件錯(cuò)誤,比如某個(gè)模塊燒了、模塊通道出現(xiàn)短路、超出模塊測(cè)量上下限等都會(huì)產(chǎn)生診斷錯(cuò)誤,調(diào)用OB82。用戶(hù)可以在OB82里寫(xiě)一些跟安全生產(chǎn)相關(guān)的保護(hù)程序,防止產(chǎn)生嚴(yán)重的事故,如緊急關(guān)掉一些設(shè)備,閥門(mén)等。用戶(hù)搭建分布式IO的時(shí)候,有些設(shè)備比較低端,是不支持熱插拔的,一旦在運(yùn)行時(shí)插拔這類(lèi)模塊,如果沒(méi)有插拔中斷OB83的話(huà),同樣會(huì)導(dǎo)致PLC停機(jī)。為了保證整個(gè)系統(tǒng)能連續(xù)穩(wěn)定的運(yùn)行,需要在PLC程序中創(chuàng)建一個(gè)OB83組織塊,即使是空的。當(dāng)CPU檢測(cè)到分布式機(jī)架或站出現(xiàn)故障或發(fā)生通信丟失時(shí),如果用戶(hù)沒(méi)有在PLC程序中創(chuàng)建機(jī)架或站故障OB86,會(huì)導(dǎo)致PLC停機(jī)。為了保證整個(gè)系統(tǒng)能連續(xù)穩(wěn)定的運(yùn)行,也需要在PLC程序中創(chuàng)建一個(gè)OB86組織塊,即使是空的。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程58診斷錯(cuò)誤、插拔中斷、機(jī)架或站故障提示:實(shí)際中,一些設(shè)備廠家,為了降低PLC停機(jī)給公司帶來(lái)的人員現(xiàn)場(chǎng)維護(hù)成本的增加,程序里會(huì)調(diào)用一個(gè)空的OB82、OB83、OB86,即使里面沒(méi)有代碼,就可以保證我們的程序不會(huì)因?yàn)镺B82、OB83、OB86的錯(cuò)誤導(dǎo)致PLC的停機(jī)。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程59啟動(dòng)OB啟動(dòng)OB用于系統(tǒng)初始化,CPU從STOP切換到RUN時(shí),執(zhí)行一次啟動(dòng)OB。執(zhí)行完后,才執(zhí)行主“程序循環(huán)”O(jiān)B1。啟動(dòng)OB默認(rèn)的是OB100,一般只需要一個(gè)啟動(dòng)組織塊。組織塊電氣控制與S7-1200應(yīng)用技術(shù)教程60啟動(dòng)OB例如:在啟動(dòng)OB100中無(wú)條
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 職工借款合同書(shū)范例二零二五年
- 二零二五果樹(shù)購(gòu)銷(xiāo)合同書(shū)果苗購(gòu)銷(xiāo)合同書(shū)
- 墻面大坑施工方案
- 歷史與社會(huì)人教版八上第四單元綜合探究四《從清明上河圖看北宋都市生活》教學(xué)設(shè)計(jì)
- 二零二五衛(wèi)生院臨時(shí)工聘用合同書(shū)
- 協(xié)議書(shū)離婚的步驟程序
- 二零二五版二手房交接書(shū)范例
- 聘用電影編劇合同二零二五年
- 人教版九年級(jí)上冊(cè) 第二單元 課題1 空氣 第1課時(shí) 教學(xué)設(shè)計(jì)
- 中央2025年中國(guó)新聞社招聘應(yīng)屆生筆試歷年參考題庫(kù)附帶答案詳解
- 24雙匯系統(tǒng)操作手冊(cè)
- 硬筆書(shū)法:幼小銜接識(shí)字寫(xiě)字教學(xué)課件
- 盤(pán)扣支模架工程監(jiān)理細(xì)則
- 小學(xué)書(shū)法粵教版 五年級(jí)下冊(cè) 集字練習(xí)
- 外研版(一起)二年級(jí)英語(yǔ)下冊(cè)全冊(cè)教案教學(xué)設(shè)計(jì)版
- 橋梁工程梁板的預(yù)制和安裝監(jiān)理實(shí)施細(xì)則
- 施工電梯租賃合同及安全協(xié)議
- 加油站臨時(shí)用電專(zhuān)項(xiàng)方案
- MTBF測(cè)試驗(yàn)證規(guī)范文件和報(bào)告
- 2019第五版新版PFMEA 注塑實(shí)例
- (完整word版)計(jì)算機(jī)社團(tuán)活動(dòng)記錄
評(píng)論
0/150
提交評(píng)論