|
大多數(shù)人感覺超聲波測距proteus仿真是無法實(shí)現(xiàn)的,雖然proteus自帶的庫有GUR03和SRF04兩種模型,但是卻與實(shí)際傳感器使用方法相差甚遠(yuǎn),即使求助度娘也很難找到簡單易懂的教程。
gur03和srf04.png (8.23 KB, 下載次數(shù): 192)
下載附件
2020-3-31 23:52 上傳
之前很多人想做超聲波測距仿真但都沒有找到很好的辦法去實(shí)現(xiàn),在軟件里沒有這樣的元件,有人用一個按鍵開關(guān)去模擬仿真,這樣仿真出來的效果,非常不好。還有人用555時基電路產(chǎn)生一個延時信號(555電路作為超聲波仿真的內(nèi)部元件),來模擬超聲波頭發(fā)送后遇到回波返射回來的這階段時間,來對單片機(jī)超聲波測距單片機(jī)系統(tǒng)進(jìn)行模擬,能完成對超聲波測距模塊大致仿真,但需要繁雜的設(shè)計。
下面是一個超聲波測距模塊的proteus模型,能直接用于proteus仿真,且使用方法與實(shí)際傳感器幾乎一致,模型如下圖。樓主千辛萬苦終于完成了仿真,分享交流一下,請大家不嗇賜教!
ULTRASONIC SENSOR.png (23.56 KB, 下載次數(shù): 206)
下載附件
2020-3-31 23:56 上傳
(library文件見附件)
下面是仿真效果:
simulation.png (157.85 KB, 下載次數(shù): 222)
下載附件
2020-4-1 00:06 上傳
單片機(jī)程序代碼:- #include <reg51.h>
- #include <intrins.h>
- #include <LCDcmd.h>
- #define Delay4us(){_nop_();_nop_();_nop_();_nop_();}
- sbit LEDRed=P2^4; //測距指示燈,亮表示正在測距,滅表示測距完成
- sbit Trig=P1^7; //HC-SR04觸發(fā)信號輸入
- sbit Echo=P1^6; //HC-SR04回響信號輸出
- float DistanceValue=0.0; //測量的距離值
- float SPEEDSOUND; //聲速
- //延時函數(shù) 20微秒 @12.000MHz
- void Delay20us()
- {
- uchar i;
- _nop_();
- i = 7;
- while (--i);
- }
- //測量距離
- float MeasuringDistance()
- {
- //最大定時時間約65ms
- TH0=0;
- TL0=0;
-
- //生成20us的脈沖寬度的觸發(fā)信號
- Trig=1;
- Delay20us();
- Trig=0;
- //等待回響信號變高電平
- while(!Echo);
- TR0=1; //啟動定時器0
- //等待回響信號變低電平
- while(Echo);
- TR0=0; //關(guān)閉定時器0
- //返回距離值(mm)
- return (SPEEDSOUND*(TH0*256.0+TL0))/2000;
- }
- //HCSR04初始化
- void HCSR04_Initialize()
- {
- SPEEDSOUND=334.1+25*0.61;
- Trig=0;
- Echo=0;
- TMOD=0x01;
- }
- //測距的數(shù)值排序求平均
- float DistanceStatistics()
- {
- uchar i;
- float disData;
- for(i=0;i<7;i++) //連續(xù)測距
- {
- disData+=MeasuringDistance();
- delay(1);
- }
- return disData/7.0;
- }
- void main()
- {
- LcdInitiate();//1602初始化
- HCSR04_Initialize();//HC-SR04初始化
- while(1)
- {
- DistanceValue= DistanceStatistics() ;
- display_val((int)DistanceValue,0x45);//顯示距離值
- delay(1000);
- LEDRed=~LEDRed; //測距系統(tǒng)工作指示燈
-
- }
- }
復(fù)制代碼
全部文件已打包,請自行下載(2個文件內(nèi)容一樣,推薦下載7z的):
7z:
7z壓縮版.7z
(96.58 KB, 下載次數(shù): 269)
2021-4-28 19:46 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
winrar:
超聲波測距(仿真原理圖+源程序).rar
(102.08 KB, 下載次數(shù): 1255)
2021-5-17 18:03 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|