欧美成人黄色网_欧美精品久久_国产在线一区二区三区_免费视频久久久_亚洲二区视频_欧美大片免费高清观看

產(chǎn)品分類

當(dāng)前位置: 首頁 > 傳感測(cè)量產(chǎn)品 > 工業(yè)傳感器 > 光電傳感器

類型分類:
科普知識(shí)
數(shù)據(jù)分類:
光電傳感器

光電傳感器單片機(jī):基于單片機(jī)的光電傳感器

發(fā)布日期:2022-10-09 點(diǎn)擊率:44


光電傳感器單片機(jī):基于單片機(jī)的光電傳感器

?

1
方案一原理圖
?
?
如上圖所示是方案一,采用純模電硬件電路設(shè)計(jì),所設(shè)計(jì)的電路沒有控制模
塊功能,
只能通過光敏電阻檢測(cè)當(dāng)前的環(huán)境光強(qiáng)是否符合一個(gè)定值之下,
若光強(qiáng)
低于設(shè)定值則蜂鳴器蜂鳴和
LED
閃而報(bào)警。此方案雖然輸入光強(qiáng)定制可以調(diào)節(jié),
但是檢測(cè)靈敏度不高且不可以讀出當(dāng)前的光強(qiáng)以及電阻。
因此應(yīng)用不強(qiáng),
不符合
一般的應(yīng)用,所以本系統(tǒng)設(shè)計(jì)不采用。
?
?
?

2
方案二原理圖
?
如上圖是方案二,也是本系統(tǒng)所采用的方案。
?
?
本方案通過光敏電阻檢測(cè)周圍的光強(qiáng)變化,
通過
ADC0832
將模擬數(shù)據(jù)轉(zhuǎn)換為

光電傳感器單片機(jī):系統(tǒng)功能

我會(huì)通過本系列文章,詳細(xì)介紹如何從零開始用51單片機(jī)去實(shí)現(xiàn)智能小車的控制,在本系列的上一篇文章中介紹了3種可用來讓小車實(shí)現(xiàn)避障的傳感器,本文作為本系列的第三篇文章,主要介紹如何讓車實(shí)現(xiàn)自動(dòng)避障。
本系列文章鏈接:
-----------------------------------------------------------------------------
詳細(xì)介紹如何從零開始制作51單片機(jī)控制的智能小車(一)———讓小車動(dòng)起來
詳細(xì)介紹如何從零開始制作51單片機(jī)控制的智能小車(二)———超聲波模塊、漫反射光電管、4路紅外傳感器的介紹和使用
詳細(xì)介紹如何從零開始制作51單片機(jī)控制的智能小車(三)———用超聲波模塊和漫反射光電傳感器實(shí)現(xiàn)小車的自動(dòng)避障
詳細(xì)介紹如何從零開始制作51單片機(jī)控制的智能小車(四)———通過藍(lán)牙模塊實(shí)現(xiàn)數(shù)據(jù)傳輸以及通過手機(jī)藍(lán)牙實(shí)現(xiàn)對(duì)小車運(yùn)動(dòng)狀態(tài)的控制
詳細(xì)介紹如何從零開始制作51單片機(jī)控制的智能小車(五)———對(duì)本系列第四篇文章介紹的手機(jī)藍(lán)牙遙控加減速異常的錯(cuò)誤的介紹及糾正
-----------------------------------------------------------------------------
一、避障思路及傳感器的選擇
1、利用4路紅外尋跡避障傳感器模塊實(shí)現(xiàn)避障
?可以讓一路傳感器檢測(cè)左邊的障礙物,一路傳感器檢測(cè)右邊的障礙物,兩路傳感器檢測(cè)前方的障礙物,如下圖所示:

?這種方法呢實(shí)現(xiàn)起來是最簡單的,對(duì)于0基礎(chǔ)的可以嘗試一下,障礙物檢測(cè)距離一般在20cm左右,在車速不太快,而且在室內(nèi)(也就是無陽光直射)時(shí)是可行的,也可以很好的實(shí)現(xiàn)避障。

