正文之前
這是計算機控制系統(tǒng)的課程設計把篓,巨坑纫溃,但是沒辦法,還是要做韧掩,主要是要做控制器紊浩,但是我以前搞過這個超聲波模塊的小玩具。所以索性做個智能家居的玩意來玩。這一篇是打頭陣的坊谁。中心在后頭费彼,不過鑒于我很久沒有出文了。所以還是要寫點東西咯~~
正文
1口芍、 硬件準備
HC-SR04超聲波模塊
相關的說明可以參考下面的內(nèi)容:
HC-SR04超聲波測距模塊說明書圖文百度文庫
HC-SR04超聲波模塊測距離 送全套資料 購買地址
超聲波模塊HC-SR04簡介以及編程天涯海角新浪博客
2 箍铲、主要技術參數(shù):
1:使用電壓:DC5V
2:靜態(tài)電流:小于2mA
3:電平輸出:高5V
4:電平輸出:底0V
5:感應角度:不大于15度
6:探測距離:2cm-450cm</a>
7:高精度:可達0.3cm
8:板大小:4.5*2.0CM</a>
3鬓椭、 管腳介紹
VCC,超聲波模塊電源腳颠猴,接5V電源即可
Trig,超聲波發(fā)送腳膘融,高電平時發(fā)送出40KHZ出超聲波
Echo芙粱,超聲波接收檢測腳,當接收到返回的超聲波時氧映,輸出高電平
GND春畔,超聲波模塊GND
4、 接線
樹莓派第2只腳為5V岛都,給超聲波模塊供電樹莓派也就是第一行第二列
第39只腳為GND律姨,與超聲波模塊共地第二十行第一列
樹莓派第1、3只腳分別為GPIO2和GPIO3臼疫,分別作發(fā)送和接收用择份,分別與Trig和Echo相連接。第二行第一列烫堤,第三行第一列
下面借個圖荣赶,我自己的還沒拍
5、 控制代碼(python2.7.9)
1. #! /usr/bin/python
2. # -*- coding:utf-8 -*-
3. import RPi.GPIO as GPIO
4. import time
5. def checkdist():
6. #發(fā)出觸發(fā)信號
7. GPIO.output(2,GPIO.HIGH)
8. #保持15us的超聲波發(fā)射鸽斟,避免能量太低無法返回
9. time.sleep(0.000015)
10. #然后置位2號管腳低電平拔创,即停止發(fā)射超聲波
11. GPIO.output(2,GPIO.LOW)
12. while not GPIO.input(3):
13. pass
14. #發(fā)現(xiàn)高電平時開時計時
15. t1 = time.time()
16. #如果有檢測到反射返回的超聲波,那么就持續(xù)計時富蓄,否則就跳出循環(huán)剩燥,計時結束
17. while GPIO.input(3):
18. pass
19. #高電平結束停止計時
20. t2 = time.time()
21. #返回距離,單位為米
22. return (t2-t1)*340/2
23. GPIO.setmode(GPIO.BCM)
24. #第3號針立倍,GPIO2
25. GPIO.setup(2,GPIO.OUT,initial=GPIO.LOW)
26. #第5號針灭红,GPIO3
27. GPIO.setup(3,GPIO.IN)
28. time.sleep(2)
29. try:
30. while True:
31. print 'Distance: %0.2f m' %checkdist()
32. time.sleep(0.5)
33. except KeyboardInterrupt:
34. GPIO.cleanup()
上面是在樹莓派的隨意位置編輯保存的代碼。直接復制粘貼即可(我這兒的你得把數(shù)字去了)口注,然后python xxx.py
就ok了~
正文之后
ok 溜了溜了变擒。沒啥意思!~ 后面難一點的出來了繼續(xù)更文