小超是一名初中生,他是学校的机器人与物联网兴趣小组的成员,他想做一个控制小电风扇的作品,要求温度高于25度并且附近要有人在风扇才能打开,温度越高风扇的转速越快。在老师的帮助和指导下,小明用一块Arduino控制器、一个温度传感器、一个人体热释红外线传感器和一台小电风扇搭建了电路,再编写程序写入Arduino控制器后就完成了作品。这个作品参加市里的《智能物联网竞赛》,获得创意项的特等奖。
Arduino到底是一件怎样的东西?使得一个中学生就能用它做出智能化的作品。要了解Arduino就先要了解什么是单片机,Arduino平台的核心芯片就是AVR单片机。
什么是单片机?它与个人计算机有什么不同?我们知道:一台计算机有这样几个部分构成:中央处理单元CPU(进行运算、控制)、随机存储器RAM、只读存储器ROM、输入/输出设备。在个人计算机上这些部分被分成几块芯片,安装在一块印刷线路板上,就是计算机的主板。而在单片机中,这些部分全部被集成到一个电路芯片中了,因此就称为单片机。
许多电子专业的大学生做毕业设计时往往用到单片机,由于对硬件知识和编程基础的要求较高,对不少同学来说是一个难关。不少电子爱好者也被挡在了单片机的门外。对有一定基础的人来说学习单片机都这么困难,为什么以单片机为核心的Arduino控制器就变得容易学了呢?
Arduino控制器是一个硬件平台,类似于单片机开发板,但是功能上要强大很多,关键是还有配套的一个集成开发环境Arduino IDE,这个软件对单片机的资源进行了封装,即使你不知道单片机的底层工作细节也能够使用它,软件编程也比单片机的编程要简单很多,有很多自带的或第三方的库文件可供调用,完成一个项目你自己要做的事情往往会很少。
说到这里,有人可能会说:这个东西这么简单,也就适合中小学生做一些简单的项目,没有什么大的用处。错!使用简单并不等同于功能简单,大部分用单片机开发的项目用它也能做,要实现同样的功能,你难道不选择最简单的方法吗?
举两个例子:
图1是一个用Arduino做的“脉搏监测仪“,只要你把手指按在脉搏传感器上,几秒钟后就会在液晶屏上显示你的脉搏曲线和心率。
图2是它的电路图,是不是很简单?其实更值得一提的是它的程序。
由于使用了液晶屏的类库,使得编程变得很方便,我们只需要学会调用画线、显示字符等几个函数就可以编写程序了,至于单片机是如何是向液晶屏发送指令和数据,我们不需要去了解,整个程序很简单,只有30多行代码。如果使用单片机编程,就要复杂很多了。
我们常见的太阳能光伏电池板方向是固定朝南的,只有在中午太阳光才和电池板垂直,早晚两个时间段由于光线是倾斜的,太阳能转换效率会下降很多。图3是用Arduino做的“太阳能光伏电池系统控制器”,它如同向日葵,可以跟着太阳转,始终保持太阳能的最佳转换效率,同时它还实现了蓄电池的自动充电。由于使用舵机类库,它的编程也很简单。
从上面这两个电子制作可以看出,使用Arduino控制器可以实现和单片机一样的功能,但制作难度却大大降低了。它不只适用于中小学生,也适用于电子爱好者和大学生,使得原来想做而做不成的东西现在可以做了。有了Arduino的基础,对电子制作产生了兴趣,以后再想入单片机的门就会变得容易了。
了解更多精彩的内容
本书主要介绍了Arduino的相关知识,书中包含20余个Arduino应用实例,用手把手的教学方式帮读者学会这些实例的编程和制作方法。通过这些实例的制作读者既学会了Arduino的函数和各种模块的使用方法,也能制作出所需要的实用作品,此外,在制作的过程中,读者还能掌握电子电路的基本知识,学会电路制作和调试的基本技能,进而逐步提高了自己的编程能力。认真学完本书内容,不知不觉中读者就会发现自己已经是一个Arduino高手,能够举一反三并开发出自己的项目了。
学Arduino,玩电子制作,从学习本书开始。