?缺點(diǎn)呢或者說不足之處,也就很明確了,在室外(或者陽光直射時(shí))傳感器受陽光干擾可能不能正常工作,檢測(cè)距離20cm左右,車速過快時(shí),在檢測(cè)到障礙物時(shí),不能直接轉(zhuǎn)彎(因?yàn)檐囁龠^快,還沒來得及轉(zhuǎn)彎可能就撞上了),需要往回倒一下,再轉(zhuǎn)彎。

2、利用4個(gè)漫反射光電傳感器模塊實(shí)現(xiàn)避障
?可以讓一個(gè)傳感器檢測(cè)左邊的障礙物,一個(gè)傳感器檢測(cè)右邊的障礙物,兩路傳感器檢測(cè)前方的障礙物。就像上面的4路紅外尋跡避障傳感器的擺放方向一樣
?這種方法呢,避障思路跟利用4路紅外尋跡避障傳感器模塊實(shí)現(xiàn)避障是相同的,只是換了傳感器類型而已,但是漫反射光電傳感器抗陽光干擾能力強(qiáng),克服了4路紅外尋跡避障傳感器模塊在室外(或者陽光直射時(shí))傳感器受陽光干擾可能不能正常工作的缺點(diǎn)。

?缺點(diǎn)呢或者說不足之處,檢測(cè)距離也在20cm附近,依然沒能克服車速過快時(shí),在檢測(cè)到障礙物時(shí),不能直接轉(zhuǎn)彎的不足,而且呢漫反射光電傳感器模塊體積、重量、價(jià)格都要高一些。

3、利用超聲波模塊和舵機(jī)云臺(tái)實(shí)現(xiàn)避障
?避障思路呢大體是這樣的,正常情況下超聲波模塊檢測(cè)前方障礙物,當(dāng)檢測(cè)到障礙物時(shí),小車停止前行,舵機(jī)云臺(tái)轉(zhuǎn)動(dòng),讓超聲波模塊分別轉(zhuǎn)向小車的左右兩側(cè)檢測(cè)左右兩側(cè)是否有障礙物,來決定下一步的轉(zhuǎn)向,超聲波模塊重新超前,開始轉(zhuǎn)向。

?這種方法呢,利用超聲波模塊測(cè)距遠(yuǎn),一般常見的超聲波模塊測(cè)距最遠(yuǎn)在4.5米左右,完全不用擔(dān)心車速過快來不及反應(yīng)的情況,而且基本不受陽光干擾(當(dāng)環(huán)境溫度升高時(shí),聲音的傳播速度會(huì)加快,對(duì)測(cè)距產(chǎn)生一定的誤差,但是誤差很小很小,對(duì)于超聲波模實(shí)現(xiàn)避障來說完全可以忽略)也就是說超聲波模塊很好的解決了以上兩個(gè)問題

?缺點(diǎn)呢或者說不足之處,也很明確,從避障思路我們可以看出這種方案小車不能連續(xù)的運(yùn)動(dòng),當(dāng)遇到障礙物時(shí),小車就會(huì)停下來判斷下一步該往哪個(gè)方向轉(zhuǎn)彎,除此之外,超聲波模塊用起來比前兩種難一些

4、利用超聲波模塊和2個(gè)漫反射光電傳感器實(shí)現(xiàn)避障(也就是本文采用的方法)
?避障思路呢就是利用超聲波模塊檢測(cè)前面的障礙物,兩個(gè)漫反射光電傳感器分別檢測(cè)左右兩側(cè)的障礙物。

?這種思路結(jié)合了這兩種傳感器的優(yōu)點(diǎn),互補(bǔ)了他們的不足,即同時(shí)克服陽光直射時(shí)傳感器不能正常工作、車速過快時(shí),在檢測(cè)到障礙物時(shí),不能直接轉(zhuǎn)彎、遇到障礙物需要停車判斷 這三種不足可以說是一種比較理想的方案。唯一的缺點(diǎn)呢,就是超聲波模塊本身用起來難度要大一些,當(dāng)然對(duì)富有挑戰(zhàn)精神的人,也就不算缺點(diǎn)了

