PyEvo Documentation

Version 2

Introduction

PyEvo provides a python interface to Tecan Robots through the Freedom EVOWare COM API. It allows specifying scripts using higher level abstractions as well as providing an interactive environemnt for interpreted execution of robot scripts written in Python. The interpreted nature allows the Tecan to be controlled from a Read-Eval-Print-Loop as well providing for easy development and debugging.

Getting Started

Using PyEvo is easy. Import the pyevo module.

import pyevo

Then create an EVO object that talks to the Tecan and instruct the EVO object to connect to the robot. evo.logon() starts EVOWare if is not already running and logs into its remote mode.

evo = pyevo.EVO()
evo.logon()

Next, create a RobotScripter object which provides high level abstractions to different Tecan commands. Pass in the arguments for the connection to EVOWare and True specifying the interpreted mode is requested.

scripter = pyevo.RobotScripter(evo,True)

Class Documentation

Location

The Location class represents a location on the robot work table.

Location(grid,site)

The constructor takes 2 arguments, the location's grid and site.

grid

Is the member containing the grid position on the robot work table.

site

Is the member containing the site position on the robot work table.

Plate

A Plate is a lab plate located at some location on the robot work table containing wells.

Plate(grid,site)

The constructor takes 2 arguments, the plate's grid and site.

plateType

The plate type. By default it is P96WellEppendorf.

getFreeWell()

Returns a Well object of the next unused well on the plate.

Well

A well or other location that can contain liquid.

Well(plate,row,column)

The constructor takes 3 arguments, the plate the well is on and the row and column on that plate.

row

Is the member containing the well's row on the parent plate.

column

Is the member containing the well's column on the parent plate.

plate

Is the member pointing to the plate the well is on.

Tip

TipPlate

Work Table Settings

RobotScipter

Provides a high level interface to the Tecan robot.

RobotScripter(evo,interactive=False)

The constructor takes 2 arguments, a logged-in EVO object and a boolean indicating whether an interactive or purely script saving mode is desired.

aspirate(tipNumber, well, amount)

Using a given tip, aspirate amount uL from the given well.

dispense(tipNumber, well, amount)

Using a given tip, dispense amount uL into the given well.

pipetteMix(tipNumber, well, amount, numTimes)

Using a given tip, aspirate and dispense amount uL multiple times from the given well.

pickUpTip(tipNumber, tip)

Mount the given tip onto DiTi number tipNumber.

setBackTip(tipNumber, tip)

Put back the given tip, assuming it is mounted on DiTi number tipNumber.

Examples

import pyevo
evo = pyevo.EVO()
evo.logon()
scripter = pyevo.RobotScripter(evo,True)

#A plate of 1000 uL DiTi tips exists at grid 3, site 0 on the worktable.
ditiLocation = pyevo.TipPlate(3,0,TipPlateTypes.DiTi1000ul)

#A 96 Well Eppendorf Plate exists at grid 16, site 1 on the worktable.
workPlate = pyevo.Plate(16,1,pyevo.PlateTypes.P96WellEppendorf)

#Mount a free DiTi on tip 1
scripter.pickUpTip(1,ditiLocation.getFreeTip())