labbCAN_Pump_API.h File Reference

labbCAN Pump Application Programming Interface More...

#include "labbCAN_Bus_API.h"
+ Include dependency graph for labbCAN_Pump_API.h:

Macros

#define CENTI   -2
 CENTI.
 
#define DECI   -1
 DECI.
 
#define KILO   3
 KILO.
 
#define LITRES   68
 Litres.
 
#define MICRO   -6
 MICRO.
 
#define MILLI   -3
 MILLI.
 
#define NEWTON   33
 Newton.
 
#define PER_HOUR   3600
 PER_HOUR.
 
#define PER_MINUTE   60
 PER_MINUTE.
 
#define PER_SECOND   1
 PER_SECOND.
 
#define UNIT   0
 use base unit
 

Enumerations

enum  LCP_ContiFlowProperties {
  PropertyCrossFlowDuration_s, PropertyOverlapDuration_s, PropertyMinPumpFlow, PropertyMaxRefillFlow,
  PropertyRefillFlow, PropertySwitchingMode
}
 Device property identifiers that can be used with the LCB_GetDeviceProperty() and LCB_SetDeviceProperty() function to read and write certain device properties of continuous flow pump. More...
 
enum  eSwitchingMode { SwitchingCrossFlow }
 Supported continuous flow switching modes. More...
 

Functions

long LCP_AddBatchEntry (dev_hdl hPump, double Volume, double Flow, unsigned long Time, unsigned long Cycles, unsigned long PeriodSecs)
 Adds a single entry to list of batch entries. More...
 
long LCP_Aspirate (dev_hdl hPump, double Volume, double Flow)
 Aspirate a certain volume with a certain flow rate. More...
 
long LCP_ClearBatchList (dev_hdl hPump)
 Deletes all entries from a pumps batch list. More...
 
long LCP_ClearFault (dev_hdl hPump)
 Clear fault condition. More...
 
long LCP_ClearForceSafetyStop (dev_hdl hPump)
 Clear / acknowledge force safety stop. More...
 
long LCP_ConfigureContiFlowValve (dev_hdl hContiFlowPump, unsigned int PumpChannelIndex, unsigned int ValveIndex, dev_hdl Valve, int AspiratingPos, int DispensingPos, int ClosedPos)
 Configures the continuous flow valve for one syringe pump channel of a continuous flow pump. More...
 
long LCP_CreateContiFlowPump (dev_hdl hPump1, dev_hdl hPump2, dev_hdl *ContiFlowPumpHandle)
 Create a continuous flow pump from two syringe pumps. More...
 
long LCP_Disable (dev_hdl hPump)
 Set pump into disabled state. More...
 
long LCP_Dispense (dev_hdl hPump, double Volume, double Flow)
 Dispense a certain volume with a certain flow rate. More...
 
long LCP_Enable (dev_hdl hPump)
 Set axis into enabled state. More...
 
long LCP_EnableForceMonitoring (dev_hdl hPump, int Enable)
 Enable / Disable force monitoring. More...
 
long LCP_GenerateFlow (dev_hdl hPump, double FlowRate)
 Generate a continuous flow. More...
 
long LCP_GetBatchEntry (dev_hdl hPump, unsigned long Time, dev_hdl *pBatchEntryHdl)
 This function returns a handle to a certain batch entry. More...
 
long LCP_GetBatchEntryAtIndex (dev_hdl hPump, unsigned long Index, dev_hdl *pBatchEntryHdl)
 This function returns a handle to a certain batch entry. More...
 
long LCP_GetBatchEntryParam (dev_hdl BatchEntryHdl, double *pVolume, double *pFlow, unsigned long *pTime, unsigned long *pCycles, unsigned long *pPeriodSecs)
 This function returns the configuration of a certain batch entry. More...
 
long LCP_GetBatchListSize (dev_hdl hPump)
 Query current number of entries in a pumps batch list. More...
 
long LCP_GetContiFlowSyringePump (dev_hdl hContiFlowPump, unsigned int Channel, dev_hdl *SyringePumpHandle)
 Returns the device handle for the syringe pump 1 or 2 of this continuous flow pump. More...
 
long LCP_GetDosedVolume (dev_hdl hPump, double *pDosedVolume)
 Get the already dosed volume. More...
 
long LCP_GetDrivePosCnt (dev_hdl hPump, long *pPosCntValue)
 Query the value of the internal drive position counter. More...
 
long LCP_GetFillLevel (dev_hdl hPump, double *pFillLevel)
 Returns the actual fill level of the pump. More...
 
long LCP_GetFlowIs (dev_hdl hPump, double *pFlowRateIs)
 Read the actual flow rate. More...
 
long LCP_GetFlowRateMax (dev_hdl hPump, double *FlowRateMax)
 Get maximum flow rate that is realizable with current dosing unit configuration. More...
 