二、超聲波測(cè)距程序的編寫
1、概述
?我將在本系列第一篇博文中介紹的程序的基礎(chǔ)上進(jìn)行超聲波測(cè)距程序的編寫的介紹,前提是理解超聲波模塊的測(cè)距的工作流程(不明白的可以去看本系列第二篇文章的介紹),我們需要用到兩個(gè)定時(shí)器,而STC89C52單片機(jī)只有兩個(gè)定時(shí)器,前面呢我們已經(jīng)把定時(shí)器0中斷用來控制電機(jī)的PWM輸出,所以我們把超聲波測(cè)距的啟動(dòng)信號(hào)也合并到定時(shí)器0里面,讓定時(shí)器1來檢測(cè)超聲波模塊有無信號(hào)返回。
2、I/O口觸發(fā)測(cè)距的實(shí)現(xiàn)程序的編寫
?超聲波模塊工作的第一步呢就是讓塊Trig 管腳所接的單片機(jī)I/O口置為高電平,而且需要持續(xù)10us以上,(本例中我采用的是讓單片機(jī)P14 I/O口 接在了超聲波模塊的Trig 管腳上,讓單片機(jī)P15 I/O口 接在了超聲波模塊的Echo管腳上,大家可以根據(jù)實(shí)際情況自己選擇,只要跟程序?qū)?yīng)起來就行),此處有一點(diǎn)需要注意就是為了避免下一次超聲波模塊發(fā)出的信號(hào),對(duì)上一次的返回信號(hào)產(chǎn)生影響,超聲波模塊發(fā)出信號(hào)的時(shí)間間隔要在60ms以上,本例中我配置的定時(shí)器0是每1ms產(chǎn)生一次中斷,設(shè)置一個(gè)變量HC_SR04_time,定時(shí)器0每產(chǎn)生一次中斷,該變量累加1,每當(dāng)加到250時(shí),讓該變量清零,同時(shí)讓超聲波模塊發(fā)出檢測(cè)信號(hào),也就是說每250ms 超聲波模塊發(fā)出一次檢測(cè)信號(hào)(數(shù)值呢大家可以自行調(diào)節(jié)),發(fā)出檢測(cè)信號(hào)只需要讓Trig為高電平并且持續(xù)10us以上 ,再讓Trig為低電平,這樣超聲波模塊就會(huì)自動(dòng)發(fā)出一次檢測(cè)信號(hào)了,我把這個(gè)過程寫在函數(shù)StartModule() 里面本部分相關(guān)程序如下:

