多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)設(shè)計(jì)-鄧林華_第1頁(yè)
多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)設(shè)計(jì)-鄧林華_第2頁(yè)
多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)設(shè)計(jì)-鄧林華_第3頁(yè)
多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)設(shè)計(jì)-鄧林華_第4頁(yè)
多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)設(shè)計(jì)-鄧林華_第5頁(yè)
已閱讀5頁(yè),還剩49頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

文檔收集于互聯(lián)網(wǎng),已重新整理排版文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.南昌大學(xué)編號(hào)文盲審抽檢多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)設(shè)計(jì)DesignofMulti-stepMotorControlSystem專業(yè)名稱: 精密儀器及機(jī)械專業(yè)代碼:種類(在相應(yīng)方框內(nèi)打):V統(tǒng)招博士口統(tǒng)招碩士口同等學(xué)力人員申請(qǐng)碩士學(xué)位口工程碩士口高校教師在職攻讀碩士學(xué)位口公共管理口工商管理口摘要舞臺(tái)燈作為眾多舞臺(tái)設(shè)備中極為重要的一部分,實(shí)現(xiàn)了諸如變化燈光顏色、顏色色溫、背景圖案、空間位置等功能。而舞臺(tái)燈控制的實(shí)質(zhì)是對(duì)多個(gè)步進(jìn)電機(jī)的協(xié)同控制,本文在合作企業(yè)現(xiàn)有的舞臺(tái)燈機(jī)械結(jié)構(gòu)的基礎(chǔ)上完成了多電機(jī)協(xié)同控制系統(tǒng)的設(shè)計(jì):(1)完成了符合控制要求的多電機(jī)控制算法的設(shè)計(jì),針對(duì)步進(jìn)電機(jī)的原理為其建立的數(shù)學(xué)模型并依據(jù)該模型采用電流矢量恒幅均勻旋轉(zhuǎn)法來(lái)實(shí)現(xiàn)驅(qū)動(dòng)電流的細(xì)分方式,根據(jù)主從板電機(jī)速度控制的差異為其建立了不同的加減速數(shù)學(xué)模型,主板效果控制電機(jī)采用二次函數(shù)曲線而從板線性方式控制電機(jī)。(2)完成了符合控制要求硬件電路的設(shè)計(jì),主板采用飛利浦公司的高性能功能LPC2148單片機(jī)完成對(duì)主板16路效果電機(jī)的控制和從板電機(jī)的控制命令發(fā)送,從板采用微星的PIC16F873單片機(jī)完成兩路位置電機(jī)的控制,依據(jù)控制性能不同主板采用兩相混合步進(jìn)電機(jī)作為執(zhí)行組件NJM3771作為驅(qū)動(dòng)芯片,并采用斬波驅(qū)動(dòng)作為電機(jī)的驅(qū)動(dòng)方式。從板電機(jī)采用三相混合步進(jìn)電機(jī)L6384作為驅(qū)動(dòng)芯片采用SPWM作為電機(jī)的驅(qū)動(dòng)方式。(3)完成了軟件系統(tǒng)的設(shè)計(jì),主板程序完成了基于Protothreads嵌入式系統(tǒng)的多任務(wù)調(diào)度器的設(shè)計(jì)了從而實(shí)現(xiàn)了16路效果電機(jī)的協(xié)同控制和各種效果的實(shí)現(xiàn),從板程序完成了電腦X、Y軸控制位置了控制并針對(duì)其轉(zhuǎn)動(dòng)慣量大的特點(diǎn)采用光電編碼盤實(shí)現(xiàn)角位移的半閉環(huán)反饋從而提高控制精度。(4)為了提高系統(tǒng)抗干擾能力,硬件方面選擇抗干擾能力強(qiáng)的元器件優(yōu)化PCB布圖,軟件方面采用看門狗和軟件陷阱當(dāng)程序跑飛后強(qiáng)行讓舞臺(tái)燈系統(tǒng)復(fù)位。關(guān)鍵詞:步進(jìn)電機(jī);協(xié)同控制;控制算法;嵌入系統(tǒng);KeyWords:Abstract目錄TOC\o"1-5"\h\z\o"CurrentDocument"課題來(lái)源及意義 1\o"CurrentDocument"舞臺(tái)燈簡(jiǎn)介及發(fā)展現(xiàn)狀 2\o"CurrentDocument"DMX512協(xié)議簡(jiǎn)介 4\o"CurrentDocument"論文主要工作 5\o"CurrentDocument"本章小結(jié) 6\o"CurrentDocument"第二章 步進(jìn)電機(jī)原理及控制算法 8\o"CurrentDocument"步進(jìn)電機(jī)控制理論分析 8 8 12\o"CurrentDocument"步進(jìn)電機(jī)的選型 13 13\o"CurrentDocument"細(xì)分原理及數(shù)學(xué)模型 14 142.3.2細(xì)分驅(qū)動(dòng)的分類及數(shù)學(xué)模型 15\o"CurrentDocument"步進(jìn)電機(jī)加減速數(shù)學(xué)模型 18 18 27\o"CurrentDocument"本章小結(jié) 29\o"CurrentDocument"第三章器件選型及硬件電路的設(shè)計(jì) 30\o"CurrentDocument"硬件電路的設(shè)計(jì)要求 30\o"CurrentDocument"硬件電路總體規(guī)劃 30 31 34\o"CurrentDocument"硬件電路的設(shè)計(jì) 35 35\o"CurrentDocument".2RS485電平轉(zhuǎn)換模塊 36—RS-485接口標(biāo)準(zhǔn) 36\o"CurrentDocument"步進(jìn)電機(jī)信息反饋模塊 38 38 39 40\o"CurrentDocument"LCD控制面板 42\o"CurrentDocument"電子鎮(zhèn)流器控制模塊 43\o"CurrentDocument"步進(jìn)電機(jī)驅(qū)動(dòng)模塊 44 44 49\o"CurrentDocument"JTAG接口模塊 50\o"CurrentDocument"本章小結(jié) 52\o"CurrentDocument"第四章系統(tǒng)軟件設(shè)計(jì) 53\o"CurrentDocument"軟件總體框架的設(shè)計(jì) 53\o"CurrentDocument"主板程序設(shè)計(jì) 55 56\o"CurrentDocument"4.2.2Protothreads簡(jiǎn)介 57\o"CurrentDocument"主板電機(jī)的協(xié)同控制模塊的設(shè)計(jì) 60 61 64主板其它程序塊的實(shí)現(xiàn) 67\o"CurrentDocument"X、Y從控電機(jī)與主板電機(jī)的協(xié)同控制 68X,Y電機(jī)驅(qū)動(dòng)方式 68 69\o"CurrentDocument"本章小結(jié) 73\o"CurrentDocument"第5章總結(jié)與展望 74\o"CurrentDocument"論文總結(jié) 74\o"CurrentDocument"工作展望 74\o"CurrentDocument"參考文獻(xiàn) 75第1章緒論課題來(lái)源及意義該多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)是為廣州某舞臺(tái)燈光公司的一款舞臺(tái)燈量身定制的,主要包括硬件電路板和軟件系統(tǒng)的設(shè)計(jì)。實(shí)現(xiàn)步進(jìn)電機(jī)控制的方法很多,但一般對(duì)多電機(jī)同時(shí)工作的控制都是采用多CPU方式,這種控制不僅提高了成本,而且由于元器件的增加,系統(tǒng)穩(wěn)定性和可靠性都受到影響。本文中涉及電機(jī)主要包括燈體內(nèi)實(shí)現(xiàn)如顏色、圖案、頻閃、調(diào)焦、放大、色溫調(diào)節(jié)等各種效果電機(jī)以及燈體外X、Y軸方向的控制。需要協(xié)同控制的電機(jī)有20個(gè)之多,其中燈體主板效果電機(jī)為16個(gè),X、Y軸方向電機(jī)共4個(gè)。圖1.1為舞臺(tái)燈的電機(jī)分布圖。這些電機(jī)不但能同時(shí)運(yùn)轉(zhuǎn)而且相互之間存在邏輯控制關(guān)系,因此采用傳統(tǒng)的CPU與步進(jìn)電機(jī)一對(duì)一控制關(guān)系不但成本高而且也很難滿足系統(tǒng)的控制要求的。本文采用獨(dú)特的控制算法只用m^PU完成了燈體多步進(jìn)電機(jī)協(xié)同控制系統(tǒng)的設(shè)計(jì)。圖1.1舞臺(tái)燈的電機(jī)分布圖舞臺(tái)燈簡(jiǎn)介及發(fā)展現(xiàn)狀舞臺(tái)燈得名于英文IntelligentBeam。20世紀(jì)70年代末到80年代初,在國(guó)外一些大型的戶外演唱會(huì)上和電視舞臺(tái)上,為了烘托現(xiàn)場(chǎng)氣氛,開始使用一些由電機(jī)控制的筒子燈來(lái)產(chǎn)生可以擺動(dòng)和顏色變化的光束效果。這種筒子燈就是舞臺(tái)燈的雛形。[1]自上世紀(jì)80年代初電視舞臺(tái)開始慢慢出現(xiàn)舞臺(tái)燈的影子,在一些大型戶外表演節(jié)目為了提高演出的藝術(shù)效果襯托舞臺(tái)氣氛,將一些燈具套上筒子裝上一些簡(jiǎn)單的驅(qū)動(dòng)機(jī)構(gòu)使之能做一些諸如轉(zhuǎn)動(dòng)換顏色等簡(jiǎn)單的運(yùn)動(dòng)控制,進(jìn)入90年代隨著單片機(jī)技術(shù)、電機(jī)控制技術(shù)、和高溫材料的發(fā)展舞臺(tái)燈從原始的模擬時(shí)代進(jìn)入了數(shù)字控制時(shí)代[2],舞臺(tái)燈越來(lái)越多被使用在各種演出、聚會(huì)、舞廳和家居中舞臺(tái)燈的品種也越來(lái)越豐富,功能也越來(lái)越多。舞臺(tái)燈的種類繁多,但按照其內(nèi)部原理和結(jié)構(gòu)總的來(lái)說(shuō)可分為兩類:1,掃描式舞臺(tái)燈2,搖頭式舞臺(tái)燈。掃描式舞臺(tái)燈又被稱作電腦掃描燈,它的工作原理是依據(jù)光束的反射原理,它將燈泡發(fā)射的光束反射出來(lái)如圖1.2為鏡片式和滾筒式兩種電腦掃描燈的外部結(jié)構(gòu)照片圖。圖1.2鏡片式和滾筒式電腦掃描燈鏡片反射式掃描燈的光束首先從燈口投射到一塊玻璃鏡片上,玻璃鏡片由兩個(gè)電機(jī)帶動(dòng)在水平、垂直兩個(gè)方向上不停擺動(dòng)(作傾斜及俯仰變化),從而反射出呈動(dòng)態(tài)變化的顏色及圖案效果。滾筒反射式掃描燈用能夠反光的滾筒取代反光鏡片,由兩個(gè)電機(jī)驅(qū)動(dòng)滾筒旋轉(zhuǎn),同時(shí)左右擺動(dòng),從而反射出多變的顏色及圖案效果。反射式掃描舞臺(tái)燈由于只有反光鏡片或滾筒的擺動(dòng)及旋轉(zhuǎn),易于驅(qū)動(dòng),造價(jià)較低,缺點(diǎn)是光束運(yùn)動(dòng)范圍較小,存在掃描死角。鏡片反射式掃描燈光束的水平和垂直最大掃描范圍是180°和80°,滾筒反射式光束的水平掃描范圍也是180°,在垂直維度上滾筒可連續(xù)轉(zhuǎn)動(dòng),光束掃描范圍不受限制。搖頭式舞臺(tái)燈,一般稱電腦搖頭燈,和掃描燈相比,其光線是直射式的,具有更高的光效。搖頭式舞臺(tái)燈通過(guò)步進(jìn)電機(jī)驅(qū)動(dòng)除燈座之外的整個(gè)燈體在水平、垂直兩個(gè)維度上“搖頭晃腦”,形成光束運(yùn)動(dòng)。燈體的水平、垂直旋轉(zhuǎn)角度分別可達(dá)540°和270°,燈光運(yùn)動(dòng)范圍大,基本不存在覆蓋死區(qū)。隨著小型搖頭燈的發(fā)展搖頭燈不在笨重,耐高溫材料的出現(xiàn)和低功耗的燈泡的出現(xiàn)使得體積嬌小功能眾多高智能的搖頭燈成為搖頭燈市場(chǎng)的新寵兒。搖頭燈的品種眾多款式繁雜,但按其投射的效果,可分為染色和圖案式搖頭燈,染色搖頭燈也叫洗燈,圖案燈可以依據(jù)舞臺(tái)效果投射出預(yù)先裝置的圖案和色彩效果,染色搖頭燈主要是投射各種顏色改變舞臺(tái)的顏色變換的色溫,體現(xiàn)各藝術(shù)效果。兩種搖頭燈如圖2-2所示。圖1.2圖案搖頭燈和染色搖頭燈舞臺(tái)燈之所以能變換出各種顏色和圖案,是由于控制芯片依據(jù)控制要求控制裝載有圖案盤和色盤的電機(jī)旋轉(zhuǎn)到所需的圖案和色盤的位置上從而實(shí)現(xiàn)不同的組合效果,洗燈不包含圖案主要是由各種顏色和色溫的色片組成實(shí)現(xiàn)幾種顏色的組合效果,從而達(dá)到各種顏色的實(shí)現(xiàn),一般來(lái)說(shuō)對(duì)于圖案盤都能實(shí)現(xiàn)公轉(zhuǎn)和自傳兩種運(yùn)動(dòng)而色盤只能單一的公轉(zhuǎn)。如圖1.3為示的顏色輪,顏色輪上共鑲嵌的6個(gè)不同顏色的色片當(dāng)控制該顏色輪的步進(jìn)電機(jī)轉(zhuǎn)動(dòng)到某一色片位置時(shí),白色的燈光被濾成色片的顏色投射出

