自动跟随风扇
欢迎光临本店
请登录
,新用户?
用户注册
切换语言:
繁體中文
全部商品分类
﹀
购物车
0
共
0
件商品 总计:
0
元
一键生成心愿单
去结算
全部商品分类
全部商品
新品
Arduino
开发板
模块
开发原型及配件
DF纪念品/书籍/套餐
套件
传感器
推荐品牌
micro:bit
开发板
模块
开发原型及配件
DF纪念品/书籍/套餐
套件
传感器
推荐品牌
树莓派
开发板
模块
开发原型及配件
套件
传感器
推荐品牌
LattePanda
开发板
模块
开发原型及配件
套件
传感器
推荐品牌
AI 人工智能
开发板
模块
开发原型及配件
DF纪念品/书籍/套餐
套件
传感器
推荐品牌
STEM/创客 教育
开发板
模块
开发原型及配件
DF纪念品/书籍/套餐
套件
传感器
STEM/创客 教育
推荐品牌
套件
Arduino 套件
micro:bit 套件
机器人 套件
Boson 套件
LattePanda 套件
树莓派 套件
其他套件
推荐品牌
开发板
Arduino
micro:bit
LattePanda
行空板
ARM
英伟达
ESP32&ESP8266
其他开发板
推荐品牌
传感器
温湿度传感器
编码器
运动传感器
空气传感器
液体传感器
电流传感器
磁传感器
距离传感器
e-Health传感器
加速度传感器
电位计
交互传感器
重量传感器
柔性传感器
声音传感器
GPS
光线&图像传感器
其他传感器
压力传感器
开关和按钮
推荐品牌
模块
IO 扩展板
其他扩展板
舵机/电机/电机驱动
通信
AI 人工智能
LCD/LED/显示屏
音频
电源模块
AD / DA转换器
存储模块
其他模块
RTC模块
推荐品牌
开发原型及配件
电缆&电线
电子器件
结构件
工具
电源
面包板/原型板
配件
导电线
电子墨水
键盘
外壳&保护套
推荐品牌
3D 打印
3D 打印机及配件
3D 打印机耗材
推荐品牌
DF纪念品/书籍/套餐
DF纪念品
套餐
书籍
推荐品牌
首页
新品
创造力商城
产品资料库
心愿单
DF创客社区
造物记
当前位置:
首页
>
全部商品
>
心愿单
>
自动跟随风扇
自动跟随风扇
【免邮商品】
免运费商品,不计入配送费用。
价格:
¥677.00
货号
DWL1591509914
评价
已有
0
人评价
数量
-
+
库存:
销量:
0
分享
收藏
加入购物车
立即购买
产品描述
产品文档
用户评价
## 【项目介绍】 夏天又到了,又到了日常汗流浃背的时候。每当夏天到来,给我续命的不是空调,而是电风扇! ![](https://makelogimg.dfrobot.com.cn/FuDs1trWRGuh_dBxcTQWi6qT9Ve8?imageView2/2/w/1600) 某次监考地理的时候,学生画了这张图。知识点结合到位,活学活用。而我在办公室的座位刚好就是空调斜对角,靠门的位置。窗户是防盗窗,锁死了,打不开。房间又太大了,空调吹不到,而且丝毫感受不到空调带来的凉意。于是夏日里,我就靠桌面上的 USB 风扇续命。 ![](https://makelogimg.dfrobot.com.cn/Fj7pjzRA7A6moMHibBOuv95sLnFC?imageView2/2/w/1600) 然而有时候处理事情时会站起来或者换个位置,这时风扇需要手动去调整位置,不是很方便。为何不做一个自动跟随的风扇呢?我们的目标是,风扇跟着你走。你往哪儿,风扇就往哪儿吹! ## 【解决方案】 要做到自动跟踪,摄像头是少不了的。刚好我手上有个二哈识图(HuskyLens),可以进行人脸识别、物体追踪,我们可以利用它来记录人在摄像头中的相对位置,然后通过舵机调整风扇的角度。为了实现角度自由调整,我们还需要一个云台。因此主要器材就确定了。 ##【作品演示】 我们先来看看做好的样子吧! ![](https://makelogimg.dfrobot.com.cn/FsMnqyvNZryO1EV-RlcegUSSEbTy?imageView2/2/w/1600) [视频演示](https://v.qq.com/x/page/s0977t5uqy9.html) 视频中我用的是“物体追踪”模式,实际上测试的时候用的是“人脸识别”模式,跟踪效果也很棒! 下面我们开始制作吧! ### 步骤1 组装云台 这个迷你二自由度云台收到的时候是散件,需要自己组装。首先我们将一个舵机卡到底部固定座上。 ![](https://makelogimg.dfrobot.com.cn/FikBgz6k0LZUIbIgLrRdwPvGxfZm?imageView2/2/w/1600) 然后将另一边固定座盖上,接着用螺丝刀将两侧固定座固定在一起。 ![](https://makelogimg.dfrobot.com.cn/FgE8dubfw8Hz9wgQcdmibfXsmZzG?imageView2/2/w/1600) 找到舵机配件包中的舵盘。我们需要用到十字舵盘和条形单边舵盘。从下图可以看出,这两个舵盘全都太长了,需要进行修剪。 ![](https://makelogimg.dfrobot.com.cn/FjMgjknwReisif_Z9R9QoWXG5YYc?imageView2/2/w/1600) **温馨提示:** 舵盘修剪后不一定能放进对应的孔位,还要用锉刀打磨两侧或者修剪侧边。注意不要剪掉太多,否则稍后无法用螺丝固定。 修剪完成后从背面用最小号自攻螺丝将舵盘固定在底座和固定座上。 ![](https://makelogimg.dfrobot.com.cn/FkqR0hXXn3AFES9CiCZZO3YFxYtv?imageView2/2/w/1600) 取出另一个舵机,将其用螺丝固定在云台上方的固定座上。 ![](https://makelogimg.dfrobot.com.cn/FlgF-ASjZAoKpy_hazfnqw5ShUrW?imageView2/2/w/1600) 将云台的两个固定座组装在一起。 ![](https://makelogimg.dfrobot.com.cn/FvjrfozpYXRipUgt0tbgisNurS3V?imageView2/2/w/1600) 最后将底部舵机对准底座上的十字舵盘插好就完成了云台的组装。 ### 步骤2 安装风扇 首先将风扇反过来,将二哈识图配件里的长支架固定在风扇的背面。 ![](https://makelogimg.dfrobot.com.cn/FjjyYL0s9TGlU_652TIbruvvnOBx?imageView2/2/w/1600) 将二哈识图通过短支架固定在风扇背面的支架上。然后就可以把风扇放到云台上了。 ![](https://makelogimg.dfrobot.com.cn/FgIods2Fn8C0SvDYBqCAKzBF90QJ?imageView2/2/w/1600) 看上去效果不错。然而转动云台上部分,发现只能往下转动,不能往上“抬头”!也就是说风扇只能垂直往前吹,或者低头吹地面。这可不是我想要的效果。那就再捣腾一下,看看有没有别的固定方法。 ![](https://makelogimg.dfrobot.com.cn/Fp5kB1m2GQXciGi0wTYaEni9lM5D?imageView2/2/w/1600) 最终找到了可以上下点头的固定方式。然而这个固定方式风扇根本没有牢牢固定在云台上。而且因为头重脚轻,直接会把云台搞翻了。 ![](https://makelogimg.dfrobot.com.cn/Fr5XXqhzovOChCtQUcN-UWzh2SR5?imageView2/2/w/1600) 那就把云台的底座用自攻螺丝固定在一个纸盒子上,这样就不会翻了。可还是没有解决固定风扇的问题。那就自己动手设计一个风扇支撑块吧。 ### 步骤3 制作风扇支撑块 通过观察可以知道,上述固定方式,云台底部悬空,风扇两侧都有空隙,因此根本固定不住。用尺子测量中间的间隙,绘制风扇支撑块的草图。 ![](https://makelogimg.dfrobot.com.cn/FuQKU67avCXBQvlCGzJCGjfUadCP?imageView2/2/w/1600) 尺寸确定后就可以用软件来建模了。打开 Fusion 360,绘制底面草图。 ![](https://makelogimg.dfrobot.com.cn/FkuguuwD7kcTpyejoObwVrNNtikr?imageView2/2/w/1600) 为了防止中间开口太小导致风扇卡不进去,我将开口各往两侧缩进 0.1 mm。 ![](https://makelogimg.dfrobot.com.cn/FucjJO-Eww1aBfkTKiKWXES_OviD?imageView2/2/w/1600) 将底面整体往上提升 9.5 mm,完成模型的创建。 ![](https://makelogimg.dfrobot.com.cn/FtiZQh6fDA609sFUkPW5wXM4x78o?imageView2/2/w/1600) 将模型切片后用 3D 打印机打印出来。 ![](https://makelogimg.dfrobot.com.cn/FntoJnmHVpCWWoUvoAMDvDj53II2?imageView2/2/w/1600) 尺寸刚好可以塞进云台。 ![](https://makelogimg.dfrobot.com.cn/FutTN5K9teWGJ_Taw8gcD9wD9LvT?imageView2/2/w/1600) 试着将风扇塞到中间孔位中。刚好可以牢固固定住。 ### 步骤4 连接器材 ![](https://makelogimg.dfrobot.com.cn/FgHNmZt6VEtAhNo9GTck-HKDf2Su?imageView2/2/w/1600) 1.将二哈识图连接到扩展板的 IIC 接口。 2.将风扇连接到 P12 引脚。 3.将云台下方的舵机接到 P0 引脚,并关闭扩展板上的蜂鸣器开关。 4.将云台上方的舵机接到 P1 引脚。 ### 步骤5 编写代码 #### 一、原理分析 二哈识图屏幕分辨率为 320*240,因此屏幕中心点坐标为(160,120)。我们可以获取屏幕中捕获对象方框的中心点坐标,将其与(160,120)进行比较。 ![](https://makelogimg.dfrobot.com.cn/FsdJHQEaQDSHDNGk9_a5Cch8aNH9?imageView2/2/w/1600) 若 X 坐标<160,则水平舵机向左转; 若 X 坐标>160,则水平舵机向右转; 若 Y 坐标<120,则垂直舵机向上转; 若 X 坐标>120,则垂直舵机向下转。 另外,风扇当检测到画面中有人或者有识别对象时才打开,没有的时候关闭。这样做也算是节能减排了哈~ #### 二、引入扩展 打开 Mind+,切换到上传模式。选择【主控板】分类下的【micro:bit】。 ![](https://makelogimg.dfrobot.com.cn/Fv0A_q1YEPh4XMt2CMnrpvLmwuz2?imageView2/2/w/1600) 在【传感器】分类下找到【HUSKYLENS AI 摄像头】,点击添加。 ![](https://makelogimg.dfrobot.com.cn/FssTQa7jZO9FgL0eQlTa7HlPBDvv?imageView2/2/w/1600) 将【执行器】下的【舵机模块】也添加到项目中。 ![](https://makelogimg.dfrobot.com.cn/FrmT-GMKXv4CPs84qjFbFo1JtAUP?imageView2/2/w/1600) #### 三、创建变量 选择【变量】分类,点击【新建数字类型变量】,新建两个变量,分别为“X角度”和“Y角度”。我们用这两个变量来记录水平方向舵机的角度和垂直方向舵机的角度。 ![](https://makelogimg.dfrobot.com.cn/Fg0twtJuyS0_stHUxfNEdwiQyDDw?imageView2/2/w/1600) #### 四、创建函数 点击【函数】分类,选择【自定义模块】,新建两个函数,分别为“X轴移动”和“Y轴移动”。我们用这两个函数来控制云台的移动。 ![](https://makelogimg.dfrobot.com.cn/Fpgk7GsgGD9piAZCSzb-P1p0J_GK?imageView2/2/w/1600) #### 五、编写主函数 程序开始时我们先初始化二哈识图,切换到“人脸识别”模式,同时设置舵机的初始化角度。水平方向 90 度刚好在正中间,垂直方向 50 度是一个比较好的仰角。 ![](https://makelogimg.dfrobot.com.cn/FnsuvSalcyyU7p7J2V8qPIuK3pAe?imageView2/2/w/1600) 在循环中每次请求一次数据存入,如果方框在画面中就打开风扇,否则关闭风扇。打开风扇以后要判断目标对象的位置,并通过“X轴移动”和“Y轴移动”两个函数来使风扇朝着目标对象吹。 #### 六、编写函数代码 依据原理分析中的方法,编写“X轴移动”和“Y轴移动”两个函数的程序。我们除了判断目标对象坐标外,还要加一个角度判断,防止舵机移动时角度超过了范围。 ![](https://makelogimg.dfrobot.com.cn/FgzMQM0DkAlnwPAstlgoyHB6slgN?imageView2/2/w/1600) ![](https://makelogimg.dfrobot.com.cn/FhH00zJ7LMFBeD_tYkfDE9tEkl-l?imageView2/2/w/1600) 上述代码在测试的时候发现了一个问题。舵机一直在左右移动,好像一直在抖动。不是左移就是右移,即使你没有动。仔细观察代码发现,我们的代码就是这样子,只要偏离中心点就要调整舵机。而摄像头每次读取的坐标中心点都是有微小变化的。所以要消除这个抖动,就只能修改代码,不能将坐标一分为二,而是多划分几个区域。 ![](https://makelogimg.dfrobot.com.cn/Fl60qHNMYKg3tvsk0HTn7flZhOWM?imageView2/2/w/1600) 根据屏幕的尺寸,我们确定了中间有色区域为舵机不动区域。即: 若 X 坐标<140,则水平舵机向左转; 若 X 坐标>180,则水平舵机向右转。 修改代码如下: ![](https://makelogimg.dfrobot.com.cn/FnAJjo6LTqqPGTOv238x5rKBQdB6?imageView2/2/w/1600) 同理修改“Y轴移动”函数。 ![](https://makelogimg.dfrobot.com.cn/Fu2gm9qSaRdomHNitAhquWxZAydI?imageView2/2/w/1600) 现在就不会出现自己不动,风扇也在左右移动的情况了。 ## 附件 [云台架子 v1.stl](http://makelogimg.dfrobot.com.cn/makelogFile_15914976088529379.40364406014.stl) [自动跟随风扇.sb3](http://makelogimg.dfrobot.com.cn/makelogFile_15914976186235387.176455105005.sb3) ##【总结】 项目的思路比较简单,但是代码编写还是有一定的难度。关键在于舵机移动的方向与屏幕坐标的关系以及舵机的角度加减与左右、上下移动的关系。使用物体追踪和人脸识别都能够达到不错的追踪效果。不过跟踪的时候,舵机向上移动没有向下灵敏,代码或许有一定的改善空间。
用户评论
(
0
条评论)
浏览历史