Change height of individual tubes

Hi,
My colleagues threw me a curve ball in the form of wanting to do aspirations from carriers containing two different tube-types to a plate. The tubes in question are 2ml cryo and 0.5ml cryo i.e tube definition differs alot.
Due to time constraints i brute forced it by grabbing the suffix from the 0.5ml tubes and then used VirtualLabwareV2 to raise the z-height before aspiration and then lowering it back to original height after. The reason for raising and lowering is that the VirtualLabwareV2 changes the z-height for the carrier and not the individual tube.
Would the code example below work to create sequences that caters to carriers containing different tube type, by reading barcodes and storing these in an array and then iterating over that array?
Example:

seq_Source.CopySequence(ML_STAR.SourceTubes1ml);
seq_Source.SetCurrentPosition(1);
PosCount = arrayBarcode.Getsize();
lastdigitforlabware = 1;
for(loopCounter1 = 0; loopCounter1 <= PosCount; loopCounter1++)
{
   dummy = arrayBarcodes.GetAt(loopCounter1);
   dummy = dummy.StrFind(_FB);
   if(dummy != -1)
   {
      LabwareName = "Falsebottom_05_000";
   }
   if(dummy == -1)
   {
      LabwareName = "Cryo_20_000";
   }

   dummy1 = LabwareName + IStr(lastdigitforlabware);
   dummy2 = seq_Source.GetPositionId();
   seq_AspSequence.Add(dummy1, dummy2);
   seq_Source.Increment(1);
   if(loopCounter1 == 23)
   {
      lastdigitforlabware = 2;
   }
      if(loopCounter1 == 47)
   {
      lastdigitforlabware = 3;
   }
      if(loopCounter1 == 71)
   {
      lastdigitforlabware = 4;
   }
}

If it’s just two tube types, I would propose putting two carriers on the same track on the deck layout. Then you can load one of them, extract the barcode for each position, and use that to build the sequence. Just swap out the labware ID based on the barcode before doing a SeqAdd. If you need to do sample tracking you will also have to apply the barcodes that are on the carrier that was not loaded manually.

1 Like

In the HSLDevLib, there is a function: DevAddContainerToRack.
The function should allow you to custom assign a new container file for the tube (if desired) and includes an XYZ offset option. If you want to use the same tube container file, you can just use it as the configuration in the function and then apply the offsets you want.

1 Like

Hi!
Patrick: Your suggestion seems to be what I wrote in my example code so I’ll continue down that path.
Thank you both for your input!

2 Likes