软件小讲堂 | Kangaroo动力学模拟与膜结构专题(1)
Hello~小伙伴们,从今天开始制图教室将在周日开设一个新的板块——软件小讲堂,将一些前沿高端的软件使用方法以及一些有趣好玩的软件操作技巧带给大家。那么今天的第一期我们将来学习一下如何通过kangaroo的动力学模拟来构建膜结构造型。
PART 1
前言
如果大家对于现代建筑比较关注的话,你就会发现在以柯布西耶为代表的梁柱结构体系之外,膜结构也在现代建筑的发展过程中发挥了巨大的作用。以弗雷·奥托(Frei Otto)为代表的很多现代主义建筑师都将薄膜材料和轻质结构运用在自身的方案之中。典型的项目比如慕尼黑奥林匹克公园,曼海姆多功能大厅屋顶,2000年德国汉诺威世界博览会上的日本馆等等等等。
虽然膜结构因其优美的造型同其轻质低价的特点为建筑师所偏爱,但是因为膜结构的造型大多比较复杂,并且很多为复杂的双曲造型,使用传统的建模手法很难完成一些类似于下图这种的复杂膜结构的创建,即使你使用Rhino和一些mesh建模软件,建出了膜结构也大多有些生硬。
考虑到膜结构是所有常见的建筑结构体系中最容易受力而发生形变的结构体系,并且膜结构本身的造型也大多由外部荷载和约束条件来限定。因此如果我们能直接通过设置受力条件来创建膜结构造型的话,将可以极大的简化大家的建模流程。
那么在Rhino&GH的世界中,恰恰好有这么一款动力学插件Kangaroo可以通过人为设定受力和边界条件获取结构达到稳态时造型。因此kangaroo天生就适合表达膜结构。
因为kangaroo插件从Rhino6开始就已经作为GH中的官方预设插件存在与Rhino中了,所以使用Rhino6的同学并不需要考虑软件的安装,而使用Rhino5的同学可以去food4rhino中下载最新的2.42版本。
安装完成后的kangaroo卷展览如下图所示。
PART 2
膜结构
考虑到可能有的童鞋对于膜结构本身还不甚了解,所以下面在上手kangaroo操作之前了我先简单的介绍一下膜结构。
常用的建筑膜结构其实可以简单分成两大类:一个是使用比较普遍的张拉膜结构,类似于下面这张图。
张拉膜是采用高强度柔性薄膜材料与刚性辅助结构像钢索与支柱之类的东西构成,这些刚性结构通过一定方式膜内部产生一定的预张应力,从而形成的某种空间形状。
第二种稍微少见一些的建筑膜结构是气承膜结构,如下图所示:
它主要是通过充气形成内外的压力差,利用气压来抵抗外力,比如大家用的气球实际上就是一个简化版本的气承膜,当然有的气承膜会使用一些钢索作为辅助材料来进一步维持形状。最著名的气承膜建筑应该就是水立方和拜仁安联足球场。
那么这两个膜结构其实kangaroo里面都是可以制作的,不过是由于文章长度的现在,今天的第一讲我会把重点放在对于气承膜的介绍上,更为重要的张拉膜我会放在下周的文章中进行介绍。
PART 3
气承膜结构
因为气承膜是通过内外的压力差来维持造型的,那么假设一个单独气承膜,没有收到外力作用情况下它实际上产生对抗的力就是内外的压力差以及膜结构本身维持原长度的弹力,明白了基本的受力之后,我们开始kangaroo中的动力学模拟。
首先先创建出一个基础的立方体,将其转化为mesh。
对于膜材料来说,外力将其拉伸时其一定会出现回缩。那么这种维持原长度的材料力学属性在kangaroo中可以通过弹力进行表示。
除了弹力之外还需要支撑膜结构的气压差,在kangaroo中通过presure这个运算器表示。
这两个力设置好了之后其实对于气承膜来说,所有的外力就已经设置完毕,但是连接solver后很多时候会出现诸如看不到最终计算结果之类的错误。
这个实际上是因为当前压力和弹力的数值不匹配,通俗的来说就是因为气承膜内部的压力过大,膜炸开了,因此我们也就看不到计算的结果。所以为了避免'炸开’,大家可以适度减少弹力的数值,比如说当我弹力为1的话,压力为0.02时计算是正确的.
适当加大压力,我们的mesh就会变的越来越鼓,但是如果超过一定的值,就会计算错误,大家其实可以类比于气球炸了。并且当我们改变mesh弹力大小时,对应的压力阈值也会改变,这个其实也很容易理解,气球表面膜结构的强度越大就能承受越强的压力。并且通过修改弹力的目标长度也可以改变气承膜的造型和其压力阈值。所以大家创建膜结构第一个需要注意的就是弹力与压力的匹配。(下图压力为0.03气承膜就已经炸开了)
但是说到这大家可能会发现一个问题,就是对于气承膜来说如果仅仅只有弹力和压力这两个力作用,无论之前的网格是什么造型,比如我们在这换一个box,只要压力足够大并且和弹力可以达到平衡状态,最终的造型肯定是类似于球体的,就像我们看到的一般气球都是圆形的。
那么如果我们想对气承膜的造型进行一定程度的控制应该如何操作了?还是从现实生活中找答案,比如对于气球来说,我们是可以在膜结构上添加一些局部的固定钢丝架来人为的限制其造型。那么在kangaroo里面了我们同样可以使用相同的策略,比如我们在这就根据立方体的边缘给他加一个固定的钢丝架,当然kangaroo里面并没有所谓钢丝架这个东西,对于固定我们通过anchor来设置,提取box的轮廓,进行等分点,获得顶点之后anchor。
那么大家可以看到我们就获得了添加了骨架的气承膜结构。所以各位要知道如果以后你想通过kangaroo进行气承膜的设计,其实受力本身很简单,就是弹力和压力,只不过数值的匹配要注意一下,不然很容易出错。真正需要花时间设计和思考的,是气承膜结构中骨架要如何布置,不同的骨架结构会产生不同的气承膜造型。
关于气承膜最后再说一个就是kangaroo里面还有一个力可以在一定程度上起到压力的作用就是这个volume的力。
它可以根据设置的目标体积大小对mesh进行缩小或者放大,但是我个人觉得它在气承膜结构的创建中并没有pressure好用,所以大家稍微了解一下就可以了。那对于气承膜的介绍就说到这,下期教程我们来了解一下更为重要的张拉膜是如何创建的。