直流無(wú)刷電機(jī)控制綜合實(shí)驗(yàn)_第1頁(yè)
直流無(wú)刷電機(jī)控制綜合實(shí)驗(yàn)_第2頁(yè)
直流無(wú)刷電機(jī)控制綜合實(shí)驗(yàn)_第3頁(yè)
直流無(wú)刷電機(jī)控制綜合實(shí)驗(yàn)_第4頁(yè)
直流無(wú)刷電機(jī)控制綜合實(shí)驗(yàn)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(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)介

1、東南大學(xué)自動(dòng)化學(xué)院實(shí) 驗(yàn) 報(bào) 告課程名稱: DSP原理及C程序開(kāi)發(fā) 實(shí)驗(yàn)名稱: 直流無(wú)刷電機(jī)控制綜合實(shí)驗(yàn) 院 (系): 自動(dòng)化學(xué)院 專 業(yè): 自動(dòng)化 姓 名: 楊明亮 學(xué) 號(hào): 08009117 實(shí) 驗(yàn) 室: 實(shí)驗(yàn)組別: 同組人員: 實(shí)驗(yàn)時(shí)間:2012 年 5 月 20 日評(píng)定成績(jī): 審閱教師: 直流無(wú)刷電機(jī)綜合控制實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康睦肍28335核心板與ICETEK-MOTOR-E運(yùn)動(dòng)控制板,實(shí)現(xiàn)直流無(wú)刷電機(jī)的驅(qū)動(dòng)與轉(zhuǎn)速控制,利用小鍵盤或電位器對(duì)直流無(wú)刷電機(jī)進(jìn)行轉(zhuǎn)速調(diào)節(jié),并利用液晶屏顯示轉(zhuǎn)速等狀態(tài)信息。二、實(shí)驗(yàn)要求1. 基本功能掌握F28335核心板與ICETEK-MOTOR-E運(yùn)動(dòng)控制板的

2、使用方法,接線正確,能捕獲并證實(shí)霍爾傳感器狀態(tài)變化規(guī)律(表1);能正確總結(jié)出正/反轉(zhuǎn)控制表(表2),從而控制電機(jī)正轉(zhuǎn)/反轉(zhuǎn);能通過(guò)修改占空比,用示波器觀察pwm口輸出波形的變化。2. 提高功能能通過(guò)閱讀學(xué)習(xí)“ICETEK-Motor-E使用說(shuō)明書.pdf”,發(fā)現(xiàn)ICETEK-MOTOR-E運(yùn)動(dòng)控制板中的電位器信號(hào),編制程序從DSP相應(yīng)的ADC輸入端口采集該電位器信號(hào),能用CCS圖形顯示AD變換結(jié)果曲線;能編制程序,利用AD變換結(jié)果調(diào)節(jié)PWM占空比,從而對(duì)直流無(wú)刷電機(jī)進(jìn)行調(diào)速;能設(shè)計(jì)基本的人機(jī)接口軟件,即編制程序,利用小鍵盤進(jìn)行正轉(zhuǎn)、反轉(zhuǎn)、停止功能選擇,利用液晶屏顯示(示意)正轉(zhuǎn)、反轉(zhuǎn)、停止等狀

3、態(tài)信息,并可自行擴(kuò)展其它輔助功能。三、實(shí)驗(yàn)原理1直流無(wú)刷電動(dòng)機(jī) ICETEK-F2812-BCM實(shí)驗(yàn)箱采用的直流無(wú)刷電機(jī)是三相方波控制型直流無(wú)刷電機(jī)(BLDCM),如果按照一定順序給電機(jī)的各相通入方波即可使電機(jī)轉(zhuǎn)動(dòng),轉(zhuǎn)動(dòng)的速度及力矩與通入電機(jī)定子繞組的電壓、電流成正比關(guān)系。2. 電機(jī)驅(qū)動(dòng)與控制通過(guò)ICETEK-F2812-BCM實(shí)驗(yàn)箱,ICETEK-F2812-A板與電機(jī)驅(qū)動(dòng)板及直流無(wú)刷電機(jī)連接,通過(guò)編程,TMS320F2812輸出的控制信號(hào)能夠控制電機(jī)轉(zhuǎn)動(dòng)。具體控制信號(hào)連接如下所示:電機(jī)驅(qū)動(dòng)模塊的內(nèi)部結(jié)構(gòu)如下所示: 各PWM管腳按如下順序完成信號(hào)的輸出可使電機(jī)轉(zhuǎn)動(dòng): 其中,PWM代表輸出一定

