特洛Tello趣味航拍无人机编程入门及教学

admin 发表于 2018-07-26 11:08

2018年伊始,一家来自中国深圳名为睿炽科技的无人机创客企业,在美国拉斯维加斯召开的一年一度的CES 2018(国际消费电子产品展)展会上,向全球发布了其今年最新研发的第一款消费级无人机——特洛( Tello ),并一举夺得CES大展“最佳无人机”奖项!这款无人机由大疆提供飞控系统并采用了英特尔芯片,让无人机操控更简单、玩法更多样、飞行更智能。

特洛Tello趣味无人机是一款跨界的小型无人机,其自重仅约80克。在它迷你的身材里配备了领先的飞行控制系统和专业芯片,支持青少年编程教育工具和多种有趣玩法。


认识Tello无人机


为什么要学习编程?

编程能力已成为这个时代必备的“读写能力”。优秀的编程概念能帮助孩子的心智成长,学习和培养创造性解决问题的能力,并鼓励他们展现自己的想法。

特洛支持哪些编程平台?

特洛初始即支持Scratch可视化编程平台,后续将支持更多。

Scratch由麻省理工学院(MIT)设计开发,是一款面向青少年的优秀编程工具。儿童和青少年可通过拼接可视化的模块为特洛编写飞行程序,从而实现专属于自己的飞行动作。

如何安装Scratch编程平台

若是初次安装Scratch平台,还是略嫌复杂的。

访问 https://nodejs.org/en/download/,根据电脑系统类型,下载并安装 node.js。

在 https://dl-cdn.ryzerobotics.com/ ... 0180222/Scratch.zip 下载 Tello.js 及 Tello.s2e,打开命令行(Mac 系统请打开“ 终端 ”,Windows 系统请在 “ 运行 ” 中输入 cmd),输入 Tello.js 文件存放路径后,输入 node Tello.js,回车运行。 

运行 Scratch 2.0,按住“ Shift ”键,点击“ 文件 ”,选择“导入试验性 HTTP 拓展功能 ”,并在文件列表中选择  Tello.s2e  
Scratch 中的“更多积木”中将会显示 Tello 界面。

第一步:安装Adobe AIR

Adobe AIR是跨操作系统的软件平台,它可将同一组代码,分别打包成Windows、macOS,以及iOS、Android程序!用它开发的客户端有:新浪微博客户端微博 AIR、Google Analytics 分析工具、Twitter 客户端、TweetDeck及众多最新影片介绍工具等。

Scratch也是基于Adobe AIR开发,所以,必须首先安装Adobe AIR。

第二步:安装Scratch

Scratch的最新版本是2.0,可离线编辑项目,而无需联网。

安装完毕后,不要被满屏英文遮住眼睛,它当然是支持更多国语言的!不愧为面向全球的编程平台。

(点开File菜单,可以从列表里选择更多语言)

第三步:安装Node.js

Node.js是什么?它是一个 “编码就绪” 服务器;Node是一个服务器程序,其本身运行 V8 JavaScript。

特洛的Scratch项目需要额外安装Node.js创建的插件,所以在运行Scratch之前,必须先安装Node.js。

以 macOS 为例:

打开“实用工具”里的“终端”(Windows 系统请在“运行”中输入 cmd),直接把“Tello.js”拖拽到终端窗口(省下了手动输入其相对地址),然后键入“node Tello.js”,回车即可。

如有问题,可尝试用小编推荐的方式,先在终端键入“cd ”(cd后有空格),然后把Scratch目录拖入终端窗口,再键入“node Tello.js”回车即可。

(如有问题,建议采用推荐的方式)

第四步:运行Scratch

按住“Shift”键,点击“文件”,选择“导入 试验性 HTTP 拓展功能”,并在文件列表中选择”TelloChs.s2e” (若你喜欢英文,可以导入那个“Tello.s2e”)。

Scratch中的“更多积木”将会显示 Tello 界面。

