QQ登录

只需一步,快速开始

创客帮-青少年创客创意社区

快捷导航
开启左侧

Scratch 1.4的一个有趣的功能

[复制链接]
老哈 发表于 2015-5-14 15:11:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
在Scratch 1.4中,有一个有趣的功能,就是支持远程传感器的功能。我们知道Scratch可以通过侦测模块中的检测传感器的值的功能来与真实世界进行交互。也就是可以通过外部的真实的传感器如声音传感器、光线传感器等来控制Scratch程序中各种角色的动作。实际上,Scratch可以通过网络来模拟传感器,这就是远程传感器的功能。这个功能隐藏得比较深,在“侦测”分组中,有两个关于传感器的block.在其上按鼠标右键,可以弹出一个菜单,选择其中的“允许远程传感器连接”,即可以启用该功能。实际上,它是在本机开始侦听TCP 42001端口的连接,用于接收远程传感器信息。
我写了一个小程序来测试这个功能,大家有兴趣的话也不妨一试。




下面是这个测试程序的界面,需要的话可以向我免费索取。





实际上,透过这个功能,可以在网络上对Scratch项目实现远程控制。利用远程传感器协议,甚至可以在设计一个手机app来控制scratch角色的动作,将手机当作遥控器。


Scratch远程传感器协议很简单。
Scratch本身侦听TCP 42001端口。当TCP连接建立后,就可以双向发送消息。Scratch向传感器发送的主要是广播消息;传感器可以向Scratch发送传感器值更新的消息,也可以发送广播消息。两种消息的格式如下:
  • broadcast <string>
  • sensor-update <var-name_1> <new-value_1> ...



消息发送的格式也很简单,就是在消息本身前加上4个字节的消息长度,然后和消息本身一起发送就可以了。需要注意消息长度是按网络字节顺序发送的,而且消息长度并不包括消息长度本身的4个字节。所有的信息都使用UTF-8编码。


关于远程传感器的详细信息,请参考: http://wiki.scratch.mit.edu/wiki/Remote_Sensors_Protocol

此工具已分享至新浪微盘,下载地址:http://t.cn/zTRGQIQ



可惜此功能在最新发布的2.0版本中不见了,不知道什么时候才能恢复。


转自:eniac2008的博客
好心情
您需要登录后才可以回帖 登录 | 注册

本版积分规则

客服热线
400-1234-888 周一至周日:09:00 - 21:00
公司地址:襄阳市樊城区长虹路现代城5号楼188

创客帮MAKER.BAND青少年创客创意社区是一个融教育、科技、体育资讯为一体的综合服务平台,专注于教育创新、专注于科技体育、专注于教育资讯。

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表