|
| |
|
Services
Simplify Robotics offers a variety of engineering
services in mechanical, control, and software engineering.
Our core competency is in robotics. In particular, we are
experienced in manipulator kinematics, dynamics, control, and
simulations. We can also lead or participate in mechanical
design projects. Our in-house CAD system of choice is
SolidWorks. Furthermore, we can lead or participate in
software development projects. Our programming expertise
is with C/Matlab/LabVIEW, and our platform of choice is
Linux/Unix. Below is a partial list of our past projects,
but it does NOT comprehensively represent our capabilities.
For more information, please visit
our contact page.
Past Projects
|
 |
2006: Manipulator Kinematics Software Utility
The Human Spaceflight programs from around the globe use
a number of manipulators designed to assist astronauts in performing
their tasks in orbit. These include the 6-jointed
Shuttle Remote Manipulator
System (SRMS), the 7-jointed
Space Station
Remote Manipulator System (SSRMS), the
Special Purpose Dexterous Manipulator (SPDM) with two 7-jointed arms,
the 7-jointed
European
Robotic Arm (ERA), and the 7-jointed
Japanese Experimental Module
Remote Manipulator System (JEMRMS). Simplify Robotics developed a lightweight
manipulator kinematics calculation utility for the
Automation, Robotics, and
Simulation Division (AR&SD) at NASA Johnson Space Center,
for the purpose of providing a uniform and independent capability
for testing the kinematics implementations of these robots, in the multitude of simulations
for analysis, training, and planning.
|
 |
2006: Manipulator Control Interface Testing
Simplify Robotics assisted in troubleshooting a
newly developed simulation of the
JEMRMS manipulator at
AR&SD in NASA.
This involved testing the operation of the individual features of the
control interface, and then helping to debug any problems that arose.
The simulations were written in C, developed using the Trick simulation
development environment, and ran on the Linux Operating System.
The control interface has dozens of individual windows, each is similar
to the one shown to the left.
|
|
|
2004: Multibody
Dynamic Simulation Following the
Space Shuttle Columbia disaster in 2003, NASA launched several
investigations and devised many contingency scenarios, during their
return to flight activities. One of them involved an
Orbiter
Repair Maneuver (ORM), which was designed to position an astronaut
underneath the Shuttle's Orbiter, where (s)he would have access to any
damaged heat shielding tiles. The maneuver entailed the Orbiter
grappling the International Space Station (ISS) using the
Shuttle's arm,
while positioning the astronaut at the tip of the
Station's arm
underneath the Orbiter. This maneuver required connecting large
masses (Orbiter and Station) by thin, slender, flexible manipulator links. Simplify
Robotics performed an analysis of this dynamic system.
This involved the use of Autolev
analysis software.
|
 |
2004: Porting
Software and Testing: Robonaut API
The Robonaut
is a humanoid robot meant to be an assistant for an astronaut in orbit.
Its humanoid form factor enables it to fit in many of the same settings
in which an astronaut would as well. Its humanoid hands enable it to
mechanically handle the same tools that would be used by an astronaut.
There are many researchers in various universities and organizations who
contribute software and algorithms to the project. In order to
facilitate their work, the Robosim, a Windows based simulation has been
developed, which can be distributed among all project contributors.
Additionally, there is an API which enables an external program to
communicate with either the physical Robonaut or with Robosim.
Simplify Robotics ported and tested the Robonaut API
from the Windows to the Linux platform.
|
 |
2004:
Mechanism Design: Fixtures A
number of tactile sensors have been developed at AR&SD in NASA. In
order to adequately test various features on these sensors, Simplify
Robotics designed a fixture to constrain the target sensors, and to apply variable contact loads.
The resulting design also provided capabilities
for fine positioning of the target, directional control of contact
loads, and fine control of contact load magnitudes.
Testimonial
|
 |
2004: Kinematic Analysis: Internal-Motion Analysis
For a 3-dimensional End-Effector (EE) which results in m=6 kinematic equations (described below under Inverse Kinematics), driven by an
n=7 revolute jointed arm, there are more variables than equations.
This is an underdetermined case which typically results in an
infinite number of solutions. The 7-jointed manipulator can
traverse through the continuum of solution joint configurations, while the position and the orientation of
the EE remain fixed. This is called self-motion.
Simplify Robotics developed a software utility for analysis of this self-motion for the
SSRMS and the
SPDM manipulators.
|
 |
2003: Multifingered
Grasping One motivation for the
use of robots is for manipulation of objects. A multifingered hand is versatile in grasping objects, when their
shapes are unpredictable and without adequate features for
mating with more traditional end-effectors. However, multifingered
grasping can be a challenge. One such challenge is
to constrain a payload such that external forces and torques (within a
defined magnitude) do not disturb the grasped payload. This is a
wrench closure condition. Simplify Robotics investigated this problem, and similar peripheral ones.
The result was a mathematical framework for addressing all grasp
problems, including the wrench closure condition, optimal grasping, multipayload grasping, and gaited grasping.
Testimonial Publication
|
 |