去,當(dāng)需要不同的舞臺(tái)顏色是指需要控制電機(jī)轉(zhuǎn)動(dòng)到相應(yīng)的色片位置既可,色盤的第七個(gè)位置為空白這是為了滿足有時(shí)需要投射白光而設(shè)計(jì)的。圖1.3舞臺(tái)燈中的顏色輪圖1.4舞臺(tái)燈中的圖案輪舞臺(tái)燈中的圖案輪如圖1.4所示,整個(gè)輪盤上共有7個(gè)圖案片,圖案片隨圖案輪旋轉(zhuǎn)至光源的光路位置,即可投射出相應(yīng)的圖案效果。和固定圖案輪不同的是,旋轉(zhuǎn)圖案輪的每一個(gè)圖案片本身都是一個(gè)小齒輪,被中間的大齒輪帶動(dòng)著以一定的速度和方向旋轉(zhuǎn),所以當(dāng)圖案片隨整個(gè)圖案輪“公轉(zhuǎn)”時(shí),自身還處于“自轉(zhuǎn)”狀態(tài),因而可以投射出旋轉(zhuǎn)的動(dòng)態(tài)圖案。為了實(shí)現(xiàn)舞臺(tái)燈能投射各種圖案和顏色,在圖案輪和色盤的機(jī)械結(jié)構(gòu)設(shè)計(jì)上采用彈簧墊圈使得圖案片和色片的裝載和拆卸都很方便,便于根據(jù)舞臺(tái)的效果要求更換各種圖案片和色片,通常來(lái)說(shuō)圖案片和色片都是耐高溫的尤其在一些高功率的舞臺(tái)燈上,安裝圖案片主要著圖案片的正反方向要將沒有凸紋或是沒有反光涂層的那一面正對(duì)光源。DMX512協(xié)議簡(jiǎn)介舞臺(tái)燈與控臺(tái)直接的通訊時(shí)通過(guò)DMX512協(xié)議通訊的DMX512協(xié)議是美國(guó)舞臺(tái)燈光協(xié)會(huì)〔USITT)于1990年發(fā)布的一種燈光控制器與燈具設(shè)備進(jìn)行數(shù)據(jù)傳輸?shù)臉?biāo)準(zhǔn)。這包括電氣特性、數(shù)據(jù)協(xié)議、數(shù)據(jù)格式等各方面的內(nèi)容。DMX512電氣特性與RS-485完全兼容,包括驅(qū)動(dòng)器/接收器的選擇、線路負(fù)載和多站配置等方面的要求都是一致的,DMX512數(shù)據(jù)協(xié)議規(guī)定使用250Kbps的波特率。⑶11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.論文主要工作在現(xiàn)有的舞臺(tái)燈機(jī)械結(jié)構(gòu)的基礎(chǔ)上設(shè)計(jì)出滿足控制要求的硬件電路和軟件系統(tǒng),主要包括以下幾項(xiàng)工作:1、設(shè)計(jì)獨(dú)特控制算法以滿足多電機(jī)的協(xié)同控制要求2、設(shè)計(jì)滿足控制要求的硬件電路3、編寫符合和控制性能的軟件文檔收集于互聯(lián)網(wǎng),已重新整理排版文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.本章小結(jié)隨著科技的不斷發(fā)展市場(chǎng)的需求不斷擴(kuò)大,舞臺(tái)燈得到不斷的發(fā)展從原本簡(jiǎn)單的運(yùn)動(dòng)控制逐漸發(fā)展為集機(jī)械科學(xué)、材料科學(xué)、流體科學(xué)、控制科學(xué)、光學(xué)等一身的高科技產(chǎn)品,各種舞臺(tái)燈得到最大限度的發(fā)展出現(xiàn)了各種高智能的舞臺(tái)燈,燈具的功率和亮度也不斷的提高而體積和燈體重量不斷的降低。舞臺(tái)燈的發(fā)展豐富了舞臺(tái)效果某種意義上也促進(jìn)了科技的進(jìn)步。但國(guó)內(nèi)自主的舞臺(tái)燈還處于較低的發(fā)展水平尤其對(duì)于控制要求和電機(jī)數(shù)目較多的搖頭燈,因此本文主要研究符合搖頭燈的多電機(jī)協(xié)同控制系統(tǒng)以求達(dá)到國(guó)外同類產(chǎn)品的控制要求開拓市場(chǎng)。第二章步進(jìn)電機(jī)原理及控制算法舞臺(tái)燈各種效果的獲得都是通過(guò)對(duì)步進(jìn)電機(jī)的控制實(shí)現(xiàn)的,因此要設(shè)計(jì)出滿足舞臺(tái)燈諸如X、Y空間運(yùn)動(dòng)、顏色、圖案、頻閃等效果就需要選定好對(duì)應(yīng)的控制電機(jī)和控制算法。本章在分析各類步進(jìn)電機(jī)的工作原理和特性后,為選定的步進(jìn)電機(jī)建立了數(shù)學(xué)模型、細(xì)分模型和控制算法。2.1步進(jìn)電機(jī)控制理論分析步進(jìn)電機(jī)不同步伺服電機(jī)的連續(xù)運(yùn)動(dòng),步進(jìn)電機(jī)是隨著輸入脈沖數(shù)的改變而步進(jìn)的每當(dāng)步進(jìn)電機(jī)收到一個(gè)脈沖電機(jī)就走一個(gè)固定的角度,這個(gè)角度是由電機(jī)的機(jī)械結(jié)構(gòu)決定的。當(dāng)步進(jìn)電機(jī)的負(fù)載扭矩和輸入脈沖頻率小于該電機(jī)的額定扭矩和最大相應(yīng)頻率時(shí)步進(jìn)電機(jī)輸出的扭矩是恒定的轉(zhuǎn)動(dòng)數(shù)度以輸入脈沖的頻率成正比關(guān)系。步進(jìn)電機(jī)并不是表示單一的一款電機(jī)而是同一系列電機(jī)的總稱,這系類電機(jī)有其共同的控制特點(diǎn)即所轉(zhuǎn)角度由輸入脈沖數(shù)決定,雖然控制方式相近但步進(jìn)電機(jī)的工作原理和內(nèi)部的機(jī)械構(gòu)成有著較大的差異。一般而言按其原理和結(jié)構(gòu)可將其劃分為三大例:1,反應(yīng)式步進(jìn)電機(jī)2,永磁式步進(jìn)電機(jī)3,混合式步進(jìn)電機(jī)。1、反應(yīng)式步進(jìn)電機(jī)原理及構(gòu)成反應(yīng)式步進(jìn)電機(jī)也常稱磁阻式步進(jìn)電機(jī),其原理和內(nèi)部結(jié)構(gòu)都較為簡(jiǎn)單圖2.1為市面上較為常見的三相反應(yīng)式步進(jìn)電機(jī)的剖面示意圖,從圖中可也看出電機(jī)的定子上有六個(gè)均布的磁極,其空間夾角是60度并且各磁極上套都有線圈,按圖2.1連成A、B、C三相繞組。轉(zhuǎn)子上均勻分布40個(gè)則小齒每個(gè)齒的齒距為9°,由于定子和轉(zhuǎn)子在空間的上的齒數(shù)比為30:40,因此如圖當(dāng)A相繞組的小齒和定子的小齒對(duì)其后B、C相線繞組的小齒就會(huì)和定子小齒錯(cuò)開三分之一的齒距。根據(jù)繞組通電勵(lì)磁之后會(huì)產(chǎn)生一個(gè)磁力迫使轉(zhuǎn)子轉(zhuǎn)動(dòng)到磁阻最小的位置的原理,因此此時(shí)當(dāng)B相通電A、C相斷開那么轉(zhuǎn)子就會(huì)在磁力的作用下轉(zhuǎn)到磁通路徑磁阻最小的位置即順時(shí)針轉(zhuǎn)動(dòng)轉(zhuǎn)子的三分之一個(gè)齒距即3°,若接著通電C相繞組則繼續(xù)順時(shí)針轉(zhuǎn)動(dòng)3°。因此按順序依次接通不同線繞組就能使電機(jī)轉(zhuǎn)動(dòng)起來(lái),通過(guò)改變通電的順序就可以改變電機(jī)的轉(zhuǎn)動(dòng)方向,通過(guò)改變通電頻率就可以改變點(diǎn)的轉(zhuǎn)動(dòng)速度。[4]圖2.1三相反應(yīng)式步進(jìn)電機(jī)剖面圖1定子2—轉(zhuǎn)子3—定子線繞組2、永磁式步進(jìn)電機(jī)原理及構(gòu)成永磁式步進(jìn)電機(jī)(PM),是由磁性轉(zhuǎn)子鐵芯通過(guò)與由定子產(chǎn)生的脈沖電磁場(chǎng)相互作用而產(chǎn)生轉(zhuǎn)動(dòng)。永磁式步進(jìn)電機(jī)一般為兩相,轉(zhuǎn)矩和體積較小,步進(jìn)角一般為7.5度或15度。電機(jī)里有轉(zhuǎn)子和定子兩部分:可以是定子是線圈,轉(zhuǎn)子是永磁鐵;也可以是定子是永磁鐵,轉(zhuǎn)子是線圈。如圖2.2所示,該永磁式步進(jìn)電機(jī)為轉(zhuǎn)子是N、S極相間的永磁體,定子為線繞組,當(dāng)定子的線繞組通電后產(chǎn)生的磁場(chǎng)與定子的永磁體產(chǎn)生的磁場(chǎng)相互作用遵行異性相斥同性相吸的電磁原理,從而使得轉(zhuǎn)子轉(zhuǎn)動(dòng)[5]圖2.2為兩相永磁式步進(jìn)電機(jī)實(shí)物解剖圖圖2.2永磁式步進(jìn)電機(jī)結(jié)構(gòu)示意圖圖2.3兩相永磁式步進(jìn)電機(jī)實(shí)物解剖圖3、混合式步進(jìn)電機(jī)原理及構(gòu)成混合式步進(jìn)電機(jī)按相數(shù)可分為兩相步進(jìn)電機(jī)、三相步進(jìn)電機(jī)和五相步進(jìn)電機(jī),他們的步進(jìn)角一般分別為1.8度、1.2度和0.72度?;旌喜竭M(jìn)電機(jī)的定子和轉(zhuǎn)子鐵芯都為齒狀結(jié)構(gòu)這和反應(yīng)式步進(jìn)電動(dòng)的機(jī)結(jié)構(gòu)非常的相似,但和反應(yīng)式步進(jìn)電機(jī)又有區(qū)別混合式步進(jìn)電機(jī)的轉(zhuǎn)子類似永磁式步進(jìn)電機(jī)轉(zhuǎn)子是永磁體,因此混合式步進(jìn)電動(dòng)機(jī)可看作反應(yīng)式步進(jìn)電機(jī)和永磁式步進(jìn)電機(jī)兩種步進(jìn)電動(dòng)機(jī)的組合。圖2.4為混合式步進(jìn)電機(jī)的結(jié)構(gòu)示意題圖,圖2.5是兩相混合式步進(jìn)電機(jī)的實(shí)物解剖圖。從這兩幅圖我們可以看出同磁阻式步進(jìn)電機(jī)一樣混合式電機(jī)在電機(jī)的金屬內(nèi)壁鑲嵌有纏繞了線繞組的極子,從圖2.5很直觀的能看出轉(zhuǎn)子主要兩個(gè)相互之間錯(cuò)開1/2個(gè)單齒距,在兩齒輪中間夾有一塊永磁鐵片通過(guò)一根鐵芯將兩圖2.4兩相混合式步進(jìn)電機(jī)實(shí)物解剖圖圖2.5混合式步進(jìn)電機(jī)結(jié)構(gòu)示意圖個(gè)齒輪和永磁片串接在一起這樣便形成與爪式步進(jìn)電機(jī)類似的N、S相間磁極。當(dāng)定子通電后沿線繞組的切線方向?qū)a(chǎn)生空間電磁場(chǎng),轉(zhuǎn)子上固有的永磁鐵產(chǎn)生的磁場(chǎng)與該電磁場(chǎng)作用產(chǎn)生扭矩帶動(dòng)電機(jī)中心鐵芯的轉(zhuǎn)動(dòng),影響混合式電機(jī)性能的主要是定子上的電極數(shù)和轉(zhuǎn)子上齒輪的齒數(shù)雖然沒有統(tǒng)一的標(biāo)準(zhǔn)但一般的兩相式電機(jī)的定子為8個(gè)極轉(zhuǎn)子為兩個(gè)50齒數(shù)的齒輪,五相電機(jī)一般為定子為10個(gè)極轉(zhuǎn)子為兩個(gè)50齒數(shù)的齒輪,圖7和圖8為各自的橫截面示意圖[6]。圖2.6五相混合式步進(jìn)電機(jī)橫截面示意圖圖2.7兩相混合式步進(jìn)電機(jī)橫截面示意圖三類電機(jī)就綜合性能而言混合步進(jìn)電機(jī)最為出色,它不但繼承了其它兩類步進(jìn)電機(jī)的優(yōu)點(diǎn)而且摒棄了它們各自的缺點(diǎn),因此控制性能要求較高的系統(tǒng)中混成步進(jìn)電機(jī)是首選。但在不同的場(chǎng)合下各類電機(jī)都有其作用之處,永磁式步進(jìn)電機(jī)雖然輸出扭矩沒有其他兩類大但其振動(dòng)小、噪音低、體積小、發(fā)熱量低、因此在一些諸如打印機(jī)和傳真機(jī)等較精密的儀器中常被用到,反應(yīng)式步進(jìn)電機(jī)在這三類電機(jī)中輸出力矩最大在一些扭矩要求較高而受電機(jī)的振動(dòng)影響不是很大的設(shè)備中較多運(yùn)用。2.2步進(jìn)電機(jī)的選型通過(guò)對(duì)三類步進(jìn)電機(jī)的比較本文采用混合式步進(jìn)電機(jī)作為舞臺(tái)燈的執(zhí)行機(jī)構(gòu),針對(duì)主板電機(jī)慣量小的特點(diǎn)選用兩相式混合步進(jìn)電機(jī),XY軸由于控制復(fù)雜轉(zhuǎn)動(dòng)慣量大選用三相混合式步進(jìn)電機(jī)作為其執(zhí)行結(jié)構(gòu)。同為混合式步進(jìn)電機(jī)三相步進(jìn)電機(jī)比兩相混合步進(jìn)電機(jī)的控制性能更加優(yōu)越,目前市場(chǎng)上57系類的三相混合電機(jī)采用獨(dú)特的內(nèi)部機(jī)械結(jié)構(gòu),使空間三相電流繞組通入的電流為三相正選波這樣便使得步進(jìn)電機(jī)有了交流伺服電機(jī)的平穩(wěn)、連續(xù)、無(wú)振動(dòng)等優(yōu)點(diǎn)[7][8]。電機(jī)運(yùn)動(dòng)方程:式中:3——電機(jī)轉(zhuǎn)子的角速度;J——轉(zhuǎn)子的轉(zhuǎn)動(dòng)慣量;mJ——負(fù)載折算到電機(jī)軸上的等效轉(zhuǎn)動(dòng)慣量;LD——粘性阻尼系數(shù);T——電機(jī)電磁轉(zhuǎn)矩;LT——負(fù)載轉(zhuǎn)矩;m單相通電時(shí),電磁轉(zhuǎn)矩與失調(diào)角的關(guān)系近似為一正弦關(guān)系,多相通電時(shí),可以認(rèn)為是每相各自通電時(shí)矩角特性的疊加,仍然是正弦,故電機(jī)矩角特性可以描述為:式中:T——最大靜轉(zhuǎn)矩;smA0——機(jī)械失調(diào)角,即旋轉(zhuǎn)磁場(chǎng)角位移與轉(zhuǎn)子角位移之差;6——齒距角;zZ——電機(jī)轉(zhuǎn)子齒數(shù);r由上面兩式聯(lián)立可以建立步進(jìn)電機(jī)的數(shù)學(xué)模型表達(dá)式為:2.3細(xì)分原理及數(shù)學(xué)模型雖然混合式步進(jìn)電機(jī)吸收了反應(yīng)式和永磁的諸多優(yōu)點(diǎn),但作為步進(jìn)電機(jī)的一員不可避免的會(huì)存在著一些不足:.由于步進(jìn)電機(jī)的相數(shù)有限,因此造成低頻率轉(zhuǎn)動(dòng)時(shí)電機(jī)的振動(dòng)和噪音大.每款步進(jìn)電機(jī)有以之相對(duì)應(yīng)的矩頻特性圖如圖2.7所示縱坐標(biāo)的扭矩隨著橫坐標(biāo)頻率增高到一定階段后下降很快。[10].每款步進(jìn)電機(jī)都有啟動(dòng)頻率并且啟動(dòng)頻率不能太高一般應(yīng)該低于額定的起始頻率如果啟動(dòng)頻率過(guò)高電機(jī)將只振動(dòng)而不轉(zhuǎn).電機(jī)的速度不能存在突變無(wú)論加速過(guò)快還是減速過(guò)快都可能導(dǎo)致電機(jī)的失步或是過(guò)沖。圖2.8步進(jìn)電機(jī)的矩頻特性圖兩相步進(jìn)電機(jī)的步距角一般為1.8°三相步進(jìn)電機(jī)的步距角一般為1.2°五相步進(jìn)電機(jī)的步距角一般為0.72°。步進(jìn)角隨著電機(jī)相數(shù)的增多而減小,較小的步進(jìn)角對(duì)應(yīng)較優(yōu)良的控制性能,但隨著電機(jī)相數(shù)的增多機(jī)械加工個(gè)隨之增大對(duì)應(yīng)的價(jià)格也直線上升。步進(jìn)電機(jī)的機(jī)械構(gòu)造決定了其固有的缺點(diǎn),這使得步進(jìn)電機(jī)的運(yùn)用受到了極大的限制為了改善步進(jìn)電機(jī)的這些不足。受于步進(jìn)電機(jī)數(shù)學(xué)模型的啟迪在70年代中期由美國(guó)學(xué)者首次提出采用軟件編程的方式來(lái)間接的增加電機(jī)的相數(shù)即采用細(xì)分驅(qū)動(dòng)方式,當(dāng)步進(jìn)電機(jī)各相電平跳變一次后電機(jī)的轉(zhuǎn)子就會(huì)轉(zhuǎn)動(dòng)一個(gè)固定的步距角,假如能控制各相輸入電流的幅值和相位角使得電流按某種規(guī)律遞增則可以改變電機(jī)的跳躍式轉(zhuǎn)動(dòng),將一次躍變式的脈沖輸入細(xì)化為多次的小躍相應(yīng)的電機(jī)的轉(zhuǎn)動(dòng)也變得較為連續(xù),這樣就有效的降低了電機(jī)的轉(zhuǎn)動(dòng)。例如某款步進(jìn)電機(jī)的額定相電流為1安培步距角為1.8°,當(dāng)電機(jī)的程序沒有加入細(xì)分驅(qū)動(dòng)程序時(shí)電機(jī)每接收到一次電流躍變就會(huì)轉(zhuǎn)動(dòng)1.8°,當(dāng)加入10細(xì)分驅(qū)動(dòng)程序后電流每次將只改變?cè)瓉?lái)的十分之一相應(yīng)的電機(jī)轉(zhuǎn)動(dòng)的角度也為原來(lái)的十分之一,同過(guò)改變電流的階梯越變的次數(shù)來(lái)改善電機(jī)的運(yùn)動(dòng)特性,大大提高了步進(jìn)電機(jī)的控制特性,細(xì)分驅(qū)動(dòng)能極大地改善步進(jìn)電機(jī)運(yùn)行的平穩(wěn)性,近幾年來(lái)由于微處理機(jī)技術(shù)的發(fā)展,細(xì)分技術(shù)得到了廣泛應(yīng)用[11]。圖2.9八細(xì)分驅(qū)動(dòng)圖2.3.2細(xì)分驅(qū)動(dòng)的分類及數(shù)學(xué)模型細(xì)分驅(qū)動(dòng)主要有等電流細(xì)分驅(qū)動(dòng)法和電流矢量恒幅均勻旋轉(zhuǎn)法這兩種方式,以混合式兩相步進(jìn)電機(jī)為例當(dāng)采用等電流細(xì)分驅(qū)動(dòng)法時(shí)保持其中的一相電流值保持不變而另一相電流按照需要的細(xì)分?jǐn)?shù)等比例均分成階梯式上升,輸出電流即為兩相電流的合成值,當(dāng)采用電流矢量恒幅均勻旋轉(zhuǎn)法時(shí)其中一相電流按正弦規(guī)律變化而另一相的電流按余弦方式變化,這樣使得無(wú)論何時(shí)兩相電流的合成值幅值都是不變的改變的只是合成的相位角從而實(shí)現(xiàn)電機(jī)的恒流輸入。等電流細(xì)分驅(qū)動(dòng)程序?qū)崿F(xiàn)簡(jiǎn)單控制方便但由于輸出力矩是變化所以容易造成電機(jī)的振動(dòng)和失步在控制要求不高的系統(tǒng)中可以考慮應(yīng)用,電流矢量恒幅均勻旋轉(zhuǎn)雖然程序?qū)崿F(xiàn)較為困難但由于去輸出扭矩平滑控制精度高在控制要求高的系統(tǒng)中應(yīng)用普遍。由于本設(shè)計(jì)中舞臺(tái)燈對(duì)電機(jī)的性能要求較高因此采用電流矢量恒幅均勻旋轉(zhuǎn)法來(lái)細(xì)分。以兩相混合步進(jìn)電機(jī)為例依據(jù)上節(jié)構(gòu)建的步進(jìn)電機(jī)的數(shù)學(xué)模型來(lái)構(gòu)建其電流矢量恒幅均勻旋轉(zhuǎn)的細(xì)分的數(shù)學(xué)模型。通過(guò)對(duì)兩相混合步進(jìn)電機(jī)的結(jié)構(gòu)分析可知其兩個(gè)線繞組AA-和BB-是相互垂直的簡(jiǎn)圖如圖由得出的電機(jī)數(shù)學(xué)模型可知其合成的力矩幅值不變,所以可得兩繞組相的力矩關(guān)系如下式中:T A、B兩相的和力矩;0——合力矩與B相繞組的夾角;圖2.10兩相混合步進(jìn)電機(jī)象限圖在考慮步進(jìn)電機(jī)力矩與電流關(guān)系的時(shí)候忽略一些非線性因素的影響,認(rèn)為電機(jī)輸入力矩和輸入電流成線性關(guān)系則有上式可求得相電流和e之間的關(guān)系式式中:T——A、B兩相的合成電流;0——合成電流與B相繞組的夾角;假設(shè)電機(jī)細(xì)分?jǐn)?shù)為Z則可知式中:Z為假設(shè)的細(xì)分?jǐn)?shù)目;N為電機(jī)所處在的位置N的取值范圍為0到4Z;因此任意細(xì)分下的細(xì)分?jǐn)?shù)學(xué)模型為:式中:Ne(0,4Z),當(dāng)Z取不同值的時(shí)候表示電機(jī)處在不同的細(xì)分下,當(dāng)N從0取值到4Z時(shí)0從0度變化到360度,相應(yīng)的電機(jī)轉(zhuǎn)動(dòng)一圈。如圖為8細(xì)分下360正、余弦的電流波形圖2.11圖2.11兩相正弦細(xì)分波形[12]2.4步進(jìn)電機(jī)加減速數(shù)學(xué)模型由于本控制系統(tǒng)對(duì)電機(jī)的控制要求和精度都比較高,因此為了提高電機(jī)的控制性能降低電機(jī)低頻段的振動(dòng)電機(jī)的加減速模型是必不可少的。在步進(jìn)電機(jī)控制中直線減速曲線、指數(shù)加減速曲線、和高階多次函數(shù)加減速曲線最為常見。針對(duì)本控制系統(tǒng)的控制要求在經(jīng)過(guò)試驗(yàn)比較后,轉(zhuǎn)動(dòng)慣性較大的X、Y軸采用直線加減速曲線,而轉(zhuǎn)動(dòng)慣量小加速度要求較快的其他主板電機(jī)采用二次多項(xiàng)式函數(shù)加減速曲線。步進(jìn)電機(jī)一個(gè)明顯的不足是當(dāng)電機(jī)處于高速是輸出扭矩比較小并且隨著轉(zhuǎn)速的上升輸出扭矩逐漸的減小。當(dāng)電機(jī)的速度處于共振速度(resonantspeed)時(shí)電機(jī)的扭矩會(huì)突降如圖2.12所示,步進(jìn)電機(jī)的共振速度決定于電機(jī)的驅(qū)動(dòng)翻案和負(fù)載[13]。圖2.12扭矩速度圖從圖中可看出最大轉(zhuǎn)矩出現(xiàn)在低速,這在許多的運(yùn)用場(chǎng)合中中式非常有利的。只有當(dāng)通過(guò)電機(jī)的各相電流正確通斷時(shí)電機(jī)運(yùn)轉(zhuǎn)才能正常的運(yùn)轉(zhuǎn),我們可以通過(guò)驅(qū)動(dòng)芯片為電機(jī)提供正確的連續(xù)驅(qū)動(dòng)脈沖和方向信號(hào)。要使得電機(jī)在一個(gè)恒定的速度下運(yùn)轉(zhuǎn),那么驅(qū)動(dòng)脈沖之間的時(shí)間間隔必須是相等的,如圖2.13所示圖2.14步進(jìn)電機(jī)脈沖一個(gè)定時(shí)器在頻率f[HZ]下產(chǎn)生這些脈沖,計(jì)數(shù)器c用來(lái)決定延時(shí)時(shí)間81t電機(jī)的角度a位置0角速度3由下式得到:式中spr為步進(jìn)電機(jī)的小齒數(shù),n是電機(jī)已走的小齒數(shù)為了能平滑的啟動(dòng)和停止步進(jìn)電機(jī),控制電機(jī)的加速度和減速度是必須的,圖2.15表明了電機(jī)加速度,速度和位置三者之間的關(guān)系。該圖使用恒定的加速度/減速度得到的圖2.15電機(jī)加速度,速度和位置步進(jìn)電機(jī)驅(qū)動(dòng)脈沖之間的時(shí)間延遲8t決定了電機(jī)的轉(zhuǎn)速,這些延時(shí)時(shí)間必須精確計(jì)算出來(lái)才能使電機(jī)的實(shí)際轉(zhuǎn)動(dòng)階梯速度曲線和理論盡量相近。離散的速度曲線決定電機(jī)的運(yùn)轉(zhuǎn)而定時(shí)器的時(shí)鐘頻率決定了延時(shí)時(shí)間間隔的分辨率。圖2.16電機(jī)轉(zhuǎn)速和驅(qū)動(dòng)脈沖第一個(gè)計(jì)數(shù)器c和第n個(gè)計(jì)數(shù)器c由下式計(jì)算:0n微處理器的計(jì)算能力是有限的,計(jì)算開根號(hào)的運(yùn)算時(shí)非常浪費(fèi)時(shí)間的因此一種相似的但計(jì)算量少的方法需要得以應(yīng)用。在時(shí)間n時(shí)用泰勒多項(xiàng)式近似上述兩式得:簡(jiǎn)化后的計(jì)算式的計(jì)算速度遠(yuǎn)遠(yuǎn)快于原來(lái)開二次根號(hào),但當(dāng)n=1時(shí)會(huì)帶來(lái)0.44的誤差,一種補(bǔ)償這種誤差的方法是將c乘上0.676。0由上可知加速度由c和n決定,當(dāng)一個(gè)新的加速度被應(yīng)用時(shí)一個(gè)新的n0值必須被計(jì)算出來(lái)。電機(jī)的速度、轉(zhuǎn)動(dòng)角度和決定電機(jī)加速度的tn和n由下式計(jì)算:合并這個(gè)兩個(gè)方程可得:上式表明電機(jī)的需要到達(dá)的步數(shù)所產(chǎn)生的的速度和加速度成反比:nld)l—利而工上式意味著要將加速度從要從31變到巴只需要改變n即可,從圖可以看出兩者的關(guān)系圖2.17速度上升和下降在給定的電機(jī)運(yùn)轉(zhuǎn)步數(shù)下電機(jī)的減速必須開始于合適的步數(shù)結(jié)束時(shí)速度為0由下式子可以計(jì)算出nn:11速度控制器[14]速度控制器用于計(jì)算實(shí)時(shí)速度值,速度控制模塊如圖2.18所示圖2.18電機(jī)速度控制模塊速度控制器首先計(jì)算出所有的變量并將他們保存到數(shù)據(jù)結(jié)構(gòu)體中,隨后允許定時(shí)器中斷,定時(shí)器按照速度階梯曲線中斷然后調(diào)用電機(jī)驅(qū)動(dòng)函數(shù)驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)。每次發(fā)送計(jì)算與電機(jī)相關(guān)的速度變量時(shí)都會(huì)使得電機(jī)有一小短的時(shí)間延遲,在實(shí)際應(yīng)用的時(shí)候可能不需要考慮很小一段時(shí)間對(duì)電機(jī)產(chǎn)生的影響。這使得這些變量的計(jì)算應(yīng)該采用計(jì)算量較曉得方法。使用浮點(diǎn)運(yùn)算會(huì)使得計(jì)算復(fù)雜程序繁冗,因此在保證運(yùn)算精度的前提下合理的簡(jiǎn)化運(yùn)算時(shí)非常重要的下式對(duì)一些復(fù)雜的計(jì)算式進(jìn)行了合理的簡(jiǎn)化。計(jì)算速度曲線時(shí)包含兩種不同的情況:.電機(jī)一直加速直到加速到所需的速度如圖2.19速度曲線所示當(dāng)減速開始時(shí)所需要的最大速度已經(jīng)被達(dá)到。圖2.19電機(jī)速度曲線1max_s_lim表示達(dá)到所需要的最大速度電機(jī)所需要加速的步數(shù)accel_lim表示電機(jī)開始減速時(shí)電機(jī)所走的步數(shù)當(dāng)max_s_lim<accel_lim時(shí)加速度受到所需速度的限制,真是減速的步數(shù)由decal_val決定.當(dāng)所需要的速度沒有到達(dá)時(shí)開始減速如圖所示在到達(dá)電機(jī)所需速度是就開始減速圖2.20電機(jī)速度曲線2當(dāng)max_s_lim>accel_lim加速度在減速開始后受限,減速步數(shù)decal_val由下式計(jì)算:定時(shí)器中斷用于產(chǎn)生電機(jī)的驅(qū)動(dòng)脈沖,只有在電機(jī)運(yùn)轉(zhuǎn)時(shí)定時(shí)器才工作。如圖2.21所示定時(shí)器工作在四個(gè)不同的狀態(tài)下圖2.21定時(shí)器的四個(gè)不同工作狀態(tài)在定時(shí)器中斷中采用狀態(tài)機(jī)來(lái)管理定時(shí)器的四種狀態(tài)如圖2.22所示圖2.22定時(shí)器狀態(tài)機(jī)當(dāng)電機(jī)停止或者啟動(dòng)時(shí)狀態(tài)機(jī)處于STOP,當(dāng)系統(tǒng)開始計(jì)算新的狀態(tài)將被設(shè)置并允許定時(shí)器中斷當(dāng)電機(jī)運(yùn)轉(zhuǎn)的步數(shù)大于一步時(shí)狀態(tài)機(jī)的下一個(gè)狀態(tài)為ACCEL,假如只有一步則為DECEL。當(dāng)處于ACCEL狀態(tài)時(shí)電機(jī)開始減速直到到達(dá)所需速度時(shí)轉(zhuǎn)變到狀態(tài)RUN或者轉(zhuǎn)變到DECEL狀態(tài)。直到速度為0或是達(dá)到所需要的速度則定時(shí)器的狀態(tài)改變?yōu)镾TOP。速度由下式計(jì)算:位置由下式計(jì)算:第n步的時(shí)間由下式計(jì)算:兩步之間的時(shí)間間隔由下式計(jì)算:聯(lián)立上式就可得到最終的定時(shí)器延時(shí)r=1叵設(shè)一、?Cn=%(V?/-1-yn]則上式可表達(dá)為使用泰勒多項(xiàng)式:推導(dǎo)出最后定時(shí)器的延時(shí)時(shí)間可以近似的轉(zhuǎn)化為:二次函數(shù)加減速不同于直線曲線的等速加速而是按拋物線加減速如圖圖2.23二次函數(shù)加減速數(shù)學(xué)模型從圖我們可以看出在二次函數(shù)加減速數(shù)學(xué)模型中,加速到一定速度后加速度上升很打這樣使得加速時(shí)間大大減短。二次函數(shù)加減速數(shù)學(xué)模型的基本原理:從啟動(dòng)開始每產(chǎn)生一個(gè)脈沖定時(shí)器初值增加某一定值,則相應(yīng)的脈沖周期減小,即脈沖頻率增加。我們以pic單片機(jī)下定時(shí)器1建立二次函數(shù)數(shù)學(xué)模型為例