3、檢測(cè)有無障礙物的程序編寫以及檢測(cè)距離的調(diào)節(jié)方法
?上面呢我們已經(jīng)利用定時(shí)器0來通過 Trig口讓超聲波模塊每250ms發(fā)出一次檢測(cè)信號(hào),接下來我們需要用定時(shí)器1來檢測(cè)有沒有信號(hào)返回,也就是前方有沒有障礙物,怎么實(shí)現(xiàn)呢,通過前面的介紹我們知道,只要Echo管腳為高電平就有信號(hào)返回,通過定時(shí)器1來測(cè)量高電平持續(xù)的時(shí)間,通過公式:測(cè)試距離=(高電平時(shí)間*聲速(340M/s)/2) 就可以計(jì)算障礙物距離傳感器的距離了,當(dāng)Echo變?yōu)楦唠娖綍r(shí),就讓定時(shí)器1清零,并打開定時(shí)器1,開始計(jì)數(shù),當(dāng)Echo變?yōu)?時(shí),利用公式計(jì)算障礙物距離,計(jì)算完后令定時(shí)器1清零 并關(guān)閉定時(shí)器1 這樣只要有信號(hào)返回,即只要Echo被置為1 定時(shí)器1就會(huì)被及時(shí)的清零,也就不會(huì)觸發(fā)定時(shí)器1溢出中斷,若是沒有信號(hào)返回(也就是沒有障礙物,或者障礙物超出了傳感器的測(cè)量范圍,本文用的傳感器測(cè)量最大值為4.5米),Echo就不會(huì)被置1,定時(shí)器1也就不會(huì)被清零,從而產(chǎn)生溢出中斷,在溢出中斷里放一個(gè)變量flag ,若產(chǎn)生中斷則讓其置1,這樣就通過定時(shí)器是否產(chǎn)生溢出中斷,即flag是否為1,來判斷是否檢測(cè)到障礙物了。
?有一點(diǎn)需要注意,這樣檢測(cè)的是距離傳感器最大檢測(cè)距離內(nèi)有無障礙物,但是我們把它用來讓小車避障,我不能距離障礙物4.5米就讓小車轉(zhuǎn)彎吧,這就需要通過程序調(diào)節(jié)檢測(cè)距離了,只需要增加一個(gè)判斷條件就行了,我們利用公式算出來障礙物的距離S ,將flag=1或者S>我們?cè)O(shè)定的檢測(cè)距離,都視為沒有障礙物處理就可以了,如 if(flag==1||S>50) 就是把50cm作為檢測(cè)距離,檢測(cè)的是50cm內(nèi)有無障礙物,50呢是暫定的,在后期調(diào)車的時(shí)候,根據(jù)實(shí)際情況進(jìn)行調(diào)節(jié)
?本部分有關(guān)程序如下(完整的工程文件會(huì)在介紹完避障程序后一并給出):

三、自動(dòng)避障的實(shí)現(xiàn)
?目前呢我們用于避障的傳感器有檢測(cè)左右兩側(cè)障礙物的漫反射光電管,檢測(cè)前方障礙物的超聲波模塊,大體思路是這樣的,當(dāng)超聲波模塊沒有檢測(cè)到設(shè)定距離內(nèi)的障礙物時(shí),小車直行,當(dāng)檢測(cè)到前方障礙物時(shí),若此時(shí)左邊漫反射傳感器沒有檢測(cè)到障礙物,則左轉(zhuǎn),當(dāng)此時(shí)左邊有障礙物時(shí),若右邊沒有障礙物則右轉(zhuǎn),若右邊也有障礙物則后退,大家看的可能比較亂,我整理成如下的邏輯表:

?表格中的有代表有障礙物,無代表無障礙物,X代表可以有也可以沒有障礙物 若前方有障礙物則 M_sensor=0 沒有則 M_sensor=1,若左側(cè)有障礙物 ,則 L_sensor=0 ,沒有則 L_sensor=1 若右側(cè)有障礙物則 R_sensor=0 沒有則 R_sensor=1,程序如下:

?在測(cè)試中我發(fā)現(xiàn),當(dāng)電池電量較低時(shí),原來的轉(zhuǎn)彎方式(一側(cè)電機(jī)停轉(zhuǎn),另一側(cè)電機(jī)前進(jìn))轉(zhuǎn)彎效率較低,所以說把轉(zhuǎn)彎的函數(shù)修改為一側(cè)后退,另一側(cè)前進(jìn),代碼如下:

?經(jīng)過測(cè)試后,這種方案呢并沒有理想的那么好,因?yàn)槌暡K存在一些缺陷,比如偶然會(huì)產(chǎn)生誤判,明明前方什么障礙物都沒有,會(huì)在一瞬間突然檢測(cè)到障礙物,又突然消失,而且在以下兩種情況下檢測(cè)不到障礙物

?如上圖的這種情況呢,超聲波模塊檢測(cè)不到返回的信號(hào),產(chǎn)生誤判