2003: Inverse
Kinematics: All Solutions In
3-dimensional space, there are 3 dimensions for achievable positions (X,Y,Z),
and 3 for orientations (e.g.: about X,Y,Z), for a total of m=6
degrees of manipulability. In order for a manipulator to be
capable of positioning and orienting its End-Effector (EE) arbitrarily,
it is necessary for it to have at least n=6 Degrees-of-Freedom (DOF).
In many applications, it is necessary to determine the joint values
which result in the correct positioning and orienting of the EE.
This analysis is called Inverse Kinematics. Formally, it
can be presented as m=6 kinematic equations, in terms of n
joint variables. For typical 6-jointed manipulators which employ
rotary or revolute joints, these 6 equations have 6 unknowns, and are highly nonlinear,
coupled, and complex. Often, there are multiple distinct
solutions. Typical inverse kinematics algorithms are numerical in
nature, starting with an initial guess, and converging toward only one of the
possible solutions.
NASA and other international space
organizations employ several n=7 revolute jointed manipulators.
Simplify Robotics investigated a technique which
would produce all solutions for a 6 revolute jointed arm, or its
equivalent, a 7 revolute jointed arm with one joint arbitrarily held
fixed. This scenario arises when one of the joints of a 7 jointed
space manipulator becomes damaged and no longer functions. This investigation involved the use of symbolic algebra
computations, and the GiNaC C++ library
for Computer Algebra.
|
|
|
2002: Manipulator
Kinematic Control: Tracking Under water at
NASA Johnson Space Center's Neutral Buoyancy Lab (NBL), astronauts are
trained for Extra-Vehicular Activity (EVA). Many training operations
involve underwater mock-ups of the
SRMS and the
SSRMS. Occasionally, one underwater
manipulator may be out of service. To avoid loss of training time,
Simplify Robotics developed a control software plug-in that can be
used to drive the 6-DOF SRMS underwater manipulator with the control
workstation of the 7-DOF SSRMS. In this scenario, the operator drives
the existing
simulation of the 7-DOF SSRMS which acts as the master, and the 6-DOF
SRMS acting as the slave, moves
to match the position and orientation of the master's EE with its own. The
bottom figure on the left shows the two
robots with the master-slave coupling. The bases of the two
robots may be at different positions and orientations.
Testimonial(1)
, Testimonial(2)
|
 |
2002: Manipulator Kinematic Control:
End-Effector The Canadian built
Special Purpose Dexterous Manipulator (SPDM) is one of many space
manipulators available to NASA. For analysis, planning, and
training, simulations of this manipulator are necessary. The end-effector of
each SPDM arm is the ORU Tool
Changeout Mechanism (OTCM). Simplify Robotics developed the simulation math models which kinematically mimic the behavior of
the OTCMs. The math models were developed in C
using the Trick simulation development environment.
|
|
|
2001: Simulation Math
Modeling: Dynamics of Grappling (2)
This was a sequel to the earlier successful project (see
below), in which the dynamics of the cable and spring mechanisms inside
the end-effector (EE) of the Space Station's manipulator were modeled.
In this case, a higher fidelity model was pursued, one which required
the development and use of a numerical optimization library. The
math models were developed in C using the Trick simulation development
environment.
|
 |
2001: Manipulator
Kinematic Control: Training Simulation
In order to perform assembly missions in orbit,
astronauts must be trained in manipulator operations. The trainees
can benefit by first learning about generic manipulator operations prior
to specialization with a particular manipulator. Therefore,
starting with a partially developed simulation from NASA, Simplify
Robotics joined efforts with Titan-LinCom (now L-3) to fully develop and
deliver the training simulation as specified by NASA requirements. The
simulation was developed using C in the Trick simulation development
environment. Our contributions included developing closed form 6-DOF
inverse kinematics, self-collision detection, and enhancing existing
motion control and other portions of the software. The math models
were developed in C using the Trick simulation development environment.
|
|
|
2000: Simulation Math
Modeling: Dynamics of Grappling (1)
The
SSRMS grapples payloads
using rotary snare and linear carriage mechanisms inside its Latching End Effector (LEE). For
design, analysis, and crew training purposes, Simplify
Robotics developed a simulation math model which characterizes the
dynamics of the LEE's complex cable and spring system and its effects on a
space payload with a Grapple Fixture (GF). The math models were implemented
using C in the Trick simulation development environment, which is
heavily used at
NASA Johnson Space Center. The inertial, gearing, and motor
dynamics of the rotary snare and linear carriage were also prototyped using Matlab.
Testimonial
|
 |
1999: Automation: Manipulator Path
Planning Motion planning for a
manipulator is more difficult than motion planning for a
mobile robot: (1) Mobile agents constrained to the surface of a
3-dimensional terrain are typically operating with 2-dimensions of
control (steering and throttle/brake) and in a 3-dimensional workspace
(2D for position, 1D for orientation). In contrast, typical
manipulators have 6-7 joints, hence they operate in a 6-7 dimensional
joint space, and their workspace is 6-dimensional (3D position, 3D
orientation). Since computation complexity grows exponentially
with the dimension of the search space, the search for a path for a
manipulator can be orders of magnitude more costly than the same for a
mobile agent. (2) Since manipulator joints are typically revolute
and the kinematics involve highly coupled trigonometric equations, the
mapping between a manipulator's joint- and work- spaces is much more
complex than the equivalent for mobile agents. (3) For mobile
agents, there is typically only a single body to consider. This
single body is to
avoid obstacles, given its motion constraints. In contrast,
planning for a manipulator requires motion considerations for several
link bodies, while each avoids collisions with obstacles, and while each
adheres to physical constraints associated with its consecutive joints
and links.
During his Ph.D. research, the founder,
Arjang Hourtash, spent several years studying automated motion planning
for manipulators. The result was a divide and conquer approach
which dimensionally decomposes the joint space, hence reducing the
computation cost of the search for a solution path. Several
aspects of this approach were investigated thoroughly, including the
optimization of the automation parameters.
|
|