购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

准备工作

虽然人工智能机器人的种类千差万别,但其系统组成是一样的,通常都是由控制器、传感器、能源动力以及反馈系统等部分构成。通过传感器感知环境信息的变化,由中央处理器运算、处理,最后由输出装置完成特定的任务。本书仅以乐高机器人为例,说明各部分的功能。

说明

在本部分中,不会做出机器人,仅备齐后续项目所需的软硬件。

硬件和软件的选择

既然本书的主题是手机和乐高机器人的组合,一套乐高机器人和一部智能手机是必不可少的。

乐高机器人从很早的RCX到后来的NXT,再到近期出现的EV3,可以说每一次更新换代都是一次飞跃。尤其是EV3,采用开放的Linux作为内置操作系统,还公开了源代码,吸引了很多极客对其进行改造、提高。到目前为止,除了NXT时代就已有的针对乐高机器人的编程环境NXC、leJOS等以外,还出现了支持python语言、JavaScript语言的相关项目。

图1-0-1 EV3智能单元外形

本书选择EV3智能单元(EV3 Intelligent Brick)作为乐高机器人的核心。EV3智能单元外形如图1-0-1所示。

可以说,EV3不仅在性能上较之NXT有了大幅度的提高,在编程灵活性以及选择面上也有了质的飞跃。

既然选择了EV3,要构建一个机器人,自然少不了配套的传感器和电动机,常用的部分传感器和电动机如图1-0-2和图1-0-3所示。由于EV3也支持NXT的传感器和电动机,所以使用NXT系列的也可以,只是程序要做相应的调整。

图1-0-2 EV3传感器

图1-0-3 EV3电动机

有关EV3和相关传感器、电动机的详细介绍,可以参阅本系列丛书的《乐高EV3机器人初级课程》和《乐高——实战EV3》等书籍或查看乐高官方网站上的介绍。

此外,就是构建机器人所需的乐高零件了。在任何一个套装中都会有很多零件,也可以单独购买零件套装。关于这方面,可以参考乐高的产品目录。

本书项目所用到的零件,大多来自乐高EV3教育版(#45544)和乐高教育版零件套装(#9648)。

说完了乐高机器人,再来看看手机。目前比较流行的可编程手机主要分为三大阵营——苹果公司的iPhone、使用Google开放系统Android的各厂商手机和微软的Windows Mobile。

由于目前Windows Mobile的市场占有率和普及状况仍处于劣势,所以本书未予以采纳。

苹果的iPhone是一款很好的设备,但若要开发iPhone的软件并在未“越狱”的真机上运行和测试,就必须注册成为苹果的开发者,需每年向苹果上缴99美元左右的费用;而且,编写好的程序,如果要在其他手机上安装,还必须通过苹果公司的层层审核发布到苹果商店中。作为本书作者,我不希望读者为了实现本书的项目而额外支出费用。所以,iPhone也被排除在外。

剩下的就是使用Android系统的智能手机,它成为本书对手机的唯一选择。

使用Android系统的手机生产厂商较多,不同厂商的产品对程序的兼容性会有些许差异。本书中使用的程序都是在三星的Galaxy Note Ⅱ下测试通过的。相信三星Galaxy系列手机应该都对本书程序拥有较好的兼容性。三星Galaxy Note Ⅱ如图1-0-4所示。

图1-0-4 三星Galaxy Note Ⅱ

对Android系统的版本,本书中的代码需要Android 4.1.2以上版本。

另外,手机型号不同,大小也会存在差异,在构建机器人硬件时,需要自行根据实际手机大小对安装手机的结构进行修正。

既然选定了使用Android系统的手机,手机端的编程环境也就确定了。Android的编程,通常使用Eclipse+ADT plug-in+Android SDK/NDK进行。相关的软件配置方式,在《Java与乐高机器人》(清华大学出版社出版)一书中有专门章节介绍,网上也有很多类似的详细教程,本书就不赘述了。

而Android编程的语言,如果不涉及底层Android NDK编程,则主要使用Java语言。

为了统一编程语言,我们希望在乐高机器人编程上也能使用Java语言。所以,本书采用了leJOS EV3环境。

图1-0-5 容量为4GB的Micro SD卡

leJOS EV3采用了可引导Micro SD卡的方式运行,可以在不影响EV3原厂固件的前提下运行leJOS。为此,还需要一张Micro SD卡,也称为TF卡。EV3的容量支持上限为32GB,leJOS运行推荐2GB以上空间。因此,Micro SD卡的容量应在2~32GB之间。一张4GB的Micro SD卡如图1-0-5所示。

为了能通过计算机初始化Micro SD卡,或许还需要一个读卡器。在写这本书时,使用的是淘汰下来的4GB Class 4的卡和一个以前买手机赠送的USB读卡器。

除此之外,为了能够在与EV3连接之后远程操作EV3,还需要在所使用的计算机中安装Telnet和SSH/SCP访问工具。对于Linux和Mac OS来说,两者都是操作系统中自带的工具;对于Windows用户来说,操作系统中也配备了Telnet,可以使用Putty来作为SSH客户端,用WinSCP来作为SCP客户端。由于本书定位是提高篇,所以这类基础工具的安装和使用就不做介绍了,各位读者可以自行到网络上搜索学习。

至此,完成本书项目所必需的基本软、硬件就介绍完了。在最后,为了方便查阅,对前面提到的软、硬件列出清单如下。

1.硬件

2.软件

常见问题

问: 我使用的计算机需要安装什么操作系统?

答: Windows、Mac OS、Linux均可。由于我的主要工作环境是Mac OS,本书中的例子将主要以Mac OS为主。对Windows中差异较大的地方会特别加以说明。

问: 我的Micro SD卡插入EV3之后就很难拔出来,有什么好办法吗?

答: EV3的Micro SD卡插槽设计得确实不够人性化,可以在Micro SD卡的末端粘一段透明胶带,插入卡时,将透明胶带末端留在外面,拔卡时用力拉拽留在外面的胶带即可。

问: 我以前没做过编程,读这本书会不会很难?会不会看不懂?

答: 这本书虽然目标是以高级编程为主,但在第二部分也对相关知识做了面向零基础读者的介绍。世上无难事,只怕有心人。只要你愿意学习,愿意去网络中搜索相关解决方案,这本书当然是可以读懂的。

问: 我怎么知道我的手机使用的Android版本是多少?

答: 手机的系统设置中,通常有一项是“关于设备”或“关于手机”,进入其中可以看到Android版本信息。

问: 我也使用三星Galaxy Note Ⅱ,为什么Android版本是4.0.2?

答: 可以使用系统更新功能进行更新,也可以自行寻找Android 4.1.2的ROM刷机,不过刷机有风险,执行需谨慎。

问: 怎么在Micro SD卡中安装leJOS并用其启动EV3?

答: 请参阅第二部分leJOS基础知识一章的相关介绍。 dAWZWTPtahGNF81QUyDNgGrLCiGnOHA7JWakW4FAma43KW3l/cDHVKQJp9dZZq5T

点击中间区域
呼出菜单
上一章
目录
下一章
×