long LCP_GetFlowUnit (dev_hdl hPump, int *pPrefix, int *pVolumeUnit, int *pTimeUnit)
 Queries the current flow unit used for passing flow values. 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_GetNextDosageTime (dev_hdl hPump)
 Returns time of next dosage event. More...
 
long LCP_GetNoOfPumps ()
 Query number of detected pump devices. More...
 
dev_hdl LCP_GetPumpDriveHandle (dev_hdl hPump)
 Returns the drive handle of pump drive for the given pump. More...
 
long LCP_GetPumpHandle (unsigned char Index, dev_hdl *PumpHandle)
 Get pump handle by its index. More...
 
long LCP_GetPumpName (dev_hdl hPump, char *pNameStringBuf, int StringBufSize)
 Query name of specific pump. More...
 
long LCP_GetSyringeParam (dev_hdl hPump, double *pInnerDiameter_mm, double *pMaxPistonStroke_mm)
 Syringe pump specific functions for configuration. More...
 
long LCP_GetTargetVolume (dev_hdl hPump, double *pTargetVolume)
 Read the target volume. More...
 
long LCP_GetValveHandle (dev_hdl hPump, dev_hdl *ValveHandle)
 Returns the valve handle of a pump valve for the pump given in hPump parameter. More...
 
long LCP_GetVolumeMax (dev_hdl hPump, double *VolumeMax)
 Returns the maximum volume a pump can aspirate into its container (syringe) For some devices like peristaltic pumps the maximum volume is not limited while for other pumps, like syringe pumps, the maximum volume is limited by the maximum travel range of the drive unit and by the maximum piston stroke of the mounted syringe. More...
 
long LCP_GetVolumeUnit (dev_hdl hPump, int *pPrefix, int *pVolumeUnit)
 Queries the current volume unit used for all dosage functions. 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_HasValve (dev_hdl hPump)
 Returns 1 if this pump has an valve assigned. More...
 
long LCP_InitializeContiFlow (dev_hdl hContiFlowPump)
 Initialize the continuous flow pump. More...
 
long LCP_IsBatchRunning (dev_hdl hPump)
 Check if batch processing is active. More...
 
long LCP_IsCalibrationFinished (dev_hdl hPump)
 Checks if calibration is finished. More...
 
long LCP_IsContiFlowInitialized (dev_hdl hContiFlowPump)
 Returns true, if the conti fow pump is initialized and ready for continuous flow start. More...
 
long LCP_IsContiFlowInitializing (dev_hdl hContiFlowPump)
 Returns true, if the conti fow pump initialization is just active. More...
 
long LCP_IsEnabled (dev_hdl hPump)
 Query if pump drive is enabled. 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_IsInFaultState (dev_hdl hPump)
 Check if pump is in a fault state. More...
 
long LCP_IsPositionSensingInitialized (dev_hdl hPump)
 Returns true, if the position sensing system is properly initialized. More...
 
long LCP_IsPumping (dev_hdl hPump)
 Check if device is currently stopped or dosing. More...
 
long LCP_LookupPumpByName (const char *pPumpName, dev_hdl *PumpHandle)
 Lookup for a pump device by its name. More...
 
long LCP_PumpVolume (dev_hdl hPump, double Volume, double Flow)
 Pump a certain volume with a certain flow rate. 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_RemoveBatchEntry (dev_hdl hPump, unsigned long Time)
 Remove batch entry from list of batch entries. More...
 
long LCP_RestoreDrivePosCnt (dev_hdl hPump, long PosCntValue)
 Restore internal hardware position counter value of pump drive. More...
 
long LCP_SetFillLevel (dev_hdl hPump, double Level, double Flow)
 Pumps fluid with the given flow rate until the requested fill level is reached. More...
 
long LCP_SetFlowUnit (dev_hdl hPump, int Prefix, int VolumeUnit, int TimeUnit)
 Sets the flow unit for a certain pump. More...
 
long LCP_SetSyringeParam (dev_hdl hPump, double InnerDiameter_mm, double MaxPistonStroke_mm)
 Set syringe parameters. More...
 
long LCP_SetVolumeUnit (dev_hdl hPump, int Prefix, int VolumeUnit)
 This function sets the default volume unit. More...
 
long LCP_StartBatchProcessing (dev_hdl hPump)
 Start processing of batch list. More...
 
long LCP_StopAllPumps ()
 Immediately stop pumping off all pumps. More...
 
long LCP_StopBatchProcessing (dev_hdl hPump)
 Stop processing of batch list. More...
 
long LCP_StopPumping (dev_hdl hPump)
 Immediately stop pumping. More...
 
long LCP_SyringePumpCalibrate (dev_hdl hPump)
 Executes a reference move for a syringe pump. More...
 
long LCP_WriteForceLimit (dev_hdl hPump, double ForceLimit)
 Sets a custom force limit. More...
 

Detailed Description

labbCAN Pump Application Programming Interface

Author
Uwe Kindler (UK)
Date
2012/07/13