RoboteQ TV Converter Box AX2550 2850 User Guide

AX2550/2850  
Dual Channel  
High Power  
Digital Motor  
Controller  
User’s Manual  
v1.7, February 1, 2005  
visit www.roboteq.com to download the latest revision of this manual  
©Copyright 2003-2005 Roboteq, Inc.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Revision History  
AX2550/2850 Motor Controller Users Manual  
3
Download from Www.Somanuals.com. All Manuals Search And Download.  
4
AX2550/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Connecting Sensors and Actuators to Input/Outputs 49  
Normal and  
Fault Condition LED Messages 65  
6
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
R/C Operation 69  
Serial (RS-232) Controls and Operation 87  
AX2500/2850 Motor Controller Users Manual  
7
Download from Www.Somanuals.com. All Manuals Search And Download.  
Analog Control and Operation 107  
Closed Loop Position Mode 115  
Closed Loop Speed Mode 123  
8
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Installing, Connecting and Using the Encoder Module 131  
AX2500/2850 Motor Controller Users Manual  
9
Download from Www.Somanuals.com. All Manuals Search And Download.  
Configuring the Controller using the Switches 153  
Using the Roborun Configuration Utility 159  
Mechanical Specifications 177  
10  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
SECTION 1  
AX2500/2850  
Quick Start  
This section will give you the basic information needed to quickly install, setup and  
run your AX2500/2850 controller in a minimal configuration. The AX2850 is a version  
of the AX2550 controller with the addition of Optical Encoder inputs.  
Important Safety Warnings  
The AX2500/2850 is a high power electronics device. Serious damage, includ-  
ing fire, may occur to the unit, motors, wiring and batteries as a result of its  
misuse. Please review the User’s Manual for added precautions prior to apply-  
ing full battery or full load power.  
This product is intended for use with  
rechargeable batteries.  
Unless special precautions are taken, damage to the controller and/or power  
supply may occur if operated with a power supply alone. See“Power Regener-  
What you will need  
For a minimal installation, gather the following components  
One AX2500/2850 Controller and its provided cables  
12V to 40V high capacity, high current battery  
One or two brushed DC motors  
One R/C to DB15 connector (provided)  
Miscellaneous wires, connectors, fuses and switch  
AX2500/2850 Motor Controller Users Manual  
11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AX2500/2850 Quick Start  
Locating Switches, Wires and Connectors  
Take a moment to familiarize yourself with the controllers wires, switches and connector.  
The front side (shown in Figure 1) contains the buttons and display needed to operate and  
monitor the controller. The 15-pin connector provides the connection to the R/C or micro-  
computer, as well as connections to optional switches and sensors.  
Program Set  
Reset  
Connector to  
Optical Encoders  
(AX2850 only)  
Connector to Receiver/Controls  
and sensors  
Operating Status  
and Program LED  
Display  
Controller Configu-  
ration buttons  
FIGURE 1. Front Controller Layout  
At the back of the controller (shown in the figure below) are located all the wires that must  
be connected to the batteries and the motors.  
Controller Power  
Power Control  
Yellow  
Ground (-)  
Black  
(top)  
Motor (+)  
White  
Motor (-) 12 to 40V (+) Ground (-)  
12 to 40V (+) Motor(+)  
Motor (-)  
Green  
Green  
Red  
Black  
Red  
Yellow or  
White  
Motor 1  
Motor 2  
FIGURE 2. Rear Controller Layout  
12  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connecting to the Batteries and Motors  
Connecting to the Batteries and Motors  
Connection to the batteries and motors is shown in the figure below and is done by con-  
necting the set of wires coming out from the back of the controller.  
Motor  
Battery  
Power Cables  
Optional  
Power on/off  
switch  
Cables  
+
Motor2  
Motor1  
Fuse  
-
+
-
Power Control  
Wire  
12V to 40V  
Motor Battery  
Controller  
Notes:  
-
The Battery Power connection are doubled in order to provide the maximum current to the controller. If  
only one motor is used, only one set of motor power cables needs to be connected  
-
-
Typically, 1, 2 or 3 x 12V batteries are connected in series to reach 12, 24 or 36V respectively  
The Power Control wire may be used to turn On and Off the controller, or to provide a separate and sta-  
ble supply to the controllers logic (See discussion below)  
FIGURE 3. Electrical Power Wiring Diagram  
1- Connect the two thick black wires to the minus (-) terminal of the battery that will be  
used to power the motors. Connect the two thick red wires to the plus (+) terminal of the  
battery. The motor battery may be of 12 to 40 Volts. There is no need to insert a switch on  
Motor Power cables, although one is suggested.  
Avoid extending the length of these wires as the added inductance may cause dam-  
age to the controller when operating at high currents. Try extending the motor wires  
instead since the added inductance on this side of the controller is not harmful.  
The two red wires are connected to each other inside the controller. The same is true  
for the black wires. You should wire each pair together as shown in the diagram  
above.  
2- You may leave the yellow Power Control wire and the thin black wire unconnected, or  
you may connect them to a power switch. If left floating, protect these wires from touching  
any metallic part of the controller or chassis.  
more information about batteries and other connection options.  
3- Connect each motor to one of the two output cables pair. Make sure to respect the  
polarity, otherwise the motor(s) may spin in the opposite direction than expected  
AX2500/2850 Motor Controller Users Manual  
13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AX2500/2850 Quick Start  
Important Warning  
The controller includes large capacitors. When connecting the Motor Power Cables,  
a spark will be generated at the connection point. This is a normal occurrence and  
should be expected.  
Using the Power Control Wire  
The AX2500/2850 includes a DC/DC converter that will generate a 12V internal supply from  
the main +12 to +40V battery. As a result, the controller will turn On as soon as its Battery  
Wires (thick red and black wires) are connected to the battery.  
In order to turn On and Off the controller without the need for a bulky and expensive  
switch or relay on the high current wires, the AX2500/2850 uses a Power Control wire to  
enable or disable the internal DC/DC converter. When left unconnected, the DC/DC con-  
verter is On. When grounded, the DC/DC converter is Off.  
The Power Control wire can also be used to feed a separate supply to the controller so that  
it will continue to operate if and when the main batteriesvoltage dips below 12V. The table  
below shows the various functions of the Power Control input. See Connecting Power”  
on page 25 for more details on the use and operation of the Power Control signal.  
TABLE 1. Use of Power Control wire  
Power Control input connected to  
Action  
Floating  
Controller is On  
Controller is Off  
Ground  
Separate 12V to 40V supply  
Controller is On. Controller will draw power from  
the Power Control wire if main battery voltage  
dips below 12V.  
Connecting the R/C Radio  
Connect the R/C adapter cables to the controller on one side and to two or three channels  
on the R/C receiver on the other side. The third channel is for activating the accessory out-  
puts and is optional.  
When operating the controller in Separatemode, the wire labelled Ch1 controls Motor1,  
and the wire labelled Ch2 controls Motor2.  
When operating the controller in Mixedmode, Ch1 is used to set the robots speed and  
direction, while Ch2 is used for steering.  
See R/C Operationon page 69 of the Users Manual for a more complete discussion on  
R/C commands, calibration and other options.  
14  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Powering On the Controller  
Channel 3  
Channel 2  
3:  
4:  
6:  
7:  
8:  
Channel 1 Command Pulses  
Channel 2 Command Pulses  
Radio battery (-) Ground  
Radio battery (+)  
Channel 1  
Channel 3 Command Pulses  
8
9
Pin 1  
Wire loop bringing power from  
controller to RC radio and  
to optical isolators  
15  
FIGURE 4. R/C connector wiring for 3 channels and battery elimination (BEC)  
This wiring - with the wire loop uncut - assumes hat the R/C radio will be powered by the  
AX2500/2850 controller. Other wiring options are described in R/C Operationon page 69  
of the Users Manual.  
Important Warning  
Do not connect a battery to the radio when the wire loop is uncut. The RC battery  
voltage will flow directly into the controller and cause permanent damage if its volt-  
age is higher than 5.5V.  
Connecting the optional channel 3 will enable you to turn on and off two accessory out-  
Powering On the Controller  
Important reminder: There is no On-Off switch on the controller. You must insert a switch  
on the controllers power wire as described in sectionConnecting to the Batteries and  
To power the controller, center the joystick and trims on the R/C transmitter. Then turn on  
the switch that you have placed on the Battery Power wire or on the Power Control wire.  
If the R/C transmitter and/or receiver is powered off, the display on the controller will alter-  
nate the letters spelling no ctrlto indicate that it is On but is not receiving a control sig-  
nal.  
AX2500/2850 Motor Controller Users Manual  
15  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AX2500/2850 Quick Start  
FIGURE 5. no controlscroll message indicates no valid R/C signal is present  
Turn the R/C transmitter On. The no ctrlscrolling message will disappear and the display  
will show steady patterns depending on the motorsselected direction.  
Move the joystick on the transmitter to activate the motors to the desired speed and direc-  
tion.  
See R/C Operationon page 69 of the Users Manual for a detailed description of the  
many features and options available in the R/C mode.  
Button Operation  
The AX2500/2850 has three buttons: Set, Program and Reset. These buttons are not  
needed for normal operation, as the controller is immediately operational upon power up.  
The Reset button will restart the controller. This button is recessed and you will need a  
paper clip to press it. Reset is also accomplished by turning the controllers power Off and  
back On.  
The Set and Program buttons have the following functions depending how and when they  
are pressed:  
TABLE 2. AX2500/2850 Buttons Function  
Prog and Set button status  
Function  
Press and hold Program alone during reset or power up  
Press and hold Set alone during reset of power up  
Enter the Programming Mode.  
Enter Self-Test mode. See Self-Test  
Modeon page 47 of the Users Manual  
Press and hold Program and Set together during reset or  
power up  
Reset configuration parameters to factory  
default  
Press Program while Programming Mode  
Accept previous parameter change and  
select next parameter  
Press Set while in Programming mode  
Change value of selected parameter  
No effect  
Press Program pressed alone during normal operation  
Press Set alone during normal operation  
No effect  
Press Program and Set together during normal operation  
Emergency stop  
16  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Default Controller Configuration  
Default Controller Configuration  
Version 1.7 of the AX2500/2850 software is configured with the factory defaults shown in  
the table below. Although Roboteq strives to keep the same parameters and values from  
one version to the next, changes may occur from one revision to the next. Make sure that  
you have the matching manual and software versions. These may be retrieved from the  
User Manual for a complete configuration parameter list and their possible values.  
TABLE 3. AX2500/2850 Default Settings  
Parameter  
Default Values  
Letter  
Input Command mode:  
Motor Control mode  
Amp limit  
(0) = R/C Radio mode  
(0) = Separate A, B, speed control, open loop  
(5) = 105A  
I
C
A
S
U
b
d
E
F
L
Acceleration  
(2) = medium-slow  
Input switch function  
Brake/Coast  
(3) = no action  
(0) = brake when idle  
(2) = 16%  
Joystick Deadband  
Exponentiation on channel 1  
Exponentiation on channel 2  
Left / Right Adjust  
(0) = Linear (no exponentiation)  
(0) = Linear (no exponentiation)  
(7) = no adjustment  
Checking and Changing Configurations  
Any one of the parameters listed in Table 3, and others not listed, can easily be changed  
either using the controllers buttons or your PC with the Roboteq Configuration Utility.  
The example below shows how to use the buttons to select and change the Motor Control  
mode from separateto mixed. See Configuring the Controller using the Switcheson  
page 153 of the Users Manual for a complete list of all the AX2500/2850s parameters and  
their meanings.  
Restart  
Press & hold Prog  
Press and hold the Prog button for 10 seconds while  
resetting or powering on the controller  
Program mode entered  
after 10 seconds  
After 10 seconds, the controller will enter the program-  
ming mode and flash alternatively the current parame-  
ter (I= Input Mode) and its value (0= R/C mode).  
AX2500/2850 Motor Controller Users Manual  
17  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
AX2500/2850 Quick Start  
Press Prog to select  
Press the Prog button to move to the next parameter  
next parameter  
(C= Motor Control Mode) and its value (0= Separate)  
Press Set to select  
next value for parameter  
Press the Set button to change the parameters value  
(1= Combined)  
Press Prog to store change  
and select next parameter  
Press the Prog button record the change and move to  
the next parameter (A= Amps limit) and its value (2=  
75A)  
Reset controller  
to exit  
Press the Reset button or power off/on the control to  
restart the controller using the new parameters.  
Connecting the controller to your PC using Roborun  
Connecting the controller to your PC is not necessary for basic R/C operation. However, it  
is a very simple procedure that is useful for the following purposes:  
to Read and Set the programmable parameters with a user-friendly graphical inter-  
face  
to obtain the controllers software revision and date  
to send precise commands to the motors  
to read and plot real-time current consumption value  
Save captured parameters onto disk for later analysis  
to update the controllers software  
18  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Obtaining the Controllers Software Revision Number  
FIGURE 6. Roborun Utility screen layout  
To connect the controller to your PC, use the provided cable. Connect the 15-pin connector  
to the controller. Connect the 9-pin connector to your PCs available port (typically COM1).  
Apply power to the controller to turn it on.  
Load your CD or download the latest revision of Roborun software from  
www.Roboteq.com, install it on your PC and launch the program. The software will auto-  
matically establish communication with the controller, retrieve the software revision num-  
ber and present a series of buttons and tabs to enable its various possibilities.  
The intuitive Graphical User Interface will let you view and change any of the controllers  
parameters. The Runtab will present a number of buttons, dials and charts that are used  
for operating and monitoring the motors.  
Obtaining the Controllers Software Revision Number  
One of the unique features of the AX2500/2850 is the ability to easily update the control-  
lers operating software with new revisions downloaded from Roboteqs web site at  
www.roboteq.com. This is useful for adding features and/or improving existing ones.  
AX2500/2850 Motor Controller Users Manual  
19  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AX2500/2850 Quick Start  
Each software version is identified with a unique number. Obtaining this number can be  
done using the PC connection discussed previously.  
It is also possible to get the controller to display the software version number by following  
these simple steps  
Disconnect the power from the motor batteries  
Press and hold the Set button while powering or resetting the controller  
The LED will display a sequence of two numerical digits and an optional letter separated by  
dashes as shown in the examples below.  
= Software version 1.7  
FIGURE 7. Press and hold Setto display version number and enter self-test  
After these digits are displayed, the controller will attempt to power the motors as part of  
the self test mode (see Self-Test Modeon page 47 of the Users Manual for a more  
detailed explanation). This is why the motors battery must be disconnected. After about  
30 seconds, the software revision number will be displayed every 30 seconds.  
You will need to reset, or power down and up, the controller to exit and resume normal  
operations.  
Now that you know your controllers software version number, you will be able to see if a  
new version is available for download and installation from Roboteqs web site, and which  
features have been added or improved.  
Installing new software is a simple and secure procedure, fully described in Operating the  
Exploring further  
By following this quick-start section, you should have managed to get your controller to  
operate in its basic modes within minutes of unpacking.  
Each of the features mentioned thus far has numerous options which are discussed further  
in the complete Users Manual, including:  
Self test mode  
Emergency stop condition  
Joystick calibration  
Using Inputs/Outputs  
Current limiting  
Closed Loop Operation  
Software updating  
and much more  
20  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
SECTION 2  
AX2500/2850  
Motor Controller  
Overview  
Congratulations! By selecting Roboteqs AX2500/2850 you have empowered your-  
self with the industrys most versatile and programmable DC Motor Controller for  
mobile robots. This manual will guide you step by step through its many possibili-  
ties.  
Product Description  
The AX2500/2850 is a highly configurable, microcomputer-based, dual-channel digi-  
tal speed or position controller with built-in high power drivers. The controller is  
designed to interface directly to high power DC motors in computer controlled or  
remote controlled mobile robotics and automated vehicle applications.  
The AX2500/2850 controller can accept speed or position commands in a variety of  
ways: pulse-width based control from a standard Radio Control receiver, Analog  
Voltage commands, or RS-232 commands from a microcontroller or wireless  
modem.  
The controller's two channels can be operated independently or can be combined to  
set the forward/reverse direction and steering of a vehicle by coordinating the  
motion on each side of the vehicle. In the speed control mode, the AX2500/2850  
can operate in open loop or closed loop. In closed loop operation, actual speed mea-  
surements from tachometers or optical encoders are used to verify that the motor is  
rotating at the desired speed and direction and to adjust the power to the motors  
accordingly.  
The AX2500/2850 can also be configured to operate as a precision, high torque  
servo controller. When connected to a potentiometer coupled to the motor assem-  
bly, the controller will command the motor to rotate up to a desired angular position.  
Depending on the DC motor's power and gear ratio, the AX2500/2850 can be used  
to move or rotate steering columns or other physical objects with very high torque.  
The AX2500/2850 is fitted with many safety features ensuring a secure power-on  
start, automatic stop in case of command loss, over current protection on both  
channels, and overheat protection.  
AX2500/2850 Motor Controller Users Manual  
21  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AX2500/2850 Motor Controller Overview  
The motors are driven using high-efficiency Power MOSFET transistors controlled using  
Pulse Width Modulation (PWM) at 16kHz. The AX2500/2850 power stages can operate  
from 12 to 40VDC and can sustain up to 120A of controlled current, delivering up to  
4,800W (approximately 6 HP) of useful power to each motor.  
The many programmable options of the AX2500/2850 are easily configured using one-  
touch Program and Set buttons and a 7-segment LED display. Once programmed, the con-  
figuration data are stored in the controller's non-volatile memory, eliminating the need for  
cumbersome and unreliable jumpers.  
The AX2850 is the AX2550 controller fitted with a dual channel optical encoder input mod-  
ule. Optical Encoders allow precise motor speed and position measurement and enable  
advance robotic applications.  
Technical features  
Fully Digital, Microcontroller-based Design  
Multiple operating modes  
Fully programmable using either built-in switches and 7 segment display or through  
connection to a PC  
Non-volatile storage of user configurable settings. No jumpers needed  
Simple operation  
Software upgradable with new features  
Multiple Command Modes  
Radio-Control Pulse-Width input  
Serial port (RS-232) input  
0-5V Analog Command input  
Multiple Advanced Motor Control Modes  
Independent operation on each channel  
Mixed control (sum and difference) for tank-like steering  
Open Loop or Closed Loop Speed mode  
Position control mode for building high power position servos  
Modes selectable independently for each channel  
Automatic Joystick Command Corrections  
Joystick min, max and center calibration  
Selectable deadband width  
Selectable exponentiation factors for each joystick  
3rd R/C channel input for weapon and accessory output activation  
Special Function Inputs/Outputs  
2 Analog inputs. Used as  
22  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Technical features  
Tachometer inputs for closed loop speed control  
Potentiometer input for position (servo mode)  
Motor temperature sensor inputs  
External voltage sensors  
User defined purpose (RS232 mode only)  
One Switch input configurable as  
Emergency stop command  
Reversing commands when running vehicle inverted  
General purpose digital input  
Up to 2 general purpose outputs for accessories or weapon  
One 24V, 2A output  
One low-level digital output  
Up to 2 general purpose digital inputs  
Optical Encoder Inputs (AX2850 only)  
Inputs for two Quadrature Optical Encoders  
up to 250khz Encoder frequency per channel  
two 32-bit up-down counters  
Inputs may be shared with four optional limit switches per channel  
Internal Sensors  
Voltage sensor for monitoring the main 12 to 40V battery system operation  
Voltage monitoring of internal 12V  
Temperature sensors on the heat sink of each power output stage  
Sensor information readable via RS232 port  
Low Power Consumption  
On board DC/DC converter for single 12 to 40V battery system operation  
Optional backup power input for powering safely the controller if the motor batteries  
are discharged  
Max 200mA at 12V or 100mA at 24V idle current consumption  
Power Control wire for turning On or Off the controller from external microcomputer  
or switch  
No power consumed by output stage when motors are stopped  
Regulated 5V output for powering R/C radio. Eliminates the need for separate R/C  
battery  
High Efficiency Motor Power Outputs  
Two independent power output stages  
Dual H bridge for full forward/reverse operation  
Ultra-efficient 2.5mOhm ON resistance (RDSon) MOSFET transistors  
12 to 40 V operation  
High current 8 AWG cable sets for each power stages  
SmartAmps Automatic current limitation  
120A up to 15 seconds (per channel)  
AX2500/2850 Motor Controller Users Manual  
23  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AX2500/2850 Motor Controller Overview  
100A up to 30 seconds  
80A extended  
High current operation may be extended with forced cooling  
250A peak Amps per channel  
16kHz Pulse Width Modulation (PWM) output  
Auxiliary output for brake or clutch  
Heat sink extruded case  
Advanced Safety Features  
Safe power on mode  
Optical isolation on R/C control inputs  
Automatic Power stage off in case of electrically or software induced program fail-  
ure  
Overvoltage and Undervoltage protection  
Regeneration current limiting  
Watchdog for automatic motor shutdown in case of command loss (R/C and RS232  
modes)  
Large, bright run/failure diagnostics on 7 segment LED display  
Programmable motor acceleration  
Built-in controller overheat sensor  
Motor temperature sensing and protection  
Emergency Stop input signal and button  
Data Logging Capabilities  
13 internal parameters, including battery voltage, captured R/C command, tempera-  
ture and Amps accessible via RS232 port  
Data may be logged in a PC, PDA or microcomputer  
Sturdy and Compact Mechanical Design  
Built from aluminum heat sink extrusion with mounting brackets  
Efficient heat sinking. Operates without a fan in most applications.  
7(178mm) long (excluding mounting brackets) by 5.5wide (140mm) by 1.8”  
(40mm) high  
-20o to +70o C operating environment  
3.3 lbs (1500g)  
24  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Connecting Power  
SECTION 3  
Connecting  
Power and  
Motors to the  
Controller  
This section describes the AX2500/2850 Controllers connections to power sources and  
motors.  
Important Warning  
Please follow the instructions in this section very carefully. Any problem due to wir-  
ing errors may have very serious consequences and will not be covered by the prod-  
ucts warranty.  
Connecting Power  
The AX2500/2850 has 2 sets of Ground (black) and Vmot (red) power cables and a Power  
Control wire (yellow):  
The power cables are located at the back end of the controller. The various power cables  
are identified by their position, wire thickness and color: Red is positive (+), black is nega-  
tive or ground (-).  
The power cables to the batteries and motors are shown in the figure below.  
AX2500/2850 Motor Controller Users Manual  
25  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Connecting Power and Motors to the Controller  
Controller Power  
Power Control  
Ground (-)  
Black  
Yellow  
(top)  
Motor (+)  
White  
Motor (-) 12 to 40V (+) Ground (-)  
12 to 40V (+) Motor(+)  
Motor (-)  
Green  
Green  
Red  
Black  
Red  
Yellow or  
White  
Motor 1  
Motor 2  
FIGURE 8. Controller rear plate and power wiring  
Controller Power  
The AX2500/2850 uses a flexible power supply scheme that is best described in Figure 9.  
On this diagram, it can be seen that the Control Logic requires a stable 12V supply, while  
the Power Output stage that drives the motors can tolerate a very wide voltage range.  
Because of its wide operating voltage range, the Power Output stage is wired directly to  
the Main Battery.  
The control logic is connected to both the DC/DC converter as well as the Power Control  
wire. If the voltage applied to the DC/DC converters input is lower than the 12V needed for  
its proper operation, the Control Logic will stop unless the Power Control wire is con-  
nected to a separate 12V power source. The diode circuit is designed to automatically  
select one power source over the other. The diodes will let through the source that is  
higher than the other.  
The Power Control input also serves as the Enable signal for the DC/DC converter. When  
floating or pulled to above 1V, the DC/DC converter is active and supplies the AX2500/  
2850s control logic, thus turning it On. When the Power Control input is pulled to Ground,  
the DC/DC converter is stopped and the controller is turned Off.  
All 3 ground wires (-) are connected to each other inside the controller. The two main bat-  
tery wires are also connected to each other internally. However, you must never assume  
26  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Controller Power  
that connecting one wire of a given battery potential will eliminate the need for connecting  
the other. Malfunction or even damage may occur if one wire is assuming the load of all  
two.  
Mot1(-)  
Mot1(+)  
VBatt Vmot  
5Vmin  
Channel 1 MOSFET Power Stage  
40V max  
GND  
Power  
Control  
&Backup  
ENABLE  
Microcomputer &  
MOSFET Drivers  
9.5V min  
13V max  
10.5V min  
40V max  
DC/DC  
GND  
GND  
5Vmin  
40V max  
Channel 2 MOSFET Power Stage  
VBatt Vmot  
Mot2(+)  
Mot2(-)  
FIGURE 9. Representation of the AX2500/2850s Internal Power Circuits  
TABLE 4. Effect of Power Control under various voltage conditions  
Power Control input is  
connected to  
And Main Battery  
Voltage is  
Action  
Ground  
Floating  
Floating  
Any Voltage from 0V to 40V  
Below 9V  
Controller is Off  
Controller is Off  
Between 9V and 10.5V  
Controller Logic is On  
Power Stage is Disabled (under-  
voltage condition)  
Floating  
Between 10.5 and 40V  
Controller is On. Drawing power  
from Main Battery  
Power Stage is Active  
10.5V to 40V  
Lower than Voltage on Power  
Control input - or Off  
Controller is On. Drawing power  
from external source (backup  
battery)  
Power Stage is Active  
10.5V to 40V  
Higher than Voltage on Power  
Control input  
Controller is On. Drawing power  
from Main Battery  
Power Stage is Active  
AX2500/2850 Motor Controller Users Manual  
27  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Connecting Power and Motors to the Controller  
Powering the Controller using the Motor Batteries  
The AX2500/2850 included a DC/DC converter to generate the internal 12V required for its  
operation. The diagram on Figure 10 show how to wire the controller to a single battery cir-  
cuit and the two options for turning the power On and Off. The diagram shows two  
switches, although switching either one alone will power the controller Off.  
In a typical configuration, it is recommended that the Motor Power be always applied and  
that the Controllers Power be controlled using a switch on the Power Control wire (yellow).  
When the controller is Off, the output transistors are in the Off position and no power is  
drawn on the Motor Power battery.  
For safety reasons, however, it is highly recommended that a way of quickly disconnecting  
the Motor Power be provided in the case of loss of control and all of the AX2500/2850  
safety features fail to activate  
Note, however, that eventually the motor batteries will get weaker and the voltage drop  
below the level needed for the internal DC/DC converter to properly operate. For all profes-  
sional applications it is therefore recommended to add a separate 12V (to 40V) power sup-  
ply to ensure proper powering of the controller under any conditions.  
Important Warning  
Unless you can ensure a steady 12V voltage in all conditions, it is recommended that  
the battery used to power the controllers electronics must be separate from the one  
used to power the motors. This is because it is very likely that the motor batteries  
will be subject to very large current loads, which may cause the voltage to eventually  
dip below 12V as the batteriescharge drops. The separate backup power supply  
should be connected to the Power Control input.  
Important Warning  
On versions of the AX2550 with PCB revision number lower than 5.2, the backup  
power supply applied on the Power Control wire must NEVER EXCEED 13V. Perma-  
nent damage may otherwise occur. PCB revision number can be found on the sticker  
on the cases bottom.  
28  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Controller Power  
Swich on  
Power Control  
Swich on  
Main Battery  
(optional)  
Controller  
2 x 12V Batteries = 24V  
3 x 12V Batteries = 36V  
Notes:  
-
Only one switch is actually needed to turn On/Off the controller. If either one is used,  
the other can be omitted.  
FIGURE 10. Powering the controller from the Motor Batteries  
Using a Backup Battery  
To ensure that the controller will always be operational, regardless of the charge left in the  
main battery, it is recommended to add a 12V backup battery connected as shown in  
Battery  
Power Cables  
Power Control  
Wire  
Motor  
Cables  
-
Motor2  
Motor1  
Fuse  
+
On  
Off  
-
+
Controller  
12V to 40V  
12V  
Motor Battery  
Controller  
Battery  
FIGURE 11. Power wiring using a two-battery system  
AX2500/2850 Motor Controller Users Manual  
29  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Connecting Power and Motors to the Controller  
Make sure that your motors have their wires isolated from the motor casing. Some  
motors, particularly automotive parts, use only one wire, with the other connected  
to the motors frame.  
If you are using such a motor, make sure that it is mounted on isolators and that its  
casing will not cause a short circuit with other motors and circuits which may also  
be inadvertently connected to the same metal chassis.  
Power Fuses  
For low Amperage applications (below 30A per motor), it is recommended that a fuse be  
inserted in series with the main battery circuit as shown in the Figure 11 above.  
The fuse will be shared by the two output stages and therefore must be placed before the  
Y connection to the two power wires.  
Automotive fuses are generally slow and the following values are recommended depend-  
ing on the desired level of protection. It should be noted that the current values listed will  
apply to the sum of the current drawn by each channel. Practically, a fuse will be of limited  
effectiveness. In very high current application (80A or more per channel), it will simply not  
be possible to find a fuse with the necessary Amps rating and speed needed to provide  
adequate protection. In such situation, the fuse may be just as well omitted keeping in  
mind that the controllers current limiting circuit may not be able to protect it against short  
circuits and other abnormal situations.  
TABLE 5. Fuse selection table  
Desired Current Protection (total for  
Channel 1 + Channel 2)  
Fuse  
100A  
80A  
60A  
50A  
40A  
35A  
120A  
100A  
80A  
60A  
50A  
40A  
Important Warning  
Fuses are typically slow to blow and will thus allow temporary excess current to flow  
through them for a time (the higher the excess current, the faster the fuse will blow).  
This characteristic is desirable in most cases, as it will allow motors to draw surges  
during acceleration and braking. However, it also means that the fuse may not be  
able to protect the controller.  
Wire Length Limits  
The AX2500/2850 regulates the output power by switching the power to the motors On  
and Off at high frequencies. At such frequencies, the wiresinductance produces undesir-  
able effects such as parasitic RF emissions, ringing and overvoltage peaks. The controller  
30  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Electrical Noise Reduction Techniques  
has built-in capacitors and voltage limiters that will reduce these effects. However, should  
the wire inductance be increased, for example by extending the wire length, these effects  
will be amplified beyond the controllers capability to correct them. This is particularly the  
case for the main battery power wires (thick red and black cables).  
Important Warning  
Avoid extending the black and red Motor Power wires beyond their original length as  
the added inductance may cause damage to the controller when operating at high  
currents. Try extending the motor wires instead since the added inductance is less  
harmful on this side of the controller.  
Electrical Noise Reduction Techniques  
As discussed in the above section, the AX2500/2850 uses fast switching technology to  
control the amount of power applied to the motors. While the controller incorporates sev-  
eral circuits to keep electrical noise to a minimum, additional techniques can be used to  
keep the noise low when installing the AX2500/2850 in an application. Below is a list of  
techniques you can try to keep noise emission low:  
Keep wires as short as possible  
Loop wires through ferrite beads  
Add snubber R/C circuit at motor terminals  
Keep controller, wires and battery enclosed in metallic body  
Power Regeneration Considerations  
When a motor is spinning faster than it would normally at the applied voltage, such as  
when moving downhill or deccelerating, the motor acts like a generator. In such case, the  
current will flow in the opposite direction, back to the power source.  
It is therefore essential that the AX2500/2850 be connected to rechargeable batteries. If a  
power supply is used instead, during regeneration the current will attempt to flow back in  
the power supply potentially damaging it and/or the controller.  
Regeneration can also cause potential problems if the battery is disconnected while the  
motors are still spinning. In such a case, and depending on the command level applied at  
that time, the regenerated current will attempts to flow back to the battery but since none  
is present, the voltage will rise to potentially unsafe levels. The AX2500/2850 includes an  
overvoltage protection circuit to prevent damage to the output transistors (see Overvolt-  
Important Warning  
Use the AX2500/2850 only with a rechargeable battery as supply to the Motor Power  
wires (thick black and red wires). If a transformer or power supply is used, damage to  
the controller and/or power supply may occur during regeneration. See Using the  
AX2500/2850 Motor Controller Users Manual  
31  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Connecting Power and Motors to the Controller  
Important Warning  
Avoid switching Off or cutting open the main power cables (thick black and red  
wires) while the motors are spinning. Damage to the controller may occur.  
Overvoltage Protection  
The AX2500/2850 includes a battery voltage monitoring circuit that will cause the output  
transistors to be turned Off if the main battery voltage applied on the thick red and black  
wires rises above 43V.  
This protection is designed to prevent the voltage created by the motors during regenera-  
tion to be amplifiedto unsafe levels by the switching circuit.  
The controller will resume normal operation when the measured voltage drops below 43V.  
Undervoltage Protection  
In order to ensure that the power MOSFET transistors are switched properly, the AX2500/  
2850 monitors the internal 12V power supply that is used by the MOSFET drivers. If the  
internal voltage drops below 10V, the controllers output stage is turned Off. The rest of the  
controllers electronics, including the microcomputer will remain operational as long as the  
internal voltage is above 8V.  
The internal voltage will be the output of the DC/DC converter which will be a solid 12V as  
long as either of the main battery or backup voltage is higher than 12.5V. If the main and  
backup voltage drop below 12.V, the DC/DC converters output will be approximately 0.5V  
lower than the higher of the main or backup voltage.  
Using the Controller with a Power Supply  
Using a transformer or a switching power supply is possible but requires special care as  
the current will want to flow back from the motors to the power supply during regenera-  
tion. As discussed in Power Regeneration Considerationson page 31, if the supply is not  
able to absorb and dissipate regenerated current, the voltage will increase until the over-  
voltage protection circuit cuts off the motors. While this process should not be harmful to  
the controller, it may be to the power supply, unless one or more of the protective steps  
below are taken:  
Use a power supply that will not suffer damage in case that a voltage is applied at  
its output that is higher than the transformers own output voltage. This information  
is seldom published in commercial power supplies, so it is not always possible to  
obtain positive reassurance that the supply will survive such a condition.  
Avoid deceleration that is quicker than the natural deceleration due to the friction in  
the motor assembly (motor, gears, load). Any deceleration that would be quicker  
than natural friction means that braking energy will need to be taken out from the  
system, and cause a reverse current flow and voltage rise. See Programmable  
Place a battery in parallel with the power supply output. This will provide a reservoir  
into which regeneration current can flow. It will also be very helpful for delivering  
32  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
         
Using the Controller with a Power Supply  
high current surges during motor acceleration, making it possible to use a lower  
current power supply. Battery mounted in this way should be connected for the first  
time only while fully charged and should not be allowed to discharge. The power  
supply will be required to output unsafe amounts of current if connected directly to  
a discharged battery.  
Place a resistive load in parallel with the power supply, with a circuit to enable that  
load during regeneration. This solution is more complex but will provide a safe path  
for the braking energy into a load designed to dissipate it. To prevent current from  
flowing from the power supply into the load during normal operation, an active  
switch would enable the load when the voltage rises above the nominal output of  
the power supply.  
AX2500/2850 Motor Controller Users Manual  
33  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Connecting Power and Motors to the Controller  
34  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Basic Operation  
SECTION 4  
General  
Operation  
This section discusses the controllers normal operation in all its supported operating  
modes.  
Basic Operation  
The AX2500/2850s operation can be summarized as follows:  
Receive commands from a radio receiver, joystick or a microcomputer  
Activate the motors according to the received command  
Perform continuous check of fault conditions and adjust actions accordingly  
Multiple options are available for each of the above listed functions which can be combined  
to produce practically any desired mobile robot configuration.  
Input Command Modes  
The controller will accept commands from one of the following sources  
R/C radio  
Serial data (RS232)  
Analog signal (0 to 5V)  
A detailed discussion on each of these modes and the available commands is provided in  
The controllers factory default mode is R/C radio. The mode can be changed using any of  
AX2500/2850 Motor Controller Users Manual  
35  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
General Operation  
Selecting the Motor Control Modes  
For each motor, the AX2500/2850 supports multiple motion control modes. The controllers  
factory default mode is Open Loop Speed control for each motor. The mode can be  
changed using any of the methods described in Programming using built-in Switches and  
Open Loop, Separate Speed Control  
In this mode, the controller delivers an amount of power proportional to the command  
information. The actual motor speed is not measured. Therefore the motors will slow  
down if there is a change in load as when encountering an obstacle and change in slope.  
This mode is adequate for most applications where the operator maintains a visual contact  
with the robot.  
In the separate speed control mode, channel 1 commands affect only motor 1, while chan-  
nel 2 commands affect only motor 2. This is illustrated in Figure 12 below.  
Controller  
FIGURE 12. Effect of commands to motors examples in  
separate mode  
Open Loop, Mixed Speed Control  
This mode has the same open loop characteristics as the previously described mode. How-  
ever, the two commands are now mixed to create a tank-like steering when one motor is  
used on each side of the robot: Channel 1 is used for moving the robot in the forward or  
reverse direction. Channel 2 is used for steering and will change the balance of power on  
each side to cause the robot to turn.  
Figure 13 below illustrates how the mixed mode works.  
36  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
         
Selecting the Motor Control Modes  
Controller  
FIGURE 13. Effect of commands to motors examples in  
mixed mode  
Closed Loop Speed Control  
In this mode, illustrated in Figure 15, an analog tachometer or an optical encoder (AX2850  
only) is used to measure the actual motor speed. If the speed changes because of changes  
in load, the controller automatically compensates the power output. This mode is preferred  
in precision motor control and autonomous robotic applications. Details on how to wire the  
Closed Loop Speed control operation is described in Closed Loop Speed Modeon  
Tachometer or  
Optical Encoder (AX2850 & AX3500 only)  
Speed Feedback  
FIGURE 14. Motor with tachometer or Encoder for Closed Loop Speed operation  
Close Loop Position Control  
In this mode, illustrated in Figure 15, the axle of a geared down motor is coupled to a  
potentiometer that is used to compare the angular position of the axle versus a desired  
position. This AX2500/2850 feature makes it possible to build ultra-high torque jumbo ser-  
vosthat can be used to drive steering columns, robotic arms, life-size models and other  
heavy loads. Details on how to wire the position sensing potentiometers and operating in  
AX2500/2850 Motor Controller Users Manual  
37  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
General Operation  
Position Feedback  
Position Sensor  
Gear box  
FIGURE 15. Motor with potentiometer assembly for Position operation  
Current Limit Settings  
The AX2500/2850 has current sensors at each of its two output stages. Every 16 ms, this  
current is measured and a correction to the output power level is applied if higher than the  
user preset value.  
The current limit may be set using the controllers switches or the supplied PC utility. Using  
the switches, 7 limits may be selected as shown in the table below.  
TABLE 6. Current limit settings using the switches  
Setting  
Continuous High Amps  
0
30A  
45A  
60A  
75A  
90A  
105A  
120A  
1
2
3
4
5 - default  
6
Using the PC utility is it possible to set the limit with a 1A granularity from 15A to 120A  
During normal operation, current limiting is further enhance by the techniques described in  
the following sections.  
Continuous and Extended Current Limitation  
The AX2500/2850 features active current limitation with a Smart Amps control algorithm.  
This capability ensures that the controller will be able to work safely with practically all  
motor types and will adjust itself automatically for the various load conditions.  
38  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Temperature-Based Current Limitation  
You can select one of 7 current limit settings based on your robots component capabilities  
(motors, battery, wiring), up to the controllers own limit. The available current limit values  
are shown in the table below.  
TABLE 7. Continuous vs. Extended Amp limits table  
Setting  
Continuous High Amps  
Extended Safe Amps  
0
1
2
3
4
5
6
30A  
45A  
60A  
75A  
90A  
105A  
120A  
30A  
45A  
60A  
75A  
80A  
80A  
80A  
The controller will assume that any consumption above the safe continuous amps value  
will cause more heat to be generated than can be safely dissipated. The controller will  
keep an internal total of the estimated heat balance and will begin gradually reducing the  
output power when a maximum threshold has been reached. The higher the current is over  
the Continuous Safe Amps limit, the quicker it will reach the maximum threshold.  
In practice, assuming the maximum Amps limit setting (120A), this means that the control-  
ler will allow up to 1 minute of operation at 100A or 15 seconds at 120A. When the control-  
ler runs below the Continuous Safe Amps limit, the controller will assume that it is cooling  
off and will allow for higher amp consumption at a later time. In practical robot maneuver-  
ing situations where stop and go is very common, the controller will be capable of deliver-  
ing the maximum Momentary High Amps whenever it is needed.  
Temperature-Based Current Limitation  
The AX2500/2850 also features active current limitation with a SmartAmps control algo-  
rithm. On the AX2500/2850, this current limiting is based on the actual measured tempera-  
ture of the heat sink, near the mounting point of the Power MOSFET transistors inside the  
controller. While the temperature is below 60oC, the controller will deliver up to 120A Con-  
tinuous Amps. For every degree of temperature rise above that threshold value, the limit is  
reduced from this absolute maximum amount. Furthermore you can select one of 7 cur-  
rent limit settings based on your robots component capabilities (motors, battery, wiring),  
up to the controllers own limit. The current limit that is applied at any given time is the  
lesser value of your selected value, the computed limit using the SmartAmps algorithm  
and the maximum Amps the controller is allowed to deliver at its current temperature  
point. This capability ensures that the controller will be able to work safely with practically  
all motor types and will adjust itself automatically for the various load and environmental  
conditions. The time it takes for the heat sinks temperature to rise depends on the current  
output, ambient temperature, and available air flow (natural or forced).  
Note that the measured temperature is on the inside of the heat sink and will rise and fall  
faster than the outside surface.  
AX2500/2850 Motor Controller Users Manual  
39  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
General Operation  
Surge Current Protection  
During exceptionally high load conditions such as motor stalls, the motors may make  
demands on the controller in excess of several hundred Amps. The current limiting fea-  
tures described above will automatically reduce the power output so that the consumption  
does not exceed the maximum limit.  
For example, if the motor attempts to draw 1000A, the controller will throttle back the  
power to 10% so that the average consumption becomes 100A.  
However, the controllers MOSFET transistors will still see these 1000A pulses during the  
10% ON time of the Pulse Width Modulation. This level of current would be damaging to  
the controller.  
Therefore, the AX2500/2850s will continuously compute the peak current consumption as  
the average measured Amps divided by the PWM ratio and automatically reduce the  
power output if the computed peak Amps exceeds 250A.  
This current protection scheme operates in addition to the Continuous Current Limitation  
described above.  
Regeneration Current Limiting  
The AX2500/2850s current sensor is capable of measuring current in the reverse flow  
(regeneration). Using this capability, the controller will automatically relax the braking effect  
of the power output stage to keep the regeneration current within safe values. Because of  
the controllers high current handling capabilities, this regeneration mechanism activates  
only when abrupt deceleration are applied to high-inertia, ultra-low impedance motors.  
Programmable Acceleration  
When changing speed command, the AX2500/2850 will go from the present speed to the  
desired one at a user selectable acceleration. This feature is necessary in order to minimize  
the surge current and mechanical stress during abrupt speed changes.  
This parameter can be changed using the controllers front switches or using serial com-  
mands. When configuring the controller using the switches (see Configuring the Control-  
ler using the Switcheson page 153), acceleration can be one of 6 available preset values,  
from very soft(0) to very quick (6). The AX2500/2850s factory default value is medium soft  
(2).  
When using the serial port, acceleration can be one of 24 possible values, selectable using  
the Roborun utility, or entering directly a value in the MCUs configuration EEPROM.  
Table 8 shows the corresponding acceleration for all Switch and RS232 settings.  
40  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Programmable Acceleration  
Numerically speaking, each acceleration value corresponds to a fixed percentage speed  
increment, applied every 16 milliseconds. The value for each setting is shown in the table  
below.  
TABLE 8. Acceleration setting table  
Acceleration  
Setting Using  
RS232  
Acceleration  
Setting Using  
Switches  
%Acceleration  
per 16ms  
Time from 0 to  
max speed  
30 Hex  
20 Hex  
10 Hex  
00 Hex  
31 Hex  
21 Hex  
11 Hex  
01 Hex  
32 Hex  
22 Hex  
12 Hex  
02 Hex  
33 Hex  
23 Hex  
13 Hex  
03 Hex  
34 Hex  
24 Hex  
14 Hex  
04 Hex  
35 Hex  
25 Hex  
15 Hex  
05 Hex  
0.78%  
1.56%  
2.05 seconds  
1.02 seconds  
0.68 second  
0.51 second  
0.41 second  
0.34 second  
0.29 second  
0.26 second  
0.23 second  
0.20 second  
0.19 second  
0.17 second  
0.16 second  
0.15 second  
0.14 second  
0.128 second  
0.120 second  
0.113 second  
0.107 second  
0.102 second  
0.097 second  
0.093 second  
0.089 second  
0.085 second  
2.34%  
3.13%  
3.91%  
4.69%  
5.47%  
6.25%  
7.03%  
0
1
-
-
7.81%  
-
8.59%  
9.38%  
10.16%  
10.94%  
11.72%  
12.50%  
13.28%  
14.06%  
14.84%  
15.63%  
16.41%  
17.19%  
17.97%  
18.75%  
2 (default)  
-
-
-
3
-
-
-
4
-
-
-
5
When configuring the acceleration parameter using the Roborun utility, for additional accel-  
eration steps can be selected between the six ones selectable using the switch, extending  
the slowest acceleration to 2.04 seconds from 0 to max speed. See Power Settingson  
page 164 for details on how to configure this parameter using Roborun.  
Important Warning  
Depending on the loads weight and inertia, a quick acceleration can cause consider-  
able current surges from the batteries into the motor. A quick deceleration will cause  
an equally large, or possibly larger, regeneration current surge. Always experiment  
with the lowest acceleration value first and settle for the slowest acceptable value.  
AX2500/2850 Motor Controller Users Manual  
41  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
General Operation  
Command Control Curves  
The AX2500/2850 can also be set to translate the joystick or RS232 motor commands so  
that the motors respond differently whether the joystick is near the center or near the  
extremes.  
The controller can be configured to use one of 5 different curves independently set for  
each channel.  
The factory default curve is a linearstraight line, meaning that after the joystick has  
moved passed the deadband point, the motors speed will change proportionally to the joy-  
stick position.  
Two exponentialcurves, a weak and a strong, are supported. Using these curves, and  
after the joystick has moved past the deadband, the motor speed will first increase slowly,  
increasing faster as the joystick moves near the extreme position. Exponential curves allow  
better control at slow speed while maintaining the robots ability to run at maximum speed.  
Two logarithmiccurves, a weak and a strong, are supported. Using these curves, and  
after the joystick has moved past the deadpoint, the motor speed will increase rapidly, and  
then increase less rapidly as the joystick moves near the extreme position.  
The graph below shows the details of these curves and their effect on the output power as  
the joystick is moved from its center position to either extreme. The graph is for one joy-  
stick only. The graph also shows the effect of the deadband setting.  
% Forward  
(Motor Output)  
100  
80  
Logarithmic Strong  
Logarithmic Weak  
60  
Linear (default)  
40  
Exponential Weak  
Exponential Strong  
20  
% Command Input  
0
20  
Deadband  
40  
60  
80  
100  
% Reverse  
FIGURE 16. Exponentiation curves  
42  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Left / Right Tuning Adjustment  
The AX2500/2850 is delivered with the linearcurves selected for both joystick channels.  
To select different curves, you will need to change the values of E(channel 1) and F”  
(channel 2) according to the table below. Refer to the chapter Configuring the Controller  
page 159 for instructions on how to program parameters into the controller.  
TABLE 9. Exponent selection table  
Exponentiation Parameter Value  
Selected Curve  
E or F = 0  
E or F = 1  
E or F = 2  
E or F = 3  
E or F = 4  
Linear (no exponentiation) - default value  
strong exponential  
normal exponential  
normal logarithmic  
strong logarithmic  
Left / Right Tuning Adjustment  
By design, DC motors will run more efficiently in one direction than the other. In most situ-  
ations this is not noticeable. In others, however, it can be an inconvenience. When operat-  
ing in open loop speed control, the AX2500/2850 can be configured to correct the speed in  
one direction versus the other by as much as 10%. Unlike the Joystick center trimming tab  
that is found on all R/C transmitters, and which is actually an offset correction, the Left/  
Right Adjustment is a true multiplication factor as shown in Figure 17  
% Forward  
% Forward  
(Motor Output)  
100  
(Motor Output)  
0%  
-3%  
100  
-5.25%  
80  
60  
40  
20  
80  
60  
40  
20  
% Command Input  
0
0
20  
20  
40  
60  
80  
40  
60  
80  
5.25%  
3%  
100  
100  
% Reverse  
% Reverse  
0%  
% Forward  
(Motor Output)  
FIGURE 17. Left Right adjustment curves  
The curves on the left show how a given forward direction command value will cause the  
motor to spin 3 or 5.25% slower than the same command value applied in the reverse  
direction. The curves on the right show how the same command applied to the forward  
AX2500/2850 Motor Controller Users Manual  
43  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
General Operation  
direction will case the motor to spin 3 to 5.25% faster than the same command applied in  
the reverse direction. Note that since the motors cannot be made to spin faster than  
100%, the reverse direction is the one that is actually slowed down.  
In applications where two motors are used in a mixed mode for steering, the Left/Right  
Adjustment parameter may be used to make the robot go straight in case of a natural ten-  
dency to steer slightly to the left or to the right.  
The Left/Right adjustment parameter can be set from -5.25% to +5.25% in seven steps of  
troller Parameterson page 162 for details on how to adjust this parameter.  
The Left/Right adjustment is performed in addition to the other command curves described  
in this section. This adjustment is disabled when the controller operates in any of the sup-  
ported closed loop modes.  
TABLE 10. Left/Right Adjustment Parameter selection  
Parameter Value  
Speed Adjustment  
Parameter Value  
Speed Adjustment  
None (default)  
0.75%  
7
0
1
2
3
4
5
6
-5.25%  
-4.5%  
-3.75%  
-3%  
8
9
1.5%  
10  
11  
12  
12  
14  
2.25%  
3%  
-2.25%  
-1.5%  
3.75%  
4.5%  
-0.75%  
5.25%  
Emergency Shut Down Using Controller Switches  
In case of emergency, it is possibly to cause the controller to cut off the power to the  
motors by depressing the Program and Set buttons simultaneously as shown in the figure  
below. The controller will stop immediately without delay.  
44  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Emergency Stop using External Switch  
Program Set  
Reset  
Press the two buttons  
simultaneously to cause an  
emergency stop  
FIGURE 18. Activating an Emergency Stop  
After and Emergency Stop condition, the controller must be reset or powered Off  
and On to resume normal operation.  
Emergency Stop using External Switch  
An external switch can be added to the AX2500/2850 to allow the operator to stop the con-  
trollers output in case of emergency. This controller input can be configured as the  
Inverteddetection instead of Emergency Stop. The factory default for this input is No  
Action.  
The switch connection is described in Connecting Switches or Devices to EStop/Invert  
Inputon page 56. The switch must be such that it is in the open state in the normal situa-  
tion and closed to signal an emergency stop command.  
After and Emergency Stop condition, the controller must be reset or powered Off  
and On to resume normal operation.  
Inverted Operation  
For robots that can run upside-down, the controller can be configured to reverse the motor  
commands using a gravity activated switch when the robot is flipped. This feature is  
enabled only in the mixed mode and when the switch is enabled with the proper configura-  
tion of the Input switch functionparameter. See Programmable Parameters Liston  
The switch connection is described in Connecting Switches or Devices to EStop/Invert  
Inputon page 56. The switch must be such that it is in the open state when the robot is in  
the normal position and closed when inverted. When the status of the switch has changed,  
the controller will wait until the new status has remained stable for 0.5s before acknowl-  
edging it and inverting the commands. This delay is to prevent switch activation triggered  
by hits and bounces which may cause the controller to erroneously invert the commands.  
AX2500/2850 Motor Controller Users Manual  
45  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
General Operation  
Special Use of Accessory Digital Inputs  
The AX2500/2850 includes two general purpose digital inputs identified as Input E and  
Input F. On the AX2850, input E is disabled. The location of these inputs on the DB15 con-  
nector can be found in the section I/O List and Pin Assignmenton page 52, while the  
electrical signal needed to activate them is shown on Connecting Switches or Devices to  
By default, these inputs are ignored by the controller. However, the AX2500/2850 may be  
configured to cause either of the following actions:  
Activate the buffered Output D (Output D is not available when Encoder module is  
installed)  
or Turn Off/On the power MOSFET transistors  
These alternate modes can only be selected using the Roborun Utility (see Controls Set-  
tingson page 163. Each of these modes is detailed below.  
Using the Inputs to Activate the Buffered Output  
When this setting is selected, the buffered Output C will be On when the Input line is  
pulled to Ground (0V). The Output will be Off when the Input is pulled high.  
This function makes it possible to drive solenoids or other accessories up to 2A at 24V  
using a very low current switch, for example.  
Using the Inputs to turn Off/On the Power MOSFET transistors  
When this setting is selected, the controllers Power MOSFET transistors will be active,  
and the controller will be operating normally, only when the input is pulled to ground.  
When the input is pulled high, all the power MOSFETs are turned Off so that the motors  
are effectively disconnected from the controller.  
This function is typically used to create a dead man switchwhen the controller is driven  
using an analog joystick. The motors will be active only while the switch is depressed. If  
the switch is left off for any reason, the motors will be disconnected and allowed to free-  
wheel rather than coming to an abrupt stop.  
Self-Test Mode  
The AX2500/2850 incorporates a simple Self-Test mode that performs the following func-  
tions:  
Display the software revision number on the LED display  
Ramp each motor up and down in both directions  
Internal parameters on the serial port output  
The Self Test mode can be conveniently initiated using only the controllers switches so  
that no radio or computer is needed.  
To enter the Self Test mode, press and hold the Set button while resetting or powering up  
the controller.  
46  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
               
Self-Test Mode  
After a few seconds, the LEDs will display a sequence of two numerical digits and an  
optional letter separated by dashes as shown in the examples below.  
= Software version 1.7  
FIGURE 20. Press and hold Setto display version number and enter self-test  
After these digits are displayed, the controller will attempt to power the motors. Motor 1  
will be ramped from stop to full speed forward, to full speed reverse and back to stop.  
Then the same operation will repeat on motor 2. After both motors have completed their  
ramps, the software revision will be displayed again and the motors will be ramped again.  
This sequence will repeat itself indefinitely until the controller is powered off or reset.  
While in the Self Test mode, the AX2500/2850 will continuously send a string of characters  
on the RS232 output line. This string will contain 12 or 13 two-digits hexadecimal number  
representing the 13 following operating parameters.  
Captured R/C Command 1 and 2  
Power Applied to Controllers output stage  
Values applied to Analog inputs 1 and 2  
Amps on channel 1 and 2  
Internal Heat Sink temperatures 1 and 2  
Main Battery voltage  
Internal 12V voltage  
Encoder Speed or Position if module is installed  
The entire string is repeated every 208 or 224 milliseconds (depending whether the  
encoder module is present) with the latest internal parameter values. This information can  
be logged using the Roborun Utility (see Viewing and Logging Data in Analog and R/C  
The string and data format is described in Analog and R/C Modes Data Logging String For-  
Important Warning  
Disconnect the Motor Power (thick red wires) from the battery and power the con-  
troller by applying 12V on the Power Control input if you do not wish the motors to  
be activated while in Self Test mode.  
This could be the case if you only wish to use the Self Test sequence to read the software  
revision number or to monitor the joystick capture.  
AX2500/2850 Motor Controller Users Manual  
47  
Download from Www.Somanuals.com. All Manuals Search And Download.  
General Operation  
48  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AX2500/2850 Connections  
SECTION 5  
Connecting  
Sensors and  
Actuators to  
Input/Outputs  
This section describes the various inputs and outputs and provides guidance on how to  
connect sensors, actuators or other accessories to them.  
AX2500/2850 Connections  
The AX2500/2850 uses a set of power wires (located on the back of the unit) and a DB15  
connector for all necessary connections. The diagram on the figure below shows a typical  
wiring diagram of a mobile robot using the AX2500/2850 controller.  
The wires are used for connection to the batteries and motors and will typically carry large  
current loads. Details on the controllers power wiring can be found at Connecting Power  
The DB15 connector is used for all low-voltage, low-current connections to the Radio,  
Microcontroller, sensors and accessories. This section covers only the connections to sen-  
sors and actuators.  
For information on how to connect the R/C radio or the RS232 port, see R/C Operation”  
AX2500/2850 Motor Controller Users Manual  
49  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Connecting Sensors and Actuators to Input/Outputs  
2
1
3
4
3
t
t
e
es  
R
t
e
S
5
m
gra  
o
Pr  
7
9
8
6
1- DC Motors  
5- Controller  
2- Optional sensors:  
6- R/C Radio Receiver, microcomputer, or  
wireless modem  
- Tachometers (Closed loop Speed mode)  
- Potentiometers (Servo mode)  
- Optical Encoder (AX2850 only - all closed  
loop modes)  
7- Command: RS-232, R/C Pulse  
8- Miscellaneous I/O  
9- Running Inverted, or emergency stop  
switch  
3- Motor Power supply wires  
4- Power Control wire  
FIGURE 21. Typical controller connections  
50  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AX2500/2850s Inputs and Outputs  
AX2500/2850s Inputs and Outputs  
In addition to the RS232 and R/C channel communication lines, the AX2500/2850 includes  
several inputs and outputs for various sensors and actuators. Depending on the selected  
operating mode, some of these I/Os provide feedback and/or safety information to the con-  
troller.  
When the controller operates in modes that do not use these I/O, these signals become  
available for user application. Below is a summary of the available signals and the modes in  
which they are used by the controller or available to the user.  
TABLE 11. AX2500/2850 I/O functions  
Signal  
I/O type  
2A Digital Output User  
defined  
User  
Use  
Activated  
Out C  
Always active. Activated using R/C channel 3 (R/C  
mode), or serial command (RS232 mode)  
Out D  
Inp F  
Low Current  
Always active. Activated using R/C channel 3 (R/C  
mode), or serial command (RS232 mode) - (Not  
available on AX2850)  
Digital Output  
defined  
Digital Input  
User  
Active in RS232 mode only. Read with serial com-  
mand (RS232)  
defined  
Activate  
When Input is configured to drive Output C  
Output C  
Turn FETs  
On/Off  
When Input is configured as dead man switch”  
input  
Inp E  
Digital Input  
Digital Input  
Same as Input F - (Not available on AX2850)  
EStop/Invert  
Emer-  
When Input is configured as Emergency Stop  
gency stop  
switch input.  
Invert  
Controls  
When Input is configured as Invert Controls  
switch input.  
User  
defined  
When input is configured as general purpose.  
Read with serial command (RS232).  
Sensor 1  
Analog Input  
Tachome-  
ters input  
When Channel 1 is configured in Closed Loop  
Speed Control  
Position  
sensing  
When Channel 1 is configured in Closed Loop  
Position Control  
Tempera-  
ture sensor  
When Channel 1 is configured is Open Loop  
Speed Control and Motor Temperature protection  
is enabled  
User  
defined  
When Channel 1 is configured as Open Loop  
Speed Control and Temperature protection is dis-  
abled. Read with serial command (RS232).  
Sensor 2  
Analog Input  
Same as Sensor 1  
AX2500/2850 Motor Controller Users Manual  
51  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Connecting Sensors and Actuators to Input/Outputs  
I/O List and Pin Assignment  
The figure and table below lists all the inputs and outputs that are available on the AX2500/  
2850.  
9
15  
8
Pin1  
FIGURE 22. Controllers DB15 connector pin numbering  
TABLE 12. DB15 connector pin assignment  
Pin  
Number  
Wire  
Color*  
Input or  
Output  
Signal  
Description  
1 and 9  
Orange  
Output  
Output C  
2A Accessory Output C  
RS232 Data Logging Output  
RS232 Data Out  
R/C: RS232 data  
RS232: Data Out  
Analog: RS232 Out  
R/C: Ch 1  
2
White  
Output  
RS232 Data Logging Output  
R/C radio Channel 1 pulses  
RS232 Data In (from PC/MCU)  
Unused  
3
4
Input  
Input  
RS232: Data In  
Analog: Unused  
R/C: Ch 2  
R/C radio Channel 2 pulses  
Digital Input F in RS232 mode  
Controller ground (-)  
Purple  
Black  
Ana/RS232: Input F  
Ground  
5 and 13  
Power Out  
Power In  
Power In  
6
7
Ground  
Connect to pin 5**  
+5V  
Connect to pin 14**  
R/C: Ch 3  
R/C radio Channel 3 pulses - (Not avail-  
able on AX2850)  
8
Gray  
Input  
Input E  
Accessory input E in RS232 mode  
52  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connecting devices to Output C  
TABLE 12. DB15 connector pin assignment  
Pin  
Number  
Wire  
Color*  
Input or  
Output  
Signal  
Description  
RC/RS232: Ana in 2  
Channel 2 speed, position or temp  
input  
10  
11  
Green  
Blue  
Analog in  
Analog in  
Analog: Command 2  
RC/RS232: Ana in 1  
Analog command for channel 2  
Channel 1 speed, position or temp  
input  
Analog: Command 1  
Output D  
Analog command for channel 1  
12  
Yellow  
Output  
Low Current Accessory Output D -  
(Not available on AX2850)  
14  
15  
Red  
Power Out  
Input  
+5V  
+5V Power Output (100mA max.)  
Brown  
Input EStop/Inv  
Emergency Stop or Invert Switch input  
*The wire colors are those used by Roboteq on our prefabricated cables. It is recom-  
mended you use these colors for consistency.  
**These connections should only be done in RS232 mode or R/C mode with radio pow-  
ered from the controller. Otherwise connect to radio battery.  
Connecting devices to Output C  
Output C is a buffered, Open Drain MOSFET output capable of driving over 2A at up to 24V.  
The diagrams on Figure 23 show how to connect a light or a relay to this output:  
Relay, Valve  
Motor, Solenoid  
or other Inductive Load  
Lights, LEDs, or any other  
non-inductive load  
+
+
-
5 to  
24V  
DC  
5 to  
24V  
DC  
AX2500 Internal  
MOSFET  
AX2500 Internal  
MOSFET  
Output C 1,9  
Ground 5  
Output C 1,9  
Ground 5  
-
FIGURE 23. Connecting inductive and resistive loads to Output C  
This output can be turned On and Off using the Channel 3 Joystick when in the R/C mode.  
AX2500/2850 Motor Controller Users Manual  
53  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connecting Sensors and Actuators to Input/Outputs  
When the controller is used in RS232 mode, this output can be turned On and Off using  
the !C (On) and !c (Off) command strings. See RS232 Commands Seton page 92 for  
more information.  
Important warning:  
This output is unprotected. If your load draws more than 2A, permanent damage  
may occur to the power transistor inside the controller. A 1A fuse may be used in  
series with the load for increased protection.  
Overvoltage spikes induced by switching inductive loads, such as solenoids or  
relays, will destroy the transistor unless a protection diode is used.  
Connecting devices to Output D  
Output D is a low-current, unbuffered output. When Off, this output will be pulled to  
ground through a 10Kohm resistor. When On, this output will be pulled to around 4.5V  
through that same resistor.  
The D output cannot drive any load directly and requires an external transistor or solid state  
relay to drive high current accessories. Because they are external, the size, voltage, and  
power of these transistors can be selected to best suit a particular need.  
The diagram on Figure 24 shows how to drive a large inductive load using the D output and  
a Power MOSFET widely available at most electronic component distributors. The MOS-  
FET must conduct with a gate voltage of 4V or higher.  
The D output can be toggled On and Off using the Channel 3 Joystick when in the R/C  
mode. See Activating the Accessory Outputson page 83 for more information.  
When the controller is used in RS232 mode, this output can be turned On and Off using  
the !D (On) and !d (Off) command strings. See RS232 Commands Seton page 92 for  
more information.  
Use Diode for Relay, Valve  
Motor, Solenoid  
or other Inductive Load  
+
AX2500 Internal  
5 to  
24V  
DC  
Buffer and Resistor  
IRF1010  
10kOhm  
Output D 12  
-
1MOhm  
Ground 5  
FIGURE 24. Connecting external MOSFET and load to Output D  
54  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connecting Switches or Devices to Input E  
This output is not available on the AX2850 or on the AX2550 with the Encoder Mod-  
ule installed.  
Connecting Switches or Devices to Input E  
Input E is a general purpose, digital input. This input is only active when in the RS232 and  
Analog modes. In R/C mode, this line is used as the radio channel 3 input.  
Input E is a high impedance input with a pull-up resistor built into the controller. Therefore  
it will report an On state if unconnected, and a simple switch as shown on Figure 25 is nec-  
essary to activate it.  
+5V Out 14  
10kOhm  
10kOhm  
Input E 8  
AX2500 Internal  
Buffer and Resistors  
Ground  
5
FIGURE 25. Switch wirings to Input E  
The status of Input E can be read in the RS232 mode with the ?i command string. The con-  
troller will respond with three sets of 2 digit numbers. The status of Input E is contained in  
the first set of numbers and may be 00 to indicate an Off state, or 01 to indicate an On  
state.  
This input is not available on the AX2850 or on the AX2550 with the Encoder Module  
installed.  
Connecting Switches or Devices to Input F  
Input F is a general purpose digital input. This input is only active when in the RS232 mode.  
In R/C mode, this line is used as the radio channel 2 input.  
Input F is an opto-coupled input and requires the opto coupler buffer to be powered for it to  
work. Figure 26 below shows how to wire the buffers power inputs (+5V In, GND In).  
Seen from the outside, Input F is similar to input E, but with a lower impedance of  
10kOhm. If left unconnected, this input will report an Off state. As a result, this input may  
AX2500/2850 Motor Controller Users Manual  
55  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Connecting Sensors and Actuators to Input/Outputs  
be activated by a simple switch connected to +5V and no external resistor, as show in the  
Figure.  
+5V Out 14  
AX2500 Internal  
Buffer equivalent  
Circuit  
+5V In 7  
Input F 4  
10kOhm  
Opto  
GND In 6  
GND Out 5  
FIGURE 26. Switch wiring to Input F  
The status of Input F can be read in the RS232 mode with the ?i command string. The con-  
troller will respond with three sets of 2 digit numbers. The status of Input F is contained in  
the second set of numbers and may be 00 to indicate an Off state, or 01 to indicate an On  
state.  
Connecting Switches or Devices to EStop/Invert Input  
This input is used to connect various switches or devices depending on the selected con-  
troller configuration.  
The factory default for this input is No Action.  
This input can also be configured to be used with an optional invertedsensor switch.  
When activated, this will cause the controls to be inverted so that the robot may be driven  
upside-down.  
When neither Emergency Stop or Inverted modes are selected, this input becomes a gen-  
eral purpose input like the other two described above.  
This input is a high impedance input with a pull-up resistor built into the controller. There-  
fore it will report an On state (no emergency stop, or not inverted) if unconnected. A sim-  
ple switch as shown on Figure 27 is necessary to activate it. Note that to trigger an  
Emergency Stop, or to detect robot inversion this input must be pulled to ground.  
Figure 27 show how to wire the switch to this input.  
56  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Connecting Position Potentiometers to Analog Inputs  
AX2500 Internal  
Buffer and Resistor  
+5V 14  
10kOhm  
Input  
EStop/Inv 15  
Ground 5  
FIGURE 27. Emergency Stop / Invert switch wiring  
The status of the EStop/Inv can be read at all times in the RS232 mode with the ?i com-  
mand string. The controller will respond with three sets of 2 digit numbers. The status of  
the ES/Inv Input is contained in the last set of numbers and may be 00 to indicate an Off  
state, or 01 to indicate an On state.  
Connecting Position Potentiometers to Analog Inputs  
When configured in the Position mode, the controllers analog inputs are used to obtain  
position information from a potentiometer coupled to the motor axle. This feature is useful  
in order to create very powerful servos as proposed in the figure below:  
Position Feedback  
Potentiometer  
Gear box  
FIGURE 28. Motor and potentiometer assembly for position servo operation  
AX2500/2850 Motor Controller Users Manual  
57  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connecting Sensors and Actuators to Input/Outputs  
Connecting the potentiometer to the controller is as simple as shown in the diagram on  
+5V 14  
AX2500 Internal Resistors  
and Converter  
Input Pos 1 11  
or Pos 2 10  
47kOhm  
A/D  
10kOhm  
10kOhm  
47kOhm  
Ground 5  
FIGURE 29. Potentiometer wiring in Position mode  
The potentiometer must be attached to the motor frame so that its body does not move in  
relationship with the motor. The potentiometer axle must be firmly connected to the gear  
box output shaft. The gearbox must be as tight as possible so that rotation of the motor  
translates into direct changes to the potentiometers, without slack, at the gearboxs out-  
put.  
See Closed Loop Position Modeon page 115 for complete details on Position Mode wir-  
ing and operation.  
Important Warning  
Beware that the wrong + and - polarity on the potentiometer will cause the motor to  
turn in the wrong direction and not stop. The best method to figure out the right  
potentiometer is try one way and change the polarity if incorrect. Note that while  
you are doing these tests, the potentiometer must be loosely attached to the  
motors axle so that it will not be forced and broken by the motors uncontrolled  
rotation in case it was wired wrong.  
Connecting Tachometer to Analog Inputs  
When operating in closed loop speed mode, tachometers must be connected to the con-  
troller to report the measured motor speed. The tachometer can be a good quality brushed  
DC motor used as a generator. The tachometer shaft must be directly tied to that of the  
motor with the least possible slack.  
Since the controller only accepts a 0 to 5V positive voltage as its input, the circuit shown in  
Figure 30 must be used between the controller and the tachometer: a 10kOhm potentiom-  
eter is used to scale the tachometer output voltage to -2.5V (max reverse speed) and  
+2.5V (max forward speed). The two 1kOhm resistors form a voltage divider that sets the  
idle voltage at mid-point (2.5V), which is interpreted as the zero position by the controller.  
The voltage divider resistors should be of 1% tolerance or better. To precisely adjust the  
2.5V midpoint value it is recommended to add a 100 ohm trimmer on the voltage divider.  
With this circuitry, the controller will see 2.5V at its input when the tachometer is stopped,  
0V when running in full reverse, and +5V in full forward.  
58  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Connecting External Thermistor to Analog Inputs  
+5V 14  
1kOhm  
AX2500 Internal Resistors  
and Converter  
Max Speed Adjust  
10kOhm pot  
Input Ana 1 11  
47kOhm  
or Ana 2 10  
0 Adjust  
100 Ohm pot  
Tach  
A/D  
10kOhm  
47kOhm  
1kOhm  
Ground 5  
FIGURE 30. Tachometer wiring diagram  
The tachometers can generate voltages in excess of 2.5 volts at full speed. It is important,  
therefore, to set the potentiometer to the minimum value (cursor all the way down per this  
drawing) during the first installation.  
Since in closed loop control the measured speed is the basis for the controllers power out-  
put (i.e. deliver more power if slower than desired speed, less if higher), an adjustment and  
calibration phase is necessary. This procedure is described in Closed Loop Speed Mode”  
Important Warning  
The tachometers polarity must be such that a positive voltage is generated to the  
controllers input when the motor is rotating in the forward direction. If the polarity  
is inverted, this will cause the motor to run away to the maximum speed as soon as  
the controller is powered with no way of stopping it other than pressing the emer-  
gency stop button or disconnecting the power.  
Connecting External Thermistor to Analog Inputs  
Using external thermistors, the AX2500/2850 can be made to supervise the motors tem-  
perature and adjust the power output in case of overheating. Connecting thermistors is  
done according to the diagram show in Figure 31. The AX2500/2850 is calibrated using a  
10kOhm Negative Coefficient Thermistor (NTC) with the temperature/resistance character-  
istics shown in the table below. This 10kOhm thermistor model can be found at the com-  
ponent section of every Radio Shack stores under the product reference 271-110A.  
TABLE 13. Recommended NTC characteristics  
Temp (oC)  
-25  
0
25  
50  
75  
100  
Resistance (kOhm)  
86.39  
27.28  
10.00  
4.16  
1.92  
0.93  
AX2500/2850 Motor Controller Users Manual  
59  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Connecting Sensors and Actuators to Input/Outputs  
+5V 14  
AX2500 Internal Resistors  
and Converter  
10kOhm  
Input Ana 1 11  
47kOhm  
or Ana 2 10  
A/D  
10kOhm  
10kOhm  
NTC  
Thermistor  
47kOhm  
Ground 5  
FIGURE 31. NTC Thermistor wiring diagram  
Thermistor are non-linear devices. Using the circuit described on Figure 31, the controller  
will read the following values (represented in signed binary) according to the temperature.  
100  
50  
0
-50  
-100  
-150  
Temperature in Degrees C  
FIGURE 32. Signed binary reading by controller vs. NTC temperature  
To read the temperature, use the ?p command to have the controller return the A/D con-  
verters value. The value is a signed 8-bit hexadecimal value. Use the chart data to convert  
the raw reading into a temperature value.  
Using the Analog Inputs to Monitor External Voltages  
The analog inputs may also be used to monitor the battery level or any other DC voltage. In  
this mode, the controller does not use the voltage information but merely makes it avail-  
able to the host microcomputer via the RS232 port. The recommended schematic is  
shown in Figure 33.  
60  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Connecting User Devices to Analog Inputs  
To Battery  
+Terminal  
+5V 14  
AX2500 Internal Resistors  
and Converter  
47kOhm  
4.7kOhm  
10  
or 11  
47kOhm  
A/D  
10kOhm  
47kOhm  
Ground 5  
FIGURE 33. Battery voltage monitoring circuit  
Using these resistor values, it is possible to measure a voltage ranging from -5V to +60V  
with a 0.25V resolution. The formula for converting the A/D reading into a voltage value is  
as follows.  
Measured volts = ((controller reading + 128) * 0.255) -5  
Note: The A/D converters reading is returned by the ?p command and is a signed 8-bit  
hexadecimal value. You must add 128 to bring its range from -127/+127 to 0/255.  
Connecting User Devices to Analog Inputs  
The two analog inputs can be used for any other purpose. The equivalent circuit for each  
input is shown in Figure 34. The converter operates with an 8-bit resolution, reporting a  
value of 0 at 0V and 255 at +5V. Care should be taken that the input voltage is always posi-  
tive and does not exceed 5V. The converters intrinsic diodes will clip any negative voltage  
or voltage above 5V, thus providing limited protection. The value of the analog inputs can  
be read through the controllers RS232 port.  
+5V 14  
Input Ana 1 11  
or Ana 2 10  
47kOhm  
A/D  
10kOhm  
47kOhm  
Ground 5  
FIGURE 34. AX2500/2850 Analog Input equivalent circuit  
AX2500/2850 Motor Controller Users Manual  
61  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Connecting Sensors and Actuators to Input/Outputs  
Internal Voltage Monitoring Sensors  
The AX2500/2850 incorporates voltage sensors that monitor the Main Battery voltage and  
the Internal 12V supply. This information is used by the controller to protect it against over-  
voltage and undervoltage conditions (see Overvoltage Protectionon page 32 and Und-  
ervoltage Protectionon page 32). These voltages can also be read from the RS232 serial  
port using the ?e query.  
The returned value are numbers ranging from 0 to 255. To convert these numbers into a  
Voltage figure, the following formulas must be used:  
Measured Main Battery Volts = 55 * Read Value / 256  
Measured Internal Volts = 28.5 * Read Value / 256  
Internal Heatsink Temperature Sensors  
The AX2500/2850 includes temperature sensors making contact with the each of the two  
Heatsink sides of the controller.  
These sensors are used to automatically reduce the maximum Amps that the controller  
can deliver as it overheats. However, the temperature can be read using the RS232 port  
using the ?m query, or during data logging (see Analog and R/C Modes Data Logging  
The analog value that is reported will range from 0 (warmest) to 255 (coldest). Because of  
the non-linear characteristics of NTC thermistors, the conversion from measured value to  
temperature must be done using the correction curve below.  
It should be noted that the temperature is measured inside the controller and that it may  
be temporarily be different than the temperature measured outside the case.  
62  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Temperature Conversion C Source Code  
300  
250  
200  
150  
100  
50  
0
0
0
0
0
0
0
0
0
0
0
0
10  
20  
30  
40  
50  
60  
70  
80  
90  
-4  
-3  
-2  
-1  
10  
11  
12  
13  
14  
15  
Temperature in Degrees C  
FIGURE 35. Analog reading by controller vs. internal heat sink temperature  
Temperature Conversion C Source Code  
The code below can be used to convert the analog reading into temperature. It is provided  
for reference only. Interpolation table is for the internal thermistors.  
int ValToHSTemp(int AnaValue)  
{
// Interpolation table. Analog readings at -40 to 150 oC, in 5o intervals  
int TempTable[39] ={248, 246, 243, 240, 235, 230, 224, 217, 208, 199, 188, 177,  
165, 153, 140, 128, 116, 104,93, 83, 74, 65, 58, 51, 45, 40, 35, 31, 27, 24, 21,  
19, 17, 15, 13, 12, 11, 9, 8};  
int LoTemp, HiTemp, lobound, hibound, temp, i;  
i = 38;  
while (TempTable[i] < AnaValue && i > 0)  
i--;  
if (i < 0)  
i = 0;  
if (i == 38)  
return 150;  
else  
{
LoTemp = i * 5 - 40;  
HiTemp = LoTemp + 5;  
lobound = TempTable[i];  
hibound = TempTable[i+1];  
temp = LoTemp + (5 * ((AnaValue - lobound)*100/ (hibound - lobound)))/100;  
return temp;  
}
}
AX2500/2850 Motor Controller Users Manual  
63  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connecting Sensors and Actuators to Input/Outputs  
64  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Use of the LED Display  
SECTION 6  
Normal and  
Fault Condition  
LED Messages  
This section discusses the meaning of the various messages and codes that may be dis-  
played on the LED display during normal operation and fault conditions.  
Use of the LED Display  
The AX2500/2850 uses a single 7-segment LED display to report a number of operating or  
fault conditions. The type of reported information depends on the controllers operating  
context:  
During normal motor operation:  
Motor direction  
During Parameter Settings  
Selected parameter and its value  
In R/C mode with Radio off  
No control message  
During Error condition  
Error condition (overheat, emergency stop, short circuit)  
During Self-Test mode  
Software revision number  
Motor direction  
AX2500/2850 Motor Controller Users Manual  
65  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Normal and Fault Condition LED Messages  
Motor Direction Status  
When the controller is running, two pairs of LED segments are directly related to com-  
mand informations to the Power Output stage. The position and meaning of the segments  
is shown in the figure below.  
Motor 2  
Direction  
Lit: Forward  
Off: Reverse  
Motor 1  
Direction  
Lit: Forward  
Off: Reverse  
FIGURE 1. Each command bit is wired to 2 LED segments  
Note that the display does not provide Power information. Therefore it is possible that the  
motor be stopped while the display indicates that the direction is forward. In such a situa-  
tion is set to apply the power in the forward direction to the output stage but the motor is  
stopped because the applied power is zero.  
The LED can display a total of 5 patterns summarized in Table 14.  
TABLE 14. Motor Commands and resulting display  
Possible Display Motor 1 Motor 2  
Comment  
Is also displayed when con-  
troller is active with a 0 com-  
mand on each channel (i.e.  
motors at speed 0)  
Forward  
Forward  
Reversed  
Forward  
66  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Fault Messages  
TABLE 14. Motor Commands and resulting display  
Possible Display  
Motor 1  
Motor 2  
Comment  
Forward  
Reversed  
Reversed  
Reversed  
MOSFET Transistors are OFF  
Will occur during Overvolt-  
age or Undervoltage condi-  
tions (see page 32), of if  
Dead-man switch is acti-  
vated (see page 46)  
Motors are freewheeling  
Fault Messages  
The AX2500/2850 uses the LED display to report fault conditions. When these messages  
are displayed, the motors are normally stopped.  
No Control  
This message is displayed in the R/C mode to indicate that no valid radio signal has been  
detected at its inputs, or that radio signal has been lost. When the controller is configured  
in the mixed mode, signals on channel 1 and channel 2 must be present to enable the con-  
troller. When the controller is configured in the separate mode, a signal received on either  
channel will enable the controller. When enabled, the controller will display the normal  
motor status described previously.  
The no controlmessages is displayed using the following sequence of digits.  
FIGURE 36. No Radio signal scrolling message  
AX2500/2850 Motor Controller Users Manual  
67  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Normal and Fault Condition LED Messages  
Emergency Stop  
The Emergency Stopmessage is displayed after the motors have stopped following an  
emergency stop condition triggered by any of the methods described in Figure , Emer-  
sage is displayed using the following sequence of digits.  
FIGURE 37. Emergency Stop scrolling message  
Self-Test Display  
Self test is a special condition that is entered by holding the Program and Set button imme-  
diately after power-on or reset. During self test, the LEDs will display the controllers soft-  
ware revision number by flashing a sequence of digits as shown in the figure below. Then  
the each motor will, in turn, be ramped to maximum forward and maximum reverse. When  
the motors are operating, the LED will display one of the patterns described in Table 14.  
The cycle will repeat indefinitely until the controller is powered Off or reset.  
= Software version 1.7  
= Software version 2.0.c  
FIGURE 38. Example of Software revision number display  
68  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Mode Description  
SECTION 7  
R/C Operation  
This section describes the controllers wiring and functions specific to the R/C radio control  
mode.  
Mode Description  
The AX2500/2850 can be directly connected to an R/C receiver. In this mode, the speed or  
position information is contained in pulses whose width varies proportionally with the joy-  
stickspositions. The AX2500/2850 mode is compatible with all popular brands of R/C  
transmitters. A third R/C channel can be used to control the On/Off state of two outputs  
that may be connected to electrical accessories (valves, lights, weapons,...)  
The R/C mode provides the simplest method for remotely controlling a robotic vehicle: little  
else is required other than connecting the controller to the R/C receiver (using the provided  
cable) and powering it On. For better control and improved safety, the AX2500/2850 can be  
configured to perform correction on the controls and will continuously monitor the trans-  
mission for errors.  
FIGURE 39. R/C radio control mode  
AX2500/2850 Motor Controller Users Manual  
69  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
R/C Operation  
Selecting the R/C Input Mode  
The R/C Input Mode is the factory default setting.  
If the controller has been previously set to a different Input Mode, it will be necessary to  
reset it to the R/C mode using one of the following methods:  
Restoring the factory defaults by pressing and holding the Program and Set but-  
tons while powering on the controller until the LED display flashes  
Setting the Iparameter to the value 0using one of several methods described  
Typical Wiring  
The diagram below shows all the required and optional connections when using the R/C  
mode.  
1 or 2  
DC Motors  
Speed , Position or  
Temperature Sensors (Optional)  
Controller Power  
Control  
Common Power Supply  
for both Motor Channels  
t
e
s
e
R
t
e
S
m
a
r
g
o
r
P
R/C Receiver  
R/C Receiver  
Battery (Optional)  
1 or 2 user  
accessory  
(Optional)  
"Emergency Stop"  
or "Inverted" Switch  
(Optional)  
The required connections are the following:  
a 12V to 40V to Main Battery  
70  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connector I/O Pin Assignment (R/C Mode)  
at least one motor  
optional 12V backup power supply for the controller  
R/C radio  
R/C radio is further detailed n this chapter.  
The optional connections are the following:  
optional 12V backup power supply for the controller  
the speed or position sensors required for closed loop speed or position operation  
1 or 2 electrical accessory (valve, weapon, solenoid, ...)  
thermistor for motor temperature monitoring  
gravity actuated switch for detecting inverted operation  
manual switch for emergency stop  
the R/C receivers battery may also be omitted by using the power output available  
on the controllers connector  
Connector I/O Pin Assignment (R/C Mode)  
9
15  
Pin1  
8
FIGURE 40. Pin locations on the controllers 15-pin connector  
When used in R/C mode, the pins on the controllers DB15 connector are mapped as  
described in the table below  
TABLE 15. Connector pin-out in R/C mode  
Pin  
Number  
Input or  
Output  
Signal  
Description  
1
2
3
Output C  
Output  
Output  
Input  
2A Accessory Output C (same as pin 9)  
Optional. Used for Data Logging  
Channel 1 input pulse (isolated)  
RS232 Out  
R/C Channel 1  
AX2500/2850 Motor Controller Users Manual  
71  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
R/C Operation  
TABLE 15. Connector pin-out in R/C mode  
Pin  
Number  
Input or  
Output  
Signal  
Description  
4
5
6
7
8
R/C Channel 2  
Ground  
Input  
Channel 1 input pulse (isolated)  
Controller ground (-)  
Power  
R/C -  
Power Input  
Power Input  
Input  
R/C Battery input - (isolated)  
R/C Battery input + (isolated)  
R/C +  
R/C Channel 3  
Channel 3 input for On/Off accessories - Not avail-  
able on AX2850.  
9
Output C  
Output  
2A Accessory Output C (same as pin 1)  
Channel 2 speed, position or temp feedback  
Channel 1 speed, position or temp feedback  
10  
11  
12  
Speed/Pos/T 2  
Speed/Pos/T 1  
Output D  
Analog in  
Analog in  
Output  
Low Current Accessory Output D - Not available  
on AX2850.  
13  
14  
15  
Ground  
+5V  
Power  
Controller ground (-)  
Power Output  
Input  
+5V Power Output (100mA max.)  
Emergency Stop or Invert Switch input  
Switch Input  
R/C Input Circuit Description  
The AX2500/2850 includes an optical isolation barrier on the Channel 1 and Channel 2 R/C  
radio inputs. Figure 41 shows an electrical representation of the R/C input circuit. The right  
side is powered from the controllers batteries. The R/C signals 1 and 2 activate a LED  
whose light then triggers the photo transistors on the microcontroller side. The left side of  
the opto isolators include an amplifier and thus need to be powered separately. Notice that  
channel 3 is optional and not opto-isolated.  
Optical isolation is designed to protect the R/C radio from damage that may occur inside  
the controller, and vice-versa. Additionally, the isolation barrier will help prevent some of  
the electrical noisegenerated inside the controller by the Microcontroller and the high  
power switching from reaching and interfering with the radio.  
72  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Supplied Cable Description  
14  
7
Controller  
Power  
Opto-  
Isolators  
Isolator Power  
R/C Channel 1  
3
4
8
6
MCU  
R/C Channel 2  
R/C Channel 3  
Isolator Ground  
5-13  
Controller  
Ground  
FIGURE 41. AX2500/2850 R/C Input equivalent circuit  
Supplied Cable Description  
The AX2500/2850 is delivered with a custom cable that can easily be adapted to operate in  
any of the supported isolated and non isolated modes. The figures below show the cable  
and its wiring diagram  
1
2
3
1
9
8
15  
FIGURE 42. Cable wiring diagram  
AX2500/2850 Motor Controller Users Manual  
73  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
R/C Operation  
.
FIGURE 43. RC connection cable  
The wire loop is used to bring power from the controllers internal power supply to the  
optocouplers and to the RC radio. Leaving the loop untouched causes the controller to  
operate in non-isolated mode, with power flowing into the RC radio. The following sections  
show the various power and isolation modes supported by the controller.  
Cabling to R/C Receiver using Full Opto-Isolation  
Full opto-isolation is achieved when the radios power and ground are totally separated  
from the controllers power and ground.  
Figure 44 shows the cabling of the R/C radio to the controller when full optical isolation is  
required.  
Channel 3: Do not connect  
Channel 2  
3:  
4:  
6:  
7:  
Channel 1 Command Pulses  
Channel 2 Command Pulses  
Radio battery (-) Ground  
Radio battery (+)  
Channel 1  
8
Note: Only one set of black and red  
(battery) wires needs to be brought  
to the connector.  
9
Pin 1  
Cut loop  
15  
FIGURE 44. Channel 1 & 2 wiring using external battery and full optical isolation  
74  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Cabling to R/C Receiver with Partial Opto-Isolation  
The opto isolators must be powered with a 5V supply for their built-in amplifiers to work.  
This power is normally supplied from the R/C radios battery as detailed in the diagram on  
Note that if full optical isolation is required, it is not possible to connect the third R/C  
channel to the radio. Since the 3rd channel is not optoisolated, connecting it to the radio  
will cause the radios ground to be electrically tied to the controller ground, thus breaking  
the optical barrier.  
This wiring, with a separate R/C battery, is the preferred method for connecting the R/C  
radio.  
14  
Controller  
Power  
R/C Radio Power  
7
3
Opto-  
Isolators  
R/C Channel 1  
R/C Channel 2  
Radio  
Battery  
R/C Radio  
4
8
6
MCU  
R/C Radio Ground  
5-13  
Controller  
Ground  
FIGURE 45. Fully opto-isolated connection to R/C radio  
Cabling to R/C Receiver with Partial Opto-Isolation  
This wiring option should be considered only when the Accessory R/C channel (Channel 3)  
is required. Since Channel 3 is directly connected to the AX2500/2850s microcontroller  
without opto coupler, it is necessary to connect the radio and controller grounds together  
to create a common ground reference for the signal. Since the Channel 3 connector has a  
ground wire, this connection will occur when the connector is plugged in the radio. The red  
loop wire must be cut to enable that mode. The radio will be powered from its own sepa-  
rate battery using this wiring scheme.  
By joining the grounds and having the R/C signal connected directly from the radio to the  
controller, the full electrical barrier is lost. However, since the radios +5V and controller  
AX2500/2850 Motor Controller Users Manual  
75  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
R/C Operation  
power voltage are still separate, some protection remains should the controller fail and  
accidentally generate a high voltage on its +5V output.  
Channel 3:  
Channel 2  
3:  
4:  
6:  
7:  
8:  
Channel 1 Command Pulses  
Channel 2 Command Pulses  
Radio battery (-) Ground  
Radio battery (+)  
Channel 1  
Channel 3 Command Pulses  
8
9
Pin 1  
Cut red loop  
15  
FIGURE 46. Wiring when Ch 3 is used with radio powered by its own separate battery  
Figure 46 shows the cabling of the R/C radio to the controller when Channel 3 is used and  
partial optical isolation is desired. Figure 47 shows the equivalent electrical diagram.  
14  
Controller  
Power  
R/C Radio Power  
7
3
Opto-  
Isolators  
R/C Channel 1  
Radio  
Battery  
R/C Channel 2  
R/C Channel 3  
R/C Radio  
4
8
6
MCU  
R/C Radio Ground  
5-13  
Controller  
Ground  
FIGURE 47. Partial opto-isolation with Channel 3 electrical diagram  
Powering the Radio from the controller  
The 5V power and ground signals that are available on the controllers connector may be  
used to power the R/C radio. The wire loop is used to bring the controllers power to the  
the radio as well a for powering the optocoupler stage. Figure 48 below shows the connec-  
tor wiring necessary to do this. Figure 49 shows the equivalent electrical diagram.  
76  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Powering the Radio from the controller  
Channel 3  
Channel 2  
3:  
4:  
6:  
7:  
8:  
Channel 1 Command Pulses  
Channel 2 Command Pulses  
Radio battery (-) Ground  
Radio battery (+)  
Channel 1  
Channel 3 Command Pulses  
8
9
Pin 1  
Wire loop bringing power from  
controller to RC radio and  
to optical isolators  
15  
FIGURE 48. Wiring for powering R/C radio from controller  
14  
Controller  
Power  
R/C Radio Power  
7
Opto-  
Isolators  
R/C Channel 1  
3
R/C Channel 2  
R/C Radio  
4
8
6
MCU  
R/C Channel 3  
R/C Radio Ground  
5-13  
Controller  
Ground  
FIGURE 49. R/C Radio powered by controller electrical diagram  
Important Warning  
Do not connect a battery to the radio when in this mode. The battery voltage will  
flow directly into the controller and cause permanent damage if its voltage is higher  
than 5.5V.  
Notice that in this configuration, the controllers +5V power and ground are connected to  
the floating (opto-isolated) R/C power inputs so that now the radio and the controller are no  
longer optically isolated.  
AX2500/2850 Motor Controller Users Manual  
77  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
R/C Operation  
Losing the optical isolation increase the risks that damage in the controller will reach the  
radio, although these risks remain extremely low. Without optical isolation, the radio is less  
immune to electrical noiseand therefore may operate at a reduced range.  
This mode of operation is the most convenient and is the one wired in the R/C cable deliv-  
ered with the controller.  
Operating the Controller in R/C mode  
In this operating mode, the AX2500/2850 will accept commands from a Radio Control  
receiver used for R/C models remote controls. The speed or position information is com-  
municated to the AX2500/2850 by the width of a pulse from the R/C receiver: a pulse  
width of 1.0 millisecond indicates the minimum joystick position and 2.0 milliseconds indi-  
cates the maximum joystick position. When the joystick is in the center position, the pulse  
should be 1.5ms.  
Note that the real pulse-length to joystick-position numbers that are generated by your R/C  
radio may be different than the ideal 1.0ms to 2.0ms discussed above. To make sure that  
the controller captures the full joystick movement, the AX2500/2850 defaults to the timing  
values shown in Figure 50.  
For best control accuracy, the AX2500/2850 can be calibrated to capture and use your  
radios specific timing characteristics and store them into its internal Flash memory. This is  
done using a simple calibration procedure described on page 82.  
joystick position:  
min  
center max  
1.05ms  
0.45ms  
0.9ms  
R/C pulse timing:  
FIGURE 50. Joystick position vs. pulse duration default values  
The AX2500/2850 has a very accurate pulse capture input and is capable of detecting  
changes in joystick position (and therefore pulse width) as small as 0.4%. This resolution is  
superior to the one usually found in most low cost R/C transmitters. The AX2500/2850 will  
therefore be able to take advantage of the better precision and better control available from  
a higher quality R/C radio, although it will work fine with lesser expensive radios as well.  
Internally, the measured pulse width is compared to the reference minimum, center and  
maximum pulse width values. From this is generated a number ranging from -127 (when  
the joystick is in the min. position), to 0 (when the joystick is in the center position) to +127  
(when the joystick is in the max position). This number is then used to set the motors’  
desired speed or position that the controller will then attempt to reach.  
78  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Reception Watchdog  
For best results, reliability and safety, the controller will also perform a series of correc-  
tions, adjustments, and checks to the R/C commands, as described in the following sec-  
tions.  
Reception Watchdog  
Immediately after it is powered on, if in the R/C mode, the controller is ready to receive  
pulses from the R/C radio and move the motors accordingly.  
If no pulses are present, the motors are disabled, and the controllers display will scroll  
alternatively the letters no ctrlas shown in Figure 51 below.  
FIGURE 51. No controlmessage will scroll when no valid radio signal is present  
After powering on the R/C radio receiver and transmitter, and if the wiring is correct, the  
controller will start receiving pulses. For a preset amount of time, the controller will moni-  
tor the pulse train to make sure that they are regular and therefore genuine R/C radio com-  
mand pulses. After that, the motors are enabled and the LEDs will display a pattern related  
to the actual motor direction (see Figure , Motor Direction Status,on page 66).  
This power-on Watchdog feature prevents the controller from becoming active from para-  
site pulses and from moving the motors erratically as a result.  
Similarly, if the pulse train is lost while the motors were enabled, the controller will wait a  
short preset amount of time before it disables the motors. If the pulses reappear during  
that time, the controller continues without any breaks. If the communication is confirmed  
lost, the no ctrlmessage is displayed again.  
Note: the Accessory Outputs C and D will be turned Off when radio is lost.  
Important Notice about PCM Radios  
PCM radios have their own watchdog circuitry and will output a signal (normally a  
safe conditionvalue) when radio communication is lost. This signal will be inter-  
preted by the AX2500/2850 as a valid command and the controller will remain active.  
To benefit from the AX2500/2850s radio detection function, you will need to disable  
the your PCM radio watchdog.  
R/C Transmitter/Receiver Quality Considerations  
As discussed earlier in this chapter, the AX2500/2850 will capture the R/Cs command  
pulses with great accuracy. It will therefore be able to take advantage of the more precise  
joysticks and timings that can be found in higher quality R/C radio, if such added precision  
is desired in your application.  
AX2500/2850 Motor Controller Users Manual  
79  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
R/C Operation  
Another important consideration is the R/C receivers ability to operate in an electrically  
noisy environment: the AX2500/2850 switches high current at very high frequencies. Such  
transients along long battery and motor wires will generate radio frequency noise that may  
interfere with the R/C radio signal. The effects may be reduced remote control range and/  
or induced errors in the command pulse resulting in jerky motor operation.  
A higher quality PCM R/C transmitter/radio is recommended for all professional applica-  
tions, as these are more immune to noise and interference.  
While a more noise-immune radio system is always desirable, it is also recommended to  
layout the wiring, the controller, radio and antenna so that as little electrical noise is gener-  
vides a few suggestions for reducing the amount of electrical noise generated in your  
robot.  
Joystick Deadband Programming  
In order to avoid undesired motor activity while the joysticks are centered, the AX2500/  
2850 supports a programmable deadband feature. A small deadband is set into the control-  
ler by default at the factory. This deadband can be stretched, reduced or eliminated by  
changing the dparameter using one of the three methods described in the chapter  
set deadband values coded 0 to 7. The value 0 disables the deadband. Other values select  
a deadband according to the table below. The deadband value applies equally to both joy-  
sticks  
The deadband is measured as a percentage of total normal joystick travel. For example, a  
16% deadband means that the first 16% of joystick motion in either direction will have no  
effect on the motors. If the joystick is recalibrated to operate using a shorter travel (see  
Joystick Calibrationon page 81), the percent value in the table will not be as accurate.  
TABLE 16. Selectable deadband values  
Deadband Parameter Value  
Deadband as Percent of full Joystick Travel  
d = 0  
d = 1  
d = 2  
d = 3  
d = 4  
d = 5  
d = 6  
d =7  
No deadband  
8%  
16% - default value  
24%  
32%  
40%  
46%  
54%  
Note that the deadband only affects the start position at which the joystick begins to take  
effect. The motor will still reach 100% when the joystick is at its full position. An exagger-  
ated illustration of the effect of the deadband on the joystick action is shown in the  
Figure 52 below.  
80  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Command Control Curves  
Deadband  
(no action)  
Min  
Min  
Reverse  
Forward  
Max  
Max  
Reverse  
Forward  
Centered  
Position  
FIGURE 52. Effect of deadband on joystick position vs. motor speed  
Command Control Curves  
The AX2500/2850 can also be set to translate the joystick motor commands so that the  
motors respond differently whether the joystick is near the center or near the extremes.  
Five different exponential or logarithmic translation curves may be applied. Since this fea-  
ture applies to both R/C and RS232 mode, it is described in detail in Command Control  
Curveson page 42, in the General Operation section of this manual.  
Left/Right Tuning Adjustment  
When operating in mixed mode with one motor on each side of the robot, it may happen  
that one motor is spinning faster than the other one at identically applied power, causing  
the vehicle to pull to the left or to the right.  
To compensate for this, the AX2500/2850 can be made to give one side up to 10% more  
power than the other at the same settings. This capability is described in detail in Left /  
Right Tuning Adjustmenton page 43, in the General Operation section of this manual.  
Joystick Calibration  
This feature allows you to program the precise minimum, maximum and center joystick  
positions of your R/C transmitter into the controllers memory. This feature will allow you to  
use the full travel of your joystick (i.e. minimum = 100% reverse, maximum = 100% for-  
ward). It also ensures that the joysticks center position does indeed correspond to a 0”  
motor command value.  
Joystick calibration is also useful for modifying the active joystick travel area. For example,  
the figure below shows a transmitter whose joysticks center position has been moved  
back so that the operator has a finer control of the speed in the forward direction than in  
the reverse position.  
AX2500/2850 Motor Controller Users Manual  
81  
Download from Www.Somanuals.com. All Manuals Search And Download.  
           
R/C Operation  
There are two methods for calibrating the joysticks:  
The automatic method is the simplest and is based on the controller learningthe  
joysticks parameters using the simple training sequence described below.  
The manual method lets you enter actual timing numbers directly in the controllers  
flash memory using your PC running the Roborun configuration utility. This method  
New Desired  
Center Position  
Min  
Min  
Forward  
Reverse  
Max  
Max  
Reverse  
Forward  
FIGURE 53. Calibration example where more travel is dedicated to forward motion  
Automatic Joystick Calibration  
To calibrate the joystick(s) follow these steps:  
Press and hold the Program button while resetting or power up the controller  
After 10 seconds, the controller will enter the Program mode and flash the first  
parameter (I) and its value (0 if set R/C mode)  
Turn the R/C transmitter and receiver On  
Press the Program button several times until the letter Jis displayed. If you  
missed it, keep pressing the Program button for another cycle.  
When the display flashes the letter Jfollowed by the -sign, press the Set but-  
ton  
When the display flashes the letter Jfollowed by o, the controller has entered  
the joystick calibration mode  
Move each joystick to the desired minimum and maximum position several times  
Move back the joystick(s) to the desired center position  
With the joystick(s) in the center position, press the Program button to record the  
change permanently in the controllers Flash memory.  
Restart the controller by pressing the Reset button or cycling the power.  
To reset the controller to factory default or to program the joysticks positions using numer-  
82  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Activating the Accessory Outputs  
Notes:  
If you attempt to calibrate the joysticks while the radio is off or not connected to the con-  
troller, the calibration data will not change and the previously stored information will con-  
tinue to be used.  
If calibration is performed with only one R/C channel connected to the controller, then only  
the joystick that is active will be calibrated. The other channel will keep its original settings.  
A minimum amount of travel is required between the min, max and center joystick posi-  
tions. If, while calibrating, the joystick has not been moved far enough from either side of  
the center position, the controller will automatically include a minimum of travel to ensure  
proper and safe operation. In most cases, this creates no undesired effect to the driving  
characteristics of the robot.  
R/C calibration only applies to the channel 1 and channel 2 inputs. The accessory activation  
channel (channel 3) is preset at the factory and cannot be changed.  
Important Notice  
To ensure that only stable pulses are present, the R/C transmitter and radio must be  
On before entering joystick calibration.  
Activating the Accessory Outputs  
The AX2500/2850 has two general purpose outputs that may be turned on and off using a  
third R/C channel on the radio.  
Output C is a buffered output capable of driving a 2A device at up to 24V. Output D is a  
non-buffered output that requires an external relay to drive high current loads. Details on  
how to wire these outputs to user accessories can be found at Connecting Sensors and  
Both outputs are controlled from a single joystick on Channel 3.  
Output C is activated by pushing the joystick to the maximum position. The output turns  
back off when the joystick is returned to the center position  
Output D is a toggle output. When the joystick is moved from the center to the minimum  
position, the output changes state (to On if it was Off, or to Off if it was On). Beware that  
because this is a toggling output, it may be accidentally activated by noise in the radio  
reception. Use this output to drive safe accessories. Use only with a good quality radio,  
such as a PCM radio.  
Note: Channel 3 and Output D are not available on the X2850, or on the AX2550 equipped  
with the encoder module.  
AX2500/2850 Motor Controller Users Manual  
83  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
R/C Operation  
No Change  
Output D  
Output C  
OFF  
Toggle  
Output D  
Output C  
ON  
FIGURE 54. Using Channel 3 to activate accessory outputs  
Data Logging in R/C Mode  
While in R/C Mode, the AX2500/2850 will continuously send a string of characters on the  
RS232 output line. This string will contain 12 two-digits hexadecimal number representing  
the 12 following operating parameters.  
Captured R/C Command 1 and 2  
Power Applied to Controllers output stage  
Values applied to Analog inputs 1 and 2  
Amps on channel 1 and 2  
Internal Heat Sink temperatures 1 and 2  
Main Battery voltage  
Internal 12V voltage  
Encoder Speed or Position feedback, if encoder module is present.  
The entire string is repeated every 200 milliseconds with the latest internal parameter val-  
ues. This information can be logged using the Roborun Utility (see Viewing and Logging  
Data in Analog and R/C Modeson page 172). It may also be stored in a PDA that can be  
placed in the mobile robot.  
The string and data format is described in Analog and R/C Modes Data Logging String For-  
maton page 102. The serial ports output can be safely ignored if it is not required in the  
application.  
To read the output string while operating the controller with the R/C radio, you must mod-  
ify the R/C cable to add an RS232 output wire and connector that will be connected to the  
PCs communication port. Figure 55 and Figure 55 below shows the wiring diagram of the  
modified R/C cable for connection to a PC or to a PDA, respectively.  
84  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Data Logging in R/C Mode  
DB9 Female  
To PC  
DB15 Male  
To AX2550  
1
1
2
3
4
5
6
7
8
9
9
10  
11  
12  
13  
14  
15  
2
RS232 Data Out  
RX Data  
GND  
3
4
5
R/C Ch 1  
R/C Ch 2  
GND  
6
7
8
R/C GND  
R/C +5V  
FIGURE 55. Modified R/C cable with RS232 output for data logging to a PC  
DB9 Male  
To PDA  
DB15 Male  
To AX2550  
1
1
6
2
7
3
8
4
9
5
9
10  
11  
12  
13  
14  
15  
RX Data  
GND  
2
RS232 Data Out  
3
4
5
R/C Ch 1  
R/C Ch 2  
GND  
6
7
8
R/C GND  
R/C +5V  
FIGURE 56. Modified R/C cable with RS232 output for data logging to a PDA  
AX2500/2850 Motor Controller Users Manual  
85  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
R/C Operation  
86  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Use and benefits of RS232  
SECTION 8  
Serial (RS-232)  
Controls and  
Operation  
This section describes the communication settings and the commands accepted by the  
AX2500/2850 in the RS232 mode of operations. This information is useful if you plan to  
write your own controlling software on a PC or microcomputer. These commands will also  
allow you to send commands manually using a terminal emulation program. If you wish to  
use your PC simply to set parameters and/or to exercise the controller, you should use the  
Roborun utility described on page 87.  
Use and benefits of RS232  
The serial port allows the AX2500/2850 to be connected to microcomputers or wireless  
modems. This connection can be used to both send commands and read various status  
information in real-time from the controller. The serial mode enables the design of autono-  
mous robots or more sophisticated remote controlled robots than is possible using the R/C  
mode. RS232 commands are very precise and securely acknowledged by the controller.  
They are also the method by which the controllers features can be accessed and operated  
to their fullest extent.  
When connecting the controller to a PC, the serial mode makes it easy to perform simple  
diagnostics and tests, including:  
Sending precise commands to the motors  
Reading the current consumption values and other parameters  
Obtaining the controllers software revision and date  
Reading inputs and activating outputs  
Setting the programmable parameters with a user-friendly graphical interface  
Updating the controllers software  
AX2500/2850 Motor Controller Users Manual  
87  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Serial (RS-232) Controls and Operation  
Connector I/O Pin Assignment (RS232 Mode)  
9
15  
Pin1  
8
FIGURE 1. Pin locations on the controllers 15-pin connector  
When used in the RS232 mode, the pins on the controllers DB15 connector are mapped  
as described in the table below  
TABLE 17. DB15 Connector pin assignment in RS232 mode  
Pin  
Number  
Input or  
Output  
Signal  
Description  
1
Output C  
Data Out  
Data In  
Output  
2Amp Accessory Output C (same as pin 9)  
RS232 data output from the controller to the PC  
RS232 data input to the controller from the PC  
Accessory Input F  
2
Output  
3
Input  
4
Input F  
Input  
5
Ground Out  
Ground In  
+5V In  
Power Output  
Power Input  
Power Input  
Input  
Controller ground (-)  
6
Must be wired to pin 13 or pin 5  
Must be wired to pin 14  
7
8
Input E  
Accessory input E - (Not available on AX2850)  
2Amp Accessory Output C (same as pin 1)  
Channel 2 speed, position or temp feedback  
Channel 1 speed, position or temp feedback  
9
Output C  
Speed/Pos/T 2  
Speed/Pos/T 1  
Output D  
Output  
10  
11  
12  
Analog in  
Analog in  
Output  
Low Current Accessory Output D - (Not available  
on AX2850)  
13  
14  
15  
Ground Out  
+5V Out  
Power  
Controller ground (-)  
Power Output  
Input  
+5V Power Output (100mA max.)  
Emergency Stop or Invert Switch input  
Switch Input  
88  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Cable configuration  
Cable configuration  
The RS232 connection requires the special cabling as described in the figure below. The 9-  
pin female connector plugs into the PC (or other microcontroller). The 15-pin male connec-  
tor plugs into the AX2500/2850.  
It is critical that you do not confuse the connectors pin numbering. The pin numbers on  
the drawing are based on viewing the connectors from the front (facing the sockets or  
pins). Most connectors have pin numbers molded on the plastic.  
DB9 Female  
To PC  
DB15 Male  
To AX2500  
1
6
2
7
3
8
4
9
5
1
9
10  
11  
12  
13  
14  
15  
2
3
4
5
6
7
8
Data Out  
Data In  
RX Data  
TX Data  
GND  
GND  
FIGURE 57. PC to AX2500/2850 RS232 cable/connector wiring diagram  
Extending the RS232 Cable  
The AX2500/2850 is delivered with a 4 foot cable adapter which may be too short, particu-  
larly if you wish to run and monitor the controller inside a moving robot.  
RS232 extension cables are available at most computer stores. However, you can easily  
build one using a 9-pin DB9 male connector, a 9-pin DB9 female connector and any 3-wire  
cable. These components are available at any electronics distributor. A CAT5 network cable  
is recommended, and cable length may be up to 100(30m). Figure 58 shows the wiring  
diagram of the extension cable.  
AX2500/2850 Motor Controller Users Manual  
89  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Serial (RS-232) Controls and Operation  
DB9 Female  
DB9 Male  
1
2
3
4
5
1
6
7
8
9
6
2
7
3
8
4
Data Out  
Data In  
RX Data  
TX Data  
9
5
GND  
GND  
FIGURE 58. RS232 extension cable/connector wiring diagram  
Communication Settings  
The AX2500/2850 serial communication port is set as follows:  
9600 bits/s, 7-bit data, 1 Start bit, 1 Stop bit, Even Parity  
Communication is done without flow control, meaning that the controller is always ready  
to receive data and can send data at any time.  
These settings cannot be changed. You must therefore adapt the communication setting  
in your PC or microcomputer to match those of the controller.  
Establishing Manual Communication with a PC  
The controller can easily be connected to a PC in order to manually exercise its capabilities.  
Simply connect the supplied cable to the AX2500/2850 on one end (DB-15 connector) and  
to a free COM port on the other end (DB-9 connector).  
Once connected, you will need a Terminal Emulation program to display the data received  
from the controller on the PCs screen and to send characters typed on the keyboard to the  
controller. All Windows PCs come with the Hyperterm terminal emulation software.  
Locate the Hyperterm launch icon in the Start button: Programs > Accessories > Commu-  
nication folder.  
You will need to configure Hyperterm to use the COM port to which you have connected  
the controller (typically COM1) and to configure the communication settings as described  
in the section above.  
To save time and avoid errors, a hyperterm configuration file is automatically installed in  
your PCs Start button menu when you install Roboteqs Roborun utility (See Downloading  
90  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Establishing Manual Communication with a PC  
and Installing the Utilityon page 159). The configuration file is set to use the COM1port.  
You can easily change this setting to a different port from the programs menus.  
In all cases, immediately after reset or power up, the controller will output a short identity  
message followed by a software revision number and software revision date as follows:  
Roboteq v1.7 02/01/05  
s
The letter below the prompt message is a code that provides information on the hardware  
and can be ignored.  
If in R/C or Analog mode, type the  
Enter key 10 times to switch to RS232  
mode and display the OK prompt  
FIGURE 59. Power-on message appearing on Hyperterm  
On the AX3500, AX2850, or AX2550 with an Encoder module, this first prompt is immedi-  
ately followed by a second one send by the MCU dedicated to the Encoder function:  
RoboEnc v1.7 02/01/05  
00  
Entering RS232 from R/C or Analog mode  
If the controller is configured in R/C or Analog mode, it will not be able to accept and recog-  
nize RS232 commands immediately.  
However, the controller will be listeningto the serial port and will enter the serial mode  
after it has received 10 continuous Enter(Carriage Return) characters. At that point, the  
controller will output an OKmessage, indicating that it has entered the RS232 mode and  
that it is now ready to accept commands.  
Note that for improved safety, the RS232 watchdog is automatically enabled when entering  
the RS232 in this way. See RS-232 Watchdogon page 98.  
When reset again, the controller will revert to the R/C mode or Analog mode, unless the  
Input Mode parameter has been changed in the meantime.  
Data Logging String in R/C or Analog mode  
If the controller is in the R/C or analog mode, immediately after reset it will send a continu-  
ous string of characters (one character every 8ms, one entire string every 200ms) contain-  
ing operating parameters for data logging purposes.  
AX2500/2850 Motor Controller Users Manual  
91  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Serial (RS-232) Controls and Operation  
This information can be safely ignored and the controller will still be able to switch to  
RS232 mode upon receiving 10 continuous Carriage Returns as described above.  
The format of the data logging string and it content is described in Figure , Analog and R/C  
RS232 Mode if default  
If the controller is configured in RS232 mode, it will automatically be in the RS232 mode  
upon reset or power up.  
In this case, the OKmessage is sent automatically, indicating that the controller is ready  
to accept commands through its serial port.  
RS232 Commands Set  
AX2500/2850 commands and queries are composed of a series of 2 or 4 characters fol-  
lowed by the enter(carriage return) code.  
The controller will send back (echo) every character it is receiving. By checking that the  
returned character is the same as the one sent, it is possible to verify that there has been  
no error in communication.  
After a command has been received and properly executed, the controller will send the  
+character.  
If a command has been received with errors or bad parameters, the controller will send the  
-character.  
A complete summary of the acknowledge and error messages sent by the controller can  
be found on page 97.  
The following is a list of the AX2500/2850 RS232 commands and queries:  
Set Motor Command Value  
Description:  
Send a speed of position value from 0 to 127 in the forward or reverse direction for a given  
channel. In mixed mode, channel 1 value sets the common forward and reverse value for  
both motors, while channel 2 sets the difference between motor 1 and motor 2 as required  
for steering. In all other modes, channel 1 commands motor 1 and channel 2 commands  
motor 2.  
Syntax:  
!Mnn  
Where M=  
A: channel 1, forward direction  
a: channel 1, reverse direction  
B: channel 2, forward direction  
b: channel 2, reverse direction  
Where nn=  
Speed or position value in 2 Hexadecimal digits from 00 to 7F  
channel 1 to 0  
Examples:  
!A00  
92  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
RS232 Commands Set  
!B7F  
!a3F  
channel 2, 100% forward  
channel 1, 50% reverse  
Notes:  
The hexadecimal number must always contain two digits. For example, !a5 will not be  
recognized and the controller will respond with a -to indicate an error. The proper com-  
mand in this case should be !a05  
Hexadecimal numbers are easy to generate using a microcomputer. When exercising the  
controller manually, you may use the Decimal to Hexadecimal conversion table on  
Set Accessory Outputs  
Description:  
Turn on or off one of the 2 available digital output lines on the 15-pin connector. See Using  
the General Inputs and Outputson page 29 for details on how to identify and wire these  
signals.  
Syntax:  
Where  
!M  
M= c: output C off  
C: output C on  
d: output D off  
D: output D on  
Examples:  
!C  
!d  
turn C output on  
turn D output off  
Query Power Applied to Motors  
Description:  
This query will cause the controller to return the actual amount of power that is being  
applied to the motors at that time. The number is a hexadecimal number ranging from 0 to  
+127 (0 to 7F in Hexadecimal). In most cases, this value is directly related to the command  
value, except in the conditions described in the notes below.  
Syntax:  
Reply:  
?v or ?V  
nn  
mm  
Where:  
Notes:  
nn = motor 1 applied power value  
mm = motor 2 applied power value  
The applied power value that is read back from the controller can be different than the com-  
mand values for any of the following reasons: current limitation is active, motors operate at  
reduced speed after overheat detection, or mixed mode is currently active.  
No forward or reverse direction information is returned by this query.  
This query is most useful for providing feedback to a microcontroller commanding the con-  
troller. The hexadecimal format is intended to be deciphered by a microcontroller. When  
AX2500/2850 Motor Controller Users Manual  
93  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Serial (RS-232) Controls and Operation  
exercising the controller manually, you may use the Decimal to Hexadecimal conversion  
table on page 103.  
Query Amps Consumed by Motors  
Description:  
This query will cause the controller to return the actual number of Amps being consumed  
by each motor. The number is an unsigned Hexadecimal number ranging from 0 to 256 (0  
to FF in Hexadecimal).  
Syntax:  
Reply:  
?a or ?A  
nn  
mm  
Where:  
Notes:  
nn = motor 1 Amps  
mm = motor 2 Amps  
The Amps measurement has a 10% (worse case) precision. Its main purpose is to provide  
feedback to the controllers current limitation circuitry.  
The hexadecimal format is intended to be deciphered by a microcontroller. When exercis-  
ing the controller manually, you may use the Decimal to Hexadecimal conversion table on  
Query Analog Inputs  
Description:  
This query will cause the controller to return the values of the signals present at its two  
analog inputs. If the controller is used in close-loop speed mode with analog feedback, the  
values represent the actual speed measured by the tachometer. When used in position  
mode, the values represent the actual motor position measured by a potentiometer. In all  
other modes, the values represent the measured voltage (0 to 5V) applied to the analog  
inputs. The values are signed Hexadecimal numbers ranging from -127 to +127. The -127  
value represents 0V at the input, the 0 value represents 2.5V, and the +127 value repre-  
sents +5V.  
Syntax:  
?p or ?P  
Reply:  
nn  
mm  
Where:  
Notes:  
nn = analog input 1 value, speed or position  
mm = analog input 2 value, speed or position  
The command returns a signed hexadecimal number where 0 to +127 is represented by 00  
to 7F, and -1 to -127 is represented by FF to 80 respectively. The hexadecimal format is  
intended to be deciphered by a microcontroller. When exercising the controller manually,  
you may use the Decimal to Hexadecimal conversion table on page 103.  
94  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
RS232 Commands Set  
Query Heatsink Temperatures  
Description:  
This query will cause the controller to return values based on the temperature measured  
by internal thermistors located at each heatsink side of the controller. Because NTC ther-  
mistors are non-linear devices, the conversion or the read value into a temperature value  
requires interpolation and a look up table. Figure 35 on page 63 shows this correlation.  
Sample conversion software code is available from Roboteq upon request. The values are  
unsigned Hexadecimal numbers ranging from 0 to 255. The lowest read value represents  
the highest temperature.  
Syntax:  
?m or ?M  
Reply:  
nn  
mm  
Where:  
Notes:  
nn = thermistor 1 read value  
mm = thermistor 2 read value  
The hexadecimal format is intended to be deciphered by a microcontroller. When exercis-  
ing the controller manually, you may use the Decimal to Hexadecimal conversion table on  
Query Battery Voltages  
Description:  
This query will cause the controller to return values based on two internally measured volt-  
ages: the first is the Main Battery voltage present at the thick red and black wires. The sec-  
ond is the internal 12V supply needed for the controllers microcomputer and MOSFET  
drivers. The values are unsigned Hexadecimal numbers ranging from 0 to 255. To convert  
these numbers into a voltage figure, use the formulas described in Internal Voltage Moni-  
Syntax:  
?e or ?E  
Reply:  
nn  
mm  
Where:  
Notes:  
nn = main battery voltage value  
mm = internal 12V voltage value  
The hexadecimal format is intended to be deciphered by a microcontroller. When exercis-  
ing the controller manually, you may use the Decimal to Hexadecimal conversion table on  
Query Digital Inputs  
Description:  
This query will cause the controller to return the state of the controllers two accessory  
inputs (inputs E and F) and the state of the Emergency Stop/Inverted input. See Connect-  
and use these signals. The returned values are three sets of two digits with the values 00  
(to indicate a 0 or Off state), or 01 (to indicate a 1 or On state).  
Syntax:  
?i or ?I  
AX2500/2850 Motor Controller Users Manual  
95  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Serial (RS-232) Controls and Operation  
Reply:  
nn  
mm  
oo  
Where:  
nn = Input E status  
mm = Input F status  
oo = Estop/Invert Switch Input status  
Examples:  
?I  
Read Input status query  
01  
00  
01  
Controller replies, Input E is On  
Input F is Off  
Emergency stop switch is high (not triggered)  
Note: the Input E value is not meaningful on the AX2850 or on the AX2550 with Encoder  
module and should be discarded.  
Read and Modify Controller Settings  
Description  
These commands make it possible to examine and change the controllers parameters  
stored in Flash. These commands will appear cryptic and difficult to use for manual param-  
eter setting. It is recommended to use the Graphical configuration utility described in  
not take effect until the controller is reset or a special command is sent (see Apply Param-  
eter Changeson page 97). The complete list of parameters accessible using these com-  
Read parameter  
Syntax:  
Reply:  
Where  
^mm  
DD  
mm= parameter number  
DD= current parameter value  
Example:  
^00  
Read value parameter 0  
01  
Controller replies, value is 01  
Modify parameter  
Syntax:  
Reply:  
^mm nn  
+ if command was executed successfully  
- if error  
Where  
mm= parameter number  
nn= new parameter value  
Examples:  
^02 03  
Store 03 into parameter 2  
96  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Optical Encoder Commands  
Notes:  
All parameters and values are expressed with 2 hexadecimal digits  
No changes will be made and an error will be reported (-character) when attempting to  
read or write a parameter that does not exist or when attempting to store a parameter with  
an invalid value.  
Apply Parameter Changes  
Description:  
Many parameters will take effect only after the controller is reset. This command can be  
used (instead of resetting the controller) to cause these parameters to take effect immedi-  
ately.  
Syntax:  
Reply:  
^FF  
+ Success, changed parameters are now active  
- if error  
Reset Controller  
Description:  
This command allows the controller to be reset in the same manner as if the reset button  
was pressed. This command should be used in exceptional conditions only or after chang-  
ing the controllers parameters in Flash memory so that they can take effect.  
Syntax:  
Reply:  
%rrrrrr  
None. Controller will reset and display prompt message  
Optical Encoder Commands  
The Optical Encoder included inside the AX2850 responds to its own command set  
Commands Acknowledge and Error Messages  
The AX2500/2850 will output characters in various situations to report acknowledgements  
or error conditions as listed below.  
Character Echo  
At the most fundamental level, the AX2500/2850 will echo back to the PC or Microcontrol-  
ler every valid character it has received. If no echo is received, one of the following is  
occurring:  
the controller is not in the RS232 mode  
the controller is Off  
the controller may be defective  
AX2500/2850 Motor Controller Users Manual  
97  
Download from Www.Somanuals.com. All Manuals Search And Download.  
         
Serial (RS-232) Controls and Operation  
Command Acknowledgement  
The AX2500/2850 will acknowledge commands in one of two ways:  
For commands that cause a reply, such as a speed or amps queries, the reply to the query  
must be considered as the command acknowledgement.  
For commands where no reply is expected, such as speed setting, the controller will issue  
a pluscharacter (+) after every command as an acknowledgment.  
Command Error  
If a command or query has been received with errors or is wrong, the control will issue a  
minuscharacter (-) to indicate the error.  
If the controller issues the -character, it should be assumed that the command was lost  
and that it should be repeated.  
Watchdog time-out  
If the RS232 watchdog is enabled, the controller will stop the motors and issue a W”  
character if it has not received a valid character from the PC or microcontroller within the  
past 1 seconds.  
RS-232 Watchdog  
For applications demanding the highest operating safety, the controller may be configured  
to automatically stop the motors (but otherwise remain fully active) if it fails to receive a  
character on its RS232 port for more than 1 seconds.  
The controller will also send a Wcharacter every second to indicate to the microcom-  
puter that such a time-out condition has occurred.  
The character does not need to be a specific command, but any valid ASCII code.  
The RS232 watchdog is enabled or disabled depending on the value of the Input Com-  
mand Modeparameter.  
The RS232 watchdog is automatically enabled when entering the RS232 mode from the  
RC or from the Analog modes (see Entering RS232 from R/C or Analog modeon  
98  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
         
RS232 Accessible Parameter Table  
RS232 Accessible Parameter Table  
Table 18 below lists the complete set of configuration parameters that may be accessed  
and changed using RS232 commands.  
TABLE 18. AX2500/2850 Configuration parameters accessible through RS232  
Param  
nbr  
Active See  
Description  
Allowed Values (default)  
(0) = R/C Radio mode (default)  
1 = RS232, no watchdog  
2 = RS232, with watchdog  
3 = Analog mode  
after  
pages  
00  
Input control mode  
Reset  
01  
Motor Control  
mode  
(0) = Separate A, B, speed control, open loop  
(default)  
Reset  
or ^FF  
1 = Mixed A & B, speed control, open loop  
2 = Speed control on A, open loop. Position  
control on B  
3 = A & B Position control  
4 = Separate A, B, speed control, closed loop  
5 = Mixed A & B, speed control, closed loop  
6 = Speed control on A, closed loop. Position  
control on B  
Add 128 to use the optical encoder for speed  
feedback (AX2850 only)  
02  
Amps limit  
0 = 30A  
Reset  
1 = 45A  
or ^FF  
2 = 60A  
3 = 75A  
4 = 90A  
(5) = 105A (default)  
6 = 120A  
Amps may be set with a finer resolution  
using the PC utility  
03  
Acceleration  
0 = very slow  
1 = slow  
Reset  
or ^FF  
(2) = medium-slow (default)  
3 = medium  
4 = fast  
5 = fastest  
page 40 for complete list of acceptable val-  
ues  
AX2500/2850 Motor Controller Users Manual  
99  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Serial (RS-232) Controls and Operation  
TABLE 18. AX2500/2850 Configuration parameters accessible through RS232  
Param  
Active See  
nbr  
Description  
Allowed Values (default)  
after  
Reset  
or ^FF  
pages  
04  
Input switch func-  
tion  
Bits 0 to 3 contain the EStop/Inv input  
operating mode  
0 = causes emergency stop  
1 = invert commands  
(2) = no action (default)  
Bits 4,5 and 6.7 contain the Input E and  
Input F respective configurations  
(0) = no action  
1 = Activate Output C  
2 = Turn MOSFETs On or Off  
not implemented  
Values are for Joystick deadband  
0 = no deadband  
1 = 8%  
05  
06  
Brake/Coast  
Joystick Deadband  
or  
Reset  
or  
or ^FF  
Analog Deadband  
(2) = 16% (default)  
3 = 24%  
4 = 32%  
5 = 40%  
6 = 46%  
7 = 54%  
07  
08  
Exponentiation on  
channel 1  
(0) = Linear (no exponentiation - default)  
1 = strong exponential  
2 = normal exponential  
3 = normal logarithmic  
4 = strong logarithmic  
Same as E, above  
Instant  
Instant  
Exponentiation on  
channel 2  
09  
0A  
0B  
Reserved  
Reserved  
Left / Right Adjust  
(7) = no adjustment (default)  
0, 1, ..., 6 = -5.25%, -4.5%, ...,-0.75%  
8, ..., D, E** = +0.75, ..., +4.5%, +5.25%  
Do not use  
Reset  
or ^FF  
0C to  
OE  
Reserved  
0F  
Gain Integral for  
PID  
0 to 64 (16) default  
Instant  
10  
11  
Gain Diff for PID  
Gain Prop for PID  
0 to 64 (16) default  
0 to 64 (16) default  
Instant  
Instant  
100  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Automatic Switching from RS232 to RC Mode  
TABLE 18. AX2500/2850 Configuration parameters accessible through RS232  
Param  
nbr  
Active See  
Description  
Allowed Values (default)  
after  
pages  
12  
13  
14  
15  
Joystick Center 1  
MS  
00 to FF (06) default  
Reset  
Joystick Center 1  
LS  
00 to FF (40) default  
00 to FF (06) default  
00 to FF (40) default  
Reset  
Reset  
Reset  
Joystick Center 2  
MS  
Joystick Center 2  
LS  
16  
17  
Joystick Min 1 MS  
Joystick Min 1 LS  
Joystick Min 2 MS  
Joystick Min 2 LS  
Joystick Max 1 MS  
Joystick Max 1 LS  
Joystick Max 2 MS  
Joystick Max 2 LS  
00 to FF (11) default  
00 to FF (30) default  
00 to FF (11) default  
00 to FF (30) default  
00 to FF (0C) default  
00 to FF (80) default  
00 to FF (0C) default  
00 to FF (A8) default  
Reset  
Reset  
Reset  
Reset  
Reset  
Reset  
Reset  
Reset  
18  
19  
1A  
1B  
1C  
1D  
Automatic Switching from RS232 to RC Mode  
In many computer controlled application, it may be useful to allow the controller to switch  
back to the RC mode. This would typically used to let a user to take over the control of a  
robotic vehicle upon computer problem.  
While the AX2500/2850 can operate in either RC Radio or RS232 mode, the RS232 Data  
Input and RC Pulse Input 1 share the same pin on the connector. External hardware is  
therefore needed to switch this pin from the RS232 source or the RC Radio. The diagram in  
Figure 60 shows the external hardware required to perform such a switch.  
A third RC channel is used to activate a dual-throw relay. When the radio is Off, or if it is On  
with the channel 3 off, the relay contact brings the RS232 signal to the shared input. The  
second relay contact maintains the Power Control wire floating, so that the controller  
remains on.  
When the RC channel 3 is activated, the relay turns On and brings the RC radio signal 1 to  
the shared input. The second relay contact brings a discharged capacitor onto the Power  
Control wire causing the controller to reset. Resetting the controller is necessary in order  
AX2500/2850 Motor Controller Users Manual  
101  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Serial (RS-232) Controls and Operation  
to revert the controller in the RC mode (the controller must be configured to default to RC  
mode).  
RC Activated  
Switch  
4.7k  
RC3  
RC1  
RC2  
Power Control  
RC Radio  
220uF  
RC1/RxData  
TxData  
RxData  
RC2/InputF  
TxData  
Controller  
Computer  
FIGURE 60. External circuit required for RS232 to RC switching  
The switching sequence goes as follows:  
Upon controller power on with Radio off: (or Radio on with RC ch3 off)  
Controller run in RC mode (must be configured in RC mode)  
Computer must send 10 consecutive Carriage Returns. Controller enters RS232  
mode  
Controller is on, Radio urns On with RC ch3 On  
Controller is reset, returning to RC mode  
Controller will output the continuous parameter strings on the RS232 output.Com-  
puter thus knows that RC mode is currently active. Computer sends Carriage  
Return strings to try to switch controller back in RS232 mode. Since the RS232 line  
is not connected to the controller, mode will not change  
Controller is on, Radio is turned Off (or Radio On with RC ch3 Off)  
Relay deactivates. RS232 now connected to shared input  
String of Carriage Returns now received by controller.  
Computer looks for OK prompt to detect that RS232 mode is now active. Then  
resumes normal operation.  
Note: Wait 5 seconds for the capacitor to discharge before attempting to switch to RC  
mode if doing this repeatedly. Controller will not reset otherwise.  
Analog and R/C Modes Data Logging String Format  
When the controller is configured in R/C or Analog mode, it will automatically and continu-  
ously send a string of ASCII characters on the RS232 output.  
This feature makes it possible to log the controllers internal parameters while it is used in  
the actual application. The data may be captured using a PC connected via an RS232 cable  
or wireless modem, or into a PDA installed in the actual robot. Details on how to wire the  
102  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Data Logging Cables  
DB15 connector is described on page 85 for the R/C mode, and on page 113 for the Analog  
mode.  
This string is composed of a start character delimiter, followed by 12 or 13 two-digit Hexa-  
decimal numbers representing 12 or 13 internal parameter values, and ending with a Car-  
riage Return character. The figure below shows the structure of this string.  
s
o
pd/P  
2
1
lts  
s
er  
t
o
t V  
l
Vo  
miter  
ower 1  
ower 2  
and 1  
t Deli  
mperature  
mperature  
e
e
T
Internal Encoder S  
End Delimit  
Amps 1  
Analog In 2  
Analog In 1  
Output P  
Main Bat  
T
Amps 2  
Output P  
Command 2  
Comm  
Star  
: 00 11 22 33 44 55 66 77 88 99 AA BB CC  
FIGURE 61. ASCII string sent by the controller while in R/C or Analog mode  
The hexadecimal values and format for each parameter is the same as the response to  
RS232 queries described starting on page 93 in this section. The Encoder Speed/Position  
parameter is output only on the AX2850 or the AX2550 with Encoder module.  
Characters are sent by the controller at the rate of one every 8ms. A complete string is  
sent in 213ms or 224ms.  
Data Logging Cables  
The wring diagrams shown in the figures below describe an easy-to-assemble cable  
assembly for use to create insertion points where to connect the PC for debug and data  
AX2500/2850 Motor Controller Users Manual  
103  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Serial (RS-232) Controls and Operation  
logging purposes. This cable has a 15-pin male connector and 3 15-pin connectors. The  
Front View  
Rear View  
Female to PC with RxData Only  
Female to PC with Rx andTx Data  
4
3
1
1
1
Cut  
Wire  
Female to Application  
Male to controller  
2
1
1
FIGURE 62. ASCII string sent by the controller while in R/C or Analog mode  
male connector plugs into the controller. The application cable that would normally plug  
into the controller may now be plugged into one of the adapters female connector 2. The  
PC can be plugged into connector 3 or 4. Connector 3 has the Rx and Tx data lines needed  
for full duplex serial communication, thus allowing the PC to send commands to the con-  
troller. Connector 4 has the Rx line cut so that only a data flows only from the controller to  
the PC. This configuration is for capturing the data logging strings sent in the RC or Analog  
modes.  
Decimal to Hexadecimal Conversion Table  
The AX2500/2850 uses hexadecimal notation for accepting and responding to numerical  
commands. Hexadecimal is related to the binary system that is used at the very heart of  
microcomputers. Functions for converting from decimal to hexadecimal are readily avail-  
able in high level languages such as C.  
If you intend to enter commands manually using the terminal emulation program, you can  
use the conversion table in Table 19 to do the translation. Note that the table only shows  
numbers for 0 to 127 decimal (00 to 7F hexadecimal). The AX2500/2850s speed com-  
mands are within this range. Table 20 shows the conversion values for numbers between  
128 and 255 (unsigned) and between -1 and -128 (signed)  
TABLE 19. 0 to +127 signed or unsigned decimal to hexadecimal conversion table  
Dec  
Hex  
00  
01  
Dec  
32  
Hex  
20  
Dec  
64  
Hex  
40  
Dec  
96  
Hex  
60  
0
1
2
3
4
5
33  
21  
65  
41  
97  
61  
02  
34  
22  
66  
42  
98  
62  
03  
35  
23  
67  
43  
99  
63  
04  
36  
24  
68  
44  
100  
101  
64  
05  
37  
25  
69  
45  
65  
104  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Decimal to Hexadecimal Conversion Table  
TABLE 19. 0 to +127 signed or unsigned decimal to hexadecimal conversion table  
Dec  
6
Hex  
06  
07  
08  
09  
0A  
0B  
0C  
0D  
0E  
0F  
10  
Dec  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
50  
51  
52  
53  
54  
55  
56  
57  
58  
59  
60  
61  
62  
63  
Hex  
26  
27  
28  
29  
2A  
2B  
2C  
2D  
2E  
2F  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
3A  
3B  
3C  
3D  
3E  
3F  
Dec  
70  
71  
72  
73  
74  
Hex  
46  
47  
48  
49  
4A  
4B  
4C  
4D  
4E  
4F  
50  
51  
52  
53  
54  
55  
56  
57  
58  
59  
5A  
5B  
5C  
5D  
5E  
5F  
Dec  
102  
103  
104  
105  
106  
107  
108  
109  
110  
111  
Hex  
66  
67  
68  
69  
6A  
6B  
6C  
6D  
6E  
6F  
70  
71  
72  
73  
74  
7
8
9
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
75  
76  
77  
78  
79  
80  
81  
82  
83  
84  
85  
86  
87  
88  
89  
90  
91  
92  
93  
94  
95  
112  
113  
114  
115  
116  
117  
118  
119  
120  
121  
122  
123  
124  
125  
126  
127  
11  
12  
13  
14  
15  
16  
17  
75  
76  
77  
78  
79  
7A  
7B  
7C  
7D  
7E  
7F  
18  
19  
1A  
1B  
1C  
1D  
1E  
1F  
TABLE 20. +128 to 255 unsigned and -1 to -128 signed decimal to hexadecimal conversion table  
UDec  
-128  
-127  
-126  
-125  
-124  
-123  
-122  
-121  
Dec  
128  
129  
130  
131  
132  
133  
134  
135  
Hex  
80  
81  
82  
83  
84  
85  
86  
87  
UDec  
-96  
-95  
-94  
-93  
-92  
-91  
-90  
-89  
Dec  
160  
161  
162  
163  
164  
165  
166  
167  
Hex  
A0  
A1  
A2  
A3  
A4  
A5  
A6  
A7  
UDec  
-64  
-63  
-62  
-61  
-60  
-59  
-58  
-57  
Dec  
192  
193  
194  
195  
196  
197  
198  
199  
Hex  
C0  
C1  
C2  
C3  
C4  
C5  
C6  
C7  
UDec  
-32  
-31  
-30  
-29  
-28  
-27  
-26  
-25  
Dec  
224  
225  
226  
227  
228  
229  
230  
231  
Hex  
E0  
E1  
E2  
E3  
E4  
E5  
E6  
E7  
AX2500/2850 Motor Controller Users Manual  
105  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Serial (RS-232) Controls and Operation  
TABLE 20. +128 to 255 unsigned and -1 to -128 signed decimal to hexadecimal conversion table  
UDec  
-120  
-119  
-118  
-117  
-116  
-115  
-114  
-113  
-112  
-111  
-110  
-109  
-108  
-107  
-106  
-105  
-104  
-103  
-102  
-101  
-100  
-99  
Dec  
136  
137  
138  
139  
140  
141  
142  
143  
144  
145  
146  
147  
148  
149  
150  
151  
152  
153  
154  
155  
156  
157  
158  
159  
Hex  
88  
89  
8A  
8B  
8C  
8D  
8E  
8F  
90  
91  
92  
93  
94  
95  
96  
97  
98  
99  
9A  
9B  
9C  
9D  
9E  
9F  
UDec  
-88  
-87  
-86  
-85  
-84  
-83  
-82  
-81  
-80  
-79  
-78  
-77  
-76  
-75  
-74  
Dec  
168  
169  
170  
171  
172  
173  
174  
Hex  
A8  
A9  
AA  
AB  
AC  
AD  
AE  
AF  
B0  
B1  
B2  
B3  
B4  
B5  
B6  
B7  
B8  
B9  
BA  
BB  
BC  
BD  
BE  
BF  
UDec  
-56  
-55  
-54  
-53  
-52  
-51  
-50  
-49  
-48  
-47  
-46  
-45  
-44  
-43  
-42  
-41  
-40  
-39  
-38  
-37  
-36  
-35  
-34  
-33  
Dec  
200  
201  
202  
203  
204  
205  
206  
207  
208  
209  
210  
211  
212  
213  
214  
215  
216  
217  
218  
219  
220  
221  
222  
223  
Hex  
C8  
C9  
CA  
CB  
CC  
CD  
CE  
CF  
D0  
D1  
D2  
D3  
D4  
D5  
D6  
D7  
D8  
D9  
DA  
DB  
DC  
DD  
DE  
DF  
UDec  
-24  
-23  
-22  
-21  
-20  
-19  
-18  
-17  
-16  
-15  
-14  
-13  
-12  
-11  
-10  
-9  
Dec  
232  
233  
234  
235  
236  
237  
238  
239  
240  
241  
242  
243  
244  
245  
246  
247  
248  
249  
250  
251  
252  
253  
254  
255  
Hex  
E8  
E9  
EA  
EB  
EC  
ED  
EE  
EF  
F0  
F1  
F2  
F3  
F4  
F5  
F6  
F7  
F8  
F9  
FA  
FB  
FC  
FD  
FE  
FF  
175  
176  
177  
178  
179  
180  
181  
182  
183  
184  
185  
186  
187  
188  
189  
190  
191  
-73  
-72  
-71  
-70  
-69  
-68  
-67  
-66  
-65  
-8  
-7  
-6  
-5  
-4  
-3  
-98  
-2  
-97  
-1  
106  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Mode Description  
SECTION 9  
Analog Control  
and Operation  
This section describes how the motors may be operated using analog voltage commands.  
Mode Description  
The AX2500/2850 can be configured to use a 0 to 5V analog voltage, typically produced  
using a potentiometer, to control each of its two motor channels. The voltage is converted  
into a digital value of -127 at 0V, 0 at 2.5V and +127 at 5V. This value, in turn, becomes the  
command input used by the controller. This command input is subject to deadband thresh-  
old and exponentiation adjustment. Analog commands can be used to control motors sep-  
arately (one analog input command for each motor) or in mixed mode.  
Important Notice  
The analog mode can only be used in the Closed Loop speed or position modes  
when Optical Encoders are used for feedback. Position potentiometers or tachome-  
ters cannot be used since there is only one analog input per channel and that this  
input will be connected to the command potentiometer.  
AX2500/2850 Motor Controller Users Manual  
107  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Analog Control and Operation  
Connector I/O Pin Assignment (Analog Mode)  
9
15  
Pin1  
8
When used in the Analog mode, the pins on the controllers DB15 connector are mapped  
as described in the table below  
TABLE 21. DB15 Connector pin assignment in Analog mode  
Pin  
Input or  
Output  
Number  
Signal  
Output C  
Data Out  
Data In  
Description  
1
2
3
4
Output  
Output  
Input  
2Amp Accessory Output C (same as pin 9)  
RS232 data output to the PC for data logging  
unused  
Input F  
Input  
5
Ground Out  
Ground In  
+5V In  
Power Output  
Power Input  
Power Input  
Input  
Controller ground (-)  
6
unused  
7
unused  
8
Input E  
Not available on AX2850  
2Amp Accessory Output C (same as pin 1)  
Channel 2 analog input  
Channel 1 analog input  
Not available on AX2850  
Controller ground (-)  
9
Output C  
Output  
10  
11  
12  
13  
14  
15  
Channel 2 In  
Channel 1 In  
Output D  
Ground Out  
+5V Out  
Analog in  
Analog in  
Output  
Power  
Power Output  
Input  
+5V Power Output (100mA max.)  
Emergency Stop or Invert Switch input  
Switch Input  
108  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Connecting to a Voltage Source  
Connecting to a Voltage Source  
The analog inputs expect a DC voltage of 0 to 5V which can be sourced by any custom cir-  
cuitry (potentiometer, Digital to Analog converter).  
The controller considers 2.5V to be the zero position (Motor Off). 0V is the maximum  
reverse command, +5V is the maximum forward command.  
The inputsequivalent circuit is show in Figure 63 below.  
+5V  
14  
AX2500 Internal Resistors  
and Converter  
Analog  
Input 1 or 2  
10  
11  
47kOhm  
0V = Min  
2.5V = Off  
5V = Max  
A/D  
10kOhm  
47kOhm  
13  
Ground  
FIGURE 63. Analog input circuit  
Notice the two 47K resistors, which are designed to automatically bring the input to a mid-  
point (Off) position in case the input is not connected. The applied voltage must have suffi-  
cient current (low impedance) so that it is not affected by these resistors.  
Connecting a Potentiometer  
Figure 64 shows how to wire a potentiometer to the AX2500/2850. By connecting one end  
to ground and the other to 5V, the potentiometer acts as an adjustable voltage divider. The  
voltage will thus vary from 0V when the tap is at the minimum position and to 5V when the  
tap is at the maximum position.  
The controller considers 2.5V to be the zero position (Motor Off). 2.5V is the potentiome-  
ters mid point position.  
AX2500/2850 Motor Controller Users Manual  
109  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Analog Control and Operation  
+5V  
14  
AX2500 Internal Resistors  
and Converter  
Analog  
Input 1 or 2  
10  
11  
47kOhm  
A/D  
10kOhm  
10kOhm  
47kOhm  
13  
Ground  
FIGURE 64. Potentiometer connection wiring diagram  
The controller includes two 47K ohm resistors pulling the input to a mid-voltage point of  
2.5V. When configured in the Analog Input mode, this will cause the motors to be at the  
Off state if the controller is powered with nothing connected to its analog inputs.  
Important Notice  
The controller will not activate and will display the no ctrlmessage after power up  
or reset until the analog inputs are at 2.5V  
FIGURE 65. no controlmessage indicates that joystick is not centered at power up  
Selecting the Potentiometer Value  
The potentiometer can be of almost any value; however, undesirable effects occur if the  
value is too low or too high.  
If the value is low, an unnecessarily high and potentially damaging current will flow through  
the potentiometer. The amount of current is computed as the voltage divided by the poten-  
tiometers resistance at its two extremes. For a 1K potentiometer, the current is:  
I = U/R = 5V / 1000 Ohms = 0.005A = 5mA  
For all practical purposes, a 1K potentiometer is a good minimal value.  
If the value of the potentiometer is high, then the two 47K resistors built into the controller  
will distort the reading. The effect is minimal on a 10K potentiometer but is significant on a  
110  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Analog Deadband Adjustment  
100K or higher potentiometer. Figure 66 shows how the output voltage varies at the vari-  
ous potentiometer positions, for three typical potentiometer values. Note that the effect is  
an exponentiation that will cause the motors to start moving slowly and accelerate faster  
as the potentiometer reaches either end.  
This curve is actually preferable for most applications. It can be corrected or amplified by  
changing the controllers exponentiation parameters (see Command Control Curveson  
Voltage at Input  
5V  
1K Pot  
4V  
3V  
10K Pot  
100K Pot  
2V  
1V  
0V  
Min  
Center  
Max  
Potentiometer Position  
FIGURE 66. Effect of the controllers internal resistors on various potentiometers  
Analog Deadband Adjustment  
The controller may be configured so that some amount of potentiometer or joystick travel  
off its center position is required before the motors activate. The deadband parameter can  
be one of 8 values, ranging from 0 to 7, which translate into a deadband of 0% to 16%.  
Even though the deadband will cause some of the potentiometer movement around the  
center position to be ignored, the controller will scale the remaining potentiometer move-  
ment to command the motors from 0 to 100%.  
Note that the scaling will also cause the motors to reach 100% at sightly less than 100% of  
the potentiometers position. This is to ensure that 100% motor speed is achieved in all cir-  
cumstances. Table 22 below shows the effect of the different deadband parameter values.  
Changing the deadband parameter can be done using the controllers switches (see Con-  
AX2500/2850 Motor Controller Users Manual  
111  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Analog Control and Operation  
TABLE 22. Analog deadband parameters and their effects  
Pot. Position resulting in  
Motor Power at 0%  
Pot. Position resulting in  
Motor Power at -/+100%  
Parameter Value  
0
0%  
2.5V  
94%  
96%  
93%  
95%  
93%  
95%  
94%  
96%  
0.15V and 4.85V  
0.10V and 4.90V  
0.18V and 4.83V  
0.13V to 4.88V  
0.18V and 4.83V  
0.13V to 4.88V  
0.15V and 4.85V  
0.10V and 4.90V  
1
0% to 2.4%  
0% to 4.7%  
0% to 7.1%  
0% to 9.4%  
0% to 11.8%  
0% to 14.2%  
0% to 16.5%  
2.44V to 2.56V  
2.38V to 2.62V  
2.32V to 2.68V  
2.27V to 2.74  
2.21V to 2.80V  
2.15V to 2.86V  
2.09V to 2.91V  
2
3 (default)  
4
5
6
7
Important Notice  
Some analog joysticks do not cause the potentiometer to reach either extremes.  
This may cause the analog voltage range to be above 0V and below 5V when the  
stick is moved to the extremes, and therefore the controller will not be able to  
deliver full forward or reverse power.  
Power-On Safety  
When powering on the controller, power will not be applied to the motors until both the  
Channel 1 and Channel 2 potentiometers have been centered to their middle position (2.5V  
on each input). This is to prevent the robot or vehicle from moving in case the joystick was  
in an active position at the moment the controller was turned on. The no ctrlmessage  
will scroll on the LED display while the controller is disabled.  
Under Voltage Safety  
If the controller is powered through the Power Control input, and the motor battery voltage  
drops below 5V, then the controller will be disabled until the analog commands are cen-  
tered to the midpoint (2.5V on each input).  
Data Logging in Analog Mode  
While in Analog Mode, the AX2500/2850 will continuously send a string of characters on  
the RS232 output line. This string will contain 12 or 13 two-digits hexadecimal number rep-  
resenting the following operating parameters.  
Captured Analog Command 1 and 2  
Power Applied to Controllers output stage  
Raw analog command values  
Amps on channel 1 and 2  
112  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Data Logging in Analog Mode  
Internal Heat Sink temperatures 1 and 2  
Main Battery voltage  
Internal 12V voltage  
Encoder Speed or Position (AX2850)  
The entire string is repeated every 213 milliseconds with the latest internal parameter val-  
ues. This information can be logged using the Roborun Utility (see Viewing and Logging  
Data in Analog and R/C Modeson page 172). It may also be stored in a PDA that can be  
placed in the mobile robot.  
The string and data format is described in Analog and R/C Modes Data Logging String For-  
maton page 102. The serial ports output can be safely ignored if it is not required in the  
application.  
To read the output string while operating the controller with an analog command, you must  
modify the cable to add an RS232 output wire and connector that will be connected to the  
PCs communication port. Figure 67 below shows the wiring diagram of the modified cable  
for connection to a PC or to a PDA, respectively.  
DB9 Female  
To PC  
DB15 Male  
To AX2500  
1
1
6
2
7
3
8
4
9
5
9
10  
11  
12  
13  
14  
15  
2
RS232 Data Out  
RX Data  
GND  
Ana Ch2  
Ana Ch1  
3
4
5
6
7
8
GND  
+5V  
FIGURE 67. Modified Analog cable with RS232 output data logging for PC  
DB9 Male  
To PDA  
DB15 Male  
To AX2500  
1
1
6
2
7
3
8
4
9
5
9
10  
11  
12  
13  
14  
15  
RX Data  
GND  
2
RS232 Data Out  
Ana Ch2  
Ana Ch1  
3
4
5
6
7
8
GND  
+5V  
FIGURE 68. Modified Analog cable with RS232 output data logging for PDA  
AX2500/2850 Motor Controller Users Manual  
113  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Analog Control and Operation  
114  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Mode Description  
SECTION 10  
Closed Loop  
Position Mode  
This section describes the AX2500/2850 Position mode, how to wire the motor and posi-  
tion sensor assembly, and how to tune and operate the controller in this mode.  
Mode Description  
In this mode, the axle of a geared down motor is coupled to a position sensor that is used  
to compare the angular position of the axle versus a desired position. The controller will  
move the motor so that it reaches this position.  
This unique feature makes it possible to build ultra-high torque jumbo servosthat can be  
used to drive steering columns, robotic arms, life-size models and other heavy loads.  
The AX2500/2850 incorporates a full-featured Proportional, Integral, Differential (PID) con-  
trol algorithm for quick and stable positioning.  
Selecting the Position Mode  
The position mode is selected by changing the Motor Control parameter in the controller to  
either  
A Open Loop Speed, B Position  
A Closed Loop Speed, B Position  
A and B Position  
Note that in the first two modes, only the second motor will operate in the Position mode.  
Changing the parameter is best done using the Roborun Utility. See Loading, Changing  
For safety reasons and to prevent this mode from being accidentally selected, Position  
modes CAN NOT be selected by configuring the controller using the built-in switches and  
display.  
AX2500/2850 Motor Controller Users Manual  
115  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Closed Loop Position Mode  
Position Sensor Selection  
The AX2500/2850 may be used with the following kind of sensors:  
Potentiometers  
Hall effect angular sensors  
Optical Encoders  
The first two are used to generate an analog voltage ranging from 0V to 5V depending on  
their position. They will report an absolute position information at all times.  
Optical encoders report incremental changes from a reference which is their initial position  
when the controller is powered up or reset. Using Optical Encoders in this mode is possi-  
ble but requires special handling that is described in Figure , Using the Encoder to Track  
Sensor Mounting  
Proper mounting of the sensor is critical for an effective and accurate position mode opera-  
tion. Figure 69 shows a typical motor, gear box, and sensor assembly.  
Position Feedback  
Position Sensor  
Gear box  
FIGURE 69. Typical motor/potentiometer assembly in Position Mode  
The sensor is composed of two parts:  
a body which must be physically attached to a non-moving part of the motor assem-  
bly, or the robot chassis, and  
an axle which must be physically connected to the rotating part of the motor you  
wish to position.  
A gear box is necessary in order to greatly increase the torque of the assembly. It is also  
necessary in order to slow down the motion so that the controller has the time to perform  
the position control algorithm. If the gearing ratio is too high, however, the positioning  
mode will be very sluggish.  
A good ratio should be such that the output shaft rotates at 1 to 10 rotations per second  
(60 to 600 RPM) when the motor is at full speed.  
116  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Potentiometer wiring  
The mechanical coupling between the motor and the sensor must be as tight as possible.  
If the gear box is loose, the positioning will not be accurate and will be unstable, potentially  
causing the motor to oscillate.  
Some sensor, such as potentiometers, have a limited rotation range of typically 270  
degrees (3/4 of a turn), which will in turn limit the mechanical motion of the motor/potenti-  
ometer assembly. You may consider using a multi-turn potentiometer as long as it is  
mounted in a manner that will allow it to turn throughout much of its range, when the  
mechanical assembly travels from the minimum to maximum position.  
Important Notice:  
Potentiometers are mechanical devices subject to wear. Use better quality potenti-  
ometers and make sure that they are protected from the elements. Consider using a  
solid state hall position sensor in the most critical applications. Optical encoders  
may also be used when operated as discussed in Using the Encoder to Measure  
Potentiometer wiring  
When using a potentiometer, it must be wired so that it creates a voltage that is propor-  
tional to its angular position: 0V at one extreme, +5V at the other. A 10K potentiometer  
value is recommended for this use.  
Connecting the potentiometer to the controller is as simple as shown in the diagram on  
+5V 14  
AX2500 Internal Resistors  
and Converter  
Input Pos 1 11  
47kOhm  
or Pos 2 10  
A/D  
10kOhm  
10kOhm  
47kOhm  
Ground 5  
FIGURE 70. Potentiometer wiring in Position mode  
Using Optical Encoders in Position Mode  
Optical Encoders require special handling. See Figure 12, Installing, Connecting and  
Sensor and Motor Polarity  
The sensor polarity (i.e. which rotation end produces 0 or 5V) is related to the motors  
polarity (i.e. which direction the motor turns when power is applied to it).  
AX2500/2850 Motor Controller Users Manual  
117  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Closed Loop Position Mode  
In the Position mode, the controller compares the actual position, as measured by the sen-  
sor, to the desired position. If the motor is not at that position, the controller will apply  
power to the motor so that it turns towards that destination, until reached.  
Important Warning:  
If there is a polarity mismatch, the motor will turn in the wrong direction and the  
position will never be reached. The motor will turn continuously with no way of  
stopping it other than cutting the power or hitting the Emergency Stop buttons.  
Determining the right polarity is best done experimentally using the Roborun utility (see  
1. Disconnect the controllers Motor Power (thick power wires).  
2. Configure the controller in Position Mode using the PC utility.  
3. Loosen the sensors axle from the motor assembly.  
4. Launch the Roborun utility and click on the Run tab. Click the Startbutton to  
begin communication with the controller. The sensor values will be displayed in the  
Ana1 and Ana2 boxes.  
5. Move the sensor manually to the middle position until you measure 0using  
Roborun utility  
6. Verify that the motor sliders are in the 0(Stop) position. Since the desired posi-  
tion is 0 and the measured position is 0, the controller will not attempt to move the  
motors, and the Power graph on the PC must be 0.  
7. Apply power to the Motor Power wires (thick power wires). The motor will be  
stopped.  
8. With a hand ready to disconnect the Motor Power cable, or ready to press the Pro-  
gramand Setbuttons at the same time (Emergency Stop), SLOWLY move the  
sensor off the center position and observe the motors direction of rotation.  
9. If the motor turns in the direction you moved the sensor, the polarity is correct. You  
may tighten the sensor axle to the motor assembly.  
10. If the motor turns in the direction away from the sensor, then the polarity is  
reversed. You should either exchange the wire polarity on the motors. If you are  
using a potentiometer as sensor, you can instead the 0 and +5V wires on the poten-  
tiometer. If you are using an Optical Encoder, you can swap its ChA and ChB out-  
puts.  
11. Move the sensor back to the center point to stop the motor. Cut the power if you  
feel you are losing control.  
12. If the polarity was wrong, invert it and repeat steps 8 to 11.  
13. Tighten the sensor.  
Important Safety Warning  
118  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Adding Safety Limit Switches  
Never apply a command that is lower than the sensors minimum output value, or  
higher than the sensors maximum output value as the motor would turn forever try-  
ing to reach a position it cant. For example if the max position of a potentiometer is  
4.5V, which is a position value of 114, a destination command of 115 cannot be  
reached and the motor will not stop.  
Adding Safety Limit Switches  
The Position mode depends on the position sensor providing accurate position information.  
If the potentiometer is damaged or one of its wire is cut, the motors may spin continuously  
in an attempt to reach a fictitious position. In many applications, this may lead to serious  
mechanical damage.  
To limit the risk of such breakage, it is recommended to add limit switches that will cause  
the motors to stop if unsafe positions have been reached, independently of the potentiom-  
eter reading.  
Two simple and low cost methods are proposed to implement safety limit switches:  
The first, shown in Figure 71, uses Normally Closed limit switches in series on each of the  
motor terminals. As the motor reaches one of the switches, the lever is pressed, cutting  
the power to the motor. The diode in parallel with the switch allows the current to flow in  
the reverse position so that the motor may be restarted and moved away from that limit.  
The diode polarity depends on your particular wiring and motor orientation. If the diode is  
mounted backwards, the motor will not stop once the limit switch lever is pressed. If this is  
the case, reverse the diode polarity.  
The diodes may be eliminated, but then it will not be possible for the controller to move the  
motor once either of the limit switches has been triggered.  
The main benefit of this technique is its total independence on the controllers electronics  
and its ability to work in practically all circumstances. Its main limitation is that the switch  
and diode must be capable of handling the current that flows through the motor. Note that  
the current will flow though the diode only for the short time needed for the motor to move  
away from the limit switches.  
SW1  
SW2  
Motor  
AX2550  
FIGURE 71. Safety limit switches interrupting power to motors  
AX2500/2850 Motor Controller Users Manual  
119  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Closed Loop Position Mode  
The second method uses the AX2500/2850s Emergency Stop input to shut down the con-  
troller if any of the limit switches is tripped. Figure 72 shows the wiring diagram used in  
this case. Each of the limit switches is a Normally Open switch. Two of these switched are  
typically required for each motor. Additional switches may be added as needed for the sec-  
ond motor and/or for a manual Emergency Stop. Since very low current flows through the  
switches, these can be small, low cost switches.  
The principal restriction of this technique is that it depends on the controller to be fully  
functioning, and that once a switch is activated, the controller will remain inactive until the  
switch is released. In most situations, this will require manual intervention. Another limita-  
tion is that both channels will be disabled even if only one channel caused the fault.  
Manual  
Emergency  
Stop Switch  
SW1  
SW2  
Motor  
AX2550  
Ground  
Emergency Stop Input  
FIGURE 72. Safety limit using AX2500/2850s Emergency Stop input  
Important Warning  
Limit switches must be used when operating the controller in Position Mode. This  
will significantly reduce the risk of mechanical damage and/or injury in case of dam-  
age to the position sensor or sensor wiring.  
Using Current Limiting as Protection  
It is a good idea to set the controllers current limit to a low value in order to avoid high cur-  
rent draws and consequential damage in case the motor does not stop where expected.  
Use a value that is no more than 2 x the motors draw under normal load conditions.  
Control Loop Description  
The AX2500/2850 performs the Position mode using a full featured Proportional, Integral  
and Differential (PID) algorithm. This technique has a long history of usage in control sys-  
tems and works on performing adjustments to the Power Output based on the difference  
measured between the desired position (set by the user) and the actual position (captured  
by the position sensor).  
120  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Control Loop Description  
Figure 73 shows a representation of the PID algorithm. Every 16 milliseconds, the control-  
ler measures the actual motor position and substracts it from the desired position to com-  
pute the position error.  
The resulting error value is then multiplied by a user selectable Proportional Gain. The  
resulting value becomes one of the components used to command the motor. The effect  
of this part of the algorithm is to apply power to the motor that is proportional with the dis-  
tance between the current and desired positions: when far apart, high power is applied,  
with the power being gradually reduced and stopped as the motor moves to the final posi-  
tion. The Proportional feedback is the most important component of the PID in Position  
mode.  
A higher Proportional Gain will cause the algorithm to apply a higher level of power for a  
given measured error thus making the motor move quicker. However, because of inertia, a  
faster moving motor will have more difficulty stopping when it reaches its desired position.  
It will therefore overshoot and possibly oscillate around that end position.  
Proportional  
Gain  
x
E= Error  
Desired Position  
dE  
dt  
x
Σ
-
Output  
Analog Position  
Sensor  
A/D  
Measured Position  
Integral  
Gain  
or  
Optical Encoder  
dE  
dt  
x
Differential  
Gain  
FIGURE 73. PID algorithm used in Position mode  
The Differential component of the algorithm computes the changes to the error from one  
16 ms time period to the next. This change will be a relatively large number every time an  
abrupt change occurs on the desired position value or the measured position value. The  
value of that change is then multiplied by a user selectable Differential Gain and added to  
the output. The effect of this part of the algorithm is to give a boost of extra power when  
starting the motor due to changes to the desired position value. The differential component  
will also greatly help dampen any overshoot and oscillation.  
The Integral component of the algorithm perform a sum of the error over time. In the posi-  
tion mode, this component helps the controller reach and maintain the exact desired posi-  
tion when the error would otherwise be too small to energize the motor using the  
Proportional component alone. Only a very small amount of Integral Gain is typically  
required in this mode.  
AX2500/2850 Motor Controller Users Manual  
121  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Closed Loop Position Mode  
PID tuning in Position Mode  
As discussed above, three parameters - Proportional Gain, Integral Gain and Differential  
Gain - can be adjusted to tune the position control algorithm. The ultimate goal in a well  
tuned PID is a motor that reaches the desired position quickly without overshoot or oscilla-  
tion.  
Because many mechanical parameters, such as motor power, gear ratio, load and inertia  
are difficult to model, tuning the PID is essentially a manual process that takes experimen-  
tation.  
The Roborun PC utility makes this experimentation easy by providing a screen for changing  
the Proportional, Integral and Differential gains and another screen for running and monitor-  
ing the motors.  
When tuning the motor, first start with the Integral Gain at zero, increasing the Proportional  
Gain until the motor overshoots and oscillates. Then add Differential gain until there is no  
more overshoot. If the overshoot persists, reduce the Proportional Gain. Add a minimal  
amount of Integral Gain. You may further fine tune the PID by varying the gains from these  
positions.  
To set the Proportional Gain, which is the most important parameter, use the Roborun util-  
ity to observe the three following values;  
Command Value  
Actual Position  
Applied Power  
With the Integral Gain set to 0, the Applied Power should be:  
Applied Power = (Command Value - Actual Position) * Proportional Gain  
Experiment first with the motor electrically or mechanically disconnected an verify that the  
controller is measuring the correct position and is applying the expected amount of power  
to the motor depending on the command you give it.  
Verify that when the Command Value equals the Actual Position, the Applied Power equals  
to zero. Note that the Applied Power value is shown without the sign in the PC utility.  
In case where the load moved by the motor is not fixed, you will need to tune the PD with  
the minimum expected load and tune it again with the maximum expected load. Then try  
to find values that will work in both conditions. If the disparity between minimal and maxi-  
mal possible loads is large, it may not be possible to find satisfactory tuning values.  
Note that the AX2500/2850 uses one set of Proportional, Integral and Differential Gains for  
both motors and therefore assumes that similar motors, mechanical assemblies and loads  
are present at each channel.  
122  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Mode Description  
SECTION 11  
Closed Loop  
Speed Mode  
This section discusses the AX2500/2850 Close Loop Speed mode.  
Mode Description  
In this mode, an analog or digital speed sensor measures the actual motor speed and com-  
pares it to the desired speed. If the speed changes because of changes in load, the control-  
ler automatically compensates the power output. This mode is preferred in precision motor  
control and autonomous robotic applications.  
The AX2500/2850 incorporates a full-featured Proportional, Integral, Differential (PID) con-  
trol algorithm for quick and stable speed control.  
Selecting the Speed Mode  
The speed mode is selected by changing the Motor Control parameter in the controller to  
either  
A and B Closed Loop Speed Separate  
A and B Closed Loop Speed Mixed  
A Closed Loop Speed, B Position  
Note that in the last selection, only the first motor will operate in the Closed Loop Speed  
mode.  
Changing the parameter to select this mode is done using the Roborun Utility. See Load-  
For safety reasons and to prevent this mode from being accidentally selected, Closed Loop  
Speed modes CAN NOT be selected by configuring the controller using the built-in  
switches and display.  
AX2500/2850 Motor Controller Users Manual  
123  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Closed Loop Speed Mode  
Using Optical Encoder for Speed Feedback (AX2850 only)  
Digital Optical Encoders may be used to capture accurate motor speed. This capability is  
only available on the AX2850 or AX2550 fitted with the optional encoder module.  
Detailed information on how to install and wire optical encoders is provided at Installing,  
If using optical encoders, you may omit the Analog Tachometer discussion in this section  
and resume reading from Control Loop Descriptionon page 127. Optical Encoders  
page 131 for a detailed discussion.  
Tachometer or Encoder Mounting  
Proper mounting of the speed sensor is critical for an effective and accurate speed mode  
operation. Figure 74 shows a typical motor and tachometer or encoder assembly.  
Tachometer or  
Optical Encoder (AX2850 & AX3500 only)  
Speed Feedback  
FIGURE 74. Motor + tachometer assembly needed for Close Loop Speed mode  
Tachometer wiring  
The tachometer must be wired so that it creates a voltage at the controllers analog input  
that is proportional to rotation speed: 0V at full reverse, +5V at full forward, and 0 when  
stopped.  
124  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Speed Sensor and Motor Polarity  
Connecting the tachometer to the controller is as simple as shown in the diagram in the  
figure below.  
+5V 14  
1kOhm  
AX2500 Internal Resistors  
and Converter  
Max Speed Adjust  
10kOhm pot  
Input Ana 1 11  
47kOhm  
or Ana 2 10  
0 Adjust  
100 Ohm pot  
Tach  
A/D  
10kOhm  
47kOhm  
1kOhm  
Ground 5  
FIGURE 75. Tachometer wiring diagram  
Speed Sensor and Motor Polarity  
The tachometer or encoder polarity (i.e. which rotation direction produces a positive of  
negative speed information), is related to the motors rotation speed and direction the  
motor turns when power is applied to it.  
In the Closed Loop Speed mode, the controller compares the actual speed, as measured  
by the tachometer, to the desired speed. If the motor is not at the desired speed and direc-  
tion, the controller will apply power to the motor so that it turns faster or slower, until  
reached.  
Important Warning:  
If there is a polarity mismatch, the motor will turn in the wrong direction and the  
speed will never be reached. The motor will turn continuously at full speed with no  
way of stopping it other than cutting the power or hitting the Emergency Stop but-  
tons.  
Determining the right polarity is best done experimentally using the Roborun utility (see  
1. Disconnect the controllers Motor Power (thick power wires).  
2. Configure the controller in Open Loop Mode using the PC utility. This will cause the  
motors to run in Open Loop for now  
3. Launch the Roborun utility and click on the Run tab. Click the Startbutton to  
begin communication with the controller. The tachometer values will be displayed  
in the appropriate Analog input value boxe(s) which will be labeled Ana 1 and Ana 2.  
If encoders are used, look for the reported speed value in the Enc boxes.  
4. Verify that the motor sliders are in the 0(Stop) position.  
5. If a tachometer is used, verify that the measured speed value read is 0 when the  
motors are stopped. If not, trim the 0offset potentiometer.  
AX2500/2850 Motor Controller Users Manual  
125  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Closed Loop Speed Mode  
6. Apply power to the Motor Power wires (thick power wires). The motor will be  
stopped.  
7. Move the cursor of the desired motor to the right so that the motor starts rotating,  
and verify that a positive speed is reported. Move the cursor to the left and verify  
that a negative speed is reported.  
8. If the tachometer or encoder polarity is the same of the applied command, then the  
wiring is correct.  
9. If the tachometer polarity is opposite to the command polarity, then you can either  
reverse the motors wiring, or reverse the tachometer wires. If an encoder is used,  
you may swap its CHA and ChB outputs  
10. If a tachometer is used, proceed to calibrate the Max Closed Loop speed.  
11. Set the controller parameter to the desired Closed Loop Speed mode using the  
Roborun utility  
Adjust Offset and Max Speed  
For proper operation, the controller must see a 0 analog speed value (2.5V voltage on the  
analog input).  
To adjust the 0 value when the motors are stopped, use the Roborun utility to view the  
analog input value while the tachometer is not turning. Move the 0 offset potentiometer  
until a stable 0 is read. This should be right around the potentiometers middle position.  
The tachometer must also be calibrated so that it reports a +127 or -127 analog speed  
value (5V or 0V on the analog input, respectively) when the motors are running at the max-  
imum desired speed in either direction. Since most tachometers will generate more than  
+/- 2.5V, a 10kOhm potentiometer must be used to scale its output.  
To set the potentiometer, use the Roborun utility to run the motors at the desired maxi-  
mum speed, while in Open Loop mode (no speed feedback). While the tachometer is spin-  
ning, adjust the potentiometer until the analog speed value read is reaching 126.  
Note: The maximum desired speed should be lower than the maximum speed that the  
motors can spin at maximum power and no load. This will ensure that the controller will be  
able to eventually reach the desired speed under most load conditions.  
Important Warning:  
It is critically important that the tachometer and its wiring be extremely robust. If the  
tachometer reports an erroneous voltage, or no voltage at all, the controller will con-  
sider that the motors has not reached the desired speed value and will gradually  
increase the applied power to the motor to 100% with no way of stopping it until  
power is cut off or Emergency Stop is activated.  
126  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Control Loop Description  
Control Loop Description  
The AX2500/2850 performs the Closed Loop Speed mode using a full featured Propor-  
tional, Integral and Differential (PID) algorithm. This technique has a long history of usage in  
control systems and works on performing adjustments to the Power Output based on the  
difference measured between the desired speed (set by the user) and the actual position  
(captured by the tachometer).  
Figure 76 shows a representation of the PID algorithm. Every 16 milliseconds, the control-  
ler measures the actual motor speed and subtracts it from the desired position to compute  
the speed error.  
The resulting error value is then multiplied by a user selectable Proportional Gain. The  
resulting value becomes one of the components used to command the motor. The effect  
of this part of the algorithm is to apply power to the motor that is proportional with the dif-  
ference between the current and desired speed: when far apart, high power is applied,  
with the power being gradually reduced as the motor moves to the desired speed.  
A higher Proportional Gain will cause the algorithm to apply a higher level of power for a  
given measured error thus making the motor react more quickly to changes in commands  
and/or motor load.  
The Differential component of the algorithm computes the changes to the error from one  
16 ms time period to the next. This change will be a relatively large number every time an  
abrupt change occurs on the desired speed value or the measured speed value. The value  
of that change is then multiplied by a user selectable Differential Gain and added to the out-  
put. The effect of this part of the algorithm is to give a boost of extra power when starting  
the motor due to changes to the desired speed value. The differential component will also  
greatly help dampen any overshoot and oscillation.  
The Integral component of the algorithm perform a sum of the error over time. This compo-  
nent helps the controller reach and maintain the exact desired speed when the error is  
reaching zero (i.e. measured speed is near to, or at the desired value).  
AX2500/2850 Motor Controller Users Manual  
127  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Closed Loop Speed Mode  
Proportional  
Gain  
x
x
E= Error  
Desired Speed  
dE  
dt  
Σ
-
Output  
Tachometer  
A/D  
Measured Speed  
Integral  
Gain  
or  
Optical Encoder  
dE  
dt  
x
Differential  
Gain  
FIGURE 76. PID algorithm used in Speed mode  
PID tuning in Speed Mode  
As discussed above, three parameters - Proportional Gain Integral Gain, and Differential  
Gain - can be adjusted to tune the Closed Loop Speed control algorithm. The ultimate goal  
in a well tuned PID is a motor that reaches the desired speed quickly without overshoot or  
oscillation.  
Because many mechanical parameters, such as motor power, gear ratio, load and inertia  
are difficult to model, tuning the PID is essentially a manual process that takes experimen-  
tation.  
The Roborun PC utility makes this experimentation easy by providing a screen for changing  
the Proportional, Integral and Differential gains and another screen for running and monitor-  
ing the motors. Run first the motor with the preset values. Then experiment different val-  
ues until a satisfactory behavior is found.  
In Speed Mode, the Integral component of the PID is the most important and must be set  
first. The Proportional and Differential component will help improve the response time and  
loop stability.  
In case where the load moved by the motor is not fixed, you will need to tune the PID with  
the minimum expected load and tune it again with the maximum expected load. Then try  
to find values that will work in both conditions. If the disparity between minimal and maxi-  
mal possible loads is large, it may not be possible to find satisfactory tuning values.  
Note that the AX2500/2850 uses one set of Proportional Integral and Differential Gains for  
both motors and therefore assumes that similar motors, mechanical assemblies and loads  
are present at each channel.  
128  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
PID tuning in Speed Mode  
AX2500/2850 Motor Controller Users Manual  
129  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Closed Loop Speed Mode  
130  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Optical Incremental Encoders Overview  
SECTION 12  
Installing,  
Connecting and  
Using the  
Encoder Module  
This section describes the Encoder input module that is factory installed inside the  
AX2850, or that may be added onto the AX2550.  
Optical Incremental Encoders Overview  
Optical incremental encoders are a mean for capturing speed and travelled distance on a  
motor. Unlike absolute encoders which give out a multi-bit number (depending on the reso-  
lution), incremental encoders output pulses as they rotate. Counting the pulses tells the  
application how many revolutions, or fractions of, the motor has turned. Rotation velocity  
can be determined from the time interval between pulses, or by the number of pulses  
within a given time period. Because they are digital devices, incremental encoders will  
measure distance and speed with perfect accuracy.  
Since motors can move in forward and reverse direction, it is necessary to differentiate the  
manner that pulses are counted, so that they can increment or decrement a position  
counter in the application. Quadrature encoders have dual channels, A and B, which are  
electrically phased 90° apart. Thus, direction of rotation can be determined by monitoring  
the phase relationship between the two channels. In addition, with a dual-channel encoder,  
a four times multiplication of resolution can be achieved by counting the rising and falling  
edges of each channel (A and B). For example, an encoder that produces 250 Pulses per  
Revolution (PPR) can generate 1,000 Counts per Revolution (CPR) after quadrature.  
AX2500/2850 Motor Controller Users Manual  
131  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Installing, Connecting and Using the Encoder Mod-  
A Channel  
1 Pulse  
= 4 Transitions  
= 4 Counts  
B Channel  
Quadrature  
Signal  
Count Up  
Count Down  
FIGURE 77. Quadrature encoder output waveform  
The figure below shows the typical construction of a quadrature encoder. As the disk  
rotates in front of the stationary mask, it shutters light from the LED. The light that passes  
through the mask is received by the photodetectors. Two photo detectors are placed side  
by side at so that the light making it through the mask hits one detector after the other to  
produces the 90o phased pulses.  
LED light source  
Rotating  
encoder disk  
Stationary mask  
Photodetector  
FIGURE 78. Typical quadrature encoder construction  
Unlike absolute encoders, incremental encoders have no retention of absolute position  
upon power loss. When used in positioning applications, the controller must move the  
motor until a limit switch is reached. This position is then used as the zero reference for all  
subsequent moves.  
Recommended Encoder Types  
The module may be used with most incremental encoder module as long as they include  
the following features:  
Two quadrature outputs (Ch A, Ch B), single ended signal  
2.5V minimum swing between 0 Level and 1 Level on quadrature output  
5VDC operation. 100mA or less current consumption per encoder  
More sophisticated incremental, encoders with differential outputs, index, and other fea-  
tures may be used but these additional capabilities will be ignored.  
The choice of encoder resolution is very wide and is constrained by the modules maxi-  
mum pulse count at the high end, and measurement resolution for speed at the low end.  
132  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Installing the Encoder Module  
Specifically, the encoder module can process 250,000 counts per seconds. As discussed  
in the previous section, a count is generated for each transition on the Channel A and  
Channel B. Therefore the module will work with encoders outputting up to 62,500 pulses  
per second.  
Commercial encoders are rated by their numbers of Pulses per Revolution(also some-  
times referred as Cycles per Revolution). Carefully read the manufacturers datasheet to  
understand whether this number represents the number of pulses that are output by each  
channel during the course of a 360o revolution, rather than the total number of transitions  
on both channels during a 360o revolution. The second number is 4 times larger than the  
first one.  
The formula below give the pulse frequency at a given RPM and encoder resolution in  
Pulses per Revolution.  
Pulse Frequency in Hz = RPM / 60 * PPR * 4  
Example: a motor spinning at 10,000 RPM max, with an encoder with 200 Pulses per Rev-  
olution would generate:  
10,000 / 60 * 200 * 4 = 133.3 kHz which is well within the 250kHz maximum supported by  
the encoder module.  
An encoder with a 200 Pulses per Revolutions is a good choice for most applications.  
A higher resolution will cause the counter to count faster than necessary and possibly  
reach the encoder modules maximum frequency limit.  
An encoder with a much lower resolution, will cause speed to be measured with less pre-  
cision.  
Installing the Encoder Module  
The Encoder module is available in kit form for installation by the user inside the AX2550  
controller. It may also be ordered factory-installed in the controller by using the product ref-  
erence AX2850.  
FIGURE 79. Encoder Module for AX2550. Factory installed in AX2850  
AX2500/2850 Motor Controller Users Manual  
133  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Installing, Connecting and Using the Encoder Mod-  
When installing yourself, follow these simple steps  
1- With the power removed, remove controllers face plate and slide off the cover  
2- Carefully insert the encoder module on top of the two headers present on the control-  
lers main board and shown in Figure 80. Beware that the two matting connectors are pre-  
cisely aligned  
FIGURE 80. Position of Encoder Module on Controllers main board  
3- The encoder module will be held in place by the connectors and the new front brackets  
opening around the RJ11 connector. For added stability, place the foam pad on top of the  
Encoder module as shown in Figure 81 so that it is held in place by the sliding cover. For  
use in harsh shock and vibration environment, you may instead solder a metal wire inside  
the 0.1hole found on the main board (next to one of the two header) and solder the other  
en inside the matching hole on the encoder module, as shown on Figure 82.  
Cover  
Place Foam Block on Encoder module  
Encoder Module  
Main Board  
FIGURE 81. Place foam block between module and cover to hold in place  
134  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Connecting the Encoder  
Encoder Module  
Solder wire  
Main Board  
FIGURE 82. Solder wire for more robust assembly  
4- Slide the cover back on. Install the new face plate  
5- Power on the controller and install version 1.6 or newer of the controller firmware and PC  
utility. Update the encoder firmware if a new version exists.  
Connecting the Encoder  
The Encoder module uses a widely available 8-pin RJ45 connector identical to these found  
on all Ethernet devices. The connector provides 5V power to the encoders and has inputs  
for the two quadrature signals from each encoder. Using multi-level signaling, it is also pos-  
sible to share the quadrature inputs with limit switches. The figure and table below  
describes the connector and its pin assignment.  
1
8
8
1
FIGURE 83. Encoder connector  
TABLE 23. Encoder connector pin descriptions  
Cable Color  
Pin  
1
Name  
(when using standard network cable)  
Encoder 2 - Channel B. Optional Limit Switch 4  
Encoder 2 - Channel A. Optional Limit Switch 3  
Ground  
Orange/White  
Orange  
2
3
Green/White  
Blue  
4
5V Out  
5
Encoder 1 - Channel B. Optional Limit Switch 2  
Encoder 2 - Channel A. Optional Limit Switch 1  
Blue/White  
Green  
6
AX2500/2850 Motor Controller Users Manual  
135  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Installing, Connecting and Using the Encoder Mod-  
TABLE 23. Encoder connector pin descriptions  
Cable Color  
Pin  
7
Name  
Ground  
5V Out  
(when using standard network cable)  
Brown/White  
Brown  
8
Motor - Encoder Polarity Matching  
When using the Encoder module for closed loop speed control, it is imperative that when  
the motor is turning in the forward direction, the counter increments its value, and that a  
positive speed value is measured.  
Using the PC utility, it is possible to exercise the motors and view the encoder readings.  
If the Encoder counts backwards when the motor moves forward, you may correct this by  
either:  
1- Swap Channel A and Channel B on the encoder connector. This will cause the encoder  
module to reverse the count direction  
2- Swap the leads on the motor. This will cause the motor to rotate in the opposite direc-  
tion.  
Voltage Levels, Thresholds and Limit Switches  
The encoder modules input uses a comparator to reshape the encoders output signal. If  
the signal is below a programmable threshold level, then it is considered as a 0. If above, it  
is considered at 1. The output of this comparator feeds the quadrature detector and  
counters.  
On the 2850 family of controllers, the threshold voltage may be changed under software  
control to any value between 0 and 5V to meet unusual encoder specifications. By default,  
the threshold level is 2.5V.  
Another set of comparators on the same input signals detect pulses that above and below  
a fixed 0.5V threshold. Using a special circuitry for creating multi-level signaling (see next  
section below), the output of these comparators serves to detect the status of optional  
limit switches.  
Figure 85 and Figure 84 show the conditioned signals as seen by the encoder.  
In Figure 85, the encoders are connected directly to the Channel A and B inputs. In this  
case, because the encoders 0 level is below 0.5V, it will cause a Switch Detection condi-  
tion which should be ignored.  
136  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Wiring Optional Limit Switches  
2.5V  
0.5V  
Signal on Channel A or B  
Quadrature Signal  
Switch Detect Signal  
(Not meaningful)  
FIGURE 84. Signals seen by encoder using direct connection and no limit switches  
In Figure 84, the encoder and switches are wired to the encoder module using a set of  
resistors designed to create a multi-level signal combining both information. Details on the  
necessary wiring is provided in the next section.  
Since the encoder output signal is shifted-upby a few volts, it always stays above the  
Limit Switch comparators threshold and no Switch Detection condition is generated. How-  
ever, since the limit switches connect to ground when On, the level will dip below the 0.5V  
and generate a Switch Detection condition.  
2.5V  
Signal on Channel A or B  
0.5V  
Quadrature Signal  
Switch Detect Signal  
FIGURE 85. Signals seen by encoder using multi-levels and limit switches  
Important Warning  
When a limit switch is activated, the encoder signal that is shared with the switch is  
not longer visible by the encoder module and pulse counting and speed measure-  
ment stops.  
Wiring Optional Limit Switches  
If limit switches are needed by the application, additional circuitry is required in order to  
create a multi-level signal that share the encoder and the switch information. shows the  
electrical diagram of the required wiring.  
AX2500/2850 Motor Controller Users Manual  
137  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Installing, Connecting and Using the Encoder Mod-  
5V Out  
Ch A In  
1kOhm  
5V  
Ch A  
Ch B  
Encoder  
Encoder Module  
GND  
Ch B In  
GND  
1kOhm  
SW1  
SW2  
FIGURE 86. Signals seen by encoder using multi-levels and limit switches  
Using this circuit, when the switch is open, a 0V (low-level) output from the encoder goes  
through a 1k and 4.7k voltage divider, thus creating a voltage that will never be below 0.8V  
at the encoder modules input.  
When the switch is activated, the modules input is pulled to 0V.  
It is recommended to use a voltmeter and/or oscilloscope to verify that the right voltage  
levels are created as the encoder rotates and the switches activated.  
You may also use the Encoder setup/test function in the Roborun utility (see Encoder  
should increment/decrement as the motor rotate. The switch indicators should be always  
off unless the switches are actually activated.  
Using the Encoder Module to Measure Distance  
As the encoders rotate, their quadrature outputs is automatically processed and incre-  
ments/decrements two 32-bit counter inside the Encoder Module. There is one 32-bit  
counter for each of the encoders.  
The counter values is stored as a signed binary number, ranging from -2,147,836,648 to  
+2,147,836,647 (Hexadecimal format of value 80000000 to 7FFFFFFF respectively. When  
the maximum or minimum counter value is reached, the counter automatically rolls back to  
zero.  
The counters can be read and set using the commands described in RS232 Encoder  
138  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Using the Encoder to Measure Speed  
Using the Encoder to Measure Speed  
The encoder module will automatically compute rotation speed for each encoder. The  
resulting measured speed is a value ranging from 0 to + 127 and 0 to -127, where 127 rep-  
resent a relative ratio of a maximum speed value chosen by the user.  
For example, if the encoder module is configured so that the highest measured speed  
value is 3,000 RPM, then a reading of 63 (127/2) would be 1,500 RPM.  
The relationship between the measured speed and the actual speed is a factor of two vari-  
able parameters: a Time Based period value stored inside the Encoder module and the  
Encoders number of Pulses per Revolution. Note: the Encoders number of Pulses per  
Revolution is not stored in the controller.  
The Time Base is a number of 256us time intervals between two counter reads.  
A simple procedure is included in the Roborun PC utility to easily determining and set  
these parameters.  
For information, the exact formula is shown below:  
Measured Speed Value = RPM * PPR * 4 * (Time Base+1) * 256 / (60 * 1000000)  
or Measured Speed Value = RPM * PPR * (Time Base + 1) / 58593.75  
Example: a motor spinning at 1,000 RPM, with an encoder with 200 Pulses per Revolution,  
and a Time Base set at 4 will produce the following measurement:  
1000 *200 * (4 + 1) / 58593.75 = 17  
The same formula modified to show the actual RPM at a given Measure Speed Value is as  
follows:  
RPM = Measured Speed Value * 60 * 1000000 / (PPR * 4 * 256 * (Time Base+1))  
or RPM = Measured Speed Value * 58593.75 /((Time Base + 1) * PPR)  
In our example, a measured speed value of 127 correspond to the following measurable  
max actual RPM values  
RPM at Max Measurable Speed Value = 127 * 58593.75 / ((4 + 1) * 200) = 7441 RPM  
A measured speed value of 1 correspond to the following measurable min. actual RPM val-  
ues  
RPM at Min. Measurable Speed Value = 1 * 58593.75 / ((4 + 1) * 200) = 58.6 RPM  
The Roborun Utility automatically makes the above calculations when setting up the  
encoder.  
AX2500/2850 Motor Controller Users Manual  
139  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Installing, Connecting and Using the Encoder Mod-  
Using the Encoder to Track Position  
The encoder module can be used to report the distance between the actual motor position  
and a desired destination. The resulting measured distancecan then be used by the con-  
troller in the position mode to move the motor in the right direction until the destination is  
reached. This movement is controlled by the PID position algorithm inside the controller  
and is therefore best suited at tracking position.  
Since the controller uses a signed 8-bit value (-127 to +127) for the distance measurement  
in the Position Mode, a special algorithm is used to convert the real distance which can be  
much higher than -127 to +127 as both the counter and destination registers are 32-bit  
wide.  
The actual formula is as follows:  
Distance = (Destination - Counter value) / Divider  
Where: divider is a configurable parameter of value 1, 2, 4, 8, 16, 32, 64 or 127  
If computed distance is less than -127, then reported distance is -127  
If computed distance is larger than +127, then reported distance is +127  
Destination= 50,050  
Counter= 50,000  
distance  
at divider  
50  
25  
12  
6
1
2
4
8
3
1
0
0
16  
32  
64  
128  
FIGURE 87. Small distance computation example  
Destination= 50,000  
Counter= 45,000  
distance  
127  
127  
127  
127  
127  
127  
78  
at divider  
1
2
4
8
16  
32  
64  
128  
39  
FIGURE 88. Large distance computation example  
Important Notice  
140  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
RS232 Communication with the Encoder Module  
Encoders do not report an absolute position value but a count that is relative to the  
point where the motor shaft was at power up. It is typically necessary to have the  
motors moved to a homeposition and reset the counters at that reference point.  
RS232 Communication with the Encoder Module  
The Encoder Module contains its own Microcontroller and firmware in Flash. The  
Encoders MCU communicates with the one on the main board of the controller. During  
normal operations, the two MCUs exchange information as needed, invisibly to the user.  
During a short time, at power up, however, the Encoders MCU will send data to the main  
serial port.  
The sent data is a separate prompt message which:  
Announces the presence of the encoder MCU  
Outputs its software revision and date  
Outputs a code identifying the modules hardware ID  
This information can be visualized by connecting the controller to a PCs serial port and run-  
ning the Hyperterm terminal emulation software. Note that a link to a properly configured  
Hyperterm session is automatically installed in the Start menu when installing the Roborun  
utility.  
The serial port settings are described in Serial (RS-232) Controls and Operationon  
Power up prompt from main MCU  
Hardware Code of main board  
Power up prompt from encoder MCU  
Hardware Code of Encoder Module  
FIGURE 89. Hyperterm session showing power up messages from both MCUs  
After this information is sent, the Encoders MCU will listenfor approximately 100ms  
and will enter the In System Programming mode (ISP) if the letter Zis sent to it. While in  
the ISP mode, new software can be loaded into the Encoders MCU via the controllers  
main serial port.  
AX2500/2850 Motor Controller Users Manual  
141  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Installing, Connecting and Using the Encoder Mod-  
Details on software updating is given in section Figure , Updating the Encoder Software,”  
RS232 Encoder Command Set  
The Encoder module responds to a dedicated set of commands and queries.  
The serial port setting and basic command format is identical to this for all other functions  
of the controller, as described in Serial (RS-232) Controls and Operationon page 87.  
Read Encoder Counter  
Description:  
Read the value of the Encoder counter(s). The number is a signed 32 bit number that may  
range from -2,147,836,648 to +2,147,836,647. The value is output in Hexadecimal format of  
value 80000000 to 7FFFFFFF respectively. To speed up communication, only the signifi-  
cant digits are sent in response to a counter query. For example, if the counter contains the  
value +5 (which is the same number in decimal and hex), the response to the query will be  
5 and not 00000005. The formatting algorithm takes into account the numbers sign.  
Details on the data format is given in section  
Countersvalues can be read as Absolute or Relative. An Absolute counter read will return  
the full counter value after every read query. In a Relative counter read, the counter value is  
immediately cleared immediately after it is read so that the next read query returns the  
new number of counts since the last time the counter was read.  
Additionally, in a couple of the query modes, the Encoder module returns the sum for both  
counters. This is useful for measuring the average travelled distance by the right and left  
wheels of a robotic vehicle.  
Syntax:  
?q or Qn  
Where n=  
0: Encoder 1, Absolute  
1: Encoder 2, Absolute  
2: Sum of Encoders 1 and 2, Absolute  
4: Encoder 1, Relative  
5: Encoder 2, Relative  
6: Sum of Encoders 1 and 2, Relative  
Reply:  
nnnnnnnn  
Where:  
nnnnnnnn = counter value using 1 to 8 Hex digits. See Counter Read  
Data Formaton page 149 for format description  
Examples:  
?Q0  
?Q5  
Read Encoder 1, Absolute  
Read Encoder 2, Relative  
142  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
RS232 Encoder Command Set  
Set/Reset Encoder Counters and Destination Registers  
Description:  
Set one or both counters to zero or a user-defined value. The value is a signed 32 bit num-  
ber that may range from -2,147,836,648 to +2,147,836,647 (Hexadecimal format of value  
80000000 to 7FFFFFFF respectively.  
While resetting is a single step command, setting the counters to a non-zero value requires  
two steps: 1- load a 4 byte buffer (32-bit) with the desired value. 2- Transfer the buffers  
content to the counter(s). Loading the buffer can be done using the commands described  
also be altered after a Counter Read command, in which case it will contain the last read  
counter value.  
Syntax:  
!q or !Qn  
Where n=  
0: Reset Encoder 1 counter  
1: Reset Encoder 2 counter  
2: Reset both Encoder counters  
4: Set Encoder 1 counter with value in buffer  
5: Set Encoder 2 counter with value in buffer  
6: Set both Encoder both counters with value in buffer  
7: Set Encoder 1 destination register with value in buffer  
8: Set Encoder 2 destination register with value in buffer  
Reply:  
+ if command was properly received and executed  
- if an error occurred  
Examples:  
!Q2  
Reset both counters  
!Q5  
Load value contained in buffer into counter 2  
?Q0, followed by  
!Q1  
Read counter 1 and copy its value into counter 2  
Read Speed  
Description:  
This query will cause the controller to return the speed computed by the Encoder module.  
The values are signed Hexadecimal numbers ranging from -127 to +127. The -127 value rep-  
resents the maximum RPM in the reverse direction. +127 represents the maximum RPM  
in the forward direction. The relation of this relative number and the actual, absolute RPM  
value depends on the encoders resolution and a user programmable Time Base. See  
Syntax:  
Reply:  
?z or ?Z  
nn  
mm  
Where:  
nn = speed 1 value  
mm = speed 2 value  
AX2500/2850 Motor Controller Users Manual  
143  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Installing, Connecting and Using the Encoder Mod-  
Notes:  
The command returns a signed hexadecimal number where 0 to +127 is represented by 00  
to 7F, and -1 to -127 is represented by FF to 80 respectively. The hexadecimal format is  
intended to be deciphered by a microcontroller. When exercising the controller manually,  
you may use the Decimal to Hexadecimal conversion table on page 103.  
Read Distance  
Description:  
This query will cause the controller to return the distance between the current position and  
the value in the destination register. The values are signed Hexadecimal numbers ranging  
from -127 to +127. The -127 value represents the relative distance according to the formu-  
Syntax:  
Reply:  
?d or ?D  
nn  
mm  
Where:  
nn = distance 1 value  
mm = distance 2 value  
Notes:  
The command returns a signed hexadecimal number where 0 to +127 is represented by 00  
to 7F, and -1 to -127 is represented by FF to 80 respectively. The hexadecimal format is  
intended to be deciphered by a microcontroller. When exercising the controller manually,  
you may use the Decimal to Hexadecimal conversion table on page 103.  
Read Speed/Distance  
Description:  
This query is will cause the controller to return either the speed or the distance computed  
by the Encoder module, depending on the operating mode that is selected. This command  
is similar to either of the two previous ones, except that it is read from a different location  
inside the controller and is a filtered value that smoothened abrupt changes.  
Syntax:  
Reply:  
?k or K  
nn  
mm  
Where:  
nn = speed 1 or distance 1 value  
mm = speed 2 or distance 2 value  
Read Encoder Limit Switch Status  
Description:  
This query will cause the controller to return the status of the four optional Encoder limit  
switches. The returned value is a two-digit (8-bit) Hexadecimal number of which the each  
of the 4 least significant bit represents one of the hardware switches.  
144  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
RS232 Encoder Command Set  
Note that for this function to work, limit switches must be connected to the encoder mod-  
ule using the special wiring diagram show in Wiring Optional Limit Switcheson  
page 137. If no limit switches are present, this query will return the logic levels of each of  
the encoders quadrature outputs, which in most cases is not a relevant information.  
Syntax:  
Reply:  
?w or ?W  
0n  
Where:  
n = switch status  
The relationship between the value of n and the switch status is shown in the table below.  
Extracting the status of a given switch from this number is easily accomplished by soft-  
ware using masking.  
TABLE 24. Reported value and switch status relationship  
Switch  
Switch  
n Value  
n Value  
4
0
0
0
0
0
0
0
0
3
2
0
0
1
1
0
0
1
1
1
0
1
0
1
0
1
0
1
4
1
1
1
1
1
1
1
1
3
2
0
0
1
1
0
0
1
1
1
0
1
0
1
0
1
0
1
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
8
9
0
0
0
0
1
1
1
1
A
B
C
D
E
F
Note that the 0 and 1 levels represents a Closed Switch and Open Switch status, respec-  
tively.  
Read / Modify Encoder Module Registers and Parameters  
Description  
These commands make it possible to examine and change parameters that are stored in  
the Encoders module MCU RAM. While this command provides unrestricted access to up  
to 256 memory locations, a small number of these location should ever be read or altered.  
Parameter address and returned values are two digit Hexadecimal numbers (8-bit).  
Important Note  
Command character has been changed from $to *starting in version 1.7 of the  
controller firmware.  
AX2500/2850 Motor Controller Users Manual  
145  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Installing, Connecting and Using the Encoder Mod-  
Read parameter  
Syntax:  
Reply:  
Where  
*mm  
DD  
mm= address location of parameter  
DD= parameter value  
Example:  
*84  
01  
Read value of parameter at address hex 84  
Controller replies, value is 01  
Modify parameter  
Syntax:  
Reply:  
*mm nn  
+ if command was executed successfully  
- if error  
Where  
mm= parameter address  
nn= new parameter value  
Examples:  
*84 03  
Store 03 into parameter at address hex 84  
Notes:  
All parameters and values are expressed with 2 hexadecimal digits  
The table below lists maps the few relevant parameters that can be accessed using this  
command.  
TABLE 25.  
Address  
84  
Parameter Description  
Size  
Access  
Full  
Encoder Hardware ID Code  
1 byte  
1 byte  
1 byte  
1 byte  
85  
Switches Status  
Full  
86  
Speed or Distance 1 (depending on operating mode)  
Speed or Distance 2 (depending on operating mode)  
Counter Read/Write Mailbox MSB (bits 31 to 24)  
Counter Read/Write Mailbox (bits 23 to 16)  
Counter Read/Write Mailbox (bits 15 to 8)  
Counter Read/Write Mailbox LSB (bits 7 to 0)  
Counter 1 MSB (bits 31 to 24)  
Full  
87  
Full  
88  
89  
4 bytes  
Full  
8A  
8B  
8C  
8D  
8E  
Counter 1 (bits 23 to 16)  
4 bytes  
Limited  
Counter 1 (bits 15 to 8)  
8F  
Counter 1 LSB (bits 7 to 0)  
146  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Register Description  
TABLE 25.  
Address  
90  
Parameter Description  
Size  
Access  
Counter 2 MSB (bits 31 to 24)  
Counter 2 (bits 23 to 16)  
91  
4 bytes  
Limited  
92  
Counter 2 (bits 15 to 8)  
93  
Counter 2 LSB (bits 7 to 0)  
94  
Destination Register 1 MSB (bits 31 to 24)  
Destination Register 1 (bits 23 to 16)  
Destination Register 1 (bits 15 to 8)  
Destination Register 1 LSB (bits 7 to 0)  
Destination Register 1 MSB (bits 31 to 24)  
Destination Register 1 (bits 23 to 16)  
Destination Register 1 (bits 15 to 8)  
Destination Register 1 LSB (bits 7 to 0)  
Distance 1 (when Position Mode enabled)  
Distance 2 (when Position Mode enabled)  
Speed 1  
95  
4 bytes  
4 bytes  
Full  
Full  
96  
97  
98  
99  
9A  
9B  
9C  
8D  
86  
1 byte  
1 byte  
1 byte  
1 byte  
1 byte  
Full  
Full  
Full  
Full  
Full  
87  
Speed 2  
A2  
Time Base for speed computation of Encoder 1. Multiply  
this number by 256us to obtain the actual Time Base period.  
A3  
A4  
Time Base for speed computation of Encoder 2. Multiply  
this number by 256us to obtain the actual Time Base period.  
1 byte  
1 byte  
Full  
Full  
Encoder threshold level (see Voltage Levels, Thresholds  
A5  
A6  
Distance divider  
Mode Selection  
1 byte  
1 byte  
Full  
Limited  
Important Warning  
Do not alter any other area locations as this may cause program execution failure  
inside the encoder module.  
Register Description  
Encoder Hardware ID code  
Returns a 4-bit number identifying the encoder module hardware version and the status of  
two on-board jumpers. For Roboteq use only.  
AX2500/2850 Motor Controller Users Manual  
147  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Installing, Connecting and Using the Encoder Mod-  
Switch Status  
Returns a 4 bit number (4 least significant bits of the byte), each representing the state of  
one of the limit switch when installed. The ?W command described at Read Encoder  
Limit Switch Statuson page 144 is a preferred method for reading this information  
Speed or Distance 1 or 2  
These two registers contain either the measured speed or the measured distance.  
Whether speed or distance information is returned depends on the settings contained in  
the Mode register described at. This information is returned using the ?p query (see  
Counter Read/Write Mailbox  
Since the counters are 32 bits wide and accesses are 8 bit wide, it would normally take  
four separate accesses to fully read or write any of the counters. If the motors are running  
and the counter is changing in-between these accesses, inaccurate data will be either read  
or written. Therefore a two step process is implemented for accessing the encoders  
counters: for loading a new value in the counter, the value must first be loaded in the mail-  
box. It is then transferred in a single step using a command. When reading a counter, a  
read command is sent to the encoder module who then copies the counter value into the  
mailbox. The mailbox system can be used in the same way for reading and writing the des-  
tination register.  
Practically reading a counter is done by a single command described in Read Encoder  
Counteron page 142. This command will perform the steps above and output the  
selected counter value.  
Writing a user-defined value into a counter or destination register requires that the value be  
loaded in the mailbox using the steps defined in Read / Modify Encoder Module Registers  
and Parameterson page 145, and then the issuance of one of the commands described  
Counter 1 and 2  
These two 32-bit (4-bytes) registers are the actual counters. As discussed above, they  
should not be accessed directly as their value may be changing in-between the four  
accesses needed to read or write a complete 32-bit counter.  
Destination Register 1 and 2  
These two 32-bit (4-bytes) registers are used to store the desired destination when the  
controller is used in position mode. These registers should always be set using the mailbox  
mechanism described above. See Using the Encoder to Track Positionon page 140 for a  
complete description of the position mode.  
Distance 1 and 2  
These registers contain a signed 8-bit value (-127 to +127) that represents the distance  
between the current counter position and the desired destination. This number is com-  
puted using a formula described in section Using the Encoder to Track Positionon  
148  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
           
Counter Read Data Format  
Speed 1 and 2  
These registers contain a signed 8-bit value (-127 to +127) that represents the motor speed  
relative to a maximum speed, which in turn depends on the number of encoder counts and  
time base settings as described in Using the Encoder to Measure Speedon page 139.  
Time Base 1 and 2  
These registers contain the timing information for measuring the speed. See Using the  
Encoder Threshold  
This register contains a value that is used to detect a logic level 1 vs. a 0 at any of the 4  
encoder input lines. Voltage threshold is computed as follows:  
Voltage Threshold = 5V * Register Value / 255  
tion.  
Counter Read Data Format  
When receiving a counter read query, the encoder module will output the value of its 32-bit  
counter. If all 32-bit are sent, this would require 8 ASCII digits to represent the value.  
A 32-bit counter can store over 2 billion counts in each direction. Practically, it will be rare  
that counts will be that large and therefore only a partial number of the counters bits will  
be significant at any given time.  
In order to create a more efficient data stream on the controllers serial port, a simple com-  
pression technique is implemented. The scheme eliminates all of the counters most signif-  
icant bits if they are at 0 (for a positive count number) or F (for a negative count number).  
For example, if the counter value is Hex 00000015, the value 15 will be returned after a  
counter query.  
For negative numbers, a count value of -5 (which is FFFFFFFB in hex), the response to the  
query will be B.  
To distinguish between positive and negative numbers, the Encoder module will insert a 0  
ahead of any number string starting with a digit value higher than 7 (i.e. 8 to F) to signify  
that the number is positive. For negative numbers, the Encoder module will insert an F  
ahead of any number string starting with a digit value lower than 8 (i.e. 0 to 7). The table  
below shows examples of this scheme as applied to various counter values  
TABLE 26. Example counter values and RS232 output using reduction scheme  
Decimal  
+5  
32-bit Hex  
00000005  
000000FA  
FFFFFFFA  
Controller Output  
5
+250  
-6  
0FA  
A
AX2500/2850 Motor Controller Users Manual  
149  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
Installing, Connecting and Using the Encoder Mod-  
TABLE 26. Example counter values and RS232 output using reduction scheme  
Decimal  
-235  
32-bit Hex  
FFFFFF15  
056CB872  
FF862455  
Controller Output  
F15  
+91,011,186  
-7,986,091  
56CB872  
862455  
When reading the counter value into a microcomputer, the reverse operation must take  
place: any output that is less than 8 digit long must be completed with a string of 0s if the  
first digit is of value 0 to 7, or with a string of Fs if the first digit is of value 8 to F.  
The resulting Hex representation of a signed 32-bit number must then be converted to  
binary or decimal as required by the application.  
The burden of this extra processing is more than offset by the bandwidth relief on the con-  
trollers serial port.  
Encoder Testing and Setting Using the PC Utility  
Extensive diagnostic, calibration, setting and testing support is provided in the Roborun PC  
utility. Basic instructions on how to install and run the PC utility can be found in Using the  
Once the utility is up and running and the controller found and identified, click on the  
Encodertab to bring up the Encoder configuration and setup screen show in Figure 90  
below.  
4
1
5
6
2
3
7
7
FIGURE 90. Encoder setup and test screen on Roborun  
With this utility, the following actions can be accomplished:  
150  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Encoder Testing and Setting Using the PC Utility  
Set and program the Encoder modules parameters in EEPROM  
Activate the motors in each direction at variable speed  
View the measured encoder counts  
View the measured encoder speed  
View the status of the Limit Switches  
The screen is composed of the following buttons and displays:  
1- Setting of the Encoders threshold level  
2- Setting of the Time Base for speed computation  
3- Setting Divider for computing relative distance  
4- Measure and display speed and relative distance  
5- Measure and display counter values  
6- Detect and display optional limit switch status  
7- Start/Stop communication with controller  
8- Set motor speed and direction for testing  
Encoder Module Parameters Setting  
The Encoder module has 4 programmable parameters: Two Time Bases (one for each  
encoder), a Divider for computing relative distance, and the voltage threshold for discern-  
ing a 0 or 1 level at the encoders output. In the case of the AX2500/2850, the threshold is  
fixed at 2.5V and cannot be changed.  
The Time Base parameter is used to compute the speed measured by the module. The  
measured speed is a relative number ranging from 0 to +/-127.  
The relationship between this relative speed number and the actual RPM is based on the  
Time Base value and the Encoders Pulses Per Revolution (PPR) value (see Using the  
On this screen, changing the Time Base and PPR values automatically display the Max  
RPMvalues that can be measured with these settings. For example, with a default set-  
ting of 16 and 200 for the Time Base and PPR respectively, the maximum RPM values is  
2188. This means that when the motors rotate at 2188 RPM, the measured relative speed  
is +127. If the motor spins faster, the speed is still reported to be +127.  
Note that the PPR value is not stored in the controller. It is used only in Roborun to convert  
relative speed into actual RPM.  
The Divider parameter is described in Using the Encoder to Track Positionon page 140.  
The threshold level parameter and its operation is described in Voltage Levels, Thresholds  
AX2500/2850 Motor Controller Users Manual  
151  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Installing, Connecting and Using the Encoder Mod-  
Exercising the Motors  
A set of buttons and sliders are provider to starting/stopping communication with the con-  
troller and encoder.  
When communication is active, the screen will be updated with Encoder data.  
Moving the motor sliders will set the motors to the desired speed and direction.  
Viewing Encoder Data  
During operation, this screen will let you view the following information:  
The instantaneous relative 0 to +/-127 speed value  
The instantaneous relative distance to destination (0 after reset)  
The actual speed computed from the measured relative speed value, encoder Time  
Base, and Encoder PPR. The PPR value must be entered manually on this  
screen every time you run the utility as it is not stored in the controller or on the  
PC.  
The Encoder counter values  
The status of the optional limit switches  
Updating the Encoder Software  
The Encoder Module has its own dedicated MCU and software in Flash memory. It may be  
updated using the Roborun Utility in the same manner as for updating the controllers soft-  
ware (see Updating the Controllers Softwareon page 174). Then select the new soft-  
ware file to download. The files content automatically identifies it as software for the  
Encoder MCU rather that the Controllers MCU.  
152  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
SECTION 13  
Configuring the  
Controller using  
the Switches  
The AX2500/2850 Speed Controller can be programmed to operate in many modes  
using a simple set-up procedure. Two buttons and a 7-segment LED display let the  
user examine and change these settings. Alternatively, the controller may be pro-  
grammed using a PC connected to the AX2500/2850 controller through the RS232  
serial communication port.  
The new settings are then permanently stored in the controllers Flash memory so  
that jumpers are not required, resulting in improved system reliability.  
Programming Methods  
There are three methods for programming the AX2500/2850s settings:  
Using the controllers built-in switches and display. This method is described  
in details in this chapter.  
Using the PC-based Configuration Utility. See Using the Roborun Configura-  
Sending RS232 commands manually. See RS232 Accessible Parameter  
Programming using built-in Switches and Display  
Two switches and an LED display are provided to let you easily configure the con-  
troller in any of its many operating modes. Unlike the RS232 programming mode,  
the switches will let you configure the controller without the need for external hard-  
ware or special connectors. In this mode, the controller may be configured while  
installed on the robot without the need for special tools or a PC. Figure 91 shows  
the placement of the switches and display.  
AX2500/2850 Motor Controller Users Manual  
153  
Download from Www.Somanuals.com. All Manuals Search And Download.  
         
Configuring the Controller using the Switches  
Program Set  
Reset  
1- Press and hold for 10 sec-  
onds while resetting or  
powering up to enter Pro-  
gram mode  
2- When in Programing  
mode, display flashes  
parameter and its current  
value  
3- Press to advance to next  
value for parameter.  
4- Press once to record  
value change (if any) and  
move to next parameter  
Press and hold Program and Set buttons together  
for 10 second while resetting or powering on to  
restore factory defaults  
FIGURE 91. Operating the controllers buttons and display  
Entering Programming Mode  
Programming mode is entered by pressing and holding the Program button for 10 seconds  
after resetting the controller. The controller can be reset by powering it down and up or by  
pressing the Reset switch inserting a paper clip in the hole.  
While the button is pressed and until the controller enters the programming mode, the dis-  
play will show the following steady pattern.  
After 10 seconds, the controller will enter the programming mode and flash a letter repre-  
senting the first parameter in the list, followed by its numerical value.  
Important Warning  
154  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Programming using built-in Switches and Display  
Be careful not to confuse the Set and Program button when entering the Program-  
ming Mode. Pressing and holding the Set button alone for 10 seconds after reset will  
cause the controller to enter in self-test mode. This will cause the motors to be  
turned On and Off according the test sequence described in the Self Test section of  
Changing parameters  
Pressing the Set button while in Programming Mode will cause the value of the parameter  
being inspected to be incremented by one. When the maximum valid value is reached,  
pressing Set again will cause the value to restart at 0.  
When the desired value is displayed, press the Program button to store it in the control-  
lers non-volatile memory. This will also cause the controller to display the next parameter  
and its current value.  
Note that a new parameter value will ONLY be saved if the Program button is pressed  
after the value has been changed with the Set button.  
Additionally, once you have pressed the Set button and begin changing a parameters  
value, it is not possible to cancel the change. If you wish to leave a parameter value  
unchanged after you have started changing it, you must press the Set button again several  
times until it goes back to its original value. Alternatively, you can reset or power Off the  
controller to prevent the new value to be recorded.  
The Special Case of Joystick Calibration  
When the Joystick parameter is selected (Jand -flashing), pressing the Set key again  
will cause the controller to enter the Radio Control Joystick calibration sequence.  
Once the joystick calibration mode is entered, the display will flash Jand o. With the R/  
C receiver and transmitter On, move both joysticks to their full forward, full back, full left  
and full right positions a few times. This will cause the controller to capture the min. and  
max. joystick position values.  
Then move the joysticks to their central (rest) positions. Press the Program button to save  
these values in the controllers Flash memory. The min. and max. values saved are these  
captured when the joystick was moved around. The center values saved are the position of  
the joystick as it was when Program was pressed.  
Note that once the Joystick calibration mode is entered, you must go through the com-  
plete calibration sequence described above. If the joysticks are not moved, incoherent data  
may be saved in the Flash causing the controller to malfunction in the R/C mode. If bad cal-  
ibration data is saved in the Flash, try calibrating again by repeating the entire Joystick Pro-  
gramming sequence, otherwise you may restore the factory defaults (this will cause all  
parameters you have changed to be restored to their default values as well)  
The Joystick calibration operation is fully described in the R/C mode chapter. See Left /  
Restoring factory defaults  
Should you, for any reason, require to reset the AX2500/2850 controller to its factory  
defaults value, press and hold the Program and Set button together for 10 seconds while  
AX2500/2850 Motor Controller Users Manual  
155  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Configuring the Controller using the Switches  
resetting the controller. All parameters, including Joystick limits will be reset to their  
default values shown in the Programmable Parameters Liston page 156  
Exiting the Parameter Setting Mode  
Exiting the Programming Mode can be done only by pressing the Reset button or powering  
down the controller. The new parameters will be the ones in use after the controller is  
reset or first powered up.  
Programmable Parameters List  
The following table shows the AX2500/2850s controller parameters in the order they  
appear during programming, as well as their valid values.  
Important Notice  
The parameter table below is guaranteed to be accurate only if your controller soft-  
ware version number matches the one of this manual. See Obtaining the Control-  
lers Software Revision Numberon page 19 for instructions on how to find this  
number.  
This manual is for software version 1.7  
If your controller has a more current software revision, please download an updated ver-  
sion of this manual from the Roboteq web site at www.Roboteq.com.  
156  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Programmable Parameters List  
This table shows only the parameters that can be programmed using the switches  
and display. Other less commonly used parameters exist and are only accessible and pro-  
grammable using the Configuration Utility (page 159) or the RS232 commands (page 99).  
TABLE 27. Parameters accessible using the controllers switches and display  
See  
Order  
Letter  
Description  
Possible Values (default)  
(0) = R/C Radio mode (default)  
1 = RS232 full duplex, no watchdog  
2 = RS232 half duplex, with watchdog  
3 = Analog mode  
pages  
1
I
Input Command  
mode:  
2
C
Motor Control mode  
(0) = Separate A, B, speed control, open  
loop (default)  
1 = Mixed A & B, speed control, open loop  
For safety reasons, the modes below  
cannot be selected using the switches.  
2 = Speed control on A, open loop. Posi-  
tion control on B  
3 = A & B Position control  
4 = Separate A, B, speed control, closed  
loop  
5 = Mixed A & B, speed control, closed  
loop  
6 = Speed control on A, closed loop. Posi-  
tion control on B  
3
A
Amp limit  
0 = 30A  
1 = 45A  
2 = 60A  
3 = 75A  
4 = 90A  
(5) = 105A default  
6 = 120A  
Amps may be set with a finer resolution  
using the PC utility  
4
S
Acceleration  
0 = very slow  
1 = slow  
(2) = medium (default)  
3 = medium  
4 = fast  
5 = fastest  
Acceleration may be set with a finer resolu-  
tion using the PC utility  
AX2500/2850 Motor Controller Users Manual  
157  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Configuring the Controller using the Switches  
TABLE 27. Parameters accessible using the controllers switches and display  
See  
pages  
Order  
Letter  
Description  
Possible Values (default)  
5
U
Input switch function 0 = causes emergency stop  
1 = invert commands switch  
(2) = no action (default)  
6
7
b
d
Brake/Coast  
Not implemented  
0 = no deadband ***  
1 = 8%  
R/C Joystick Dead-  
band  
Analog Input Dead-  
band  
(2) = 16% (default)  
3 = 24%  
4 = 32%  
5 = 40%  
6 = 46%  
7 = 54%  
8
E
Exponentiation on  
channel 1  
(0) = Linear (no exponentiation - default)  
1 = strong exponential  
2 = normal exponential  
3 = normal logarithmic  
4 = strong logarithmic  
Same as E, above  
9
F
L
Exponentiation on  
channel 2  
10  
Left / Right Adjust  
(7) = no adjustment (default)  
0, 1, ..., 6 = -5.25%, -4.5%, ...,-0.75%  
8, ..., D, E** = +0.75, ..., +4.5%, +5.25%  
- = not calibrating  
11  
J
Joystick calibration  
o = in calibration mode  
*The coast function is not implemented in this revision of the software. The controller will  
only operate in brake mode.  
** Values are in hexadecimal numbers where the decimal values 10, 11, 12... 15 are repre-  
sented with the letters A, B, C... F.  
*** Deadband percent values shown are for R/C mode. For analog deadband values, see  
158  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
SECTION 14  
Using the Roborun  
Configuration  
Utility  
A PC based Configuration Utility is available, free of charge, from Roboteq. This pro-  
gram makes configuring and operating the AX2500/2850 much more intuitive by  
using pull-down menus, buttons and sliders. The utility can also be used to update  
the controllers software in the field as described in Updating the Controllers Soft-  
System Requirements  
To run the utility, you will need the following:  
PC compatible computer running Windows 98, Me, 2000 or XP  
An unused serial communication port on your computer with a 9-pin, female  
connector.  
An Internet connection for downloading the latest version of the Roborun  
Utility or the Controllers Software  
5 Megabytes of free disk space  
If you do not have a free serial port, the Configuration Utility can still run, but you will  
not be able to communicate with the controller.  
If your PC is not equipped with an RS232 serial port, you may add one using an USB  
to RS232 converter.  
Downloading and Installing the Utility  
The Configuration Utility is included on the CD that is delivered with the controller or  
may be obtained from the download page on Roboteqs web site at  
www.roboteq.com. It is recommended that you use the downloaded version to be  
sure that you have the latest update.  
download and run he file robosetup.exe  
follow the instructions displayed on the screen  
AX2500/2850 Motor Controller Users Manual  
159  
Download from Www.Somanuals.com. All Manuals Search And Download.  
         
Using the Roborun Configuration Utility  
after the installation is complete, you will be able to run the program from your Start  
Menu > Programs > Roboteq  
You do not need to have the controller connected to your PC to start the Utility.  
Connecting the Controller to the PC  
The controller must be connected to the PC if you plan to use the Utility to perform any of  
the following functions  
to read the current parameters stored in the controller and display them on the  
computer  
to store new parameters in the controller  
to exercise the motors using your PC  
to update the controllers software  
If the controller is not connected, the Configuration Utility can run and may be used to  
automatically generate the setting codes for manual entry. See Viewing the Parameters  
Most computers have at least one, but often times two serial ports. Look for one or two  
connectors resembling the illustration in Figure 92.  
FIGURE 92. Look for a 9-pin male connector on your  
If you have a serial port connector that is already connected to something else, you may be  
able unplug your current device and temporarily connect the controller as long as the soft-  
ware operating the current device is not running.  
Connect the provided serial cable to the controller on one end and to the PC on the other.  
Power the controller, preferably using the yellow Power Control wire, with a 12 to 40V bat-  
tery or power supply with 200mA of minimum output.  
Connect the thin black wire to the negative (-) terminal, and the Power Control input to the  
positive (+) of the power supply. The controller will turn On. If it doesnt, verify that you  
have not reversed the polarity.  
Upon powering On, the controller will display no ctrlif configured in the R/C mode or a  
steady pattern if configured in the RS232 mode.  
160  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Roborun Frame, Tab and Menu Descriptions  
Roborun Frame, Tab and Menu Descriptions  
2
1
4
3
FIGURE 93. Roborun screen layout  
The Roborun screen contains the four main set of commands and information frames  
described below:  
1- Program Revision Number  
This is the revision and date of the Roborun utility. It is recommended that you always ver-  
ify that you have the latest revision of the utility from Roboteqs web site at  
www.roboteq.com  
2- Controller and Communication Link Information  
This frame will automatically be updated with an indication that a free communication port  
was found and opened by the utility.  
If no free communication port is available on your computer, it will be indicated in this win-  
dow. You should try to select another port using the Change COM Portbutton or try to  
free the port if it is used by a different device and program.  
AX2500/2850 Motor Controller Users Manual  
161  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Using the Roborun Configuration Utility  
With the port open, Roborun will try to establish communication with the controller. If suc-  
cessful, this window will display the software revision, the revision date and a set of digits  
identifying hardware revision of the board inside the controller.  
3- Parameter Selection and Setting, and Special Functions  
This is the programs main frame and includes several types of tabs, each of which has sev-  
eral buttons, menus and other User Interface objects. These tabs and the functions they  
contain are described in detail in the following sections.  
You can go from one set of commands to another by clicking on the desired tab.  
4- File and Program Management Commands  
This frame contains a variety of buttons needed to load and save the parameters from and  
to the controller or disk. This frame also contains the button needed to initiate a software  
update to the controller.  
Getting On-Screen Help  
The Roborun buttons and fields are very intuitive and self-explanatory. Additional explana-  
tions and help is provided by means of ToolTips for each command. Simply move the cur-  
sor to a button, tab or other gadget on the screen and a message box will appear after a  
few seconds.  
Loading, Changing Controller Parameters  
The first set of tabs allows you to view and change the controllers parameters. These tabs  
are grouped according to the general type of parameters (Controls, Power Setting, and R/C  
Settings).  
When starting Roborun, this screen is filled with the default values. If the controller is con-  
nected to your PC, Roborun will automatically detect it and ask you if you wish to read its  
settings.  
You can read the controllers setting in the PC at any other time by pressing the Load from  
Controllerbutton. After changing a parameter, you must save it to the controller manually  
by pressing the Save to Controllerbutton.  
162  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Loading, Changing Controller Parameters  
Controls Settings  
1
2
3
4
5
FIGURE 94. Control modes setting screen  
The screen shown in Figure 94 is used to view and change the controllers main control  
modes. Below is the list of the parameters accessible from this screen  
1- Controller Input:  
This pull down menu allows you to select the RS232, R/C or Analog mode of operation. If  
the RS232 mode is selected, a check box will appear, allowing you to enable or disable the  
RS232 Watchdog. For more information on these modes, see  
2- Motor Control Mode  
This pull down menu is used to choose whether the controller will operate in Separate or  
Mixed mode. For more information on these modes, see Selecting the Motor Control  
3- Input Command Adjustment  
These pull down menus will let you select one of five conversion curves on each of the  
input command values. See Command Control Curveson page 42.  
4- Emergency Stop or Invert Switch Select  
AX2500/2850 Motor Controller Users Manual  
163  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Using the Roborun Configuration Utility  
This pull down menu will let you select the controllers response to changes on the  
optional switch input: Emergency Stop, Invert Commands, or no action. See Emergency  
5- Effect of Digital Inputs  
This pull down menu will let you select the controllers response to changes on either of  
Power Settings  
1
2
3
FIGURE 95. Power settings screen  
The screen shown in Figure 95 is used to view and change the power parameters of the  
controller.  
1- Amps limit  
This slider will let you select the max amps that the controller will deliver to the motor  
before the current limitation circuit is activated. See Current Limit Settingson page 38.  
2- Left/Right Adjust  
This slider will let you configure the controller so that it applies more power to the motors  
in one direction than in the other. See Left / Right Tuning Adjustmenton page 43.  
3- Acceleration Setting  
This slider will let you select one of seven preset acceleration values. The label on the right  
shows a numerical value which represents the amount of time the controller will take to  
accelerate a motor from idle to maximum speed. See Programmable Accelerationon  
164  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Loading, Changing Controller Parameters  
Analog or R/C Specific Settings  
1
2
FIGURE 96. Power settings screen  
The screen shown in Figure 96 is slightly different whether the Analog Input mode is  
selected or not.  
If the Analog Input mode is selected on the main screen, then this page is used to set the  
Analog Deadband value. In the R/C mode, this page is used to view and change parame-  
ters used in the R/C mode of operation. None of these parameters has any effect when  
running the controller in RS232 mode.  
If the controller is configured in RS232 mode, some of these menus will be grayed-out but  
will remain active.  
1- Deadband  
This slider will let you set the amount of joystick motion off its center position before the  
motors start moving. The slider will work identically in the R/C or analog mode, however,  
the % value will be different. See Joystick Deadband Programmingon page 80 and  
2- Joystick Timing  
These fields are enabled only if the R/C mode is selected. These number areas will let you  
read and modify the R/C pulse timing information used by the controller. New values can  
be entered manually to create different capture characteristics. They are also useful for  
viewing the stored values after an automatic joystick calibration sequence. See Joystick  
AX2500/2850 Motor Controller Users Manual  
165  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Using the Roborun Configuration Utility  
Closed Loop Parameters  
FIGURE 97. Closed Loop parameter setting screen  
This screen shown in Figure 97 is used to set the Proportional, Integral and Differential  
gains needed for the PID algorithm. These parameters are used in the Position mode (see  
page 115) and the Closed Loop speed mode (see page page 123).  
Viewing the Parameters Summary  
The summary page will list the command letter and value for each parameter, as defined in  
the various parameter setting screens.  
It is possible to print this screen and bring it to the controller in order to then quickly and  
accurately update the controllers parameters using the switch and display. See Program-  
Important Notes:  
Most but not all configuration parameters can be updated using the switches.  
The print command will automatically use your default printer. No print setup box  
will be displayed.  
166  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Optical Encoder Operation  
FIGURE 98. Viewing parameters summary  
Optical Encoder Operation  
The Roborun utility provides many facilities for configuring and testing the Optical Encoder  
module contained in the AX2850. These are described in detail in Encoder Testing and  
Running the Motors  
The Roborun utility will let you exercise and monitor the motors, sensors and actuators  
using your computer. This feature is particularly useful during development as you will be  
able to visualize, in real-time, the robots Amps consumption and other vital statistics dur-  
ing actual operating conditions.  
Figure 99 shows the Run Screen and its numerous buttons and dials.  
AX2500/2850 Motor Controller Users Manual  
167  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Using the Roborun Configuration Utility  
7
4
1
3
2
8
6
5
FIGURE 99. Motor exercising and monitoring screen  
1- Run/Stop Button  
This button will cause the PC to send the run commands to the controller and will update  
the screen with measurements received from the controller.  
When the program is running, the buttons caption changes to Stop. Pressing it again will  
stop the motors and halt the exchange of data between the PC and the controller.  
If you select another tab while the program is running, the program will stop as if the Stop  
button was pressed.  
2- Motor Power setting  
This sub-frame contains a slider and several buttons. Moving the slider in any direction  
away from the middle (stop) position will cause a power command to be issued to the con-  
troller. The value of the command is shown in the text field below the slider.  
The stop button will cause the slider to return to the middle (stop) position and a 0-value  
command to be sent to the controller. The + and ++ buttons will cause the slider to move  
by 1 or 10 power positions respectively.  
3- Measurement  
These series of fields display the various operating parameters reported in real-time by the  
controller:  
The Amps field reports the current measured at each channel. The Peak Amps field will  
store the highest measured Amp value from the moment the program began or from  
when the peak was reset using the Clr Peak button.  
168  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Running the Motors  
The Power field displays the power level that is actually being applied to the motor. This  
value is directly related to the motor command except during current limitation, in which  
case the power level will be the one needed to keep the Amps within the limit. Note that  
the display value is not sign and thus does not provide rotation direction information  
The Ana field contains the analog input value that is measured and reported by the control-  
ler. When the controller is in the position mode, this field will display the position sensed  
on the potentiometer. When in speed mode, this field displays the measured speed by the  
tachometer.  
In all other mode, this field will display the value at the analog input pin. A small button next  
to this field will toggle the display caption, and conversion algorithm from raw analog, volts  
or temperature.  
Note that in order to measure and display external temperature or voltage, the proper  
external components must be added to the controller. See Connecting External Ther-  
The Enc field contains the speed or position measured by the Optical Encoder if enabled.  
The Temp field displays the heat sink temperature for each channel  
The Bat Volt field displays the main batterys voltage (voltage applied to the thick red  
wires).  
The Ctrler Volt field displays the controllers internal regulated 12V voltage.  
4- Real-Time Strip Chart Recorder  
This chart will plot the actual Amps consumption and other parameters as measured from  
the controller. When active, the chart will show measurement during the last five seconds.  
The two handles at the bottom of the chart are zoom in or out the history sample that is to  
be displayed on the chart. Using these handles it is possible to go back and examine any  
event up to 5 minutes into the past. This feature is extremely useful during development  
and test of the robotic vehicle.  
5- Transmit and Receive Data  
These two fields show the data being exchanged between the PC and the controller. While  
these fields are updated too fast to be read by a person, they can be used to verify that a  
dialog is indeed taking place between the two units.  
After the Start button is pressed, the Tx field will show a continuous string of commands  
and queries sent to the controller.  
The Rx field will display the responses sent by the controller. If this field remains blank or is  
not changing even though the Tx field shows that data is being sent, then the controller is  
Off or possibly defective. Try resetting the controller and pressing the Run/Stop button.  
6- Input Status and Output Setting  
This section includes two check boxes and three color squares. The check marks are used  
to activate either of the controllers two outputs. The color blocks reflect the status of the  
AX2500/2850 Motor Controller Users Manual  
169  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Using the Roborun Configuration Utility  
three digital inputs present on the controller. Black represents a 0level. Green repre-  
sents a 1level.  
7- Data Logging and Timer  
A timer is provided to keep track of time while running the motors. An additional set of but-  
tons and displays are provided to operate a data logger. The data logger is fully described in  
the section that follows.  
8- Joystick Enable  
Enable and configure a joystick.  
Logging Data to Disk  
While running the motors, it is possible to have Roborun capture all the parameters that  
were displayed on the various fields and charts, and save them to disk. The log function is  
capable of recording 32,000 complete sets of parameters, which adds up to approximately  
30 minutes of recording time. The figure below details the buttons and check boxes  
needed to operate this function.  
1- Log Check Box  
When checked, Roborun will capture all the parameters and save them in local RAM. The  
data is not saved to disk until the Save to Diskbutton is pressed. Data is being captured  
for as long as the program is in the Run mode, whether or not a motor command is  
applied.  
2- Clear Log  
This button can be pressed at any time to clear the local RAM from its content. Clearing  
the log also has the effect of resetting the timer.  
3- Log Fill Status  
This grayed text box indicates whether the local RAM log is empty, full, or in-between.  
4- Reset Timer button  
The timer automatically runs when the Run button is pressed and data is being exchanged  
with the controller, regardless whether logging is activated. This button resets the timer.  
5- Save Log to Disk button  
Pressing this button will prompt the user to select a filename and location where to copy  
the logged data. The file format is a regular text file with each parameter saved one after  
the other, separated by a coma. The file extension automatically defaults to .csv (coma  
separated values) so that the data can be imported directly into Microsoft Excel. The first  
170  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Running the Motors  
line of the save file contains the Header names. Each following line contains a complete  
set of parameters. The Header name, order and parameter definition is shown in Table 28  
TABLE 28. Logged parameters order, type and definition  
Parameter Header  
Seconds  
Data type/range  
Integer  
Measured Parameter  
Timer value expressed in seconds  
Command applied to channel 1  
Command applied to channel 2  
Command1  
Command2  
Power1  
-127 to +127  
-127 to +127  
0 to 127  
Amount of power applied to the output stage of chan-  
nel 1  
Power2  
0 to 127  
Same for channel 2  
Ana 1, Speed 1, Pos 1  
or Temp 1  
or Volt 1  
-127 to + 127  
-40 to +150  
0 to 55  
Value of sensor connected on analog input 1. Data is  
automatically converted to the right value and format  
by Roborun according to the sensor that is being used  
Ana 2, Speed 2, Pos 2  
Temp 2 or  
Volt 2  
-127 to + 127  
-40 to +150  
0 to 55  
Same for channel 2  
Amps1  
0 to 255  
Measured Amps on channel 1  
Measured Amps on channel 2  
Measured Temperature on channel 1s heatsink.  
Measured Temperature on channel 2s heatsink.  
Main Battery Voltage.  
Amps2  
0 to 255  
FET Temp1  
FET Temp2  
Batt Volt  
-40 to +150  
-40 to +150  
0 to 55  
Ctrl Volt  
0 to 28.5  
Internal 12V Voltage.  
Enc1  
-127 to + 127  
Measured Optical Encoders Speed or Position  
depending on selected operating mode  
Enc2  
-127 to + 127  
Same for channel 2  
Connecting a Joystick  
Exercising the motors can easily be done using a Joystick in addition to the on-screen slid-  
ers. Simply connect a joystick to the PC and enable it by clicking in the Joystick check box  
in the PC utility.  
If the box is grayed out, the joystick is not properly installed in your PC and you can click on  
the Config Joystickbutton to open a configuration screen and the joystick control panel.  
Joystick movement should automatically translate into Channel 1 and Channel 2 command  
values and make the sliders move. These commands are also sent to the controller.  
It is strongly recommended that you use an USB rather than Analog joystick.  
A joystick test program name Joytestis automatically installed in your Start menu when  
installing the Roborun utility. This program may be used to further verify that the joystick is  
properly installed in the PC and is fully operational.  
AX2500/2850 Motor Controller Users Manual  
171  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
Using the Roborun Configuration Utility  
Viewing and Logging Data in Analog and R/C Modes  
When the controller is configured in R/C or Analog mode, it will automatically and continu-  
ously send a string of ASCII characters on the RS232 output. Analog and R/C Modes Data  
Logging String Formaton page 102 shows the nature and format of this data.  
This feature makes it possible to view and log the controllers internal parameters while it  
is used in the actual application. The data may be captured using a PC connected to the  
controller via an RS232 cable or wireless modem.  
When wired for R/C or Analog controls, the AX2500/2850 will not be able to receive com-  
mands from the PC and the Roborun software will not recognize the controller as being  
present. However, when in the Run tab and the Run button activated, Roborun will be  
receiving the strings sent by the controller and display the various parameters in the right  
display box and chart.  
Loading and Saving Profiles to Disk  
It is possible to save the configuration parameters that are read from the controller or that  
have been set/changed using the various menus to the disk. This function will let you easily  
recall various operating profiles at a later time without having to remember or manually  
reset all the parameters that are used from one configuration to another.  
To save a profile to disk, simply click on the Save Profile to Diskbutton. You will then be  
prompted to choose a file name and save.  
Reading a profile from disk is as simple as clicking on the Load Profile from Diskbutton  
and selecting the desired profile file. The parameters will be loaded in each of their respec-  
tive buttons, sliders and text fields on the various Roborun screens. The parameter will  
not be transferred to the controller until you press the Save to Controllerbutton.  
Operating the AX2500/2850 over a Wired or Wireless LAN  
The Roborun utility supports connection and operation of the AX2500/2850 controller over  
a Wired or Wireless TCP/IP network. This feature makes it easy to tele-operate and moni-  
tor the controller across a lab, of across the globe via Internet.  
172  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
         
Operating the AX2500/2850 over a Wired or Wireless LAN  
To operate over the network two computers are required, as show in Figure 100 below.  
The top computer is connected to the controller via its COM port. Both computers are con-  
nected to a TCP/IP network.  
Computer running  
Roboserver  
Controller  
Wired or  
Wireless  
802.11 LAN  
Computer running  
Roborun Utility  
FIGURE 100. Operating the controller over a LAN  
The computer connected to the controller must run a communication server program  
named roboserver. This program is automatically installed in the Start menu when install-  
ing the Roborun utility. This programs function it to wait for and accept TCP/IP connection  
requests from the other computer and then continuously move data between the network  
and the COM port. When launched, the screen shown below appears.  
The second computer runs the Roborun utility. To establish contact with the server pro-  
gram, click on the Change COM/LAN Portbutton and enter the IP address of the second  
computer. Communication should establish immediately.  
When the two computers are connected, it will be possible to operate the motors and read  
the controllers operating parameters in the Roborun Run window.  
FIGURE 101. Roboserver screenshot when idle  
Note that it is not possible to use this configuration to change the controllers parameters  
or update the controllers software.  
AX2500/2850 Motor Controller Users Manual  
173  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
Using the Roborun Configuration Utility  
Updating the Controllers Software  
The AX2500/2850s operating software can be easily upgraded after it has left the factory.  
This feature makes it possible to add new features and enhance existing ones from time to  
time.  
Important Warning  
Updating the controller will cause all its parameters to reset to their default condi-  
tions. You should re-enter these parameters to your desired value prior to re-install-  
ing and using the controller.  
The upgrade procedure is quick, easy and error proof:  
1- Connect the controller to the PC via the provided RS232 cable.  
2- Apply a 12V to 40V power supply to the controllers Ground and Power Control input  
(thin black and yellow wires).  
3- Launch the Roborun utility if it is not already running. Then click on the Update Con-  
troller Softwarebutton.  
4- If the controller is On, Roborun will find it and prompt you to select the new software  
file. It may happen that the controller is not responding properly and you may be asked  
to reset it while connected.  
5- Press the Programbutton to start programming. Do not interrupt or cut the  
power to the controller while the new program is loading into Flash memory.  
6- After a verification, you will be notified that the operation was successful and you will  
see the new software revision and date as reported by the controller.  
Notes:  
The Updating utility will automatically detect whether the new software is intended for the  
main or encoders MCU and program one or the other accordingly.  
It is a good idea to load the controllers parameters into the PC and save them to disk prior  
to updating the software. After the new software in transferred to the controller, you can  
use the Load Parameters from Diskfunction and transfer them to the controller using  
the Save to Controllerbutton.  
Creating Customized Object Files  
It is possible to create versions of the controllers firmware with default settings that are  
different than those chosen by Roboteq. This capability can be used to improve system reli-  
ability in the unlikely, but not impossible occurrence of a parameter loss in the controllers  
non-volatile memory. Should such an event occur, the controller would revert to the  
defaults required by the application.  
174  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Creating Customized Object Files  
8
FIGURE 102. Objectmaker creates controller firmware with custom defaults  
Creating a custom object file can easily be done using the Objectmaker utility. This short  
program is automatically installed in the Start menu when installing the Roborun utility.  
1- Use the Roborun utility to create and save to disk a profile with all the desired param-  
eter value  
2- Launch Objectmaker from the Start menu  
3- Select the latest official controller firmware issued by Roboteq  
4- Select the profile file that you created and saved earlier  
5- Select a revision letter. This letter will be added at the end of Roboteqs own version  
identity number.  
6- Click on the Create button and save the new customized object file  
7- Click on the Done button to exit the program  
8- Install the new object file in the controller using the Roborun utility  
AX2500/2850 Motor Controller Users Manual  
175  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Using the Roborun Configuration Utility  
176  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Mechanical Dimensions  
SECTION 15  
Mechanical  
Specifications  
This section details the mechanical characteristics of the AX2500/2850 controller.  
Mechanical Dimensions  
The AX2500/2850 is built into a extruded aluminum case which also serves as a heat sink  
for its electronics. Figure 103 and Figure 104 show drawings of the controller and its  
mechanical dimensions.  
1.60"  
(40 mm)  
Program Set  
Reset  
4.00" (102 mm)  
5.50" (140 mm)  
FIGURE 103. AX2500/2850 front view and dimensions  
AX2500/2850 Motor Controller Users Manual  
177  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Mechanical Specifications  
5.50" (140 mm)  
4.00" (101.6 mm)  
3.00" (76.2 mm)  
FIGURE 104. AX2500/2850 top view and dimensions  
Mounting Considerations  
Mounting brackets on each end are provided for durable assembly of the controller onto  
any chassis.  
The AX2500/2850 uses no jumpers and includes no loose parts or wires. Consequently, it  
will be able to run reliably in severe shock and vibration environment.  
Optional shock mount absorbers may be added for use in the most brutal environment.  
Thermal Considerations  
The AX2500/2850 is built into a heat-sinking aluminum extrusion. The large fin area on the  
side of the extrusion ensures sufficient heat dissipation for operation without a fan in most  
applications.  
178  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Wire Dimensions  
For high current applications, it is possible that the controller may heat-up faster and to a  
higher temperature than can be dissipated by the heatsink enclosure using natural convec-  
tion alone.  
In these applications, you should ensure that air flow exists to remove the heat from the  
heat sink. In the most extreme use, you should consider using external and fan to circulate  
air around the controller.  
Alternatively, you may mount the controller so that its bottom area is in contact with large  
metallic parts of the robots body. This will allow some of the controllers heat to dissipate  
through conduction to additional metal mass, and therefore remain cooler for longer peri-  
ods of time. Apply thermal grease between the controllers bottom and the robots chassis  
to ensure the best thermal conduction.  
Wire Dimensions  
A total of eight heavy gauge wires, and two thin wires are present at the back of the con-  
troller. Their length and dimension is shown in Table 29 below.  
TABLE 29. AX2500/2850 wire identification and dimensions  
Wire  
Gauge  
AWG8  
AWG8  
AWG8  
AWG8  
AWG8  
AWG8  
AWG8  
AWG8  
AWG22  
Outside Diameter  
0.26(6.6mm)  
0.26(6.6mm)  
0.26(6.6mm)  
0.26(6.6mm)  
0.26(6.6mm)  
0.26(6.6mm)  
0.26(6.6mm)  
0.26(6.6mm)  
0.07(1.8mm)  
Color  
Red  
Length  
Motor1 Battery+  
Motor1 Battery-  
Motor2 Battery+  
Motor2 Battery-  
Motor1 Terminal+  
Motor1 Terminal-  
Motor2 Terminal+  
Motor2 Terminal-  
17(43mm)  
17(43mm)  
17(43mm)  
17(43mm)  
17(43mm)  
17(43mm)  
17(43mm)  
17(43mm)  
17(43mm)  
Black  
Red  
Black  
White  
Green  
White  
Green  
Yellow  
Power Control or  
Backup Controller  
Battery  
Controller Battery-  
AWG22  
0.07(1.8mm)  
Black  
17(43mm)  
Weight  
Controller weight is 3.3 lbs (1500g)  
AX2500/2850 Motor Controller Users Manual  
179  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
Mechanical Specifications  
180  
AX2500/2850 Motor Controller Users Manual  
Version 1.7. February 1, 2005  
Download from Www.Somanuals.com. All Manuals Search And Download.  

Radica Games Games 75052 User Guide
Radica Games Handheld Game System 76042 User Guide
RCA Portable CD Player RP2730 User Guide
Ricoh Printer SP C231N User Guide
Ricoh Printer SP C410DN KP User Guide
Rival Waffle Iron DC WM169 User Guide
Ryobi Trimmer 700r User Guide
Samsung Projection Television HL 54676S User Guide
Sears Furnace 8MPL050B12B1 User Guide
Sears Spreader 48624009 User Guide