f定時(shí)器的頻率等于f=f/(dev*4)0式中:f為晶振頻率0dev為預(yù)分頻設(shè)啟動(dòng)頻率為f對(duì)應(yīng)的定時(shí)器初值為。1,脈沖定時(shí)為/,脈沖時(shí)間間隔為1n脈沖周期T和脈沖頻率f。則定時(shí)器每計(jì)一個(gè)數(shù)的時(shí)間為t=1/f,定時(shí)器向上nn計(jì)數(shù)由Oxffff計(jì)到0x0000時(shí)溢出因此有T=(65535-(D—3))/f=(65538—D1)/f,啟動(dòng)頻率f=f/(65538—D1),11 1該設(shè)計(jì)的關(guān)鍵是確定脈沖定時(shí)t,脈沖時(shí)間間隔即脈沖周期T和脈沖頻率f。n nn假設(shè)從啟動(dòng)瞬時(shí)開始計(jì)算脈沖數(shù),加速階段的脈沖數(shù)為n,并設(shè)啟動(dòng)瞬時(shí)為計(jì)時(shí)起點(diǎn),定時(shí)器初值為D1,定時(shí)器初值的增加量為A。從加速階段的物理過(guò)程可知,第一個(gè)脈沖周期,即啟動(dòng)時(shí)的脈沖周期C=65538/f,t=0。11T=1/f=(65538-C=65538/f,t=0。11111111TOC\o"1-5"\h\z由于定時(shí)器初值的修改,第2個(gè)脈沖周期T=C-(D+A)/f=T-A/f,脈21 1 1沖定時(shí)t2=Ti,則第n個(gè)脈沖的周期為:T=T-(n-1)A/f (1)(n-1)(n-(n-1)(n-2)A

x—(2)t=T+ + T=(n-1)T-n1 n-1 1脈沖頻率為:1/f=T=T-(n-1)A/f(3)nn1上式分別顯示了脈沖數(shù)n與脈沖頻率f和時(shí)間1的關(guān)系。令A(yù)/f=5,即加速階段相鄰兩脈沖周期的減量,則上述公式簡(jiǎn)化為:t=(n-1)*T-(n-2)(n-1)*8/2⑷n11/f=T-(n-1)*8 (5)n1由(4),(5)并簡(jiǎn)化f與t的關(guān)系,得出加速階段的數(shù)學(xué)模型為:2 nnf= ? (6)nA+:B-Ctnn其中,是常數(shù),其值與定時(shí)器初值及定時(shí)器變化量有關(guān),A=-8C=88B=(2T+8)21從(6)式可以看出,在加速階段,脈沖頻率不斷升高,且加速度以二次函數(shù)增加。步進(jìn)電機(jī)減速方式以此類似。11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.2.5本章小結(jié)執(zhí)行機(jī)構(gòu)類型的選定是在其結(jié)構(gòu)和原理的基礎(chǔ)上依據(jù)控制系統(tǒng)的要求決定的,而控制算法的提出又是在執(zhí)行機(jī)構(gòu)的數(shù)學(xué)模型的基礎(chǔ)上選定和設(shè)計(jì)的。本章從步進(jìn)電機(jī)的原理出發(fā)構(gòu)建出了步進(jìn)電機(jī)的數(shù)學(xué)模型,細(xì)分驅(qū)動(dòng)模型,直線及二次函數(shù)加減速曲線數(shù)學(xué)模型,這為后幾章節(jié)的打下了扎實(shí)的理論基礎(chǔ)。第三章器件選型及硬件電路的設(shè)計(jì)電機(jī)控制系統(tǒng)是由硬件和軟件兩部分組成。硬件是組成系統(tǒng)的基礎(chǔ),有了硬件,軟件才能有效地運(yùn)行。根據(jù)總體方案、機(jī)械結(jié)構(gòu)以及步進(jìn)電機(jī)的控制要求,確定硬件電路的總體方案。3.1硬件電路的設(shè)計(jì)要求1.300W開關(guān)電源,輸入電壓范圍為110VAC~200VAC,一共三路輸出電壓,分別為+32VDC、+12VDC、+5VDC;.通過(guò)RS485電平轉(zhuǎn)換可支持控制臺(tái)標(biāo)準(zhǔn)數(shù)字接口DMX512通信協(xié)議;.部分風(fēng)機(jī)PWM調(diào)速;.20路步進(jìn)電機(jī)驅(qū)動(dòng)接口,即頻閃電機(jī)、CMY顏色混合電機(jī)、CTC色溫電機(jī)、顏色電機(jī)、圖案電機(jī)、圖案旋轉(zhuǎn)電機(jī)、效果電機(jī)、光圈電機(jī)、調(diào)焦放大電機(jī)、水平位置控制電機(jī)、垂直位置控制電機(jī)等;.JTAG在線調(diào)試;.步進(jìn)電機(jī)狀態(tài)信息反饋,電機(jī)控制采用半閉環(huán)控制,電機(jī)狀態(tài)信息通過(guò)電路反饋到MCU;.LCD顯示,通過(guò)與鍵盤的配合可實(shí)現(xiàn)人機(jī)友好交互,可以直觀實(shí)現(xiàn)個(gè)性功能的實(shí)現(xiàn),具有簡(jiǎn)單自我檢測(cè)功能等;.可實(shí)現(xiàn)多機(jī)主MCU與從MCU之間的通信;3.2硬件電路總體規(guī)劃根據(jù)系統(tǒng)要求以及系統(tǒng)所需要實(shí)現(xiàn)的功能,電腦燈硬件電路系統(tǒng)由以下五部分組成:文檔收集于互聯(lián)網(wǎng),已重新整理排版文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.(1)電源模塊,為整個(gè)硬件電路系統(tǒng)提供電能(2)主控制器,即中央處理單元(CPU);(3)總線,包括數(shù)據(jù)總線(DB)、地址總線(AB)和控制總線(CB);(4)接口,即I/O輸入/輸出接口電路;(5)外圍設(shè)備,如鍵盤、顯示器及光電輸入、步進(jìn)電機(jī)驅(qū)動(dòng)器等。硬件電路模塊框圖如圖3.1所示:圖3.1硬件電路系統(tǒng)框圖從舞臺(tái)燈的原理我們可以看出舞臺(tái)燈各種效果的實(shí)現(xiàn)都是通過(guò)CPU控制步進(jìn)電機(jī)實(shí)現(xiàn)的,整臺(tái)舞臺(tái)燈控制部分包括主板電路和從板電路,主電路板部分用于實(shí)現(xiàn)各種燈光效果,X,Y電路板軸部分用于實(shí)現(xiàn)舞臺(tái)燈在空間中的運(yùn)動(dòng)。主板部分包含20多個(gè)兩相混合步進(jìn)電機(jī)的控制因此為了滿足設(shè)計(jì)需要選擇^UP必須有較快的處理速度和較大的存儲(chǔ)空間在對(duì)多款處理器進(jìn)的性價(jià)比行比對(duì)后,采用了飛利浦公司的LPC2148,X、Y電路板采用SPWM控制三相混合步進(jìn)電機(jī)因此應(yīng)采用帶PWM模塊的微星PIC16F873單片機(jī)。.主控芯片LPC2148簡(jiǎn)介①總體描述[16]LPC2148是基于一個(gè)支持實(shí)時(shí)仿真和嵌入式跟蹤的32/16位ARM7TDMI-SCPU的微控制器,并內(nèi)嵌128的高速Flash存儲(chǔ)器。128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu)使32位代碼能夠在最大時(shí)鐘速率下運(yùn)行。對(duì)代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16位Thumb模式將代碼規(guī)模降低超過(guò)30%,而性能的損失卻很小。較小的封裝和很低的功耗使LPC2148特別適用于訪問控制和POS機(jī)等小型應(yīng)用中;由于內(nèi)置了寬范圍的串行通信接口(USB2.0Device(全速)、多個(gè)UART、SPI、SSP和I2C總線接口)和8kB?40kB的片內(nèi)SRAM,它們也非常適合于通信網(wǎng)關(guān)、協(xié)議轉(zhuǎn)換器、軟件modem、語(yǔ)音識(shí)別和低端成像,為這些應(yīng)用提供大規(guī)模的緩沖區(qū)和強(qiáng)大的處理功能。多個(gè)32位定時(shí)器、1個(gè)或2個(gè)10位ADC、10位DAC、PWM通道、45個(gè)快速GPIO口以及多達(dá)9個(gè)邊沿或電平觸發(fā)的外部中斷管腳,使它們特別適用于工業(yè)控制和醫(yī)療系統(tǒng)[16]。ARM7TDMI-S是通用的32位微處理器內(nèi)核,它具有高性能和低功耗的特性。ARM結(jié)構(gòu)是基于精簡(jiǎn)指令集計(jì)算機(jī)(RISC)原理而設(shè)計(jì)的。指令集和相關(guān)的譯碼機(jī)制比復(fù)雜指令集計(jì)算機(jī)要簡(jiǎn)單得多。這樣使用一個(gè)小的、廉價(jià)的處理器核就可實(shí)現(xiàn)很高的指令吞吐量和實(shí)時(shí)的中斷響應(yīng)[16]。由于使用了流水線技術(shù),處理和存儲(chǔ)系統(tǒng)的所有部分都可連續(xù)工作。通常在執(zhí)行一條指令的同時(shí)對(duì)下一條指令進(jìn)行譯碼,并將第三條指令從存儲(chǔ)器中取出。ARM7TDMI-S處理器也使用了一個(gè)被稱為Thumb的獨(dú)特結(jié)構(gòu)化策略,它非常適用于那些對(duì)存儲(chǔ)器有限制或者需要較高代碼密度的大批量產(chǎn)品的應(yīng)用。②.結(jié)構(gòu)概述LPC2148功能結(jié)構(gòu)框圖如圖1.4所示。該系列芯片包含一個(gè)支持仿真的M7TDMI-SCPU片內(nèi)存儲(chǔ)器控制器接口的ARM7局部總線,中斷控制器接口的AMBA高性能總線(AHB)和連接片內(nèi)外設(shè)功能的VLSI外設(shè)總線(VPB,ARMAMBA總線的兼容超集)口力。LPC2148將ARM7TDMI-S處理器配置為小端(little-endian)字節(jié)順序。AHB外設(shè)分配了2M字節(jié)的地址范圍,它位于4G字節(jié)ARM存儲(chǔ)器空間的最頂端。每個(gè)AHB外設(shè)都分配了16k字節(jié)的地址空間。LPC2148的外設(shè)功能(中斷控制器除外)都連接到VPB總線。AHB到VPB的橋?qū)PB總線與AHB總線相連。VPB外設(shè)也分配了2M字節(jié)的地址范圍,從3.5GB地址點(diǎn)開始。每個(gè)VPB外設(shè)在VPB地址空間內(nèi)都分配了16k字節(jié)地址空間。片內(nèi)外設(shè)與器件管腳的連接由管腳連接模塊控制。該模塊必須由軟件進(jìn)行控制以符合外設(shè)功能與管腳在特定應(yīng)用中的需求。圖3.2LPC2148內(nèi)部方框圖[17]2.X、Y從控制芯片PIC16F873簡(jiǎn)介PIC16F873單片機(jī)是MICROCHIP公司生產(chǎn)的中級(jí)產(chǎn)品,具有FLASH程序存儲(chǔ)器和PWM的8位CMOS單片機(jī)。PIC16F873(A)包含4Kx14的程序閃存,192字節(jié)的數(shù)據(jù)隨機(jī)存儲(chǔ)器和128字節(jié)數(shù)據(jù)EEPROM存儲(chǔ)器。PIC16F876(A的程序閃存為8KX14,數(shù)據(jù)隨機(jī)存儲(chǔ)器為368字節(jié),數(shù)據(jù)EEPROM存儲(chǔ)器為256字節(jié)IC16F873(A)具有A、B和C三個(gè)I/O端口,內(nèi)部包含13個(gè)中斷源、三個(gè)定時(shí)器、兩個(gè)CCP(捕捉器/比較器/PWM)模塊和一個(gè)看門狗電路,同時(shí)集成了5通道A/D轉(zhuǎn)換器口81。PIC16F874(A)具有A、B、C、D和E五個(gè)I/O端口,內(nèi)部包含14個(gè)中斷源、三個(gè)定時(shí)器、兩個(gè)CCP(捕捉器/比較器/PWM)模塊、一個(gè)看門狗電路和一個(gè)并行從屬端口PSP,同時(shí)集成了8通道A/D轉(zhuǎn)換器。PIC16F873系列既有SPI和I2C主串行通信端口,又有USART異步串行通信端口圖3.3PIC16F873內(nèi)部結(jié)構(gòu)框圖[19]采用ADS1.2作為主板系統(tǒng)的開發(fā)環(huán)境,ADS集成開發(fā)環(huán)境是ARM公司推出的ARM核微控制器集成開發(fā)工具,英文全稱為ARMDeveloperSuite,成熟版本為ADS1.2。ADS1.2支持ARM10之前的所有ARM系列微控制器,支持軟件調(diào)試及JTAG硬件仿真調(diào)試,支持匯編、C、C++源程序,具有編譯效率高、系統(tǒng)庫(kù)功能強(qiáng)等特點(diǎn),可以在Windows98、WindowsXP、Windows2000以及RedHatLinux上運(yùn)行[20]。ADS1.2由6個(gè)部分組成如下表所示表3.1ADS1.2編譯環(huán)境由于用戶一般直接操作的是CodeWarriorIDE集成開發(fā)環(huán)境和AXD調(diào)試器,所以這一章我們只介紹這兩部分軟件的使用,其它部分的詳細(xì)說(shuō)明參考ADS1.2的在線幫助文檔或相關(guān)資料。XY從控程序是在MPLAB集成開發(fā)環(huán)境下編寫的。3.3硬件電路的設(shè)計(jì)本舞臺(tái)燈除電子整流器外所有電路都有開關(guān)電源來(lái)供電,開關(guān)電源設(shè)計(jì)采用寬電壓輸入,輸入電壓范圍達(dá)到100VAC~220VAC,輸出電壓范圍為+5V、+12V以及+32V,其中+5V用于給系統(tǒng)中數(shù)字控制電路供電,+12V給各路風(fēng)機(jī)以及電子整流器控制信號(hào)供電,+32V則給各路步進(jìn)電機(jī)驅(qū)動(dòng)器供電,整個(gè)控制系統(tǒng)功率大約300W。其中32V提供高達(dá)6.3A電流,+5V提供高達(dá)10A電流,+12V提供高達(dá)6.3A電流。開關(guān)電源的原理就是將工頻交流變成直流,再將直流變換成高頻交流,通過(guò)開關(guān)變壓器,反饋穩(wěn)壓等過(guò)程變成所需要的電壓的后,通過(guò)整流,濾波,再變換成直流的過(guò)程,而MOSFET在整個(gè)過(guò)程中通過(guò)其不斷的開與關(guān),使高壓直流變換成高頻交流電的過(guò)程[21]。開關(guān)電源的工作流程如圖4-2所示。圖3.3開關(guān)電源的工作流程11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.3.3.2RS485電平轉(zhuǎn)換模塊RS-485接口標(biāo)準(zhǔn)DMX512協(xié)議標(biāo)準(zhǔn)采用一種簡(jiǎn)單的異步八位串行數(shù)據(jù)協(xié)議,包括由標(biāo)準(zhǔn)通用異步收發(fā)設(shè)備(UARTs)產(chǎn)生無(wú)類型的字節(jié)流。該標(biāo)準(zhǔn)中數(shù)據(jù)傳輸?shù)奈锢斫橘|(zhì)通常是兩對(duì)電纜線,每對(duì)都可以作為數(shù)據(jù)鏈路來(lái)使用。數(shù)據(jù)鏈路采用ANSI/TIA/EIA-485-A-1998(下文簡(jiǎn)稱“EIA-485-A”)的平衡數(shù)據(jù)傳輸技術(shù)驅(qū)動(dòng)。RS-485用平衡差動(dòng)的方式傳輸數(shù)據(jù),抗干擾性強(qiáng)、速率高、傳輸距離遠(yuǎn)、能夠?qū)崿F(xiàn)多點(diǎn)傳輸,它允許同時(shí)連接32個(gè)驅(qū)動(dòng)器和32個(gè)接收器,方便地組成一個(gè)小型的網(wǎng)絡(luò),在測(cè)控領(lǐng)域,應(yīng)用很廣泛。RS-485是一個(gè)電氣接口規(guī)范,它規(guī)定了平衡驅(qū)動(dòng)器和接收器的電氣特性,而沒有規(guī)定接插件傳輸電纜和通信協(xié)議。表4-2RS-485電氣特性項(xiàng)目條件最小值最大值驅(qū)動(dòng)器開路輸出電壓邏輯11.5V6V邏輯0-1.5V-6V驅(qū)動(dòng)器帶載輸出電壓RL=100Q,邏輯11.5V5VRL=100Q,邏輯0-1.5V-5V驅(qū)動(dòng)器輸出短路電流每個(gè)輸出對(duì)公共端士250mA驅(qū)動(dòng)器輸出上升時(shí)間RL=54Q,C=50pF總周期的30%驅(qū)動(dòng)器共模電壓RL=54Q土3V接收器靈敏度-7V<V<12VCM士200mV接收器共模電壓范圍-7V+12V接收器輸入電壓12kQ在總線負(fù)載及阻抗匹配符合技術(shù)要求的前提下,RS-485標(biāo)準(zhǔn)所能達(dá)到的理論最高傳輸速率為10Mbit/s,但是,在該速率下的有效傳輸距離只有10m°RS-485總線的有效傳輸距離與數(shù)據(jù)傳輸速率相關(guān)??梢杂孟旅娴慕?jīng)驗(yàn)公式表示。文檔收集于互聯(lián)網(wǎng),已重新整理排版文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.有效傳輸距離(m有效傳輸距離(m)<108bit/s-m數(shù)據(jù)傳輸速率(biMs)RS-485多機(jī)通信的實(shí)現(xiàn)[22]1、總線驅(qū)動(dòng)芯片常用的RS-485總線驅(qū)動(dòng)芯片有SN75174,SN75175,SN75176。SN75176芯片有一個(gè)發(fā)送器和接收器,非常適合作為RS-485總線驅(qū)動(dòng)芯片。SN75176及其邏輯圖圖如3.4a)、b)所示。a) b)圖3.4SN75174引腳圖2、RS-485方式構(gòu)成的多機(jī)通信原理在單片機(jī)構(gòu)成的多機(jī)串行通信系統(tǒng)中,一般采用主從式結(jié)構(gòu):從機(jī)不主動(dòng)發(fā)送命令或數(shù)據(jù),一切都由主機(jī)控制。并且在一個(gè)多機(jī)通信系統(tǒng)中,只有一臺(tái)主機(jī),各臺(tái)從機(jī)之間不能相互通信,即使有信息交換也必須通過(guò)主機(jī)轉(zhuǎn)發(fā)。舞臺(tái)燈控制系統(tǒng)中所指的主機(jī)即使DMX512控臺(tái)。采用RS-485構(gòu)成的多機(jī)通信原理框圖如圖3.5所示。在總線末端接一個(gè)匹配電阻,吸收總線上的反射信號(hào),保證正常傳輸信號(hào)干凈、無(wú)毛刺。匹配電阻的取值應(yīng)該與總線的特性阻抗相當(dāng)。當(dāng)總線上沒有信號(hào)傳輸時(shí),總線處于懸浮狀態(tài),容易受干擾信號(hào)的影響。將總線上差分信號(hào)的正端A和+5電源間接一個(gè)10K的電阻;正端A和負(fù)端B間接一個(gè)10K的電阻;負(fù)端B和地間接一個(gè)10K的電阻,形成一個(gè)電阻網(wǎng)絡(luò)。當(dāng)總線上沒有信號(hào)傳輸時(shí),正端A的電平大約為3.2V,負(fù)端B的電平大約為1.6V,即使有干擾信號(hào),卻很難產(chǎn)生串行通信的起始信號(hào)0,從而增加了總線抗干擾的能力。圖3.5多機(jī)通信原理框圖3.6步進(jìn)電機(jī)信息反饋模塊步進(jìn)電機(jī)的控制按照控制方式可以分為閉環(huán)控制、半閉環(huán)控制和開環(huán)控制。開環(huán)控制步進(jìn)電機(jī)開環(huán)控制系統(tǒng)是指不帶角度反饋裝置的控制系統(tǒng),MCU直接通過(guò)步進(jìn)電機(jī)驅(qū)動(dòng)器驅(qū)動(dòng)步進(jìn)電機(jī)。MCU經(jīng)過(guò)控制運(yùn)算對(duì)驅(qū)動(dòng)器發(fā)出脈沖信號(hào),每一脈沖信號(hào)使步進(jìn)電機(jī)轉(zhuǎn)動(dòng)一定的角度。這種控制系統(tǒng)較為簡(jiǎn)單,使用比較方便,但是控制精度不高。半閉環(huán)控制步進(jìn)電機(jī)半閉環(huán)控制系統(tǒng)是在開環(huán)控制系統(tǒng)的控制控制中將角位移檢測(cè)裝置安裝在傳動(dòng)鏈的旋轉(zhuǎn)部分,將角位移檢測(cè)裝置測(cè)量的角度位置作為反饋信息與輸入原指令位移值進(jìn)行比較,用比較后的差值進(jìn)行控制,使移動(dòng)部件補(bǔ)充位移,直到差值消除為止的控制系統(tǒng)。這種伺服機(jī)構(gòu)所能達(dá)到的精度、速度和動(dòng)態(tài)特性優(yōu)于開環(huán)伺服機(jī)構(gòu)。閉環(huán)控制步進(jìn)電機(jī)閉環(huán)控制是在轉(zhuǎn)盤上安裝步進(jìn)電機(jī)角度檢測(cè)裝置,將檢測(cè)到的實(shí)際角度反饋到MCU,MCU將其與輸入的原角度指令進(jìn)行比較,用比較后的差值控制步進(jìn)電機(jī)的補(bǔ)充角度,直到差值消除才停止轉(zhuǎn)動(dòng),達(dá)到對(duì)步進(jìn)電機(jī)的精確定位控制。三種方式中,閉環(huán)控制精度最高,半閉環(huán)次之,開環(huán)最低。舞臺(tái)燈要求每個(gè)受控電機(jī)都實(shí)現(xiàn)精確定位,但是不同電機(jī)的控制精度要求不一。X、Y軸電機(jī)承載著除基座外的整機(jī)重量,轉(zhuǎn)動(dòng)慣量大,且機(jī)體暴露在空氣中容易受到人為因素的干擾,因此控制精度要求最高,選擇閉環(huán)控制。而其它的部分,如頻閃片、CMY混色、CTC色溫、顏色盤、圖案盤、圖案旋轉(zhuǎn)、效果盤、光圈、調(diào)焦放大盤等,這些部分轉(zhuǎn)動(dòng)慣量較小,且全部裝在機(jī)殼里面不易受到人為干擾,對(duì)精度要求較低,為了降低控制系統(tǒng)的成本和減少系統(tǒng)的復(fù)雜性,對(duì)這些部分采用開環(huán)控制方式,只是在整機(jī)復(fù)位時(shí)對(duì)這些部分進(jìn)行閉環(huán)控制定位。XY軸的控制精度要求高,因此采用了閉環(huán)控制。目前,檢測(cè)位有兩種。一種方法是使用位置傳感器,測(cè)量量由變送器經(jīng)A/D轉(zhuǎn)換成數(shù)字量,送至系統(tǒng)步處理。此方法雖然檢測(cè)精度高,但在多路置監(jiān)控系統(tǒng)中,由于其成本昂貴、安裝困難適用。另一種方法是使用光電編碼器。光電編碼器是高精度控制系統(tǒng)常用的角位移檢測(cè)傳感器??芍苯佑糜跈z測(cè)角度和角速度,間接用于檢測(cè)直線位移和直線速度。光電編碼器電路圖分別如圖3.6所示。圖3.6光電編碼器電路光電編碼器輸出信號(hào)如圖3.12所示。當(dāng)控制對(duì)象發(fā)生位置變化時(shí),光電編碼器便會(huì)發(fā)出A、B兩路相位差90°的數(shù)字脈沖信號(hào)。正轉(zhuǎn)時(shí)A超前B為90°,反轉(zhuǎn)時(shí)B超前A為90°。通過(guò)軟件或者硬件鑒相處理可以判斷出電機(jī)的正轉(zhuǎn)或者反轉(zhuǎn)。脈沖的個(gè)數(shù)與角位移量成比例關(guān)系,因此,通過(guò)對(duì)脈沖計(jì)數(shù)就能計(jì)算出相應(yīng)的角位移。圖3.6光電編碼器輸出信號(hào)整機(jī)上除XY軸電機(jī)以外的其他電機(jī)采用開環(huán)控制,復(fù)位時(shí)用霍爾元件對(duì)電機(jī)進(jìn)行定位?;魻柶骷且环N磁傳感器。用它們可以檢測(cè)磁場(chǎng)及其變化,可在各種與磁場(chǎng)有關(guān)的場(chǎng)合中使用?;魻柶骷曰魻栃?yīng)為其工作基礎(chǔ)?;魻栐墓ぷ髟硭^霍爾效應(yīng),是指磁場(chǎng)作用于載流金屬導(dǎo)體、半導(dǎo)體中的載流子時(shí),產(chǎn)生橫向電位差的物理現(xiàn)象。當(dāng)電流通過(guò)金屬箔片時(shí),若在垂直于電流的方向施加磁場(chǎng),則金屬箔片兩側(cè)面會(huì)出現(xiàn)橫向電位差。半導(dǎo)體中的霍爾效應(yīng)比金屬箔片中更為明顯,而鐵磁金屬在居里溫度以下將呈現(xiàn)極強(qiáng)的霍爾效應(yīng)。霍爾開關(guān)電路霍爾開關(guān)電路又稱霍爾數(shù)字電路,由穩(wěn)壓器、霍爾片、差分放大器,斯密特觸發(fā)器和輸出級(jí)組成。在外磁場(chǎng)的作用下,當(dāng)磁感應(yīng)強(qiáng)度超過(guò)導(dǎo)通閾值BOP時(shí),霍爾電路輸出管導(dǎo)通,輸出低電平。之后,B再增加,仍保持導(dǎo)通態(tài)。若外加磁場(chǎng)的B值降低到BRP時(shí),輸出管截止,輸出高電平。我們稱BOP為工作點(diǎn),BRP為釋放點(diǎn),BOP—BRP=BH稱為回差?;夭畹拇嬖谑归_關(guān)電路的抗干擾能力增強(qiáng)?;魻栭_關(guān)電路的功能框如圖3.7所示。輸出特性如圖3.8所示。圖3.7霍爾開關(guān)電路的功能框圖 圖3.8霍爾開關(guān)電路的輸出特性一般規(guī)定,當(dāng)外加磁場(chǎng)的南極(S極)接近霍爾電路外殼上打有標(biāo)志的一面時(shí),作用到霍爾電路上的磁場(chǎng)方向?yàn)檎?,北極接近標(biāo)志面時(shí)為負(fù)。步進(jìn)電機(jī)霍爾定位電路原理圖如圖3.9所示。圖3.9步進(jìn)電機(jī)霍爾定位電路原理圖LCD控制面板LCD控制面板用來(lái)設(shè)置地址和燈具特性,實(shí)現(xiàn)人機(jī)交互,實(shí)現(xiàn)菜單控制功能。LCD采用圖形點(diǎn)陣的液晶顯示器12832,它主要有行驅(qū)動(dòng)器/列驅(qū)動(dòng)器及128*32全點(diǎn)陣液晶顯示器組成??赏瓿蓤D形顯示,也可顯示8*2個(gè)(16*16)漢字。主要特性如下:背光顏色:黃色字體顏色:黑色

