def __init__(self,dId,destination,linkType,source,baud,synchronous):
     #Device specific
     brand = 'New Era'
     model = 'NE'
     modelNo = '500', '501', '1000'
     reference='http://www.syringepump.com/download/'
     notes='Call them to get the ZIP archives passwords'
     #Syringe Pump specific
     maxDiameter = 0.1       #mm
     minDiameter = 50        #mm
     #Command List
     self.commands = {
         'setDiameter':'DIA !diameter!',       #as float
         'getRate':'RAT',
         'setRate':'RAT !rate! !units!',
         'getVolume':'VOL',
         'setVolume':'VOL !volume! !units!',
         'clearVolume':'CLD !direction!',
         'getDirection':'DIR',
         'setDirection':'DIR !direction!',
         'getPhaseNumber':'PHN',
         'setPhaseNumber':'PHN !phaseData!',
         'run':'RUN',
         'stop':'STP',
         'getAlarmMode':'AL',
         'setAlarmMode':'AL !mode!',
         'getPowerFailMode':'PF',
         'setPowerFailMode':'PF !mode!',
         'getTTLTrigger':'TRG',
         'setTTLTrigger':'TRG !mode!',
         'getTTLDirectionControl':'DIN',
         'setTTLDirectionControl':'DIN !mode!',
         'getPumpMotorOperatingTTLOutput':'ROM',
         'setPumpMotorOperatingTTLOutput':'ROM !mode!',
         'getKeypadLockout':'LOC',
         'setKeypadLockout':'LOC !mode!',
         'getProgramEntryModeKeypadLockout':'LOC P',
         'setProgramEntryModeKeypadLockout':'LOC P !mode!',
         'getBeepMode':'BP',
         'setBeepMode':'BP !mode!',
         'getTTLOutput':'OUT !pin!',
         'setTTLOutput':'OUT !pin! !mode!',
         'getTTLInput':'IN !pin!',
         'getBuzzer':'BUZ',
         'setBuzzer':'BUZ !mode! !times!',
         'getPumpNetworkAddress':'*ADR',
         'setPumpNetworkAddress':'*ADR !address! !baudMode! !baud! !pumpMode!', #Address=[0:99], baudMode=['','B'], baudRate=[19200,9600,2400,1200,300], pumpMode=['DUAL','RECP'] ()
         'getSafeMode':'SAF',
         'setSafeMode':'SAF !timeout!', #timeout=[0:255]
         'getFirmwareVersion':'VER',
         'reset':'*RESET',
     }
     
     #Device Warnings
     #self.warnings
     
     #Initialise every parent class
     Device.__init__(self, dId, brand, model, modelNo, source, destination, linkType, True, baud, synchronous)
     SyringePump.__init__(self, minDiameter, maxDiameter)
Example #2
0
 def __init__(self,dId,destination,linkType,source,baud,synchronous):
     #Device specific
     brand = 'Harvard Apparatus'
     model = 'PHD Ultra'
     modelNo = ''
     reference='https://www.harvardapparatus.com/hapdfs/HAI_DOCCAT_4/703005_PHD_ULTRA_Manual.pdf'
     #Syringe Pump specific
     maxDiameter = 0.1       #mm
     minDiameter = 50        #mm
     #Command List
     self.commands = {
         'getAddress':'address',
         'setAddress':'address !address!',       #address = [0:99]
         'getBaud':'baud',
         'setBaud':'baud !baud!',
         'displayStoredMethod':'cat !baud!',     #baud = ['9600','19200','38400','57600','115200']
         'getDisplayBrightness':'dim',
         'setDisplayBrightness':'dim !percent!',     #percent = [0:100]
         'getEchoState':'echo !percent!',
         'setEchoState':'echo !mode!',       #mode = ['on','off']
         'getFreeSteps':'free',
         'getInfusionForce':'force',
         'setInfusionForce':'force !percent!',
         'getPromptModeState':'poll',
         'getPromptModeState':'poll !mode!',
         'getDateTime':'time',
         'getDateTime':'time !month!/!day!/!year! !hours!:!minutes!:!seconds!',
         'getValveState':'valve',
         'setValveState':'valve !mode!',
         'getValveDutyCycle':'vduty',
         'setValveDutyCycle':'vduty !percent!',
         'getShortVersion':'ver',
         'getFirmwareVersion':'version',
         #Run commands
         'runInfuse':'irun',
         'runWithdraw':'wrun',
         'runReverse':'rrun',
         'run':'run',
         'stop':'stop',
         #Rate commands
         'getCurrentRate':'crate',
         'getDiameter':'diameter',
         'setDiameter':'diameter !diameter!',
         'getRampInfusionRate':'iramp',
         'setRampInfusionRate':'iramp !startRate! !startRateUnits! !endRate! !endRateUnits! !rampTime!',     #rampTime in seconds
         'getInfusionRate':'irate',
         'setInfusionRate':'irate !rate! !rateUnits!',
         'getRampWithdrawRate':'wramp',
         'setRampWithdrawRate':'wramp !startRate! !startRateUnits! !endRate! !endRateUnits! !rampTime!',     #rampTime in seconds
         'getWithdrawRate':'wrate',
         'setWithdrawRate':'wrate !rate! !rateUnits!',
         #Volume commands
         'clearInfusedVolume':'civolume',
         'clearTargetVolume':'ctvolume',
         'clearBothVolumes':'cvolume',
         'clearWithdrawnVolume':'cwvolume',
         'getInfusedVolume':'ivolume',
         'getTargetVolume':'tvolume',
         'setTargetVolume':'tvolume !volume! !volumeUnits!',
         'getWithdrawnVolume':'wvolume',
         #Time commands
         'clearInfusedTime':'citime',
         'clearBothTimes':'ctime',
         'clearTargetTime':'cttime',
         'clearWithdrawnTime':'cwtime',
         'getInfusedTime':'itime',
         'getTargetTime':'ttime',
         'setTargetTime':'ttime !time! !timeUnits!',
         'getWithdrawnTime':'wtime',
         #Digital I/O commands
         'getTriggerInputPortStatus':'input',
         'setOutputPortLevel':'output !port! !level!',       #port=[1,2] level=['high','low']
         'setSyncPortLevel':'sync !level!',
         #Maintenance
         'getDeviceStatus':'status'
     }
     
     #Device Warnings
     #self.warnings
     
     #Initialise every parent class
     Device.__init__(self, dId, brand, model, modelNo, source, destination, linkType, True, baud, synchronous)
     SyringePump.__init__(self, minDiameter, maxDiameter)