《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 工程機(jī)械通用控制系統(tǒng)的研究與設(shè)計(jì)
工程機(jī)械通用控制系統(tǒng)的研究與設(shè)計(jì)
2015年微型機(jī)與應(yīng)用第16期
池?zé)樫e,,劉 強(qiáng),李 明
(華僑大學(xué) 機(jī)電及自動(dòng)化學(xué)院,,福建 廈門 361021)
摘要: 為滿足不同工程機(jī)械的控制要求,,設(shè)計(jì)了一款基于CoDeSys的工程機(jī)械控制器,,使其具有I/O端口的可配置性,。該控制系統(tǒng)主要采用嵌入式軟PLC技術(shù),,以符合IEC61131標(biāo)準(zhǔn)的CoDeSys的運(yùn)行系統(tǒng)為調(diào)度核心,,以英飛凌公司的TriCore系列微控制器TC1793為硬件核心,。重點(diǎn)闡述了控制系統(tǒng)的硬件設(shè)計(jì),、軟件開(kāi)發(fā),以實(shí)現(xiàn)控制系統(tǒng)的開(kāi)放性,、通用性,、高魯棒性,具有良好的經(jīng)濟(jì)效益和廣闊的應(yīng)用前景,。
Abstract:
Key words :

  摘  要: 為滿足不同工程機(jī)械的控制要求,,設(shè)計(jì)了一款基于CoDeSys的工程機(jī)械控制器,使其具有I/O端口的可配置性,。該控制系統(tǒng)主要采用嵌入式軟PLC技術(shù),,以符合IEC61131標(biāo)準(zhǔn)的CoDeSys的運(yùn)行系統(tǒng)為調(diào)度核心,以英飛凌公司的TriCore系列微控制器TC1793為硬件核心。重點(diǎn)闡述了控制系統(tǒng)的硬件設(shè)計(jì),、軟件開(kāi)發(fā),,以實(shí)現(xiàn)控制系統(tǒng)的開(kāi)放性、通用性,、高魯棒性,,具有良好的經(jīng)濟(jì)效益和廣闊的應(yīng)用前景。

  關(guān)鍵詞: 工程機(jī)械,;控制系統(tǒng),;通用性;CoDeSys

0 前言

  工程機(jī)械是國(guó)民經(jīng)濟(jì)建設(shè)的重要裝備,,在城鎮(zhèn)建設(shè),、搶險(xiǎn)救災(zāi)和國(guó)防建設(shè)中起著十分重要的作用??刂破髯鳛楣こ虣C(jī)械的核心部分,,是決定工程機(jī)械性能的重要因素之一[1]。然而工程機(jī)械控制器的市場(chǎng)幾乎被德國(guó)的西門子和力士樂(lè),、美國(guó)的卡特彼勒,、芬蘭的EPEC等國(guó)外產(chǎn)品所占據(jù),;相比之下,,國(guó)內(nèi)起步較晚,沒(méi)有掌握核心技術(shù),,大部分產(chǎn)品依靠進(jìn)口,,價(jià)格昂貴[2-3],故進(jìn)行工程機(jī)械控制器的研究很有必要,。

  目前國(guó)內(nèi)外的大部分控制器具有很強(qiáng)的針對(duì)性,,但是功能單一,通用性不強(qiáng),,而根據(jù)現(xiàn)場(chǎng)作業(yè)條件,,出現(xiàn)了不同種類的工程機(jī)械的需求,故相應(yīng)的控制器的軟硬件開(kāi)發(fā)較多,,這加大了人力物力的開(kāi)銷,,不利于產(chǎn)品的更新?lián)Q代。此外,,目前大多數(shù)控制器所使用的硬件平臺(tái)是16位的處理器,,并且可編程控制器(PLC)的封閉性明顯,這導(dǎo)致控制器的數(shù)據(jù)處理能力有限,,開(kāi)放性差,,可編程性不夠理想。

  基于此,結(jié)合當(dāng)前符合IEC61131標(biāo)準(zhǔn)的開(kāi)放式控制器開(kāi)發(fā)的基本思想,,融合PLC和嵌入式控制系統(tǒng)的優(yōu)點(diǎn),,以實(shí)現(xiàn)控制器開(kāi)放性、通用性和高魯棒性,,本文提出了一種基于CoDeSys的軟PLC與高性能的嵌入式硬件系統(tǒng)相結(jié)合的工程機(jī)械通用控制器的設(shè)計(jì)方案以解決上述問(wèn)題,。

