RC Servo Micro Controller
“The Robot Heart”
Instruction Manual
please read this manual
before opening the controller.

The Mercury Group
www.chapp.com
Installing the software.
1.
Place the cd into your cd-rom drive.
2.
Double click on the icon named setup.exe.
3.
Click on computer icon in RC Servo Control Setup window.
4.
Screen will show, now copying files.
5.
Completed Successfully will appear.
6.
Click OK.
7.
You will now find the RC Servo Control software under Start | Programs | RC
Servo.
Using the RC Servo Program
Main Screen:

Main Menu:
![]()
File Menu

1. File Menu
A. Open
open a saved program file.
B. Save As save a program file.
C. Exit exit program.
Setup

2. Setup Menu
A. Controller Setup controller setup set ID and Prompt character. ( See 12 & 13 ).
1.Servo Offset Read will read the current servo offset readings from the servo.
2.Servo Offset Write allows the user to define new values for the low and high offsets for
the servo (defaults are L-600 and H-2400, representing 0 -180 degrees for the servo ).
B. PC Comport select com port 1-4 for the controller software to talk to the controller.
Information

3. Information Menu
A. About the Controller Image
Graphic pages with details
on controller
“The Controller picture has
spots that tell what the item is when the mouse is placed over them”
B. About the Controller controller pin out information and general information.
C. About the Program program
basics and sample code.
** Double click on help window
to close!
Program
![]()
3.
Program
A. Launches The Controller Program Screen
Axis Move
Window

4. Axis Move Window
Shows position 0 – 180 degrees for this servo. Displays windows for the number of axis available for
this servo controller.
Axis
Position Windows
![]()
5.
Axis position window. This displays the current position for this axis
0-180.
Decrement
Axis Position
![]()
6.Decrement Axis position, in the current
window by one.
Increment
Axis Position
![]()
7.Increment Axis position, in the current
window by one.
Axis Move
Button

8.Axis move button. Once activated it will
execute the move in the current axis position widow.
Once executed the position may be stored by pressing the Store Move button (see below).
Manual
Program Window

Program Window.
This windows displays your current program, allows execution, editing and stopping the program.
Programs saved and opened are displayed in this window for execution and editing.
Store Move
Button
![]()
9.Store move button.
Stores the last executed move. ( Therefore, to store a move it must be entered, executed and stored ).
Execute
Button
![]()
Execute button.
This executes the current program in the program window.
Stop Button
![]()
10.Stop button.
This button will pause current program execution and ask if you wish to continue or stop the program.
Stop will interrupt the
current running program (“This is not an
Emergency Stop”)
Stop can also be used if a controller is not responding to break out of a command sequence.
Servo
Programming Language
The servo program is designed to be a Jog and Save language.
The User Jogs the axis to the desired location and saves the move
by pressing the STORE MOVE button. The command is the placed on
the program text viewer.
The Program text viewer works like any other windows file it allows
cut paste and copy commands. To cut paste or copy simply highlight
the desired text or area and right click. Windows will pop up a message
field with cut and paste options.
Ends the program (“make sure END is the last line of every program you write”)
Pauses the program for a number of seconds.
Example PAUSE 1 would cause the program to wait 1 second
Starts the Program over again.
Putting a ‘ at the beginning of a line makes it a comment line.
Example ‘ this is a comment line ------------ axis a at home
Note: that the comment line will show up on the caption of the
program screen. DO NOT add comments to any other lines
it will interfere with the program operation.
Programming Tips:
All commands PAUSE, LOOP, END are in capital letters!
If you wish to repeat a single move just copy and paste it in the program.
Add comments in the test to make your program easier to use.
Remember that comments should be on a line by themselves.
All comments are shown in the Program Title Bar as they are read in the program
Also any PAUSE command will appear as it is read.
Servo Programming Language

Main Menu:
![]()
File Menu

1. File Menu
A. Open
open a saved program file.
A. Open as Subroutine open a saved program file and adds it to the
current program.
B. Save save a program file.
C. Exit exit program.
Program

