<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于DSP的級(jí)聯(lián)型高壓變頻器控制軟件在線升級(jí)方法

          基于DSP的級(jí)聯(lián)型高壓變頻器控制軟件在線升級(jí)方法

          作者: 時(shí)間:2018-08-23 來(lái)源:網(wǎng)絡(luò) 收藏

          0 引言

          本文引用地址:http://www.ex-cimer.com/article/201808/387517.htm

          目前,多電平高壓變頻器是高壓變頻器研究的熱點(diǎn)之一。多電平變頻器具有電平階數(shù)多、諧波含量小、開(kāi)關(guān)頻率低、開(kāi)關(guān)損耗小、開(kāi)關(guān)應(yīng)力小和電壓等級(jí)高等優(yōu)點(diǎn),容易滿足高壓大容量場(chǎng)合的要求。多電平高壓變頻器的拓?fù)浣Y(jié)構(gòu)主要有:二極管箝位式、電容箝位式、單元級(jí)聯(lián)式、三相逆變器串聯(lián)式、電壓自平衡式等。其中,級(jí)聯(lián)式多電平變頻器是以單相全橋逆變電路(以下稱單元模塊)為基本單元串聯(lián)構(gòu)成的。它不僅具有多電平變頻器的共同特點(diǎn),還具有自身獨(dú)特的特點(diǎn),即單元模塊易封裝,易模塊化,便于冗余設(shè)計(jì)和故障檢修。本文中的級(jí)聯(lián)型高壓變頻器單元模塊采用DSP TMS320LF2407A為芯片,提高了單元模塊的智能化和模塊化,簡(jiǎn)化了主控模塊,使系統(tǒng)可靠性提高。但與此同時(shí),在單元軟件的升級(jí)上,由于單元模塊安裝在整機(jī)中,仿真器不易接到板上,因此要將控制板一一拆下來(lái)分別進(jìn)行DSP軟件加載,這會(huì)耗費(fèi)很多的時(shí)間和人力。

          本文分析了現(xiàn)有的DSP 片內(nèi)Flash (閃速存儲(chǔ)器)的程序加載方法,針對(duì)級(jí)聯(lián)型高壓變頻器的結(jié)構(gòu)特點(diǎn),提出多DSP 片內(nèi)Flash 串行加載的方法,可實(shí)現(xiàn)高壓變頻器的單元模塊控制軟件的在線升級(jí),無(wú)需拆卸,操作簡(jiǎn)單,節(jié)省了時(shí)間和人力。

          1 級(jí)聯(lián)型高壓變頻器控制單元軟件在線升級(jí)的基本思想

          1.1 級(jí)聯(lián)型高壓變頻器系統(tǒng)整體結(jié)構(gòu)

          本文多DSP 片內(nèi)Flash 串行加載方法是根據(jù)級(jí)聯(lián)型高壓變頻器的結(jié)構(gòu)特點(diǎn)提出的。圖1 為級(jí)聯(lián)型高壓變頻器系統(tǒng)結(jié)構(gòu)框圖。變頻器主控系統(tǒng)與監(jiān)控系統(tǒng)(上位機(jī))通過(guò)RS485總線進(jìn)行通訊。RS485 總線采用差分信號(hào)進(jìn)行傳輸,具有共模干擾抑制能力,抗干擾性能較強(qiáng)。主控發(fā)送的信號(hào)通過(guò)CPLD 發(fā)送給各單元控制系統(tǒng)。由于主控與單元模塊距離較長(zhǎng),且單元模塊高頻干擾大、電壓等級(jí)高、工作環(huán)境惡劣,故CPLD轉(zhuǎn)換的主控信號(hào)通過(guò)光纖傳輸。

          1.2 多DSP片內(nèi)Flash串行加載的主要思想

          目前,LF240xA 片內(nèi)Flash 通過(guò)PC 加載實(shí)現(xiàn)的方法有兩種:一種是通過(guò)DSP開(kāi)發(fā)板自帶的JTAG接口(Joint Test Action Group)與PC 并口或USB串口相連實(shí)現(xiàn)編程(JTAG編程方式),JTAG接口提供數(shù)據(jù)、地址及控制信號(hào),當(dāng)程序在PC 上調(diào)試完畢后借助仿真器通過(guò)JTAG 燒寫(xiě)到片內(nèi)Flash 中;另一種是利用DSP 的串行通信接口(SCI),通過(guò)RS232 與PC的串口連接實(shí)現(xiàn)編程(串口編程方式)。根據(jù)閃存指令集編寫(xiě)程序,編譯通過(guò)后分段下載到DSP的RAM中,最后轉(zhuǎn)移到Flash中。該方式需要用到DSP的引導(dǎo)加載ROM。當(dāng)DSP的BOOT-EN引腳為高電平并且DSP運(yùn)行于微控制器(MCU)方式時(shí),DSP 執(zhí)行片內(nèi)閃存程序,系統(tǒng)正常運(yùn)行。當(dāng)BOOT-EN為低電平、編程電壓引腳為+5 V,并且DSP運(yùn)行于微控制器方式時(shí),DSP執(zhí)行片內(nèi)ROM加載程序,執(zhí)行串行加載。

          現(xiàn)有的方法一次只能對(duì)單個(gè)DSP燒寫(xiě),且需要拆卸。多DSP串行加載的思想是,通過(guò)主控與單元間的通訊,實(shí)現(xiàn)主控向單元進(jìn)行Flash 串行燒寫(xiě)的功能,從而在不需要對(duì)硬件做任何修改的情況下實(shí)現(xiàn)多DSP同時(shí)加載。

          具體思想是:先將串行加載算法程序(以下稱為L(zhǎng)oader程序)用JTAG口燒寫(xiě)到單元DSP 片內(nèi)Flash的固定位置,且永不擦除改變。在系統(tǒng)上電后,單元先運(yùn)行Loader程序,與主控建立通訊。同時(shí)上位機(jī)與主控建立通訊,上位機(jī)監(jiān)控系統(tǒng)提供了“指定單元升級(jí)”、“全部單元升級(jí)”或“正常運(yùn)行”模式的選擇。在需要軟件升級(jí)時(shí),選擇“指定單元升級(jí)”或“全部單元升級(jí)”,下發(fā)給單元。單元通過(guò)主控獲得升級(jí)指令,繼續(xù)運(yùn)行Loader程序,并將主控傳送的升級(jí)程序代碼加載到Flash。若不需要軟件升級(jí),選擇“正常運(yùn)行”跳轉(zhuǎn)到現(xiàn)有程序正常運(yùn)行。若等待一段時(shí)間后未下發(fā)任何指令,系統(tǒng)將默認(rèn)為正常運(yùn)行。

          2 變頻器控制軟件在線升級(jí)的實(shí)現(xiàn)

          2.1 串行加載的軟件實(shí)現(xiàn)

          將要加載的升級(jí)程序利用dsphex命令,轉(zhuǎn)換為HEX文件,存放在主控或上位機(jī)的存儲(chǔ)器中。根據(jù)上位機(jī)的升級(jí)指令,控制單元模塊的動(dòng)作,并為單元模塊提供升級(jí)軟件的HEX文件。

          1)存儲(chǔ)在單元DSP中的Loader程序內(nèi)含F(xiàn)lash加

          載算法的HEX文件算法包括內(nèi)核子程序(也稱為監(jiān)控子程序)、清除(clear)、擦除(erase)、編程(program)子程序(可統(tǒng)稱為讀寫(xiě)子程序)。在對(duì)Flash編程過(guò)程中,由于對(duì)DSP內(nèi)部的Flash 進(jìn)行清零、擦除及編程操作時(shí),F(xiàn)lash 的閃存陣列處于高電壓,故里面的代碼是不能運(yùn)行的,于是就要將清零、擦除及編程算法放到DSP內(nèi)部的RAM 中運(yùn)行。內(nèi)核程序作為監(jiān)控程序也在RAM 中運(yùn)行,用以調(diào)用清零、擦除及編程算法。故Loader程序的功能就是在初始化DSP、與主控建立通訊后,等待接收程序下載命令,若在5 s內(nèi)接收到下載命令,將存儲(chǔ)在Flash中的內(nèi)核、清除、擦除、編程子程序的HEX文件轉(zhuǎn)存至DSP的SARAM區(qū)的固定位置后運(yùn)行內(nèi)核程序。其中,DSP 的SARAM 區(qū)既可做數(shù)據(jù)存儲(chǔ)區(qū)又可做程序存儲(chǔ)區(qū),本文將其作為程序存儲(chǔ)區(qū),經(jīng)過(guò)一個(gè)中間數(shù)據(jù)變量,軟件從Flash程序存儲(chǔ)區(qū)轉(zhuǎn)存至SARAM程序存儲(chǔ)區(qū)。

          若5 s內(nèi)未接收到指令或接收到正常運(yùn)行指令,程序跳轉(zhuǎn)到用戶程序開(kāi)始處運(yùn)行。這里要注意,由于Loader程序是固定不變的,所以用戶程序的跳轉(zhuǎn)地址也是固定不變的。本文中定為1000H,那么要求用戶程序的入口地址INT0 分配為1000H。

          2)內(nèi)核子程序控制讀寫(xiě)子程序的調(diào)度調(diào)用清零、擦除子程序,并在操作成功后向上位機(jī)發(fā)送成功標(biāo)志,上位機(jī)在接收到擦除成功標(biāo)志后傳輸單元升級(jí)程序HEX 代碼,下位機(jī)接收到HEX 代碼運(yùn)行編程子程序,將代碼加載到Flash。整個(gè)串行加載的流程如圖2所示。其中,升級(jí)程序代碼接收到后被存儲(chǔ)在DARAM 數(shù)據(jù)存儲(chǔ)器的B1區(qū)。因?yàn)锽1 區(qū)的存儲(chǔ)空間為256字,故一次最多可存放256個(gè)字的程序代碼。根據(jù)程序代碼的長(zhǎng)度,可分多次傳輸,多次運(yùn)行編程程序。

          3)高壓變頻器單元板選用DSP TMS320LF2407A作為控制芯片查閱資料可知,芯片中Flash 0000H到003FH 為中斷向量表。其中,0000H 存儲(chǔ)的是INT0,即程序入口地址。DSP 上電復(fù)位后,芯片從0000H地址處讀取INT0 跳轉(zhuǎn)地址,跳轉(zhuǎn)到程序入口開(kāi)始執(zhí)行。因此,要實(shí)現(xiàn)芯片上電復(fù)位后跳到Loader子程序處運(yùn)行,就需要將Loader子程序的入口地址寫(xiě)入中斷向量表,本設(shè)計(jì)中Loader 子程序放置在Flash 7000H 開(kāi)始的地址處且永不改動(dòng),其INT0 地址為7000H,故在加載單元升級(jí)程序時(shí),中斷向量表的INT0 地址要改為7000H,其他中斷向量地址不變。即上電復(fù)位后不轉(zhuǎn)入單元程序而是轉(zhuǎn)入Loader程序,在判斷不進(jìn)行程序加載時(shí)再跳轉(zhuǎn)到單元程序起始處,同時(shí)不影響單元程序的中斷正常執(zhí)行。具體實(shí)現(xiàn)舉例如:

          程序存儲(chǔ)器地址程序存儲(chǔ)器代碼

          0000H 7980H 1000H

          0002H 7980H 106FH

          0004H 7980H 1035H

          … …

          7980H 是跳轉(zhuǎn)語(yǔ)句“B”的HEX 碼,即單元程序跳轉(zhuǎn)到1000H處運(yùn)行。將程序存儲(chǔ)器0000H處的跳轉(zhuǎn)語(yǔ)句改為7980H 7000H,使芯片上電復(fù)位跳轉(zhuǎn)到Loader程序處執(zhí)行。

          2.2 多DSP片內(nèi)Flash串行加載的實(shí)現(xiàn)

          由圖1可知,高壓變頻器主控模塊通過(guò)CPLD與多個(gè)單元模塊通訊。主控通過(guò)廣播方式與所有單元模塊通訊,或通過(guò)點(diǎn)對(duì)點(diǎn)方式與單個(gè)單元模塊通訊。這樣,就可根據(jù)需要,選通一個(gè)特定單元或選通所有單元,下發(fā)升級(jí)指令。相應(yīng)的單元模塊接收指令,判斷本單元需不需要升級(jí)。若要升級(jí),執(zhí)行串行加載程序,并接收升級(jí)代碼,從而可實(shí)現(xiàn)多DSP同時(shí)編程。

          2.3 需要注意的問(wèn)題

          針對(duì)實(shí)際應(yīng)用的特點(diǎn),在實(shí)現(xiàn)中要注意以下問(wèn)題:

          1)在對(duì)Flash編程時(shí),LF240XA的引腳Vccp接+5 V的編程電壓。在編程結(jié)束后,把引腳Vccp接地,則陣列中的內(nèi)容不易被改變。片內(nèi)CPU的工作時(shí)鐘不得高于40 MHz,否則會(huì)使程序加載過(guò)程出現(xiàn)錯(cuò)誤,從而導(dǎo)致程序加載失敗。

          2)由于Loader 程序占用了一部分Flash 存儲(chǔ)空間,而Flash 存儲(chǔ)空間分成四個(gè)扇區(qū)加載,分別為0000-0FFFH、1000H-3FFFH、4000H-6FFFH、7000H-7FFFH,故Loader 程序占用了一個(gè)Flash 的扇區(qū)7000H-7FFFH,因此正常運(yùn)行程序的大小限制在片內(nèi)Flash存儲(chǔ)空間的另外3個(gè)扇區(qū)內(nèi)。

          3)數(shù)據(jù)傳輸?shù)目煽啃?。鑒于高壓變頻器的工作環(huán)境,要保證數(shù)據(jù)可靠傳輸和升級(jí)程序的可靠燒寫(xiě),以免引起系統(tǒng)控制上的失誤,造成不必要的損失。

          4)使用要簡(jiǎn)單方便。為實(shí)現(xiàn)數(shù)據(jù)可靠傳輸,采用一一校驗(yàn)的方式,即單元接收到一個(gè)數(shù)據(jù)之后就回發(fā)給主控,主控判斷是否與發(fā)送數(shù)據(jù)相同,相同就繼續(xù)發(fā)送,不同就結(jié)束發(fā)送。

          3 結(jié)語(yǔ)

          本文設(shè)計(jì)的多DSP片內(nèi)Flash串行加載方法,實(shí)現(xiàn)了級(jí)聯(lián)型高壓變頻器單元模塊控制軟件的在線升級(jí)。通過(guò)在高壓變頻系統(tǒng)上應(yīng)用,驗(yàn)證了其可行性。

          這種方法同以往的程序加載方法相比,簡(jiǎn)單省時(shí),為解決類似多DSP控制芯片系統(tǒng)的程序加載提供了一種方便、簡(jiǎn)單、可靠的方法。



          關(guān)鍵詞: 控制 功率

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();