前言 上一節(jié)我們已經(jīng)大致瀏覽下目前銷售的超聲波測距模塊同時設(shè)計了自己的分析電路,這次由于我買的電子元件都到了,所以就動手實驗了下!至寫該筆記時已經(jīng)設(shè)計出超聲波接收模塊和超聲波發(fā)射模塊,同時存在超聲波發(fā)射模塊功率太小的問題,下面主要做該過程的總結(jié)!
一、嘗試找出一個簡單的超聲波接收電路: >_<" 首先根據(jù)我現(xiàn)有的電子元件,最終找到一個比較適合的簡單設(shè)計方法:這里用一個芯片CX20106A也就是上一節(jié)我說的這種方案簡單但是不利于理解超聲波接收部分的具體細(xì)節(jié)!但是為了方便設(shè)計,我還是選擇了用這個芯片,下面是我做時候用的電路圖。其中1uF和3.3uF是電解電容。該電路最終實現(xiàn)當(dāng)接收到40Khz的超聲波時OUTPUT角輸出低電平~
0.png (7.72 KB, 下載次數(shù): 40)
下載附件
2021-9-29 18:05 上傳
>_<" 由于設(shè)備簡陋我這里用了個51單片機的插槽用來當(dāng)面包板!把上面的電子元件搭了起來(如下圖上:大的電路板是這個模塊,小的是51單片機最小系統(tǒng))。讓OUTPUT連接單片機的P1.1,單片機不斷檢查該引腳的電平并將數(shù)值通過串口發(fā)送給電腦。(別看說的這么簡單,就從上面到當(dāng)前這一步是要用很長時間的,包括選擇元件、設(shè)計電路圖、學(xué)習(xí)CX20106A芯片....還有一不小心把電路連錯,燒掉一個芯片....說多了都是淚!)
1.jpg (137.29 KB, 下載次數(shù): 40)
下載附件
2021-9-29 18:05 上傳
2.jpg (132.91 KB, 下載次數(shù): 35)
下載附件
2021-9-29 18:05 上傳
>_<" 當(dāng)把上述電路連接好啟動,并把買來的超聲波模塊啟動(用來發(fā)送超聲波,因為還沒有做好發(fā)送模塊,就先用買來的完整的試試,反正能產(chǎn)生40KHz的超聲波),當(dāng)最終在上位機無數(shù)的11中發(fā)現(xiàn)0的時候,心情無比激動,然后收拾一下回寢室。ü蛱焓沁B續(xù)7天唯一一天沒通宵的,但是也回去的不早呢~決定從今天開始恢復(fù)正常生活,所以把總結(jié)提前寫了)
3.jpg (105.35 KB, 下載次數(shù): 47)
下載附件
2021-9-29 18:05 上傳
二、焊接接收部分電路板: >_<" 這里就直接上圖:(第一幅是半成品,后面的線路還沒連接~,第二幅圖是連接好的成品~由于我發(fā)現(xiàn)手上的靜電什么的會影響測量的結(jié)果,在后面又把該模塊用膠帶包裹了一下。
4.jpg (110.6 KB, 下載次數(shù): 38)
下載附件
2021-9-29 18:05 上傳
5.jpg (123.41 KB, 下載次數(shù): 34)
下載附件
2021-9-29 18:05 上傳
>_<" 最終用設(shè)計好的模塊代替上面看到的亂糟糟的面包板上的電路也實現(xiàn)了接收超聲波,下面是抓到的0.即低電平信號~表示接收到超聲波了~
6.jpg (73.5 KB, 下載次數(shù): 39)
下載附件
2021-9-29 18:05 上傳
三、接收部分設(shè)計: >_<" 參照上一節(jié)的知識,發(fā)現(xiàn)發(fā)送部分就是個簡單的40KHz的方波發(fā)生器+功率放大電路+發(fā)送頭~出于好奇我直接不用功率放大器直接把發(fā)送頭接到52單片機上,用2個引腳并利用定時器產(chǎn)生相同的40KHz的方波,然后把其中一路的信號經(jīng)過一個與非門改裝的非門將信號反轉(zhuǎn),這樣2路信號送的發(fā)送頭就是2被原矩形波的矩形波了~這個思路是從下面的圖的思路里學(xué)來的~再下面的代碼是產(chǎn)生2路40Khz矩形波的52單片機代碼。
3.png (3.42 KB, 下載次數(shù): 41)
下載附件
2021-9-29 18:06 上傳
- #include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
- sbit Send0=P1^0; //定義端口
- sbit Send1=P1^1; //定義端口
- /*------------------------------------------------
- 定時器初始化子程序
- ------------------------------------------------*/
- void Init_Timer0(void)
- {
- TMOD |= 0x01; //使用模式1,16位定時器,使用"|"符號可以在使用多個定時器時不受影響
- TH0=0x1f; //給定初值
- TL0=0xf4;
- EA=1; //總中斷打開
- ET0=1; //定時器中斷打開
- TR0=1; //定時器開關(guān)打開
- }
- /*------------------------------------------------
- 主程序
- ------------------------------------------------*/
- main()
- {
- Init_Timer0();
- Send0=1;
- Send1=1;
- while(1);
- }
- /*------------------------------------------------
- 定時器中斷子程序
- ------------------------------------------------*/
- void Timer0_isr(void) interrupt 1 using 1
- {
- TH0=0x1f; //重新賦值
- TL0=0xf4;
- Send0=~Send0;
- Send1=~Send1;
- }
復(fù)制代碼 然后我發(fā)現(xiàn)上述的發(fā)射功率很小,幾乎只能在距離10cm之內(nèi)才能收到信號,所以就再用一個CD4011BE四路或非門改造成四路非門(我忘了買四路非門的74HC04了,于是只能用CD4011BE改造了),然后照著上面的發(fā)送電路原理圖的連接方式連接好:
1.jpg (100.39 KB, 下載次數(shù): 40)
下載附件
2021-9-29 18:08 上傳
2.jpg (100.89 KB, 下載次數(shù): 29)
下載附件
2021-9-29 18:08 上傳
>_<" 雖然加上了上面的放大模塊,結(jié)果效果還是不理想,也只是才能測量距離10CM左右!很郁悶?zāi)貇先貼一下當(dāng)前的全部圖:目前正在查找大功率發(fā)射的解決方案,先給個我查到的鏈接:http://wenku.baidu.com/link?url= ... ztRZf4Suwz-9UYyv1IW接下來的就明天再說吧~今天收獲不小,總算把接收模塊給搞定了,給自己鼓勵下!
3.jpg (96.42 KB, 下載次數(shù): 50)
下載附件
2021-9-29 18:08 上傳
小結(jié):
從昨天晚上在自制的面包板上把接收部分的電路搞通,調(diào)試正確,到上午把接收部分制作成模塊,再到現(xiàn)在嘗試發(fā)送模塊,時間過得真快,雖然很想再通宵一下,但是既然決定恢復(fù)正常,就忍耐下吧...明天繼續(xù)研究!
|