2. Program Menu
A.
Upload program to controller Uploads the current program to the controller
A.
Run program Alows user to start the program
Debug mode will run the
program slowly and
show prompts of events as the run.
A.
End Controller Program Run Halts program execution
A.
Read program Reads
the current controller program in memory
A.
Serial Receive on Shows serial data sent by the controller
Data

3. Data Menu
A. Read Data Reads the user memory area 1-200
B Write Data Sets all user memory to 0
Help

3.Help
A. About the Controller Image Graphic
pages with details on controller
“The Controller picture has
spots that tell what the item is when the mouse is placed over them”

B. Program Commands Programming Command Explanations.
Manual Mode
![]()
4. Manual Mode
Returns to the Manual control screen.
Program Command
Window

5.
Program Command Window.
Single click on any command in this window and a short description will
appear .
Double click and the command will be placed in the program window or open
prompts for more information.

Program Window

5. Program Window.
contains the current program being created or loaded
This window is fully cut and paste
compatible you may right click
On it to Cut Paste or Delete.
Servo Program
Commands
Available Memory is divided into four variables for
operational use and user memory for storage.
The four variables are words and are labeled Variable #1,
Variable #2, Variable #3 and Variable #4.
The user memory is in bytes and is labeled 1-200.
Please Note: the IBUTTON command uses user memory 193-200
is used to store the returned IButton value.
Variable ( V1, V2, V3 or V4 ) Commands:
ANALOG
DECREMENT
IF VARIABLE
INCREMENT
TALK V1
TEMP
VARIABLE =
User Memory ( 1-200 ) Commands:
DATA READ
DATA WRITE
IBUTTON
ACCURACY : Controls # of signals sent to a servo
When Using
the RC servo command a signal is sent to the RC
Servo which
it compares to an internal signal. The signal the controller
sends is
where we want to go. The internal Servo signal tells the Servo where it is.
When a
command is issued the Servo will try to move from where it is
to where we
say we want to go. Normally we will
send this signal
20 times.
This allows the servo to find the position desired and stop.
So why
change Accuracy? Some times we need to make two motors
move at
once so it’s better then to lower the Accuracy value to say 5
and repeat
the command a couple of times in the program. This will allow
both motor
to move almost at the same time. This lower Value is also
great for
the sweep command, it will make the movement look smooth.
Use the
slide bar to choose a value from 1 - 200.
ANALOG : Get an Analog input from A1 or A2
This
Command will let you read the Value of a resistive component such as
a
Potentiometer or a Photo cell. When the command is executed it places the value
of the
component as a value of 0 to 255 in the Variable ( V1, V2, V3, or V4 )chosen .
You will
choose from radio button A1 or A2. Then you will choose from radio button
Variable
#1, Variable #2, Variable #3 or Variable #4. The v5 variable maybe set using variable
= command
this
command is the scale command for the analog input try setting it to @ 240 as a
default.
AUTO START : Set Auto Start On or Off
Put this
command at the beginning or end of your program.
If On is
selected , the controller will start running the program that is currently
in memory.
Once this is done, the program being run can only be stopped by using
the
controller program software.
AXIS HOME : Sets all selected servos to home position
You will
be asked to select the servos to be sent to the home position.
Use the
Axis Home Set Command to specify the home position of each servo.
AXIS HOME SET : Select I/O Axis Point and then choose
degree 0-180.
Select
the I/O Axis point, then use the sliding bar to select the degree for the home
position
of this axis ( 0-180 degrees).
AXIS MOVE : Select a I/O Axis Point and a position to go
to from 0 to 180 degrees
User
chooses an I/O point that has an RC Servo Connected.
Use
the sliding bar to enter a degree position to move this servo ( 0-180 ).
COMMENT LINE : Enter a Comment
Places
a Comment line in the program. This is good for reviewing a written program.
Please
enter a text line into the popup box.
DATA READ : READ data value in user memory area 1-200
into V1,V2,V3,V4
Use
the slide bar to select a User Memory Location for the read.
Then
select a variable ( Variable #1, Variable #2, Variable #3 or Variable #4)
for
the value to be placed.
DATA WRITE : WRITE data value in user memory area 1-200
Use
the slide bar to select a User Memory Location for the write.
Then
select a variable ( Variable #1, Variable #2, Variable #3 or Variable #4 )
from
which we will take the value and write it to the specified user memory
location.
DECREMENT : Select a Variable and subtract 1
Subtract 1 from the value of chosen variable ( Variable #1, Variable #2,
Variable #3 or Variable #4 )
END : End Program
Ends The
Program.
Once
run, the Controller will have to be restated.
IF Auto
Start is Selected, Auto Start will be canceled.
GOTO : Goto another point in this program
Changes
the program execution to the “TAG” entered.
Enter
the TAG into the text box provided.
IBUTTON : Read a serial code from a Ibutton
Reads
the value of a Dallas Ibutton 1990A
into
user memory locations 193 - 200.
IF VARIABLE : Logical and Math operations
There
are two types of operations you may perform. A logical comparison of
two variables and a resulting GOTO or a
mathematical operation.
Select a
variable from Variable #1, Variable #2, Variable #3 or Variable #4.
Choose
an operation.
If a
logical operation is selected, you will need to choose the comparison variable
( #1 - #4 ).
Then you
will be asked to select a goto TAG.
If a
math operation is selected, the math will be performed.
Logical
Operators:
----------------------
=
Equal to
> Greater Than
< Less Than
<>Not Equal to
Math
Operations:
------------------------
V1 +
V2 Variable #3 added to Variable
#2 with the result in Variable #1
V1
- V2 Variable #3 subtracted from Variable #2 with the result in
Variable #1
V1
x V2 Variable #3 multiplied by Variable #2 with the result in
Variable #1
V1
/ V2 Variable #3 divided by Variable #2 with the result in
Variable #1
V3 + V4 Variable #3 added to Variable #4 with the result in
Variable #3
V3
- V4 Variable #3 subtracted from Variable #4 with the result in
Variable #3
V3
x V4 Variable #3 multiplied by Variable #4 with the result in
Variable #3
V3
/ V4 Variable #3 divided by Variable #4 with the result in
Variable #3
INCREMENT : Select a Variable and Add 1 to the Variable
Add 1 to
the Value of chosen variable.
INPUT : ON Input = High goto a line in this program
Select
a I/O point for input, IF the value of the input is
High
(connected to the 5 volt output), the program
will
continue at the chosen TAG.
If the input is low the program will
continue to the next line.
Key Pad Input: Reads a keyboard input
Scans an optionally attached keyboard to the
AUX port and returns the value to V1
LOOP : Start the program over
Loop
returns to the start of the program.
MANUAL MODE : return to manual mode ( PC control )
Manual
mode allows the Main Screen to control the servo’s
/70/00/000 will restart the program running from the manual screen.
** Note:
the serial cable must be connected from the PC to the controller.
OUTPUT : Set an Output state
Set the
selected I/O point to High ( 5 volts ) or Low ( 0 volts ).
You
will be asked to select an I/O port and then high or low.
PAUSE : Wait a number of seconds
Enter the
time in seconds to pause program execution.
Use the
slide bar to select a valid amount of time.
RECEIVE : receive a one byte value from RS-232
Select a
value to match a one byte ( single character ) serial input.
IF the
serial value matches the selected value then the program will
goto
the TAG entered. If the values don’t match then the next
program
line will be executed.
SOUND : Play a note.
Send a note to a speaker.
Use the slide bars to select pitch and duration of the note.
SLEEP : Sets controller into a low power mode from 1 Min
up to 18 Hours
Suspends program for 1 min up to 18 hours and then continues.
SOUND : Play a note
Select Pitch 1-175 and duration
of 1 to 200.
SWEEP : Move a servo from one point to another 1 degree
at a time
Select an I/O point to move.
Use
the slide bar to select a starting point and then the end point.
The
servo will move 1 degree at a time.
TALK : send out a message from the RS-232 port
Value to be sent out the serial port.
Enter the value into the text box.
Choose send as text or send as value.
You
have the option to check the checkbox for the addition
of a carriage return and line feed at the
end of the value.
TALK V1 BIN : send out V1 from the RS-232 port as Binary
Sends out the value in Variable #1 as binary.
TALK V1 DEC : send out V1 from the RS-232 port as decimal
Sends out the value in Variable #1 as
decimal.
TALK V1 HEX : send out V1 from the RS-232 port as
Hexadecimal
Sends out the value in Variable #1 as hexadecimal.
TEMP : Read temperature from a Dallas DS1820
Reads temperature from a Dallas DS1820
and
places the value in Variable #1.
TOGGLE OUTPUT : Changes Output State
Command Changes the STATE of the selected output. It is set to the
inverse.
(
IF High it is set to Low, IF Low it is set to High ).
VARIABLE = : Set the Value of a variable
Select one of the 4 variables ( Variable #1,Variable #2,Variable
#3,Variable #4 )
and
enter the value to be held in the variable.
VARIABLE LINE TAG : Set a tag for goto commands
Places a TAG for GOTO and
IF commands.
User can use any name up to 5 Characters.
Servo
Controller Setup
![]()
![]()
![]()
![]()

Terminal Block #1
I/0 or Servo #4 #3 #2 #1 5 volt output
![]()
![]()
![]()
![]()
![]()

Terminal Block #2 + #5
#6 #7 #8
Ground
5 to 24
DC
RC Servo
Connection
RC Servo Connection - connect the three wire servo cables to the appropriate servo motor.
Servo Motor Pin Out:
Terminal # Block
#1
1. DC Power 6 Volts Max
2. Control Signal Servo #1 (White wire Most RC SERVO’S) I/O #5
3. Control Signal Servo #2 (White wire Most RC SERVO’S) I/O #6
4. Control Signal Servo #3 (White wire Most RC SERVO’S) I/O #7
5. Control Signal Servo #4 (White wire Most RC SERVO’S) I/O #8
6. DC Common “ Ground”
Terminal # Block
#2
1. 5 volt sensor Control power
2. Control Signal Servo #1
(White wire Most RC SERVO’S) I/O
#1
3. Control Signal Servo #2 (White wire Most RC SERVO’S) I/O #2
4. Control Signal Servo #3 (White wire Most RC SERVO’S) I/O #3
5. Control Signal Servo #4 (White wire Most RC SERVO’S) I/O #4
RC Servo Connection
DB 9 RS-232 Connector Connect to your PC.

Safety
These
safety tips are always good ideas.
1.
Provide Emergency power shut off to the circuit.
2. Make sure that the circuit is
protected by a fuse of no greater than 1 amp @ 24 Vdc.
3. Do Not allow children to
operate this device.
4. Always test your motor
without a load connected. And the Motor securely mounted.
Even a small stepper
motor can generate a large amount of torque!
5. Do not allow the systems to
run unattended.
6. Never operate the circuit
without proper safety guarding for the motors that are being operated.
7. Double check, Test and operate
any device you build safely!
We want Happy
Customers!
Need Help? Email us at INFOTMG@QWEST.NET state the nature of your problem
Please send picture or drawings if needed. Detailed information about the problem
We try to respond in 24 hours or less Monday – Friday .
Have a Great
Idea!
Email us at INFOTMG@QWEST.NET we love to hear your comments
and suggestions.
If your Not
Happy !
If you have read this manual and decided that this device is to complex
Or difficult to Operate. Do not open the Shrink Wrapped Controller.
We only accept unopened returns.
Email INFOTMG@QWEST.NET in the Subject line State “RMA requested”
Send a brief note stating that you would like to return the device. We will
Email Instructions for it’s return and refund the amount of Purchase less shipping charges.