基于μC/OS-II嵌入式操作系統(tǒng)的TCSC實(shí)驗(yàn)控制器前置單元設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在復(fù)雜的實(shí)時(shí)系統(tǒng)中,多任務(wù)處理是比較關(guān)鍵的環(huán)節(jié),采用前后臺(tái)的單任務(wù)控制方式已經(jīng)不能滿足要求,在高速數(shù)據(jù)采集系統(tǒng)中RS232明顯是個(gè)瓶頸。
本文采用arm處理器技術(shù)、嵌入式實(shí)時(shí)操作系統(tǒng)技術(shù)和通用串行總線(USB)技術(shù)來(lái)完成TCSC實(shí)驗(yàn)系統(tǒng)控制器前置單元的實(shí)際開發(fā)。 實(shí)驗(yàn)表明,實(shí)際系統(tǒng)數(shù)據(jù)采集速度與設(shè)計(jì)時(shí)預(yù)期的結(jié)果基本一致,印證了在實(shí)時(shí)性較強(qiáng),多任務(wù),需快速傳輸數(shù)據(jù)的復(fù)雜系統(tǒng)中,引入嵌入式操作系統(tǒng)μC/OS-II及USB傳輸方式的優(yōu)勢(shì)和必要性。
可控串聯(lián)補(bǔ)償( TCSC) 是柔性交流輸電系統(tǒng)( FACTS)概念提出后的第一個(gè)FACTS裝置。 由于TCSC直接串入輸電線路,可以連續(xù)、快速、大范圍地調(diào)節(jié)線路阻抗(本身的阻抗從容性到感性變化) ,和其自身的數(shù)據(jù)采集與監(jiān)控( SCADA)系統(tǒng)相配合,可以實(shí)現(xiàn)遠(yuǎn)方阻抗和功率潮流調(diào)節(jié),平息地區(qū)性功率振蕩,提高系統(tǒng)暫態(tài)穩(wěn)定性,抑制次同步諧振。 本文通過(guò)一個(gè)在研項(xiàng)目——福建-華東電網(wǎng)互聯(lián)的可控串補(bǔ)研究,詳細(xì)介紹了可控串聯(lián)補(bǔ)償( TCSC)實(shí)驗(yàn)控制器的前置單元部分設(shè)計(jì),以便于為實(shí)際決策提供完整、準(zhǔn)確的實(shí)驗(yàn)數(shù)據(jù)。
TCSC的穩(wěn)態(tài)特性分析電路模型
TCSC的基本結(jié)構(gòu)是固定的串補(bǔ)電容C并聯(lián)一個(gè)由雙向晶閘管(實(shí)際也可把兩個(gè)單向晶閘管并聯(lián)反接在一起)控制的電抗L ,圖1所示為穩(wěn)態(tài)分析用的TCSC模型:
它的運(yùn)行模式有:
1) 晶閘管截止。 TCSC等同于固定串聯(lián)補(bǔ)償。
2) 晶閘管旁路。 在電流正或反方向流過(guò)VT時(shí),雙向晶閘管VT分別在180°范圍內(nèi)全導(dǎo)通,線路電流大部分通過(guò)L ,整個(gè)TCSC呈現(xiàn)小電抗特性。
3) 容性微調(diào)模式。 VT導(dǎo)通角較小,整個(gè)TCSC的阻抗呈現(xiàn)大于C本身的容抗特性。
4) 感性微調(diào)模式。 VT的導(dǎo)通角較大,整個(gè)TCSC的阻抗呈現(xiàn)感性電抗特性。
通過(guò)其運(yùn)行模式可以看出,控制雙向晶閘管VT的導(dǎo)通角可以改變LC環(huán)路導(dǎo)通電流,從而可以連續(xù)快速調(diào)整TCSC阻抗值而達(dá)到其控制目的。
實(shí)驗(yàn)控制系統(tǒng)由上位主機(jī)和前置控制單元組成,上位機(jī)主要負(fù)責(zé)系統(tǒng)分析,控制算法的確定。 前置單元實(shí)現(xiàn)高速數(shù)據(jù)采集,AD轉(zhuǎn)換,與上位機(jī)快速傳遞數(shù)據(jù)及觸發(fā)可控硅等多項(xiàng)功能。
前置單元的需求分析
前置單元的在整個(gè)TCSC實(shí)驗(yàn)控制系統(tǒng)中主要完成以下3項(xiàng)工作。
和上位機(jī)的通訊
前置單元通過(guò)USB接口和上位機(jī)通訊。 這個(gè)功能是其它兩個(gè)功能的基礎(chǔ),要實(shí)現(xiàn)這一功能,需要設(shè)計(jì)設(shè)備端(前置單元)和主機(jī)端(上位機(jī))的USB 軟件,并定義上位機(jī)和前置單元間通訊的數(shù)據(jù)格式。
數(shù)據(jù)采集
前置單元要采集從電流(電壓)傳感器輸入的三相電流和三相電壓,共六路數(shù)據(jù)。當(dāng)上位機(jī)需要三相電流電壓數(shù)據(jù)時(shí),就發(fā)送命令給前置單元要求其開始采集數(shù)據(jù),并設(shè)定所需采樣的周期數(shù)。前置單元收到命令后立即開始數(shù)據(jù)采集,并通過(guò)USB把采集的數(shù)據(jù)按約定的格式送給主機(jī)。要實(shí)現(xiàn)六路采樣功能,前置單元必須具備采樣保持器、多路選擇器和AD轉(zhuǎn)換器。
數(shù)據(jù)采集的速度分析:因?yàn)樯衔粰C(jī)需要對(duì)電壓電流信號(hào)進(jìn)行高次諧波分析,所以數(shù)據(jù)采集的速度必須盡量快。S3C44B0X自帶的AD最高采樣頻率為100 kSPS(10μs一次) ,加上其多路選擇器的切換時(shí)間為15μs,實(shí)際的最快采樣速度為25 μs一次。這里選擇每0.2 ms對(duì)三相電壓和三相電流各采樣一次,即每33μs采樣一個(gè)數(shù)據(jù)。這樣每個(gè)周波可以采樣100 次,可以分析到5~7次諧波。
三相晶閘管的觸發(fā)控制
上位機(jī)計(jì)算出合適的晶閘管導(dǎo)通角并通過(guò)USB傳給前置單元,前置單元使用此導(dǎo)通角發(fā)出晶閘管觸發(fā)信號(hào)。要實(shí)現(xiàn)此功能,前置單元必須具有3路電壓過(guò)零監(jiān)測(cè)器和晶閘管觸發(fā)電路,如圖2所示。
硬件設(shè)計(jì)
前置單元硬件電路的核心部分采用51EDA和勤研公司聯(lián)合研制的44B0X開發(fā)板。 該開發(fā)板使用SAMSUMG S3C44B0X處理器,并集成了其它外部設(shè)備,主要包括2 MB16 位數(shù)據(jù)寬度的線性Flash( SST39VF160) , 10M TCP / IP 接口(RTL8019 ) , USBDevice接口( Philip s PD IUSBD12) ,LCD接口, 7路ADC輸入,兩路標(biāo)準(zhǔn)RS232接口等等。此外,根據(jù)課題需要在設(shè)計(jì)中還自行擴(kuò)展了過(guò)零檢測(cè)電路,采樣保持電路和可控硅觸發(fā)電路。
微處理器SAMSUNG S3C44B0X介紹
這是一款基于ARM7TDM I內(nèi)核的32位的高性能R ISC處理器。 支持16位Thumb和32位ARM雙指令集,尤其是在使用16位Thumb指令集時(shí)仍然享受arm處理器的32位的特性,如32位長(zhǎng)的寄存器, 32位的尋址空間等,并且得到更高密度代碼。 此外還集成很多外設(shè),包括8通道ADC,外部存儲(chǔ)器控制器, LCD控制器, 4通道DMA, 71個(gè)通用IO口,具有日歷功能的RTC時(shí)鐘, 5個(gè)PWM定時(shí)器,一個(gè)內(nèi)部定時(shí)器和一個(gè)看門狗定時(shí)器,片內(nèi)鎖相環(huán)( PLL)時(shí)鐘發(fā)生器(最高時(shí)鐘頻率66 MHz) , 2 通道異步串口,帶有16 字節(jié)F IFO, IIC、IIS總線控制器等等。
USB接口器件PD IUSBD12介紹
這是Philip s公司推出的一款應(yīng)用廣泛的USB 接口器件,符合USB1.1規(guī)范,集成SIE, F IFO存儲(chǔ)器,收發(fā)器以及電壓調(diào)整器,可與任何外部微控制器或微處理器實(shí)現(xiàn)高速并行接口(2 MB / s) ,完全DMA操作,主端點(diǎn)的雙緩沖配置增加了數(shù)據(jù)吞吐量并輕松實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)傳輸。
電壓過(guò)零檢測(cè)電路
電壓過(guò)零檢測(cè)電路由一個(gè)電橋,光電隔離及其它器件組成,共3組,兩個(gè)74HC14反向門用來(lái)將電壓整形為TTL電平,輸入到微處理器S3C44B0X外部中斷端,當(dāng)電力線電壓變?yōu)榱銜r(shí),光電隔離器中發(fā)光二極管截止,此時(shí)向中斷端輸出高電平脈沖引發(fā)中斷。
采樣保持電路
采樣保持器共6 路,其中3 路測(cè)電壓, 3 路測(cè)電流。采用LF398芯片,它有8個(gè)引腳, 1和4腳接電源,范圍為( ±5 ~ ±18) V之間, 3腳為輸入端,接電力線經(jīng)變壓后的電壓或經(jīng)電流互感器轉(zhuǎn)化的電壓, 2腳接1 kΩ電阻,用于調(diào)節(jié)漂移電壓。7腳接參考電壓, 8 腳接控制信號(hào),控制芯片的采樣保持狀態(tài)。在這里通過(guò)S3C44B0X的通用I/O 引腳GPF0-5 分別控制6 路采樣保持器的8腳。6腳外接保持電容,這里考慮到實(shí)時(shí)性的要求,因此選擇較小的電容值,取C1 = 0.001μF,此時(shí)采樣時(shí)間不超過(guò)10μs,同時(shí)可以滿足8位的采樣精度。[!--empirenews.page--]
晶閘管觸發(fā)電路
觸發(fā)電路共3 組分別接A, B, C三相,如圖3 所示,兩個(gè)74LS04反向門用來(lái)增加驅(qū)動(dòng)能力,輸入端接44B0X的通用IO 口GPE4-6引腳。脈沖變壓器N1 和N2一方面?zhèn)鬟f觸發(fā)脈沖,另一方面對(duì)強(qiáng)弱電之間起到很好的隔離作用。CPU 發(fā)出觸發(fā)脈沖信號(hào)之后,兩個(gè)反向可控硅的觸發(fā)端會(huì)同時(shí)有觸發(fā)信號(hào),但由于某一時(shí)刻加在兩個(gè)可控硅上的電壓只有一個(gè)滿足導(dǎo)通條件,故只有一個(gè)可控硅會(huì)導(dǎo)通。
軟件設(shè)計(jì)
前置單元的軟件要完成和上位機(jī)通訊、AD 采樣和晶閘管觸發(fā)3項(xiàng)功能。 其中AD采樣速率很高、晶閘管觸發(fā)實(shí)時(shí)性很強(qiáng),所以這兩項(xiàng)功能必須采用硬件定時(shí)器來(lái)保證其實(shí)時(shí)性,因此設(shè)計(jì)使用中斷服務(wù)程序( Interrup t Service Routine, ISR ) 來(lái)完成這兩項(xiàng)功能。USB驅(qū)動(dòng)程序由開發(fā)板附帶,通訊的功能主要通過(guò)μC /OS-Ⅱ中的任務(wù)來(lái)完成(當(dāng)然, USB 中斷處理也是必不可少的)。USB 任務(wù)和各ISR 之間的通訊通過(guò)μC /OS-Ⅱ的同步機(jī)制(信號(hào)量、消息隊(duì)列)和全局變量來(lái)完成。 所有軟件均是在ARM公司自己的開發(fā)環(huán)境ADS下實(shí)現(xiàn)的,ADS1。2有自己的C, C + +語(yǔ)言編譯器及庫(kù)文件,有GU I界面的調(diào)試器AXD和命令行界面的調(diào)試器armsd以及GU I界面的編輯器Code WarriorIDE,這為開發(fā)人員提供了極大的便利。 調(diào)試工具用的是JTAG仿真器, JTAG仿真器通過(guò)JTAG邊界掃描口與arm CPU核通信,屬于完全非插入式(即不使用片上資源)調(diào)試,它無(wú)需目標(biāo)存儲(chǔ)器,不占用目標(biāo)系統(tǒng)的任何端口,是目前采用最多的一種調(diào)試方式。
嵌入式實(shí)時(shí)操作系統(tǒng)μC /OS-II介紹
對(duì)于復(fù)雜的應(yīng)用,直接在裸機(jī)上開發(fā)運(yùn)行的前后臺(tái)系統(tǒng)開發(fā)、維護(hù)和擴(kuò)展都很困難,嵌入式操作系統(tǒng)應(yīng)運(yùn)而生,其最大的特點(diǎn)就是處理多任務(wù),而且在工控領(lǐng)域大多實(shí)時(shí)性要求較強(qiáng),而μC /OS-II迎合了這些特點(diǎn)。μC /OS-II支持64個(gè)任務(wù),每個(gè)任務(wù)的優(yōu)先級(jí)必須是不同的,調(diào)度算法總是讓處于就緒狀態(tài)的最高優(yōu)先級(jí)任務(wù)先執(zhí)行, 并提供了信號(hào)量( Semaphore) 、郵箱(Mailbox)和消息隊(duì)列(Message Queue)等多種通訊同步原語(yǔ)。每個(gè)任務(wù)都處在以下5種狀態(tài)之一的狀態(tài)下,這5種狀態(tài)是休眠態(tài)(Dormant) ,就緒態(tài)(Ready) 、運(yùn)行態(tài)(Running) 、掛起態(tài)(Waiting)和被中斷態(tài)( Interrup ted)。μC /OS-II中全部系統(tǒng)調(diào)用的執(zhí)行時(shí)間是可確定,其系統(tǒng)調(diào)用的執(zhí)行時(shí)間不依賴于應(yīng)用任務(wù)的多少,這也是其實(shí)時(shí)性的表現(xiàn)。
中斷服務(wù)程序( ISR)的設(shè)計(jì)
AD采樣和晶閘管觸發(fā)這兩項(xiàng)功能由中斷服務(wù)程序( ISR)來(lái)完成。根據(jù)μC /OS-Ⅱ要求, ISR開始時(shí)需調(diào)用OSIntEnter ( )函數(shù)通知μC /OS-Ⅱ系統(tǒng)進(jìn)入了ISR,ISR結(jié)束時(shí)需調(diào)用OSIntExit ( )函數(shù)通知μC /OS-Ⅱ進(jìn)行進(jìn)程調(diào)度。
AD采樣模塊有3 個(gè)ISR,分別是: 定時(shí)器4 ISR(產(chǎn)生周期性的采樣保持信號(hào)) ,定時(shí)器5 ISR (產(chǎn)生16μs的延遲,以符合S3C44B0X的多路選擇器對(duì)切換時(shí)間的要求) ,AD ISR (讀取AD采樣結(jié)果,并進(jìn)行相應(yīng)的操作)。系統(tǒng)必須在兩次Timer4中斷之間完成6次AD采樣工作。晶閘管觸發(fā)模塊有3組、每組2個(gè)ISR。每組的2個(gè)ISR分別為一個(gè)過(guò)零檢測(cè)ISR和一個(gè)定時(shí)器ISR,共同控制一相的晶閘管觸發(fā)。
μC /OS-II任務(wù)設(shè)計(jì)
前置單元通過(guò)PD IUSBD12 的Endpoint1 ( PacketSize = 16 B )接受上位機(jī)的命令,返回命令的執(zhí)行狀態(tài),通過(guò)PD IUSBD12的Endpoint2 ( Packet Size = 64 B)返回AD 采樣的結(jié)果。 這通過(guò)兩個(gè)函數(shù)TaskUsbEp1RxDone和TaskUsbEp2SendData 可以實(shí)現(xiàn), 同時(shí)通過(guò)TaskUsbSetupPacket函數(shù)來(lái)處理主機(jī)發(fā)來(lái)的請(qǐng)求。我們?cè)O(shè)置PD IUSBD12 的Endpoint1 ( Generic Endpoint) 工作在Interrup t 模式, Endpoint2 (Main Endpoint)工作在Bulk模式,則:
1) TaskUsbEp1RxDone
TaskUsbEp1RxDone為前置機(jī)接受上位機(jī)采樣或置觸發(fā)角的任務(wù),其工作流程下所示。
先用OSSemPend ( )等待上位機(jī)發(fā)送命令,若上位機(jī)發(fā)來(lái)的COMM_START_AD命令,則:
若TOTAL _ SAMPLE _ TIMES! = 0, 則通過(guò)Endpoint1返回錯(cuò)誤信息給上位機(jī),否則置AD_BUFF_P =0, TOTAL _ SAMPLE _ TIMES =所需采樣的周期數(shù)×100,開啟Timer4 (采樣保持定時(shí)器) ,通過(guò)Endpoint1返回成功信息給上位機(jī)。
若上位機(jī)發(fā)來(lái)的是COMM _SET_ANGLE命令則設(shè)置相應(yīng)的X_ANGLE變量,能過(guò)Endpoint1返回成功信息給上位機(jī)。
2) TaskUsbEp2SendData
TaskUsbEp2SendData任務(wù)的工作次序?yàn)橄鹊却鼳D ISR發(fā)送要求傳送數(shù)據(jù)的消息,消息發(fā)出后,在等待上次USB傳送結(jié)束,再通過(guò)Endpoint2發(fā)送緩沖區(qū)中的數(shù)據(jù)。
3) TaskUsbSetupPacket
TaskUsbSetupPacket任務(wù)工作次序?yàn)橄鹊却齋etupPacket事件,事件發(fā)生后再調(diào)用UsbControlHandler( )函數(shù)處理主機(jī)的請(qǐng)求。
軟件整體結(jié)構(gòu)
整體軟件結(jié)構(gòu)框圖如圖4所示(圖中矩形框代表中斷服務(wù)程序ISR,橢圓代表μC /OS-Ⅱ任務(wù)虛線框代表μC /OS-Ⅱ信號(hào)量或消息隊(duì)列)。
結(jié) 論
實(shí)驗(yàn)結(jié)果表明,實(shí)際系統(tǒng)數(shù)據(jù)采集速度與設(shè)計(jì)時(shí)預(yù)期的結(jié)果基本一致,印證了現(xiàn)階段結(jié)合數(shù)據(jù)采集、AD轉(zhuǎn)換、數(shù)據(jù)傳輸及其它功能模塊如過(guò)零檢測(cè)、觸發(fā)可控硅等諸多任務(wù)于一體的復(fù)雜系統(tǒng),必須有功能強(qiáng)大的硬件資源平臺(tái)做支撐;在多任務(wù)、實(shí)時(shí)性較強(qiáng)的場(chǎng)合,嵌入式實(shí)時(shí)操作系統(tǒng)是必不可少的;在數(shù)據(jù)傳輸方面,USB在速度方面的優(yōu)勢(shì)比傳統(tǒng)的RS232更能滿足TCSC實(shí)時(shí)控制的要求。