The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Robotics::Tecan::Genesis::Liha - (Internal module) Handlers for low level liquid handling hardware

tip_aspirate

Aspirate with coupled tips from named arm. Use tip string to specify tips.

Specify volume and location, with optional liquid type, flags, etc. Requires work table to be previously loaded.

Return status string. May take time to complete.

named motor arm - string, motor name (default: "liha")
(optional) tips - string, "1" or "2-6" or "2,4,1,7" or "1,5-8" or "all" (default: "1") =item (optional) volume - string, specifying volume of 1-1000 for each tip, such as "20,20,20" (default: 10) =item (optional) location - string, specifying "well" numbers or well co-ordinates (default: "1") =item (optional) liquid type - string, from configuration database (default: "Water") =item (optional) position - numeric, carrier location, 1-67 (default: 1) =item (optional) site - numeric, rack position, 0-127 (default: 0) =item (optional) inter-tip distance - numeric, 1-n (default: 1) =item (optional) flags - various flags for specifying actions after aspiration (default: "") =item (optional) flag argument - various arguments depending on flags (default: "")

tip_dispense

Aspirate with coupled tips from named arm. Use tip string to specify tips.

Specify volume and location, with optional liquid type, flags, etc. Requires work table to be previously loaded.

Return status string. May take time to complete.

named motor arm - string, motor name (default: "liha")
All other arguments (many) are the same as tip_aspirate.

tip_set_supply

Set type and location for the supply of pipette tips. Return status string. Returns immediately.

(optional) type - numeric, 1-4 (default: 1) =item (optional) grid - numeric, 1-99 (default: 1) =item (optional) site - carrier location, 0-63 (default: 0) =item (optional) position - rack position, 0-95 (default: 0)

tip_query

Query next available tip location, given tip type. Return query status string (example: "0;32;0;0") Returns immediately.

type - numeric, 1-4 (default: 1)

tip_query_usage

Query usage of tip type. Return tip usage string (example: "0;96") Returns immediately.

(optional) type - numeric, 1-4 (default: 1)

tip_pause

Pause pipetting if robotics is in the PIPETTING state. No arguments. Returns error if any. Returns immediately (?).

tip_couple

Connect pipetting tips to liquid handling arm.

(optional) Tips to use. String, in the format: "1" or "2-5" or "1,4,8" or "all". Default: "1" =item (optional) Type of tip. Numeric, 0-3, as defined in Tecan configuration MINUS ONE. Default: 0 =item (optional) Operational flags. Numeric. 0=none. 1=retry tip fetching up to 3 times at successive positions. Default: 0

Returns error if any. May take time to complete.

tip_coupleFirmware

Couple (mechanically join) a pipetting tip(s) to liquid handling arm at the current arm position.

(optional) Tips to use. String, in the format: "1" or "2-5" or "1,4,8" or "all". Default: "1" =item (optional) Type of tip. Numeric, 0-3, as defined in Tecan configuration MINUS ONE. Default: 0 =item (optional) Operational flags. Numeric. 0=none. 1=retry tip fetching up to 3 times at successive positions. Default: 1

Returns error if any. May take time to complete.

See also: tip_uncouple

tip_uncoupleFirmware

Uncouple (mechanically unjoin) a pipetting tip(s) from liquid handling arm at the current arm position.

(optional) Tips to use. String, in the format: "1" or "2-5" or "1,4,8" or "all". Default: "1"

Returns error if any. May take time to complete.

See also: tip_couple

_tipStringToMask8

Internal function. Convert tip string into a numeric tip mask, where tips are numbered "1" to "8".

String: "1" or "2-6" or "2,4,1,7" or "1,5-8" or "all" (default: "1")

Returns: 8-bit numeric value.

Developer information: Example LIHA firmware commands

position at waste: A1PAA875,2423,90,2100,2100,2100,2100,2100,2100,2100,2100

