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

正文內(nèi)容

基于單片機(jī)水下水機(jī)器人吳康(編輯修改稿)

2025-07-24 19:27 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 (2)手臂設(shè)計(jì)原則: ①經(jīng)濟(jì)性:在滿足功能的前提下盡可能采用簡(jiǎn)單的方案,使用常見的、供應(yīng)豐富的材料和元器件,以降低生產(chǎn)成本: ②可靠性:機(jī)器人的使用環(huán)境比較惡劣,有電機(jī)啟制動(dòng)火花對(duì)無線通訊及控制系統(tǒng)的干擾,有可能遇到的碰撞以及關(guān)節(jié)被卡住造成電機(jī)堵轉(zhuǎn)等各種情況,對(duì)機(jī)器人控制系統(tǒng)提出了一定的要求。 ③易維護(hù)性;包括機(jī)械維護(hù)和控制系統(tǒng)軟硬件維護(hù)。機(jī)械上盡可能采用模塊化設(shè)計(jì)方法,減少零部件種類,提高通用性,便于安裝拆卸,同時(shí)也可以提高可靠性和經(jīng)濟(jì)性??刂葡到y(tǒng)軟硬件設(shè)計(jì)同樣采用模塊化設(shè)計(jì),便于檢測(cè)調(diào)試。 ④強(qiáng)壯性:機(jī)器人的手臂都是由各個(gè)關(guān)節(jié)鏈接起來的,對(duì)剛性的要求比較高。在機(jī)械設(shè)計(jì)上,機(jī)器人應(yīng)具有較好的剛性和較小的傳動(dòng)間隙,不至于發(fā)生嚴(yán)重的機(jī)械變形,各種接插件不能松動(dòng)、脫落。 UG模型主甲板是搭載機(jī)械手、浮力棒、前后、左右電機(jī)的,所以甲板的厚度要適當(dāng),甲板應(yīng)能夠承受一定的應(yīng)力,不會(huì)發(fā)生變形為準(zhǔn)。甲板還應(yīng)質(zhì)輕,易加工。 甲板 UG模型浮力桶是調(diào)節(jié)機(jī)器人整體浮力的,使機(jī)器人的浮力等于重力,以保持在水中的平衡,使機(jī)器人在水中呈懸浮狀態(tài)。浮力桶設(shè)計(jì)成兩端尖的流線型,以減少機(jī)器人在水下運(yùn)動(dòng)時(shí)的阻力。 浮力桶 UG模型殼體主要是減少機(jī)器人運(yùn)動(dòng)時(shí)的阻力,設(shè)計(jì)成符合流體力學(xué)的流線型。 殼體 UG模型裝配主要通過螺釘、膠水、膠帶、鉚釘?shù)冗B接件將各個(gè)零件組合起來。 UG整體裝配第四章 硬件電路設(shè)計(jì)本人使用的是兩通道遙控器,有四位代碼,但只能同時(shí)發(fā)送兩位。而潛水機(jī)器人至少有八種控制要求,這就要求必須對(duì)代碼組合編碼以滿足要求。編碼電路如下圖。輸入驅(qū)動(dòng)電路三極管采用8050作為放大管,IN4041作為整流二極管。當(dāng)i1為正i2為負(fù)時(shí),out1輸出低電平,out2輸出高電平。當(dāng)i1為負(fù)i2為正時(shí),out1輸出高電平,out2輸出低電平。輸入驅(qū)動(dòng)模塊需要兩個(gè)如下圖的電路,最多可同時(shí)輸出四個(gè)編碼信號(hào)給單片機(jī)。本制作中使用直流電機(jī),因?yàn)橹饕糜诼菪龢姍C(jī)。直流電機(jī)調(diào)速性能好、價(jià)格低廉等優(yōu)點(diǎn)。對(duì)應(yīng)的直流電機(jī)驅(qū)動(dòng)芯片為L(zhǎng)298,因?yàn)殡姍C(jī)是感性元件,所以必須加保護(hù)電路保護(hù)芯片。保護(hù)電路用二極管IN4007為感生電流提供回路從而保護(hù)芯片。 電源模塊采用專用的5V穩(wěn)壓芯片7805輸出5V電壓位單片機(jī)供電。單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī),又稱微控制器,嵌入式微控制器等,屬于第四代電子計(jì)算機(jī)。它把中央處理器、存儲(chǔ)器、輸入/輸出接口電路以及定時(shí)器/計(jì)數(shù)器集成在一塊芯片上,從而具有體積小、功耗低、價(jià)格低廉、抗干擾能力強(qiáng)且可靠性高等特點(diǎn),因此,適合應(yīng)用于工業(yè)過程控制、智能儀器儀表和測(cè)控系統(tǒng)的前端裝置。正是由于這一原因,國(guó)際上逐漸采用微控制器(MCU)代替單片微型計(jì)算機(jī)(SCM)這一名稱?!拔⒖刂破鳌备芊从硢纹瑱C(jī)的本質(zhì),但是由于單片機(jī)這個(gè)名稱已經(jīng)為國(guó)內(nèi)大多數(shù)人所接受,所以仍沿用“單片機(jī)”這一名稱。單片機(jī)的主要特點(diǎn)有:1)具有優(yōu)異的性能價(jià)格比。2)集成度高、體積小、可靠性高。3)控制功能強(qiáng)。 AT89C52芯片的主要性能芯片AT89C52是ATMEL公司生產(chǎn)的帶2K字節(jié)快閃存儲(chǔ)器的8位單片機(jī)。它具有如下的一些特性:★指令和89C51產(chǎn)品兼容 ★內(nèi)含2K字節(jié)可重復(fù)編程快閃存儲(chǔ)器★耐久性1,000寫/擦除周期 ★~6V的工作電壓范圍★全靜態(tài)操作0Hz~24MHz ★二級(jí)程序存儲(chǔ)器加鎖★內(nèi)含128*8位內(nèi)部RAM ★15根可編程I/0引線★2個(gè)16位的計(jì)數(shù)器/定時(shí)器 ★6個(gè)中斷源★帶有可編程串行通訊口 ★可直接驅(qū)動(dòng)LED輸出★片內(nèi)模擬電壓比較器 ★低功耗空載和掉電方式另外,該單片機(jī)還具有體積小,價(jià)格低等特點(diǎn)。AT89C52是一帶有2K字節(jié)快閃可編程可擦除存儲(chǔ)體(EEPROM)的低電壓、高性能8位CMOS微型計(jì)算機(jī)。它采用ATMEL的高密非易失存儲(chǔ)技術(shù)制造并和工業(yè)標(biāo)準(zhǔn)MCS—51指令集和引腳結(jié)構(gòu)兼容。通過在單塊芯片上組合通用的CPL1和快閃存儲(chǔ)器,ATMEL公司生產(chǎn)的AT89C52是一強(qiáng)勁的微型計(jì)算機(jī),它對(duì)許多嵌入式控制的應(yīng)用,提供了一種高度靈活和成本低的解決辦法。 AT89C2051內(nèi)部結(jié)構(gòu)圖AT89C52芯片最小系統(tǒng)一個(gè)最簡(jiǎn)單的單片機(jī)系統(tǒng)包括晶振、復(fù)位、電源、系統(tǒng)的輸入控制、輸出顯示,以及其他外圍模塊(如通信、數(shù)據(jù)采集等)。(1)時(shí)鐘電路首先介紹一下單片機(jī)的晶振電路,即時(shí)鐘電路。單片機(jī)的工作流程,就是在系統(tǒng)時(shí)鐘的作用下,一條一條地執(zhí)行存儲(chǔ)器中的程序。單片機(jī)的時(shí)鐘電路由外接的一只晶振和兩只起振電容,以及單片機(jī)內(nèi)部的時(shí)鐘電路組成,晶振的頻率越高,單片機(jī)處理數(shù)據(jù)的速度越快,系統(tǒng)功耗也會(huì)相應(yīng)增加,穩(wěn)定性也會(huì)下降。單片機(jī)系統(tǒng)常用的晶振頻率有6MHz、11.0592MHz、12MHz、本系統(tǒng)采用11.0592MHz晶振,電容選22pF或30pF均可。(2)復(fù)位電路系統(tǒng)剛上電時(shí),單片機(jī)內(nèi)部的程序還沒有開始執(zhí)行,需要一段準(zhǔn)備時(shí)間,也就是復(fù)位時(shí)間。一個(gè)穩(wěn)定的單片機(jī)系統(tǒng)必須設(shè)計(jì)復(fù)位電路。當(dāng)程序跑飛或死機(jī)時(shí),也需要進(jìn)行系統(tǒng)復(fù)位。復(fù)位電路有很多種,有上電復(fù)位,手動(dòng)復(fù)位等。 (3) EA腳的功能及接法單片機(jī)的EA腳控制程序從內(nèi)部存儲(chǔ)器還是從外部存儲(chǔ)器讀取程序。由于現(xiàn)在單片機(jī)內(nèi)部的flash容量都很大,因此基本都是從內(nèi)部的存儲(chǔ)器讀取程序,即不需要外接ROM來存儲(chǔ)程序,因此,EA腳必須接高電平。本設(shè)計(jì)中復(fù)位方式采用上電∕按鍵手動(dòng)復(fù)位方式,時(shí)鐘采用內(nèi)部時(shí)鐘。 本系統(tǒng)復(fù)位與時(shí)鐘方式第五章 系統(tǒng)軟件設(shè)計(jì)全部控制程序?qū)嶋H上分為若干模塊:輸入檢測(cè)程序,解碼程序,PWM調(diào)速程序,消抖動(dòng)延時(shí)程序,上升下潛狀態(tài)判斷及處理程序,前進(jìn)后退狀態(tài)判斷程序,中斷服務(wù)子程序等子程序。 定時(shí)器原理定時(shí)器工作的基本原理其實(shí)就是給初值,讓它不斷加1直至減完為模值,這個(gè)初值是送到TH和TL中的。它是以加法記數(shù)的,并能從全1到全0時(shí)自動(dòng)產(chǎn)生溢出中斷請(qǐng)求。因此,我們可以把計(jì)數(shù)器記滿為零所需的計(jì)數(shù)值,即所要求的計(jì)數(shù)值設(shè)定為C,把計(jì)數(shù)初值設(shè)定為TC 可得到如下計(jì)算通式:TC=MC式中,M為計(jì)數(shù)器模值。計(jì)數(shù)值并不是目的,目的是時(shí)間值,設(shè)計(jì)1次的時(shí)間,即定時(shí)器計(jì)數(shù)脈沖的周期為T0,它是單片機(jī)系統(tǒng)主頻周期的12倍,設(shè)要求的時(shí)間值為T,則有C=T/T0。計(jì)算通式變?yōu)椋篢=(M-TC)T0模值和計(jì)數(shù)器工作方式有關(guān)。在方式0時(shí)M為8192;在方式1時(shí)M的值為65536;在方式2和3為256。就此可以算出各種方式的最大延時(shí)。如單片機(jī)的主脈沖頻率為12MHZ,經(jīng)過12分頻后。這就是為什么掃描周期為50ms的原因,若使用軟件則會(huì)耽擱程序流程,顯然不可行。相反,時(shí)間計(jì)時(shí)方面卻不可能只用計(jì)數(shù)器,因?yàn)轱@然1秒鐘已經(jīng)超過了計(jì)數(shù)器的最大定時(shí)間,所以我們還必須采用定時(shí)器和軟件相結(jié)合的辦法才能解決這個(gè)問題。MCS51的工作頻率為12MHZ,機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12倍,所以一個(gè)機(jī)器周期的時(shí)間為12*(1/12MHZ)=1us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時(shí)間,但同時(shí)由于單片機(jī)的運(yùn)行速度很快其他的指令執(zhí)行時(shí)間可以忽略不計(jì)。我們?cè)O(shè)定一個(gè)初值為20的軟件計(jì)數(shù)器和使T0定時(shí)50毫秒。這樣每當(dāng)T0到50毫秒時(shí)CPU就響應(yīng)它的溢出中斷請(qǐng)求,進(jìn)入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU先使軟件計(jì)數(shù)器減1,然后判斷它是否為零。為零表示1秒已到。設(shè)定定時(shí)器需要定時(shí)50毫秒,故T0必須工作于方式1。要求初值: TC=MT*T0=21650ms/1us=15536=3CBOH, 中斷原理本系統(tǒng)主要使用了外部中斷,中斷信號(hào)有引腳INT0和INT1輸入,低電平有效,CPU每個(gè)時(shí)鐘周期都會(huì)檢測(cè)INT0和INT1上的信號(hào),8051允許外部中斷以電平方式或負(fù)邊沿方式兩種中斷方式輸入中斷請(qǐng)求信號(hào),可由用戶通過設(shè)置TCON中IT0和IT1位的狀態(tài)來實(shí)現(xiàn)。以IT0為例,IT0=0,為電平觸發(fā)方式,IT0=1,為負(fù)邊沿觸發(fā)方式,本設(shè)計(jì)采用電平方式,IE0為其中斷標(biāo)志位,有中斷信號(hào)則置位,中斷服務(wù)子程序響應(yīng)后,IE0自動(dòng)清零。IE中的EA為允許中斷的總控制位,為1開啟,EX0為外部中斷允許控制位,為1開啟。在優(yōu)先級(jí)的允許下,一旦有外部中斷信號(hào)產(chǎn)生,單片機(jī)CPU首先保護(hù)斷點(diǎn),PC值進(jìn)棧,然后執(zhí)行相應(yīng)的中斷服務(wù)子程序,執(zhí)行完后,用RETI指令返回,此時(shí)CPU會(huì)從堆棧中取保存的斷點(diǎn)地址,送回PC,程序再正常執(zhí)行。includedefine uint unsigned intdefine uchar unsigned char define Vc /*宏定義 速度遞增常量*/define Vc1 define vs 60 //定義初速度 上下(vs)前后(vs1)501000 define vs1 60define vmax 990 //定義最大速度max 60 990define vmax1 990float v=vs,v1=vs1。uint b,b1。uint tempst=0 ,tempst1=0。 //啟動(dòng)計(jì)時(shí) bit up。 bit down。bit left。 bit right。bit go。bit back。bit udclear。bit gbclear。bit stop。 //上下停止標(biāo)志位bit stop1。 //前后。bit zflag。bit goflag。bit go_f。bit back_f。bit up_m。 /*上浮狀態(tài)標(biāo)志位*/bit down_m。 /*下降狀態(tài)標(biāo)志位*/bit Hflag。 //上下極限速度標(biāo)志bit H1flag。 //前后...........bit flag11。bit flagin=0。bit flagin1=0。bit flagst=0。 //啟動(dòng)標(biāo)志位bit flagst1=0。 //啟動(dòng)標(biāo)志位sbit up0=P2^0。 //按鍵輸入位......sbit down0=P2^1。sbit left0=P2^2。sbit right0=P2^3。sbit out_up=P1^0。 //輸出位....sbit out_down=P1^1。sbit outLg=P1^2。 //左正轉(zhuǎn)位sbit outLb=P1^3。 //左反轉(zhuǎn)位sbit outrg=P1^4。 //右正轉(zhuǎn)位sbit outrb=P1^5。 //右反轉(zhuǎn)位void init()。 //函數(shù)聲名........void injudge()。void updown()。void goback()。void rileft()。void delay(uchar x)。void clear()。void main() //主函數(shù)...........{ init()。 while(1) { injudge()。 updown()。 goback()。 rileft()。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1