So, after a couple of weeks of much intermittent panicking, we commissioned the latest version of the patient positioning system today. I feel rather chuffed about the whole thing at the moment, since it's always nice to see one's work used, but I could have done with a less stressful last two weeks.
Since the last version was commissioned (November 2006), several chances have been made. Most significantly, the control and drive systems for the chair were replaced. The improved electronics allows great accuracy, and the updated control system fixes the numerous problems with the old version. The vision system received polishing - various inefficiences were ironed out, and the code is generally much less fragile, and numerous bugs on the front-end were fixed. All in all, the new system represents a significant improvement, and is the result of lots of hard work by the MedRad development team.
As the panicking comment above suggests, the comissioning process did not run that smoothly, though. Things that went wrong varied include the serious - I had to rework and significantly simplify parts the lens distortion code due to issues with the repeatability of the results (trading theorical accuracy for practical reliability, which was the correct choice, but I will need to revisit and fix that code), the daft - a stupid error in the mathematical formulation, that all of us who looked at it missed completely, meant the final collimator rotation was only correct in the range 0 - π (Of course, the standard QA tests we used during the development phase only cover that range, so we didn't pick this up until quite late) and the standard - the spare box, which also needed to be updated booted fine, but completely failed to see it's frame-grabbers, so that had to be hastily rebuilt (leaving us short of additional spares for now), combined with all the usual last minute bug-fixes, but it is complete, and the accuracy figures do show a statistically significant improvement in the accuracy. Considering that the previous system was already accurate to within 0.5 mm, I'm pretty pleased with that.