MCP Rear motor subsystem Documentation
1. Introduction
The most important subsystem on the MCP and the one that posed the most problems was the Rear motor
subsystem. Without this system the MCP is useless as it would be unable to move
and yet this is nearly what happened to the MCP as this subsystem was developed many problems
were faced, and then overcome.
2. Overview
A Power Wheels Jeep Wrangler toy that the MCP, was built on has a 12V 10Ah battery
that drives two 12V 20A DC motors. After we use factory built speed controller,
we made it stable and powerful. Fred Martin suggested using factory made speed controller
when the circuit was burned.It was 5th burned. After using this speed control servo,
we can merge steering and motor interface.
Now we just need 1 serialSense board to controll MCP Rear motor and steering subsystem.
3. Main Discussion
Finally MCP uses a speed controller from MULTIPLEX,
Fred Martin suggested. That makes easy life for MCP. Motor
subsystem was unstable. I had a hard time to controlling high current. Now
Motor subsystem uses factory made speed controller system which is made by
MULTIPLEX. This speed controller is basically the same as servo. It goes
between 1.5ms to 2.5ms. Between this cycle, speed controller just increase or decrease
the speed. Input signal is normal servo signal. So it is simple to make a control program.
Motor subsystem gets 2 kinds of signals from serialsense board that uses with
steering subsystem. One is for speed controller the other is forward and
backward.
3.1 Forward Backward -- Relay circuit
Figure 3.1: motor relay circuit |
 |
Note:
This relay circuit is simple. There are 3 inputs 12V input, 5V logic input and 5V signal.
output goes to relay. Logic input comes from servo board.
|
Code listing 3.1: Code Sample for forward - backward |
SerialSense *ss = new SerialSense("/dev/ttyS0");
ss->open();
ss->setupIO(7,0); #setup port7 as an output
ss->set(7); #set port7 high --> forward
ss->clear(7); #set port7 low --> backward
|
3.2 Speed control circuit and wiring diagram
Figure 3.2: motor circuit |
 |
Code listing 3.2: Code Sample for speed control |
# define speed10 120
# define speed20 140
# define speed30 160
# define speed40 180
SerialSense *ss = new SerialSense("/dev/ttyS0");
ss->open();
ss->servo(1,0); #Left speed controller init
ss->servo(3,0); #Right speed controller init
sleep(3); #Wait for power protection
ss->servo(1,speed10);
ss->servo(3,speed10);
|
Note:
MULTIPLEX ESC Pico-Control 400
Continous current 30A
Peak current 40A ( max 2 min)
|
Figure 3.3: Multiplex and relay circuit photo |
 |
Warning:
The power-on protection circuit will prevent the motor bursting into life
when you switch the system on. We have to keep at least 2 sec for speed 0 when turn on the system.
|
4. Interface
MCP Rear motor subsystem and Steering substem use a SerialSense board.
Theses two systems use one serial communication port. And UDP Deamon program merged with steering system.
SerialSense Board and Servo Board
SerialSense Board is the main part of interface in Rear motor subsystem and steering subsystem.
This gives us to control speed contorller and relay. Servo Board gets signal from SerialSense board and convert to servo signal.
Figure 4.1: SerialSense Board and Servo Board |
 |
5. Appendix
Reference Steering system. Controll program source code shares whit steering sybsystem
6. Contribution
Andrew Wirshborn-Lucker (MOSFET + relay ckt)
Stephen Ward (version of this driven by LogoChip)
|