惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Security Affairs
S
Schneier on Security
T
Tenable Blog
G
GRAHAM CLULEY
Latest news
Latest news
D
Darknet – Hacking Tools, Hacker News & Cyber Security
A
Arctic Wolf
I
Intezer
Cyberwarzone
Cyberwarzone
T
The Exploit Database - CXSecurity.com
T
Tailwind CSS Blog
K
Kaspersky official blog
Blog — PlanetScale
Blog — PlanetScale
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Threat Research - Cisco Blogs
爱范儿
爱范儿
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园 - 叶小钗
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Recent Commits to openclaw:main
Recent Commits to openclaw:main
P
Palo Alto Networks Blog
WordPress大学
WordPress大学
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 司徒正美
The Cloudflare Blog
Help Net Security
Help Net Security
罗磊的独立博客
博客园 - 聂微东
Jina AI
Jina AI
Project Zero
Project Zero
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 最新话题
V
V2EX
人人都是产品经理
人人都是产品经理
美团技术团队
博客园 - 【当耐特】
Spread Privacy
Spread Privacy
J
Java Code Geeks
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Security Latest
Security Latest
The Last Watchdog
The Last Watchdog
Stack Overflow Blog
Stack Overflow Blog
雷峰网
雷峰网
S
Securelist
Forbes - Security
Forbes - Security
博客园 - 三生石上(FineUI控件)
Microsoft Azure Blog
Microsoft Azure Blog
P
Privacy International News Feed
宝玉的分享
宝玉的分享
C
CERT Recently Published Vulnerability Notes

夜行人

回家路上 第一期的直播演示项目 震动检测器 正能量 在线参观CodeLab Neverland 发布 CodeLab Adapter 3.3.1 DynamicTable 之 纸糊方向盘 CodeLab DynamicTable: 一个可实施的技术方案 CodeLab Insight 发布 Alpha 版 情人节 Home Assistant 周报 && IoT 周报 (02) Joplin: 关注隐私的 Evernote 开源替代软件 浏览器的未来与 Web 传感器 Home Assistant 周报 && IoT 周报 (01) 百宝箱(01) 论自由 介绍 WebThings Home Assistant 周报 && iot 周报 (00) 百宝箱(00) 毛姆读书心得 传世之作 周末徒步 CodeLab Adapter ❤️ Jupyter/Python 航班 躲雨 夏令营途中 [译]思想--作为一种技术 The future of coding 美国之行 三门问题的程序模拟 从Python转向Pharo https://blog.just4fun.site/post/iot/iot-open-source-projects/ Python异步编程笔记 https://blog.just4fun.site/post/iot/iot-open-source-hardware-community/ 万物积木化开发者社区 CodeLab ❤️ Blender Scratch3技术分析之云变量 API(第7篇) [译]对管道(Pipes)的偏爱 [译]提出正确的问题比得到正确答案更重要 蓝牙设备与Scratch3.0 创建你的第一个Scratch3.0 Extension Scratch3技术分析之项目内部数据(第6篇) Scratch3技术分析之社区 API(第5篇) Scratch3技术分析之User API(第4篇) Scratch3技术分析之项目主页API(第3篇) Scratch3技术分析之静态资源API(第2篇) Scratch3.0、micro:bit与Windows7 https://blog.just4fun.site/post/iot/zerynth-vs-micropython/ 核聚变、方所与半宅空间 可视化编程为何是个糟糕的主意 codelab.club周末聚会 关于codelab.club '下一件大事'是一个房间 Hungry Robot - Eat everything 编程作为一种思考方式 今日简史 史蒂夫·乔布斯传 罗素自选文集 https://blog.just4fun.site/post/edx/tianjin-scratch-ai/ https://blog.just4fun.site/post/edx/richie-cms-openedx/ 徒步武功山 WebUSB与micro:bit 积木化编程与3D场景 夜宿武功山顶 scratch3-adapter接入优必选Alpha系列机器人 https://blog.just4fun.site/post/edx/video-migration-note/ scratch3-adapter重构笔记 https://blog.just4fun.site/post/edx/edx-community-members/ 两种硬件编程风格的比较 使用micro:bit自制PPT翻页笔 柏拉图对话集 scratch3.0 + micro:bit 七月电影放映计划 非营利组织的管理 Screenly--用树莓派让任何屏幕变为可编程的数字标牌 以最佳实践开始你的Django项目 micro:bit与事件驱动 为Scratch3.0设计的插件系统(上篇) OCR应用一例 近两年读过的一些好书 blockly开发之使用python驱动浏览器中的turtle(2) 牛顿新传 文学理论入门 逻辑的引擎 人生的意义 blockly开发之生成并运行js代码(1) blockly开发之hello world(0) micro:bit使用笔记 神器之Termux https://blog.just4fun.site/post/iot/micropython-notes/ Cozmo what is this Scratch的前世今生 下段旅程 我行在远方 爆裂 途中杂记 https://blog.just4fun.site/post/edx/open-edx-startup/ cozmo系列之入门 - 有性格且可编程的机器人 PaperWeekly开发笔记 创业二三事
空间编程、物理计算与密室逃脱
种瓜 · 2019-06-25 · via 夜行人

