×

UIO超声波互动猫头鹰开源分享

消耗积分:0 | 格式:zip | 大小:2.65 MB | 2022-12-06

郝埃连

分享资料个

描述

你好,

UIO 是 Ultrasonic Interactive Owl 的缩写。

这个名字与我 9 岁的儿子进行了深入讨论。

 

这个项目是(或尝试成为)一个互动的、一种情感的、有趣的和小有用的机器人,我开始思考,用 Arduino 的东西玩得开心。前面的文字将讲述创建过程,我认为鼓励那些认为这太难做的人,以及有经验的人会找到更多改进这个项目的方法,这是非常有趣和深思熟虑的。

pYYBAGOIkyWATksIAA5l1PKaDGQ920.jpg
 

我开始浏览并考虑可以使用超声波传感器(HC-SR04)构建的其他项目。

我也开始研究RTC(Real Time Clock)模块和Oled Display。这看起来很简单……我的意思是……我只是一个“制造者”女巫,只想连接事物并做简单的代码,对电子学和编程知之甚少。我只是阅读并收集这些模块和传感器的代码块,并尝试适应我的需求。

为此,我将再次感谢并感谢所有分享您的作品和解释的人!!!

想法来了:一个对超声波读数做出反应并将其转换为 Oled 显示器的小工具。

超声波传感器有趣的“眼睛观察”在 Arduino 项目中得到了广泛的探索,并立即吸引了小型机器人的视觉注意力。

Oled 显示屏也是一个引人注目的焦点。许多机器人把它当作自己的“眼睛”。

起初我决定做一只“海盗鹦鹉”,但鹦鹉有侧眼。所以......让我们想想一个有正面眼睛的“海盗猫头鹰”。Oled显示屏将放置在其胸前。超声波读数将转换为心跳和(有用的部分)日期/时间/温度显示。

想到用纸板做它。当我一直在考虑编码时,我发现了一个非常适合的小纸板硬币银行。

它是一个直径 60 毫米(2 英寸 3/8 英寸)、高 15 厘米(6 英寸)的纸板管,带有可拆卸的塑料封口,我可以完美地插入一个 170 点的面包板,并附有 Arduino Nano,并制作适当的孔来连接超声波和Oled显示屏。

第一个编码结果是如此令人难以置信、简单和美丽,即使没有这个项目离开我的爱好桌,我也开始考虑改进。

现在这只猫头鹰将有一个蜂鸣器来伪装成猫头鹰的喙发出声音,一个伺服电机让它摇晃,另一个伺服器移动猫头鹰的头。

我想知道这是否过于雄心勃勃,如果 Arduino Nano 处理所有这些事情,内存限制......代码的大小等。但测试总是驱使我继续前进。

pYYBAGOIky2AfWonABePZtvhAQ0667.jpg
 

特点:

1 – 一个 180 度可移动的颈部。(小于真正的猫头鹰,但没关系)。这种运动在时间和角度上是随机的,以模拟猫头鹰环顾四周;

2 – 底部的伺服电机使机身旋转并稍微倾斜并恢复正常直立位置;

3 – 在给定的距离内,猫头鹰会发出哔哔声、心跳、RTC 显示、身体晃动。(以及所有个性化的行为留给您的想象!)。

4 – 电源系统:一根连接到外部电源(100/240V 至 5V 适配器)的小电缆为伺服系统供电并为 Arduino Nano 供电。传感器和模块将由 5V Arduino 端口供电。由于它不会行走,因此可以放置在凉爽的地方并长时间供电。

poYBAGOIkzWACIfqAApCN_bbOTM233.jpg
 

5 – 完全没有焊接!只能插入或拧紧接线。当然,建议使用定制 PCB 和更安全的连接。组装起来真的很酷。

6 – 双面3M胶带,电工胶带和装饰件用白胶。

挑战:

poYBAGOJb-GAE0rhABEBrwRV0v8448.jpg
最终组装 - 请注意未使用的蓝牙模块。
 

为了清晰起见,上图显示了附加的蓝牙模块。

我没有得到它的工作,我不知道为什么......与许多图书馆冲突?我一直在研究这个,因为还有方法可以测试 UIO 的功能并通过与 Android 手机的蓝牙连接发送新的距离识别参数将是非常有趣的。

编码:

如前所述,首先要做的是使用模块和传感器,在不同的草图中测试和配置它们。作为一个不太关心所有这些事情是如何工作的“制造商”,我只是阅读教程并在反复试验的基础上进行测试,直到它起作用。

下一步是考虑代码逻辑。我决定为每个 UIO 的动作、声音和屏幕编写函数。然后,此功能将被放入 IF 和 ELSE IF 语句中,并配置我希望 UIO 反应的距离。

为了避免它变得烦人,我编写了一些布尔变量来停止短序列中的多个读数,并强制 UIO 有另一个事件来更改该变量的状态并允许它重复一些 ELSE IF。

另一个有趣的部分是设计将要显示的“屏幕”。没那么复杂。使用 MS Paintbrush,我设置了一个 128x64 的图像并开始绘制。

图像确定后,将其导入 HEX 在线转换器以将其转换为 arduino IDE。

蜂鸣器:

对于“惊喜歌曲”和 UIO 的其他哔哔声,我确实对频率图进行了研究,以查找和测试声音以进行创作。这是过程的另一个很酷的部分,具有无限的可能性。蜂鸣器很便宜,但我已经在考虑升级到 mp3 声音模块...

延迟 x 毫秒

我在互联网的某个地方发现了这个很酷的函数,它使用 millis() 而不是 delay(),以尝试保持距离读数不会停止运行。我会很感激对此的评论。

所以,我希望你喜欢它。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !