Self-assembly 自下而上的组装设计
前言
最近一直在准备申请,也是有点糟心,又恰逢毕设即将开题,所以心想无论结果如何,毕设还是要认真对待。也由于之前一直在关注如何用程序辅助做设计,也慢慢接触到了Self-assembly这个概念。所以也想着深入了解一下这个自组装的思想,看看自己能不能结合自己专业,做点有趣的东西出来。
*部分观点内容整理来自《Autonomous Assembly: Designing for a New Era of Collective Construction》
什么是Self-assembly
Self-assembly一般意义上来说,是用来形容一无序系统在没有外部的干预下,由个别部件间之互动(如吸引和排斥,或自发生成化学键),而组成一个有组织的结构之过程。在在化学、生物和材料科学中,是一个常见的概念,一个自发的化学反应就可以描述成一个自组装的过程。同样的,DNA转录mRNA,通过核糖体将mRNA中碱基序列翻译成蛋白质,就是典型的self-assembly的过程(努力回忆高中生物课程hhh)。
肽链合成过程
不过这些讨论的都是分子层面上的,如果我们把这个过程给过程给抽象一下,就以一个非常常见的化学方程式为例。
碳在氧气中燃烧生成二氧化碳,也就是意味着在燃烧的过程中,碳分子与氧气分子结合,生成了二氧化碳。碳分子与氧气分子式反应物,二氧化碳是生成物,而燃烧,是反应条件,在这个反应背后,实质就是一个化学键断裂重组的过程。等同于化学反应,一个自装配系统同样包含这些因素:
- 组件(parts),用于装配的部件
- 连接(links),自发的连接方式
- 容器(container),一个可以容纳装配过程的空间,可以提供装配所需的条件
- *目标(target),这个目标是最终装配完成后的产物,是由前面综合决定的,并不意味着100%可以达到
组件,连接,容器构成了实现装配目标的最基础的条件,是一个自装配系统必备的要素,但是光光具备了这些条件,并不是说一定就能实现目标,而是需要根据整个系统的复杂程度,越复杂,越难以精确。
自下而上的设计思想
前面讨论了self-assembly的要素,不难看出整个自装配系统,是一个自下而上的表达,通过将组建根据特定的连接方式,在一个合适的环境下,自发的完成装配与表达。这个是一个非常自然而然的思想,尤其是在微观尺度下,特别是在合成科学上。其实也非常显而易见,因为在微观尺度上面,我们缺乏很直观的工具让我们可以直接对某个精确的对象进行一些操作,而更多的是通过某个特征来进行广泛筛选和定位,就比如CRISPR 基因编辑技术。
但是在宏观尺度上面,我们就有了非常非常的工具和手段,能够帮助我们直接对对象进行操作,我们可以用锤子直接把钉子敲进去,而不需要把所有的钉子都遍历一遍。所以在思考和设计过程中,人们往往会习惯与自上而下(top down)思考。先是对一个事物有个大概的认识,然后再一步一步的向下,把细节做好。所以这也衍生了自上而下的设计思想,先完成整体设计,再将整体设计分块,然后再逐个完善。自上而下的设计方式非常的高效,人们也凭借这种思想,也制造出了及其复杂的大家伙,航天飞机、高铁、万吨巨轮,将上百万的零件组装起来,然后还能平稳的运行,不得不说,还是非常敬佩这些人的。
大飞机装配车间
在这些复杂装备的设计开发中,模块化越高,也就意味着更加方便的装配,维护,以及更大的升级空间。所以很多装备会尽可能把不同的功能单独出来,通过指定统一的接口,使得整个装备在生产制造维护的过程中,零件的复用程度更高,降低成本,提高效率。这也是常常提及的标准化。于是也就诞生我们经常使用的螺栓螺母这些标准件了。
当然,光靠螺栓螺母这些连接件,并不能做出很有价值的东西,我们还需要一些结构件,就比如铝型材、工字钢这种,不过就算如此,很多场合下,还是需要单独加工和制造一些针对特定用途的非标件,因为标准件并不能满足应用,而且这种非标的需求现在还是非常普遍。
但是这种模块化、标准化的思想已经开始深入人心,乐高就是一个完美典范。乐高将小小的塑料砖块作为普遍工具,使人可以搭建理想的东西。哪怕就是一辆真正能够开的"跑车"(maximum speed:20km/h)。
100w积木搭建的1:1跑车
从砖块出发的搭建,就是一种自下而上(bottom up)的装配方式,这是一种非常有机的方式,这让我不禁想到在物理仿真、影视特效中常常使用的粒子系统。通过将粒子个体赋予规则属性,比如重力、速度、极性,然后再将成千上万的粒子放在一个环境之中,便由一个简单规则,便组合成了复杂与惊人的景象。
郭锐文(Raven Kwok)体感互动粒子艺术系统
所以,无论是一块乐高积木,还是单独一个粒子,就是整个系统中一个组件,通过简单的规则相互连接,在合适环境中,表达出了惊人景象。搭建和定义规则过程,实际上就是对目标自下而上的设计过程。那么对于self-assembly,连接部分,是需要被设计的。这是一种面向过程的设计,而最终产物则是反应的体现。(意义在于满足了过程的需要,那么就是满足了结果的需要)
Self-assembly lab的一些案例
在大的尺度上的自装配,MIT的self-assembly lab是做了很多研究,而且开始的也很早。开头提及的那本书,也是这个实验室出的。更多的研究案例可以在他们网站上面看到 :https://selfassemblylab.mit.edu/
Self-Assembly Line
这个滚动装置是受到病毒自我复制过程启发,通过旋转滚筒,让其中各个单元几何体碰撞。
各个单元几何体之间的连接面上,都有预先安置的磁体,通过对这些磁体的安置位置和极性的控制,使得再无序碰撞的过程中,完成单元体之间的连接。
Fluid-Assembly Chair
这个case则是将具体的椅子,拆分成了几个不同部分,然后再各个部件的节点上设置接口,同样的还是利用磁力去完成吸附和连接。不过很有意思的是整个装配环境是在一个水槽之中,通过水槽下部的两个叶轮去扰动水流,创造出了一个允许各个部件碰撞的环境。整个装配过程花费了7个小时。
小结
相比微观的分子层面更大尺度上,通过对部件形体、连接方式的设计,通过碰撞的形式让其完成装配。这种装配方式看上去并不高效,而且前面两个case也是相当的学术,对于实际应用来说,通过7小时来组装一个并不是很牢固的椅子是很难以接受的。
但是这个过程却又有很多有价值的地方,一方面是装配过程中并不需要严格按照装配顺序,只需要将所有的部件丢到一个环境中,然后开动马达即可。另一方面零件的复用程度高,都采用统一的结构,这样在加工的时候,只需要批量生产若干个零件,既可以实现复杂的目标。
不过这些都是建立在面对这个装配过程的自下而上的设计之中,如何使用尽可能少的部件,和尽可能简单的连接规则,去实现复杂多样的表达,是这个系统设计过程中最重要的问题。