控制器:ST7920字庫(kù):帶漢字字庫(kù)接口:可以串行,或者并行工作LCD12832系列原理簡(jiǎn)圖如圖3.10所示。圖3.10LCD12832系列原理簡(jiǎn)圖LCD12832控制面板電路圖如圖3.11所示。圖3.11LCD12832控制面板電路圖電子鎮(zhèn)流器控制模塊使用半導(dǎo)體電子元件,將直流或低頻交流電壓轉(zhuǎn)換成高頻交流電壓,驅(qū)動(dòng)低壓氣體放電燈(殺菌燈)、鹵鎢燈、金屬鹵化物燈等光源工作的電子控制裝置,其基本工作原理是:工頻電源經(jīng)過(guò)射頻干擾(RFI)濾波器,全波整流和無(wú)源(或有源)功率因數(shù)校正器(PPFC或APFC)后,變?yōu)橹绷麟娫础Mㄟ^(guò)DC/AC變換器,輸出20K-100KHZ的高頻交流電源,加到與燈連接的LC串聯(lián)諧振電路加熱燈絲,同時(shí)在電容器上產(chǎn)生諧振高壓,加在燈管兩端,但使燈管“放電”變成“導(dǎo)通”狀態(tài),再進(jìn)入發(fā)光狀態(tài),此時(shí)高頻電感起限制電流增大的作用,保證燈管獲得正常工作所需的燈電壓和燈電流,為了提高可靠性,常增設(shè)各種保護(hù)電路,如異常保護(hù),浪涌電壓和電流保護(hù),溫度保護(hù)等等。電子鎮(zhèn)流器可以設(shè)計(jì)成調(diào)光型,支持燈泡功率0-100%線性調(diào)節(jié)。鎮(zhèn)流器控制燈泡開啟/關(guān)閉和功率調(diào)節(jié)工作流程如圖3.12所示。鎮(zhèn)流器

