Feb 042012

This year, I took the year off of building a car (not by choice). Instead, I took the helm of the whole Pinewood derby. It may surprise you, but the pinewood team (our pack’s leadership) actually spent a considerable amount of time discussing how we could make the whole PWD a smoother experience. This includes everything from the (pre) registration, to the weigh in, to the event it self. When my son was in his first year of Cub Scouts, we just showed up under the delusion that these things just somehow happen. It was really amazing how much time we all spent working on all the little details. We wanted it to be the most massively fun experience possible for the kids. It was an extremely successful and positive night for all.

Being techie by nature and profession, I have been adding more and more technology each year. My focus has prior to this year has mainly been on the extra stuff. You know, all the techie stuff not related to the track. This year was really over the top.  We were using 3 projectors sporting racing software, custom ‘Christmas tree’ racing software, and Pinewood TV. We used a full on sound system with speakers all over the place to envelop the spectators and bring them deeper into the event. It was probably overkill, but so worth it.

Last year (2011) we had a fairly serious glitch. The racing software would not communicate with the track and the track stopped… em… tracking. It was an all out frantic search for paper and pencils and trying to decide how to run the race off of paper. In reviewing the issues, this came from an incomplete understanding of how the system worked, and the ins and outs of the race software. Being that I was responsible for the running of this thing, I was going to understand it. Ultimately I found that it all came to a dead halt because of 1 silly little teeny tiny switch. When I meter’d it all out, the switch would not ‘close’. In English, it would not reset the track. If the track is not reset, it (the track brain) stops sending information to the computer. The switch was totally FUBAR. It looked fine. It clicked fine. But when I metered it, there was NO internal connectivity either in the open or closed set of leads. Not sure what happened, but it was done. To compound this when I looked at how it was attached to the track, it was loose (floppy loose), and poorly placed. I decided to re think how it was built. I replaced the switch with a new one, and moved where it was located. I made sure that this was a really solid placement. More, there was a lot of mechanical movement in the area where the switch lives. A lever holds the starting pins in place (The starting pins hold the cars in place at the top of the track). When this is released, several fairly heavy springs on the back pull the starting pins causing them to slam down and under the track thus releasing the cars. There was really no need for so much travel, nor that much umph ( from the springs) to get it there. This was solved with a strip of squishy  foam cut down to fit in the little void behind the starting pin block. This reduced the jarring ‘clack’ down to a gentle ‘doof’ as well as reduced the vibration and stresses placed directly on the switch.

I was feeling some pressure to make sure this thing rocked, so I took some time to learn the racing software inside and out. As with most cottage businesses, the pinewood software started because a den dad had a need and a skill set to match. He started writing the software and it has been growing ever since. While looking through it, I found that it was actually very well written with lots of great features. More, I found out that we could have actually used it during last year’s emergency using a points system mode vs. the time based races which we were using. But one can’t change the past. Oh well.  Trying to be prepared in case the worst happened again (which I was nervously confident that it would not), in addition to the software, we were armed with mass preprinted spreadsheets and pencils.

Another upgrade I built last year was the ‘ready’ system to help simple communication between the cogs of the race. When it is loud (crowds of kids and mass excitement), it is hard for the emcee to know if the cars are ready on the track, or if the computer people are ready for the next group to run. So I addressed this by building a ‘ready’ system which would seem natural, but served a very important function. I started by writing a couple of programs in Processing and the  Arduino that would simulate a “Christmas Tree”. Instead of cars crossing a line (telling the computer when it could start) in a real world drag race, I made a button box which sat at the computer position and one start of the track (for the car set up guy). When the computer (pencil and paper) was ready, they would hit their ready button. The same went for the car set up folks. When and only when both groups were set up could the race begin. This was all interfaced through an Arduino into Processing. The races were started by the car set up person. The lights would run the way a real Christmas Tree would run, and when the green lights hit, they would release the cars. This was all accompanied by a ferocious set of sound effects to match. So when they would hit their ready buttons, engine sounds would rev (it was loud and deep enough you could feel it in your chest). The race would start with the Christmas tree lights on the screens blinking down, accompanied by beeps (remember the sounds from the start of the video game Pole Position (if you are old enough to remember) Boop boop Boeeeeeeep!). At the green lights, the sound was of screeching tires and wild engine sounds . When I did the sound design for the audio side of things, I panned the car racing sounds so the sound actually attempted to follow the cars  on the track. A PWD race is really only a couple of seconds long, so I faded the race off into the distance. Lastly, there was an emergency stop button on both button sets. This was for moments where some unforeseen ‘thing’ might pop up.  Either party could press stop and it would kill the sound and reset the display. If the emergency stop was pressed, I used this cheesy VW Bug  ‘meep beep’ noise. In contrast to all this crazy high powered stuff, this rather anemic sounding car horn added a touch of humor. It all worked out very well. The whole thing was put together in a couple of days. It was butt ugly, but it worked wonderfully.

