As someone who has had the privilege of driving robots in competitions, I would echo most of Jared's points. Especially the part about separating the primary drive functions to different hands. In 2008 we implemented an RC car controller (seen
here) and every team member with driving experience quickly picked it up and preferred it to the traditional 'tank drive' style of control.
Having never played with omnidirectional FIRST robots, I can't say which method works best. I did have the fun problem of figuring out the omnidirectional control set up for our
underwater robot however, which had a lot of stuff to cover:
- ROV has 5 degrees of freedom of motion (pitch, yaw, and translation in x y and z)
- Manipulator has 2 degrees of freedom (grasp, rotate)
- Camera tilt
- Various other functions (lighting, torpedo launching, camera centering)
To have the ROV actually be driven well, we wanted all of these operations to be controlled by one person. The solution we came up with was using a PS2 controller and mapping the different movements in a sensible way. Left joystick covered translational movements on the horizontal plane while right joystick covered turning left/right and moving up/down (surprisingly similar to first person shooter game controls... they must be doing something right). Claw open/close and ROV pitch were controlled by the PS2 triggers, and all other 'less critical' operations were put on the buttons. A neat feature of a PS2 controller: all buttons and triggers are pressure sensitive and can basically be used as analog controls.
As usual, putting a lot of thought into the control system only gets you so far. The driver needs gobs of practice for it to pay off!
As a last little note, I would also add that working with smaller controllers (as in video game controller, RC controller, etc. instead of large PC joysticks) gives more fine control over movements. Human fingers are good at precisely manipulating objects; I could never grasp why so many teams use large joysticks that require arm and wrist movements.