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

1.1 GoPiGo3机器人介绍

GoPiGo3是Dexter Industries生产的基于Raspberry Pi的机器人小车。它主要用作学习机器人技术和编程的教育工具包,这两个互补的观点清楚地显示了成为机器人工程师所需的横向知识。Modular Robotics的工程总监Nicole Parrot用如下语言解释其意义:

GoPiGo起源于2014年初的Kickstarter运动,当时Raspberry Pi还是比较新的事物。最初的用户是业余爱好者,但是不久之后,教师和编程俱乐部志愿者就与他们的学生分享了GoPiGo。这开启了对GoPiGo的各种修改。它是一个坚固的平台,具有完整的功能列表,并且仍基于Raspberry Pi!最近的更新自2017年以来就已经存在,并且是一个稳定的平台。

基于Raspberry Pi的机器人在教室中具有很多优势。它可以用多种语言进行编程,可以独立于学校的Wi-Fi,而不需要蓝牙,并且可以直接在开发板上执行高级应用程序,例如计算机视觉和数据收集。带有DexterOS的GoPiGo附带了预先安装的科学库。带有Raspbian for Robots的GoPiGo允许用户安装手头项目所需的任何库和工具。它带有两个Python库:easygopigo3.py和gopigo3.py。根据用户的技术技能,这两种都提供对机器人的高级控制和低级控制。

GoPiGo已成为大学、研究人员和工程师的基于Raspberry Pi的简单的、文档齐全的首选入门机器人。

准备好学习机器人技术了吗?让我们开始吧!

1.1.1 机器人技术角度

从机器人技术的角度,将学习如何使用其基本部分:

大多数教育工具包都停在3级控制器上(位置、电压、电流)。它们不包括4级单板计算机。控制器中的软件是嵌入在板上的一个整体的小程序(只有一个)。每次想要修改机器人的代码时,都必须完全替换现有程序,并通过USB端口使用串口通信从外部计算机更新版本。

一个典型的例子是一个由Arduino控制的机器人。在这里,Arduino板扮演着GoPiGo3板的角色,如果你已经使用过它,肯定会记得如何通过USB数据线将新程序从笔记本电脑上的Arduino IDE传输到机器人。

1.1.2 编程角度

从编程的角度来看,可以通过专门为GoPiGo3开发的可视化编程语言Bloxter(开源Google Blockly的一个分支)轻松上手。当要学习编写软件程序的基本概念时,这是一个非常合适的前提。

但是,如果正在阅读本书,我们假定读者已经知道如何使用多种可用语言之一进行编程,即C、C++、Java、JavaScript或Python。Dexter Industries提供各种开源代码库(https://github.com/DexterInd/GoPiGo3/tree/master/Software),可以用它来编程GoPiGo3。其中一些如下:

尽管如此,在第1章中,我们建议仅使用Bloxter以强化机器人技术的知识点,并熟悉手中的硬件。之后,鉴于有许多可用的GoPiGo3 应用程序编程接口 (Application Programming Interface,API),可以使用选择的编程语言。

在本书中,我们将重点介绍作为ROS编程的主要语言的Python。Python语言更易于学习,同时在机器人技术和计算机科学中仍然非常强大且占主导地位。学习第2章的一些Python的例子之后,我们将开始使用 机器人操作系统 (Robot Operating System,ROS),这不是具体的编程语言,是机器人开发应用程序框架。我们将展示如何使用封装工具修改Python程序,使它们也可以在ROS中运行,用于构建高级功能。

当GoPiGo3的Python代码用ROS封装时,GoPiGo3还可以做更多的事情。此软件升级为GoPiGo3提供了一个工具包,使学生、创作者和工程师可以了解机器人的工作方式。此外,你应该知道ROS通常在专业环境中使用。

1.1.3 机器人套件和资源

在高级层次上,可以将机器人的硬件分为两组:

尽管可以通过 通用输入/输出 (General Purpose Input/Output,GPIO)引脚将数字设备直接连接到Raspberry Pi,但从功能的角度来看,最好通过控制器(即GoPiGo3板)连接所有传感器和执行器。在控制器级别上保持与物理世界的接口,并在计算机级别上进行处理和计算。

如果你是一个Raspberry Pi常用户,并拥有开发板,那么只需要购买GoPiGo3机器人底座套件(https://www.dexterindustries.com/product/gopigo3-robot-base-kit/)。该套件包括以下部件:

图1-1显示了所包含的所有部分。

005-01

图 1-1

图片来自Dexter Industries:https://shop.dexterindustries.com/media/catalog/product/cache/4/thumbnail/1800x2400/9df78eab33525d08d6e5fb8d27136e95/g/p/gpg3_components_rgb.jpg

图1-2显示了组装好的套件(没有包含Raspberry Pi开发板)。

006-01

图 1-2

图片来自Dexter Industries:https://32414320wji53mwwch1u68ce-wpengine.netdna-ssl.com/wp-content/uploads/2017/05/GPG3_BaseKit_2.jpg

它不包括电池(8 AA 1.2 V)。尽管可以使用便宜的可更换部件,但强烈建议使用充电电池。从长远来看,它将具有成本效益和环境友好性。

除套件外,还需要添加Raspberry Pi 3及Micro SD卡。否则,特别是如果你是Raspberry Pi的初学者,那么购买GoPiGo3初学者入门套件更合适(https://www.dexterindustries.com/product/gopigo-beginner-starter-kit/),其包括Raspberry Pi 3及其配件,以及配备伺服马达的可定向距离传感器,具备180°的视场范围。该传感器组由以下部件组成:

图1-3显示了初学者入门套件的最终外观。通过添加Raspberry Pi和可定向距离传感器,使用机器人基础套件可以获得相同的结果。

006-02

图 1-3

图片来自Dexter Industries:https://www.robotshop.com/media/catalog/product/cache/image/380x380/9df78eab33525d08d6e5fb8d27136e95/g/o/gopigo3-beginner-starter-kit.jpg

现在,我们已经了解了GoPiGo3机器人,是时候介绍有关嵌入式硬件和机电的技术细节了。 HG7OpLpswIjqzG3EI6H4NgP+vGzlgCqMepo6CtNVmNn36pTsSsWlEVvz6GtoUGpF

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