密室

就象一个躺在黑房间里但是醒在床上的人,忽然看见窗帘上透进一道光线,心里知道只要拉开窗帘,眼前就会展开一片晨光朗照的原野似的。 – 毛姆 《刀锋》

前言

本文来自今早与@李懿的交流。

交流中,@李懿提到与朋友介绍Neverland,这个朋友喜欢解谜游戏,提议说解谜的元素是否可能加入到Nevlernad空间里

我朋友提到说,既然我们可以联动空间里的任何物体,有可能实现的场景如:① 通过操作机关,将灯的颜色按特定顺序排列后,激活投影仪,在墙壁上投影出提示信息;② 带有四位数字的密码锁,允许通过简单编程来暴力破解 ③ 在空间中寻找 Scratch 的拼图积木来解密(机器视觉识别出拼出的图案,运行对应逻辑)。

此外,@李懿还补充到

“两只老虎”的例子给了我一个启发,用户在场景中演奏特定曲目,识别后解锁。曲目的选取则与故事内容发生关联。

两只老虎、传感器与萨满巫师

@李懿提到的两只老虎是我们此前做的一个演示:将三个小伙伴的手掌转化为钢琴的三个按键(Do-Re-Mi)。接触手掌时,如同按下钢琴键。

在这个例子中,通过一个传感器,采集到人体的接触信号,经过简单的编程,就可以将人与人的接触转化为音符。

利用同样的传感器,也可以捕捉到人与物体的接触。例如我们将传感器连接到楼梯上,就可以将楼梯变成钢琴阶梯,你踩在不同的阶梯上,房间里随即响起不同的旋律。

值得注意的是,我们在此谈论的不是一个商品,你可以很容易在市面上买到钢琴阶梯,这些商品化的专有设备是容易购买的。我们在此谈论的是,基于通用的传感器和CodeLab的创作平台,你可以轻易创作出这些东西,你的很多点子是市面上所没有的,整个宇宙可能都没有,它只存在你的脑子里,我们希望帮你表达出他们。

利用前头提到的传感器,在解谜游戏中我们可以做更多有趣的设计。

设想一个萨满巫师被困在岩洞里,岩壁上满是象形文字和古代狩猎图案,眼前有一个巨石堵住了出口。巫师看完墙壁上的文字,低头走到巨石下,他赤脚站在一块印有古代图腾的石板上,左手碰到巨石的瞬间,巨石豁然开启。(这一幕颇似《塞尔达》里主角探索地下神庙的场景)。利用上述的传感器,我们完全可以在技术上实现它,技术层面,当巫师站在那块特殊的石板上时,手掌碰到巨石,他的身体成为一根导线,接通了电路,触发开关。

Neverland 与 CodeLab Adapter

前头只用到一个传感器,便可实现上述这些有趣的场景。在我们的办公室(Neverland)里,有许许多多类似的有趣而强大的传感器。从捕获目光的眼动仪传感器、捕获手部运动的手势传感器 到 捕获脑电波的传感器应有尽有。

