首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

微课堂 走进Arduino 格林机器人

使用百度网盘的小伙伴

复制下面链接再下载最新的Ardublock

https://pan.baidu.com/s/1R1M-S6gBG4tzpxTQDbQ65g

第1课 走进Arduino的世界

对喜好机器人与机器人技术的人而言,除了希望了解机器人的定义及其构成之外,更有兴趣的是参与机器人的设计与创新,那么我们到底通过什么来制作机器人呢?大家有没有接触过Arduino?通过这节课的学习,我们将带大家进入到Arduino的神奇世界中来。

【任务导航】

1.认识Arduino,了解Arduino控制板的种类;

2.掌握Arduino驱动的安装;

3.体验Arduino编程界面。

【材料阅读】

1.什么是Arduino

Arduino是一个基于开放源码的软硬件平台,构建于开放源码simple I/O界面版,并具有使用类似Java、C语言的IDE集成开发环境和图形化编程环境。由于源码开放和价格低廉,Arduino目前广泛地应用于欧美等国家和地区的电子设计以及互动艺术设计领域,得到了Make magazine(中文版名称为《爱上制作》)等出版物和Instructable等网站的认可和推荐。Arduino被称为“科技艺术”,作为一种新的“玩具”,甚至新的艺术载体,吸引了各个领域的人们加入到Arduino的神奇世界里来。

2.Arduino板子种类

Arduino先后发布了十多个型号的板子,有可以缝在衣服上的LiLiPad,也有为Andriod设计的Mega,也有最基础的型号UNO,还有最新的Leonardo,如图1.1.1~1.1.4所示。

图1.1.1 LiLyPad

图1.1.2MEGA

图1.1.3UNO

图1.1.4Leonardo

ArduinoUNO是USB系列的最新版本,不同于以前的各种Arduino控制器,它不再使用FIDI的USB到串口驱动芯片,而是把Atmega8U2编程为一个USB到串口转换器,目前Arduino UNO已成为Arduino主推的产品。

3.Arduino Romeo V1

本书使用的Arduino控制器是由DFRobot出品的Arduino Romeo V1,如图1.1.5所示。该控制器采用的是最基础且应用最广泛的UNO板卡。它继承了Arduino328控制器所有的特性而且集成了电机驱动、键盘、IO扩展板、无线数据串行通讯等接口。它不仅可以兼容几乎所有Arduino系列的传感器和扩展板,而且可以直接驱动12个舵机。除此之外,它还提供了更多人性化设计,采用了3P彩色排针,能够对应传感器连接线,防止插错。其中红色对应电源,黑色对应GND,蓝色对应模拟口,绿色对应数字口。

(1)处理器:ATmega328;

(2)输出电源:5V(2A)/3.3V;

(3)数字IO脚:(其中,3、5、6、9、10和11路作为PWM输出),数字口的值为或1;

(4)模拟输入值:A0-A7,模拟口的值为0-1023之间的任意值;

(5)EEPROM:1KB;

(6)IIC:3个(其中有两个是90度针脚接头);

(7)测试按钮:5个(S0-S4);

(8)复位按钮:1个(RST);

(9)工作时钟:16MHZ。

图1.1.5Remeo

Arduino Romeo V1的功能和连接说明如图1.1.6所示。

图1.1.6UNO的功能和连接说明

4.Arduino IDE安装

得益于Arduino的开源,我们可以访问Arduino的官方网站(www.Arduino.cc),下载Arduino IDE软件,该软件用来编写程序并上传程序到控制器上,下载网址为http://Arduino.cc/en/Main/Software。这里要提醒大家的是下载版本要与计算机的操作系统相匹配。该软件下载之后,无需安装,解压后即可使用,如图1.1.7所示。

图1.1.7解压后的Arduino IDE文件列表

ArduinoIDE的环境不仅有文本式的编程环境(图1.1.8所示),还有图形化积木式的编程环境ArduBlock(图1.1.9所示),本书采用的编程环境是后者。

图1.1.8Arduino IDE开发环境

图1.1.9ArduBlock开发环境

5.Arduino驱动的安装