信號(hào)控

制接口=電子鎮(zhèn)流器=觸發(fā)器=燈泡鎮(zhèn)流器

信號(hào)控

制接口=電子鎮(zhèn)流器=觸發(fā)器=燈泡3.12鎮(zhèn)流器控制燈泡開啟/關(guān)閉和功率調(diào)節(jié)工作流程點(diǎn)泡和功率調(diào)節(jié)電路原理圖如圖3.13所示。圖中J0接溫控開開關(guān),用于限制燈泡溫度,當(dāng)溫度超過(guò)設(shè)定溫度之后斷開燈泡;J1接燈泡點(diǎn)泡/滅泡控制端,用于控制燈泡的開啟/熄滅;J2接燈泡功率調(diào)節(jié)端,PWM實(shí)現(xiàn)燈泡功率0-100%線性調(diào)節(jié)。圖3.13點(diǎn)泡和功率調(diào)節(jié)電路原理圖如圖11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.步進(jìn)電機(jī)驅(qū)動(dòng)模塊主板電機(jī)都為兩相混合步進(jìn)電機(jī)采用斬波式恒流驅(qū)動(dòng)方式的該方式基于恒流開關(guān)控制模式,通過(guò)對(duì)電機(jī)每相負(fù)載電流的控制,也就是細(xì)分控制,有效地減小電機(jī)的步距角,從而可獲得更好的低速性能和定位精度;為實(shí)現(xiàn)恒流驅(qū)動(dòng),需要引入更高的電機(jī)驅(qū)動(dòng)電壓,達(dá)到更高的負(fù)載電流變化率,這對(duì)于電機(jī)動(dòng)態(tài)性能的提高無(wú)疑是有益的[23][24]。日本JRC公司生產(chǎn)的NJM3771屬于數(shù)字型接口恒流驅(qū)動(dòng)電路,與該公司的NJU39610FM2配合專門為驅(qū)動(dòng)雙極型兩相步進(jìn)電機(jī)而設(shè)計(jì),能夠方便的實(shí)現(xiàn)細(xì)分驅(qū)動(dòng)步進(jìn)電機(jī)。在步進(jìn)電機(jī)控制系統(tǒng)中與MCU硬件接口和軟件方面都非常簡(jiǎn)捷[25]。NJM3771邏輯框圖如圖3.20所示。芯片具有兩個(gè)驅(qū)動(dòng)通道,每個(gè)通道包含以下幾部分:一個(gè)H型全橋輸出電路,每個(gè)驅(qū)動(dòng)通道的驅(qū)動(dòng)電流達(dá)650mA(或者兩個(gè)通道同時(shí)輸出500mA),一個(gè)續(xù)流二極管及相應(yīng)的控制電路,該電路還有一R振蕩器,產(chǎn)生供兩個(gè)通道共用的時(shí)鐘基準(zhǔn),一個(gè)RS電壓采樣電路,步進(jìn)電機(jī)在高速旋轉(zhuǎn)時(shí)可選擇慢速/快速衰減模式,這對(duì)提高步進(jìn)電機(jī)的動(dòng)態(tài)性能以及降低噪音十分有益。PID22封裝形式的NJM3771引腳分布如表3.4所示。恒流驅(qū)動(dòng)是通過(guò)對(duì)H型開關(guān)全橋的控制得到的。以通道1為例,檢測(cè)電阻Rs將負(fù)載電流變換成電壓值,經(jīng)過(guò)低通濾波送至比較器,與給定值(由Vri決定)進(jìn)行比較,當(dāng)電流值大于給定值時(shí),比較器的輸出使觸發(fā)器復(fù)位,經(jīng)過(guò)控制邏輯關(guān)斷輸出三極管,之后負(fù)載電流開始下降,直至下一個(gè)時(shí)鐘電平到來(lái)時(shí),與比較器的輸出共同決定輸出級(jí)的狀態(tài)。因此負(fù)載電流峰值i=0.18.v/r。低通P rs濾波器的使用可以有效地抑制由于干擾引起的誤動(dòng)作,但其延時(shí)作用也會(huì)引起負(fù)載電流的控制誤差。圖3.20NJM3771內(nèi)部結(jié)構(gòu)圖NJU39610原理框圖如圖3.21所示。它是專門為配合NJM3771而設(shè)計(jì)的D/A轉(zhuǎn)換器具有7位分辨率,以及電流方向控制和電流衰減模式控制輸出。PID22封裝形式的NJU39610引腳分布如表3.5所示。圖3.21NJU39610原理框圖NJU39610包含有兩個(gè)DAC通道,每個(gè)通道包含兩個(gè)寄存器,一個(gè)數(shù)字比較器,一個(gè)鎖存器,一個(gè)D/A轉(zhuǎn)換器。其中一個(gè)寄存器用于存儲(chǔ)當(dāng)前狀態(tài),快速電流衰減模式初始化,CD輸出端決定電機(jī)驅(qū)動(dòng)采用快速衰減模式還是慢速衰文檔收集于互聯(lián)網(wǎng),已重新整理排版文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.減模式。表3.4NJM3771D2DIP22封裝引腳分布引腳序號(hào)符號(hào)功能1MB1通道1電機(jī)輸出端,當(dāng)Phase1為高時(shí),電機(jī)電流從MA1流向M1 MB12E1通道1檢測(cè)電阻端3VMM1通道1電機(jī)供電電源,10V-40V,與VMM2相連4MA1通道1電機(jī)輸出端5,6,17,18GND地,同時(shí)也是芯片的主要熱傳遞途徑7Phase1通道1負(fù)載電流方向控制1:MjMB]0:MB1fMA18CD1通道1電流衰減模式控制端1:慢速衰減模式0:快速衰減模式9VR1通道1參考電流輸出端,典型輸入阻抗為2.5KQ±20%10C1通道1比較器輸入端11VCC邏輯電路供電端12RCRC時(shí)鐘輸入端,典型值:R=15KQ,C=3300pF時(shí),時(shí)鐘頻率為26.5KHz13C2通道2比較器輸入端14VR2通道2參考電流輸出端,典型輸入阻抗為2.5KQ±20%15CD2通道2電流衰減模式控制端1:慢速衰減模式0:快速衰減模式

