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

正文內(nèi)容

畢業(yè)設(shè)計(jì)論文-基于嵌入式的智能電梯控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-資料下載頁(yè)

2024-11-10 10:05本頁(yè)面

【導(dǎo)讀】越來(lái)越多地受到人們的廣泛關(guān)注。本文以嵌入式實(shí)時(shí)操作系統(tǒng)在一種基于CAN. 和系統(tǒng)資源,簡(jiǎn)化了軟件編程,保證了系統(tǒng)的實(shí)時(shí)性,提高了系統(tǒng)的可靠性。器即可,主控器硬件軟件不需做任何改動(dòng)。使得電梯控制系統(tǒng)安裝更加靈活、系統(tǒng)μC/OS—Ⅱ的系統(tǒng)程序設(shè)計(jì)。

  

【正文】 nt Tint = 0 // 定義局部變量 Tint* OSIntEnter()。 // 通知內(nèi)核開(kāi)始中斷服務(wù) 26 OSTimeTick()。 //10MS 一個(gè)時(shí)鐘節(jié)拍 ............ 中斷服務(wù)子程序 ............ OSMboxPos t(TimerMbox,(void*)amp。Tint)。 // 發(fā)送定時(shí)時(shí)間消息到軟件定時(shí)器 OSIntExit()。 // 退出中斷 asm(″ CLRC INTM″ )。 // 開(kāi)中斷 } } 2)CAN 總線(xiàn) 數(shù)據(jù)接收模塊采用中斷 5, 函數(shù)是 c_int5()。 void c_int5() { if(PIVR==0x0040) { unsigned int CANint =0。 //定義局部變量 OSIntEnter ()。// 通知內(nèi)核開(kāi)始中斷服務(wù) 呼梯或是轎廂發(fā)送的數(shù)據(jù)的 ID 號(hào)判斷 ..................... 中斷服務(wù)子程序 ..................... OSMboxPos t (CANREMbox, (void*)amp。CANint)。// 發(fā)送 CAN 總線(xiàn)接收到的數(shù)據(jù)消息到 CAN 接收數(shù)據(jù)處理函數(shù) Can_Receive () OSIntExit ()。 // 退出中斷 asm (″ CLRC INTM″ )。//開(kāi)中斷 } } 開(kāi)關(guān)量輸入模塊 開(kāi)關(guān)量輸入模塊功能是完成讀取開(kāi)關(guān)量控制指令及電梯狀態(tài)值,并進(jìn)行數(shù)據(jù)轉(zhuǎn)換,便于其他函數(shù)調(diào)用。 采用操作系統(tǒng) μ C/OS— Ⅱ 創(chuàng)建開(kāi)關(guān)量輸入模塊任務(wù)如下 : 27 OSTaskCreate(IO_RECEIVETask, (void*)O, (void*)amp。TaskstkIORe[29],3) 任務(wù)名稱(chēng) : IORECEIVE 任務(wù)堆棧 : 分配給 開(kāi)關(guān)量輸入模塊 IORECEIVE()堆棧的棧頂指針amp。TaskstkIORe[29],操作系統(tǒng)初始化通過(guò)設(shè)置 OS_STK_GROWTH 將堆棧設(shè)定為是由上往下遞減。 優(yōu)先級(jí) : 3 采用 μ C/OS— Ⅱ 對(duì)開(kāi)關(guān)量輸入模塊管理的流程如下 : voidIO_Reeeive() { while(1) { OSTasksuspend(3)。 /*采用任務(wù)掛起方式先將任務(wù)置于掛起態(tài) */ 讀入開(kāi)關(guān)量信號(hào)輸入值及數(shù)據(jù)轉(zhuǎn)換用戶(hù)代碼 。 根據(jù)輸入信號(hào)確定正常、檢修和消防那種任務(wù)恢復(fù)就緒態(tài)。 if(檢修狀態(tài)有效 ) OSIntTaskResume(5): /*檢修任務(wù)恢復(fù)就緒態(tài) */ } 故障處理模塊 電梯控制系統(tǒng)的故障狀態(tài)處理模塊主要完成電梯處于故障狀態(tài)時(shí)的運(yùn)行控制。 采用操作系統(tǒng) μ C/OS— Ⅱ 創(chuàng)建故障處理模塊任務(wù)如下 : OSTaskCreate(Ctr_TroubleTask, (void*)0,(void*)amp。TaskstkTrouble[59], 4) 任務(wù)名稱(chēng) : Ctr_Trouble() 任務(wù)堆棧 : 分配給電梯控制系統(tǒng)故障狀態(tài)處理模塊 Ctr_trouble()堆棧的棧頂指針 amp。TaskstkTrouble[29]。 優(yōu)先級(jí) : 4 采用協(xié) μ C/OS— Ⅱ 對(duì)故障工作模塊管理的流程如下 : voidCtr_trouble() { while(l) 28 { MaiITrouble=OSMboxPend(TroubleMbox, 0, amp。error): /*采用消息郵箱與其它任務(wù)模塊進(jìn)行信息傳遞 */ troublesign=*Mai1Trouble。 /*讀取返回值,根據(jù)郵箱返回的值執(zhí)行相應(yīng)的功能 */ if(troublesign==?) { 故障處理子程序 1 } ..................... 故障處理其它子程序 ..................... } } 正常工作模塊 電梯控制系統(tǒng)正常工作模塊主要完成 : (1) 電梯正常運(yùn)行過(guò)程中的呼叫提取、呼叫計(jì)算、根據(jù)呼叫計(jì)算結(jié)果確定電梯運(yùn)行目標(biāo)樓層 . (2) 啟動(dòng)電梯運(yùn)行包括 : 主繼電器控制、給定方向、松閘和給定速度。 (3) 停止電梯運(yùn)行包括 : 主繼電器控制、撤速度、抱閘和撤方向。 (4) 開(kāi)關(guān)門(mén)控制邏輯處理。 采用操作系統(tǒng) μ C/OS— Ⅱ 創(chuàng)建電梯正常運(yùn)行模塊任務(wù)如下 : OSTaskCreate(CtrjormalTask, (void*)0, (void*)amp。TaskstkNormal[59],9) 任務(wù)名稱(chēng) : Ctr_Normal() 任務(wù)堆棧 : 分配給電梯控制系統(tǒng)正常模塊 Ctr_Normal()堆棧的棧頂指針amp。TaskstkNormal[59]。 優(yōu)先級(jí) : 9 恢復(fù)就緒態(tài)方式 : 由 I/O 輸入模塊函數(shù) IO_RECEIvE()根據(jù) I/O 口狀態(tài)執(zhí)行恢復(fù)函數(shù)進(jìn)入就緒態(tài)。 采用 μ C/OS— Ⅱ 對(duì)正常工作模塊管理的流程如下 : Ctr_Normal() 29 { while(1) { OSTasksuspend(9)。/*采用任務(wù)掛起方式將任務(wù)先置于掛起態(tài) */ } }正常運(yùn)行各部分子程序 檢修工作模 塊 電梯控制系統(tǒng)的檢修模塊主要完成工作人員在對(duì)電梯調(diào)試、維護(hù)時(shí)的運(yùn)行控制。 采用操作系統(tǒng)協(xié) μ C/OS— Ⅱ 創(chuàng)建開(kāi)關(guān)量輸入模塊任務(wù)如下 : OSTaskCreate(Ctr_ExamTask, (void*)O, (void*)amp。TaskstkExam[29], 5) 任務(wù)名稱(chēng) : Ctr_Exam() 任務(wù)堆棧 : 分配給電梯控制系統(tǒng)檢修模塊 Ctr_Exam()堆棧的棧頂指針amp。TaskstkExam[29]。 優(yōu)先級(jí) : 5 恢復(fù)就緒態(tài)方式 : 由 I/O 輸入模塊函數(shù) IO_RECEIVE()根據(jù) I/O 口狀態(tài)執(zhí)行恢復(fù)函數(shù)進(jìn)入就緒態(tài)。 采 用 μ C/OS— Ⅱ 對(duì)檢修工作模塊管理的流程如下 : void Ctr_Exam() { while(l) OSTasksuspend(5)。/*采用任務(wù)掛起方式將任務(wù)先置于掛起態(tài) */ } 檢修狀態(tài)下開(kāi)、關(guān)門(mén)和上、下行處理程序 消防狀態(tài)工作模塊 電梯控制系統(tǒng)的消防狀態(tài)工作模塊主要完成電梯處于消防報(bào)警狀態(tài)時(shí)的運(yùn)行控制 [21]。 采用操作系統(tǒng)林 μ C/OS— Ⅱ 創(chuàng)建開(kāi)關(guān)量輸入模塊任務(wù)如下 : OSTaskCreate(Ctr_FireTask, (void*)O, (void*)amp。TaskstkFire[59], 6) 任務(wù)名稱(chēng) : Ctr_Fire() 任務(wù)堆棧 : 分配給電梯控制系統(tǒng)消防狀態(tài)處理模塊 Ctr_Fire()堆棧的棧頂 30 指針 amp。TaskstkFire[29]。 優(yōu)先級(jí) : 6 恢復(fù)就緒態(tài)方式 : 由 I/O 輸入模塊函數(shù) IO_RECEIVE()根據(jù) I/O 口狀態(tài)執(zhí)行恢復(fù)函數(shù)進(jìn)入就緒態(tài)。 采用 μ C/OS— Ⅱ 對(duì)消防工作模塊管理的流程如下 : voidCtr_Fire() { while(l) { OSTasksuspend(6)。/*采用任務(wù)掛起方式將任務(wù)先置于掛起態(tài) */ 消防狀態(tài)運(yùn)行控制程序 } } CAN 總線(xiàn)接收的數(shù) 據(jù)處理模塊 電梯控制系統(tǒng)的 CAN 總線(xiàn)接收的數(shù)據(jù)處理模塊主要完成電梯主控制器從轎廂控制器、呼梯控制器接收的數(shù)據(jù)的處理。 采用操作系統(tǒng) μ C/OS— Ⅱ 創(chuàng)建故障處理模塊任務(wù)如下 : OSTaskCreate(Ctr_CanRxTask, (void*)0, (void*)amp。TaskstkCanRx[29],7) 任務(wù)名稱(chēng) : Ctr_CanRx() 任務(wù)堆棧 : 分配給電梯控制系統(tǒng) CAN總線(xiàn)接收的數(shù)據(jù)處理模塊 Ctr_CanRx()堆棧的棧頂指針 amp。TaskstkCanRx[29]。 優(yōu)先級(jí) : 7 采用 μ C/OS— Ⅱ 對(duì)數(shù)據(jù)處理模塊管理 的流程如下 : void Ctr_CanRx() { while(1) { MailCanRx=OSMboxPend(CanRxMbox, 30, amp。error): /*采用消息郵箱與其它任務(wù)模塊進(jìn)行信息傳遞 */ eznrxsign=*MailCanRx: /*讀取返回值,根據(jù)郵箱返回的值執(zhí)行相應(yīng)的功能 */ 31 if(eznrxsign==轎廂信息 ) { 轎廂數(shù)據(jù)處理子程序 } CAN 總線(xiàn)接收的數(shù)據(jù)進(jìn)行處理的其它子程序 系統(tǒng)斷電數(shù)據(jù)保存模塊 電梯控制系統(tǒng)的系統(tǒng)斷電數(shù)據(jù)保存模塊主要完成電梯控制系統(tǒng)在突然 斷電時(shí)數(shù)據(jù)的非易失保存。 采用操作系統(tǒng) μ C/OS— Ⅱ 創(chuàng)建斷電數(shù)據(jù)保存模塊任務(wù)如下 : OSTaskCreate(Ctr_SaveTask, (void*)0, (vosd*)amp。Taskstksave[29], 8) 任務(wù)名稱(chēng) : Ctr_Save() 任務(wù)堆棧 : 分配給電梯控制系統(tǒng)斷電數(shù)據(jù)保存模塊 Ctr_Save()堆棧的棧頂指針 amp。Taskstksave[29]。 優(yōu)先級(jí) : 8 恢復(fù)就緒態(tài)方式 : 由 I/0 輸入模塊函數(shù) 10_REcEIVEO 根據(jù) I/0 口狀態(tài)執(zhí)行恢復(fù)函數(shù)進(jìn)入就緒態(tài) [21]。 采用 μ C/OS— Ⅱ 對(duì)斷電數(shù)據(jù)保存模塊管 理的流程如下 : voidCtr_Save() { while(1) { OSTasksuspend(S)。/*采用任務(wù)掛起方式將任務(wù)先置于掛起態(tài) */ 系統(tǒng)斷電數(shù)據(jù)非易失保存程序 } } 軟件定時(shí)器模塊 電梯控制系統(tǒng)的軟件定時(shí)器模塊主要完成電梯主控制器的各個(gè)軟件定時(shí)器的計(jì)算和處理。 采用操作系統(tǒng) μ C/OS— Ⅱ 創(chuàng)建軟件定時(shí)器模塊任務(wù)如下 : OSTaskCreate(CtrjimerTask, (void*)0, (v。 id*)amp。TaskstkTimer[29],10) 32 任務(wù)名稱(chēng) : Ctr_TimerO 任務(wù)堆棧 : 分配給電梯控制系統(tǒng)軟件定時(shí)器模塊 ctr_Timero 堆棧的棧頂指針 amp。TaskstkTimer[29]。 優(yōu)先級(jí) : 10 采用 μ C/OS— Ⅱ 對(duì)數(shù)據(jù)處理模塊管理的流程如下 : void Ctrjimer() { while(l) MaiITimer=OSMboxPend(TimerMbox, 10, amp。error): /*采用消息郵箱與其它任務(wù)模塊進(jìn)行信息傳遞 */ timersign=*Mai1Timer: /*讀取返回值,根據(jù)郵箱返回的值執(zhí)行相應(yīng)的功能 */ if(timersign==looms 到有效 ) { 以 100ms 為基本計(jì)數(shù)單位的軟件定時(shí)器處理子程序 軟件定時(shí)器其它子程序 。 } } 33 結(jié) 論 本 設(shè)計(jì) 是以嵌入式實(shí)時(shí)操作系統(tǒng)在智能電梯控制系統(tǒng)中的應(yīng)用為背景 的 ,以?xún)?yōu)化系統(tǒng)結(jié)構(gòu)、合理分配任務(wù)和提高系統(tǒng)的可靠性為目的,引入了嵌入式 的實(shí)時(shí)操作系統(tǒng) μ C/OS— Ⅱ ,實(shí)現(xiàn)了 μ C/OS— Ⅱ 作為開(kāi)發(fā)平臺(tái)的智能電梯單梯控制系統(tǒng)的設(shè)計(jì)。 本設(shè)計(jì)中電梯主控制器硬件上采用數(shù)字信號(hào)處理器 DSP56 F8025MFBE 與可編程 器件 MAX7128S 相結(jié)合的一種高性能的結(jié)構(gòu)。 同時(shí)軟件上采用嵌入式實(shí)時(shí)操作系統(tǒng)抖 μ C/OS— Ⅱ 實(shí)現(xiàn)多任務(wù)管 理、中斷管理、定時(shí)器管理和任務(wù)間的通信與同步,這種設(shè)計(jì)方案具有的特點(diǎn)如下 : 1. 提高了系統(tǒng)的實(shí)時(shí)性和可靠性 在嵌入式系統(tǒng)中使用 RTOS 的最主要的原因是提高系統(tǒng)的實(shí)時(shí)性和可靠性。尤其是系統(tǒng)“不死機(jī)”是基本的要求。 在硬件設(shè)計(jì)上主控制器采用數(shù)字信號(hào)處理器 DSP 可以使系統(tǒng)具有高速數(shù)據(jù)處理能力,有力提高了系統(tǒng)實(shí)時(shí)性 。 而系統(tǒng)采用復(fù)雜可編程邏輯器件 CPLD 可以具有靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件設(shè)計(jì)像軟件一樣通過(guò)編程來(lái)修改,這樣就極大的提高了電子系統(tǒng)設(shè)計(jì)的靈活性和通用性,同時(shí)也實(shí)現(xiàn)了控制系統(tǒng)得微型化。 在 可靠性方面,硬件設(shè)計(jì)上盡量提高抗干擾能力,滿(mǎn)足電磁兼容性要求只是一方面,另一方面就是在軟件上采取得措施。長(zhǎng)期以來(lái),國(guó)內(nèi)傳統(tǒng)的開(kāi)發(fā)的方式是 : 針對(duì)某一應(yīng)用,畫(huà)程序流程圖、編制應(yīng)用程序。這種程序可以稱(chēng)之為線(xiàn)性程序。在遇到強(qiáng)干擾時(shí),程序在任何一處產(chǎn)生死循環(huán)或破壞都會(huì)引起死機(jī),受到強(qiáng)干擾時(shí)只能依靠硬件的最后防線(xiàn)一看門(mén)狗復(fù)位,重新啟動(dòng)系統(tǒng) 。 而對(duì)于RTOS 管理的系統(tǒng),這種干擾可能只是引起若干進(jìn)程中的一個(gè)被破壞,可以用另外的進(jìn)程對(duì)其進(jìn)行修復(fù)。不僅可以將應(yīng)用程序分解成若干獨(dú)立的進(jìn)程,而且可以應(yīng)用程序分解成若干獨(dú)立的進(jìn)程,而且 可以另外啟動(dòng)一個(gè)監(jiān)控進(jìn)程,監(jiān)視各進(jìn)程運(yùn)行狀況,遇到異常情況時(shí)采取一些措施,可以將有問(wèn)題的進(jìn)程 切 掉。 2. 使用 RTOS 可以提高開(kāi)發(fā)效率,縮短開(kāi)發(fā)周期。 一個(gè)復(fù)雜的應(yīng)用程序,可以分解成多個(gè)任務(wù)。每個(gè)任務(wù)模塊的調(diào)試、修改幾乎不影響其它模塊。 34 致 謝 首先感謝 樊 老師。在本科畢業(yè)設(shè)計(jì)階段, 樊 老師對(duì)我的學(xué)習(xí),課題研究和畢業(yè)論文寫(xiě)作給于了極大的關(guān)心,指導(dǎo)和幫助,并為我的整個(gè)畢業(yè)設(shè)計(jì)提供了良好的學(xué)習(xí)環(huán)境和實(shí)踐機(jī)會(huì)。在 他 的悉心指導(dǎo)下,我的科研能力和技術(shù)水平得到了顯著提高,為我走向社會(huì)和進(jìn)行研究工作打下了堅(jiān)實(shí)的基礎(chǔ)。 樊 老 師的淵博的知識(shí)、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和忘我的工作精神更是給我留下了深刻的印象,在今后的工作學(xué)習(xí)中,將依然激勵(lì)我不斷前進(jìn)。 感謝師哥師姐們,他們?cè)谡n題研究的過(guò)程中給了我極大的幫助。 還要感謝我的父母,感謝他們對(duì)我的最無(wú)私、最深切的關(guān)懷和支持。 在此,向所有給我的學(xué)習(xí)和生活帶來(lái)幫助的老師和同學(xué)一并表示衷心的感謝。 35 參考文獻(xiàn) [1] 李小將 、 樊天晴 , 嵌入式系統(tǒng)在信息家電中的應(yīng)用 [J],計(jì)算機(jī) l程, 2020年 4月, 2526。 [2] 許俊、許客平,在 51 系列單片機(jī)上實(shí)現(xiàn)非搶先式消息驅(qū)動(dòng)機(jī)制的 RTOS,單片機(jī)與嵌入式系統(tǒng)應(yīng)用, 2020 年第 5期, 1114。 [3] 彭克榮,電梯技術(shù)的現(xiàn)狀及發(fā)展趨勢(shì) [J],建筑機(jī)械化, , 1015。 [4] 何小慶,嵌入式實(shí)時(shí)操作系統(tǒng)的現(xiàn)狀和未來(lái)仁 [J],單片機(jī)與嵌入式系統(tǒng)應(yīng)用, 2020 年第 3期, 59。 [5] 梁合慶,今日的嵌入式系統(tǒng) [J],浙江人學(xué)學(xué)報(bào) (增刊 ), 1998, 38。 [24]雷航,面向?qū)崟r(shí)系統(tǒng)的軟件可靠性評(píng)價(jià)技術(shù)的研究 (博士學(xué)位論文 )[J],電子科技大學(xué), 1997, 590。 [6] 屠祈、屠立德,操作系統(tǒng)基礎(chǔ) [M],清華人學(xué)出版社, 2020, 656。 [7] 王濤、張偉良,嵌入式實(shí)時(shí)系統(tǒng)及其在通信系統(tǒng)中的應(yīng)用 [J],電子技術(shù)應(yīng)用, 2020 年第 6期, 58。 [8] 蔣書(shū)波、張煥春,實(shí)時(shí)操作系統(tǒng)用于嵌入式應(yīng)用系統(tǒng)的設(shè)計(jì) [J],電測(cè)與儀表, 2020 年第 8期, 1822。 [9] 司棟森,嵌入式控制系統(tǒng)的可靠性設(shè)計(jì) [J],白動(dòng)化儀表,第 22 卷第 11期, 2020 年 1月, 68。 [10] 蔡建平,關(guān)于嵌入式應(yīng)用開(kāi)發(fā)技術(shù) [J],單片機(jī)與嵌入式系統(tǒng)應(yīng)用, 2020年第 3期, 2631。 [11] 王洪榮、全書(shū)海、昊格、柯躍, DSP 的 SP 工口與串 行 EEPR 伽在電梯控制系統(tǒng)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1