dispense: tip 1 : dispense 119.30<B5>l 12, 8 JC-Greiner V-Bottom [11,2] 100.00<B5>l "Water" DITI <15 - 200<B5>l> Single "Water" =>

                M1,GFC
                D1,V3600c2400D358M0R
                M1,GSC

aspirate: tip 1 : aspirate 104.30<B5>l 1, 7 Tube 13*100mm, 16 Pos. [8,1] 100.00<B5>l ">> Water << 10" DITI <15 - 200<B5>l> Single M1,GFC D1,OV420P15M0R M1,GSC M1,GFC D1,V600P313M200R M1,GSC

status?

> D1,Q0 < D1,0,448

flush: D1,IV5400P3000OA0R

initialize: A1,PAA45,1031,90,2080,2080,2080,2080,2080,2080,2080,2080 D1,YIP100OS9OD100R

Sequence to position at well1, aspirate, dispense, position at waste: >COMMAND;A1PAA2612,743,90,670,2080,2080,2080,2080,2080,2080,2080 >COMMAND;D1Q0 >COMMAND;D1V3600c2400P358M0R >COMMAND;D1Q0 >COMMAND;A1PAA2612,743,90,720,2080,2080,2080,2080,2080,2080,2080 >COMMAND;D1Q0 >COMMAND;D1V3600c2400D358M0R >COMMAND;D1Q0 >COMMAND;A1PAA875,2423,90,2100,2100,2100,2100,2100,2100,2100,2100

? P = move relative plunger (pick liquid) ? I = turn valve to input ? O = turn valve to output ? D = move relative plunger (dispense liquid) ? c = set plunger stop speed (=SPP) ? V = set plunger drive end speed (=SEP) R = execute command(s) M = delay (milliseconds)

Dispense command sequence for tests:

    The following has "no reply from GSC, pipe seems hung" bug:
            A1PAA2612,743,90,695,2080,2080,2080,2080,2080,2080,2080
            M1GFC
            D1Q0
            D1V3600c2400D358M0R
            D1Q0
            M1GSC
            
    The following works OK:
    
            A1PAA2612,743,90,670,2080,2080,2080,2080,2080,2080,2080 
            D1Q0
            D1V3600c2400P358M0R
            D1Q0
            A1PAA2612,743,90,720,2080,2080,2080,2080,2080,2080,2080
            D1Q0
            D1V3600c2400D358M0R
            D1Q0
            A1PAA875,2423,90,2100,2100,2100,2100,2100,2100,2100,2100
            

Aspirate command sequence for tests:

    # XXX
    # XXX "GSC" command does not seem to transmit through named pipe?
    # XXX
            #M1GFC
            #D1Q0
            #D1OV420P15M0R
            #D1Q0
            #M1GSC
            
            A1PAA2612,743,90,695,2080,2080,2080,2080,2080,2080,2080
            M1GFC   
            D1Q0
            D1V600P313M200R
            D1Q0
            M1GSC
    
    A1PAA2612,743,90,695,2080,2080,2080,2080,2080,2080,2080
    D1Q0
    D1V600P313M200R
    D1Q0

18 POD Errors

The following errors were encountered while parsing the POD:

Around line 188:

'=item' outside of any '=over'

Around line 398:

You forgot a '=back' before '=head2'

Around line 408:

'=item' outside of any '=over'

Around line 507:

You forgot a '=back' before '=head2'

Around line 513:

'=item' outside of any '=over'

Around line 535:

You forgot a '=back' before '=head2'

Around line 541:

'=item' outside of any '=over'

Around line 557:

You forgot a '=back' before '=head2'

Around line 563:

'=item' outside of any '=over'

Around line 580:

You forgot a '=back' before '=head2'

Around line 602:

'=item' outside of any '=over'

Around line 638:

You forgot a '=back' before '=head2'

Around line 642:

'=item' outside of any '=over'

Around line 670:

You forgot a '=back' before '=head2'

Around line 674:

'=item' outside of any '=over'

Around line 699:

You forgot a '=back' before '=head2'

Around line 704:

'=item' outside of any '=over'

Around line 777:

You forgot a '=back' before '=head3'