所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开
HUSKYLENS—智能物体追踪小车
Liheqia Liheqia 2020-01-01 18:54:00
7
3
人工智能研究和开发成果已经广泛服务于我们的生活,给我们带来了很大的便利,而人工智能教育在小学阶段则还处于很青涩、懵懂的认知状态。对于小孩子而言,日常接触到的人工智能产品主要是语音和图像识别产品。怎么样把图像识别更容易的应用于孩子们的创作中呢?这一直是不太容易的事情。因为市面上许多具有识别功能的摄像头都缺乏一种很直观、方便的操作过程和方法能够适应小孩子使用。直到HUSKYLENS的出现打破了这种尴尬的处境。下面介绍应用HUSKYLENS制作物体追踪小车的项目。
projectImage

HUSKYLENS摄像头正面

projectImage

HUSKYLENS摄像头背面显示屏

材料清单 材料清单
1x
HUSKYLENS --人工智能摄像头
1x
DFRduino Mega2560 V3.0控制器 (3D打印主控)
1x
MEGA传感器扩展板 V2.4 (Arduino兼容)
1x
DF15RMG机器人舵机
1x
多功能舵机支架
4x
370电机与支架
1x
四路电机驱动板
1x
麦克纳姆轮一套
2x
11.1V锂电池
1x
铝合金底盘
1x
铜柱一批
步骤1 步骤1
搭建追踪小车

(一)结构安装

先将四个电机安装在底盘上后,装上麦克纳姆轮。再在底盘上方装上MEGA2560控制板、电机驱动板、舵机,将HUSKYLENS人工智能摄像头使用金属结构件安装在舵机舵盘上。

(二)线路连接

控制板通过4-11八个数字口控制四个电机的转动。舵机连接在15号口,HUSKYLENS人工智能摄像头接在I2C接口。

(三)电源供应

为保证HUSKYLENS人工智能摄像头供电充足,不受电机和舵机工作影响。小车采用了两组11.1V锂电池供电的方式。一组给MEGA2560控制板供电,并由控制板给HUSKYLENS摄像头供电,经测试,控制板能输出比较稳定的5V给摄像头使用。另一组电池给电机驱动板使用,并由电机驱动版输出5V给舵机使用。电机驱动板和控制板共地。

*说明:本项目使用MEGA2560控制板是为了后续能够使用更多的串口和数字口连接其它设备继续丰富项目功能。

projectImage
projectImage
projectImage
projectImage
projectImage
projectImage
projectImage
步骤2 步骤2
编写代码

(一)追踪小车主程序代码

代码主要思路

1.初始化HUSKYLENS人工智能摄像头,启用物体追踪算法。

2.获取摄像头中追踪物体的框所在的位置和尺寸数据。

3.根据识别框的X坐标初步判断物体相对于摄像头的左右位置,如果偏左就控制小车左转,反方右转。

4.根据识别框的高度(或宽度)初步判断物体相对于摄像头的距离,如果高度大于80,表示物体离小车较近,则驱动小车后退。如果高度小于60,表示物体离小车较远,则驱动小车前进。

projectImage

(二)舵机代码

通过获取识别框的Y座标来初步判断是否物体会离开摄像头观察区域,进而控制舵机做出相应方向的转动,使物体基本能保持在摄像头有效观察区域中

projectImage

(三)控制电机驱动的引脚代码

projectImage

(四)电机运动代码

projectImage
步骤3 步骤3
小车结构视频
步骤4 步骤4
追踪物体效果

后续改进设想:

以后将继续增加更多传感器使追踪小车拥有更多智能的行驶功能。也将尝试通过结合更多的控制板和串口设备,研究其自动完成简易工作的能力。

Makelog作者原创文章,未经授权禁止转载。
7
3
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
[[c.comment_content]]