CodeLab构建了CodeLab Adapter这个通用工具,CodeLab Adapter试图连接万物,让它们能彼此沟通,用户可以通过简易图形化编程即可赋予他们新的能力。

目前我们的办公室(Neverland)整个空间都由CodeLab Adapter驱动,办公室里的的门禁、窗帘、电视、彩灯、冰箱插座,以及桌上的纸盒子(Switch Labo)、机器人(BB8/Cozmo/Vector/LejuRobot) 、飞行器(DJI Tello/Parrot)、儿童玩具(toio)…全部都由CodeLab Adapter驱动。

换句话说通过CodeLab Adapter可以为整个空间编程,赋予空间新的交互逻辑。

与@李懿的交流过程中,我们想到密室逃脱也许是非常有趣的应用场景,它也是绝佳的教育场景,因为解谜者的好奇心已经被充分激发。

密室逃脱

按照维基百科的定义:

密室逃脱一般泛指一种特定的游戏类型。在该类游戏中,玩家的视角通常以第一视角为主,并且往往被限定在一个近乎完全封闭或者对自身存在威胁的环境内,需要发现和利用身边的物品(工具),完成指定任务,最终达到逃离该区域的目的。正因如此,该类游戏通常也被认为是属于解谜冒险类游戏的一个特殊分支。

今天的密室系统,在谜题方面可以极尽聪明灵巧,谜题的破解过程运行在解谜者大脑里,密室空间只要提供线索即可,谜题的内容本身不受任何限制。

但密室在机关方面的设计却很薄弱。如果依赖于机械装置,设计一些精巧的交互系统是极为困难的,天才机械师可并不好找。天才机械师要么像鲁班一样忙于在前线输出(《王者荣耀》),要么像维特根斯坦一样跑去当哲学家了。由此可见,天才机械师不仅人数稀少,而且不太专注于老本行,喜欢跨界工作。 但我们知道,在游戏里制作一个有趣的机关是容易的,不需要天才游戏开发者,虚拟世界里的一切交互都可由程序轻松定义,它们是的,是一种可以任意捏造的橡皮泥。如果我们能将空间软件化,很多问题就变得简单了。

CodeLab Adapter除了用于教育,另一个应用域就是物理计算:驱动无数传感器,为物理世界编程,最终驱动整个空间。

技术视角

不妨密室看作一个交互式的物理系统,传感器连接了数字世界和物理世界(我们的现实世界)。用户的行为作为系统输入(传感器是采集设备),系统输出则为机关的反馈。

密室中可能会有数十数百个传感设备。CodeLab Adapter将其连在一起,密室创建者 可以在我们提供的创作工具(CodeLab Scratch)上定义密室的机关规则。

CodeLab Adapter驱动的密室是一个live system,一种活的系统,它在白天的行为和晚上可以完全不同,所有这些可以由密室创建者随时定义它。

爱迪生密室

目前在旧金山,便存在一个与上述描述相似的密室系统:爱迪生密室

它在全球的密室中的排名第六!

这是一个充满灯泡、传感器和沉浸式体验的密室。

密室由Raspberry Pi驱动,包含有数百个传感器和执行器

数百个传感器和执行器之间在进行高速通信,他们之间的通信由Banyan驱动,Banyan是一个为物理计算设计的消息系统,我写过一篇关于它的架构设计的文章:Python Banyan学习笔记之架构设计。 这个项目在架构上和CodeLab Adapter有许多相似之处,都基于ZeroMQ,将消息视为一等公民。此外,我也是这个项目的贡献者之一。

在今天,如果你想设计一个驱动整个空间的系统,高速的消息通信是核心。如果考虑到空间功能会持续调整和升级,那么系统的开放性就是必要的。考虑到开放性,目前大部分的商业项目都可以排除在外。满足以上特质的项目,据我所知,目前至少有四个:

近期CodeLab将在参与一个生物实验室的建设,在那儿我们将用CodeLab Adapter驱动整个空间,赋予它智能。

也欢迎阅读本文的密室逃脱从业者联系我们:)

参考