




已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
鄭州大學機械工程學院 I 摘要摘要摘要摘要 瑞薩 MCU 模型車 是在搭載有瑞薩 MCU 主板的模型車上自行設計并編制獨立的控 制程序 組裝制作成具有自動識別功能的 MCU 汽車模型 MCU 模型車在跑道中央行駛 時讀取跑道中央的白線作為輸入信息以控制行駛路線 其構(gòu)造分兩大部分 程控部分和機 械部分 程控部分為傳感器 當模型車行駛時車體前方的傳感器迅速讀取路面信息 并傳 達至主控制器 以控制行駛方向 機械部分為馬達 齒輪 輪胎 舵機等 動力源為 8 節(jié) AA 型電池 對模型車的深入研究 不僅可以加強我們對機電一體化產(chǎn)品的理解 還能使我們從中 領悟到一些有關電動汽車理論的真諦 本文主要研究 MCU 模型車的結(jié)構(gòu)組成與工作原理 建立 MCU 模型車的幾何模型 運動學模型及動力學模型 并對其進行理論分析和研究 調(diào)試 MCU 模型車的基本性能 通過實驗研究 MCU 模型車在指定軌道上穩(wěn)定運行的程序及對模型車運行造成影響的因 素 關鍵詞關鍵詞 MCU 模型車 原理 模型 程序 AbstractAbstractAbstractAbstract The Micom car of Renesas is a model of car which has the CPU board of Renesas with which you can design and input independent program and it has the function of distinguishing the course automaticly The Micom car reads the white central line when it runs in the middle of the course The construction of the Micom car consists of two parts One part which is controlled by the program is made up by the sensors in front of the Micom car which read the information of the course and convey it to the main controller The other part which is the mechanical section is comprised of motors gears tyres servo and so on 8 pieces of secondary AAbatteries are used as the source of the power The research of the Micom car not only can enhance our understanding with the products of mechatronics but also can make us grasp some theories about the motor car This article mainly discusses the composition and the principle of the Micom car establishes the geometric model dynamic model and kinematic model of the Micom car debugs the basical capabilities of the Micom car writes the program which makes the Micom car run stabily on the course and analyses the factors that affect the process of running KeywordsKeywordsKeywordsKeywords Micom Car principle model procedures 鄭州大學機械工程學院 II 目錄目錄目錄目錄 摘要 Abstract 1引言 1 2MCU 模型車的結(jié)構(gòu)組成及工作原理 2 2 1 傳感器基板 2 2 2 傳感器子基板 3 2 3 CPU 主板 4 2 4 馬達驅(qū)動電路 5 2 5 伺服舵機控制電路 8 2 6 發(fā)光二極管電路 9 2 7 開 關電路 10 2 8 電源 10 3MCU 模型車的幾何模型 運動學模型和動力學模型分析 11 3 1 模型車幾何模型的建立與分析 11 3 2 模型車動力學模型的建立與分析 12 3 3 模型車運動學模型的建立與分析 16 4MCU 模型車在指定軌道上運行的程序設計 18 5影響 MCU 模型車穩(wěn)定運行的因素 32 6結(jié)論 34 致謝 35 參考文獻 36 1 1 1 1引言引言引言引言 鄭州大學機械工程學院 2 MCU 模型車的設計與制作起源于由日本社團法人全國高中協(xié)會等主辦的 JAPAN MCU 模型車大賽 英文 Japan Micom Car Rally 目前這項賽事已經(jīng)在日本成功舉辦 了十余屆 由于這項大賽的科技層次較高 并且具有很強的競爭性和觀賞性 如今 JAPAN MCU 模型車大賽 已經(jīng)成為日本國內(nèi)的全國性重大賽事 2007 年 由瑞薩科技冠名贊助的 瑞薩超級 MCU 模型車大賽 首次在北京舉行 并 被教育部列為 全國大學生 IT int i for i 0 i 1 ret in in 1 return ret 鄭州大學機械工程學院 21 函數(shù)中 變量 in 是位轉(zhuǎn)換前的 8 位二進制數(shù)值 變量 ret 是經(jīng)過位轉(zhuǎn)換后函數(shù)的 返回值 該函數(shù)的功能是將 8 位二進制數(shù)的前后對稱的二進制位兩兩互換 其實現(xiàn)過程如 下 先將變量 ret 右移一位 使第 7 位為 0 第 0 位消失 隨后 對變量 ret 的第 7 位與輸 入變量in 的第 7 位進行或操作 并將取或后的值存到前者中 由于 ret 的第 7 位通常為 0 因此 或操作后 變量 ret 的第 7 位中存放的值就是輸入?yún)?shù) in 的第 7 位的值 最后 將 變量 in 左移一位 結(jié)束一次循環(huán) 如此循環(huán) 8 次后 就能實現(xiàn)函數(shù)預定的位轉(zhuǎn)換功能 2 傳感器狀態(tài)讀取函數(shù) unsigned char sensor inp unsigned char mask unsigned char sensor sensor P7DR sensor bit change sensor sensor return sensor 因為傳感器子基板的輸出端與 CPU 主板的接口 7 相連 所以傳感器值由接口 7 輸入 并將該值存放到變量 sensor 中 函數(shù)的輸入?yún)?shù) mask 可以限制傳感器的輸入狀態(tài) 將制 定的傳感器位覆蓋為 0 由于如今的傳感器基板的第 0 位在最左側(cè) 第 7 位在最右側(cè) 與 之前的傳感器基板相反 為了保持其兼容性 變量 sensor 中的值經(jīng)過位轉(zhuǎn)換后再次存儲 到 sensor 中 經(jīng)過位轉(zhuǎn)換后的傳感器值與函數(shù)的輸入?yún)?shù) mask 進行與操作 最終就可得 到需要的傳感器狀態(tài)值 并存放到變量 sensor 中 作為返回值 3 interrupt timer0 函數(shù) void interrupt timer0 void ITU0 TSR cnt0 cnt1 該函數(shù)通過中斷產(chǎn)生 1ms 的時間間隔來執(zhí)行 變量 cnt0 和 cnt1 的值分別增加 1 由 于 interrupt timer0 函數(shù)執(zhí)行一次需要 1ms 因此可以通過檢測主程序中 cnt0 或 cnt1 的值 來測量所持續(xù)的時間 變量 ITU0 TSR 表示計時器狀態(tài)寄存器 它與 0 xfe 執(zhí)行與操作 并將結(jié)果保存到前者中 相當于將 ITU0 TSR 的第 0 位置 0 之所以要在函數(shù)中編寫這 一句 是因為當中斷產(chǎn)生時 ITU0 TSR 的第 0 位可以自動地變?yōu)?1 但是卻不會再自動 的由 1 變?yōu)?0 因此要利用與操作使第 0 位置 0 為下一次操作做準備 4 等待計時器函數(shù) void timer unsigned long timer set cnt0 0 While cnt0 timer set 改變函數(shù)輸入?yún)?shù) timer set 的值 可以改變等待計時器的工作時間 例如 取輸入?yún)?數(shù) timer set 的值為 1000 全局變量 cnt0 首先被初始化為 0 接著執(zhí)行 while 語句 程序轉(zhuǎn) 到 cnt0 被操作的地方 由于執(zhí)行 interrupt timer0 函數(shù)而產(chǎn)生的 1ms 中斷將使 cnt0 的值增 加 1 然后 再次執(zhí)行 while 語句 如此往復循環(huán) 直至 cnt0 的值為 1000 時終止 最后可 鄭州大學機械工程學院 22 以得出等待計時器函數(shù)的工作時間為 1000 毫秒 即 1s 5 橫白線檢測函數(shù) int check crossline void unsignde char b int ret ret 0 b sensor inp MASK2 2 if b 0 x66 b 0 x64 b 0 x26 b 0 x62 b 0 x46 ret 1 return ret 該函數(shù)為無參數(shù)函數(shù) 主要用來判斷是否已經(jīng)檢測到直角彎道前具有提示作用的第一 條橫白線 如果檢測到橫白線 返回值為 1 相反 如果沒有檢測到橫白線 則返回值為 0 函數(shù)中 首先將作為返回值的變量 ret 置 0 認為沒有檢測到橫白線 然后 讀取經(jīng) MASK2 2 掩蓋后的傳感器狀態(tài) 并將該狀態(tài)值存入變量 b 中 也就是說 除了左側(cè)中間 兩個和右側(cè)中間兩個傳感器的數(shù)據(jù)能正常使用外 其余各位傳感器輸出值均被置為 0 當變量 b 中傳感器的輸入狀態(tài)滿足 if 語句中列舉的幾種狀態(tài)中的一種時 就可以認為已經(jīng) 檢測到橫白線 變量 ret 置為 1 否則 變量 ret 仍為 0 認為沒有檢測到橫白線 6 DIP 開關狀態(tài)讀取函數(shù) unsigned char dipsw get void unsigned char sw sw P6DR sw return sw 由于 DIP 開關與接口 6 相連 故從接口 6 讀取數(shù)據(jù) 如果 DIP 開關關閉 則接口數(shù)據(jù) 為 1 如果 DIP 開關打開 則接口數(shù)據(jù)為 0 因為關閉與 0 對應 而打開與 1 對應 更容易理解 因此這里采用符號 對 DIP 開關的狀態(tài)值進行取反 并將其存放 到變量 sw 中 稱為 邏輯否定 由于 DIP 開關只有 4 位 所以這里采用 sw 與 0cf0 的與操作將變量 sw 的前 4 位屏蔽 最后 將變量 sw 作為函數(shù)的返回值 7 按鈕開關狀態(tài)讀取函數(shù) unsigned char pushsw get void unsigned char sw sw PBDR sw return sw 接口 B 的第 0 位用來讀取按鈕開關的狀態(tài)數(shù)據(jù) 如果按鈕沒被按下 數(shù)據(jù)為 1 相 反 如果按鈕被按下 則數(shù)據(jù)為 0 這里同樣采用符號 對按鈕開關的狀態(tài)值取反 以便符合人們的思維習慣 容易理解 由于按鈕開關的狀態(tài)值只有一位 因此需要使用語 句 sw led led led 0 左馬達 PBDR ITU3 BRB speed max accele l 100 else PBDR 0 x04 accele l accele l ITU3 BRB speed max accele l 100 if accele r 0 右馬達 PBDR ITU4 BRA speed max accele r 100 else PBDR 0 x08 accele r accele r ITU4 BRA speed max accele r 100 與其它函數(shù)不同 該函數(shù)無返回值 由于左右馬達的速度控制為 PWM 控制 而 PWM 的值又受到模型車 CPU 主板上 DIP 開關狀態(tài)的限制 因此 函數(shù)中首先調(diào)用 dipsw get 函數(shù) 來獲得 CPU 主板上 DIP 開關的狀態(tài)值 并將其值加 5 后存放到變量 sw data 中 這樣變量 sw data 的值就位于 5 至 20 之間 并取決于 DIP 開關的狀態(tài)值 在運用變量 sw data 計算馬達的最大速度時 由于計算過程中 數(shù)值較大 可能會造成溢出 而使結(jié) 果發(fā)生錯誤 因此 暫時將其定為無符號變量 來防止發(fā)生溢出 保證結(jié)果的正確性 左馬達的轉(zhuǎn)速控制過程如下 首先檢測輸入?yún)?shù) accele l 是否大于等于 0 如果大于 等于 0 的話 則將接口 B 的第 2 位置 0 使馬達正轉(zhuǎn) 接著 計算左馬達的工作比率 雖 然 工作比率的設置似乎是靠通用寄存器 B 來完成的 而實際上 在程序中是靠緩沖寄存 器 B ITU3 BRB 來實現(xiàn)的 要注意 通過速度函數(shù)設置的比率并不直接輸出到馬達 而是將 DIP 的比率 速度函數(shù)設置的比率 輸出到馬達作為控制信號 如果 accele l 小 鄭州大學機械工程學院 24 于 0 的話 則將接口 B 的第 2 位置 1 使馬達反轉(zhuǎn) 隨后將輸入?yún)?shù) accele l 取相反數(shù) 然后再進行工作比率的計算 其計算方法與正轉(zhuǎn)時的算法相同 對于右馬達的轉(zhuǎn)速控制分析 與左馬達非常相似 不同之處為 控制右馬達正 反轉(zhuǎn) 的信號由接口 B 的第 3 位輸出 并且對右馬達工作比率的設置是依靠 ITU4 BRA ITU4 寄存器中的緩沖寄存器 A 來實現(xiàn)的 10 伺服舵機轉(zhuǎn)角控制函數(shù) void handle int angle ITU4 BRB SERVO CENTER angle HANDLE STEP 伺服舵機與接口 B 的第 5 位相連 由于采用了復位同步脈寬調(diào)制模式 改變緩沖寄存 器 B ITU4 BRB 的值就可以改變 PB5 的工作比率 從而改變舵機的轉(zhuǎn)角值 SERVO CENTER 是伺服舵機的中心值 其對應舵機的轉(zhuǎn)角值為 0 度 存放在輸入?yún)?shù) angle 中的唯一轉(zhuǎn)角值是舵機由 0 度開始 需要轉(zhuǎn)動的角度 其實現(xiàn)方法為 在中心值的 基礎上增加或減少相應的值 并存放到 ITU4 BRA 中 然而 緩沖寄存器 B ITU4 BRB 中的一個單位并不代表一度 在變量 HANDLE STEP 中 存放著 1 度轉(zhuǎn)角所對應的值 因此 需要將變量 angle 與變量 HANDLE STEP 相乘后 再在 SERVO CENTER 的基礎上 進行加減 11 初始化函數(shù) void init void P1DDR 0 xff I O 接口設置 P2DDR 0 xff P3DDR 0 xff P4DDR 0 xff P5DDR 0 xff P6DDR 0 xf0 P8DDR 0 xff P9DDR 0 xf7 PADDR 0 xff PBDR 0 xc0 PBDDR 0 xfe ITU0 TCR 0 x23 ITU0 每一秒產(chǎn)生一次中斷 ITU0 GRA TIMER CYCLE ITU0 IER 0 x01 ITU3 TCR 0 x23 左右馬達和伺服舵機的 ITU3 ITU FCR 0 x3e ITU4 復位同步脈寬調(diào)制模式 ITU3 GRA PWM CYCLE ITU3 GRB ITU3 BRB 0 ITU4 GRA ITU4 BRA 0 ITU4 GRB ITU4 BRB SERVO CENTER ITU TOER 0 x38 鄭州大學機械工程學院 25 ITU 開始計時 ITU STR 0 x09 I O 接口是輸入 輸出接口的簡稱 是執(zhí)行輸入和輸出操作的地方 這里共有 11 個接 口 分別為接口 1 至接口 B 其中 大部分接口為 8 位 也有一些是少于 8 位的 例如 接口 5 只有 4 位 接口 6 只有 7 位 接口 8 只有 5 位 接口 9 只有 6 位 這些接口分別 由 DDR 寄存器和 DR 寄存器組成 但是 要注意接口 7 是一個多余的輸入接口 沒有相 關的 P7DDR 寄存器 DDR 是 數(shù)據(jù)方向寄存器 的簡稱 它決定輸入 輸出的方向 二進制位為 0 時 表示相應的引腳為輸入引腳 二進制位為 1 時 表示相應的引腳為輸出引腳 以 程序中的 PBDDR 0 xfe 語句為例進行分析 它是對接口 B 各引腳進行的輸入 輸出設 置 將十六進制數(shù) 0 xfe 轉(zhuǎn)換成二進制數(shù)為 1111 1110 它表示接口 B 的第 1 位至第 7 位 引腳均為輸出引腳 只有第 0 位引腳為輸入引腳 DR 是 數(shù)據(jù)寄存器 的簡稱 它可以將數(shù)據(jù)輸出到引腳或從引腳輸入 對于被設置 為輸入接口 DDR 0 的引腳 通過讀取數(shù)據(jù)寄存器 DR 中的數(shù)據(jù)來獲得引腳的電壓水平 輸入給引腳的電壓為低電平時 數(shù)據(jù)寄存器 DR 中相應的二進制位為 0 輸入給引腳的 電壓為高電平時 數(shù)據(jù)寄存器 DR 中相應的二進制位為 1 而對于被設置為輸出接口 DDR 1 的引腳 通過向 DR 寫入數(shù)據(jù)來輸出引腳的電壓水平 從引腳輸出的電壓為低 電平時 向數(shù)據(jù)寄存器 DR 中相應的二進制位寫入 0 從引腳輸出的電壓為高電平時 向數(shù)據(jù)寄存器 DR 中相應的二進制位寫入 1 因此 程序中的 PBDR 0 xco 語句表 示 接口 B 的引腳 6 和引腳 7 為高電平 其余引腳均為低電平 下面以表格的形式介紹一下接口 B 所連接的具體信號及其作用 以便對程序中為何如 此設置 PBDDR 和 PBDR 的初始值有所了解 馬達驅(qū)動基板 接口引腳 信號方向具體信號內(nèi)容二進制值 0 代表的意義 二進制值 1 代表的意義 1 5V 2PB7 至基板發(fā) 光 二 極 管 LED1 接通斷開 3PB6 至基板發(fā) 光 二 極 管 LED0 接通斷開 4PB5 至基板伺服舵機信號PWM 信號 5PB4 至基板右馬達 PWM停止PWM 運動 6PB3 至基板右馬達旋轉(zhuǎn)方 向 正轉(zhuǎn)反轉(zhuǎn) 7PB2 至基板左馬達旋轉(zhuǎn)方 向 正轉(zhuǎn)反轉(zhuǎn) 8PB1 至基板左馬達 PWM停止PWM 運動 9基板至 PB0按鈕按下未按下 10接地 初始化程序的后一部分是對 ITU0 寄存器進行設置 使其每隔 1ms 就產(chǎn)生一次中斷 并設置左 右馬達和伺服舵機的 PWM 生成方式 程序中 ITU0 TCR 計時器控制寄存器 首先被初始化為 0 x23 隨后又令 ITU0 GRA TIMER CYCLE 其意義為 ITU0 CNT 計時計數(shù)器 可以與 ITU0 GRA 鄭州大學機械工程學院 26 通用寄存器 A 進行比較 而 ITU0 CNT 每隔特定的一段時間 其值就會增加 1 當滿 足條件 ITU0 CNT ITU0 GRA 1 時 也就是說 經(jīng)過 ms 后 ITU0 CNT 的自身值 將會再次被置為 0 為下一次定時計數(shù)做準備 ITU0 IER 是計時器中斷允許寄存器 ITU0 IER 0 x01 表示允許寄存器產(chǎn)生中斷 程序最后的 ITU STR 是計時器開始寄存 器 將其初始化為十六進制數(shù) 0 x09 可以命令計時器開始計時 控制左 右馬達和伺服舵機的 PWM 生成方式為復位同步脈寬調(diào)制模式 該模式采用 ITU3 寄存器和 ITU4 寄存器 通過結(jié)合輸出 3 組觸發(fā)的 PWM 波形 而且 這 3 組 PWM 波形的反波形也同時被輸出 但是 必須保證 3 組波形的周期均相同 因此 程序中首先 將 ITU3 TCR 設置為十六進制數(shù) 0 x23 即允許 ITU3 CNT 與 ITU3 GRA 進行比較 而 ITU3 CNT 與 ITU0 CNT 一樣 每隔相同的一段時間 其值就會增加 1 又由于 ITU3 GRA PWM CYCLE 因此當滿足條件 ITU3 CNT ITU3 GRA 1 時 已經(jīng)過 16ms 的時間 這個時間就是 3 組 PWM 波形共同具有的循環(huán)周期 程序中 語句 ITU TOER 0 x38 表明 對左 右馬達和伺服舵機進行 PWM 控制的三組 PWM 波形是 分別從接口 PB1 PB4 和 PB5 輸出的觸發(fā)產(chǎn)生的 PWM 波形的反波形 改變緩沖寄存器 ITU3 BRB ITU4 BRA 和 ITU4 BRB 的值就可以改變通用寄存器 ITU3 GRB ITU4 GRA 和 ITU4 GRB 的值 從而分別實現(xiàn)對左 右馬達和伺服舵機的 PWM 控制 其中 當 ITU3 CNT ITU3 GRB 1 時 PB1 的輸出信號開始翻轉(zhuǎn) 當 ITU3 CNT ITU4 GRA 1 時 PB4 的輸出信號開始翻轉(zhuǎn) 當 ITU3 CNT ITU4 GRB 1 時 PB5 的輸出信號開始 翻轉(zhuǎn) 所以 改變上述通用寄存器的值就可以達到改變脈寬工作比率的目的 而當 ITU3 CNT ITU3 GRA 1 時 ITU3 CNT 清 0 為下一個循環(huán)周期做準備 在介紹上述各函數(shù)時 用到了許多接口寄存器 必須先對這些接口寄存器進行定義 才能在程序中調(diào)用它們 從而保證程序的正確運行 H8 3048F ONE 芯片中 對這些具有 內(nèi)置外圍功能的 I O 寄存器的定義保存在名為 h8 3048 h 的文件中 見附件 這里只 介紹一些對于有關 I O 寄存器定義的理解 以程序中的語句 define PADDR unsigned char 0 xfffd1 為例 其意義是 無論何時 只要程序中出現(xiàn)字符串 PADDR 它都將 會被字符串 unsigned char 0 xfffd1 代替 字符串 unsigned char 0 xfffd1 中的批號 0 xfffd1 代表具有內(nèi)置外圍功能 包括 I O 接口 的 I O 寄存器被分配到存儲器中 的地址 而存儲到存儲器地址中的值將作為要輸出或輸入的信號 至此 編寫 MCU 模型車在指定軌道上運行的主程序及對模型車各部分組件進行檢測 的測試程序所需的準備工作已大體完成 利用上述各函數(shù)所能實現(xiàn)的功能及對模型車幾何 模型 動力學模型 運動學模型的分析 我們可以得出模型車在當前傳感器顯示的狀態(tài)下 理論上應該實現(xiàn)的動作 并用 C 程序語句表達出來 這樣就完成了主程序的大體結(jié)構(gòu)設 計 然而 由于模型車在賽道上運行時可能出現(xiàn)的情況較多 必然會使理想的主控制程序 的整體結(jié)構(gòu)變得較為復雜 一般需要經(jīng)過多次的調(diào)試和修改才能使其滿足控制要求 同時 程序中調(diào)用馬達速度控制函數(shù)和伺服舵機轉(zhuǎn)角控制函數(shù)時 其最優(yōu)參數(shù)的確定同樣離不開 實驗的校核與修正 因此 主控制程序具體內(nèi)容的確定及完善必須以實驗結(jié)果為準則 模型車的主控制程序基本上可以分為以下幾塊內(nèi)容 各程序塊之間主要 靠 switch pattern 語句進行有機的連接 1 等待按鈕開關輸入 這是主體運行程序開始執(zhí)行前的等待過程 該過程可以無限運行 直至按鈕開關被按 下 當開關未被按下時 執(zhí)行該部分程序 使發(fā)光二極管 LED0 和 LED1 交替閃爍 每個 發(fā)光二極管閃爍的時間間隔為 0 1s 這樣 只通過簡單的觀察 就可以清楚地判斷出整個 程序正處在等待階段 如果開關被按下 則程序的流程轉(zhuǎn)向下一階段 準備執(zhí)行主體運行 程序 可用下面的程序語句來實現(xiàn)該等待過程 鄭州大學機械工程學院 27 case 0 if pushsw get pattern 1 cnt 0 break if cnt1 100 led out 0 x1 else if cnt1 200 led out 0 x2 else cnt1 0 break 2 按鈕開關按下后等待一秒鐘 之所以要在按鈕被按下后 等待一段時間再執(zhí)行軌跡控制程序 是為了避免按鈕被按 下后 模型車立即快速行駛 可能會與按按鈕的手相撞 從而破壞模型車的正常運行軌跡 由于盲目的等待總會讓人感到焦慮 擔心模型車是否出現(xiàn)故障 因此用兩個發(fā)光二極管分 別閃亮 0 5 秒來指示這 1s 的等待過程 用 C 語句表示為 case 1 if cnt1 500 led out 0 x1 else if cnt1 50 鄭州大學機械工程學院 29 cnt1 0 pattern 23 break case 23 制動過程 if cnt1 50 cnt1 0 pattern 24 break switch sensor inp MASK3 3 case 0 x00 handle 0 speed 0 0 break case 0 x04 handle 0 speed 0 0 break case 0 x06 case 0 x07 case 0 x03 handle 8 speed 20 18 break case 0 x20 handle 0 speed 0 0 break case 0 x60 case 0 xe0 case 0 xc0 handle 8 speed 18 20 break default break break case 24 轉(zhuǎn)向過程 switch sensor inp MASK3 3 case 0 xe0 led out 0 x1 handle 44 speed 13 30 鄭州大學機械工程學院 30 pattern 31 cnt1 0 break case 0 x07 led out 0 x2 handle 44 speed 30 13 pattern 41 cnt1 0 break case 0 x00 handle 0 speed 0 0 break case 0 x04 case 0 x06 case 0 x03 handle 8 speed 20 18 break case 0 x20 case 0 x60 case 0 xc0 handle 8 speed 18 20 break default break break case 31 左直角彎轉(zhuǎn)向時間控制 if cnt1 450 pattern 32 cnt1 0 break case 32 左直角彎結(jié)束 if sensor inp MASK3 3 0 x60 led out 0 x0 pattern 11 cnt1 0 break case 41 右直角彎轉(zhuǎn)向時間控制 鄭州大學機械工程學院 31 if cnt1 450 pattern 42 cnt1 0 break case 42 右直角彎結(jié)束 if sensor inp MASK3 3 0 x06 led out 0 x0 pattern 11 cnt1 0 break 要特別注意的是 不僅在普通運行軌跡中要隨時檢測是否會遇到標志著直角彎道的橫 白線 而且還要在急轉(zhuǎn)圓弧彎道結(jié)束的時候檢測是否有直角彎道與急轉(zhuǎn)彎道直接相連 只 有這樣 才能保證模型車在各種賽道情況下均能順利的運行 綜上所述 我們可以得到模型車在指定賽道上運行的主控制程序的主體構(gòu)架 不過 其具體內(nèi)容還需要通過實驗來進行進一步的校正和修改 至此 主程序中還缺少許多相關 的數(shù)據(jù)值 它們同樣是整個程序的主體部分 更是整個程序的靈魂所在 而這些都需要經(jīng) 過多次的實驗和比較才能獲得 由于受賽道摩擦系數(shù)的限制 模型車的DIP 開關取值為 1000 也就是說 即使在程序中輸入馬達速度的比率為 100 模型車所具有的真實速 度值也只有其最大速度值的 65 經(jīng)過在指定賽道上進行的多次實驗 最終得到了較理想 的程序結(jié)構(gòu)和參數(shù)值 其具體內(nèi)容參看附件 相對于 MCU 模型車的主控制程序而言 其測試程序的結(jié)構(gòu)和內(nèi)容要簡單的多 此處 不再做分析 測試程序的具體內(nèi)容詳見附件 鄭州大學機械工程學院 32 5 5 5 5影響影響影響影響 MCUMCUMCUMCU 模型車穩(wěn)定運行的因素模型車穩(wěn)定運行的因素模型車穩(wěn)定運行的因素模型車穩(wěn)定運行的因素 經(jīng)理論推導和實驗分析可知 影響 MCU 模型車穩(wěn)定運行的因素有很多 限制或改善 這些因素 對于同時提高模型車的運行速度和運行穩(wěn)定性具有十分重要的意義 首先 從模型車的自身結(jié)構(gòu)出發(fā) 對影響其穩(wěn)定運行的因素進行分析 這些因素主要 是模型車各部分在運行過程中的響應速度 其中包括 傳感器基板的響應速度 伺服舵機 的響應速度和后輪轉(zhuǎn)速的響應速度等 傳感器基板是整個模型車系統(tǒng)的起始端 其響應的快速性決定了 MCU 模型車系統(tǒng)對 賽道信息讀取的快慢程度 傳感器的響應速度越快 越有利于 MCU 模型車對識別的賽道 提前采取響應動作 防止在高難度彎角處沖出賽道 傳感器基板下還有兩個對傳感器基板 起支撐作用的摩擦片 用來防止傳感器基板上的元器件在模型車運行過程中磨損 又由于 傳感器采用接收反射光線的原理來讀取賽道信息 所以當摩擦片太高時 可能會使光傳感 器 S7136 的接收面無法接收到反射回來的光線 致使對賽道信息造成錯誤的識別 并使模 型車產(chǎn)生誤動作 同時 其與賽道表面的摩擦力大小還會在一定程度上影響模型車的運行 速度 伺服舵機是控制模型車轉(zhuǎn)向的機構(gòu) 是模型車的重要組成部分 其響應速度的快慢 對能否保證模型車及時調(diào)整自身位置并順利通過各種復雜彎道有著至關重要的作用 然 而 伺服舵機響應的快速性又同時受到伺服舵機自身特性 傳感器基板重量 連接機構(gòu)的 摩擦力及轉(zhuǎn)向摩擦力等多方面因素的影響 左 右后輪轉(zhuǎn)速響應的快速性是保證模型車穩(wěn) 定運行的關鍵所在 由于后輪是靠齒輪與馬達相連的 如圖 25 所示 即使在馬達的響應 速度滿足要求的條件下 改變馬達轉(zhuǎn)速使其發(fā)生較大變化時 也可能會造成齒輪在短時間 內(nèi)脫離嚙合狀態(tài) 致使車輪速度不能及時改變 尤其是在直角彎道處 必須使模型車在很 短的時間內(nèi)就達到制動要求 才能保證其不沖出賽道 此時 對車輪轉(zhuǎn)速響應的快速性要 求較高 圖 25 其次 從模型車所處的外界條件 即指定的具有明顯黑白條紋的賽道 出發(fā) 對影響 其穩(wěn)定運行的因素進行分析 模型車輪胎與賽道的摩擦系數(shù)大小對于能否保證模型車順利地通過各種復雜的彎道 具有很大的影響 尤其對與較長直道連接的彎道 較大的摩擦力顯得更為重要 如果摩擦 力太小 模型車受到進入彎道前初速度的影響 可能會使車身在轉(zhuǎn)向時發(fā)生漂移 直接將 車尾甩出賽道 最后 從控制模型車運行的主控制程序出發(fā) 對影響其穩(wěn)定運行的因素進行分析 由于模型車的運行是靠程序進行控制的 因此 程序結(jié)構(gòu)的恰當與否及參數(shù)值的最優(yōu) 化問題必然是對模型車運行穩(wěn)定性造成影響的主要因素之一 而對于該因素的改善 除了 要對程序進行理論上的細化分析外 還要通過實驗來對其具體內(nèi)容進行修正和校核 以上所述 即為影響 MCU 模型車在指定賽道上穩(wěn)定運行的各種主要因素 然而 這 鄭州大學機械工程學院 33 些影響因素中有許多是不易改善的 為了提高模型車在賽道上運行的穩(wěn)定性 可以采用加 大傳感器基板與伺服舵機之間距離的方法 使模型車提前識別的賽道長度更長 給模型車 充足的時間來產(chǎn)生響應動作 但是 這個最佳距離的確定要以模型車的運行速度 賽道摩 擦系數(shù)及模型車各部分的響應速度等因素為準則 鄭州大學機械工程學院 34 6 6 6 6結(jié)論結(jié)論結(jié)論結(jié)論 綜上所述 我們已經(jīng)完成了對 MCU 模型車的結(jié)構(gòu)分析和理論研究 并在運動過程中 為模型車建立了相關的數(shù)學模型 最終通過可靠的理論分析及實驗修正得到了模型車在指 定賽道上順利運行的優(yōu)化控制程序 事實上 對于模型車各項內(nèi)容的研究 具有十分重要的實際意義 首先 對模型車結(jié)構(gòu)組成及工作原理的研究 不僅有助于我們獨立運用所學的電工知 識自行設計能夠?qū)崿F(xiàn)指定功能的電子電路并改善模型車的內(nèi)部結(jié)構(gòu) 而且有利于提高我們 解決實際問題的能力 MCU 模型車是一個比較完整的電子控制系統(tǒng) 其各部分控制功能 的實現(xiàn)主要依靠控制電路來完成 而模型車的控制電路中又以馬達控制電路最為典型 也 最為復雜 馬達轉(zhuǎn)速的控制方法為 PWM 控制 而其正 反轉(zhuǎn)及剎車的控制主要靠由四個 FET 組成的 H 橋電路來實現(xiàn) 對于該電路的理解和研究 可以為今后設計相關的馬達控 制電路奠定良好的基礎 同時 模型車的整個控制電路中還存在許多穩(wěn)壓元件 這對于保 障電路安全有效的工作具有重要作用 其次 在運動過程中為模型車建立相關的幾何模型 運動學模型以及動力學模型 可 以便于我們對模型車的整個運動過程進行全面的分析和研究 對模型車運動過程中各種數(shù) 學模型的描述和分析 能讓我們從理論上獲得模型車運行的各種極限狀況及其最優(yōu)路徑 并采取相關的措施對其加以控制 而且 對模型車運動過程的建模分析 還可以提高我們 對運動模型的建模能力 從理論上正確地認識模型的運動過程 最后 為模型車編寫相應的控制程序是整篇論文最為主要的研究部分 模型車的控制 程序為 C 語言程序 它是整個 MCU 模型車的靈魂所在 好的控制程序可以使模型車在 運行過程中兼?zhèn)涓咚傩院头€(wěn)定性 并能減少誤動作的發(fā)生 但是 應該注意 程序的設計 還應該考慮到那些影響模型車穩(wěn)定運行的因素 而實驗則是檢驗模型車控制程序優(yōu)劣的最 佳途徑 通過對模型車控制程序的編寫和修改 不僅提高了我的編程水平 而且還鍛煉了 我的實踐能力 至此 畢業(yè)設計的主體內(nèi)容已基本完成 通過對 MCU 模型車的分析與研究 使我接 觸了許多以前未曾涉足過的新事物 并有機會將所學的理論知識應用到實踐 在經(jīng)過多次 實驗后 我得到了完全可靠的程序結(jié)構(gòu) 并對程序中的參數(shù)進行了優(yōu)化 完全有能力保證 模型車在任何指定的賽道上以較高的速度穩(wěn)定運行 鄭州大學機械工程學院 35 致謝致謝致謝致謝 本文是在劉廣瑞副教授的悉心指導下完成的 在我進行畢業(yè)設計期間 每當遇到學術(shù) 上的困難時 劉老師總是耐心的為我講解 并指導我應該如何下手去分析并解決問題 同 時 劉老師還為我提供了難得的實驗條件 使我能在實踐中更好地理解畢業(yè)設計的核心內(nèi) 容 在此 我真心的感謝劉廣瑞老師對我的關心和幫助 是您在我大學的最后
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 油田開發(fā)項目資金申請報告(范文參考)
- 汽車配套產(chǎn)業(yè)基地項目投標書(參考模板)
- xx片區(qū)城鄉(xiāng)供水一體化項目投標書
- 《GB41930-2022低水平放射性廢物包特性鑒定水泥固化體》深度解析
- 四川省遂寧市2024-2025學年高一下學期期末考試歷史試卷
- 2025年汽車儀表相關計數(shù)儀表項目合作計劃書
- 2025年醫(yī)療物聯(lián)網(wǎng)技術(shù)在患者生命體征監(jiān)測中的應用前景報告
- 2025健身房租賃合同
- 教育技術(shù)的倫理準則與實踐探索
- 航空發(fā)動機維修技術(shù)創(chuàng)新在成本控制中的應用與優(yōu)化策略報告
- 生產(chǎn)現(xiàn)場變化點管理行動指南
- 中國古典小說巔峰:四大名著鑒賞學習通課后章節(jié)答案期末考試題庫2023年
- 模擬電子技術(shù)基礎知到章節(jié)答案智慧樹2023年蘭州石化職業(yè)技術(shù)大學
- JJF 1915-2021傾角儀校準規(guī)范
- GA/T 1310-2016法庭科學筆跡鑒定意見規(guī)范
- 2023年本科招生考試
- 新入職護士培訓考試試題及答案
- 《消防安全技術(shù)實務》課本完整版
- 北師大版七年級數(shù)學下冊 與信息技術(shù)相融合的數(shù)學教學案例 教案
- 鈍針穿刺法臨床應用護理
- 水產(chǎn)養(yǎng)殖行業(yè)報告
評論
0/150
提交評論