Manipulation Technology TeleRobotics and Autonomous Systems

Manipulation is defined as making an intentional change in the environment. Positioning sensors, handling objects, digging, assembling, grappling, berthing, deploying, sampling, bending, and even positioning the crew on the end of long arms are tasks considered to be forms of manipulation. Arms, cables, fingers, scoops, and combinations of multiple limbs are embodiments of manipulators. Here we look ahead to missions’ requirements and chart the evolution of these capabilities that will be needed for space missions. Manipulation applications for human missions can be found in Technology Area 7 as powered exoskeletons, or payload offloading devices that exceed human strength alone.

Sample Handling- The state of the art is found in the MSL arm, Phoenix arm, MER arm, Sojourner arm, and Viking. Future needs include handling segmented samples (cores, rocks) rather than scoop full of soil, loading samples into onboard devices, loading samples into containers, sorting samples, and cutting samples.

Grappling- The state art is got in the SRMS, MFD, ETS-VII, SSRMS, Orbital Express, and SPDM. Near term advances will be seen in the NASA Robonaut 2 mission. Challenges that
will need to be overcome include grappling with a dead spacecraft, grappling a natural object like an asteroid, grappling in deep space, and assembly of a multi-stack spacecraft.

Eye-Hand Coordination- The state of the art is placement of MER instruments on rocks, Orbital Express refueling, SPDM ORU handling and Phoenix digging. Challenges to be overcome include working with natural objects in micro gravity (asteroids), operation in poor lighting, calibration methods, and combination of vision and touch.

EVA positioning- The EVA community has come to rely on the use of large robot foot restraints
versus having crew climb. The state of the art is found in the SRMS and SSRMS. These arms were originally designed for handling inert payloads, and no controls were developed for control
by the crew on the arm. Challenges to be overcome involve letting crew position themselves without multiple IV crew helping, safety issues, and operation of these arms far from Earth support.

Digital Inputs/Outputs and Accelerometer WPI Robotics Library

Digital inputs
Digital inputs are generally used for controlling switches. The WPILib DigitalInput object is typically used to get the current state of the corresponding hardware line: 0 or 1. The digital inputs are more complex such as encoders or counters, are handled by using the appropriate classes. Using these other supported device types (encoder, ultrasonic rangefinder, gear tooth sensor, etc.) doesn’t require a digital input object to be created. The lines of digital input are shared from the 14 GPIO lines on each Digital Breakout Board. Creating an example of a DigitalInput object will automatically set the direction of the line to input.

The lines of digital input have pull-up resistors so an unconnected input will naturally be high. If a switch is contacted to the digital input it should connect to ground when closed. The switch open state will be 1 and the closed state will be 0. In Java, digital input values are true and false. So an open switch is true and a closed switch is false.

Digital Outputs
Typically digital outputs are used to run indicators or to interface with other electronics. The digital outputs provide the 14 GPIO lines on each Digital Breakout Board. Creating an example of a DigitalOutput object will automatically set the direction of the GPIO line to output. In C++, digital output values are 0 and 1 representing high (5V) and low (0V) signals. In Java, the digital output values are true (5V) and false (0V).

Accelerometer
The two-axis accelerometer given in the kit of parts is a two-axis accelerometer. This device can offer acceleration data in the X and Y axes relative to the circuit board. In the WPI Robotics Library you treat it as two separate devices, one for the X axis and the other for the Y axis. This provides better performance if your application only needs to use one axis. The accelerometer can be used as a tilt sensor – actually measuring the acceleration of gravity.

IRC5 Industrial Robot Controller

Fifth generation robot controller Based on more than four decades of robotics experience, the IRC5 sets a new benchmark in the robotics industry. Bringing previous achievements in motion control, flexibility, usability, safety and robustness along, it adds new breakthroughs in modularity, user interface, multi robot control and PC tool support.