4、占空比的PWM波,0常關(guān)或強(qiáng)制低,1常開(kāi)或強(qiáng)制高。PhaseA、PhaseB和PhaseC的相應(yīng)輸出為: PWM1-6控制:如果要電機(jī)轉(zhuǎn)動(dòng)則連接電機(jī)的PhaseA、PhaseB和PhaseC的輸出需要滿足上面圖2-2給出的波形,每相電壓在±24V之間變動(dòng)并滿足上述時(shí)序關(guān)系。而要實(shí)現(xiàn)這一輸出,需要在PWM1-6管腳上輸出滿足上面圖描述的波形和時(shí)序關(guān)系。3. D4、D5、D6的變化順序決定電機(jī)正反轉(zhuǎn)。D6 D5 D4 正轉(zhuǎn)(俯視電機(jī)主軸,順時(shí)針轉(zhuǎn)動(dòng))1 0 01 0 10 0 10 1 10 1 01 1 0D6 D5 D4 反轉(zhuǎn)(俯視電機(jī)主軸,逆時(shí)針轉(zhuǎn)動(dòng))1 0 01 1 00 1 0

5、0 1 10 0 11 0 1轉(zhuǎn)速控制:如上所述,電機(jī)轉(zhuǎn)動(dòng)需要安裝一定頻率送狀態(tài)0-5控制字,而送電機(jī)控制信號(hào)的速度(頻率)則在一定程度上決定了電機(jī)轉(zhuǎn)速,0-5各狀態(tài)切換得快,則電機(jī)可以快些運(yùn)行。但還有一個(gè)因素,即送電機(jī)輸出的電流,送給電機(jī)定子的三相繞組的電流直接決定了電機(jī)轉(zhuǎn)子能產(chǎn)生多大的轉(zhuǎn)矩。當(dāng)控制狀態(tài)由一種切換到下一種時(shí),電流發(fā)生的力矩是否能讓轉(zhuǎn)子轉(zhuǎn)動(dòng)到位,這決定了電機(jī)在下一個(gè)狀態(tài)電流到來(lái)時(shí)是否能順利轉(zhuǎn)動(dòng)下去。如果電流弱,不足以使轉(zhuǎn)子轉(zhuǎn)動(dòng)到位,電機(jī)將“失步”或根本無(wú)法轉(zhuǎn)動(dòng);如果電流過(guò)大,在下一個(gè)狀態(tài)到來(lái)前早就到位,電機(jī)轉(zhuǎn)子將在當(dāng)前電流控制下在此位置“剎車”,如果在慣性的驅(qū)動(dòng)下稍微轉(zhuǎn)動(dòng)過(guò)位時(shí)

6、,就會(huì)反向轉(zhuǎn)回來(lái),導(dǎo)致電機(jī)轉(zhuǎn)子在運(yùn)行時(shí)會(huì)產(chǎn)生不同程度的震動(dòng),甚至電機(jī)繞組發(fā)熱。由此,我們需要選擇好電機(jī)狀態(tài)切換的頻率,也要控制好送電機(jī)驅(qū)動(dòng)信號(hào)的電流大小,亦即控制好切換PWM控制字的頻率。四、實(shí)驗(yàn)內(nèi)容及結(jié)果1、插好電機(jī)驅(qū)動(dòng)板,連接好霍爾傳感器接頭,先不連接驅(qū)動(dòng)電源和電機(jī)的abc三項(xiàng)電源,給dsp試驗(yàn)板上電,則霍爾傳感器即可工作。手動(dòng)轉(zhuǎn)動(dòng)電機(jī),電機(jī)不加電,觀察正轉(zhuǎn)和反轉(zhuǎn)時(shí)指示燈D4、D5、D6等的變化順序。(1) 先進(jìn)行霍爾傳感器的狀態(tài)讀入測(cè)試,在工程管理器的include下面找到build.h文件,將編譯開(kāi)關(guān)#define BUILDLEVEL LEVEL? 的設(shè)置設(shè)為L(zhǎng)EVEL0,然后編譯程

7、序、運(yùn)行程序測(cè)試。注意在中斷服務(wù)程序的LEVEL0處理分支下,使用變量nNowStatus給pwm指針賦值。程序生成PWM的原理參見(jiàn)“準(zhǔn)備實(shí)驗(yàn)2”: pwm1.CmtnPointer = nNowStatus;/0-5 pwm1.DutyFunc = (int16)rmp2.Out; pwm1.update(&pwm1);在變量觀察窗口中改變nNowStatus的值(0-5之間),在變量觀察窗口里觀察變量hallcap的變化。觀察指示燈的狀態(tài)和hallcap的數(shù)值的變化對(duì)應(yīng)關(guān)系,總結(jié)出指示燈和霍爾傳感器讀入的狀態(tài)的對(duì)應(yīng)關(guān)系,然后總結(jié)出正轉(zhuǎn)hallcap的變化順序,和反轉(zhuǎn)時(shí)的變化順序。D

