![创客玩智能控制电子制作](https://wfqqreader-1252317822.image.myqcloud.com/cover/103/22654103/b_22654103.jpg)
上QQ阅读APP看书,第一时间看更新
01 超声波控制的微景观灯光装置
◇KE学怪人
最近我闲下来可以养养花花草草了,不过既然我叫“KE学怪人”,还是手痒,又做了个跟“科学”相关的东西。
微景观是在网上买的,寄到后自己DIY一下就好了。上面的灯原来就有,只不过是手动的,我嫌开关灯太麻烦,而且亮度有些不够,所以动手改了一个超声波控制开关灯和调整亮度的电路,把它加亮后做成个小夜灯,现在分享给大家。
制作所需配件见表1.1。
表1.1 制作所需配件
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0009_0001.jpg?sign=1739326661-x4p39hvHqvQnR29ki8riZl86sIZXOSm3-0-89537c6100379daa821124df732a9741)
先来把微景观组装好,如图1.1~图1.3所示。然后我们开始做灯,先来看看所需配件,如图1.4所示。
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0009_0002.jpg?sign=1739326661-Ft3uQQ7yVZWGocSZsNxyctZ25TLzaWUM-0-a59d32fe4cf8e2a46667a0ebde633018)
图1.1 组装微景观1
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0009_0003.jpg?sign=1739326661-a6VJ3ZbzuXLyhXKJa8ET8dPetMrpiAwg-0-5c252c468828694d035437ce65e021bc)
图1.2 组装微景观2
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0009_0004.jpg?sign=1739326661-ALqew8pX4jB9l1HY9VGYFgvf7qLC8BfZ-0-8c76676ee98040cba3a9d4c3eca412a5)
图1.3 组装微景观3
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0010_0001.jpg?sign=1739326661-GIzNQ7pycWmeYNKoGpjiX4fANSwfrPVA-0-6db6adf242af8ccf1a328c2df487c8f1)
图1.4 制作所需配件
电路连接示意图如图1.5所示,专业人士还可以再优化一下。按图1.5连接好各模块,实物如图1.6所示。
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0010_0002.jpg?sign=1739326661-uwZlYsS2yjXq2SrcJYS5VtgeEI8mviAv-0-6f28d85df0d35be3fc8461e47dddc287)
图1.5 电路连接示意图
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0010_0003.jpg?sign=1739326661-e7TFCqrWKLRTrUC4tsl5wnWt6uPXWcp4-0-e79a7b5fff3403f0e3b2069937f01683)
图1.6 连接好的电路
将以下代码上传到Arduino NANO。
const int TrigPin = 6; const int EchoPin = 5; int distance; void setup() { Serial.begin(9600); pinMode(TrigPin, OUTPUT); pinMode(EchoPin, INPUT); pinMode(11, OUTPUT); //led } void loop() { digitalWrite(TrigPin, LOW); delayMicroseconds(2); digitalWrite(TrigPin, HIGH); delayMicroseconds(20); digitalWrite(TrigPin, LOW); distance = pulseIn(EchoPin, HIGH) / 50; int led; if(distance<40) { led=(distance- 10)*(distance-10); if(led>=255) {led=255; } analogWrite(11, led); } if(distance<12) { led=0; analogWrite(11, led); } }
然后在软木盖的顶上开孔,完成后如图1.7所示。
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0010_0004.jpg?sign=1739326661-QATZ5Ik4iUaoy7RK3R8KmCI5PBJdKLDT-0-923b12037e73f2a157807bf300e6e15b)
图1.7 在软木盖顶上开孔
再把所有模块一并装入软木盖里(装入前先检查一下模块是否工作正常),如图1.8所示。软木盖内侧如图1.9所示,LED灯的外壳是用原来的灯外壳改制的。
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0011_0001.jpg?sign=1739326661-RaYw5HZAVF12J95bLayv85H1xImtpJ4U-0-f5fd0e7b7f6e13c013e414b34c6167d9)
图1.8 将所有模块装入软木盖中
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0011_0002.jpg?sign=1739326661-i4cm70TSu74BsbCGmitDVhfNFNLg9O0h-0-0d8d3470b9b00978488be8bbf1213445)
图1.9 软木盖内侧
这样,我们的超声波控制灯就OK了(见图1.10),它可以根据手和超声波模块的距离来控制:把手放到模块的远端就开灯;手离模块越近,灯光越暗;把手放到最近的地方就关灯了。
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0011_0003.jpg?sign=1739326661-507OtcTsJRD4xpXUYQkQGzy6Exscp76L-0-74d8b52208969ac203ed28c05c401a99)
图1.10 超声波控制灯完工
演示视频:http://v.youku.com/v_show/id_XMTI0OTE0MDE0NA==.html
![](https://epubservercos.yuewen.com/59639E/11229176404756306/epubprivate/OEBPS/Images/figure_0011_0004.jpg?sign=1739326661-zksIQlI837N1evJOZmVlECw5lgyoN2AY-0-167171654e4d456a65f015e69cc3e20b)