Safety
Operator safety is the IRC5 central quality, fulfilling all relevant regulations with good measure, as certified by third-party inspections. Electronic position switches add the first touch of a new generation of safety, replacing earlier electro-mechanical solutions, and opening up for flexible and robust cell interlocking. For even more flexible cell safety concepts, e.g. involving collaboration between robot and operator, SafeMove offers a host of useful safety functions.

Motion control
According to advanced dynamic modeling, the IRC5 optimizes the performance of the robot for the physically shortest possible cycle time (QuickMove) and precise path accuracy (TrueMove). The predictable and high performance behavior is delivered automatically together with a speed-independent path, with no tuning required by the programmer.

Modularity
The IRC5 is available in different variants in order to provide a cost effective solution for every need. The ability to stack modules on top of each other, put them side by side or distributed in the cell is a unique feature, leading to optimization of footprint and cell layout. The panel-mounted version comes without a cabinet, enabling integration in any encapsulation for exceptional compactness or for special environmental requirements.

FlexPendant
The FlexPendant is characterized by its clean, color touch screen-based design and 3D joystick for intuitive interaction. Powerful customized application support enables loading of tailormade
applications, e.g. operator screens, thus eliminating the need for a separate operator HMI.

RAPID programming language
It provides the perfect combination of simplicity, flexibility and powerfulness. RAPID is a truly unlimited language with support for well-structured programs, shop floor language and advanced
features. It also incorporates powerful support for many process applications.

Communication
The IRC5 compatibles the state-of-the-art field busses for I/O and is a well-behaved node in any plant network. Sensor interface functionality, remote disk access and socket messaging are examples of the many powerful networking features.

The WPI Robotics Library

The National Instruments compact RIO-9074 real-time controller (cRIO) is presently the robot controller provided by the FIRST Robotics Competition (FRC). It has around five hundred times more memory than previous FRC controllers. Dedicated hardware of FPGA capable of sampling across 16 channels replaces previously cumbersome programming techniques necessary with previous controllers.
The WPI Robotics library is designed to:
• Work with the cRIO controller
• Handle low level interfacing of components
• Allow all experience levels users access to experience appropriate features

C++ and Java are the two choices of text-based languages available for use on the cRIO. These languages were selected due to they represent a better level of abstraction for robot programs than previously used languages. The WPI Robotics Library is designed for maximum extensibility and software reuse with these languages.

The library consist classes which support the sensors, speed controllers, driver station, and other hardware in the kit of parts. In addition, WPILib supports many commonly used sensors which are not in the kit, such as ultrasonic rangefinders. WPILib has a general features, such as general-purpose counters, to provide support for custom hardware and devices. The FPGA hardware also allows for interrupt processing to be dispatched at the task level, instead of as kernel interrupt handlers, reducing many common real-time bug problems.

The WPI Robotics library does not support the C++ explicitly, exception handling mechanism, though it is available to teams for their programs. Uncaught exceptions will unwind the entire call stack and cause the whole robot program to quit, therefore, we caution teams on the use of this feature.

Objects are allocated dynamically to represent each type of sensor. An internal reservation system for hardware is used to prevent reuse of the same ports for different. In the C++ version the code source for the library will be published on a server for teams to review and make comments. In the Java version the code source is included with each release. There will be a repository for teams to develop and share projects community for any language including LabVIEW.

Sensors WPI Robotics

The WPI Robotics Library has the sensors that are supplied in the FRC kit of parts, as well as many other commonly used sensors available to FIRST teams through industrial and hobby robotics outlets. The WPILib supported sensors are listed in the chart below. The supported sensors include those that are provided in the FIRST kit of parts, as well as other commonly used sensors.

Types of supported sensors
On the cRIO, the FPGA implements all the high-speed measurements through dedicated hardware ensuring accurate measurements no matter how many sensors and motors are added to the robot. This is an improvement over previous systems, which required complex real-time software routines. Natively the library supports the sensors of the categories shown below.

