羅云萌,余明志
(1.陜西鐵路工程職業(yè)技術(shù)學(xué)院 陜西 渭南714000;2.上海振華重工(集團(tuán))股份有限公司 上海200125)
基于S3C2440和Linux 的嵌入式逆變CO2焊機(jī)系統(tǒng)設(shè)計(jì)
羅云萌1,余明志2
(1.陜西鐵路工程職業(yè)技術(shù)學(xué)院 陜西 渭南714000;2.上海振華重工(集團(tuán))股份有限公司 上海200125)
針對(duì)市場(chǎng)上CO2弧焊電源控制系統(tǒng)結(jié)構(gòu)單一、靈活性差等缺點(diǎn),設(shè)計(jì)了基于S3C2440和Linux的數(shù)字控制系統(tǒng),介紹控制算法和軟件流程。S3C2440微處理器利用增量式PI調(diào)節(jié)軟件控制方法,實(shí)現(xiàn)電弧電壓和焊接電流的閉環(huán)控制。在S3C2440上,對(duì)Linux系統(tǒng)底層文件進(jìn)行裁減和移植,利用QT設(shè)計(jì)用戶圖形程序便于用戶操作。同時(shí),送絲機(jī)以PIC16F877A為控制核心,實(shí)現(xiàn)送絲數(shù)字化控制。結(jié)果表明,設(shè)計(jì)的CO2焊接電源控制系統(tǒng)動(dòng)態(tài)響應(yīng)快、可靠性高、弧長(zhǎng)控制穩(wěn)定。
CO2焊機(jī);嵌入式;Linux;S3C2440;QT
CO2氣保焊以其優(yōu)質(zhì)高效的顯著特點(diǎn),在石化、建筑、汽車、造船和航空等眾多行業(yè)得到了廣泛的應(yīng)用。今后,焊接電源在能保證良好焊縫成型和接頭性能的前提下,向著數(shù)字化、便攜式方向發(fā)展。如采用模擬電路實(shí)現(xiàn)焊機(jī)的,必然導(dǎo)致系統(tǒng)龐大復(fù)雜,另外也無法實(shí)現(xiàn)如專家系統(tǒng)、遠(yuǎn)程視頻采集等功能[1-2]。
內(nèi)嵌操作系統(tǒng)的逆變CO2焊機(jī)具有包括專家系統(tǒng)、實(shí)時(shí)通信、實(shí)時(shí)監(jiān)測(cè)及采樣參數(shù)運(yùn)算等多任務(wù)特點(diǎn),若利用基于ARM微處理器的內(nèi)存管理器(MMU),可使每個(gè)任務(wù)單獨(dú)享有系統(tǒng)內(nèi)存空間,大大提升了CO2焊接過程控制的準(zhǔn)確性和靈活性,這點(diǎn)與以普通單片機(jī)做為控制芯片的系統(tǒng)有極大優(yōu)勢(shì)。因此本文提出一種內(nèi)嵌Linux操作系統(tǒng)的逆變CO2焊機(jī)。
基于S3C2440和Linux的嵌入式逆變CO2焊機(jī)總體結(jié)構(gòu)框圖如圖1所示。主電路設(shè)計(jì)中采用三相輸入全橋逆變拓?fù)浣Y(jié)構(gòu)。IGBT逆變器輪流被兩組PWM脈沖驅(qū)動(dòng)導(dǎo)通,實(shí)現(xiàn)軟開關(guān)控制??刂齐娐酚呻娏?電壓反饋電路、S3C2440與PIC16F877A組成的核心數(shù)據(jù)處理與控制部分、驅(qū)動(dòng)電路、送絲控制等電路組成。其中,S3C2440A微處理器作為控制系統(tǒng)的中央控制器,PIC16F877A用于送絲電路的控制。
在CO2焊機(jī)控制中,PI控制算法設(shè)計(jì)主要影響焊機(jī)動(dòng)特性。PI運(yùn)算分為位置式PI運(yùn)算和增量式PI運(yùn)算。由于CO2系統(tǒng)執(zhí)行機(jī)構(gòu)需要的不是控制量的絕對(duì)值,而是控制量的增量,因此選用增量式PI控制[3-4]。
其控制規(guī)律數(shù)學(xué)模型的微分方程為:
式中,u(t)為PI調(diào)節(jié)器輸出函數(shù);e(t)為PI調(diào)節(jié)器輸入函數(shù),即給定量與反饋量的偏差值即e(t)=r(t)-c(t);KP為比例系數(shù);TI為積分時(shí)間常數(shù);
上式表示的控制器的輸入函數(shù)和輸出函數(shù)均為模擬量。因?yàn)槲⑻幚砥髦荒芴幚頂?shù)字信號(hào)不能處理模擬信號(hào),所以要把模擬PI控制轉(zhuǎn)換成數(shù)字PI,這就需要把模擬PI的參數(shù)離散化處理如式(2)。
圖1 嵌入式逆變CO2焊機(jī)總體結(jié)構(gòu)框圖
式中,T為系統(tǒng)采樣周期。由式(3)可知,通過對(duì)PI運(yùn)算進(jìn)行離散化處理,可用軟件PI調(diào)節(jié)器代替模擬焊機(jī)中用硬件實(shí)現(xiàn)的PI調(diào)節(jié)器。KP和TI在短路過渡和燃弧期采用不同的值,這樣既可以保證在短路期間快速的動(dòng)態(tài)響應(yīng),保證液橋收縮期間電流的上升速度和液橋破斷時(shí)峰值期間的飛濺控制,又可以保證在燃弧期間電壓的穩(wěn)定和對(duì)燃弧能量的動(dòng)態(tài)調(diào)節(jié)。
焊機(jī)主電源系統(tǒng)軟件是建立在Linux操作系統(tǒng)軟件平臺(tái)上。Linux啟動(dòng)加載程序移植 U-boot-1.2,系統(tǒng)內(nèi)核為L(zhǎng)inux2.6.32.2,同時(shí)在內(nèi)核配置選項(xiàng)中使能 CONFIG_PM選項(xiàng),使內(nèi)核具備基本的電源管理功能。利用BUSYBOX制作Linux文件系統(tǒng)。本系統(tǒng)設(shè)計(jì)的軟件有4個(gè)方面:1)Linux設(shè)備驅(qū)動(dòng)程序;2)基于Qt/Embedded的GUI應(yīng)用程序,如焊接時(shí)參數(shù)采集顯示界面;3)專家系統(tǒng)程序;4)焊接控制程序。
3.1設(shè)備驅(qū)動(dòng)程序
在Linux系統(tǒng)中,對(duì)系統(tǒng)硬件操作,相同于對(duì)系統(tǒng)文件的操作,即“系統(tǒng)中一切都是文件”的思想[5-6]。本系統(tǒng)所用網(wǎng)卡、LCD、觸摸屏、Flash都采用與友善公司Mini2440開發(fā)板相同型號(hào)的硬件設(shè)備,因此直接使用其開源的驅(qū)動(dòng)程序。但是AD驅(qū)動(dòng)、焊槍開關(guān)驅(qū)動(dòng)、PWM驅(qū)動(dòng)及報(bào)警驅(qū)動(dòng)在焊機(jī)系統(tǒng)中有特定功能,必須自行設(shè)計(jì)驅(qū)動(dòng)程序。
AD驅(qū)動(dòng)采用字符驅(qū)動(dòng),設(shè)備結(jié)構(gòu)體定義如下:
AD驅(qū)動(dòng)中file_operations結(jié)構(gòu)體中成員函數(shù)是字符設(shè)備驅(qū)動(dòng)設(shè)計(jì)的主體內(nèi)容,這些函數(shù)會(huì)在應(yīng)用程序進(jìn)行Linux的open()、write()、read()、ioctl()等系統(tǒng)調(diào)用時(shí)最終被調(diào)用。
其中,adc_open()函數(shù)主要是設(shè)置AD控制寄存器;申請(qǐng)AD中斷服務(wù),中斷類型是共享中斷IRQF_SHARED,中斷服務(wù)函數(shù)為adc_irq,該中斷函數(shù)主要目的是讀取AD轉(zhuǎn)換值。adc_read()函數(shù)中調(diào)用內(nèi)核put_user()函數(shù),從系統(tǒng)內(nèi)核空間讀取數(shù)值到系統(tǒng)用戶空間。同時(shí)adc_read()函數(shù)中對(duì)信號(hào)量進(jìn)行P-V操作,利用并發(fā)控制解決競(jìng)態(tài)問題。
焊槍開關(guān)驅(qū)動(dòng)、PWM驅(qū)動(dòng)及報(bào)警驅(qū)動(dòng)也都采用字符驅(qū)動(dòng)設(shè)備。PWM驅(qū)動(dòng)功能主要任務(wù)是從系統(tǒng)用戶空間讀取該時(shí)刻PWM脈寬控制值,利用ioctl()函數(shù)系統(tǒng)調(diào)用,將該值傳遞給內(nèi)核PWM脈寬控制函數(shù),實(shí)現(xiàn)控制PWM脈寬的目的。焊槍開關(guān)驅(qū)動(dòng)程序目的是將與焊槍相連GPIO接口設(shè)置為外部中斷IRQ_EINT,并在中斷函數(shù)中利用內(nèi)核定時(shí)器實(shí)現(xiàn)消抖功能。系統(tǒng)用戶空間獲知焊槍開啟信號(hào)后,開始進(jìn)入焊接控制程序。
3.2用戶圖形應(yīng)用程序
Qt/Embedded是著名的QT庫(kù)開發(fā)商Trolltech開發(fā)的面向嵌入式系統(tǒng)的QT版本,主要用于開發(fā)嵌入式設(shè)備的GUI,是一個(gè)C++函數(shù)庫(kù)。Qt/Embedded在對(duì)象之間的通信采用信號(hào)和槽的機(jī)制(Signal/Slot)[7-17]。
1)建立窗體
Qt/Embedded里自帶QtDesigner設(shè)計(jì)器是一個(gè)具有可視化用戶接口的設(shè)計(jì)工具,在安裝 Qt的 bin目錄下鍵入./ designer,將啟動(dòng)一個(gè)包含很多Qt組件的可視化界面,使用C++語(yǔ)言編寫。打開QtDesigner新建一個(gè)部件,選擇Widgets對(duì)話框。窗口中,利用QtDesigner自帶的信號(hào)/槽功能建立SpinBox控件valueChange()函數(shù)與Slider控件setValue()函數(shù)之間的信號(hào)-槽關(guān)系。
2)生成頭文件,實(shí)現(xiàn)文件和主函數(shù)
經(jīng)過界面設(shè)計(jì)保存后,生成WeldWidget.ui文件,該文件是用XML語(yǔ)言寫的文件。利用Uic(User Interface Compiler)將WeldWidget.ui文件生成WeldWidget.h和WeldWidget.cpp文件。然后分別在生成的兩個(gè)文件中添加類對(duì)象及實(shí)現(xiàn)函數(shù)。
在WeldWidget.h中添加成員函數(shù):
3.3焊接控制程序
焊接控制程序如圖2所示。焊接控制程序主要實(shí)現(xiàn)以下功能:
1)參數(shù)輸入。從LCD觸摸屏中焊機(jī)圖形應(yīng)用程序中采集焊接參數(shù)。
2)起弧控制。按照選定時(shí)序和預(yù)置的參數(shù),進(jìn)行引弧慢送絲,輸出合適的PWM脈沖。
3)燃弧控制。按預(yù)置參數(shù)輸出合適的燃弧PWM脈寬,采集輸出電壓和電流。根據(jù)采集到的焊接參數(shù)判斷系統(tǒng)是否處于熄弧狀態(tài),如果處于熄弧狀態(tài),程序重新引?。蝗粝到y(tǒng)處于燃弧狀態(tài),則進(jìn)行焊接反饋電壓、電流參數(shù)PI運(yùn)算,調(diào)整PWM脈寬值,若處于短路狀態(tài),則進(jìn)入短路控制,將反饋的焊接電流值進(jìn)行PI運(yùn)算,輸出合適的PWM脈寬值。
4)收弧控制。依據(jù)有無收弧,調(diào)用設(shè)定的時(shí)序來控制送絲、氣閥的關(guān)閉時(shí)間,同時(shí)在收弧過程中,持續(xù)輸出設(shè)定收弧電壓一段時(shí)間,實(shí)現(xiàn)去小球功能。
圖2 焊接控制程序
4.1波形控制電路測(cè)試分析
實(shí)際焊接時(shí),焊接電壓和焊接電流波形測(cè)試,如圖3所示。
圖3 焊接電流電壓波形(100 A/19 V)
圖3中可以看出短路過渡開始時(shí)電弧熄滅,焊機(jī)輸出電壓幾乎為0V,而電流并沒有發(fā)生突變,而是先以一斜率快速上升促進(jìn)熔滴過渡,然后以一斜率緩慢上升,抑制飛濺,是以雙斜率上升;當(dāng)短路結(jié)束時(shí),電弧重新引燃,焊機(jī)輸出電壓很快上升至燃弧電壓,而電流先以一斜率下降,然后緩慢下降,提高燃弧能量。
4.2PWM濾波輸出調(diào)試
文中設(shè)計(jì)中,采用PWM波加濾波電路就能實(shí)現(xiàn)簡(jiǎn)易的D/A轉(zhuǎn)換,不在需要D/A轉(zhuǎn)換芯片,在一定程度上降低了焊機(jī)的制造成本。圖4為占空比為50%和濾波后的波形圖。
圖4 占空比為50%時(shí)PWM波形與濾波后波形圖
4.3送絲機(jī)測(cè)試
文中設(shè)計(jì)了基于電壓負(fù)反饋和電流正反饋的送絲調(diào)速系統(tǒng)。實(shí)際焊接時(shí),當(dāng)焊接電流為250 A,電壓為26 V時(shí)測(cè)得的電機(jī)工作波形如圖5所示。
圖5 送絲機(jī)工作波形圖
由于焊接電流的大小由送絲速度控制,因此電樞電流波形不僅反映了電機(jī)工作狀態(tài),還反映了電弧的變化情況。圖5中,電樞電流平滑,過度平緩,送絲速度穩(wěn)定,焊接電弧燃燒穩(wěn)定,焊接質(zhì)量可靠。
針對(duì) CO2焊機(jī)存在的缺點(diǎn),設(shè)計(jì)了基于 S3C2440和Linux的數(shù)字控制系統(tǒng),采用增量式PI控制,同時(shí),送絲機(jī)以PIC16F877A為控制核心,實(shí)現(xiàn)送絲數(shù)字化控制。實(shí)驗(yàn)結(jié)果表明,設(shè)計(jì)的CO2焊接電源控制系統(tǒng)動(dòng)態(tài)響應(yīng)快、可靠性高、弧長(zhǎng)控制穩(wěn)定。
[1]朱錦洪,路凱通.基于ARM微控制器的C02電弧焊全數(shù)字化逆變電源設(shè)計(jì)[J].焊接學(xué)報(bào),2007,28(8):5-8.
[2]殷樹言,劉家,丁京柱,等.21世紀(jì)的焊接之星-數(shù)字化弧焊逆變電源[J].機(jī)械工人,2001(5):6-8.
[3]吳開源.基于DSP的弧焊逆變電源數(shù)字化控制系統(tǒng)[J].電子設(shè)計(jì)應(yīng)用,2002,1(11):71-73.
[4]古金茂,黃鵬飛,殷樹言.基于DSP和CPLD的全數(shù)字CO2焊機(jī)系統(tǒng)[J].電焊機(jī),2009,39(2):42-46.
[5]韋東山.嵌入式Linux應(yīng)用開發(fā)完全手冊(cè)[M].北京:人民郵電出版社,2008.
[6]王田苗.嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開發(fā)[M].北京:清華大學(xué)出版社,2002.
[7]黃維.基于ARM的嵌入式Linux平臺(tái)的研究與實(shí)現(xiàn) [D].成都:電子科技大學(xué),2008.
[8]杜春雷.ARM體系結(jié)構(gòu)與編程[M].北京:清華大學(xué)出版社,2003.
[9]馮飛雨,于春梅.基于S3C2440的嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)[J].安防科技,2011,3:14-16.
[10]范書瑞,趙燕飛,高鐵成.ARM處理器與C語(yǔ)言開發(fā)應(yīng)用[M].北京航天航空大學(xué)出版社,2008.
[11]張飛舟,鄧旭明,王豪.嵌入式工業(yè)以太網(wǎng)接口開發(fā)與應(yīng)用[J].計(jì)算機(jī)工程,2002,29(16):154-157.
[12]萬永波,張根寶,等.基于ARM的嵌入式系統(tǒng)Bootloader啟動(dòng)流程分析[J].微計(jì)算機(jī)信息,2005,11(2):90-92.
[13]許榮.基于AT91RM9200的嵌入式Linux系統(tǒng)移植[J].電子技術(shù),2006,3:64-68.
[14]宋寶華.Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解[M].北京:人民郵電出版社,2008.
[15]何鵬舉,陳明,等.基于嵌入式Web服務(wù)器的遠(yuǎn)程視頻監(jiān)控系統(tǒng)[J].測(cè)控技術(shù),2004,23(6):62-63.
[16]陳鯤,陳云秋,劉信新.基于Qt/Embedded的嵌入式Linux應(yīng)用程序的設(shè)計(jì)[J].2009,37(1):156-159.
[17]王浩南,劉益成.基于嵌入式Linux系統(tǒng)下的Qt開發(fā)[J].電腦開發(fā)與應(yīng)用,2010,23(1):11-13.
The embedded system design of inverter CO2 welding machine based on S3C2440 and Linux
LUO Yun-meng1,YU Ming-zhi2
(1.Shaanxi Railway Institute,Weinan 714000,China;2.Shanghai Zhenhua Heavy Industries Co.,Ltd,Shanghai 200125,China)
The control system of CO2 arc welding power on the market have disadvantages,such as single structure,poor flexibility and so on,digital control system is designed based on S3C2440 and Linux,describes the control algorithm and software processes.S3C2440 microprocessor software using incremental PI regulator control method to achieve closed-loop control of the arc voltage and welding current.On the S3C2440,the underlying file system for Linux reductions and transplantation,using of QT design graphical user program for user-friendly operation.Meanwhile,wire feeder using PIC16F877A as the control core,to achieve wire digital control.The results show that the design of the CO2 welding power control system have advantages of fast dynamic response,high reliability,stable arc length control.
CO2 welding machine;embedded;Linux;S3C2440;QT
TN02
A
1674-6236(2016)22-0183-04
2015-11-19稿件編號(hào):201511185
羅云萌(1987—),男,陜西渭南人,碩士研究生,講師。研究方向:焊接電源。