Bill's Computer Circus
Don't get caught with your system down.
NOTICE: This web site may not render correctly in older browers like Internet Explorer 5.2 for the Mac. May the gods help you if you are using Internet Explorer on any machine! Otherwise, if this site does not look right on your browser, please let me know what browser you are using (and what version and on what computer). Thanks!
"Visual Basic makes the easy things easier. Delphi makes the hard things easy."
-- unknown
Thursday, August 26, 2004
 
I don't know (yet) if the Apple is all what it is cracked up to be. Perhaps what I have seen simply isn't taking advantage of the dual 2GHz processors, but when it comes to SETI@Home, my 2.6 GHz (single processor) PC runs rings around the Mac.

My PC processes a SETI@Home packet at a rate of just over 4 hours. The Mac takes well over 5 hours to process a packet. Now, an interesting thing happened (not sure if it was a glitch or what), but I applied the latest service pack to my PC yesterday, and I saw a SETI@Home packet complete is less than 3.5 hours afterward. However, the current packet looks like it's going for the full 4 hours. But I wonder what happened there and how I can create the conditions again to allow it to process packets in 3.5 hours? Hmmm! Maybe it was just a fluke...or a small packet.

Who knows?

Anyway, the reconfiguration of my shop has begun. Yesterday, I chopped my workbench down to a smaller size (and I figured out a way to do it without dismantling it, first, or clearing everything off the shelves!). It was quite a feat, but I was successful. The next step is to fill the available space with some shelves so I can put stuff up (making use of vertical space) to make room for the remaining modifications.

It looks like I might not get that technical writing job I applied for...but I'm not completely out of the running, yet. On one hand, I don't want to go back to working full-time (especially now that I am taking some classes), but on the other hand, it sucks not to have money coming in. Especially since we just spent over $600 this week to get a cyst drained out of our cat (a cyst that returned after being drained two years ago when it was discovered when he broke his leg). My wife and I also went to Santa Cruz over the weekend and spent some money for a motel and for rides (and a parking ticket) at the Boardwalk. That was a lot more fun than taking the cat to the vet.

I haven't been on amusement park rides in probably twenty years. It was so much fun. Here's a shot of us on the Logger's Revenge ride. It was the first ride we went on, and unbeknownst to us, it automatically took our picture on the way down. Not having been on a ride in twenty years, our expressions clearly showed that we were not quite prepared for the experience. But it got us off to a good start.


There is a ride there called the "Fire Ball" that looked totally frightening, and I avoided it for a long time. But then I decided I had to try it. I waited in line for about half an hour (it was now Saturday night and the place was packed) and of course it was DARK by the time I got on - and it was the last ride I got on before we headed home - but it turned out to be the greatest ride of them all. It was so cool - especially at night! So now I have a reason to go back -- I must ride it again!

You can see some pictures of it here.

We stopped to see the Manchurian Candidate (sp?) in Campbell on the way home (we happened to arrive at the theater JUST in time to get a [good] seat before the movie started). It was pretty good, but didn't totally wow me on any level. Oh, we also went to see Open Water the other day - what a waste of time and money that was. I expected something with some substance, and I got some kind of public access film (I kept thinking of Astrology with Tony for some reason). One has to wonder how it got distribution. It said it was based on true events, but it left me wondering who returned to tell the story in the first place? That is, if it was, indeed, true.

Speaking of truth, what is truth these days? Gads - I certainly can't find it in the political campaigns! I wish everyone would stop telling me who NOT to vote for and start giving me reasons why I should vote FOR someone! It's all about smear campaigns and bashing the competition anymore. Jesus. Nuke the moon, already, before we nuke ourselves! Well, you know, it's OK for *us* to have nukes.

Anyway, I still haven't installed a computer on my now-radio-controlled Trike, yet. There's so much to do, and so little time. I wonder if time travel is possible? I'd sure like to have a time machine! It's on my list of things to invent, but I'll never get around to it. :-) This guy at the robotic club meeting last night has created this IMU (inertial mesurment unit?) that provides "six degrees of freedom" as he put it. It can measure pitch, roll and yaw, and also acceleration along the three axis. I'd like to eventually have one of those to put on an airplane...perhaps if my Ohohia project ever takes flight. Ha! There's that time issue, again.

posted by Bill  # 2:30 PM
Monday, August 16, 2004
 
Wow. Order an Apple computer one day, and you get it the next. I not only ordered it one day and got it the next, but I ordered it in the afternoon and got it in the morning!

So now I have a dual 2GHz G5 computer running OSX (10.3 Panther). The thing weighs a TON! The keyboard is weird, and the computer itself is not much to look at (reminds me of an air conditioner or something). But it's cool. I installed Final Cut Pro on it, so now all that is left is to learn how to use it. HAAAAA!!!

I'm sick of learning about computers. I just want to make movies.

Anyway, I got to thinking about my up-coming robot building class and thought it might be an opportunity to promote my RC4 device (or some derrivative thereof). And I revisited the FailSafe module idea. And, since I had one FailSafe module left, I thought I would see about converting it into some kind of robot controller.

So, last night I copied the code for PIC2 of RC4 and stripped it down to just the functionality I wanted. I tweaked it and tested it today, and it's up and running. I just need to add some routines to do things like ramp up the pulse width signal (to prevent driving an external motor from a full stop to full speed, or from full forward to full reverse) and to calibrate itself to the incoming signal and to save fail-safe settings.