(按住shift键,可以从文件菜单点选到“导入实验性HTTP扩展功能”命令)

(喜欢中文界面,记得导入这个文件)

(在脚本选项卡,点选“更多积木”即可看到新导入的中文特洛积木)

如何使用Scratch编程平台?

在使用Scratch编程时,不需要任何编程基础,只需拖动相应模块到程序编辑栏就能实现需求。用户可以自己设定飞行器的起飞方式、运行轨迹或降落地点,亲手探索特洛的更多可能性。

如下将结合文末所附视频的编程示例,一步步为各位分解:

第一步:换一个角色(非必须步骤)

严谨起见,建议换掉Scratch自带的角色图标(小猫),让我们的特洛小黄机登场!

(AIR平台对拖拽操作支持不利,需要从红圈处点选图片上传)

第二步:拖一个开始事件(非必须步骤)

从界面中间的脚本选项卡处,点击“事件”,选择第一个“当绿旗被点击”(也可选择“当按下空格键”),拖拽到右侧的舞台区。

此步骤非必须,亦为严谨起见。就算不设置开始事件,单击后面的模块亦可执行。

(建议设置开始事件,养成标注好习惯)

第三步:拖一个动作模块

从脚本选项卡处,点击“更多积木”,选择第一个“起飞”命令,拖拽到右侧舞台区的事件控件下面。如图所示,若积木的模块相契,则证明逻辑与流程可行,后来的模块将会自动吸合至上一模块。

(按照正常的起飞流程拖放搭配命令模块)

第四步:为动作设置时间

从脚本选项卡处,点击“控制”,选择第一个“等待1秒”的控制指令,拖拽到右侧舞台区的动作控件下面。

特别需要注意的是:必须为每个动作指定足够的完成及缓冲时间。经反复试验,建议改为5秒为佳。时间过短,动作往往不响应;时间过长,动作衔接则过于拖沓,降低观赏性。

(建议把多数动作的等待时间设置为5秒钟)

(完成后的动作界面)

第五步:编程飞行

将特洛Tello趣味无人机放置在空旷平整的地面,开机。要保证其有足够的飞行空间。将运行Scratch程序的笔记本无线网络,连接到特洛无人机上(其SSID通常以Tello开头)。

用鼠标点击Scratch界面右侧舞台区的绿旗模块,或点击左侧大图标右上角的绿旗图标,都可以将指令无线传输到特洛,无人机将按照事先编排好的指令完成一系列动作。

如飞机无响应,先在终端键入“cd ”(cd后有空格),然后把Scratch目录拖入终端窗口,再键入“node Tello.js”回车再试即可。

(飞完一遍,再次点击后,即可重复运行)

第六步:脚本分享

好东西要与好朋友分享,如果你对自己的编舞水平充满信心,为何不将它分享给你的朋友们呢?

最简单的方式,是保存或另存它,电邮给朋友即可。Ta收到后,只需要双击打开,即可直接控制自己的特洛翩翩起舞,和你当初的编舞一摸一样!

(点选文件菜单中的保存或另存为,即可把脚本导出)

(朋友收到你的脚本后,双击打开,即可获取一摸一样的动作编排)

快问快答:

问:Scratch平台可以控制特洛作一些诸如边上升边旋转的复合动作吗?

答:目前尚不支持。

问:Scratch平台可以控制特洛的摄像头吗?

答:目前只能控制飞行动作。

问:Scratch平台可以和手机同时控制特洛吗?

答:只能二选一。

后记,小编朋友研发了一个游戏化的少儿编程在线课程(5-12岁),游戏化教学结合scratch(一款在线少儿编程工具,类似乐高的积木拼搭),我家娃娃学了几次课,非常喜欢(超预期),16次课才200多块钱,对锻炼孩子的思维能力和动手动力很有帮助。

感兴趣的朋友可以扫描二维码,关注一下,或微信搜索“大耳猴少儿编程”