8、6 D5 D4 正轉(zhuǎn)(俯視電機(jī)主軸,順時(shí)針轉(zhuǎn)動(dòng))1 0 01 0 10 0 10 1 10 1 01 1 0D6 D5 D4 反轉(zhuǎn)(俯視電機(jī)主軸,逆時(shí)針轉(zhuǎn)動(dòng))1 0 01 1 00 1 00 1 10 0 11 0 1(2) 總結(jié)對(duì)應(yīng)關(guān)系填寫下表, :俯視電機(jī)主軸,順時(shí)針轉(zhuǎn)動(dòng). (D6D4燈亮為1,滅為0)表1 正轉(zhuǎn)關(guān)系nNowStatusHallcap對(duì)應(yīng)捕獲端口數(shù)據(jù)D6D5D40410015101210013301142010561102. 根據(jù)捕獲狀態(tài)驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn)(1)目的:在程序中添加內(nèi)容完成使電機(jī)正/反方向轉(zhuǎn)動(dòng)。(2)分析:根據(jù)實(shí)驗(yàn)原理,我們只需要控制送給PWM波形發(fā)生模塊pwm1的

9、狀態(tài)輸入順序即可改變電機(jī)轉(zhuǎn)動(dòng)方向。根據(jù)準(zhǔn)備實(shí)驗(yàn)1中總結(jié)出的正反轉(zhuǎn)順序可知,如果當(dāng)前電機(jī)鎖定狀態(tài)為5狀態(tài),欲正轉(zhuǎn),則電機(jī)須鎖定到1狀態(tài),所以pwm.Cmtnpointer賦值為2,若想反轉(zhuǎn),則電機(jī)須鎖定到4狀態(tài),所以pwm指針賦值為0。因此得出正反轉(zhuǎn)數(shù)組下標(biāo)(下標(biāo)為當(dāng)前霍爾傳感器讀入狀態(tài),數(shù)組值為向下一狀態(tài)轉(zhuǎn)動(dòng)pwm所賦數(shù)值),與pwm指針對(duì)應(yīng)數(shù)組為:表2 正/反轉(zhuǎn)控制表轉(zhuǎn)向正反正反正反正反正反正反霍爾狀態(tài)123456Pwm指針410352253014(3)修改程序: 以上表為參考修改BLDCMControl.c程序中的相關(guān)變量定義:Uint16 fanzhuan6=1,3,2,5,0,4; U

10、int16 zhengzhuan6=4,0,5,2,3,1; /注意BLDCMControl.c中的代碼,并嘗試讓電機(jī)反轉(zhuǎn)。 nISRWork1=(int16)hall1.HallGpio; bISRWork=( nISRWork1>0 && nISRWork1<7 )?(1):(0); if ( bISRWork ) nNowStatus=zhengzhuannISRWork1-1;/正轉(zhuǎn)nNowStatus=fanzhuannISRWork1-1;/反轉(zhuǎn) /補(bǔ)充代碼,以nISRWork1為索引,查找表zhengzhuan或fanzhuan,并將值賦給nNowSt

11、atus 3. 能通過(guò)修改PWM的周期,即改變pwm1.DutyFunc的值來(lái)調(diào)速,并用示波器觀察pwm口輸出波形的變化。4. 能通過(guò)閱讀學(xué)習(xí)“ICETEK-Motor-E使用說(shuō)明書.pdf”,發(fā)現(xiàn)ICETEK-MOTOR-E運(yùn)動(dòng)控制板中的電位器信號(hào),編制程序從DSP相應(yīng)的ADC輸入端口采集該電位器信號(hào),能用CCS圖形顯示AD變換結(jié)果曲線;5. 能編制程序,利用AD變換結(jié)果調(diào)節(jié)PWM占空比,從而對(duì)直流無(wú)刷電機(jī)進(jìn)行調(diào)速;6. 設(shè)計(jì)基本的人機(jī)接口軟件,即編制程序,利用小鍵盤進(jìn)行正轉(zhuǎn)、反轉(zhuǎn)、停止功能選擇,利用液晶屏顯示(示意)正轉(zhuǎn)、反轉(zhuǎn)、停止等狀態(tài)信息,并可自行擴(kuò)展其它輔助功能。按“1”電機(jī)正轉(zhuǎn),第