16Phase2通道2負(fù)載電流方向控制1:m「mb20:MB2fMa219MA2通道2電機(jī)輸出端20VMM2通道2電機(jī)供電電源,10V-40V,與VMM1相連21E2通道2檢測(cè)電阻端22MB2通道1電機(jī)輸出端,當(dāng)Phase1為高時(shí),電機(jī)電流從MA1流向M1 MB1數(shù)字比較器將新值與當(dāng)前值和預(yù)先設(shè)這的快速電流衰減值比較,如果新值比另外兩個(gè)值都小,則進(jìn)入快速電流衰減模式,鎖存器將新的D/A值從CD輸出,快速衰減模式用于防止在電機(jī)高速運(yùn)行時(shí)電流減小導(dǎo)致滑步現(xiàn)象的出現(xiàn),使電機(jī)平穩(wěn)運(yùn)行。NJM3771D2和NJU39610FM2典型應(yīng)用電路圖如圖3.21所示。表3.5NJU39610FM2DIP22封裝引腳分布引腳序號(hào)符號(hào)功能1VRef參考電壓輸入端,推薦值:2.5V,最大值:3V2DA1通道1D/A轉(zhuǎn)換輸出端3Sign1通道1電機(jī)電流方向控制輸出端4CD1通道1電機(jī)電流衰減模式輸出端5VDD芯片正電源端,5V±5%6/WR工作寄存器寫信號(hào)7D7數(shù)據(jù)輸入第八位,TTL/CMOS兼容8D6數(shù)據(jù)輸入第七位,TTL/CMOS兼容9D5數(shù)據(jù)輸入第六位,TTL/CMOS兼容10D4數(shù)據(jù)輸入第五位,TTL/CMOS兼容11D3數(shù)據(jù)輸入第四位,TTL/CMOS兼容

