freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于飛思卡爾16位單片機電磁型智能小車的設(shè)計_畢業(yè)設(shè)計論文(文件)

2025-07-30 09:25 上一頁面

下一頁面
 

【正文】 們各自假設(shè)其它兩個控制都已經(jīng)達到穩(wěn)定。 車模直立控制 控制車模直立的直觀經(jīng)驗來自于雜技表演。這兩個條件缺一不可,實際上就是控制中的負反饋機制,參見圖 。因為車模有兩個輪子著地,因此車體只會在輪子滾動的方向上發(fā)生傾斜。為了使得同學(xué)們能夠比較清楚理解其中的物理過程。如圖 所示??諝獾淖枘崃εc單擺運行速度成正比,方向相反。 如果沒有阻尼力,單擺會在垂直位置左右擺動。 為什么倒立擺在垂直位置時,在受到外部擾動的情況下,無法保持穩(wěn)定呢?分析倒立擺的受力,如圖 所示。 控制倒立擺底部車輪,使得它作加速運動。 此外,為了使得倒立擺能夠盡快地在垂直位置穩(wěn)定下來,還需要增加阻尼力,與偏角的速度成正比,方向相反。其中, k1決定了車模是否能夠穩(wěn)定到垂直位置,它必須大于重力加速度; k2 決定了車模回到垂直位置的阻尼系數(shù),選取合適的阻尼系數(shù)可以保證車模盡快穩(wěn)定在垂直位置。 ( 2)通過電機速度控制,實現(xiàn)車模恒速運行和靜止。施加在電機上一個階躍電壓 Eu(t),電機的速度變化曲線為 ω (t)=Ekm(1et/T1)u(t) (24) 式中, E為電壓; u(t)為單位階躍函數(shù); T1為慣性環(huán)節(jié)時間常數(shù); km為電機轉(zhuǎn)速常數(shù)。 調(diào)整車模直立時間常數(shù)很小,此時電機基本上運行在加速階段。電機速度控制需要測量電機的轉(zhuǎn)速,電機旋轉(zhuǎn)速度可以通過安裝在電機輸出軸上的光電編碼盤方便獲得。 安徽理工大學(xué)畢業(yè)設(shè)計 10 圖 電機 PI 反饋控制 電機速度控制采用了 PI 調(diào)節(jié)器,具體實現(xiàn)可以通過單片機軟件編程實現(xiàn)。如圖 所示。因此車模傾角以及傾角加速度的測量成為控制車模直立的關(guān)鍵。該系列的傳感器采用了半導(dǎo)體表面微機械加工和集成電路技術(shù),傳感器體積小,重量輕。通過集成的開關(guān)電容放大電路量測電容參數(shù)的變化,形成了與加速度成正比的電壓輸出。車模直立時,固定加速度器在 Z 軸水平方向,此時輸出信號為零偏電壓信號。 只需要加速度就可以獲得車模的傾角,再對此信號進行微分便可以獲得傾角加速度。因此對于車模直立控制所需要的傾角信息需要通過另外一種器件獲得,那就是角速度傳感器 陀螺儀。當(dāng)旋轉(zhuǎn)器件時會改變振動頻率從而反映出物體旋轉(zhuǎn)的角速度。因此該信號中噪聲很小。如果角速度信號存在微小的偏差,經(jīng)過積分運算之后,變化形成積累誤差。從圖 ,對于加速度計給定的角度 θg,經(jīng)過比例、積分環(huán)節(jié)之后產(chǎn)生的角度 θ必然最終等于 θg 。這樣,加速度的噪聲信號經(jīng)過比例、積分后,在輸出角度信息中就會非常小了。此后,加速度計的輸出只是消除積分的偏移,輸出角度不會出現(xiàn)很大的偏差。 車模的三種控制(直立、速度、方向)最終是將控制量疊加在一起作為電機輸出電壓控制量。 車模加速前進時,由速度控制算法給出電機增加的正向電壓,電機開始逐步加速旋轉(zhuǎn)。車模減速過程與此類似,由速度控制算法減少了電機的電壓,電機開始減速運行。 系統(tǒng)的輸入輸出包括: ( 1) AD 轉(zhuǎn)換接口(至少 4 路) a) 電磁監(jiān)測:左右兩路,用于測量左右兩個感應(yīng)線圈電壓。 ( 2) PWM 接口( 4 路) a) 控制左右兩個電極雙方向運行,需要四路 PWM 接口。 整體電路框圖如圖 安徽理工大學(xué)畢業(yè)設(shè)計 17 圖 整體電路框圖 根據(jù)圖 ,控制電路劃分為如下子模塊: ( 1) 單片機最小系統(tǒng):包括 DSC 處理器,程序下載調(diào)試接口等; ( 2) 電磁線檢測:包括兩路相同的電磁感應(yīng)信號放大與檢波電路; ( 3) 陀螺儀與加速度計:包括兩個姿態(tài)傳感器信號放大濾波電路; ( 4) 速度檢測:檢測電機光電碼盤脈沖頻率; ( 5) 電機驅(qū)動 :驅(qū)動兩個電極運行電路; ( 6) 電源:電源電壓轉(zhuǎn)換、穩(wěn)壓、濾波電路; ( 7) 設(shè)置與調(diào)試:顯示系統(tǒng)運行狀態(tài)、速度設(shè)定、程序下載與監(jiān)控。 安徽理工大學(xué)畢業(yè)設(shè)計 18 圖 單片機最小系統(tǒng)電路 ( 1) 模擬量檢測接口 a) ANA0( PIN12):陀螺儀電壓; b) ANA1( PIN11):加速度計電壓; c) ANB0( PIN5):右側(cè)電感檢波電壓; d) ANB1( PIN6):左側(cè)電感檢波電壓。 ( 5) 串口監(jiān)控 UART 接口: a) RXD( PIN1); b) TXD( PIN3)。電路圖如圖 所示。實際的電路圖如圖 。如圖 。 圖 兩片 33886 組成的電機驅(qū)動電路 為了防止電機輸出電流對于電源的沖擊,在電路板的電源輸入( ) 端口并聯(lián)了一個 1000 微法的電容。如果電機正轉(zhuǎn),第二個脈沖落后 90176。通過他的頻率測量得到電機的轉(zhuǎn)速。電池檢測電路圖如圖 安徽理工大學(xué)畢業(yè)設(shè)計 23 圖 電磁檢測電路 按該電路制作電路如圖 圖 電機檢測電路板 安徽理工大學(xué)畢業(yè)設(shè)計 24 智能車軟件設(shè)計 車模是否能夠正常高速穩(wěn)定運行,需要通過軟件編寫和調(diào)試來完成。第二類包括 45 功能。 主程序框架如圖 所示 安徽理工大學(xué)畢業(yè)設(shè)計 25 圖 主程序框架 圖 中,程序上電運行后,便進行單片機的初始化。 初始化完成后,首先進入車模直立檢測子程序。同時檢查車模是否跌倒。然后重新進入車模直立判斷過程。 圖 中斷服務(wù)程序框架 圖 中,使用一個定時器,產(chǎn)生一毫秒的周期中斷。 這些任務(wù)包括: ( 1)電機測速脈沖計數(shù)器讀取與清除。所以讀取 AD 轉(zhuǎn)換在下一個時間片段中。包括車模角度計算、直立控制計算、電機 PWM 輸出等。也就是每秒鐘調(diào)節(jié) 10 次。 函數(shù)輸入?yún)?shù): nLeftVol, nRightVol:分別表示左右兩個電機輸出電壓數(shù)值。 void SetMotorVoltage(int nLeftVol, int nRightVol) {short nPeriod。 setReg(PWM_PWMVAL1, nLeftVol)。 setReg(PWM_PWMVAL0, nLeftVol)。} else {setReg(PWM_PWMVAL2, 0)。} } 程序 電機 PWM 輸出子程序 安徽理工大學(xué)畢業(yè)設(shè)計 29 這個子程序 由下面的第二個程序調(diào)用。 輸出參數(shù):調(diào)用 MOTOR_SET()實際上就是上面的子程序。因此,在輸出的時候,需要根據(jù)輸出的數(shù)值,增加一個固定量,克服靜摩擦力,使得車模運行比較平穩(wěn)。 void MotorSpeedOut(void) { int nLeftVal, nRightVal。 else if(nLeftVal 0) nLeftVal = MOTOR_OUT_DEAD_VAL。 if(nLeftVal MOTOR_OUT_MIN) nLeftVal = MOTOR_OUT_MIN。 nRightVal = nRightVal 4。 對于讀取的陀螺儀和加速度計的數(shù)值需要減去零偏值。這個誤差可以通過后面的速度控制加以消除。具體的方式為:對于陀螺儀的輸出進行積分,將車模由垂直狀態(tài)放置為水平狀態(tài),得到積分的數(shù)值。對于數(shù)值通過右移 10 位(相當(dāng)于除以1024)得到最終的角度值。 ADC_GetValue16(g_nCarVoltage)。 g_nCarAcceVal = mult_r(g_nCarAcceVal, CV_ACCE_ANGLE_RATIO)。 g_nCarAngle = (int)(g_lnCarAngleSigma 10)。 } 程序 車模傾角計算子程序 車模直立控制子程序 車模直立控制是關(guān)鍵子程序。此時再逐 步增大 CAR_AA_D_INT,消除震蕩。 車模直立控制子程序代碼如下 : void CarAngleAdjust(void) { int nLeft, nRight。 nP = (int)mult_r(nP, CAR_AA_P_INT)。 if(nSpeed MOTOR_SPEED_SET_MAX) nSpeed = MOTOR_SPEED_SET_MAX。 g_nLeftMotorOut = nLeft 6。 if(g_nRightMotorOut MOTOR_OUT_MAX) g_nRightMotorOut = MOTOR_OUT_MAX。其中速度采用了左右電機速度的平均值進行計算。 由于速度控制子程序是每 100 毫秒才調(diào)用一次。 速度控制子程序代碼如下: void MotorSpeedAdjustCal(void) { int nLeftSpeed, nRightSpeed。 nRightSpeed = (int)g_nRightMotorSpeedCount。 nI = mult_r(nDeltaValue, MOTOR_SPEED_I_INT)。 if(g_nMotorOutSpeedKeep MOTOR_OUT_MAX) g_nMotorOutSpeedKeep = MOTOR_OUT_MAX。 nValue = nValue * (g_nCarMotionCount + 1) / (CAR_MOTION_PERIOD 1) + g_nMotorOutSpeedOld。這個調(diào)節(jié)函數(shù)調(diào)用周期為 5 毫秒。然后再乘以一個比例系數(shù) CMA_P_MAX。 int nSigma。 nP = (int)(lnDelta * CMA_P_MAX / nSigma) / 2。 if(g_nCarSpeedCount = CAR_SPEED_PERIOD) { g_nCarSpeedCount = 0。 ClearMotorSpeed()。 if(!MOTOR_RIGHT_SPEED_POSITIVE) g_nRightMotorSpeed = g_nRightMotorSpeed。 g_nRightMotorSpeedCount += g_nRightMotorSpeed。 } else if(g_nCarSpeedCount == 3) { g_nCarMotionCount ++。 安徽理工大學(xué)畢業(yè)設(shè)計 35 g_nRightMotorSpeedCount = 0。 g_nCarMagicRightAverage = (int)CV_MAGNETRIGHT_VAL。實際優(yōu)化參數(shù)需要通過一定的工程步驟最終確定,這個過程稱為參數(shù)整定。 ( 2)陀螺儀和加速度計零偏調(diào)試:獲得這兩個傳感器零點的偏移量。此時禁止車模直立控制環(huán)節(jié),通過讀取加速度計的數(shù)值,判斷車模是否直立或者跌倒,通過外部的 LED 顯示結(jié)果。此時由于沒有速度控制,車??赡軙粋€方向加速行駛。然后再給定一個設(shè)定速度,車??梢苑€(wěn)定的前行或者后退。 圖 完整的 C 型車模底盤 圖 :簡化后的 C 型車模底盤。這樣后輪與車體之間形成一個剛體,便于進行直立控制。拆卸后 的車模如圖 所示。如圖 所示 圖 使用復(fù)合膠水將光電碼盤固定在電機輸出軸上 安徽理工大學(xué)畢業(yè)設(shè)計 38 粘合碼盤之后,再固定檢測光電對管。測速傳感器固定完畢之后,便可以將后輪重新安裝在后輪的支架上。 安徽理工大學(xué)畢業(yè)設(shè)計 39 圖 電磁傳感器安裝支架示意圖 為了避免車模在通過十 字交叉線路口時受到的影響,在固定兩個電感線圈的時候,盡量保持這兩個線圈呈水平位置。這樣可以最大程度減少車模運行時前后振動對于測量傾角的干擾。 此外,也可以在防撞支架上安裝車模跌倒檢測開關(guān),一旦車模傾倒,控制電路便立即停止運行。使得小車正常運行的控制算法主要是舵機控制和小車速度控制,其中舵機通過控制輸出的 PWM 信號進行開環(huán)控制,采用 PID 控制調(diào)節(jié)速度。對于那些不足之處還望老師多多包涵。 通過這次設(shè)計我更進一步認識到自動控制的理論以及設(shè)計,提高了我的理論水平和實踐能力,也使我認識到只有通過不斷的探討改進才能真正獲得能力上的提升,在失敗的時候如果不能克服困難、抵住壓力,那么任何設(shè)計都進 毫無進展。 在小車的硬件設(shè)計部分,采取了模塊化的設(shè)計,其組成部分為單片機最小系統(tǒng)、傾角傳感器電路、速度傳感器電路、電機驅(qū)動電路、電磁線檢測電路。 固定電路板應(yīng)盡可能貼近車模的底盤,使其能夠穩(wěn)固。它們都是表貼元器件,固定在電路板上。為了能夠更好的檢測前面的道路,一般將這兩個工字型的電感盡可能的安裝在車模運行前方較遠的地方。如圖 所示。 速度傳感器安裝 速度傳感器是安裝在驅(qū)動電機輸出軸上的光電碼盤以及相配合的光電對管。 圖 使用熱熔膠粘接后輪支架與底盤。但是,為了保證車模直立車體穩(wěn)定性,需要將原有車模地盤與后輪支架固定在一起。將車模放在電磁導(dǎo)引跑道上,車??梢苑€(wěn)定在跑道上運行。盡量控制車模靜止。車模跌倒判斷車模的傾角大于 45 度。讀取兩個傳感器 AD 轉(zhuǎn)換值,記錄下來 ,作為后面程序中的零偏常量。測試電機轉(zhuǎn)速以及轉(zhuǎn)向是否符合設(shè)定的要求。 } 程序 中斷服務(wù)子程序 程序調(diào)試與參數(shù)整定 前面給出的算法程序存在很多參數(shù),雖然從理論 上可以對這些
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1