I really have a lot to write about this topic (since I am doing the entire control system)... but I will try to keep it a reasonable length. The tank will be remotely controlled over an RF link in the 2meter ham band. Part 97 of the FCC Rules allows
remote telecommand of model craft without identification, and the "codes" used by the radio control system are not interpreted as codes or ciphers intended to obscure the meaning of the content (which are illegal for hams to use). We are going to use
two old hand-held radios (Kenwood TR-2500 HT's) I had around. Fortunately they have a low power setting of 0.4 Watts which falls within the maximum power of 0.5W allowed for model craft control. They will be modulated with data at 2400bps using FSK
modems from TDK Semiconductor (73M223's which went obsolete in the fall of last year (2001)). It took a little work to get the PIC to FSK modem to radio interface working, but I designed some little circuits that do the trick.|
The control on the operator side will be a Sidewinder 3D Pro joystick. It will work out very nicely because
it has 4 axes (X, Y, rotation of the control handle, and a seperate slider). The X and Y axes will be used to drive the tank laterally, while the rotation axis will be used to recover the "turn-on-a-dime" functionality lost by not having a seperate
control for each track. I have written an assembly algorithm for the PIC that should allow "mixing" of the X and Y axes into the two track control bytes. The Z (rotation) axis also comes into play when the X and Y axes are centered (no movement
of the tank) to rotate one track forward and the other backward in order to turn around the center. A PIC (an 18-pin PIC16F627) will read the data from the digital joystick and perform the mixing of the axes, as well as sending them over the RF
link to the tank. The hat switch will be used to control the camera turret to decide what to
look at and the buttons will be used for other fucntions such as switching the telemetry video information the tank sends back, switching between the video cameras, controlling light, centering the cameras and several other
functions as well.
The USART (serial port) on the PICs is used to communicate over the RF link. On the TX side (operator control point) the data goes directly to the FSK modem from the USART transmit pin, and on the RX
side (the tank) the data comes directly from the FSK modem to the PIC. The 9-bit format is used, with the 9th bit (not a part of the RX and TX regs) being used to indicate whether the data is a motor control byte or a "peripheral control" byte (cameras, overlay board, etc). Each motor control byte will indicate which track it is meant to control (right or left), the
direction the track is supposed to go, and the speed of the tracks (6 bits/64 speed increments each direction).
The tank side will have a peripheral/motor control PIC as well as a video control PIC. Both PICs will be connected to the output of the FSK demod and when they hear a command that is for them they will act on it
and simply ignore what is not for them. The peripheral/motor control PIC handles the radio tuning control (in the future), motor control, and camera servo control, as well as several minor functions. The motor control byte tells which track the command is for, which direction the motor should go, and the
speed from 0 to 63 (0 is 0% PWM to the motor, 63 is 100% PWM to the motor in the direction specified in the direction bit). An H-bridge motor controller is being built to handle the high-power side of the motor control. It will contain logic
(to make sure that the MOSFETs don't short from V+ to ground), and eight MOSFETs (2 motors - 4 MOSFETs for each motor). The video control PIC controls the video overlay board, video camera switching, and transmitter control.