Personal Project, Aug. 2019
Making of 3D display
For a long time I had an idea to build three dimensional display using a three dimensional grid of LEDs. After I constructed my first 4 x 4 x 4 cube with 64 LEDs, I realized that the same concept exists already in DIY community. Yet I found several advantages of mine against existing 3D LED cube displays. My model has better dot visibility thanks to tiny SMD chips and fine copper wires, while many existing 3D cubes use either bullet-shape LEDs or serial color LED chips. They compromised dot visibility due to bulky shape of LEDs and wires.
My final 3D display consists 512 SMD chip LEDs(Red), circa 0.1mm copper wire, 8 LED drivers, steel rods, 3D-printed parts and a Arduino controller to interface PC. One LED grid module consists 64 LEDs laid in 8 x 8 grid, controlled by a LED driver MAX7219. Whole display system is essentially a stack of this grid module. To achieve minimum visibility of LEDs, I have chosen a LED chip with wide visible angle (170 deg). 8 modules are stacked together to make a cube with 8 bit resolution per axis. All modules are daisy chained to Arduino controller over SPI interface.
Making of fire
While trying to make interesting pattern with this display, I realised that random blinking of the LED chips resembles burning charcoal. So I started thinking about make three dimensional image of fire.
As an reference I remember that I was very attracted when I fist see German designer Ingo Maurer’s “My new flame” at furniture trade fair. The product consists two grids with 128 LEDs on each side of PCB, on which animation of a candle fire was displayed. Although the moving image on the LED grid was only two dimensional, it did produce an atmosphere like a candle. I thought making it in three dimensional would be interesting project.
However the “My new flame” was only a crafted animation. If I were to run a combustion simulation on computer, can I call it fire? Off course not in physical sense, but rather in phenomenlogical sense and probably also in philosophycal sense? There are many so called LED candles already in the market. None of them really resembles us a real flame, but when we interpret them as an human's attempt to create the atmosphere created by fire, it is an interesting phenomenon. "The new flame" resembles a candle only with realistic animation without sound or heat. Does it mean if the movement look realistic do we perceive it as real? Instead of following the Ingo Maurer’s approach to make a product that "looks like flame", I concentrated on extracting the essence of fire, especially its physical movement.
The most straight forward way to generate fire image in machine is to run a combustion simulation of chemical reaction, fluid dynamics and thermodynamics. With quick research I realised that modelling a combustion process is still enormous topic in academic research field. To begin with, there are various models of combustion, (from simple chemical reaction model to eddy-break up model, large eddy simulation for turbulent flame etc.) according to the state of flame and desired output from the simulation. Although there would be way to build and run combustion simulation by myself, (e.g. Python offers process-based simulation library called Cantera) this approach seemed far beyond my objection.
Meanwhile I discovered that Houdini offers Pyro- (combustion) simulator module. The module is mostly used for generating various fire and explosion effects for visual effects. Even though it does not simulate chemical reaction, it offers detailed control over combustion process, while keeping it accessible to non-scalars. Therefore I decided to use this Pyro-smulation function in Houdini.
Making of system
Simple combustion simulation was set up on Houdini. From the simulation, heat parameter from each points are extracted, then sent out over OSC (Open Sound Protocol). TouchDesigner runs in parallel and works as an OSC-Serial bridge. Since OSC data from Houdini only tells flame status, Touchdesigner does the rest of the data conversion to generate full grid status and stream to the controller over USB serial.
Technically speaking there are many points to be improved. 3D display can be improved for better resolution. Due to the limitation of equipment the combustion simulation does not run in real time speed, but it needs pre-calculation. However interestingly the PC generates considerable amount of heat like combustion.
Since I used Houdini’s Pyro-Simulation framework for combustion simulation, which actually never aimed scientific accuracy, it poses the question whether it can still be called as flame. Yet if I regard this process as an abstraction of flame, it might not necessary to bound everything to physical world, since the output is an image that does not posses direct relation to the physical world. As same as sculpture, which employs a medium to express an idea, I would like to call this as a some sort of sculpture representing fire.
3D LED display system and combustion simulation