Force Monitoring Functions

Overview

This group contains functions for controlling the force monitoring, reading the force sensor and setting a custom force limit for pump devices that support this functionality such as Nemesys S and Nemesys M.

+ Collaboration diagram for Force Monitoring Functions:

Functions

long LCP_ClearForceSafetyStop (dev_hdl hPump)
 Clear / acknowledge force safety stop. More...
 
long LCP_EnableForceMonitoring (dev_hdl hPump, int Enable)
 Enable / Disable force monitoring. More...
 
long LCP_GetForceLimit (dev_hdl hPump, double *ForceLimit)
 Returns the force limit. More...
 
long LCP_GetForceUnit (dev_hdl hPump, int *Prefix, int *ForceUnit)
 Return the force unit used for all force monitoring related functions. More...
 
long LCP_GetMaxDeviceForce (dev_hdl hPump, double *MaxForce)
 Returns the maximum device force. More...
 
long LCP_HasForceMonitoring (dev_hdl hPump)
 With this function you can check if the pump given in hPump parameter supports force monitoring functionality. More...
 
long LCP_IsForceMonitoringEnabled (dev_hdl hPump)
 Returns true, if force monitoring is enabled. More...
 
long LCP_IsForceSafetyStopActive (dev_hdl hPump)
 Reads the safety stop input. More...
 
long LCP_ReadForceSensor (dev_hdl hPump, double *ForceSensorValue)
 Reads the force sensor and returns the measured force in the unit returned by LCP_GetForceUnit(). More...
 
long LCP_WriteForceLimit (dev_hdl hPump, double ForceLimit)
 Sets a custom force limit. More...
 

Function Documentation

long LCP_ClearForceSafetyStop ( dev_hdl  hPump)

Clear / acknowledge force safety stop.

The force monitoring functionality has a hysteresis. In case of a force overload situation you need to lower the force ca. 0.1 kN to clear the safety stop. If this is not possible, you can lower the force less (for example 0.02 kN) and then call this function to clear the safety stop input. That means, you only need to call this function, if it is not possible for you, to lower the force ca. 0.1 kN below the configured force limit or if you already lowered the force and the safety stop input is still active.

Parameters
[in]hPumpValid pump handle
Returns
Error code - ERR_NOERR indicates success
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_EnableForceMonitoring ( dev_hdl  hPump,
int  Enable 
)

Enable / Disable force monitoring.

Parameters
[in]hPumpValid pump handle
[in]Enable0 = Disable force monitoring, 1 = Enable force monitoring
Returns
Error code - ERR_NOERR indicates success
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_GetForceLimit ( dev_hdl  hPump,
double *  ForceLimit 
)

Returns the force limit.

If no custom force limit is set, then this function returns the LCP_GetMaxDeviceForce().

Parameters
[in]hPumpValid pump handle
[out]ForceLimitReturns the force limit in the unit returned by LCP_GetForceUnit()
Returns
Error code - ERR_NOERR indicates success
long LCP_GetForceUnit ( dev_hdl  hPump,
int *  Prefix,
int *  ForceUnit 
)

Return the force unit used for all force monitoring related functions.

Parameters
[in]hPumpValid pump handle
[out]PrefixPrefix Returns the prefix of the SIunit (i.e MILLI - see Prefix Constants)
[out]ForceUnitReturns the force unit identifier (i.e. NEWTON - see Force SI Units)
Returns
Error code - ERR_NOERR indicates success
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_GetMaxDeviceForce ( dev_hdl  hPump,
double *  MaxForce 
)

Returns the maximum device force.

The maximum device force is the maximum force the pump hardware can take in continuous operation.

Parameters
[in]hPumpValid pump handle
[out]MaxForceReturns the maximum device force
Returns
Error code - ERR_NOERR indicates success
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_HasForceMonitoring ( dev_hdl  hPump)

With this function you can check if the pump given in hPump parameter supports force monitoring functionality.

Parameters
[in]hPumpValid pump handle
Return values
<0error
0Pump has no force monitoring functionality
1Pump has force monitoring functionality
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_IsForceMonitoringEnabled ( dev_hdl  hPump)

Returns true, if force monitoring is enabled.

Parameters
[in]hPumpValid pump handle
Return values
<0Error - negative error code
0Force monitoring disabled
1Force monitoring enabled
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_IsForceSafetyStopActive ( dev_hdl  hPump)

Reads the safety stop input.

I case of a force overload, that means, if the measured force is higher than the force limit, the force monitoring sets the safety stop input and stops the pump. If this function returns true, then the pump is in a force overload situation. If safety stop is active, you can read the force sensor via LCP_ReadForceSensor() to get the current force value.

Parameters
[in]hPumpValid pump handle
Return values
<0Error - negative error code
1Force safety stop is active - force overload or force monitoring disabled
0Force safety stop is not active - normal dosing is possible
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_ReadForceSensor ( dev_hdl  hPump,
double *  ForceSensorValue 
)

Reads the force sensor and returns the measured force in the unit returned by LCP_GetForceUnit().

Parameters
[in]hPumpValid pump handle
[out]ForceSensorValueReturns the value read from force sensor
Returns
Error code - ERR_NOERR indicates success
Examples:
capi_nemesys_forcemon_test.cpp.
long LCP_WriteForceLimit ( dev_hdl  hPump,
double  ForceLimit 
)

Sets a custom force limit.

Each device has a device specific force limit. This function allows you to reduce the maximum force below this maximum device force, if this is required for your application. If the given ForceLimit is higher than LCP_GetMaxDeviceForce(), then LCP_GetMaxDeviceForce() will be set as force limit.

Parameters
[in]hPumpValid pump handle
[in]ForceLimitThe force limit in the unit returned by LCP_GetForceUnit()
Returns
Error code - ERR_NOERR indicates success
Examples:
capi_nemesys_forcemon_test.cpp.