?如上圖的這種情況呢,超聲波模塊檢測(cè)不到側(cè)前方的細(xì)柱型障礙物,產(chǎn)生誤判
? 以上兩種缺陷呢,是超聲波模塊固有的缺陷,是無法通過超聲波模塊本身去糾正的,解決方法呢,可以在超聲波模塊的兩側(cè)分別再加一個(gè)朝前的檢測(cè)前方障礙物的漫反射光電傳感器,這樣呢可以克服以上的幾個(gè)缺陷,經(jīng)過我的實(shí)際測(cè)試,漫反射光電傳感器幾乎不會(huì)產(chǎn)生誤判,除了檢測(cè)距離有點(diǎn)短之外,可以說是比較好的,這樣呢就是4路漫反射光電傳感器為主,超聲波模塊呢只是輔助檢測(cè)前方的較遠(yuǎn)的的障礙物,補(bǔ)充漫反射傳感器檢測(cè)距離有限的缺陷,這種方案呢我就不詳細(xì)介紹了,有興趣的可以自己嘗試一下
四、完整的各文件代碼
?main.c文件

?motor_control.c文件

?HC_SR04.c文件

?car.h文件

本文到這里就結(jié)束了,本文介紹的內(nèi)容的完整的keil文件會(huì)放在附件里,需要者自取,我放的時(shí)候都是免費(fèi)的,但是過段時(shí)間它會(huì)自己漲…需要的在評(píng)論區(qū)留言我可以直接發(fā)給你,歡迎大家繼續(xù)閱讀本系列的后續(xù)文章“詳細(xì)介紹如何從零開始制作51單片機(jī)控制的智能小車(四)———通過藍(lán)牙模塊實(shí)現(xiàn)數(shù)據(jù)傳輸以及對(duì)小車狀態(tài)的控制”
  歡迎大家積極交流,本文未經(jīng)允許謝絕轉(zhuǎn)載
光電傳感器單片機(jī):基于單片機(jī)的光電傳感器  第1張

光電傳感器單片機(jī):系統(tǒng)功能_1

系統(tǒng)功能
系統(tǒng)利用STM32F103C8T6最小系統(tǒng)開發(fā)板進(jìn)行開發(fā),采用RPR220光電傳感器檢測(cè)停車位上是否有汽車。系統(tǒng)分為4個(gè)停車區(qū)A、B、C、D,每個(gè)停車區(qū)暫設(shè)2個(gè)停車位。每個(gè)停車區(qū)某個(gè)停車位上有車時(shí)[車位狀態(tài)LED]亮,無車時(shí)[車位狀態(tài)LED]滅;每個(gè)停車區(qū)均 有一個(gè)顯示停車 狀態(tài)的LED,當(dāng)該停車區(qū)車位已滿時(shí),[停車狀態(tài)LED]滅,車位未滿時(shí),[停車狀態(tài)LED]亮。

系統(tǒng)組成
STM32F103C8T6最小系統(tǒng)開發(fā)板 開發(fā)板鏈接
光電檢測(cè)模塊8個(gè)(共4個(gè)停車區(qū),每個(gè)停車區(qū)2個(gè)) RPR220反射型傳感器
車位狀態(tài)LED8個(gè)(共8個(gè)車位)
停車狀態(tài)LED4個(gè)(每個(gè)停車區(qū)均有1個(gè))

電路圖

實(shí)物圖

演示視頻

STM32智能停車系統(tǒng)【RPR220光電傳感器遮擋檢測(cè)LED顯示排阻區(qū)域控制】

全套資料
企鵝:
光電傳感器單片機(jī):基于單片機(jī)的光電傳感器  第2張

光電傳感器單片機(jī):鼠標(biāo)的光電傳感器向單片機(jī)發(fā)出的信號(hào)是怎樣的?

