《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設計應用 > 基于S12X雙核微控制器的染色自動化控制器
基于S12X雙核微控制器的染色自動化控制器
來源:電子技術(shù)應用2010年第11期
周怡君,毛玉良
東南大學 機械工程學院,江蘇 南京211189
摘要: 提出了基于S12X雙核微控制器的染色自動化控制器的設計方案,重點介紹了XGATE協(xié)處理的編程方法以及在染色控制流程中的應用。通過實例驗證了該方案完全能滿足染色工藝過程的控制需要。
中圖分類號: TP273+.5
文獻標識碼: B
文章編號: 0258-7998(2010)11-0042-03
A dyeing automation controller based on dual-core S12X MCU
ZHOU Yi Jun,MAO Yu Liang
School of Mechanical Engineering, Southeast University, Nanjing 211189,China
Abstract: This paper proposes the design of a dyeing automation controller based on dual-core S12X MCU, focusing on XGATE co-processing programming and its implementation in dyeing control process. The design is verified to be able to meet the needs in dyeing process control by an application instance.
Key words : CAN;XGATE;dyeing technology

    在紡織工業(yè)中,染色工藝過程是紡織品上色的一個重要生產(chǎn)環(huán)節(jié)。布料染色要求在不同的升溫、降溫過程中嚴格按照一定的升溫速率或降溫速率進行,而且對于不同的染料、不同的紡織品,所要求的染液溫度變化曲線也不同[1]。圖1所示為實際生產(chǎn)中的一個典型階梯升溫工藝示意圖。該工藝分為3段:第1段保溫溫度為80 ℃,保溫時需要正反轉(zhuǎn)的次數(shù)(道數(shù))為1道;第2段保溫溫度為90 ℃,道數(shù)為1道;第3段保溫溫度為135 ℃,道數(shù)為2道。

    長期以來,染色工藝過程都是由通用型溫度控制器配合人工操作來完成。這種基于通用型溫度控制器的人工控制染色方式很難保證工藝上所要求的嚴格的升、降溫變化速率,而且不同的工人在操作同一種工藝要求時也會產(chǎn)生差異,從而影響產(chǎn)品的質(zhì)量和產(chǎn)量。同時染色車間溫度高、濕度大,操作人員的勞動條件十分惡劣,也在一定程度上影響了產(chǎn)品的質(zhì)量。為了提高產(chǎn)品的質(zhì)量并降低工人勞動強度,設計了一套染色自動化控制器,主要用于實現(xiàn)染色工藝的單機控制,完成階梯升溫染色工藝的設置和顯示、自動化控制等功能,并為接入現(xiàn)場總線控制系統(tǒng)預留接口。
1 方案設計
    在染色工藝過程中,染缸內(nèi)、外缸的溫度檢測采用PT100溫度傳感器;階梯升溫工藝采用PID算法控制電磁閥對染液實現(xiàn)溫度的控制;在保溫階段,利用固態(tài)繼電器控制卷筒直流電機正反轉(zhuǎn)動,實現(xiàn)布料的均勻染色。
    染色自動化控制器采用MC9S12XDP512微控制器作為控制核心,其系統(tǒng)框圖如圖2所示。該系統(tǒng)分為人機交互單元、現(xiàn)場控制單元和CAN總線單元三部分。其中,人機交互單元由數(shù)碼顯示、LED顯示和鍵盤輸入部分組成,用于染色工藝的設置、顯示以及運行狀態(tài)的顯示、報警?,F(xiàn)場控制單元采用并行總線,擴展了12位高精度A/D轉(zhuǎn)換器,采樣由PT100檢測、經(jīng)過調(diào)理過的溫度信號,采用PID算法控制染液溫度;同時完成織物正反轉(zhuǎn),實現(xiàn)染色工藝過程自動化控制。CAN總線單元采用MC9S12XDP512內(nèi)置CAN模塊,實現(xiàn)了現(xiàn)場總線控制系統(tǒng)的構(gòu)架。

2 硬件設計
2.1 MC9S12XDP512

    MC9S12XDP512是Freescale公司生產(chǎn)的新一代16位微控制器,以增強型HCS12內(nèi)核為基礎,集成了外設協(xié)處理器XGATE[2]。
    XGATE是一個獨立于HCS12X主CPU的可編程RISC內(nèi)核,可作為高效的DMA控制器,在外設與RAM之間自主地進行高速數(shù)據(jù)傳送,并在數(shù)據(jù)傳送過程中進行靈活的數(shù)據(jù)處理。
    XGATE精簡指令集內(nèi)核中有8個16位通用寄存器R0~R7,1個程序計數(shù)器PC,1個4位的條件碼寄存器CCR。XGATE共有72條獨立指令,指令時鐘最高可達100 MHz,是HCS12X主CPU總線速度的2倍;可訪問64 KB的片內(nèi)空間,包括2 KB的片上外設寄存器、30 KB的片上FLASH和最大32 KB的片內(nèi)RAM。
2.2 XGATE的編程
    XGATE的代碼執(zhí)行是由事件(中斷)驅(qū)動的,圖3所示為S12X系統(tǒng)微控制器的典型中斷處理過程。其中,中斷的配置寄存器INT_CFGDATAx決定了該中斷的處理內(nèi)核及中斷優(yōu)先級。如果RQST位置為1,則選擇XGTE協(xié)處理器處理當前中斷;反之則選擇HCS12X主處理器。當XGATE的中斷服務程序處理結(jié)束后通知HCS12X,并將處理結(jié)果提交給HCS12X。這樣HCS12X只需關(guān)注上層的控制算法,而與底層密切相關(guān)的硬件操作由XGATE處理,極大地提高了系統(tǒng)性能[3]。

