Menu

Tree [r32] /
 History

HTTPS access


File Date Author Commit
 example 2012-11-13 jmoliere [r32] added log4cpp properties file so the app will run.
 obj 2009-11-04 jmoliere [r1] Starting point for Manus Arm Emulator
 scratchpad 2010-04-29 jmoliere [r25] Added the scratchpad directory for some minor d...
 src 2010-11-26 jmoliere [r30] Added log4cpp to replace cout.
 test 2010-11-25 jmoliere [r29] Fixed a problem where the joints used an unsign...
 Makefile 2012-11-13 jmoliere [r31] made minor changes to get the environment to co...
 ReadMe.txt 2010-05-02 jmoliere [r26]
 log4cpp_inited.log4cpp_properties 2012-11-13 jmoliere [r31] made minor changes to get the environment to co...

Read Me

Manus Arm Emulator version 0.10 Alpha
-------------------------------------

The goal of this project is to emulate the robotic arm titled The Manus
Arm by Exact Dynamics (see http://www.exactdynamics.com/).  This project
is not produced or sponsored by Exact Dynamics.  This project was
created to allow me to develop software for this arm in a safe manner --
I prefer to make mistakes with the simulated arm instead of the real
arm and possibly break it.

This project was open sourced to allow anyone (basically hobbiests,
students at Universities, and professionals) the ability to 'play'
with an arm without actually buying one.  

At this time, please download the source from Subversion (use svn).  

The Manus Arm Emulator simulates the Input/Output communication with the
Manus Arm when the arm is in Transparent Mode.  More work will be done
to abstract the communication so interfacing between a real arm and the
emulated arm will simply be a matter of instantiating the correct objects.
The communication protocol that the real arm uses is called Controller
Area Network (CAN).  I have had success getting the communication to
the Manus Arm working with 3 different CAN communication devices.


Manus Arm Emulator compile dependencies
---------------------------------------
At this time The Manus Arm Emulator has the following open source library
dependencies:
1)	Boost libraries (see http://www.boost.org)
	follow instructions from library on how to build and install library

2)	OpenSceneGraph (see http://www.openscenegraph.org)
	follow instructions from library on how to build and install library
but take note...

3) muParser (see http://muparser.sourceforge.net/)
	follow instructions from library on how to build and install library

4)  CppUnit (see
http://sourceforge.net/apps/mediawiki/cppunit/index.php?title=Main_Page)

I recommend building and installing the libraries above before trying to
compile the Manus Arm Emulator software.  To compile the Manus Arm Emulator,
simply type 'make' inside the working directory of ManusArmEmulator.

This software has been developed for Linux.  Hopefully soon a Windows
version will be available.

I must iterate that I DO NOT HAVE A MANUS ARM.  There are some issues
that I'm trying to resolve such as the rate at which the prismatic joint
opens and closes as well as the rate that the gripper opens and closes.
There are many other issues that require precise measurement from the
actual arm.  Hopefully almost all if not all the issues will be resolved
in a timely manner.

To use the software
----------------------------------------------------
At this time the software partially emulates the PCCan.c software that
ships with the arm.  After running the software, you will see the arm
displayed.  Type the number '4' to put the arm in Joint mode and then
type the following characters

all joints rotate about the z-axis (blue axis).

q -- rotates the arm about joint 1 in + direction
a -- rotates the arm about joint 1 in - direction
w -- rotates the arm about joint 2 in + direction
s -- rotates the arm about joint 2 in - direction
e -- rotates the arm about joint 3 in + direction
d -- rotates the arm about joint 3 in - direction
r -- rotates the arm about joint 4 in + direction
f -- rotates the arm about joint 4 in - direction
t -- rotates the arm about joint 5 in + direction
g -- rotates the arm about joint 5 in - direction
y -- rotates the arm about joint 6 in + direction
h -- rotates the arm about joint 6 in - direction

Cartesion mode needs to be implemented along with Fold in and Fold out.


Denavit Hartenberg (DH) Parameters
----------------------------------------------------

the DH parameters for the emulated arm are:

cm = centimeters
degree = 180/PI

Joint	a	alpha 	d	theta
#	cm	degrees cm	degrees
-------------------------------------
0	0	0	d0	0
1	0	0	45	theta1
2	0	90	17.5	theta2
3	41	0	-7.5	theta3+90
4	0	90	32.5	theta4-90
5	0	-90	0	theta5
6	0	90	0	theta6



Goals for the future
-----------------------------------------

This software does not exactly emulate the Manus Arm.  Here are the obvious
differences:
0) In a nutshell, at this time, this project only simulates Joint Mode.
1) cartesian mode does not work
2) Fold in does not work
3) Fold out does not work
4) Prismatic joint does not work
5) gripper does not work
6) status display with sounds does not work.
7) Windows build and install.

The near term goals are the following
2) get the gripper working
3) get the prismatic joint working
4) get Cartesian mode working
5) get Fold in and Fold out working


(possibly) more distant term goals are:
1) get status display and sound working
2) get hit detection working
3) simulate all the capabilities of Joystick mode.

-------------------------------------------
 
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.