不知道您指的是機(jī)械鼠標(biāo)嗎?激光接收器得到的是離散的脈沖信號(hào)
一般鼠標(biāo)上的光流傳感器自帶圖像處理,大概原理是光源發(fā)光被鼠標(biāo)下面的東西比如鼠標(biāo)墊反射回接收器,因?yàn)槭髽?biāo)墊表面的形貌是不同的,所以接收器收到的間隔很短時(shí)間兩幀圖像是有差別的,處理器通過算法由前后幾幀圖像的差別解算出鼠標(biāo)移動(dòng)的距離,方向,速度。
至于處理器收到的信號(hào),我猜我猜我猜可能是各像素點(diǎn)灰度的數(shù)字編碼吧
不知道你說的是哪個(gè)型號(hào)的光流傳感器,因?yàn)槲易罱谘芯繜o人機(jī)的室內(nèi)定位,所以這方面了解比較多點(diǎn),我拆解了一款清華同方的光電鼠標(biāo),發(fā)現(xiàn)里面的光流傳感器是PAN3204 DIP8封裝,(如圖)
查詢下技術(shù)手冊(cè)可以發(fā)現(xiàn)是串行接口,如圖:
其中SDIO是串口數(shù)據(jù)輸入/輸出端口SCK是串口的時(shí)鐘端口。時(shí)鐘信號(hào)由主控制器發(fā)出。
當(dāng)向SDIO端口寫入讀/寫地址以后,數(shù)據(jù)就通過這個(gè)端口寫入或讀出。
支持這類型的串行接口還有ADNS-2610(DIP8)等等。
可以看看結(jié)構(gòu),主要由COMS sensor + DSP 組成,內(nèi)嵌成熟的光流算法。
不過后來,我發(fā)現(xiàn)APM的光流傳感器方案是基于ADNS-3080這個(gè)顆SOC的,它同樣集成了圖像傳感器、DSP、內(nèi)嵌光流算法,接口是SPI的,單片機(jī)可以直接驅(qū)動(dòng)。可以看看:
光流傳感器 |
ArduCopter中文網(wǎng)
當(dāng)然不同光流傳感器接口不一樣啦,還有PS/2協(xié)議的,例如:OM02
好啦,知道通信協(xié)議,你自然就能明白“光電傳感器向單片機(jī)發(fā)出的信號(hào)是怎樣的”,本質(zhì)上就是一連串?dāng)?shù)字離散信號(hào),數(shù)據(jù)內(nèi)容基本都是幀頭,x和y方向的移動(dòng)量,幀尾,校驗(yàn)。
PS:測(cè)試發(fā)現(xiàn)ADNS-3080 and STM32F4使用DMA來做室內(nèi)定位效果不錯(cuò),特別是融合九軸姿態(tài)數(shù)據(jù)。 如果有什么需要補(bǔ)充說明我還會(huì)再來的。。

下一篇: PLC、DCS、FCS三大控

上一篇: 電氣控制線路圖控制原

主站蜘蛛池模板: 六六影院午夜伦理 | 亚洲欧洲色天使日韩精品 | 日韩精品欧美 | 国产台湾无码av片在线观看 | 国产成人精品免费2021 | 亚洲精品色情app在线下载观看 | 国产精品久久久久影院色老大 | 国内精品久久久久久久久野战 | 久久综合五月天 | 最新国产精品精品视频 | 久久久久18 | 成人国产欧美大片一区 | 亚洲精品久久一区二区三区777 | 日韩成人影院 | 91草草| 高潮毛片无遮挡高清视频播放 | 中文字幕在线最新在线不卡 | 久久精品国产99国产精偷 | 欧美高清激情毛片 | 在线成人天天鲁夜啪视频 | 国产精品女丝袜白丝袜 | 久久婷婷五月综合色一区二区 | 天天鲁在视频在线观看 | 国产成人av大片在线观看 | 精品人妻无码一区二区三区性 | 国产精品久久久久蜜芽 | 鲁丝片一区二区三区免费 | 亚洲成 人a影院青久在线观看 | 极品嫩模高潮叫床 | 深夜福利国产精品亚洲尤物 | 色偷偷人人澡人人爽人人模 | 欧美日韩精品高清一区二区 | 欧美网站在线 | 日本护士xxxxhd少妇 | 成年女人毛片免费观看97 | 一个人免费视频观看在线www | 免费成人毛片 | 国产裸模视频免费区无码 | 国产区成人综合色在线 | 成人三级精品视频在线观看 | 精品日韩欧美 |