摘 要:安全是PLC的首要目標(biāo),如何在既保證人員及設(shè)備可以又能簡單快速實(shí)現(xiàn)邏輯要求是PLC編程者追求的目標(biāo)。i5數(shù)控的PLC提供了一個(gè)簡單快捷的功能塊Cylinder2in2out,它可以實(shí)現(xiàn)汽缸、液壓雙向閥門等雙輸入輸出的安全穩(wěn)定控制。
關(guān)鍵詞:i5數(shù)控;PLC功能塊;Cylinder2in2out;安全穩(wěn)定
汽缸、液壓雙向閥門等等都是工業(yè)行業(yè)上使用比較多,用途比較廣泛的器件,所以對于它們的控制有著較為嚴(yán)格的技術(shù)要求。以液壓雙向閥門的安全技術(shù)要求為例,首先,雙向閥不允許同時(shí)開啟或同時(shí)關(guān)斷,同一時(shí)間只能允許一個(gè)閥開啟。其次,兩個(gè)閥門換向的時(shí)候若超過一定的時(shí)間沒有換向成功,則需進(jìn)入緊急狀態(tài)。再次,兩個(gè)閥門換向的時(shí)候需要有濾波的功能,防止因?yàn)榧夥迕痰拇嬖谟绊憮Q向安全。最后,在某些特定的情況下需要有強(qiáng)制的安全延時(shí)時(shí)間保證換向成功。
功能塊Cylinder2in2out在理論上很好的實(shí)現(xiàn)了上面的技術(shù)要求。功能塊Cylinder2in2out的圖形說明如下:
功能塊的VAR_INPUT區(qū)域定義了3個(gè)BOOL型變量in_Enable、in_BackWard、in_ForWard。3個(gè)TIME型變量in_TimeOut、in_TimeAntispike、in_TimeDelay。其中變量in_Enable是功能塊Cylinder2in2out的使能開關(guān),當(dāng)變量in_Enable為1時(shí)功能塊Cylinder2in2out方才開始工作。變量in_BackWard和in_ForWard表示汽缸所處后點(diǎn)縮回、前點(diǎn)伸出位置檢測信號。變量in_TimeOut表示汽缸換向超時(shí)時(shí)間。變量in_TimeAntispike為換位置檢測信號濾波時(shí)間。變量in_TimeDelay為功能塊強(qiáng)制安全換向時(shí)間。
功能塊的VAR_OUTPUT區(qū)域定義了兩個(gè)BOOL型變量out_BackWard和out_ForWard。變量out_BackWard為汽缸后點(diǎn)縮回動(dòng)作閥門開關(guān),當(dāng)該變量為1時(shí),汽缸開始執(zhí)行縮回動(dòng)作。變量out_ForWard為汽缸前點(diǎn)伸出動(dòng)作閥門開關(guān),當(dāng)該變量為1時(shí),汽缸開始執(zhí)行伸出動(dòng)作。
功能塊接口變量如下表所示。
以主軸(卡盤)松卡為例,當(dāng)請求主軸卡緊信號rq_BackWard到來時(shí),功能塊會檢測此時(shí)是否有請求主軸松開信號rq_ForWard,如果請求主軸松開信號rq_ForWard為0,則將輸出變量out_BackWard置為1,輸出變量out_ForWard置為0,然后開始計(jì)時(shí),計(jì)時(shí)時(shí)長為變量in_TimeDelay設(shè)定。當(dāng)計(jì)時(shí)時(shí)間到并且卡緊到位信號也到來時(shí),該請求主軸卡緊動(dòng)作完成,同時(shí)將變量rq_BackWard置為0。在請求卡緊的過程中,輸出變量STATUS會經(jīng)歷CYL_MOVING_BACKWARD→CYL_BACKWARD過程。
同理主軸松開rq_ForWard的算法流程和主軸卡緊rq_BackWard的算法類似,只是最開始的請求變量是rq_ForWard為1,其他部分算法和主軸卡緊rq_BackWard的算法一致。
參考文獻(xiàn)
[1]唐志遠(yuǎn).數(shù)控機(jī)床PLC功能的研究[D].天津大學(xué),2012.
[2]陳興武,蔣新華,徐均攀.應(yīng)用軟PLC開發(fā)數(shù)控機(jī)床的功能控制[J].廈門大學(xué)學(xué)報(bào):自然科學(xué)版,2005,44(5):654-657.
(作者單位:云科智能制造(沈陽)有限公司)