This year I improved on the system quite a lot. I did three things. I built the system to be more rugged, added lighting effects,  and added automated starting of the races so it completely sync’d with the sound. I gutted the cardboard boxes used last year and bought some electrical wall boxes. These were spray painted black (because black looks cooler than blue). Instead of using a standard wall plate for the buttons, I made clear plexiglass covers. I have been talking to the boys about how electronics live all around us and I wanted the kids to be able to look inside the box to see what was making this thing tick. I also reduced the project to a breadboard so they could see how robust a prototype could be (it doesn’t always have to be perfectly printed circuit boards all the time). I found some wonderful reflective yellow and black warning tape at Harbor Freight. This was placed on the boxes which did a killer job of making them look rather menacing. I also added a clear red start button and inserted a wicked bright led so that when the race was set up and ready, it would blink bright red for all to see. The 2 button boxes were connected to the main box via Cat 5, so set up and tear down was super easy.

For the automated starting of the races, I bought a solenoid from Sparkfun and built a little mosfet circuit to run it (also housed in the main circuit box). I used one the ears off of a set of server rack rails to mount the solenoid to. Without mutilating the track (which was out of the question) there was no way for the actual solenoid plunger to reach the release lever (which drops the pegs which hold the cars in place). I made a little whachamacallit to attach to the plunger so it could reach up and wrap around the lever. This was cut out of an old metal computer case (my go to material for all my little metal whachamacallits). I did not want to manage multiple voltages (a 12v  system system for lights, and a 24v system for the solenoid). I found that I could under powered the solenoid with 12v. With 12v it had just about enough push that it came pretty close to releasing the start lever as is, but it was not quite enough on it’s own. The solution came through many of the methods used to get PWD cars to run faster. The movement needed to be slicker and smoother. I used a heck of a lot of graphite on all connective surfaces, and minimized any points of friction by sanding a filing my plunger widget completely smooth. These modifications were very effective and the release was flawless. During the PW derby itself the mechanism only failed 3 times during the 100+ races, and 2 of those were due to user set up mistakes. Sorry for the braggin’ moment there, but rarely do projects work that smoothly. I had to take the moment when I could.

For the lighting, I added a 5 meter strip of RGB LEDs. This was controlled by the same Arduino (actually BoaArduino this year) as the button system. I had to move a couple of pins around from last year as I needed the PWM pins for the LEDs. The track is made out of aluminum which takes light very well. I suspended the strip about a foot above the track. When the ready buttons were pressed, the lights would rev up to match. When the race would start and the lights would blink in synch with the sound which would be in synch with the screen. When the lights went green on the screen, the track would go ape dooky with a strobe of green and bright white. Then when the racing was finished, the lights faded down to red, then down to dim red. If an emergency stop was called, the lights would sit and blink red on and off for about 4 seconds like hazard lights.

Mentioned above, we also had TV. I brought in a small video switcher (straight cuts only, nothing fancy). I made a 5 minute looped graphic video of racing flames, checkered flags, and a logo. This would play on the screen in between races. There were 2 track cameras. One pointed up at the starting line. This was suspended right over the track on a sort of wood bridge that I made. This was a great shot. You could see the race start and then the cars would fly right at, then under the camera. the camera lens was sitting just 2 inches above the maximum height allowed for cars. (The 2 extra inches was so that I would not get yelled at by some parent who thought that I had somehow had lost their kid the race. While the PWD brings out some of the best qualities in a kid, it brings out some of the worst in some parents (Just sayin’).  The second camera was placed at the end of the track to catch the cars as they went through the finish line. My son actually did the video switching for the night and I must say, he did a great job.

You can not pull off something like this without a great team, and man, all of our Pack 553 leaders stepped up and helped out wherever needed. We started the load in and set up at 10am (the morning of the event), and finished about 5 minutes before it started. While everyone was working hard, no one was rushed. We just did everything we could while we could. After the PWD, it came time to tear down and pack up the car. I will tell you that everything in that room (aside from the track) fit in my Prius. Granted, it probably would have popped if I poked it, but it handled the load.


 Posted by at 6:42 pm

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>



This blog is kept spam free by WP-SpamFree.