基子光洋GDS—09FH數(shù)控系統(tǒng)的溫度檢測模塊PLC程序設(shè)計
點擊:1468
A+ A-
所屬頻道:新聞中心
由光洋開發(fā)的溫度檢測模塊實際可以理解為支持光洋G—UNK總線的高精度熱敏電阻檢測模塊,每個模塊支持8個通道的PTl00或KTY84溫度傳感器。在光洋GDS-09FH數(shù)控系統(tǒng)中,G—UNK總線上的每個溫度檢測模塊都會對應(yīng)一個PLC地址位,并被系統(tǒng)識別為一個獨立的PLC模塊;在PLC程序中每個溫度檢測模塊對應(yīng)24輸入16輸出。溫度檢測模塊將采集到的模擬量信號轉(zhuǎn)化為16bit布爾量,再由PLC程序進行處理,轉(zhuǎn)化為可讀出的溫度信號。
1 PLC庫文件中的功能塊及重要變量設(shè)置
GONA_temp_1庫包含3個獨立程序組織單元(POU),功能分別如表1。
表1的PoU全部由光洋ST語言編寫。
其中BIT16_To_UINT和UINT_TO_16BIT在TEMP_8_CHANNEL中已經(jīng)調(diào)用,因此可
以直接在程序中應(yīng)用;TEMP_8_CHANNEL功能塊實現(xiàn)溫度檢測模塊的基本功能,實際使用中。需要編程者對該功能塊進行實例化。
每個溫度檢測模塊的8個溫度傳感器輸入通道在TEMP_8_CHANNEL功能塊中采用循環(huán)模式逐個采集,全部8個通道循環(huán)完畢需要約108。每個通道基本檢測流程見圖1。
圖1 每個通道基本檢測流程
TEMP_8_CHANNEL中的重要變量:
RTART:BooL,溫度轉(zhuǎn)換啟動,TRUE代表進行溫度轉(zhuǎn)換,F(xiàn)ALSE代表停止轉(zhuǎn)換。
READY:BooL.溫度模塊指定通道A仍轉(zhuǎn)換完畢,可以讀取。
ARR_CHANNEL_TO_CHECK: ARRAY[1..8]0FBooL.=8(TRUE),數(shù)組的8個元索分別代表溫度檢測模塊的8個輸入通道,使用的通道設(shè)為TRUE。不使用的通道設(shè)為FALSE;在TEMP_8_CHANNEL中,默認所有的數(shù)組元素為TRUE。
ARR_TEMP_ALARM:ARRAY[1..8]oF REAL:=8(40),溫度超標設(shè)定,單位為℃,每通道單獨設(shè)定。每個數(shù)組元素依次對應(yīng)1個通道。默認40℃。當對應(yīng)通道的檢測溫度超過該通道的設(shè)定時。輸出變量ARR-TEMP_FAULT(錯誤信息)中對應(yīng)的相應(yīng)元素會被設(shè)為100℃(溫度超標)。
ARR_TEMP_TRANSF: ARRAY[1..8]OF REAL:=8(0.1),通過PLC讀入對應(yīng)通道的16位數(shù)字與實際溫度的轉(zhuǎn)換系數(shù)。目前光洋溫度檢測模塊的轉(zhuǎn)換系數(shù)為0.1。該參數(shù)為每通道單獨設(shè)定。
ARR_TEMP_INIT:ARRAY[1..8]OF REAL:=8(_273),加轉(zhuǎn)換,對應(yīng)A/D數(shù)值為0時的每通道單獨設(shè)定溫度,目前光洋溫度檢測模塊應(yīng)設(shè)為_273 K。
BITl-BITl6,為溫度傳感器的溫度輸出點,共計2字節(jié)16bit,代表目前制定通道的采集溫度數(shù)值,在程序中需要將其賦值為實際地址。
IN_CHANNEI_l_IN_CHANNEL_3,用于確認目前通道號是否與指定通道號一致。000對應(yīng)1號通道。111對應(yīng)8號通道。在程序中需要將地址寫入。
DELAY:TIME:=T#10S,每次8通道掃描循環(huán)延時,設(shè)置為10 s。
CHANNEL_MAX:INT:=8,需要掃描的最高通道號,根據(jù)實際情況設(shè)置,可以與ARR_CHAN.NEI_TO_CHECK參數(shù)組合使用。輸出變量:
OUTl~OUT3。為對通道的選擇輸出,3個bit組合依次確定8個通道。在程序中需將具體地址寫入。REFRESH:BooL,A/D轉(zhuǎn)換使能。需寫入實際地址。
ARR_TEMPERATURE:ARRAY[1..8]OF REAL:=8(0),溫度輸出,數(shù)組中的每個元素一次對應(yīng)溫度傳感器的1個輸入通道,其中數(shù)值以攝氏度為單位。
ARR_TEMP_FAULT:ARRAY [1...8]OF INT:=8(0),出錯信息,數(shù)組中的每個元素一次對應(yīng)溫度傳感器的1個輸入通道。0代表正常,100代表溫度超標,200代表操作超時,300代表短路,400代表斷路,為排除干擾。每種情況都進行了連續(xù)3次檢測.如溫度超標第一次檢測到時設(shè)為101.而后第二次掃描如果仍然溫度超標,則改為102,第三次改為103。
L00P_INrr:BOoL:=TRUE,第一次8個通道全部掃描完成,ARR』EMP_FAULT中所有數(shù)據(jù)均可用,該信號在蚰~RT輸入信號為FALSE時,也為TRUE。
2 溫度檢測模塊PLC主程序設(shè)計
在編寫PLC程序前.需要在變量聲明中對各個變量進行實例化。由于本例中的加工中心只有7個伺服軸,在ARR—CHANNEL_-TO-CHECK中將最后一個通道設(shè)為FALSE,ARR TEMP-ALARM中各伺服的溫度超標均設(shè)定為75℃。A/D轉(zhuǎn)換系數(shù)各通道均設(shè)為0.1,溫度檢測模塊上的I/O點也需要按照實際地址賦值給PLC。
程序的設(shè)計流程如圖2。
圖2 程序的設(shè)計流程
本程序首次調(diào)用了TEMP_8_CHANNEL功能塊對溫度檢測模塊的7個可用通道進行循環(huán)掃描.糾正與指定通道號不一致的通道。并發(fā)出報錯信息,最后將檢測到的結(jié)果傳遞給CNC。
3 結(jié)束語
目前。應(yīng)用sT語言對PLC進行編程無疑是最簡單而且有效的方式之一。利用ST語言編寫程序不僅速度快。而且程序便于閱讀。本文詳細介紹了溫度檢測模塊的工作原理、PLC中相關(guān)的程序塊的功能以及重要的輸入輸出變量的設(shè)置。并通過PLC程序講解了如何利用ST語言對其進行編程以實現(xiàn)其各個功能。借助于溫度檢測模塊。用戶可以通過指定通道來選擇查看各伺服電機的工作溫度.實現(xiàn)對伺服電機工作溫度的監(jiān)控。
(審核編輯: 滄海一土)
分享