In the last ten weeks we have managed to obtain thirty-two raspberry pis along with thirty-two SD cards that they will be running off of. The SD cards have been formatted with copies of raspberry pi number 03 and then renamed appropriately, this reduced the time that it would take to make individual pis and they are also more easily added to the file sharing system. I have also obtained a series of standoffs to put the pis together so that they will be organized more neatly; however, each pi only takes two standoff so I will need to have a base made which I have and engineering major at the school working on. I have also decided that it would be preferable to have the pis not run off individual micro usb chargers as having thirty -two of them plugged in at once may cause a fire hazard so I have asked one of the Professors to assist me in creating a power supply for the raspberry pis. In the mean time I have ordered some additional micro usb chargers so that the cluster could still be expanded, and I have successfully expanded the cluster to sixteen nodes. I also noticed that when there are sixteen pis on at once they generate some hear, so it may be a good idea to look into getting some form of cooling for the cluster. I have also obtained the necessary number of Ethernet cables that will be needed to connect all of the raspberry pis to the network.
For next term I hope that I will be able to have all of the pis powered, and make sure that they have all been properly added to the file sharing system. Furthermore I will need to acquire a suitable stand for the pis. Then there is the potential problem of heat buildup so again I will need to find a way to cool the pis; likely a few fans will work.
Below is the newest feature of our robot. We taught VALTR (Vibrationally Actuated Locomotive Tensegrity Robot) to play fetch! Our robot is able to track a target on the arena through the use of a mounted camera, and is then able to adjust angular frequencies in its motors to move towards the target. The “front” or forward vector is the neon green ball on one corner of the tensegrities top triangle.
One of the current major limitations of the tensegrity is that it does its distance calculations using only a start position and an end position. Although that does lead to some very useful results, the data is crude and has its limitations. For example, at the moment there is no way for our evolutionary algorithms to evolve for turning. This is because we can only tell changes in position, not changes in directions. To solve this problem, we will begin implementing calculating direction of the tensegrity.
EvoFab started here a few years ago as Dave Sayles’s senior project, advised by John Rieffel. Since then a lot has changed about its outer and inner workings, but the overall goal has stayed the same: get a 3D printer to design objects on its own. Sayles’s tried to get his printer to make letters, and the researchers after him (Tim Kuehn and Emily Houlihan) moved on to having it design arches.
I took over the project this past Spring and so far I’ve not done any evolving yet, but instead have been implementing an important change to the machine. The original way to extrude the gel was by twisting the top on the syringe, which was inconsistent enough to warrant a change. We built a pneumatic system using two solenoids and an arduino which tells the solenoids to open or close their valves. Originally this system couldn’t run for more than a few seconds, because when the relays were left open the solenoid went through a radical voltage change. This would reset the arduino, changing its USB port I.D. Because we depended on that I.D. staying the same, we put in diodes across each of the solenoids. To prove that this got rid of our problem and the system can run again, I wrote a python program that simulates real extruding by telling the solenoids to open and close in realistic time intervals, and after running this multiple times, trying faster or slower resetting times, we didn’t see the failure we had seen before. Still, it extrudes too slowly to collect good data with. We’re going to spend the next good portion of the summer experimenting with different air pressures and with materials of different viscosities to try to get the system back to evolving.
I have spent the last 10 weeks building a cluster out of Raspberry Pis.
The Idea for the project was to replace the current out of date cluster with a cheaper smaller cluster made of Raspberry Pis. For now the project was basically a proof of concept with only a few Pis to make sure that it would in fact work as desired. The first three weeks of the project I spent mostly waiting for parts to arrive so that I could physically build the Cluster. Once the pieces had arrived the assembly of the cluster was simple enough and getting them to be able to perform programs in parallel was easy enough because there was a guide as to how to do this from the University of South Hampton, which had previously built a cluster out of Raspberry Pis. Here is a link to their guide on building a cluster out of Raspberry Pis. http://www.southampton.ac.uk/~sjc/raspberrypi/pi_supercomputer_southampton_web.pdf
Once two of the Pis were running I was able to get them to run a program that would have them compute pi.
Initially there was a problem with the network we were working on and a switch we were using to be able to network the Pis locally. The solution came in the form of getting a different Linux machine to network them off of. Once that was working we needed to get them to be able to use file sharing so that each Pi didn’t need its own copy of the program. Now that that has been set up I will be able to start running parallel programs on it.
Tensegrities are structures which are very lightweight and have very strong structural properties. They are created by connecting rigid bars with tensile elements. Below is an example of a standard 3-bar tensegrity with the green being rigid bars and the red representing some tensile element. In the real world, this could be something like rods of hard plastic connected by rubber bands or springs.
Because tensegrities are connected by tensile elements, they have some interesting properties. Tensegrities are stable by definition but they can wobble and resonate, which is the property that Union’s physical tensegrity is examining most closely. They can also be deformed by shortening and lengthening their tensile elements. Real world tensegrity robots have been made such that the tensile elements can change their lengths to move, so this has been proven to work. Continue reading →