1. Finally, I landed somewhere after running in circles for almost 3 months as to what to do for my final project. My focus now shifts totally from assignments to the final project.
2. Alongside researching for my final project, I also took out time to focus on my past electronics assignments, since my final project will involve lot of electronics and programming.
3. The countdown has finally begun.....
The final project that I am proposing is a self-assembling (self-assembly can be defined as a process by which preexisting components (Bseparate or distinct parts of a disordered structure) autonomously organize into patterns or structures without human intervention) lattice structure in the presence of an external medium. The external medium will provide the energy for each module to make movement in 3d space.
What will it do?
The individual modules can reconfigure/assemble themselves, while communicating with each other to create various forms without direct human intervention. They will also be able to disassemble themselves. The individual modules can be similar or different and can present us a way in the future to save time and human labour to assemble things with very less error. A very good example here would be to imagine Week 3, where we had to do press fit construction. We would design, laser cut, sort and then assemble to make a form/artifact. Now imagine, if those parts that we had cut could assemble themselves in certain configurations, it would indeed save time and labour.
Who's done what beforehand?
Skylar Tibbits from MIT runs Self-Assembly Lab, where for several years he has been working on self-assembly and programmable matter. He has made several artifacts based around it. The ones useful for me are Fluid Assembly Chair and Skylar's graduate thesis called Logic Matter. Fluid Assembly Chair includes three key aspects of self-assembly: geometry(design), interaction and energy(for activation). His thesis talks about embedding digital information into material parts to provide self-guided assembly of complex structures.
Ariel Ekblaw also from MIT, while pursing "How to make almost anything" few years ago made a self-assembly buckyball for zero gravity. She used magnet joined tiles for self-assembling space architecture.
L.S.Penrose' principles published in Scientific American led to the development of mechanical latching system for self-assembly.
Who doesn't loves open-source projects, a slightly different kind of self-assembly(as well as self structuring) project is put forward by Paul Clemens Bart called noMad . He created individual modules that itself can change form and grow in size to some extent while interacting with other modules. Modules have self-aware unit to unit communication instead of a deterministic, superimposed building plan.
A paper on Self-Assembly at the Macroscopic Scale by Roderich Groß and Marco Dorigo discusses about externally propelled self assembly components, where I am interested in as well as self propelled self assembly components. This paper is probably the most helpful one with lot of data on dimentions, weight, DOF of individual modules used for self-assembly.
Since there is no known algorithm for self-assembly at macro scale, I had to look up for a paper that talks about it. Meshing complex macro-scale objects into self-assembling bricks by Adar Hacohen, Iddo Hanniel, Yasha Nikulshin, Shuki Wolfus, Almogit Abu-Horowitz and Ido Bachelet describes an algorithm inspired by the molecular assembly of DNA, and based on bricks designed by tetrahedral meshing of arbitrary objects.
What will you design?
The design of the module is of utmost importance, it should be designed such that it can easily latch onto other modules and offer sufficient time for latching. Currently, I will be designing modules which will be similar to each other but dissimilar modules could also be designed. Furthermore, I want to make these modules as light as possible, hence I would optimize the form of the module to offer more surface area and be lightweight.
This container would as of now contain fluid that will be agitated to allow movement of individual modules such that they can interact with each other and make decision whether to latch or repel. This agitation would be provided by a water pump and has to be controlled in a manner that it offers time for modules to communicate when in proximity to each other.
Electronics and programming:
Each module will contain a PCB with sensors, telling its exact position in 3d space and each of them will have a unique ID. It will communicate with other modules using bluetooth module. Furthermore, each face of the module will have magnets that gets activated when another module is sensed within its proxmity. A proper algorithm has to be designed in order to initiate this process. In the upcoming week of networking and communications, I will try to understand how to communicate wirelessly.
What materials and components will be used?
Individual Module/Unit -
ABS/PLA for 3D printing
FR1 board/Copper tape for PCBs
PC Mount coin batteries
eCompass module - LSM303DLHC
Capacitors, resistors, ICs, voltage regulators are already available in Fab Lab
Acrylic (to create a container for external propelling)
More to be added ...
Where will it come from?
Most of the material that I will be using is part of the FabLab inventory. Magnets, Batteries, Acrylic, Bluetooth and eCompass module will have to be purchased from outside. Acrylic could be found at local stationary shop, but rest I would order online.
How much will they cost?
To be calculated
What parts and systems will be made?
The physical structure of the module
The container for agitating the modules
PCBs for each module
What processes will be used?
3D printing (Additive process)
Laser cutting of acrylic for making container (Subtractive process)
PCB for each module/unit (Electronics design and production)
Communicating with individual boards and sensors (Microcontroller interfacing and programming)
What questions need to be answered?
The few questions that need to answered as of now are:
1. How to design and make each module as light as possible?
2. Creating a negotiation algorithm where two modules(both knowing their individual positions, orientation and global configuration) come in contact with each other and decide something(join or repel)
3. Deciding on an external medium/propellent to assist the movement of the individual modules? (Skylar Tibbits used fluid, air and a shaking tumbler as a medium)
How will it be evaluated?
It will be evaluated on the basis of the fact that the individual modules should be able to self-assemble and dis-assemble themselves to create various forms and configurations under the effect of external propellent. Another factor on which this could be evaluated is the amount of time that it takes to assemble the whole configuration., this will be particularly challenging.