首 頁(yè)文檔資料下載資料維修視頻汽修在線平臺(tái)
請(qǐng)登錄  |  免費(fèi)注冊(cè)
當(dāng)前位置:精通維修下載 > 文檔資料 > 機(jī)械工程 > 機(jī)械維修
混凝土攪拌站控制系統(tǒng)通訊故障檢測(cè)及軟件優(yōu)化方法
來源:工程機(jī)械與維修  作者:佚名  2017-08-04 09:20:34

    3.故障分析與檢測(cè)方法
    在攪拌站控制系統(tǒng)運(yùn)行中,即使攪拌站處于正常運(yùn)行狀態(tài),也會(huì)發(fā)生信號(hào)數(shù)據(jù)丟失或操縱沒有響應(yīng)等故障。
    (1)故障分析
    信號(hào)數(shù)據(jù)丟失根據(jù)攪拌站控制系統(tǒng)實(shí)際運(yùn)行情況,正常信號(hào)狀態(tài)變化持續(xù)時(shí)間皆大于200ms。通過計(jì)算規(guī)定時(shí)間內(nèi)的通訊次數(shù)得出,工控機(jī)與PLC的正常通訊頻率約為15.7次/s,即約64m、更新1次數(shù)據(jù)信息。因此正常情況下,工控機(jī)能夠及時(shí)捕捉到設(shè)備狀態(tài)變化信號(hào)。
    在控制系統(tǒng)實(shí)際運(yùn)行過程中,通過軟件記錄分析,我們發(fā)現(xiàn)有些數(shù)據(jù)交互消耗時(shí)間過長(zhǎng),甚至超過800ms。例如,工控機(jī)在某些特定狀態(tài)時(shí),將某些特定狀態(tài)信號(hào)及數(shù)據(jù)保存到數(shù)據(jù)庫(kù)時(shí),若存儲(chǔ)數(shù)據(jù)較多,會(huì)造成保存或調(diào)取所消耗的時(shí)間較長(zhǎng),導(dǎo)致該次的數(shù)據(jù)交互時(shí)間過長(zhǎng)。這樣在對(duì)于狀態(tài)變化持續(xù)時(shí)間較短的信號(hào),可能會(huì)出現(xiàn)信號(hào)丟失現(xiàn)象。
    系統(tǒng)沒有響應(yīng)由于.NET Framwork對(duì)線程數(shù)量的限制,若運(yùn)行的線程數(shù)量超過設(shè)置線程數(shù)時(shí),新啟動(dòng)的線程會(huì)不能執(zhí)行。該控制系統(tǒng)中,工控機(jī)使用System.Timer定時(shí)器循環(huán)讀取數(shù)據(jù),啟動(dòng)定時(shí)器時(shí)即啟動(dòng)一個(gè)新線程。執(zhí)行指令時(shí)啟動(dòng)執(zhí)行器,指令結(jié)束后停止定時(shí)器,執(zhí)行下一個(gè)指令再啟動(dòng)定時(shí)器,如圖2所示。若工控機(jī)程序運(yùn)行時(shí),在某一時(shí)刻的線程數(shù)量超過限制線程時(shí),就不能繼續(xù)執(zhí)行操作指令,造成工控機(jī)對(duì)下位機(jī)的通訊中斷。
    另外,根據(jù)工控機(jī)軟件的通訊方式(見圖2),當(dāng)指令在緩存區(qū)中緩存指令較多時(shí),將會(huì)延時(shí)讀取交互數(shù)據(jù)指令,不能更新控制系統(tǒng)狀態(tài),這也是上控機(jī)不能及時(shí)響應(yīng)操作和反饋狀態(tài)的原因。
    (2)檢測(cè)方法
    根據(jù)對(duì)通訊故障原因的分析,可應(yīng)用參數(shù)估計(jì)法檢測(cè)故障,即根據(jù)控制系統(tǒng)的參數(shù)值與其正常值之間的偏離程度,判斷控制系統(tǒng)是否處于故障狀況。確定該控制系統(tǒng)中數(shù)據(jù)通訊的檢測(cè)參數(shù)為指令執(zhí)行時(shí)間、指令執(zhí)行間隔時(shí)間、指令緩存數(shù)量。
    1個(gè)指令的執(zhí)行周期包括下發(fā)指令、接收數(shù)據(jù)、判斷數(shù)據(jù)、狀態(tài)更新。指令執(zhí)行時(shí)間為1個(gè)執(zhí)行周期的總時(shí)間,該時(shí)間可用于檢測(cè)是否會(huì)發(fā)生信號(hào)丟失故障。指令執(zhí)行間隔時(shí)間用于檢測(cè)通訊是否中斷,檢測(cè)指令緩存數(shù)量可防止系統(tǒng)長(zhǎng)時(shí)間無響應(yīng)。通過實(shí)際測(cè)試,在正常生產(chǎn)情況下,完成一次數(shù)據(jù)讀寫及界面更新,耗時(shí)為15~120ms,指令執(zhí)行間隔時(shí)間設(shè)置為20ms,指令緩存數(shù)量最大約為50個(gè)。根據(jù)以上分析,我們確定檢測(cè)參數(shù),指令執(zhí)行時(shí)間為200rns,指令執(zhí)行間隔時(shí)間為50ms,緩存隊(duì)列數(shù)量為60個(gè),該參數(shù)即為檢測(cè)故障的限制值。
    控制系統(tǒng)運(yùn)行時(shí),按照以上限制值執(zhí)行執(zhí)行檢測(cè)。實(shí)時(shí)計(jì)算每個(gè)指令的執(zhí)行時(shí)間和緩存隊(duì)列的指令數(shù)帚,檢測(cè)值超出限制值時(shí)系統(tǒng)給出報(bào)警信息,情況嚴(yán)重時(shí)提示操作人員停比生產(chǎn)進(jìn)行設(shè)備檢查。每條指令執(zhí)行完成后,在指令執(zhí)行間隔時(shí)間內(nèi)限制值檢測(cè)是否已開始執(zhí)行下一個(gè)指令,若沒有持續(xù)執(zhí)行則報(bào)警提示,停止攪拌站生產(chǎn)。

    4.軟件優(yōu)化方法
    為了提高控制系統(tǒng)的可靠性,減少通訊故障和故障報(bào)警,保證控制系統(tǒng)的安全運(yùn)行。針對(duì)上述通訊故障的產(chǎn)生原因,在軟件方面要進(jìn)行優(yōu)化,如下所示。

    (1)異步執(zhí)行減少耗時(shí)
    對(duì)于特殊狀態(tài)信號(hào),在狀態(tài)變化時(shí)需要進(jìn)行數(shù)據(jù)庫(kù)操作,用同步方式執(zhí)行需要等待的數(shù)據(jù)庫(kù),操作完成后才能繼續(xù)執(zhí)行。因此,在程序中應(yīng)對(duì)數(shù)據(jù)庫(kù)的操作進(jìn)行異步執(zhí)行,不占用指令執(zhí)行時(shí)間,這樣會(huì)提高數(shù)據(jù)交互速度和通訊頻率。
    (2)減少線程使用量
    整合控制系統(tǒng)程序運(yùn)行資源,減少系統(tǒng)中對(duì)System. Timer(即啟動(dòng)新線程)的使用。通過監(jiān)控該控制系統(tǒng)得知,并列發(fā)送線程的數(shù)量最多可達(dá)到29個(gè),這將影響到新線程的啟動(dòng),可導(dǎo)致新線程不能啟動(dòng)。通過優(yōu)化將原控制程序中部分輔助功能中的定時(shí)器,或者對(duì)時(shí)間精度要求較低的控制功能,用自定義的統(tǒng)一時(shí)間觸發(fā)器代替。這樣可降低系統(tǒng)運(yùn)行時(shí)的并列發(fā)送線程數(shù),可將最大線程數(shù)降低至21個(gè),由此保證控制系統(tǒng)程序的可靠運(yùn)行,避免線程不能啟動(dòng)工況,解決通訊中斷問題。
    (3)分批執(zhí)行緩存區(qū)指令
    根據(jù)該攪拌站控制系統(tǒng)現(xiàn)有通訊方式,當(dāng)緩存區(qū)指令數(shù)據(jù)超出限制值時(shí),進(jìn)行分批執(zhí)行。執(zhí)行指定數(shù)量后,執(zhí)行“讀交互數(shù)據(jù)”指令,循環(huán)執(zhí)行,使緩存區(qū)數(shù)量達(dá)到安全水平,避免系統(tǒng)出現(xiàn)無響應(yīng)現(xiàn)象。

    5.系統(tǒng)優(yōu)化效果
    我們根據(jù)以上故障診斷方法編制了相應(yīng)的故障診斷程序,對(duì).NET平臺(tái)的攪拌站控制系統(tǒng)的通訊方式進(jìn)行實(shí)時(shí)監(jiān)測(cè),保證混凝土生產(chǎn)過程的安全可靠。根據(jù)以上優(yōu)化方法對(duì)該控制系統(tǒng)程序進(jìn)行的進(jìn)一步優(yōu)化,提高了系統(tǒng)軟件的運(yùn)行質(zhì)量。在實(shí)際應(yīng)用中,這種方法對(duì)攪拌站.NET平臺(tái)控制系統(tǒng)通訊方案的設(shè)計(jì)和故障排查具有很好的指導(dǎo)意義。
 

上一頁(yè)  [1] [2] 

關(guān)鍵詞:

文章評(píng)論評(píng)論內(nèi)容只代表網(wǎng)友觀點(diǎn),與本站立場(chǎng)無關(guān)!

   評(píng)論摘要(共 0 條,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
頁(yè)面執(zhí)行時(shí)間:40,197.27000 毫秒
包头市| 龙泉市| 平邑县| 乌兰浩特市| 红原县| 三门峡市| 阳信县| 奉新县| 石景山区| 淮阳县| 都昌县| 双桥区| 新化县| 兰西县| 荔浦县| 乐东| 灯塔市| 铁岭县| 郁南县| 固原市| 高平市| 淮滨县| 溆浦县| 喀喇| 景德镇市| 神池县| 岳阳市| 绥江县| 陇南市| 老河口市| 九江县| 若尔盖县| 中江县| 江永县| 应城市| 巴塘县| 武山县| 栾城县| 高碑店市| 信丰县| 塔河县|