電子設(shè)計(jì)精品-基于LMS單片機(jī)的點(diǎn)光源跟蹤系統(tǒng)設(shè)計(jì)(完整版)_第1頁
電子設(shè)計(jì)精品-基于LMS單片機(jī)的點(diǎn)光源跟蹤系統(tǒng)設(shè)計(jì)(完整版)_第2頁
電子設(shè)計(jì)精品-基于LMS單片機(jī)的點(diǎn)光源跟蹤系統(tǒng)設(shè)計(jì)(完整版)_第3頁
電子設(shè)計(jì)精品-基于LMS單片機(jī)的點(diǎn)光源跟蹤系統(tǒng)設(shè)計(jì)(完整版)_第4頁
電子設(shè)計(jì)精品-基于LMS單片機(jī)的點(diǎn)光源跟蹤系統(tǒng)設(shè)計(jì)(完整版)_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

[電子設(shè)計(jì)精品]基于LMS單片機(jī)的點(diǎn)光源跟蹤系統(tǒng)設(shè)計(jì)(完整版)(文檔可以直接使用,也可根據(jù)實(shí)際需要修改使用,可編輯歡迎下載)

點(diǎn)光源跟蹤系統(tǒng)[電子設(shè)計(jì)精品]基于LMS單片機(jī)的點(diǎn)光源跟蹤系統(tǒng)設(shè)計(jì)(完整版)(文檔可以直接使用,也可根據(jù)實(shí)際需要修改使用,可編輯歡迎下載)摘要:該系統(tǒng)以LM3S811單片機(jī)為控制核心,由光敏三極管(3DU33)組成的傳感器陣列檢測點(diǎn)光源發(fā)出的光信號,經(jīng)過運(yùn)算放大器LM324將光信號放大后并經(jīng)A/D模數(shù)轉(zhuǎn)換,然后通過單片機(jī)處理這些信號后,確定點(diǎn)光源的位置,從而實(shí)現(xiàn)云臺自動(dòng)跟蹤光信號。點(diǎn)光源以LM3S811為控制核心,通過升壓轉(zhuǎn)換器(TPS61062)來控制點(diǎn)光源的功率,再通過INA270A實(shí)現(xiàn)電流監(jiān)測。關(guān)鍵字:LM3S811光敏三極管LM324點(diǎn)光源云臺TPS61062INA270AAbstract:Thesystem’scontrollinghard-coreissingle-chipLM3S811.Whenthephototransistorswhichconsistoftransducerarraycheckthelightsingle,whichproducedbyLED,andtheLM324willmicroscopethosesingleandswitchthembyA/D.Thenthesingle-shipLM3S811dealswiththosesignalstodecidetheplaceoftheLED,inordertoachieveautomatictrackingpointsourcehead.Thepointlamp-houseuseMSP430asit’shard-core.Tps61062usedtocontrolthepowerofthepointlamp-house,thenthesystemcometruedetectingelectricity.Keywords:single-shipLM3S8113DU33LM324LEDTPS61062INA270A一.方案論證與比較1.總體方案比較及比較方案一:用C2000作為該系統(tǒng)的主控芯片,MSP430作為光源LED控制芯片。C2000在實(shí)時(shí)控制和高速數(shù)據(jù)處理方面,顯然比其它單片機(jī)更具有優(yōu)勢,不時(shí)為本系統(tǒng)的最佳解決方案。C2000做起來較復(fù)雜,且性價(jià)比較高,故沒有選擇方案。方案二:用LM3S811作為光源跟蹤系統(tǒng)的主控芯片,MSP430作為光源LED控制芯片。由于LM3S811控制靈活方便,且在實(shí)時(shí)控制和高速處理方面明顯比其單片機(jī)占優(yōu)勢,故選擇方案二。圖二LED控制模塊2.模塊方案論證與比較(1).信號采集模塊方案一:采用CCD圖像采集傳感器,該傳感器在分辨率、動(dòng)態(tài)范圍、靈敏度、實(shí)時(shí)傳輸和自掃描等方面都具有優(yōu)越性,是本系統(tǒng)的最好的傳感器。但是算法很復(fù)雜,難于在短時(shí)間內(nèi)實(shí)現(xiàn)。所以此方案沒有被采納。圖三CCD采集模塊方案二:由光敏三極管排成四象限傳感器陣列,將傳感器陣列和激光筆固定在一起,傳感器陣列動(dòng)態(tài)檢測光源位置和強(qiáng)弱。該方案既能快速跟蹤光源的位置,又減少了傳感器的數(shù)量,故選擇了方案三。圖四傳感器分布圖:圖五信號采集主要框圖(2)云臺的搭建電機(jī)布局:在圓形基架的兩條對稱軸線上分別設(shè)置互相垂直的兩根軸X—X和Y—Y,其中軸Y—Y與基座轉(zhuǎn)動(dòng)聯(lián)接,軸X—X與工作平臺固聯(lián)并與基架轉(zhuǎn)動(dòng)聯(lián)接,電機(jī)l通過軸X—X帶動(dòng)工作平臺相對基架轉(zhuǎn)動(dòng),電機(jī)2通過軸Y—Y帶動(dòng)基架相對基座轉(zhuǎn)動(dòng)。軸X—X采用背對背滾動(dòng)軸承,有效地減輕了X—X軸的剪切力。軸Y—Y采用圓錐滾子軸承,方便地實(shí)現(xiàn)了轉(zhuǎn)動(dòng)和支撐兩大功用。電機(jī)采用減速步進(jìn)電機(jī)。不采用直流電機(jī),因?yàn)樗俣炔蝗菀卓刂?。方案一:采用功率三極管作為功率放大器的控制步進(jìn)電機(jī)。線性型驅(qū)動(dòng)的電路結(jié)構(gòu)和原理簡單,加速能力強(qiáng),但是電路比較復(fù)雜。方案二:采用由達(dá)林頓晶體管陣列ULN2003。用單片機(jī)控制達(dá)林頓管使之工作在占空比可調(diào)的開關(guān)狀態(tài)下,精確調(diào)整電動(dòng)機(jī)轉(zhuǎn)速。單驅(qū)動(dòng)能力比較弱。方案三:采用恒壓橋式驅(qū)動(dòng)芯片L298N。驅(qū)動(dòng)能力強(qiáng),電路簡單,使用方便。故選擇此方案。(3).聲光顯示模塊方案一:采用數(shù)碼管顯示。方案二:用12864液晶圖文顯示器顯示。數(shù)碼管顯示內(nèi)容單一,不易產(chǎn)生生動(dòng)具體的圖文,而液晶顯示12864給我們提供了更大的發(fā)揮空間,看起來舒服自然,而且能增加顯示的美觀性與直觀性。最重要的是提供了友好的人機(jī)界面。因此本系統(tǒng)中采用液晶顯示。電路圖如下圖所示:二.電路理論分析與計(jì)算1.信號采集模塊圖六3DU33采集到光信號后,使整個(gè)電路導(dǎo)通,再通過運(yùn)算放大器將微弱的電流信號放大,從而使單片機(jī)LM3S811個(gè)更好的處理信號。圖中的R1為偏執(zhí)電阻,可以調(diào)解工作點(diǎn)及穩(wěn)定電路3DU33,在正常室內(nèi)關(guān)照下,電流為微安級,選擇15k的偏置電阻,放大十一倍后送至A/D.2.光耦(4N25) 圖七光耦電路光耦主要起隔離的作用,防止高電壓燒壞單片機(jī)。通過4N25的最大電流為10mA,在室溫條件下,取通過4N25的電流I約為6到7毫安,圖中R1為限流電阻,其計(jì)算式為R1=V/I,最后求的R1約為3303.電機(jī)部分的電路圖如下圖所示圖八該電路采用恒壓橋式驅(qū)動(dòng)芯片L298N。L298N芯片可以驅(qū)動(dòng)一個(gè)四相電機(jī)輸出電壓可高達(dá)50V,可以直接通過電源來調(diào)節(jié)輸出電壓。橋式整流電路雖然用了四支二極管,但卻克服了全波整流電路要求變壓器次級有中心抽頭和二極管承受反壓大的缺點(diǎn)。三.軟件設(shè)計(jì)軟件流程圖如下圖所示圖九程序流程圖四.測試方案及結(jié)果測試方案:1.激光筆不指向點(diǎn)光源,通過按鍵調(diào)節(jié)激光筆指向,并觀察激光筆能否指向點(diǎn)光源。2.當(dāng)激光筆指向點(diǎn)光源時(shí),將激光筆光點(diǎn)調(diào)偏離點(diǎn)光源中心30cm時(shí),觀察激光筆能否重新指向點(diǎn)光源。3.當(dāng)激光筆基本對準(zhǔn)點(diǎn)光源時(shí),以工作云臺為中心將激光筆平穩(wěn)轉(zhuǎn)離中心20度,觀察并記錄激光筆跟蹤到點(diǎn)光源的時(shí)間。4.在激光筆基本對準(zhǔn)點(diǎn)光源時(shí),將點(diǎn)光源支架沿直線LM平緩移動(dòng)60Cm,觀察激光筆能否連續(xù)跟蹤并指向光源,若能則記錄時(shí)間。5.將光源支架旋轉(zhuǎn)一個(gè)20°,然后平移20Cm,觀察激光筆能否跟蹤并指向點(diǎn)光源6.改變點(diǎn)光源的亮度并將點(diǎn)光源支架沿直線LM平緩移動(dòng)60Cm,觀察激光筆能否連續(xù)跟蹤并指向點(diǎn)光源,若能則記錄時(shí)間。實(shí)驗(yàn)結(jié)果記錄題號123456改變位置時(shí)能否跟蹤并指向點(diǎn)光源能能能(10)能(11)能能表格說明:各個(gè)測量初始狀態(tài)時(shí),激光筆對準(zhǔn)點(diǎn)電源中心結(jié)果分析:采用光敏三極管3DU33組成的傳感器陣列檢測點(diǎn)光源發(fā)出的光信號,經(jīng)過算法補(bǔ)償,能快速準(zhǔn)確跟蹤點(diǎn)光源,偏離誤差小于兩厘米。實(shí)現(xiàn)了基本部分的要求,能實(shí)現(xiàn)發(fā)揮部分的前兩項(xiàng),