1 控制系統(tǒng)的整體方案

  1.1 系統(tǒng)的功能需求

  種類繁多的工程機(jī)械,一方面,,根據(jù)不同的應(yīng)用場(chǎng)合,,需要不同種類和數(shù)量的I/O端口,為滿足要求,,需要I/O端口具有可配置性,;另一方面,為了便于系統(tǒng)的二次開(kāi)發(fā),,降低開(kāi)發(fā)難度,,實(shí)現(xiàn)系統(tǒng)的開(kāi)放性和通用性,需要采用符合IEC61131標(biāo)準(zhǔn)的開(kāi)發(fā)軟件,。

  1.2 系統(tǒng)的整體結(jié)構(gòu)

001.jpg

  圖1所示為本文所設(shè)計(jì)的控制器系統(tǒng)的整體結(jié)構(gòu),,包括硬件系統(tǒng)結(jié)構(gòu)和軟件系統(tǒng)結(jié)構(gòu)。其中硬件系統(tǒng)結(jié)構(gòu)是以英飛凌的微控制器為控制核心的硬件平臺(tái),,軟件系統(tǒng)結(jié)構(gòu)是以CoDeSys的運(yùn)行系統(tǒng)為調(diào)度核心,,包括應(yīng)用程序、CoDeSys的運(yùn)行內(nèi)核,、驅(qū)動(dòng)程序,。

2 硬件設(shè)計(jì)

  根據(jù)工程機(jī)械的功能需求,控制系統(tǒng)的硬件設(shè)計(jì)包括微控制器,、輸入模塊,、輸出模塊、通信模塊,、基本模塊,、存儲(chǔ)擴(kuò)展模塊,如圖2所示,。

002.jpg

  本設(shè)計(jì)采用英飛凌的32位微控制器TC1793為控制系統(tǒng)的硬件平臺(tái)的核心,,該MCU主頻可達(dá)到270 MHz,具有很強(qiáng)的實(shí)時(shí)性,,集成了DSP的數(shù)據(jù)處理能力[4],,適用于高魯棒性的控制;其內(nèi)部提供了豐富的外設(shè)資源,,有通用定時(shí)器列陣GPTA,、同步串行通信接口SSC,、捕獲比較單元CCU、外部總線單元EBU等,。這些完全可以滿足設(shè)計(jì)通用控制器硬件系統(tǒng)所需的接口數(shù)目和種類的要求,。

  2.1 輸入輸出模塊

  通過(guò)控制器的輸入模塊實(shí)現(xiàn)對(duì)工程機(jī)械的開(kāi)關(guān)量、脈沖量和模擬量的采集,;通過(guò)控制器的輸出模塊實(shí)現(xiàn)對(duì)工程機(jī)械的執(zhí)行器件的驅(qū)動(dòng)和控制,。為了讓控制器能應(yīng)用于不同種類的工程機(jī)械中,需要設(shè)計(jì)輸入輸出模塊具有可配置性的功能,。

  本文設(shè)計(jì)了18路開(kāi)關(guān)量的輸入,,其中有8路可以配置為正向開(kāi)關(guān)量或負(fù)向開(kāi)關(guān)量,用戶可以根據(jù)不同的應(yīng)用場(chǎng)合,,在軟件中配置該8路電路為所需要的開(kāi)關(guān)量類型,。采用飛思卡爾的多開(kāi)關(guān)檢測(cè)模塊MC33975來(lái)設(shè)計(jì)開(kāi)關(guān)量輸入接口的電路設(shè)計(jì),如圖3所示,。MC33975模塊可檢測(cè)22路開(kāi)關(guān)量,,通過(guò)SSC與MCU進(jìn)行通信,實(shí)現(xiàn)SP0-SP7的開(kāi)關(guān)量類型的選擇,,以及SP0-SP7和SG0-SG9開(kāi)關(guān)量信號(hào)的采集,。

003.jpg