12、一行顯示速度值,第二行顯示狀態(tài),“1”表示正轉(zhuǎn)按“2”電機(jī)正轉(zhuǎn),第一行顯示速度值,第二行顯示狀態(tài),“2”表示反轉(zhuǎn)按“3”電機(jī)停轉(zhuǎn),第一行顯示速度值為,第二行顯示狀態(tài),“0”表示停轉(zhuǎn)五、實(shí)驗(yàn)程序主要代碼:1.main函數(shù)void main(void)/*#if (DSP_TARGET=F28335)InitSysCtrl(); InitXintf16Gpio(); EALLOW; SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1; EDIS; EALLOW; / This is needed to write to EALLOW protected registers

13、SysCtrlRegs.HISPCP.all = 0x0000; / SYSCLKOUT/1 EDIS; / This is needed to disable write to EALLOW protected registers / Disable and clear all CPU interrupts:DINT;IER = 0x0000;IFR = 0x0000;nISRWork1=0;InitPieCtrl();InitPieVectTable(); InitCpuTimers(); ConfigCpuTimer(&CpuTimer0, 100, SYSTEM_FREQUEN

14、CY*10/ISR_FREQUENCY); StartCpuTimer0();EALLOW;/ This is needed to write to EALLOW protected registersPieVectTable.TINT0 = &MainISR;EDIS; / This is needed to disable write to EALLOW protected registers PieCtrlRegs.PIEIER1.all = M_INT7;IER |= M_INT1;#endif/*/ Initialize PWM module pwm1.PeriodMax =

15、 (SYSTEM_FREQUENCY/PWM_FREQUENCY)*1000; / Asymmetric PWM pwm1.DutyFunc = DFuncDesired; / DutyFunc = Q15 pwm1.init(&pwm1); / Initialize DATALOG module dlog.iptr1 = &DlogCh1; dlog.iptr2 = &DlogCh2; dlog.iptr3 = &DlogCh3; dlog.iptr4 = &DlogCh4; dlog.trig_value = 0x01; dlog.size = 0x

16、400; dlog.prescalar = 1; dlog.init(&dlog);/ Initialize ADC module adc1.ChSelect = 0x7777;/6543; / for DMC1500 and eZdsp2812/eZdsp2808 boardsadc1.init(&adc1);/ Initialize enable drive module / drv1.init(&drv1);/ Initialize the SPEED_PR module (150 MHz, N = 1 event period/rev) speed1.Input

17、Select = 0; speed1.BaseRpm = 120*(BASE_FREQ/P); speed1.SpeedScaler = (Uint32)(ISR_FREQUENCY/(1*BASE_FREQ*0.001);/ Initialize RMPCNTL module rc1.RampDelayMax = 20; rc1.RampLowLimit = _IQ(0); rc1.RampHighLimit = _IQ(1);/ Initialize Hall module hall1.DebounceAmount = 5; hall1.Revolutions = -10; hall1.i

18、nit(&hall1);/ Initialize RMP2 modulermp2.Out = (int32)DFuncDesired;rmp2.Ramp2Delay = 0x00000050; rmp2.Ramp2Max = 0x00007FFF; rmp2.Ramp2Min = 0x0000000F;EINT; / Enable Global interrupt INTMERTM;/ Enable Global realtime interrupt DBGM/*CTRGR=0x80;/ 初始化ICETEK-CTRCTRGR=0x0;CTRGR=0x80;CTRLR=0;/ 關(guān)閉東西方

19、向的交通燈CTRLR=0x40;/ 關(guān)閉南北方向的交通燈CTRLR=0xc1;uPort8000=CTRLCDCR;/ 清鍵盤緩沖區(qū)TurnOnLCD();/ 打開(kāi)顯示LCDCLS();/ 清除顯示內(nèi)存for ( nCount=0;nCount<8;nCount+ )ledbufnCount=0x0ff;/ 顯示為空白ledxnCount=(nCount<<4);/ 生成顯示列控制字control=0;nSpeed=0;direction=0;DFuncDesired=0;h=0;RefreshLEDArray();nCount=nCursorCount=0;CTRLCDCM

20、DR=LCDCMDPAGE;/ 設(shè)置操作頁(yè)=0Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);CTRLCDCMDR=LCDCMDVERADDRESS;/ 起始列=0Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);cKey=0;cOldKey=0;/*for (;)nScanCode=CTRLCDCMDR;nScanCode&=0x0ff;uPort8000=CTRLCDCR;if ( nScanCode!=0 ) cKey=nScanCode;/*在此編程*/if(cKey!=cOldKey)/readKey=

21、ConvertScanToChar(nScanCode);switch ( cKey )case 1:direction=1; break;case 2:direction=2;break;case 3:direction=0; break;CTRLCDCMDR=LCDCMDPAGE;/ 設(shè)置操作頁(yè)=0Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);CTRLCDCMDR=LCDCMDVERADDRESS;/ 起始列=0Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);if(direction!=0)tempSpeed=l

