版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、2015年全國大學(xué)生電子設(shè)計競賽電動車蹺蹺板(F題)【本科組】2015年7月25日摘 要本方案以STM32F103RB單片機、直流電機驅(qū)動電路、MPU-6050、反射式紅外傳感器、穩(wěn)壓模塊等電路構(gòu)成。小車采用前方的左中右三個反射式紅外傳感器,能沿著黑線在蹺蹺板上往返行駛,并始終保持在蹺蹺板上;同時,利用MPU-6050對小車當(dāng)前所在位置的傾斜角進行測量。小車控制程序主要對采集信號分析轉(zhuǎn)換,結(jié)合PWM調(diào)速控制電機轉(zhuǎn)速和轉(zhuǎn)向,從而使小車快速在蹺蹺板上取得平衡;小車通過蜂鳴器來實現(xiàn)平衡指示以及實時顯示,從而完成整個設(shè)計過程。實驗結(jié)果驗證了該系統(tǒng)的性能滿足設(shè)計要求。關(guān)鍵詞:STM32F103RB MP
2、U-6050 反射式紅外傳感器 PWM調(diào)速 AbstractThe programs to STM32F103RB microcontroller, DC motor drive circuit, MPU-6050, reflective infrared sensor, voltage regulator modules and other circuits. Car used left, right in front of three reflective infrared sensor that can travel back and forth along the black line
3、 on a seesaw, and keep the seesaw; Meanwhile, MPU-6050 tilt angle of the trolley current location is measured. Car control program focuses on the acquisition signal analysis conversion, combined with PWM speed control motor speed and direction, allowing the car to quickly strike a balance on a seesa
4、w; trolley buzzer to achieve balance through instructions and real-time display, thus completing the entire design process. Experimental results demonstrate the performance to meet the design requirements of the system.Key word: STM32F103RB MPU-6050 PWM Speed Reflective infrared sensor目 錄1系統(tǒng)方案11.1 姿
5、態(tài)檢測模塊的論證與選擇11.2 電機驅(qū)動模塊的論證與選擇11.3 穩(wěn)壓模塊的論證與選擇11.4 測量模塊的論證與選擇22系統(tǒng)理論分析與計算32.1 PID控制器設(shè)計32.2 基于卡爾曼濾波的數(shù)據(jù)融合33電路與程序設(shè)計43.1電路的設(shè)計43.1.1電路系統(tǒng)總體框圖43.1.2 電源系統(tǒng)電路43.1.3 電機驅(qū)動模塊電路原理圖43.2程序的設(shè)計53.2.1程序流程圖54測試方案與測試結(jié)果84.1測試方案84.2 測試條件與儀器84.3 測試結(jié)果及分析84.3.1測試結(jié)果(數(shù)據(jù))84.3.2測試分析與結(jié)論95總結(jié)9附錄101.電路原理圖10 2.元器件清單12 3.主要源程序131系統(tǒng)方案本系統(tǒng)主要
6、由姿態(tài)檢測模塊、電機驅(qū)動模塊、測量模塊、穩(wěn)壓模塊、電源模塊組成。下面分別論證各個模塊的選擇。1.1 姿態(tài)檢測模塊的論證與選擇方案一:ENC-03。這是一款利用科里奧利力原理輸出一個與角速度成正比的模擬電壓信號的角速度傳感器。方案二:MPU-6050。MPU-60X0 是全球首例9軸運動處理傳感器。它集成了3軸MEMS陀螺儀,3軸MEMS加速度計,以及一個可擴展的數(shù)字運動處理器DMP(Digital Motion Processor),可用I2C接口連接一個第三方的數(shù)字傳感器,比如磁力計。擴展之后就可以通過其I2C或SPI接口輸出一個9軸的信號(SPI 接口僅在MPU-6000可用)。MPU-6
7、0X0也可以通過其I2C接口連接非慣性的數(shù)字傳感器,比如壓力傳感器。方案一所用模塊功能較單一,只是單獨的陀螺儀。方案二所用模塊功能較多,不僅有陀螺儀功能,且有加速度計的功能。且方案一所用模塊較為精密,容易損壞,故選用方案二。1.2 電機驅(qū)動模塊的論證與選擇方案一:TB6612FNG。TB6612FNG是一款新型直流電機驅(qū)動器,它具有集成度高、驅(qū)動能力強以及控制方式靈活等特點。方案二:L298N。具有信號指示,轉(zhuǎn)數(shù)可調(diào),抗干擾能力強,具有過電壓和過電流保護,可單獨控制兩臺直流電機,可單獨控制一臺步進電機。方案三:ULN2003,ULN2003 是高耐壓、大電流復(fù)合晶體管陣列,由七個硅NPN 復(fù)合
8、晶體管組成。最高接5V電壓。方案一所用電機體積小,重量小。本實驗要求小車自重不能過輕。切方案一所用電機體內(nèi)電子元件較為精密,易損壞,故不用方案一。方案三所用電機電壓范圍太小,本實驗要求電壓要穩(wěn)定在較高值,故不選用方案三。所以選擇方案二。1.3 穩(wěn)壓模塊的論證與選擇方案一:LM2596。LM2596系列是德州儀器(TI)生產(chǎn)的3A電流輸出降壓開關(guān)型集成穩(wěn)壓芯片,它內(nèi)含固定頻率振蕩器(150KHZ)和基準(zhǔn)穩(wěn)壓器(1.23v),并具有完善的保護電路、電流限制、熱關(guān)斷電路等。利用該器件只需極少的外圍器件便可構(gòu)成高效穩(wěn)壓電路。方案二:LM2576系列是美國國家半導(dǎo)體公司生產(chǎn)的3A電流輸出降壓開關(guān)型集成穩(wěn)
9、壓電路,它內(nèi)含固定頻率振蕩器(52kHz)和基準(zhǔn)穩(wěn)壓器(1.23V),并具 有完善的保護電路,包括電流限制及熱關(guān)斷電路等,利用該器件只需極少的外圍器件便可構(gòu)成高效穩(wěn)壓電路。方案一所用穩(wěn)壓模塊開關(guān)頻率高,效率更高。方案二所用穩(wěn)壓模塊太過昂貴,性價比比方案一所用穩(wěn)壓模塊低。所以選用方案一。1.4 測量模塊的論證與選擇方案一:用光敏電阻組成光敏探測器。光敏電阻的阻值可以跟隨周圍環(huán)境光線的變化而變化。當(dāng)光線照射到蹺蹺板上面時,光線發(fā)射強烈,光線照射到黑線上面時,光線發(fā)射較弱。因此光敏電阻在蹺蹺板和黑線上方時,阻值會發(fā)生明顯的變化。將阻值的變化值經(jīng)過比較器就可以輸出高低電平。但是這種方案受光照影響很大,
10、并且不能夠穩(wěn)定的工作。因此我們考慮其他更加穩(wěn)定的方案。方案二:用紅外光電對管尋跡傳感器?,F(xiàn)有的封裝好的紅外對管應(yīng)用電路簡單,工作穩(wěn)定,再加上控制芯片的電壓比器功能模塊處理采集信號,容易實現(xiàn)題目要求。方案一受光照影響很大,并且不能夠穩(wěn)定的工作,本實驗要求測量模塊能穩(wěn)定工作,故不選用方案一。方案二容易實現(xiàn)題目要求。因此本系統(tǒng)選擇方案二。在平衡系統(tǒng)中,根據(jù)要求,只要蹺蹺板兩端與地面的距離差小于40mm即可認為平衡,本設(shè)計通過傾角傳感器檢測蹺蹺板水平傾角,所以只要水平傾角保持在0°附近的某個角度范圍之內(nèi)即認為蹺蹺板達到平衡狀態(tài)。其閉環(huán)結(jié)構(gòu)框圖如圖所示。該系統(tǒng)的工作原理是:小車駛上蹺蹺板后,通
11、過傾角傳感器不斷測量蹺蹺板的傾角(即實際傾角),該實際傾角與給定傾角作比較,形成傾角偏差,通過直流電機控制小車前后微移,不斷修正該傾角偏差,最終使傾角保持在給定范圍之內(nèi),此時蹺蹺板便達到平衡狀態(tài)。2系統(tǒng)理論分析與計算2.1 PID控制器設(shè)計PID控制器由比例單元(P)、積分單元(I)和微分單元(D)組成。其輸入e (t)與輸出u (t)的關(guān)系為: 其中為比例系數(shù);為積分時間常數(shù);為微分時間常數(shù)。PID控制器具有原理簡單、使用方便、適應(yīng)性強、魯棒性強、對模型依賴少等特點,因此使用PID控制器實現(xiàn)兩輪自平衡車的控制是完全可行的。2.2 基于卡爾曼濾波的數(shù)據(jù)融合 卡爾曼濾波器解決離散時間控制過程的一
12、般方法,首先定義模型線性隨機微分方程。假設(shè)卡爾曼濾波模型k時刻真實狀態(tài)是從(k-1)時刻推算出來,如下式 式中,是k時刻狀態(tài);A是k-1時刻狀態(tài)變換模型;B是作用在控制器向量上的輸入控制模型;是過程噪聲,假設(shè)其均值為零,協(xié)方差矩陣符合多元正態(tài)分布: k時刻對應(yīng)真實狀態(tài)的測量滿足下式: 式2-17中是觀測模型,將真實控制映射為觀測空間;為觀測噪聲,其均值為零,協(xié)方差矩陣符合正態(tài)分布:初始狀態(tài)以及每一時刻的噪聲都認為是互相獨立的。卡爾曼濾波器的操作主要包括兩個階段:預(yù)估與更新。在預(yù)估階段,濾波器根據(jù)上一時刻狀態(tài),估算出當(dāng)前時刻狀態(tài);在更新階段,濾波器利用當(dāng)前時刻觀測值優(yōu)化在預(yù)估階段獲得的測量值,以
13、獲得一個更準(zhǔn)確的新估計值111213。3電路與程序設(shè)計3.1電路的設(shè)計3.1.1電路系統(tǒng)總體框圖3.1.2 電源系統(tǒng)電路3.1.3 電機驅(qū)動模塊電路原理圖3.2程序的設(shè)計3.2.1程序流程圖1、主程序流程圖 當(dāng)小車復(fù)位時,開始運行主程序流程。開始 - 調(diào)用平衡子程序 - 進入判斷 - 是(否) -調(diào)用平衡指示子程序(回到上一步) - 延時 - 電機運行向前 - 調(diào)用測量子程序 - 進入判斷 - 是(否) - 延時(回到上兩步) - 電機運行向后 - 結(jié)束2、平衡子程序流程圖開始 - 平衡測量模塊檢測 - 進入判斷 - 是(否) - 調(diào)用電機驅(qū)動 - 電機正轉(zhuǎn)(電機反轉(zhuǎn)) - 進入判斷 - 是(
14、否) - 結(jié)束(回到第一步)3、平衡指示子程序流程圖開始 - 平衡測量模塊檢測 - 進入判斷 - 是(否) - 調(diào)用計數(shù)器(回到上一步) - 進入判斷 - 是(否) - 調(diào)用蜂鳴器(回到第一步) - 結(jié)束4、測量子程序流程圖開始 - 三組光線測量模塊檢測 - 進入判斷 - 是(否) - 調(diào)用電機驅(qū)動(回到上一步) - 電機運行通過控制轉(zhuǎn)速調(diào)整方向 - 進入判斷 - 是(否) - 結(jié)束(回到第一步)4測試方案與測試結(jié)果4.1測試方案1.硬件測試 檢測蹺蹺板的尺寸; 檢測蹺蹺板的可用性; 檢測小車線路連接狀態(tài);2. 運行測試 檢測小車在蹺蹺板上面的運行情況; 檢測小車對題目各項要求的完成度。4.2
15、 測試條件與儀器測試條件:檢查多次,硬件電路必須與系統(tǒng)原理圖完全相同,并且檢查無誤,硬件電路保證無虛接。 小車要能完成題目要求。測試儀器: 測試蹺蹺板:卷尺。 測試小車:蹺蹺板(需檢測合格),秒表。4.3 測試結(jié)果及分析4.3.1測試結(jié)果(數(shù)據(jù))硬件:檢查多次,硬件電路與系統(tǒng)原理圖完全相同,硬件電路無虛接以下為硬件檢測數(shù)據(jù):蹺蹺板總體長度:1600mm;蹺蹺板總體寬度:300mm;蹺蹺板中心軸部分高度:83mm;小車整體寬度:200mm;小車整體長度:300mm;運行:不加配重情況下表1:從A點到C點的時間測試測試項目第1次第2次第3次第4次AC所用時間/s1512129表2:平衡點測試測試項
16、目第1次第2次第3次第4次尋找平衡點時間/s30402420d=dA-dB/mm30.520.522.814.7表3:平衡點到B的時間測試測試項目第1次第2次第3次第4次平衡點B所用時間/s4323車頭到B點的距離/mm35203431表4:平衡點倒退回A點的時間測試測試項目第1次第2次第3次第4次B點停止時間/s5555BA所用時間/s2326257根據(jù)測量,完成全過程的總時間均小于180秒。4.3.2測試分析與結(jié)論根據(jù)上述測試數(shù)據(jù),小車及蹺蹺板尺寸合格,小車達成目標(biāo)時間均小于題目要求時間,由此可以得出以下結(jié)論:1、小車及蹺蹺板硬件條件符合題目要求。2、小車內(nèi)部程序無問題,小車能夠正常運行。
17、3、小車能完成題目各項要求,且有自主發(fā)揮空間。綜上所述,本設(shè)計達到設(shè)計要求。五、總結(jié)在本次課題訓(xùn)練中,我們基本完成了題目各項要求。從本次設(shè)計中我們體會到,對小車實施控制不僅是電子控制問題,其中也涉及到了力學(xué)和光學(xué)等方面的知識。在有限的時間里未能完美的解決小車尋找平衡點的的問題。在對直流電機的調(diào)速和精確控制上還不是很靈活,在以后的訓(xùn)練中應(yīng)該多加學(xué)習(xí)和鍛煉。22附錄1.電路原理圖單片機最小系統(tǒng)及時鐘電路原理圖MPU6050電路圖復(fù)位及按鍵接口電路2.元器件清單 電 動 小 車序號名稱、型號、規(guī)格數(shù)量1STM32F103RB單片機12直流電機43MPU-605014電機驅(qū)動L298N25紅外傳感器3
18、6穩(wěn)壓模塊LM259627電源(航模電池)18小車框架(高160mm,長300mm,寬200mm)110輔助連接板1 蹺 蹺 板序號名稱、型號、規(guī)格數(shù)量11600mm * 300mm * 14mm木板12135mm * 25mm * 45mm木支架23轉(zhuǎn)軸(50mm螺釘)2465mm * 25mm * 45mm 轉(zhuǎn)軸固定架25310mm * 25mm * 45mm木軸承16黑膠布若干7引導(dǎo)裝置(硬紙板,硬木板)18連接用螺釘若干9配重若干3.源程序/* Includes -*/#include "stm32f10x.h"#include "delay.h"
19、;#include "sys.h"#include "inv_mpu_dmp_motion_driver.h"#include "inv_mpu.h"#include "math.h"#include "usart.h"#include "STM32_I2C.h"#include <stdio.h>#include <pwm.h>#include <pid.h>#include <tim.h> #define PRINT_ACC
20、EL (0x01)#define PRINT_GYRO (0x02)#define PRINT_QUAT (0x04)#define ACCEL_ON (0x01)#define GYRO_ON (0x02)#define MOTION (0)#define NO_MOTION (1)/* Starting sampling rate. */#define DEFAULT_MPU_HZ (100)#define FLASH_SIZE (512)#define FLASH_MEM_START (void*)0x1800)uint32_t TimingDelay = 0;extern int k;
21、extern volatile u32 time; uint16_t a1,a2,b1,b2;extern float Kp;extern float Ki;extern float Kd;int s1=0;int s2=0;int s3=0;int s4=0;int num=0;int qq=0;int xj=0;extern float output;extern float SetSpeed;uint8_t USART_RXBUF10;extern uint8_t RXOVER;void Delay(_IO uint32_t nCount);void Clock_Enable(void)
22、;void GPIO_Configuration(void);void check(void);void turn(void);void bee(void);void Delay_Ms(uint32_t nTime) TimingDelay = nTime; while(TimingDelay != 0);struct rx_s unsigned char header3; unsigned char cmd;struct hal_s unsigned char sensors; unsigned char dmp_on; unsigned char wait_for_tap; volatil
23、e unsigned char new_gyro; unsigned short report; unsigned short dmp_features; unsigned char motion_int_mode; struct rx_s rx;static struct hal_s hal = 0;volatile unsigned char rx_new;float Roll,Yaw;float Pitch;static signed char gyro_orientation9 = -1, 0, 0, 0,-1, 0, 0, 0, 1;enum packet_type_e PACKET
24、_TYPE_ACCEL,PACKET_TYPE_GYRO,PACKET_TYPE_QUAT,PACKET_TYPE_TAP,PACKET_TYPE_ANDROID_ORIENT,PACKET_TYPE_PEDO,PACKET_TYPE_MISC ;static unsigned short inv_row_2_scale(const signed char *row) unsigned short b; if (row0 > 0) b = 0; else if (row0 < 0) b = 4; else if (row1 > 0) b = 1; else if (row1
25、< 0) b = 5; else if (row2 > 0) b = 2; else if (row2 < 0) b = 6; else b = 7; / error return b;static unsigned short inv_orientation_matrix_to_scalar( const signed char *mtx) unsigned short scalar; scalar = inv_row_2_scale(mtx); scalar |= inv_row_2_scale(mtx + 3) << 3; scalar |= inv_row
26、_2_scale(mtx + 6) << 6; return scalar;static void run_self_test(void) int result;/ char test_packet4 = 0; long gyro3, accel3; result = mpu_run_self_test(gyro, accel); if (result = 0x7) /* Test passed. We can trust the gyro data here, so let's push it down * to the DMP. */ float sens; unsig
27、ned short accel_sens; mpu_get_gyro_sens(&sens); gyro0 = (long)(gyro0 * sens); gyro1 = (long)(gyro1 * sens); gyro2 = (long)(gyro2 * sens); dmp_set_gyro_bias(gyro); mpu_get_accel_sens(&accel_sens); accel0 *= accel_sens; accel1 *= accel_sens; accel2 *= accel_sens; dmp_set_accel_bias(accel);prin
28、tf("setting bias succesfully .n"); elseprintf("bias has not been modified .n");#define q30 1073741824.0ffloat q0=1.0f,q1=0.0f,q2=0.0f,q3=0.0f;void Read_MPU_Data(void)unsigned long sensor_timestamp; short gyro3, accel3, sensors; unsigned char more; long quat4; /float Yaw,Roll,Pitc
29、h; dmp_read_fifo(gyro, accel, quat, &sensor_timestamp, &sensors, &more); if (sensors & INV_WXYZ_QUAT ) q0=quat0 / q30; q1=quat1 / q30; q2=quat2 / q30; q3=quat3 / q30; Pitch = asin(-2 * q1 * q3 + 2 * q0* q2)* 57.3; Roll = atan2(2 * q2 * q3 + 2 * q0 * q1, -2 * q1 * q1 - 2 * q2* q2 + 1)
30、* 57.3; / roll Yaw = atan2(2*(q1*q2 + q0*q3),q0*q0+q1*q1-q2*q2-q3*q3) * 57.3; if(sensors & INV_XYZ_GYRO) if(sensors & INV_XYZ_ACCEL) void gpio_config(void) GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_P
31、in_1|GPIO_Pin_2;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;GPIO_Init(GPIOC, &GPIO_InitStructure);void BEE(void)GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);GPIO_PinRemapConfig(GPIO_Remap_SWJ_
32、NoJTRST,ENABLE); GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable,ENABLE);GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(GPIOB, &GPIO_InitStruc
33、ture);void be(void)int i;GPIO_ResetBits(GPIOB,GPIO_Pin_4); for(i=0x010000; i>0; i-);GPIO_SetBits(GPIOB,GPIO_Pin_4); void turn(void)if(GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_0)=1) TIM_Config1(0,0);/左轉(zhuǎn) TIM_Config2(0,800);else if(GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_1)=1) TIM_Config1(0,800);/右轉(zhuǎn) TIM_Co
34、nfig2(0,0);void check(void)if(GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_2)=1) while(GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_2)=1); Delay(4000000);num=num+1; if(num=1)/踩黑線平衡 SetSpeed=1.8; else if(num=2)SetSpeed=8;else if(num=3)/踩黑線后退SetSpeed=-8;else if(num=5)while(1) TIM_Config1(0,0);TIM_Config2(0,0); int ma
35、in(void)int result,i; Clock_Enable(); GPIO_Configuration(); USART_Config(); i2cInit();PWM_IO_Config();TIM4_NVIC_Configuration(); TIM4_Configuration();BEE();gpio_config(); RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4 , ENABLE); result = mpu_init(); if(!result) /mpu_init(); printf("mpu initializati
36、on complete.n "); /mpu_set_sensor if(!mpu_set_sensors(INV_XYZ_GYRO | INV_XYZ_ACCEL) printf("mpu_set_sensor complete .n"); else printf("mpu_set_sensor come across error .n"); /mpu_configure_fifo if(!mpu_configure_fifo(INV_XYZ_GYRO | INV_XYZ_ACCEL) printf("mpu_configure_f
37、ifo complete .n"); else printf("mpu_configure_fifo come across error .n"); /mpu_set_sample_rate if(!mpu_set_sample_rate(DEFAULT_MPU_HZ) printf("mpu_set_sample_rate complete .n"); else printf("mpu_set_sample_rate error .n"); /dmp_load_motion_driver_firmvare if(!dmp_
38、load_motion_driver_firmware() printf("dmp_load_motion_driver_firmware complete .n"); else printf("dmp_load_motion_driver_firmware come across error .n"); /dmp_set_orientation if(!dmp_set_orientation(inv_orientation_matrix_to_scalar(gyro_orientation) printf("dmp_set_orientati
39、on complete .n"); else printf("dmp_set_orientation come across error .n"); /dmp_enable_feature if(!dmp_enable_feature(DMP_FEATURE_6X_LP_QUAT | DMP_FEATURE_TAP | DMP_FEATURE_ANDROID_ORIENT | DMP_FEATURE_SEND_RAW_ACCEL | DMP_FEATURE_SEND_CAL_GYRO | DMP_FEATURE_GYRO_CAL) printf("dmp
40、_enable_feature complete .n"); else printf("dmp_enable_feature come across error .n"); /dmp_set_fifo_rate if(!dmp_set_fifo_rate(DEFAULT_MPU_HZ) printf("dmp_set_fifo_rate complete .n"); else printf("dmp_set_fifo_rate come across error .n"); run_self_test(); if(!mpu_
41、set_dmp_state(1) printf("mpu_set_dmp_state complete .n"); else printf("mpu_set_dmp_state come across error .n"); GPIO_ResetBits(GPIOA, GPIO_Pin_0 | GPIO_Pin_1| GPIO_Pin_6| GPIO_Pin_7);GPIO_ResetBits(GPIOC,GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2); while(1) if(RXOVER = 1)for(i=0;i<20;i+)USART_RXBUFi = 0; /清空接收區(qū)RXOVER = 0;USART_ITConfig(USART2,USART_IT_RXNE,ENABLE);turn();check();if(k=1)k=0;if(time=1)Read_MPU_Data();if(time>=5)time=0;PID_realize(); if(ou
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 文明傳播責(zé)任狀
- 國防生教育培養(yǎng)協(xié)議模板
- 工程審計分包合同版
- 水泥磚供應(yīng)合同格式
- 婚禮攝影攝像服務(wù)合同
- 家電零售分銷合同
- 專業(yè)家政服務(wù)小時工合同
- 農(nóng)村養(yǎng)雞設(shè)備采購合同
- 軟件合作開發(fā)合同
- 混凝土構(gòu)件訂購合同
- 儀式外包合同范例
- 物流運輸雙氧水安全應(yīng)急預(yù)案
- 2025年上半年中科院大連化學(xué)物理研究所金催化研究中心(2302組)招聘1人易考易錯模擬試題(共500題)試卷后附參考答案
- 【項目方案】合同能源托管模式下開展校園綜合能源建設(shè)方案-中教能研院
- 2024-2030年中國抗菌肽行業(yè)發(fā)展現(xiàn)狀及前景趨勢分析報告
- 功能科提高動態(tài)心電圖檢查人次PDCA
- 氣球活動布置合同范例
- 醫(yī)學(xué)綜合英語學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- DB14-T2551-2022公路隧道缺陷與病害處治及驗收技術(shù)規(guī)范
- 工業(yè)自動化設(shè)備驗收及實施方案
- 《智能網(wǎng)聯(lián)汽車智能傳感器測試與裝調(diào)》電子教案
評論
0/150
提交評論