004.jpg

  設(shè)計(jì)16路模擬量的輸入,用以檢測(cè)油溫,、油位,、水溫等物理量傳感器信號(hào)。為了實(shí)現(xiàn)不同工程機(jī)械對(duì)應(yīng)的模擬量類型的采集,,設(shè)計(jì)了8路模擬量類型可選擇的采集電路,,同時(shí)該8路電路可復(fù)用于開(kāi)關(guān)量的采集,。采用亞德諾半導(dǎo)體公司的低壓CMOS模擬多通道復(fù)用器ADG704設(shè)計(jì)該模擬量輸入電路,,如圖4所示。根據(jù)ADG704的A0和A1引腳的高低電平配置,,選擇S1~S4 4個(gè)輸入之一切換到公共輸出D,。為此,通過(guò)設(shè)計(jì)R53~R56 4個(gè)分壓電阻阻值,,實(shí)現(xiàn)0~24 V,、0~10 V、0~5 V和4~20 mA的模擬信號(hào)的檢測(cè),。由于MCU的ADC只能采集0~5 V的模擬量信號(hào),,故本設(shè)計(jì)中采用了鉗位二極管BAT4S構(gòu)成電壓鉗制電路,以防止ADC引腳的轉(zhuǎn)換電壓過(guò)高,,從而影響AD轉(zhuǎn)換結(jié)果,。此外,當(dāng)GPIO0為高電平時(shí),兩個(gè)MOS管都導(dǎo)通,,輸入端+24 V上拉,,此時(shí)可以采集開(kāi)關(guān)量的信號(hào)。

005.jpg

  設(shè)計(jì)了驅(qū)動(dòng)比例電磁閥,、油門電機(jī)等感性負(fù)載的PWM輸出電路,,同時(shí)該電路可復(fù)用于開(kāi)關(guān)量的輸出。本設(shè)計(jì)采用MCU的GPTA模塊產(chǎn)生的PWM作為控制信號(hào),,使用英飛凌的智能高邊功率開(kāi)關(guān)BTS5215作為功率輸出,,具體的電路設(shè)計(jì)如圖5所示。其中,,CF與POUT之間加電流反饋電路,,以防止功率負(fù)載因線圈阻抗的不穩(wěn)定引起電流偏差,從而影響負(fù)載動(dòng)作的精度,。通過(guò)CF與POUT之間添加的0.1 Ω采樣電阻,,將OUT引腳輸出電流0~7.4 A轉(zhuǎn)化為0~0.74 V的電壓,再經(jīng)過(guò)放大增益為5 dB的電流反饋電路放大到0~3.7 V,,連接回MCU的ADC引腳,。由于TC1793的外設(shè)功能引腳與GPIO復(fù)用,故可將PWM輸出引腳配置成GPIO模式,,便可選擇以PWM1和PWM2為開(kāi)關(guān)量的輸出,。

  2.2 存儲(chǔ)器擴(kuò)展模塊和通信模塊

  (1)存儲(chǔ)器擴(kuò)展模塊包括EEPROM,、外擴(kuò)Flash,、外擴(kuò)RAM。

  所設(shè)計(jì)的控制器需要存儲(chǔ)一些標(biāo)定的參數(shù),、功率器件的閾值等,,MCU集成了SSC,故選用ST公司同步串行接口EEPROM芯片M95640來(lái)存儲(chǔ)這些參數(shù),。

  為滿足控制器的通用性,,針對(duì)不同的工程機(jī)械,程序代碼和數(shù)據(jù)的占用空間差別很大,,同時(shí)為滿足后續(xù)符合IEC61131標(biāo)準(zhǔn)的CoDeSys系統(tǒng)移植的需求,,利用MCU集成的EBU,設(shè)計(jì)外擴(kuò)Flash和外擴(kuò)RAM模塊,。

 ?。?)通信模塊包含CAN總線通信和RS232通信。

  種類繁多的工程機(jī)械所需控制部件較多,,為便于數(shù)據(jù)通信,,選用CAN總線,,以實(shí)現(xiàn)控制器與儀表等外部設(shè)備之間的通信。本文采用TI公司的CAN收發(fā)器SN65HVD230設(shè)計(jì)電路,。

  采用RS232接口,,實(shí)現(xiàn)控制器與CoDeSys編程環(huán)境的程序下載和上傳。利用MCU集成的ASC,,采用SIPEX公司的RS232收發(fā)器芯片SP3232設(shè)計(jì)電路,。

  2.3 電源模塊

  工程機(jī)械控制器一般通過(guò)車載蓄電池和發(fā)動(dòng)機(jī)供電,但電壓的波動(dòng)大,,并且各個(gè)模塊所需的供電電壓不同,,故控制器的電源模塊設(shè)計(jì)包括電源保護(hù)電路設(shè)計(jì)和電壓轉(zhuǎn)換電路設(shè)計(jì)。

  工程機(jī)械供電系統(tǒng)常常伴有浪涌電壓,,這對(duì)硬件電路造成很大的破壞,;此外,人為的誤操作將電源反接也會(huì)對(duì)控制器造成很大的破壞,。為此需要在電源模塊保護(hù)電路中設(shè)計(jì)防浪涌電路和防反接電路,。以凌特公司的過(guò)壓保護(hù)芯片LT4356為核心,使用瞬態(tài)電壓抑制二極管SMBJ5BCA吸收輸入電壓的浪涌功率,,并鉗制輸入電壓不高于+36 V,,進(jìn)而構(gòu)建MCU的電源模塊保護(hù)電路。

  MCU的外設(shè)接口ADC需+5 V供電,,CAN和I/O等需+3.3 V供電,,內(nèi)核需+1.3 V供電,而有些外圍電路需+12 V供電,,故控制系統(tǒng)所需的電壓為+24 V,、+12 V、+5 V,、+3.3 V,、+1.3 V。本設(shè)計(jì)選用線性穩(wěn)壓器LTM4607實(shí)現(xiàn)+24 V~+12 V的電壓轉(zhuǎn)換,;選用LTM8025為核心構(gòu)建+5 V,、+3.3 V、+1.3 V的轉(zhuǎn)換電路實(shí)現(xiàn)微控制器的供電,;此外設(shè)計(jì)合適的外圍電路以實(shí)現(xiàn)MCU上電時(shí)序的要求。

