Scratch是近些年很流行的儿童编程软件。Scratch官网上的介绍是这样一句话“Create and share your own interactive stories,games, musics, and art.”创造和分享你自己有趣的故事,游戏,音乐等艺术作品。"可见它整合的元素是很吸引人的。
Scratch是由MIT Media Lab开发的一种适于八岁以上孩子学习的图形化编程语言。台湾地区较流行,好多学校已开始教学,还有的在比赛。近几年,国内各地也有越来越多地方开设了Scratch课程。这是因为,Sractch不仅仅是一款利用积木式工具制作二维动画的工具,还是一个学习互动媒体技术的平台。它可以挂接外部传感器扩展板,从而可以获取外界环境的信息与指示,制作互动作品。
图1 Scratch 软件界面
其实Arduino与Scratch本没有关系,但是因为Scratch自己的传感器板Scratch Board,较难买到,并且价格很高,而Arduino拥有基于开放源码的软硬体平台,又设计了完善的串口通讯接口,那它在极客的眼里,就跟Scratch有关系了。
极客们从来都是追求性价比的。Scratch的编程界面简单,方便,易于学习,Arduino的硬件价格便宜,扩展性好,使用面广,那就没有理由不让它们在一起啦。
图2 Arduino UNO控制器
下面给大家介绍一下如何连接Scratch与Arduino。
首先是Scratch软件的设置:
1. 打开Scratch软件,在左侧命令库中点击侦测项,勾选最下面的传感值与传感器两项,如图3;
2. 在传感值标签上单击右键,选择显示ScratchBoard监视器,如图4;
3. 右侧上方舞台就会显示出相关的端口与实时的数据,如图5。
图3 勾选Scratch 传感器设置 图4 点击显示ScratchBoard监视器
图5 Scratch 传感器与显示的数据
然后是Arduino控制器的设置:
1. 因为开始Arduino板子上没有同Scratch通讯的相关程序,不能同Scratch通讯,你需要到网上down一个for Scartch的程序,成型的例子很多,现在可以找到scratch board firmware for Arduino的v1.5 版本了;
2. 把固件代码通过Arduino IDE编译一下,下载到你的Arduino控制板。
图6 Scratch for Arduino的程序
最后连接Scratch 与Arduino:
1. 烧写好程序的Arduino控制板就不用拔下来了,记住它的串口号;
2. 在Scratch软件中,右侧上方舞台传感器窗口上,单击右键,选择你的Arduio控制板的串口号,如果状态是开,窗口中各项值实时的显示出来了,那么恭喜你,连接成功!
图7 选择Scratch端口 图8 状态是开表示成功连接Scratch 与Arduino
首先你可以试着通过电位器调整模拟端口的电位,看是不是软件中的数据也跟着变化呢?因为我用的Arduino UNO板子上只有6个模拟端口,所以,声音与按钮项是没有变化的。
试着用Scartch软件命令库的的block自己搭一个程序吧,开始你的互动之旅!
下面是我搭的一个程序效果,可以通过电位器控制Arduino板的A0口电位(0-5V变化,转到软件中0-100数值变化),与Scratch软件互动,控制太阳的升起与落下(用0-100数值变化,控制太阳的升降),还能控制天亮与天黑(用0-100数值变化,控制图片的明暗程度),想不想试试呢?
图9 Scratch日落(A值为0) 图10 Scratch太阳出来了(A值为50)
图11 Scratch 中午了(A值为100) 图12 用到的Arduino UNO与传感器扩展板
相关链接
Scratch中文版软件下载地址:http://scratch.softonic.cn/
用到的Arduino UNO控制板:http://www.alsrobot.cn/goods-141.html
用到的扩展板: http://www.alsrobot.cn/goods-147.html
Scratch for Arduino firmware下载地址:http://seaside.citilab.eu/S4AFirmware14.pde
近期新闻
热门新闻
奥松智能微信