The WPI Robotics Library has many features that make it easy to implement the sensors that don’t have prewritten classes. For example, general-purpose counters can measure period and count from any device generating the output pulses. Another example is a generalized interrupt facility to catch the high-speed events without polling and potentially missing them.
Digital I/O Subsystem
The digital sidecar of visual representation and the subsystem of digital I/O. The NI 9401 digital I/O module offered in the kit has 32 GPIO lines. Through the circuits in the digital breakout the board, these lines map into 10 PWM outputs, 8 Relay outputs for the driving Spike relays, the signal light output, an I2C port, and 14 bidirectional the GPIO lines.
The PWM lines of basic update rate is a multiple of approximately 5 ms. Jaguar speed controllers update at slightly over 5ms, Victors update at slightly over 10ms, and servos update at slightly over 20ms.

Parameter Identification for Rigid Robot Models

A general overview of the identification methods of parameter for rigid robots can be found in textbooks. The identification techniques of experimental robot estimate dynamic robot parameters based on force/torque and motion data that are measured during robot motions along optimized trajectories. Mostly, these techniques are based on the fact that the dynamic robot model can be written as a linear set of equations with the dynamic parameters as unknowns. A formulation of dynamic parameters such as this allows the use of linear estimation techniques that find the optimal parameter set in a global sense. However, not all parameters can be defined using these techniques since some of the parameters do not affect the dynamic response or affect the dynamic response in linear combinations with other parameters.

The null space is defined as the parameter space consisting parameter combinations that do not impact the dynamic response. Gautier, Khalil and Mayeda provide a set of rules based on the topology of the manipulator system to group the dependent inertia parameters and to form a minimal set of parameters that uniquely determine the dynamic response of the robot. In addition, the techniques of numerical like the QR decomposition or the Singular Value Decomposition can be used to find the set of minimal or base parameters.

Mostly the base parameter set obtained from a linear parameter fit is not guaranteed to be a physically meaningful solution. Waiboer suggest that the identified parameters become more physically convincing by choosing the null space in such a way that the estimated parameters match a priori given values in least squares sense. This needs an a priori estimation of the parameter values and a sufficiently accurate description of the null space, neither of which are trivial, in general. Mata force is a physical feasible solution by adding nonlinear constraints to the optimization problem. However, by adding nonlinear constraints to a linear problem gives a nonlinear optimization problem for which it is hard to find the global minimum.

Parameter Identification for Flexible Models Using Additional Sensors

The identification procedure of linear least squares used for the identification of rigid robot models assumes that the position signal of all degrees of freedom are known or can be measured. If the all degrees position of freedom including the corresponding velocities and accelerations are known, the dynamic model can be written as a linear set of equations with the dynamic parameters as unknowns. Generally only motor position and torque data is available. Therefore, measurements from freedom arising additional degrees from flexibilities are not readily available and consequently the linear least squares technique cannot be used for flexible robot models. Several authors suggest the application of additional sensors to measure the elastic deformations, e.g. link position, acceleration sensors, and/or velocity sensors or torque. First, an overview of identification techniques using these additional sensors will be given.

This presents an identification method for the dynamical parameters of simple mechanical systems with lumped elasticity. The parameters are calculated by using the solution of a weighted least squares system of an over determined system that is linear with regard to a minimal set of parameters and obtained by sampling the dynamic model along a trajectory. Two different cases are considered according the types of measurements available for identification. In the first case, it is assumed that measurements for the load and the motor position are available. In the second case, it is assumed that measurements for the load acceleration and the motor position are available.

Instead of the load position reconstruction by integration of the measured acceleration, they suggest differentiating the dynamic equations twice. However, problems come out for non-continuous terms like joint friction. The use chirp signal as excitation signal should decrease the influence of the dynamic behavior, which is represented by these non-differentiable terms, on the measured data.
Related Posts Plugin for WordPress, Blogger...