AMOR API library  V1.1.44
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator
Data Structures | Defines | Typedefs | Enumerations | Functions
amor.h File Reference

Contains all AMOR library function declarations. More...

Go to the source code of this file.

Data Structures

struct  AMOR_JOINT_INFO
 Representation of joint limit information. More...
struct  AMOR_JOINT_VERSION
 Representation of joint firmware version. More...
struct  AMOR_MATRIX44
 Struct representing a 4x4 matrix. More...

Defines

#define AMOR_EXPORT
#define AMOR_SUCCESS   0
 Represents successfull excution of a function.
#define AMOR_FAILED   -1
 Represents unsuccessfull excution of a function. See amor_errno and amor_error for details.
#define AMOR_INVALID_HANDLE   0
 Returned from amor_connect if the function call fails. See amor_errno and amor_error for details.
#define AMOR_NO_WARNING   0
 There is currently no warning.
#define AMOR_WARN_TEMPERATURE   1
 The joint temperature is too high/low.
#define AMOR_WARN_LOWER_END_SWITCH   2
 The joint has reached the lower end-switch.
#define AMOR_WARN_UPPER_END_SWITCH   3
 The joint has reached the upper end-switch.
#define AMOR_WARN_BUFFER_EMPTY   5
 The setpoint buffer is empty.
#define AMOR_NUM_JOINTS   7
 AMOR amount of joints.
#define AMOR_ERROR_NONE   0
 Returned from amor_error when no error is.
#define AMOR_ERROR_UNKNOWN   1
 An unknown error has occured.
#define AMOR_ERROR_CONNECTION_FAILURE   2
 Returned when the connection with the AMOR failed.
#define AMOR_ERROR_INVALID_ARGUMENT   3
 Returned when an invalid argument has been supplied.
#define AMOR_ERROR_COMMUNICATION   4
 Returned when there are communication problems.
#define AMOR_ERROR_CAN_DRIVER   5
 Returned when the CAN driver fails.

Typedefs

typedef void * AMOR_HANDLE
 Represents a handle to the AMOR API.
typedef int AMOR_RESULT
 Represents the result from calling an AMOR API library function.
typedef double real
 In the AMOR API library, reals are represented as doubles.
typedef real AMOR_VECTOR7 [AMOR_NUM_JOINTS]
 Representation of a 7 dimensional real vector.

Enumerations

enum  amor_movement_status { AMOR_MOVEMENT_STATUS_MOVING, AMOR_MOVEMENT_STATUS_PENDING, AMOR_MOVEMENT_STATUS_FINISHED }
 Current status of the movement. More...

Functions

void amor_get_library_version (int *major, int *minor, int *build)
 Request AMOR API library version information.
AMOR_HANDLE amor_connect (char *libraryName, int can_port)
 Open/initiate a connection to AMOR.
AMOR_RESULT amor_set_currents (AMOR_HANDLE handle, AMOR_VECTOR7 currents)
 Specify the currents that should be applied to each joint motor.
AMOR_RESULT amor_get_req_currents (AMOR_HANDLE handle, AMOR_VECTOR7 *currents)
 Retrieve the requested motor currents.
AMOR_RESULT amor_get_actual_currents (AMOR_HANDLE handle, AMOR_VECTOR7 *currents)
 Retrieve the currents that are currently measured at the joint motors.
AMOR_RESULT amor_set_voltages (AMOR_HANDLE handle, AMOR_VECTOR7 voltages)
 Specify the voltages that should be applied to each joint motor.
AMOR_RESULT amor_get_req_voltages (AMOR_HANDLE handle, AMOR_VECTOR7 *voltages)
 Retrieve the requested motor voltages.
AMOR_RESULT amor_get_actual_voltages (AMOR_HANDLE handle, AMOR_VECTOR7 *voltages)
 Retrieve the voltages that are currently measured at the joint motors.
AMOR_RESULT amor_set_positions (AMOR_HANDLE handle, AMOR_VECTOR7 positions)
 Specify the joints angles the robot should try to move to.
AMOR_RESULT amor_get_req_positions (AMOR_HANDLE handle, AMOR_VECTOR7 *positions)
 Request the joints angles the robot was last commanded to move to.
AMOR_RESULT amor_get_actual_positions (AMOR_HANDLE handle, AMOR_VECTOR7 *positions)
 Retrieve the actual joints angles of the robot.
AMOR_RESULT amor_set_velocities (AMOR_HANDLE handle, AMOR_VECTOR7 velocities)
 Specify the joint velocities the robot should try achieve.
AMOR_RESULT amor_get_req_velocities (AMOR_HANDLE handle, AMOR_VECTOR7 *velocities)
 Request the joint velocities the robot was last commanded to achieve.
AMOR_RESULT amor_get_actual_velocities (AMOR_HANDLE handle, AMOR_VECTOR7 *velocities)
 Retrieve the actual joints angles of the robot.
AMOR_RESULT amor_emergency_stop (AMOR_HANDLE handle)
 Command an emergency stop to the robot.
AMOR_RESULT amor_controlled_stop (AMOR_HANDLE handle)
 Command a controlled stop to the robot.
AMOR_RESULT amor_release (AMOR_HANDLE handle)
 Release the handle to the AMOR robot.
AMOR_RESULT amor_get_status (AMOR_HANDLE handle, int joint, int *status)
AMOR_RESULT amor_get_joint_info (AMOR_HANDLE handle, int joint, AMOR_JOINT_INFO *parameters)
 Retrieve limit information of an AMOR joint.
AMOR_RESULT amor_get_movement_status (AMOR_HANDLE handle, amor_movement_status *status)
 Retrieve current position and velocity movement status.
AMOR_RESULT amor_set_cartesian_velocities (AMOR_HANDLE handle, AMOR_VECTOR7 velocities)
 Specify the cartesian joint velocities the robot should try achieve.
AMOR_RESULT amor_set_cartesian_positions (AMOR_HANDLE handle, AMOR_VECTOR7 positions)
 Specify the cartesian position the robot should try to move to.
AMOR_RESULT amor_get_cartesian_position (AMOR_HANDLE handle, AMOR_VECTOR7 &positions)
 Retrieve the actual cartesian position of the robot.
unsigned int amor_errno ()
const char * amor_error ()

Detailed Description

Contains all AMOR library function declarations.

Author:
Floran Stuyt (f.stu.nosp@m.yt@e.nosp@m.xactd.nosp@m.ynam.nosp@m.ics.n.nosp@m.l)
Rick ten Brink (r.ten.nosp@m.brin.nosp@m.k@exa.nosp@m.ctdy.nosp@m.namic.nosp@m.s.nl)
Date:
February, 2012 Include this file in your project, and make sure that you tell the linker to link to amor_api.lib. Furthermore, ensure that the amor_api.dll file is located in the working directory of your application.