22、nADCValues;elsetempSpeed=0;sx0=tempSpeed/1000%10;sx1=tempSpeed/100%10;sx2=tempSpeed/10%10;sx3=tempSpeed%10;for (i=0;i<8;i+ )CTRLCDLCR=ledkeysx0i;Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);for (i=0;i<8;i+ )CTRLCDLCR=ledkeysx1i;Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);for (i=0;i<8;i+ )CTRLC

23、DLCR=ledkeysx2i;Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);for (i=0;i<8;i+ )CTRLCDLCR=ledkeysx3i;Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);CTRLCDCMDR=LCDCMDPAGE+1;/ 設(shè)置操作頁(yè)=0 顯示電機(jī)轉(zhuǎn)的方向Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY);CTRLCDCMDR=LCDCMDVERADDRESS;/ 起始列=0Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDD

24、ELAY);for (i=0;i<8;i+ )CTRLCDLCR=ledkeydirectioni;Delay(LCDDELAY);CTRLCDCR=0;Delay(LCDDELAY); 2.定時(shí)中斷interrupt void MainISR(void)#if (BUILDLEVEL=LEVEL0) rmp2.DesiredInput = (int32)DFuncDesired; rmp2.calc(&rmp2);hall1.read(&hall1);hallcap=hall1.HallGpio;i=0; pwm1.CmtnPointer =nNowStatus;/0-

25、5 pwm1.DutyFunc = (int16)rmp2.Out; pwm1.update(&pwm1);#endif / (BUILDLEVEL=LEVEL0)/*#if (BUILDLEVEL=LEVEL1)#endif / (BUILDLEVEL=LEVEL1)/*#if (BUILDLEVEL=LEVEL2) adc1.read(&adc1); lnADCValues=adc1.Ch1Out; lnADCValues+=adc1.Ch2Out; lnADCValues+=adc1.Ch3Out; lnADCValues+=adc1.Ch4Out; lnADCValue

26、s/=4; SampleTablearray_index+= lnADCValues;if(array_index=1024) array_index=0; lnADCValues=(lnADCValues-2150)*10; if ( lnADCValues<100 )lnADCValues=0;hall1.HallMapPointer = (int16)mod1.Counter; hall1.read(&hall1); mod1.TrigInput =(int32)hall1.CmtnTrigHall; mod1.Counter = (int32)hall1.HallMapP

27、ointer; mod1.calc(&mod1); rmp2.DesiredInput = (int32)DFuncDesired; rmp2.calc(&rmp2); nISRWork1=(int16)hall1.HallGpio; bISRWork=( nISRWork1>0 && nISRWork1<7 )?(1):(0); if ( bISRWork ) if(direction=1) nNowStatus=zhengzhuannISRWork1-1; else if(direction=2) nNowStatus=fanzhuannISRW

28、ork1-1; if ( bISRWork ) pwm1.CmtnPointer = nNowStatus; if(direction=0) pwm1.DutyFunc = 0; else pwm1.DutyFunc = lnADCValues+600; pwm1.update(&pwm1); nISRWork1=(int16)rmp2.Out;#endif / (BUILDLEVEL=LEVEL2)/*VirtualTimer+;VirtualTimer &= 0x00007FFF; dlog.update(&dlog);mmexit:/*#if (DSP_TARGE

29、T=F28335)/ Acknowledge interrupt to recieve more interrupts from PIE group 1PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;#endif/*#if (DSP_TARGET=F2812)EvaRegs.EVAIMRB.bit.T2PINT = 1; EvaRegs.EVAIFRB.all = BIT0;#endif/*六、實(shí)驗(yàn)總結(jié)1. 在本次實(shí)驗(yàn)中我們實(shí)現(xiàn)了基本功能和提高功能的所有要求, 實(shí)現(xiàn)了滿足了用CCS圖形顯示AD變換結(jié)果曲線,利用電位器對(duì)直流無(wú)刷電機(jī)進(jìn)行轉(zhuǎn)速調(diào)節(jié),用鍵盤控制電機(jī)的正反轉(zhuǎn)和停轉(zhuǎn),并利用液晶屏

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論