Arduino控制器和计算机的连接一般采用USB连接线。计算机第一次连接上Arduino控制器,需要安装驱动,以后再将Arduino控制器连到电脑上之后,就不需要安装驱动了。驱动程序在Arduino IDE安装目录的Drivers文件夹中。下面以Windows 7操作系统为例,介绍驱动安装过程,如图1.1.10~1.1.15所示。

图1.1.10打开“设备管理器”,找到Arduino UNO设备

图1.1.11选择“浏览计算机以查找驱动程序软件”

图1.1.12选择驱动程序Drivers所在的文件夹

图1.1.13如果系统出现安全提示,选择“安装”

图1.1.14安装完毕

驱动程序安装之后,在“设备管理器”的端口一项中将增加一个COM口设备,请记下该端口号,如图1.1.15所示,Arduino与计算机通信端口号为COM4。

图1.1.15通过设备管理器查看Arduino的COM口

最后要在Arduino开发环境中设置相应的串口号以及Arduino板的型号,注意Arduino板卡的型号为Arduino UNO,串口设置要与设备管理器中显示的Arduino的COM口一致(比如我们这里的COM4)。

6.体验Arduino

驱动安装完之后,就可以开始Arduino之旅了。接下来我们用Arduino IDE开发环境中LED闪烁的示例来体验一下Arduino吧。在ArduinoUNO板的13号针脚上已经带了一个LED灯,如图1.1.16所示。点击文件——>示例——>Basic——>Blink,这时会弹出一个已经加载到程序编辑区的IDE环境,点击,将程序上传到Arduino控制器中,程序上传完之后会有上传成功的提示,大家会看到LED灯在不停的闪烁。

图1.1.16数字针脚13指示灯

【动手操作】

活动主题一:Arduino驱动的安装

在装完Arduino驱动之后,要打开设备管理器,查看自己的Arduino UNO的端口,并在打开Arduino IDE之后修改端口号使其保持一致,除此之外还要选择板卡为Arduino UNO。

活动主题二:上传Blink示例程序,观察现象

【探究思考】

请同学们上网或者查阅相关的资料,了解一下通过Arduino平台可以制作哪些有生活意义、有趣的智能人造物。

【视野拓展】

Arduino的历史

Arduino这个经典的开源项目,诞生于意大利的一间设计学校。Arduino的核心开发团队成员包括:Massimo Banzi,DavidCuartielles,Tom Igoe,Gianluca Martino,David Mellis和NicholasZambetti。

据说,Massimo Banzi的学生们经常抱怨找不到便宜好用的微控制器,2005年冬天,MassimoBanzi跟朋友David Cuartielles讨论了这个问题,David Cuartielles是一个西班牙籍晶片工程师,当时在这所学校做访问学者。两人决定设计自己的电路板,并引入了Banzi的学生David Mellis为电路板设计编程语言。两天以后,David Mellis就写出了程式码。又过了三天,电路板就完工了。这块电路板被命名为Arduino。几乎任何人,即使不懂电脑编程,也能用Arduino做出很酷的东西,比如对感测器作出回应,闪烁灯光,还能控制马达。

随后Banzi,Cuartielles,和Mellis把设计图放到了网上。保持设计的开放源码理念,因为版权法可以监管开源软件,却很难用在硬件上,他们决定采用Creative Commons许可。Creative Commons(CC)是为保护开放版权行为而出现的类似GPL的一种许可。在Creative Commons许可下,任何人都被允许生产电路板的复制品,还能重新设计,甚至销售原设计的复制品。你不需要付版税,甚至不用取得Arduino团队的许可。然而,如果你重新发布了引用设计,你必须说明原始Arduino团队的贡献。如果你调整或改动了电路板,你的最新设计必须使用相同或类似的Creative Commons许可,以保证新版本的Arduino电路板也会一样的自由和开放。唯一被保留的只有Arduino这个名字,它被注册成了商标。如果有人想用这个名字卖电路板,那他们可能必须付一点商标费用给Arduino的核心开发团队成员。你可以参考Arduino的官方网站,在那里你会找到各种创意作品的源码,当然也有很多机器人应用实例代码,例如直流电机PWM调速、舵机控制、超声波测距、红外传感器寻迹等,相信它能使你早日实现DIY机器人的梦想。

【挑战自我】

同学们已经大概了解了Arduino,请大胆想象,使用Arduino可以制作哪些机器人作品?

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181109G0ULM500?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券