3 軟件開(kāi)發(fā)

  為了降低程序的復(fù)雜度,,使其具備可重構(gòu)能力,,以滿足不同工程機(jī)械的控制要求,采用將應(yīng)用程序和驅(qū)動(dòng)程序分離的開(kāi)發(fā)方法,。

  本控制器采用開(kāi)放性的軟件CoDeSys進(jìn)行軟件的開(kāi)發(fā),,包括應(yīng)用程序,、CoDeSys的運(yùn)行內(nèi)核、驅(qū)動(dòng)程序,。軟件系統(tǒng)的具體結(jié)構(gòu)如圖6所示,。

006.jpg

  其中CoDeSys軟件是3S公司基于IEC61131標(biāo)準(zhǔn)的軟件套件,包括CoDeSys運(yùn)行內(nèi)核和應(yīng)用程序開(kāi)發(fā)環(huán)境,。CoDeSys運(yùn)行內(nèi)核需要移植到硬件系統(tǒng)中,,移植工作主要包括:Target描述文件的設(shè)計(jì)、通信驅(qū)動(dòng)描述文件的設(shè)計(jì),、I/O驅(qū)動(dòng)描述文件的設(shè)計(jì)等[5-6],,即形成一個(gè)用來(lái)描述目標(biāo)系統(tǒng)與CoDeSys編程系統(tǒng)之間的軟硬件的特定配置和定義的目標(biāo)支持軟件包。

  I/O端口配置模塊方便用戶根據(jù)需要選擇I/O端口的種類和數(shù)目,,生成I/O配置文件,,CoDeSys運(yùn)行系統(tǒng)訪問(wèn)I/O配置文件,調(diào)用對(duì)應(yīng)的底層驅(qū)動(dòng),,以實(shí)現(xiàn)I/O端口的可配置性,。其中I/O端口控制的部分代碼如下:

  #define AIDI_DI_Read[i] DI_Value[i];

  #define AIDI_AI_Read[i] AI_Value[i],;

  void IO_Control()

  {

  ……

  for(i=0,;i<m;i++)//本文的m為8

  {

  if(AIDI_En[i]==1)//1使能,,0禁止

  {

  if(AIDI_Config[i]==DI)

  {

  *((unsigned int*)InputBuf [AIDIBaseAddr+i*2])=AIDI_DI_Read[i],;

  }

  else

  {

  *((unsigned int*)InputBuf[AIDIBaseAddr+i*2])=AIDI_AI_Read[i];

  }

  }

  ……

  }

  }

  以上過(guò)程總結(jié)為圖7所示的系統(tǒng)軟件主程序流程,。