五.附錄1.參考文獻(xiàn)[1]康華光等電子技術(shù)基礎(chǔ)模電部分(第五版),高等教育出版社.[2]C語言程序設(shè)計(jì)教程(第二版),中國教育出版社.2.主要元件清單元件名稱數(shù)目LM3242TLV154413DU334INA270A1TPS610621主要元器件的介紹(1).LM324:四路運(yùn)算放大器。(2).TLV1544:它是TI公司生產(chǎn)的CMOS型10bit模數(shù)轉(zhuǎn)換芯片,其內(nèi)部采用開關(guān)電容逐次近似來得到模數(shù)轉(zhuǎn)換結(jié)果。芯片有四路模擬信號輸入通道,通過芯片內(nèi)部參數(shù)設(shè)置選擇不同的通道輸入,進(jìn)行A/D轉(zhuǎn)換輸出。(3).4N25:是由砷化鎵紅外發(fā)光二極管和硅光電晶體管檢測器光耦合構(gòu)成。是一種發(fā)光二極管與光電晶體管面對面的單回路,內(nèi)光路光電耦合器。(4).INA270A:它是測量電流的并聯(lián)檢測器(5).TPS61062:升壓轉(zhuǎn)換器,由白光LED的亮度強(qiáng)弱控制電源。3.程序清單Adc.c:#include"ad.h"unsignedcharch[]={0x00,0x02,0x04,0x06};/***********AD初始化**************/voidadc_init(void){ SysCtlPeripheralEnable(ADC_PERIPH); GPIOPinTypeGPIOOutput(ADC_PORT,ADC_DIN|ADC_IOCLK|ADC_EOC|ADC_CS); GPIOPinTypeGPIOInput(ADC_PORT,ADC_DOUT);}/*************讀AD值*****************/unsignedintread_adc(unsignedcharpa){ unsignedchari; unsignedcharadd; unsignedintadc_data; add=ch[pa]; CLR_ADC_IOCLK; SET_ADC_EOC; CLR_ADC_CS; for(i=0;i<9;i++){if(add&0x08){SET_ADC_DI;}else{CLR_ADC_DI;}SET_ADC_IOCLK;add<<=1;CLR_ADC_IOCLK;}CLR_ADC_EOC;SET_ADC_IOCLK;CLR_ADC_IOCLK;SET_ADC_CS;SysCtlDelay(5*(TheSysClock/3000));SET_ADC_EOC;CLR_ADC_CS;SysCtlDelay(1*(TheSysClock/3000)/1000);for(i=0;i<9;i++){SET_ADC_IOCLK;if(GPIOPinRead(ADC_PORT,ADC_DOUT)==ADC_DOUT){adc_data|=0x0001;}else{adc_data&=0xfffe;}SysCtlDelay(1*(TheSysClock/3000));CLR_ADC_IOCLK;adc_data<<=1;}CLR_ADC_EOC;SET_ADC_IOCLK;if(GPIOPinRead(ADC_PORT,ADC_DOUT)==ADC_DOUT){adc_data|=0x0001;}else{adc_data&=0xfffe;}SysCtlDelay(1*(TheSysClock/3000));CLR_ADC_IOCLK;SET_ADC_CS;adc_data&=0x03ff;returnadc_data;}Control.c:/**********頭文件定義************/#include"control.h"#defineuintunsignedint/***********子函數(shù)定義**************/voidturn_right(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_a>point_b)&&(point_c>point_d)) { run_f1(20); motor_stop2(); }}voidturn_left(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_a<point_b)&&(point_c<point_d)) { run_b1(20); motor_stop2(); }}voidturn_up(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_a>point_c)&&(point_b>point_d)) { run_f2(20); motor_stop1(); }}voidturn_down(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_a<point_c)&&(point_b<point_d)) { run_b2(20); motor_stop1(); }}voidturn_upleft(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_a>point_b)&&(point_a>point_c)&&(point_a>point_d)) { run_f1(20); run_f2(20); }}voidturn_downleft(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_c>point_a)&&(point_c>point_b)&&(point_c>point_d)) { run_f1(20); run_b2(20); }}voidturn_upright(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_b>point_a)&&(point_b>point_c)&&(point_b>point_d)) { run_b1(20); run_f2(20); }}voidturn_downright(unsignedintpoint_a,unsignedintpoint_b,unsignedintpoint_c,unsignedintpoint_d){ if((point_d>point_a)&&(point_d>point_b)&&(point_d>point_c)) { run_b1(20); run_b2(20); }}Motor.c:/********頭文件定義*******/#include"motor.h"/**********步進(jìn)電機(jī)初始化***********/voidmotor_init(void){ SysCtlPeripheralEnable(MOTOR_PERIPH);// 使能PD口外設(shè) GPIOPinTypeGPIOOutput(MOTOR_PORT,0xff);}/***********步進(jìn)電機(jī)1正傳*************/voidrun_f1(unsignedchartime){unsignedchara;a=1;while(a--){ motor_init(); MOTOR_A1_W0; MOTOR_B1_W1; MOTOR_C1_W1; MOTOR_D1_W1; SysCtlDelay(time*(TheSysClock/3000)); MOTOR_A1_W1; MOTOR_B1_W0; MOTOR_C1_W1; MOTOR_D1_W1; SysCtlDelay(time*(TheSysClock/3000)); MOTOR_A1_W1; MOTOR_B1_W1; MOTOR_C1_W0; MOTOR_D1_W1; SysCtlDelay(time*(TheSysClock/3000)); MOTOR_A1_W1; MOTOR_B1_W1; MOTOR_C1_W1; MOTOR_D1_W0; SysCtlDelay(time*(TheSysClock/3000)); }}/************電機(jī)1反轉(zhuǎn)函數(shù)*******************/voidrun_b1(unsignedchartime){ unsignedchari=1; while(i--) { motor_init(); MOTOR_A1_W1; MOTOR_B1_W1; MOTOR_C1_W1; MOTOR_D1_W0; SysCtlDelay(time*(TheSysClock/3000)); MOTOR_A1_W1; MOTOR_B1_W1; MOTOR_C1_W0; MOTOR_D1_W1; SysCtlDelay(time*(TheSysClock/3000)); MOTOR_A1_W1; MOTOR_B1_W0; MOTOR_C1_W1; MOTOR_D1_W1; SysCtlDelay(time*(TheSysClock/3000)); motor_init(); MOTOR_A1_W0; MOTOR_B1_W1; MOTOR_C1_W1; MOTOR_D1_W1; SysCtlDelay(time*(TheSysClock/3000)); }}/*******電機(jī)1停止函數(shù)*********/voidmotor_stop1(void){ MOTOR_A1_W1; MOTOR_B1_W1; MOTOR_C1_W1; MOTOR_D1_W1;}/***********步進(jìn)電機(jī)2正轉(zhuǎn)*************/voidrun_f2(unsignedchartime){ motor_init(); MOTOR_A2_W1; MOTOR_B2_W0; MOTOR_C2_W0; MOTOR_D2_W0; SysCtlDelay(time*(TheSysClock/3000)); MOTOR_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論