• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Scilab/Linux RTAI的探空火箭半實(shí)物仿真平臺研究①

    2020-11-13 07:15:44李勇波崔建鵬
    固體火箭技術(shù) 2020年5期
    關(guān)鍵詞:驅(qū)動(dòng)程序實(shí)時(shí)性內(nèi)核

    李勇波,潘 濤,崔建鵬,張 輝

    (中國航天科技集團(tuán)有限公司四院四十一所,西安 710025)

    0 引言

    半實(shí)物仿真,又稱“硬件在環(huán)仿真”,是指將實(shí)物部件引入仿真回路,取代相應(yīng)部分的數(shù)學(xué)模型,降低了建模難度,也克服了干擾因素的影響。半實(shí)物仿真技術(shù)是在二戰(zhàn)后逐漸發(fā)展起來的,它結(jié)合了數(shù)字仿真的靈活性和物理仿真的精確性,以成本低、見效快、可信度高的優(yōu)勢[1],廣泛應(yīng)用于航空航天、控制系統(tǒng)、武器系統(tǒng)等領(lǐng)域。

    目前,國內(nèi)外主流的半實(shí)物仿真平臺[2-7]主要有dSPACE、RT-LAB、RTX、xPCTarget等,它們都是利用商業(yè)軟件Matlab/Simulink進(jìn)行前端建模,在Windows系統(tǒng)下通過RTW自動(dòng)代碼生成技術(shù)將模型編譯為可在Vxworks/QNX等實(shí)時(shí)環(huán)境運(yùn)行的可執(zhí)行代碼。這些平臺固然性能強(qiáng)大、接口豐富、穩(wěn)定性高,但存在著源代碼封閉、定制性不強(qiáng)、核心功能更改難度大、軟件升級成本高等不足。近年來,Linux系統(tǒng)發(fā)展迅速,其擁有開放源碼、性能穩(wěn)定、內(nèi)核可裁剪等優(yōu)勢,但實(shí)時(shí)性不盡人意,不能直接用于半實(shí)物仿真,需要對其進(jìn)行實(shí)時(shí)化改進(jìn)。

    本文研究了在Linux系統(tǒng)下利用開源軟件Scilab/Xcos[8]進(jìn)行前端建模,采用雙內(nèi)核實(shí)時(shí)化方案搭建Linux RTAI[9]實(shí)時(shí)運(yùn)行環(huán)境,通過RTAI-LAB[10]將數(shù)學(xué)模型編譯為實(shí)時(shí)代碼,并下載到搭建好的Linux RTAI實(shí)時(shí)環(huán)境下運(yùn)行,完成某型探空火箭半實(shí)物仿真試驗(yàn)的技術(shù)方案。所用軟件均為開源軟件,源碼開放可修改且硬件成本低,降低了半實(shí)物仿真平臺開發(fā)成本,滿足半實(shí)物仿真試驗(yàn)的實(shí)時(shí)性和可靠性要求,且二次開發(fā)性強(qiáng),不局限于某一種彈箭。

    1 半實(shí)物仿真系統(tǒng)方案

    基于Scilab/Linux RTAI的某型探空火箭半實(shí)物仿真系統(tǒng)結(jié)構(gòu)如圖1所示,包含綜控計(jì)算機(jī)、仿真計(jì)算機(jī)、接口計(jì)算機(jī)、仿真設(shè)備、VMIC光纖反射內(nèi)存實(shí)時(shí)網(wǎng)絡(luò)、參試實(shí)物部件等,主要部件功能如下:綜控計(jì)算機(jī)是整個(gè)仿真系統(tǒng)的控制中心,負(fù)責(zé)仿真節(jié)點(diǎn)資源配置、狀態(tài)監(jiān)控和數(shù)據(jù)存儲,及試驗(yàn)后數(shù)據(jù)分析。

    圖1 基于Scilab/Linux RTAI的探空火箭半實(shí)物仿真系統(tǒng)結(jié)構(gòu)

    仿真計(jì)算機(jī)是本文研究的重點(diǎn),采用上下層結(jié)構(gòu),上層的Scilab/Xcos軟件和Xrtailab軟件運(yùn)行于Linux環(huán)境,分別負(fù)責(zé)模型的建立和變量監(jiān)控、參數(shù)在線調(diào)整;根據(jù)仿真模型自動(dòng)生成的實(shí)時(shí)代碼運(yùn)行于下層Linux RTAI實(shí)時(shí)環(huán)境,主要負(fù)責(zé)火箭仿真模型的實(shí)時(shí)解算及分離信號輸出、舵機(jī)反饋信號采集、時(shí)序信號采集等實(shí)時(shí)I/O處理。

    接口計(jì)算機(jī)負(fù)責(zé)參試實(shí)物部件的非實(shí)時(shí)信號及CAN總線、串口通信流信號處理,如模擬測發(fā)控、仿真數(shù)據(jù)注入、遙測信息解析等,并通過VMIC網(wǎng)絡(luò)實(shí)現(xiàn)仿真模型與參試部件的信息交互。

    仿真設(shè)備包括三軸轉(zhuǎn)臺、五軸轉(zhuǎn)臺、舵機(jī)負(fù)載臺等,負(fù)責(zé)通過VMIC網(wǎng)絡(luò)讀取火箭仿真模型實(shí)時(shí)解算結(jié)果,為火箭測量裝置和執(zhí)行機(jī)構(gòu)提供真實(shí)物理環(huán)境。

    VMIC光纖反射內(nèi)存網(wǎng)絡(luò)負(fù)責(zé)實(shí)現(xiàn)綜控計(jì)算機(jī)、仿真計(jì)算機(jī)、接口計(jì)算機(jī)和仿真設(shè)備之間的信息交互,具有通信時(shí)延小、共享內(nèi)存空間大、傳輸速率高、抗干擾性強(qiáng)的特點(diǎn)。

    參試實(shí)物部件主要有舵機(jī)、飛控計(jì)算機(jī)、慣性測量組件、GPS等。

    2 仿真平臺設(shè)計(jì)方案

    為減少各節(jié)點(diǎn)數(shù)據(jù)丟失,本文采用Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境+VMIC網(wǎng)絡(luò)傳輸模式,VMIC的傳輸延遲小于700 ns,遠(yuǎn)小于仿真步長1 ms,最大程度減少了數(shù)據(jù)丟失。

    2.1 仿真建模環(huán)境

    CACSD(Computer Aided Control System Design)軟件采用Scilab/Xcos,Scilab是一種由法國學(xué)者開發(fā)的類似于Matlab的開源軟件,Xcos是Scilab的一個(gè)工具箱,是Simulink等進(jìn)行圖形化動(dòng)態(tài)系統(tǒng)建模與仿真的唯一開源代替軟件。半實(shí)物仿真是Xcos在模塊開發(fā)和代碼生成的主要應(yīng)用,可通過為接口控制和測量裝置創(chuàng)建特殊的Xcos模塊以進(jìn)行半實(shí)物仿真。用戶可自行開發(fā)所需模塊并加載到Xcos模塊庫或下載互聯(lián)網(wǎng)其他用戶的共享模塊。

    2.2 RTAI自動(dòng)化代碼生成技術(shù)

    RTAI(Real-time application interface)是一套用來寫實(shí)時(shí)應(yīng)用程序的系統(tǒng)界面。RTAI-LAB是以RTAI為基礎(chǔ)開發(fā)的一套開源實(shí)時(shí)控制系統(tǒng)工具鏈,提供了RTAI和數(shù)據(jù)采集卡的接口。

    根據(jù)接口模塊的特性自定義RTAI接口模塊;將模塊拖放到利用Scilab/Xcos建立的火箭數(shù)學(xué)仿真模型中,利用RTAI-LAB將模型編譯成可在Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境執(zhí)行的實(shí)時(shí)代碼,這些代碼相當(dāng)于實(shí)時(shí)運(yùn)行環(huán)境的一個(gè)實(shí)時(shí)任務(wù),原理如圖2所示。

    圖2 仿真計(jì)算機(jī)結(jié)構(gòu)及原理

    2.3 Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境

    由于仿真過程中有實(shí)物接入仿真回路,故仿真時(shí)鐘必須與真實(shí)物理時(shí)鐘同步,為此需要構(gòu)建Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境。

    2.3.1 雙內(nèi)核實(shí)時(shí)化方案

    雙內(nèi)核實(shí)時(shí)化方案即在普通Linux系統(tǒng)的最底層增加一層RTAI實(shí)時(shí)核心,實(shí)質(zhì)是把Linux內(nèi)核當(dāng)作一個(gè)運(yùn)行在RTAI內(nèi)核的普通進(jìn)程,其軟件架構(gòu)如圖3所示。通過Adeos[11]來建立RTAI和Linux的硬件共享環(huán)境,Adeos是在底層硬件與操作系統(tǒng)之間插入的Linux內(nèi)核補(bǔ)丁。

    圖3 Linux RTAI軟件架構(gòu)

    在Linux RTAI軟件架構(gòu)中,RTAI是Adeos的上層域,作為根域的Linux優(yōu)先級低于RTAI,故當(dāng)有實(shí)時(shí)任務(wù)產(chǎn)生時(shí),Adeos先調(diào)度RTAI處理該任務(wù),Linux根域僅在RTAI沒有實(shí)時(shí)任務(wù)或中斷需要處理時(shí)才會發(fā)生,從而保障Linux RTAI雙核實(shí)時(shí)運(yùn)行環(huán)境的實(shí)時(shí)性。

    2.3.2 Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境的搭建

    搭建Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境的具體步驟如下:

    (1)準(zhǔn)備工作

    下載Scilab 5.5.2版本,RTAI 5.2版本,對RTAI內(nèi)核進(jìn)行解壓,查看其所支持的Linux Kernel版本并在官網(wǎng)下載,本文選用的Linux Kernel版本為4.9.135。

    (2)雙內(nèi)核法建立Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境

    主要包括6步,分別是解壓Linux內(nèi)核、給Linux內(nèi)核打補(bǔ)丁、配置Linux內(nèi)核、編譯安裝Linux內(nèi)核、配置安裝RTAI、安裝RTAI-Lab相關(guān)插件。關(guān)鍵代碼為:

    # tar-jxvf linux-4.9.135.tar.gz

    # make mrproper

    # cd/usr/src/linux-4.9.135

    # patch-Npl

    # make menuconfig

    # make-j4

    # make install

    # make modules_install

    (3)實(shí)時(shí)運(yùn)行環(huán)境的測試

    采用testsuite工具測試所搭建實(shí)時(shí)環(huán)境的內(nèi)核空間的中斷延遲時(shí)間、調(diào)度器延遲時(shí)間、調(diào)度器運(yùn)行延遲時(shí)間等實(shí)時(shí)性指標(biāo)[12],如表1所示。

    由表1可知,搭建的Linux RTAI雙核實(shí)時(shí)環(huán)境的最大時(shí)延為17 μs左右,遠(yuǎn)小于普通Linux系統(tǒng)的28 ms[13],降低了3個(gè)數(shù)量級,相比Vxworks和Xenomai 也有所縮短,可滿足實(shí)時(shí)仿真的需求。

    表1 Linux RTAI實(shí)時(shí)運(yùn)行環(huán)境實(shí)時(shí)性測試

    2.4 實(shí)時(shí)接口技術(shù)

    本節(jié)開發(fā)了VMIC的實(shí)時(shí)驅(qū)動(dòng)程序和實(shí)時(shí)接口模塊,實(shí)時(shí)驅(qū)動(dòng)程序用于滿足模型與實(shí)物間通信對驅(qū)動(dòng)實(shí)時(shí)性的要求,實(shí)時(shí)接口模塊用于VMIC和數(shù)學(xué)模型之間的通信[14]。

    2.4.1 驅(qū)動(dòng)程序和接口模塊在系統(tǒng)中的作用

    由于普通Linux驅(qū)動(dòng)的實(shí)時(shí)性較差,故自行開發(fā)了RTAI下的VMIC驅(qū)動(dòng)程序,VMIC驅(qū)動(dòng)程序運(yùn)行于Linux RTAI實(shí)時(shí)環(huán)境;RTAI自帶的RTAI-lib模塊庫可分為兩類,一類是Scilab realtime lib庫,如可在實(shí)時(shí)環(huán)境下運(yùn)行的增益模塊gain模塊等;另一類是RTAI realtime lib庫,如示波器模塊rtai_scope等,但缺少VMIC反射內(nèi)存卡與模型通信的模塊,故自行開發(fā)了VMIC實(shí)時(shí)接口模塊。二者在系統(tǒng)中的位置見圖4。

    圖4 驅(qū)動(dòng)程序和實(shí)時(shí)接口模塊在系統(tǒng)中的作用

    2.4.2 VMIC驅(qū)動(dòng)程序的開發(fā)

    驅(qū)動(dòng)程序包括頭文件和主程序,頭文件中聲明了驅(qū)動(dòng)程序用到的重要變量,加載了主函數(shù)調(diào)用的動(dòng)態(tài)模塊庫等。本文主要定義了3個(gè)頭文件:(1)rtvmic.h:包括數(shù)據(jù)偏移量offset、數(shù)據(jù)長度length及緩沖區(qū)buffer;(2)rtvmic_driver.h:定義了變量的數(shù)據(jù)類型及rtvmic設(shè)備信息的結(jié)構(gòu)體等;(3)rtvmic_5565_pci.h:VMIC卡節(jié)點(diǎn)的最大最小地址、DMA通道、擴(kuò)展地址、擴(kuò)展中斷等。

    與用戶訪問內(nèi)存不同,訪問VMIC卡分兩步,第一步是在Linux層,從PCI總線上尋找VMIC設(shè)備,通過編寫rt_vmic_5565_pci.c( )函數(shù)來實(shí)現(xiàn);第二步是讀取設(shè)備信息,進(jìn)行RTAI層面的配置,通過編寫rtvmic_driver.c( )函數(shù)來實(shí)現(xiàn)。

    (1)rt_vmic_5565_pci.c:定義了靜態(tài)結(jié)構(gòu)體變量rt_ge_5565_pci_table{ }描述VMIC設(shè)備信息,定義了GetPciSpaceSize( )函數(shù)尋找PCI總線空間大小,定義了rt_ge_5565_pci_probe( )函數(shù)讀取VMIC板上的PCI物理地址及寄存器狀態(tài);定義了rt_ge_5565_pci_remove( )函數(shù)清除內(nèi)存的數(shù)據(jù)。

    (2)rtvmic_driver.c:包括5個(gè)函數(shù),分別是rt_vmic_open( )函數(shù)用于打開VMIC設(shè)備;rt_vmic_init( )函數(shù)用于初始化驅(qū)動(dòng);rt_vmic_ioctrl( )函數(shù)用于控制I/O信號流,寫入是將信號流寫入buffer中,讀取是從buffer中讀取信號流;rt_vmic_exit( )函數(shù)用于退出驅(qū)動(dòng);rt_vmic_close( )用于關(guān)閉設(shè)備。

    2.4.3 VMIC實(shí)時(shí)接口模塊的開發(fā)

    實(shí)時(shí)接口模塊是Xcos模型的一部分,通過設(shè)備文件實(shí)現(xiàn)用戶空間與內(nèi)核空間的通信。自定義接口模塊包括自定義接口函數(shù)和自定義計(jì)算函數(shù)。

    接口函數(shù)作為用戶空間與Scilab的交互界面,用于處理用戶接口,指定模塊外觀與類型、數(shù)據(jù)和事件的輸入輸出個(gè)數(shù)等,必須用Scilab語言編寫,返回值依賴于輸入標(biāo)記job,以VMIC-PCI5565讀操作為例,其接口函數(shù)格式如下:

    function[x,y,typ]=vmic_read_pci5565(job,arg1,arg2)

    計(jì)算函數(shù)定義了模塊在仿真過程中的行為,以不同的方式被Xcos調(diào)用,主要包括初始化(flag=4)、輸出更新(flag=1)、結(jié)束(flag=5)等,flag標(biāo)記了計(jì)算函數(shù)必須完成的任務(wù)。采用C語言編寫,以VMIC-PCI5565讀操作為例,主函數(shù)中定義了init函數(shù)、inout函數(shù)、end函數(shù)。計(jì)算函數(shù)格式如下:

    #include“scicos_block.h”

    #include “rtmain.h”

    void vmic_read_pci5565(scicos block *block, int flag) init(block); inout(block); end(block); }

    接口函數(shù)和計(jì)算函數(shù)定義完畢后,將其封裝成模塊,如圖5所示。當(dāng)模型運(yùn)行時(shí),實(shí)時(shí)接口模塊調(diào)用RTAI下VMIC驅(qū)動(dòng)程序,當(dāng)加載VMIC的驅(qū)動(dòng)程序與設(shè)備文件關(guān)聯(lián)后,接口模塊就可以通過此設(shè)備文件對VMIC反射內(nèi)存卡進(jìn)行操作。

    圖5 自定義VMCI-PCI5565接口模塊

    2.5 節(jié)點(diǎn)同步方式和同步精度

    由綜控計(jì)算機(jī)負(fù)責(zé)更新全局時(shí)鐘,仿真計(jì)算機(jī)、仿真設(shè)備等節(jié)點(diǎn)在每個(gè)定時(shí)周期內(nèi)讀全局時(shí)鐘,并以此更新各節(jié)點(diǎn)時(shí)鐘。仿真初始化時(shí),全局時(shí)鐘和各節(jié)點(diǎn)時(shí)鐘均置零;仿真開始后,全局時(shí)鐘由綜控計(jì)算機(jī)累加仿真步長,節(jié)點(diǎn)時(shí)鐘檢測到全局時(shí)鐘不為零時(shí)就開始累計(jì)仿真步長;由綜控計(jì)算機(jī)進(jìn)行判斷,當(dāng)每100 s全局時(shí)鐘和節(jié)點(diǎn)時(shí)鐘相差大于2 ms時(shí),停止仿真。

    2.6 仿真模型監(jiān)控

    在RTAI的另一個(gè)工具包Xrtailab中利用RTAI-LAB提供的RTAI-SCOPE等變量監(jiān)視模塊,對仿真模型進(jìn)行可視化監(jiān)控和在線調(diào)參,如圖6所示。建模主機(jī)和目標(biāo)機(jī)在同一仿真計(jì)算機(jī)上,故Xrtailab與目標(biāo)機(jī)的通信方式采用本地通信。

    圖6 Xrtailab監(jiān)控界面

    2.7 硬件方案

    考慮到計(jì)算性能和速度及I/O接口的擴(kuò)展能力,仿真計(jì)算機(jī)采用研華工控機(jī),四核,主頻2.5 GHz。仿真平臺提供4路模擬量采集輸入、1路開關(guān)信號采集、1路開關(guān)信號輸出和2路RS422串口通信接口。PCI數(shù)據(jù)采集卡采用NI-PCI6229,32通道16位最高100 kHz采樣,16路隔離DI和16路隔離DO;光纖反射內(nèi)存卡采用VMIC-PCI5565,內(nèi)存為256 M。

    3 半實(shí)物仿真試驗(yàn)與分析

    3.1 仿真平臺實(shí)時(shí)性能

    半實(shí)物仿真平臺的實(shí)時(shí)性直接影響仿真時(shí)序控制和仿真結(jié)果的置信度,實(shí)時(shí)性能參數(shù)有定時(shí)精度、單步仿真耗時(shí)和時(shí)鐘漂移量[15]。對本文搭建的平臺進(jìn)行實(shí)時(shí)性測試,得到實(shí)時(shí)性能參數(shù)如圖7所示。

    ( Simulation step size

    由圖7可見,僅有小概率出現(xiàn)的幾次單個(gè)仿真步長大于1 ms且不超過1.05 ms;單步仿真耗時(shí)不超過0.2 ms,相比文獻(xiàn)[15]的0.35 ms有所縮短,嚴(yán)格小于設(shè)定的1 ms;時(shí)鐘漂移最大為25 μs,偏差率滿足要求。以上3個(gè)實(shí)時(shí)性能參數(shù)表明本文設(shè)計(jì)的半實(shí)物仿真平臺可以滿足仿真步長為1 ms的半實(shí)物仿真的實(shí)時(shí)性要求,實(shí)時(shí)性良好。

    3.2 仿真結(jié)果

    分別利用本文設(shè)計(jì)的半實(shí)物仿真平臺和現(xiàn)有的Simulink/RT-LAB半實(shí)物仿真平臺對同一型號探空火箭進(jìn)行半實(shí)物仿真試驗(yàn),仿真結(jié)果對比曲線見圖8。

    由圖8可見,該仿真平臺的半實(shí)物仿真結(jié)果與Simulink/RT-LAB仿真平臺下的仿真結(jié)果一致性很好,驗(yàn)證了所搭建的半實(shí)物仿真平臺的可靠性和穩(wěn)定性。

    ( Range and altitude

    4 結(jié)論

    (1)為保證整個(gè)半實(shí)物仿真平臺的實(shí)時(shí)性,采用雙內(nèi)核實(shí)時(shí)化方案搭建了Linux RTAI雙核實(shí)時(shí)運(yùn)行環(huán)境作為實(shí)時(shí)代碼的運(yùn)行環(huán)境,并測試了其實(shí)時(shí)性能,結(jié)果表明其最大時(shí)延相比普通Linux系統(tǒng)降低了三個(gè)數(shù)量級。

    (2)為保證硬件設(shè)備與模型實(shí)時(shí)信息交流的實(shí)時(shí)性,開發(fā)了VMIC-PCI5565的驅(qū)動(dòng)程序和實(shí)時(shí)接口模塊,實(shí)現(xiàn)了外部硬件和內(nèi)部模型的實(shí)時(shí)交互。

    (3)測試了整個(gè)半實(shí)物仿真系統(tǒng)的實(shí)時(shí)性,實(shí)時(shí)性相對其他平臺有所提升;成功進(jìn)行了某型探空火箭的半實(shí)物仿真試驗(yàn),仿真結(jié)果相比Simulink/RT-LAB平臺一致性很好。

    本文搭建的半實(shí)物仿真平臺主要有以下優(yōu)勢和特點(diǎn):(1)實(shí)時(shí)性有所提升,單步仿真耗時(shí)不超過0.2 ms;(2)所用軟件均為開源軟件,擴(kuò)展性強(qiáng)、源代碼開放可修改、開發(fā)成本低;(3)有良好的二次開發(fā)能力,針對但不局限于某一種彈箭,可利用RTAI開源特性,開發(fā)相關(guān)實(shí)時(shí)接口模塊和驅(qū)動(dòng)程序,添加相應(yīng)支持模塊即可擴(kuò)展仿真平臺的應(yīng)用范圍??蔀榛鸺?dǎo)彈的半實(shí)物仿真試驗(yàn)提供一種新平臺,對火箭、導(dǎo)彈的研制和試驗(yàn)有重要的價(jià)值。

    猜你喜歡
    驅(qū)動(dòng)程序實(shí)時(shí)性內(nèi)核
    萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
    強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
    基于規(guī)則實(shí)時(shí)性的端云動(dòng)態(tài)分配方法研究
    基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
    Linux內(nèi)核mmap保護(hù)機(jī)制研究
    基于虛擬局域網(wǎng)的智能變電站通信網(wǎng)絡(luò)實(shí)時(shí)性仿真
    航空電子AFDX與AVB傳輸實(shí)時(shí)性抗干擾對比
    一種車載Profibus總線系統(tǒng)的實(shí)時(shí)性分析
    驅(qū)動(dòng)程序更新與推薦
    驅(qū)動(dòng)程序更新與推薦
    新乐市| 郁南县| 和顺县| 绥宁县| 洛南县| 桦川县| 菏泽市| 彝良县| 班戈县| 自贡市| 巴里| 宜城市| 宝兴县| 双城市| 古田县| 桐庐县| 通海县| 阳山县| 五大连池市| 泾源县| 上高县| 禄劝| 泌阳县| 靖江市| 田东县| 凌源市| 探索| 天峻县| 漳平市| 丹东市| 绥阳县| 咸丰县| 梁平县| 水城县| 共和县| 渭南市| 延安市| 淮阳县| 资溪县| 古交市| 绥江县|