Friday, September 30. 2005Sigh, the new hovercraft isn't floating
After a few nights of work, I had a hovercraft I was proud of. Beautifully crafted from plywood, a 2×4, and Visqueen, I was certain it would provide hours of hovering enjoyment.
Hah. My test versions worked perfectly. I figured that the physics would scale up, and all would be great. Turns out, propellers don’t scale up. While the small versions would use the prop to hold air in the skirt, my 2-foot prop would simply let the pressure come right back out between the blades. This could be because the larger prop spins slower….. but nonetheless, it’s back to a leaf blower until I work this out. Monday, September 26. 2005New hovercraft is almost ready!
I recently whipped up some drawings for a easy-to-build two person hovercraft. I’m now in the buildling stage, and it’s nearing completion! I should be able to ferry 350 pounds around, using a 24″ propeller and a tractor starter motor for thrust.
Sunday, June 5. 2005More speed more power
I finally got around to dusting off all my extra comps (save the box of laptops) and clustering it all up. Time was still an issue, so I simply used the bootable CD distribuation “BCCD” (bootable cluster CD). It’s quite handy. After booting, I had 7 working nodes, 1 desktop, 1 file server, 1 RAID array, and 3 non-working nodes. All on 1 UPS. ALl on one socket.
Woops. Things were running fine fore a few days before I ran any apps, ie with load averages of 0.01. I though that it would be good to test how the temperture rose after 24 hours of cpu use. So I hacked up a little perl script to hog CPU, and launched it 7 times. I looked at the CPU use histogram… It slowly migrated out across the nodes, until on went the UPS, out went the circuit breaker, out went the lights. I suppose it makes sense, but I previously didn’t realize how much more power a running CPU pulls than an idle one. Tuesday, February 15. 2005Cluster Run
The cluster is running my old mpi-prime code to get it all tested and working nicely. You can view the bandiwdth graphs at http://www.crepinc.com/cluster/. You can see the nice bandwidth spike, then the inverse exponential curve as the bandwidth decreases because it takes longer to find each number and request a new one. Take note, Doorstop04 is not involved in this test because I need to update LibC first (yes, it’s THAT old
Sunday, January 2. 2005The RC plane works!
Three years ago, my parents bought me a Dynaflight Piece 'O Cake RC plane kit. Basically, it comes as a box of small balsa sticks and a large printed drawing sheet. I'd spend two weeks working feverishly after school on it, then get distraught that it wasn't ready yet, not work on it for a few months, then come back to it.
When it was nearing the end, I decided to use a geared electric motor instead of the uncontrollable 0.049cc glow motor it was designed for. Looking back perhaps I should have built it to plans, as it would have been a very slow flying craft to learn on. With the weight of the battery and the much higher thrust of the motor system, it flew much faster than originally anticipated - so much so that it was uncontrollable at full throttle. However, it flew fine in the lower throttle ranges and would last a rather long time. In any event, I took it to my friend Mike's house where there's a large field. Here are the pics: And a few movies: good flight, landing, plane coming out of the tree. Saturday, November 6. 2004The Balancing Bot
I was looking around for a new project one day, when nBot caught my attention. I knew that balancing robots were hard (look how much the segway costs!), but the more I thought, the more I knew I had to try. [pics missing]
I am yet to have it balance indefinatly, at which point I will write a whole paper about doing this. However right now, I will just list the various versions, and how well they worked. Version 1 This was (obviously) the first version. It was about 4 feet tall. I found that my motors move way too slowly to keep a bot this size up. Thus we went to the next version. Version 2 I chopped off about a foot and a half, so the bot is now 2 and a half feet. I figured that the bot would be able to right itself better since the moment arm is shorter, thus the same linear speed is a much faster angular speed. It now stands for about 10 seconds, but inevitably still falls. Version 2.5 I found that the problems were due to inaccurate readings in the IR sensors. So I made a running array of the last 8 values, and used the average of them for the calulation. This didn’t quite work, either. Look at these graphs: For both of these tests, the IR sensor was stationary in a vise pointed at a wall. That should give you some idead how inaccurate it is. The first is without my fix: And with the fix: Version 3 I gave up on the IR sensors: now I’m using sonar. It’s much more accurate, but I only have one. So the bot now balances for about 20 seconds, but the wheels simply can’t go fast enough to catch up if it gets moving more than a few inches per second. I hope to make some new wheels today. Version 3.1 I ran over to the wood shop (we don’t have a metal shop) and made some bigger wheels… it seemed to me that the servos had quite a bit of torque, but didn’t go fast enough. Thus, increase the radius, we increase the distance traveled per revolution. Version 4.0 The whole bot has been completly redesigned. The wheels of wood were not prefectly true, and thus wobbled way too much to balance properly. Also, the body was not ideal, the motors weren’t good enough, it was too tall, heavy in the wrong places…. This new bot has been designed completly in aluminum. (And crafted with nothing more than a jigsaw and a drill, plus some Erector set peices.) Yet still, it’s nicer than the previous models. It balanced nicely, has a large electric drill motor and sonar. Wednesday, September 22. 2004The Trebuchet
After returning from Europe, I decided that medieval siege weapons were much cooler than those of today. A friend and I had previously built a (sort of) working trebuchet, but we could only launch one brick about 5 feet before the thing colapsed upon itself. However, with a new found interest, and a book of pictures, we went about designing a new and improved trebuchet. [pics missing]
Update: The Trebuchet made a new record of 234 feet, and at the same time broke! But I hear it’s all better. See the bottom of the page for the pictures of the damage. Video One Video Two As you may have noticed, most of the projects on this site seem to have been made with as little money as possible. This was the case here. The original trebuchet (we’re now in the 3rd build) was crafted with a bucket and the duct tape, asagging too-small rod, etc. The 2×4′s in the boom and the stand happened to be the only so-called “professional” matterials in the whole project. The cross braces were wooden stakes, the cradle was an old feed bag, the rope was as far as I can tell from one of those cheap volley ball nets. But hey, it worked. The latest version, however, is a bit better. Real wood is used, as well as a very strong cross rod. Standing over 24 feet tall, it’s truly a work of art. The principle of the trebuchet is simple: a weight on one end will make the other end lift, and inertia will cary whatever was there forward. It is much like a catapult, except that rather than storing energy in a bent tree, we store it in the process of lifting the weight up. The weight goes on the shorter end, so the other end swings faster. Our weight was a spackle bucket filled with rocks, coal, and water. (Don’t get the idea that coal is amazing for this purpose; my friend simply had some lying around.) Though not attached in the picture, there is another peice that adds momentum to the launched object. The sling swings out from underneth during launch, thus adding more inertia. The hook (which the log is sitting on…. it works just to launch stuff by itself.) lets go of one side of the sling at just the right momment (theoretically) so that the object goes flying. We were unable to make our sling detach at the right momment, so we stuck stuff on the hook. However, this is an ongoing project, and it will work sometime soon. Pictures (Click on any to get the full size!) The first version! Pretty strange, eh? The next version: 1.8 Version 2. Note the new side bracing: Version 3! The final and coolest. A nice view of V3: And the moment you’ve been waiting for! These are the pics of the damage the took place during a record-breaking 243 foot launch. Despite a few setbacks, and a lack of good materials the first time, we still made this thing work! As I said, we will continue to work on it. Any crazy ideas, etc, make sure to drop a line by way of email or replies! The Cluster
I had a whole lot of old computers in my basement. They were cool, but not real efficiet at doing anything. So my friend Mike Luther says, and I quote, “Beowulf!!!”. It’s all history from there.
Note: this article is outdated, though much of the information is still valid. I grew the cluster to 16 nodes at one point, until the circuit breaker ketps blowing. My cluster now consists of just two SGI 1400′s, each with 4 Xeon proccesors and 2 gigs of RAM, as well as dual NICs. It’s quite good at running MPI apps, as well as spreading image rendering across all 8 procs with OpenMOSIX. The Devices Basically, a “Beowulf Cluster” is a cluster of computers built from “commodity hardware” (read: crap) that no one in their right mind would want. Generally they run linux, though some run other types of unix. There are pro’s and con’s, namely that FreeBSD has a faster TCP/IP stack, but hey, whatever runs. (Note: NO ONE uses windows. ) I have a varying number of nodes (because they occasionally get stolen for things, some of them are also dual boot and do other things too). These are connected by 100Mb full-duplex links. (the master node has 2 NIC’s) The nodes are generally between 166 and 550 MHz, with 16 to 300 MBs ram. Sure, I’d like better stuff, but money is not something I have a lot of. (If you’d like to donate a box (or money…), I’d be happy to add you or your company to the donor’s list.) I’m yet to run a benchmark, though no doubt it’d be intersting. In terms of software, I use RedHat 8. I then installed Lam MPI as my cluster software. This provides an API to send data between nodes. After that, I just shared the home directories on NFS, and made a hosts file so that the nodes could talk to each other. Voila! I know that’s not very specific, but really this is easy! You can email or post in the forums if you want to know more. By the way, this generates some pretty wicked bandiwdth. If you’re in a production environment, you probably want to give the cluster it’s own network switch(es), because it takes it’s toll. (unlike me: I don’t have enough money for that, so all the boxes in the machine room AND the office are connected via 1 cheap unmanaged switch The Test Well, I needed to test this out. I spent quite a lot of time getting it running…. and it sat there. I though, hey lets look for primes! However, I soon hit a wall: all the previously written code that I could find was for some deep math concept that I didn’t understand. So I wrote my own. Bascially, all you have to do to test for primality is to test divisibility of a number N by all (prime) numbers up to sqrt(N). That sounds easy…. but think about it. Having a master node spit out number ranges to test is fine, but what happens when we find a prime? By the above test, we need to inform the other nodes so that they can update their list. That’s hard. In the end, and do to very high time constraints, I just tossed out the divison by only primes: I just tested it against ALL numbers below the root of N. This results in a very large efficiancy reduction, but at least it works. So I coded this up, (see the end) and set it running while I went on vacation. I tested the code the week before, and in a day or two I got to about 1.6 billion. So I figured that for a week, I could get to 5 Billion or so. That’s a problem. In c, the largest size for an integer is 2^32 -1: about 2.2 billion I guess. I talked to some forums, etc, and found a 64-bit (2^64 -1) integer. Yay. That’s several gazillion. I wrote this in, and on the night I was leaving, at about 11 PM I screamed: printf() doesn’t support 64-bit integers. But I had no choice but to run it. So I came back home to a 12.3 Gb file of prime numbers….. but all of them about 2.2 billion were in stange terms, cut off, negative, etc, because C was reading the memory wrong. You can find the code here: primes.c Update: I re-did the entire cluster. It’s now running both OpenMosix AND mpi, and I have several more nodes. I’ve been using it for rendering 3d animations in parrellel with POVray, as well as “crashing galaxees together” with my NBody app. Monday, September 13. 2004Trebuchet gone out with a blast
I’ve just gotten news that the trebuchet went out in glory. It both made a new record (243 ft) and broke appart at the same time. Though I was not there to witness the event, I will receive pictures and perhaps video shortly, and post them. See the trebuchet article here.
Update: After posting the above, the other trebuchet man (Mike) send the following: “‘Out in Glory’? I don’t think so Jack, the trebuchet is still standing strong. It will yet again be laying seige to the neighbor’s driveway by the end of the week!”
« previous page
(Page 4 of 4, totaling 70 entries)
|
Email me:
jack {@} crepinc.com Recent Projects: Analog HF Transmitter Audi ECU Reverse Engineering Dual DAC QAM Modulator FPGA QAM Modulator Geiger Counter Gyro-Stabilized DSLR Platform Hybrid Rocket Engines Turbocharger Controller WWVB Rx and Tx Older Projects: Balancing Bot Capacitor Array CNC Mill DCIR Renderer Electric Gokart Hovercraft Low Alt. Temp. Model Shopping Cart Locker Trebuchet My Twitter occasionally shows projects I'm working on. My GitHub has code from a few projects on it. Quicksearch |