12D2數(shù)據(jù)輸入第三位,TTL/CMOS兼容13D1數(shù)據(jù)輸入第二位,TTL/CMOS兼容14D0數(shù)據(jù)輸入第一位,TTL/CMOS兼容15A0工作寄存器地址輸入端,TTL/CMOS兼容16A1工作寄存器地址輸入端,TTL/CMOS兼容17/CS片選輸入端,TTL/CMOS兼容18VSS芯片負(fù)電源端19CD2通道2電機(jī)電流衰減模式輸出端20Sing2通道2電機(jī)電流方向控制輸出端21da2通道2D/A轉(zhuǎn)換輸出端22Reset芯片復(fù)位輸入端,高電平有效圖3.21NJM3771D2和NJU39610FM2典型應(yīng)用電路圖XY選用三相混合步進(jìn)電機(jī)采用SPWM細(xì)分驅(qū)動(dòng)方式,電機(jī)驅(qū)動(dòng)采用如圖3.22的星型電路,驅(qū)動(dòng)H橋驅(qū)動(dòng)芯片采用意法半導(dǎo)體的L6384。圖3.22星型電機(jī)驅(qū)動(dòng)電路ST公司的L6384是專門的不對(duì)稱半橋驅(qū)動(dòng)芯片,其原理圖及外圍電路如圖3所示。單脈沖從1腳(12輸入,5腳(HVG)和7腳(LVG)輸出互補(bǔ)的脈沖。3腳(DT/ST)外接電阻和電容來(lái)控制兩路輸出的死區(qū)時(shí)間。當(dāng)3腳的電平低于0.5V的時(shí)候,芯片停止工作。專用芯片具有外圍電路簡(jiǎn)單、占用空間小的特點(diǎn)[26JL6384內(nèi)部結(jié)構(gòu)圖如圖3.23所示圖3.23L6384內(nèi)部結(jié)構(gòu)圖JTAG接口模塊JTAG是一種國(guó)際標(biāo)準(zhǔn)測(cè)試協(xié)議,主要用于芯片內(nèi)部測(cè)試。現(xiàn)在多數(shù)的高級(jí)器件都支持JTAG協(xié)議,如DSP、FPGA器件等。標(biāo)準(zhǔn)的JTAG接口是4線:TMS、TCK、TDI、TDO,分別為模式選擇、時(shí)鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。相關(guān)JTAG引腳的定義為:TCK為測(cè)試時(shí)鐘輸入;TDI為測(cè)試數(shù)據(jù)輸入,數(shù)據(jù)通過(guò)TDI引腳輸入JTAG接口;TDO為測(cè)試數(shù)據(jù)輸出,數(shù)據(jù)通過(guò)TDO引腳從JTAG接口輸出;TMS為測(cè)試模式選擇,TMS用來(lái)設(shè)置JTAG接口處于某種特定的測(cè)試模式;TRST為測(cè)試復(fù)位,輸入引腳,低電平有效[2力。JTAG編程方式是在線編程,傳統(tǒng)生產(chǎn)流程中先對(duì)芯片進(jìn)行預(yù)編程現(xiàn)再裝到板上因此而改變,簡(jiǎn)化的流程為先固定器件到電路板上,再用JTAG編程,從而大大加快工程進(jìn)度。JTAG接口可對(duì)PSD芯片內(nèi)部的所有部件進(jìn)行編程。采用ARM公司提出的標(biāo)準(zhǔn)20腳JTAG仿真調(diào)試接口,JTAG信號(hào)的定義如表4-2所示。與LPC2148的連接如圖3.22所示。3.10本章小結(jié)原來(lái)簡(jiǎn)單的8位主控CPU難以滿足系統(tǒng)的要求,這樣出現(xiàn)主從兩個(gè)CPU聯(lián)合的控制系統(tǒng)。為了提高電腦燈各個(gè)部分的控制精度,XY控制系統(tǒng)對(duì)步進(jìn)電機(jī)的控制也由原來(lái)的簡(jiǎn)單的細(xì)分發(fā)展到目前的流行的SPWM驅(qū)動(dòng)控制,同時(shí)用新型的三相混合步進(jìn)電機(jī)代替原來(lái)應(yīng)用在X軸和Y軸的兩相步進(jìn)電機(jī)。完成了對(duì)控臺(tái)DMX512控制信號(hào)接收及XY從控板信號(hào)發(fā)送模塊,LCD鍵盤人機(jī)交流操作模塊,電機(jī)驅(qū)動(dòng)模塊,各電機(jī)復(fù)位信息反饋模塊,JTAG接口模塊等硬件電路的設(shè)計(jì),為軟件的設(shè)計(jì)打下了堅(jiān)實(shí)的硬件基礎(chǔ)。11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.第四章系統(tǒng)軟件設(shè)計(jì)軟件的設(shè)計(jì)是舞臺(tái)燈控制系統(tǒng)的核心部分也是本文的設(shè)計(jì)重點(diǎn),本章在前幾章控制算法和硬件電路的基礎(chǔ)上完成了軟件部分的編寫,實(shí)現(xiàn)了舞臺(tái)燈的各種控制功能。軟件總體框架的設(shè)計(jì)本控制系統(tǒng)的主要是通過(guò)對(duì)多電機(jī)的協(xié)同控制從而實(shí)現(xiàn)舞臺(tái)燈的各種控制效果,在主控板電路上單一塊LPC2148微處理器實(shí)現(xiàn)了16個(gè)步進(jìn)電機(jī)的控制,X、Y從板分別由一塊PIC16F873單片機(jī)控制以實(shí)現(xiàn)電腦燈的空間運(yùn)動(dòng)。主板通過(guò)信號(hào)接收模塊接收來(lái)自控臺(tái)的控制信號(hào),主板程序?qū)⒔邮盏牡降目刂菩盘?hào)分為兩類一類是屬于主板自身效果電機(jī)的命令,另一類是發(fā)給XY從控板的控制命令。程序流程及所含功能框圖如圖4.1所示,在主程序塊的調(diào)度程序下按照電腦燈的控制要求完成實(shí)現(xiàn)控臺(tái)命令接受和發(fā)送的通訊程序塊,實(shí)現(xiàn)各電機(jī)功能效果的驅(qū)動(dòng)程序,實(shí)現(xiàn)菜單顯示和按鍵操作的程序塊,上電后各電機(jī)零點(diǎn)位置的程序塊,以及完成初始化的程序塊等程序塊的調(diào)度。圖4.1主控板總體框架設(shè)定圖4.2為X、Y從控板的程序框架,X、Y從控板只有當(dāng)上電復(fù)位時(shí)有自主控制功能,其他時(shí)候其控制命令都是來(lái)源于主板程序,如圖所示XY主要包括控制信號(hào)接收部分接受來(lái)自主板的控制程序塊、電機(jī)驅(qū)動(dòng)程序塊、行程開關(guān)復(fù)位模塊和光耦位置反饋判斷程序塊。圖4.2從控X、Y板總體框架設(shè)定主板程序設(shè)計(jì)主板程序是程序設(shè)計(jì)核心中的核心它需要完成如人機(jī)操作界面,各種效果盤如色盤、光圈、圖案盤、調(diào)焦、放大、等電機(jī)的運(yùn)動(dòng)控制,接收來(lái)自控臺(tái)的DMX512控制信號(hào)將屬于X、Y的控制數(shù)據(jù)發(fā)送到X、Y控制電路板,此外還要完成如燈泡溫度、主板溫度等的溫度檢測(cè)以及開機(jī)復(fù)位的亮點(diǎn)位置檢測(cè)。由于主板程序涉及的任務(wù)眾多,就電機(jī)部分就包含了16個(gè)電機(jī)的控制任務(wù)。因此為了方便程序的設(shè)計(jì)及電腦各項(xiàng)控制功能的靈活調(diào)度在設(shè)計(jì)主控板嵌入了文檔收集于互聯(lián)網(wǎng),已重新整理排版文檔收集于互聯(lián)網(wǎng),已重新整理排版.word版本可編輯,有幫助歡迎下載支持.11文檔來(lái)源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.Protothreads多任務(wù)系統(tǒng)。程序開發(fā)中多任務(wù)的設(shè)計(jì)常用的受有while循環(huán),基于switch{case}的狀態(tài)機(jī),嵌入他人開發(fā)的操作系統(tǒng)。程序開發(fā)人員可以依據(jù)控制系統(tǒng)的需求,來(lái)選擇適合自己的多任務(wù)處理方式。1、while循環(huán)死循環(huán)方法是最常用的多任務(wù)處理方法。其程序結(jié)構(gòu)通常如下:While(condition){if(觸發(fā)條件1)任務(wù)1();if(觸發(fā)條件2)任務(wù)3();if(觸發(fā)條件3)任務(wù)1();if(觸發(fā)條件4)任務(wù)4();}實(shí)際程序中往往是用中斷或其他任務(wù)來(lái)觸發(fā)各個(gè)任務(wù)的執(zhí)行條件。該方法思路簡(jiǎn)潔,沒有多余的硬件資源消耗,程序的設(shè)計(jì)和調(diào)試都十分便捷。但這種的缺點(diǎn)很明顯:程序無(wú)法保證各個(gè)任務(wù)的并發(fā)執(zhí)行。如果循環(huán)中某個(gè)任務(wù)需要長(zhǎng)時(shí)間等待,在這種結(jié)構(gòu)中無(wú)法將其暫時(shí)阻塞,從而導(dǎo)致其他任務(wù)的執(zhí)行都受到影響。如果程序中有任務(wù)有實(shí)時(shí)性要求,顯然這種程序結(jié)構(gòu)是難以滿足的[28]。2、狀態(tài)機(jī)方法有限狀態(tài)機(jī)(FSM)方法是一種重要的程序設(shè)計(jì)方法,有成熟的理論基礎(chǔ)。在事件驅(qū)動(dòng)型程序設(shè)計(jì)以及硬件描述語(yǔ)言程序(如VHDL,Verilog等)設(shè)計(jì)中,該方法有廣泛的應(yīng)用,而且有眾多軟件開發(fā)工具的支持。該方法需要事先建立程序狀態(tài)轉(zhuǎn)換圖,根據(jù)狀態(tài)轉(zhuǎn)換圖在程序中通過(guò)判斷狀態(tài)標(biāo)志變量的狀態(tài),引導(dǎo)程序在各個(gè)任務(wù)之間跳轉(zhuǎn),從而實(shí)現(xiàn)多任務(wù)程序。在C語(yǔ)言中,該方法往往通過(guò)switch-case的程序結(jié)構(gòu)來(lái)實(shí)現(xiàn)。同時(shí),通過(guò)隨時(shí)向指定的任務(wù)跳轉(zhuǎn),該程序結(jié)構(gòu)也能夠?qū)崿F(xiàn)類似于程序阻塞的操作,讓實(shí)時(shí)性要求更高的程序得以及時(shí)執(zhí)行。狀態(tài)機(jī)程序同樣不會(huì)引入過(guò)多的硬件資源消耗,很適合嵌入式環(huán)境。該方法的缺點(diǎn)主要在于程序狀態(tài)較多的時(shí)候,程序狀態(tài)圖較難建立。此外狀態(tài)機(jī)程序往往是一種網(wǎng)狀的程序結(jié)構(gòu),程序的設(shè)計(jì)、維護(hù)和調(diào)試與其他方法相比難度較大[29]。3、嵌入式操作系統(tǒng)方法嵌入式操作系統(tǒng)為嵌入式環(huán)境的多任務(wù)設(shè)計(jì)提供了完善的解決方法。無(wú)論是面向低端硬件設(shè)備的簡(jiǎn)單系統(tǒng),例如uC/OS-II、Contiki、FreeRTOS等;還是面向高端硬件的例如WindowsCE、嵌入式Linux等復(fù)雜嵌入式操作系統(tǒng);均提供了完整的進(jìn)程(線程)環(huán)境、消息郵箱、信號(hào)量等機(jī)制,以及相應(yīng)的任務(wù)調(diào)度器。能夠十分方便的進(jìn)行多任務(wù)程序設(shè)計(jì),同時(shí)通過(guò)各種調(diào)度算法滿足各種不同優(yōu)先級(jí)任務(wù)的實(shí)時(shí)性要求。但該方法也有很多約束性:首先是對(duì)硬件資源要求很高,至少是數(shù)十KB的RAM以及數(shù)百KB的ROM,復(fù)雜嵌入式系統(tǒng)甚至要求數(shù)MB的RAM和數(shù)十MB的ROM,這將帶來(lái)硬件成本巨大上升,但實(shí)際應(yīng)用中很多場(chǎng)合并不需要這么高端的硬件資源。同時(shí),復(fù)雜的軟硬件環(huán)境使得軟硬件的設(shè)計(jì)過(guò)程過(guò)于復(fù)雜和專業(yè),設(shè)計(jì)周期也因此變長(zhǎng)。此外,嵌入式操作系統(tǒng)多數(shù)是商業(yè)軟件,授權(quán)費(fèi)用昂貴,而且硬件上往往需要一系列與之配套的芯片,高昂的成本使得這種方法對(duì)于簡(jiǎn)單嵌入式設(shè)備并不適合[30]。4.2.2Protothreads簡(jiǎn)介Protothreads是由瑞典計(jì)算機(jī)科學(xué)研究所的科學(xué)家AdamDunkels所創(chuàng)的一種新的線程編程方法。Protothreads是專門為資源緊張的系統(tǒng)設(shè)計(jì)的一種耗費(fèi)資源少,且不使用堆棧的線程模型,它可以不使用復(fù)雜的狀態(tài)機(jī)機(jī)制來(lái)實(shí)現(xiàn)順序流的控制[31]。簡(jiǎn)單地說(shuō),Protothreads借鑒了用C語(yǔ)言實(shí)現(xiàn)協(xié)同(co-routine)的原理,它應(yīng)用switch-case語(yǔ)句的直接跳轉(zhuǎn)功能,實(shí)現(xiàn)了有條件阻塞(conditionalblock),最終實(shí)現(xiàn)了虛擬的并行處理功能(concurrent)。實(shí)際上,Protothreads并不是真正的線程,在多任務(wù)的切換中并不會(huì)真正涉及上下文的切換,其線程的調(diào)度也僅僅是依靠隱式的return,進(jìn)而退出函數(shù)體來(lái)完成的。但是rotothreads的優(yōu)點(diǎn)卻是實(shí)實(shí)在在的。首先它不需要堆棧空間,而正如筆者用宏實(shí)現(xiàn)的那樣,Protothreads也實(shí)現(xiàn)了很多只有線程編程方法才能實(shí)現(xiàn)的機(jī)制,比如阻塞。而用宏進(jìn)行了封裝之后,使用者完全可以像使用線程一樣使用它們,而且其邏輯更加簡(jiǎn)化,這大大增加了程序的清晰度,并降低了開發(fā)維護(hù)的難度。在對(duì)實(shí)時(shí)性要求比較高或者說(shuō)要求并行處理的場(chǎng)合,往往需要在任務(wù)A執(zhí)行到一定程度、等待事件C發(fā)生時(shí),退出當(dāng)前任務(wù)A并轉(zhuǎn)而執(zhí)行任務(wù)B;當(dāng)事件C發(fā)生之后,系統(tǒng)繼續(xù)回到任務(wù)A

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論