What I have essentially accomplished is I have added some likeness of PCM control to an ordinary FM transmitter. When you consider how much more PCM radios cost than ordinary FM radios, that's a pretty big deal (in my mind). I figured out I can make the FailSafe modules for about $11.00 apiece (even less if I can get them in bulk quantities). I can get 12 boards (plus 18 single PWM driver boards and 6 dual PWM driver boards) from ExpressPCB for about $63 (that's for three PC boards, but on each board I can get four FailSafe modules, 6 single PWM drivers and 2 dual PWM drivers).

So, if there is enough interest in the class (though I doubt there will be, but perhaps there will be over time with successive classes), I can charge, say, $15 per FailSafe board, collect $180, and send off to have some boards made. Perhaps I can charge $15 for one in kit form, and $20 (or $25) assembled. But then the idea is to keep the cost of building a robot to a minimum, so I don't want to charge too much. I'm certainly not going to get rich off of them, though.

Anyway, no pictures today...and I've got to run. By 'blog is getting stale, so I just wanted to post an update. At least it's SOMETHING.

posted by Bill  # 5:25 PM
Friday, August 13, 2004
 
I ordered a G5 PowerMac system today, so I'll soon be on my way to editing video. The Final Cut Pro class was full, so I need to go to the first class to see if I can get in, officially.

Speaking of classes... Yesterday, I built a cardboard prototype of the bot I want to build in my CSM Robotics class:



It will have a spinning weapon on one side (as you can see in the image, hopefully) and a wedge on the other. It *should* be pretty effective, although it will only be in the 12-pound weight class, so there's only so much destruction you can inflict in that category.

I am struggling now with what to name it. Perhaps I should put it up for a vote somewhere. Here are a few of the names I have scribbled down thus far:

- Short Cut
- Off the Top
- Top Off
- Whack Whack (perhaps even form a team called "Team Duck")
- Chew Chew
- Whiz Bang
- Hit-N-Run
- Slap Happy

I can't wait until it's done!

posted by Bill  # 4:35 PM
Thursday, August 05, 2004
 
Wow. I have been busy lately. Let's see if I can even remember what has happened since the last time I wrote.

Well, let's start back at Monday night. I went to the CSM Robotics class where a friend of mine is attending. He has built a robot that he calls the T-34 B, and he has this transmitter that he uses to control it that is for radio controlled cars.

I don't like transmitters made for radio controlled cars, because they are not intuitive to me. You have to pull this trigger with one hand to make the vehicle go forward, and push the trigger to make it back up. If that isn't confusing enough, you have to use your other hand to steer - and the steering is backward when you are driving backward (if you turn the wheel to the left while going forward, the vehicle will turn to the left, but if you then back up, it turns to the right). So the wheel doesn't steer a vehicle like the steering wheel of a car does.

It's just not intuitive to me, and it cross-wires my brain having to perform one driving function (forward/backward) with one side of my brain and another driving function (steering) with the other side of my brain. As I have learned from video games in my youth, it is MUCH easier to separate controls into similar groups. For example, use the right hand for navigation control, and the left hand for weapons control. Things just seem a whole lot more intuitive that way. My combat robot and my Trike is set up for one-stick control - forward, backward, left and right all on one stick.

Anyway, to make matters worse for my friend's setup, his transmitter has only three channels, and the third channel is controlled by a knob on the top of the transmitter. This channel controls his weapon, which is a pneumatic flipper. You have to turn this knob until it fires, then turn it back to retract it. The flipper triggers when it hits position "50" or below, and retracts when it hits "60" or above (the control swings from 0 to 100).

To make things even worse, this knob turns a digital pot. Turn the knob one way, and it sends pulses down one input path. Turn the knob the other way, and it sends pulses down another input path. Therefore, simply replacing the knob with a simple switch (you know, to make it useful) was simply out of the question.

Ed (my friend) wanted a solution. He wanted a setup where one person could drive while another person operated the weapon. Two brains better than one? I don't know, but I spent the last three days (since Monday night) putting a solution together. And this is what I came up with:



There is a telephone cord coming out of the back of the transmitter, carrying the necessary power and signal lines to connect to my little device (what once was a FailSafe module from my RC4 project) inside the little blue box, that has wires coming out the other end to a little switch box I made, having one pushbutton switch and two LEDs mounted in it.

Here is how it looks in operation:


The only thing left to do is to make a nice little wrist strap (velcro or elastic - perhaps even a cloth casing) for the little blue box, and it will make a slick little setup. Now, one person can drive, and one person can shoot.

The circuit in the little blue box has a PIC16F628 microcontroller in it that just responds to the switch by sending the proper pulses to the transmitter. It is self-calibrating, since when it is first powered up, it sends pulses to set channel 3 to one extreme (in the non-firing direction), then sends pulses to set channel 3 to position "56". When the button is pushed, it pulses channel 3 down to position "46" to make sure the weapon fires, then pulses back to "56" after a 1/4-second delay. When the button is released, it pulses channel 3 up to "66" to make sure the weapon retracts, then pulses back to "56" after a 1/4-second delay.

Channel 3 on the transmitter only advances by two for each pulse (not by one), so that's why it sits at 56 and not 55. I just like to leave it rest at 56 so it only has to go three pulses down to fire, and two pulses up to release. The pulse train takes about 134ms to advance the channel 3 position to either of its programmed extremes (46 or 66). It may not seem like much, but when you want your weapon to fire NOW, you want it to fire NOW and not make you wonder what the hesitation is all about. So, two or three clicks to fire or release means you don't have to wait the full 134ms -- only 54-80ms. Still a tiny delay, but not enough to notice.

Anyway, the two LEDs provide a visual indication that the unit is operating, in case the pneumatics run out of air and you start to wonder why it isn't firing. The LEDs will let you know if it is the unit or not:



Well, I don't have any more time to write at the moment, so I'll write more later.

posted by Bill  # 5:54 PM