所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开

TT无人机第六课时:换一种方式起飞!(红外通信)

Drew Drew 2021-01-03 14:05:59

【课程引入】

        同学们是否想着,除了上节课的驱动起飞方式外,还有没有进阶的驱动方法呢?当然有啦!本节课,我会带大家使用传感器拓展套件里的红外无线遥控套件来驱动无人机的起飞。

【目标成果】

1、基础:按下红外遥控器1键,无人机起飞,悬停3秒后自动降落。

2、拓展:按下红外遥控器1键,无人机起飞并悬停,按下2键顺时针旋转90°,按下3键逆时针旋转90°,按下4键则降落。

【知识原理】

        相信大家对电视机一定再熟悉不过了。遥控器作为电视的控制设备,让我们毫不费力就可以调换电视频道,那么遥控器是如何实现对电视机进行遥控的呢?

        日常生活中应用最广泛的是红外线遥控模式。一个完整的遥控系统一般由发射器(遥控器)、接收器和中央处理器(CPU)三部分组成。其中,接收器和CPU部分都在电视机上。

        遥控器内部:对应于每一个按键,其内部电路都采用了一种特定的编码方式与其对应。当按下特定按键时,芯片会发出相应的编码序列信号,该信号经过放大和调制处理后会发送给发光二极管,被转换为红外线信号向外辐射。

        电视机接收器:接收到红外线信号经过解调处理,恢复出其中的控制信号,并将该信号发送给中央处理器,由中央处理器执行换台等相应操作。由此,我们便实现了对电视机的遥控功能。

【项目实施步骤】

阅读手册 → 模块搭建 → 编写程序 → 下载程序,测试效果

步骤1 步骤1
阅读产品手册
projectImage

1、红外接收模块:我们需要记住三个引脚的排序

2、红外遥控器:手册中有两张遥控键值附表,我们用Mind+编程需要用到的是第二张附表。

projectImage
步骤2 步骤2
模块搭建

红外接收模块通过io扩展板接到IO14(程序中设定的,其它IO口也可以)上

步骤3 步骤3
Mind+编程(上传模式)

本实验使用上传模式,在通信模块中选择加载红外接收模块

projectImage
projectImage

程序讲解:

1、由于红外接收值在读取一次后就会被清空,因此首先需要保存读取到的红外编码。又因红外接收的值为字符串,所以我们设置了一个字符串变量my string variable,用于保存红外编码。

2、判断语句是用来判断是否接收到数据。如果字符串长度大于1,则说明有数据收到,进入嵌套的判断语句。

3、继续下一个判断,接收到的编码如果是FD08F7,则说明按下的1键,则执行对应的指令;否则无指令执行。

步骤4 步骤4
下载程序,测试效果

【项目拓展】

        学会红外遥控起飞后,不妨再来试试用红外通信进行飞行控制:按下1键无人机起飞并悬停,按下2键顺时针旋转90°,按下3键逆时针旋转90°,按下4键则降落。

projectImage

程序讲解:

        拓展的程序中嵌套了四个判断语句,这四个判断语句之间是并列关系,同一时间只可能执行一个(当然也可能一个都不执行)。同学们在学会之后,可以尝试放置更多的判断语句,增加遥控功能。

材料清单 材料清单
1x
红外接收模块
1x
红外遥控器
1x
TT无人机+开源控制器+IO扩展板
1x
microUSB线
Makelog作者原创文章,未经授权禁止转载。
1
0
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
|
[[c.comment_content]]