007.jpg

4 控制系統(tǒng)的性能測(cè)試

  通用控制器的樣機(jī)完成制作之后,,需要對(duì)控制器的性能進(jìn)行測(cè)試,主要包括可靠性測(cè)試,、溫度測(cè)試,、通用性測(cè)試等。本文主要闡述控制器的通用性測(cè)試,。

  對(duì)控制器的通用性測(cè)試,,采用在控制器的I/O端口加載相應(yīng)的負(fù)載,并編寫(xiě)對(duì)應(yīng)的測(cè)試程序的方法來(lái)實(shí)現(xiàn),。具體的實(shí)現(xiàn)方法是:在可配置為開(kāi)關(guān)量采集的模擬量輸入接口AIN上,,分別接0~24 V之間的電壓、4~20 mA之間的電流,、0~1.5 kΩ之間的電阻,;開(kāi)關(guān)量的輸入接口DIN和輸出接口DOUT都接繼電器;脈沖量輸入接口PIN接PWM的輸出接口,;將可配置為開(kāi)關(guān)量輸出的PWM輸出接口分別接電磁閥和繼電器,。通過(guò)這樣的加載方式,,用示波器分別觀察對(duì)應(yīng)端口的狀態(tài),實(shí)現(xiàn)控制器的通用性測(cè)試,。例如PWM/DO端口,,通過(guò)I/O端口配置模塊先配置為PWM輸出,加載PWM測(cè)試程序成功驅(qū)動(dòng)電磁閥,;再配置為DO輸出,,加載DO測(cè)試程序成功驅(qū)動(dòng)繼電器。用示波器測(cè)出該端口的狀態(tài)分別如圖8和圖9所示,。從圖可知該端口可以實(shí)現(xiàn)PWM和DO的復(fù)用,。

008.jpg

5 結(jié)論

  通過(guò)加載測(cè)試,本文所設(shè)計(jì)的基于CoDeSys的工程機(jī)械通用控制器具有I/O端口可配置性,,具備可重構(gòu)能力,,可以滿足不同種類的工程機(jī)械的控制要求,降低人力物力的投入,。此外,,該控制器符合IEC61131標(biāo)準(zhǔn),支持5種編程語(yǔ)言,,為用戶提供統(tǒng)一的編程環(huán)境,,具有很強(qiáng)的開(kāi)放性,便于實(shí)現(xiàn)控制系統(tǒng)的二次開(kāi)發(fā),,在科技不斷發(fā)展和市場(chǎng)競(jìng)爭(zhēng)愈發(fā)激烈的形勢(shì)下,,具有良好的應(yīng)用前景。

參考文獻(xiàn)

  [1] 王國(guó)慶,,劉潔,,張宗濤,等.工程機(jī)械智能化控制器研究[J].筑路機(jī)械與施工機(jī)械化,,2008,,25(3):73-75.

  [2] 閔華松,李美升,,魏洪興,,等.工程機(jī)械智能控制器設(shè)計(jì)[J].信息與控制,2011(2):254-261.

  [3] 袁森,,黃海松.基于MCU和uC/OS-Ⅱ的工程機(jī)械電氣控制器設(shè)計(jì)研究[J].測(cè)控技術(shù),,2014,33(4):58-61.

  [4] Infineon Technologies AG. TC1798. Data Sheet(V1.1)[S].2014.

  [5] 3S-Smart Software Solutions GmbH. CODESYS control V3 migration and adaptation(Version 4.0)[S]. 2014.

  [6] 王麗麗,,康存鋒,,馬春敏,等.基于CoDeSys的嵌入式軟PLC系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代制造工程,,2007(3):54-56.


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