Firefly提供了一系列专门的软件工具,旨在弥合Grasshopper(rhino犀牛软件的免费插件)与Arduino等微控制器之间的差距。它允许数字世界与物理世界之间近乎实时的数据流动——使得探索虚拟和物理原型的可能性变得前所未有的流畅。
Firefly 官网:http://fireflyexperiments.com
论坛:http://fireflyexperiments.com/forum
主要开发者:
Andy Payne [LIFT architects | Harvard GSD - Cambridge, MA]
Jason Kelly Johnson [Future Cities Lab | CCA San Francisco, CA]
作为一个生成性建模工具,Grasshopper提供了一个流畅的视觉界面,用于创建复杂的参数化模型,但默认情况下,它缺乏与硬件设备(如可编程微控制器或触觉界面)进行通信的能力。Firefly填补了这一空白。它是Grasshopper参数化界面的扩展;结合了一套专门的组件和一种新颖的通信协议(称为Firefly Firmata或固件),共同实现了硬件设备与rhino犀牛软件的参数化插件之间的实时通信。
主要特点
- 读取/写入Arduino微控制器和其他设备
- 在Firefly/Grasshopper中可视化传感器数据
- 控制LED、灯光、电机、阀门等
- 控制步进电机(用于3D打印机和末端执行器)
- 通过OSC和UDP流式传输网络摄像头并与移动设备(iOS + Android)连接
- 连接到互联网信息源并搜索XML信息源
- 生成代码以上传到Arduino板
- 基本的声音输入和处理工具
- 数据记录、计数和回放
- 机器视觉工具包,包括边缘检测、颜色过滤、卷积过滤等
- Kinect工具包,包括骨架跟踪
Firefly的一个显著特点是,它是第一个专为3D参数化CAD软件包(如Rhino)设计的视觉微控制器编程环境。这一特性意味着,从各种类型的传感器或其他输入设备(视频摄像头、互联网信息源或移动电话设备等)获取的实际数据可以用来明确定义Grasshopper模型内的参数关系。Firefly通过允许用户将信息从Grasshopper发送回微控制器以引发特定的动作(如灯光、电机、阀门等),完成了通信反馈循环。最终,这种工作流程创造了一种创建交互式原型的新方法。