3 軟件設計
      在染色工藝過程中,染缸內(nèi)、外缸階梯升溫工藝的PID控制以及工藝過程控制最為重要。同時,人機交互單元需完成染色工藝參數(shù)的設置和運行狀態(tài)的顯示,非常繁瑣。而CAN總線單元主要用于現(xiàn)場數(shù)據(jù)的上傳下達,實現(xiàn)印染工藝、數(shù)據(jù)的集中管理控制。
    所以在本系統(tǒng)中,現(xiàn)場工藝控制與數(shù)據(jù)傳遞分別用兩個不同的內(nèi)核完成,從而保證了現(xiàn)場控制的實時性、準確性和可靠性。其中,人機交互單元和現(xiàn)場控制單元由MC9S12XDP512中功能強大的HCS12X主處理器來實現(xiàn)。CAN總線單元由XGATE協(xié)處理器實現(xiàn),其中工藝參數(shù)的上傳由軟件中斷觸發(fā)XGATE中斷服務程序,而上位機的控制指令(如運行狀態(tài)控制、工藝參數(shù)下傳)由CAN發(fā)送中斷觸發(fā)。
3.1 工藝流程控制
    在染色工藝過程中,各參數(shù)的變化過程比較緩慢,所以在控制過程中以100 ms為一個控制周期,其控制流程如圖4所示。


    在每個控制周期中,首先進行溫度采樣,獲得內(nèi)、外缸的溫度,然后調(diào)用溫度控制子函數(shù)實現(xiàn)快速升溫或保溫;接著判斷織物是否已到頭,如到頭則一道工藝結(jié)束,置轉(zhuǎn)動到位標志,準備反轉(zhuǎn);然后調(diào)用工藝過程子函數(shù),確定當前工藝狀態(tài),完成工藝控制。上述流程由HCS12X完成,工藝過程中需上傳的工藝參數(shù)(如溫度、道數(shù)、電磁閥的狀態(tài)、轉(zhuǎn)動方向、左右計數(shù)器的計數(shù)值)存儲在數(shù)據(jù)共享區(qū)。最后置軟件中斷位,觸發(fā)XGATE的軟件中斷。當XGATE進入軟件中斷服務程序后,首先初始化、清相關(guān)標志位,然后將所有數(shù)據(jù)從共享區(qū)復制出來,再做數(shù)據(jù)解析,最后通過MC9S12XDP512內(nèi)置的CAN模塊將現(xiàn)場工藝參數(shù)發(fā)送到現(xiàn)場總線控制系統(tǒng)。
3.2 數(shù)據(jù)共享的實現(xiàn)
    本系統(tǒng)基于雙核處理方式,HCS12X與XGATE之間需進行數(shù)據(jù)通信,其最基本的方式是內(nèi)存空間的數(shù)據(jù)共享。由于兩個內(nèi)核都能獨立異步地訪問該共享空間,所以必須保證共享數(shù)據(jù)的完整性。S12X雙核微控制器集成了8個硬件互斥信號量,在訪問共享數(shù)據(jù)時,首先必須將特定信號量鎖定后才能操作,訪問結(jié)束時必須釋放該信號量。
    (1)數(shù)據(jù)定義
    工藝過程中需上傳的工藝參數(shù)有溫度(內(nèi)、外缸)、道數(shù)、電磁閥的狀態(tài)、轉(zhuǎn)動方向、左右計數(shù)器的計數(shù)值。本系統(tǒng)將所有工藝參數(shù)定義在如下結(jié)構(gòu)體中:
    struct TechPara{
        float VatTemp,DyeTemp;//內(nèi)、外缸溫度
        unsigned char TempNum;//道數(shù)
        unsigned char Status;//電磁閥的狀態(tài)、轉(zhuǎn)動方向
        unsigned int LeftCout,RightCount;//左右計數(shù)
    };
    (2)互斥信號的處理
    XGATE用SSEM指令加上一個3位立即數(shù)來鎖定該信號量;若鎖定成功則XGATE的進位標志C置位,否則C被清零。同時XGATE用CSEM指令加上一個3位立即數(shù)來釋放該信號量。其具體操作宏定義如下:
    #define SET_SEM(x)  (XGATE.XGSEM=0x0101<<(x))
//鎖定互斥信號
    #define TST_SEM(x)  (XGATE.XGSEM & 0x0001<<(x))
//測試鎖定是否成功
    #define REL_SEM(x)  (XGATE XGSEM = 0x0100<<(x))
//解鎖互斥信號
    階梯升溫染色工藝的控制過程分快速加熱過程和保溫過程??紤]到染缸系統(tǒng)的特性,通過設定低于保溫溫度下的某個閥值將一段快速升溫和保溫分為3段,即快速升溫的前期、后期、保溫期。對每個升溫期分別采取不同的控制策略:(1)染缸快速升溫的前期實行數(shù)字PD控制;(2)染缸快速升溫的后期和保溫期間運用數(shù)字PI控制。
    某印染廠染色車間采用自動化控制器完成印染生產(chǎn),經(jīng)3個月實際運行后發(fā)現(xiàn),在設定溫度低于100 ℃時,快速升溫階段有微量過沖,過沖量小于2 ℃;在保溫階段溫度控制得比較好,控制精度小于&plusmn;0.5 ℃;設定溫度高于100 ℃時,其控制精度小于&plusmn;0.5 ℃,完全滿足溫度控制要求。其控制過程完全符合染色工藝要求。
參考文獻
[1] 江楓.基于CAN的印染機分布式控制系統(tǒng)的實現(xiàn)和算法研究.東南大學碩士論文,2005.
[2] MC9S12XDP512 Data Sheet[EB/OL].http://www.freescale.com,2006.
[3] 高磊.S12X MCU外設協(xié)處理器的配置及編程[J].電子產(chǎn)品世界,2008(1):107-109.
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。