contact paa
Laboratory Automation Home Page
 
 

Overlord3 lab automation by round robin parallel processing

    what is round robin processing?   links
Overlord3 laboratory automation by round robin parallel processing

The advantage of the time-resolved/static/dynamic scheduler is that is offers parallel processing, that is, multiple instruments can be used simultaneously.

This can be achieved with a event-driven scheduler such as Overlord3. The process is often referred to as round robin and can be best described as keeping all the instruments running when there is a possibility to achieve full system activity.

The key is consider the multistage process as a simple series of stages. Consider the example of add a diluent to a microplate followed by a plate reader step. To get maximum throughput it is necessary to dilute and read at the same time.

categories
which scheduler?
Overlord3
Overlord3 SocketSet
Overlord3 Remoting
Software Development Kit
Overlord3 instrument drivers
Overlord Scheduler
21 cfr (Part 11) version
Assay Manager

Click to view of download documentdownload app note
Round Robin Scheduling

 
example

First consider a one stage step, e.g. read a plate. The plate reader can be in on of 4 states:

  1. ready for loading (TRUE if ready to load)
  2. busy running a read process (TRUE if running)
  3. ready for unloading (TRUE if ready to unload)
  4. in an error state (TRUE if in an error state)

Clearly there are logical steps to be followed:

  • a plate cannot be loaded on to the plate reader if steps 2,3, or 4 are true
  • a plate cannot be unloaded if steps 1, 2 or 4 are true

So for the complete process in Overlord3 it is necessary to write a procedure like this:

  1. Determine the number of plates to be processed (ask the user, automatically count the plates in the plate stack), set a variable (#PlatesToProcess) to this number
  2. Set up a conditional loop that will stop when all the plates are processed (#PlatesProcessed)
  3. set #PlatesProcessed to zero at the beginning of the run
  4. check the value of #PlatesProcessed on every loop, exit the process when #PlatesToProcess = #PlatesProcessed
  5. determine if the plate reader is busy (check the process status or ask the instrument for its status)
  6. if the plate reader is ready for loading, get a plate from the in stack and put it in the plate reader, start the required plate reader method
  7. if the plate reader is busy, go around the loop again
  8. if the plate reader is ready to unload, return the plate to the out stack, increment the #PlatesProcessed
  9. if the plate reader is in an error state, stop the process
  10. the loop is completed, return to step 4

This simple routine will process all the plates in a stack.

For a multiple stage process, the procedure just has to check the status of each instrument in the way described above. For example dilute and read.

  • STAGE 1 is to dilute the plate
  • STAGE 2 is to read the plate
  1. Determine the number of plates to be processed (ask the user, automatically count the plates in the plate stack), set a variable (#PlatesToProcess) to this number
  2. Set up a conditional loop that will stop when all the plates are processed (#PlatesProcessed)
  3. set #PlatesProcessed to zero at the beginning of the run
  4. check the value of #PlatesProcessed on every loop, exit the process when #PlatesToProcess = #PlatesProcessed
  5. determine if the plate reader is busy (check the process status or ask the instrument for its status)
  6. if the plate reader is ready for loading, get a plate from the diluter and put it in the plate reader, start the required plate reader method
  7. if the plate reader is busy, go around the loop again
  8. if the plate reader is ready to unload, return the plate to the out stack, increment the #PlatesProcessed
  9. if the plate reader is in an error state, stop the process
  10. determine if the diluter is busy (check the process status or ask the instrument for its status)
  11. if the diluter is ready for loading, get a plate from the in stack and put it in the diluter, start the required diluter method
  12. if the diluter is busy, go around the loop again
  13. if the diluter is ready to unload, go around the loop again
  14. if the plate reader is in an error state, stop the process
  15. the loop is completed, return to step 4

Just add an additional section for each extra stage of the process.

Round robin demonstration videoClick to see a demonstration video of round robin scheduling using an automate.it scara robot loading a BioTek ELx405 and Thermo Multidrop showing multitasking for parallel equipment operation.


Click to view of download documentdownload app note
Round Robin Scheduling


laboratory automation - process acoustics - IT compliance (21CFR Part 11)
Copyright 2004-2009 Process Analysis & Automation Ltd.
contact | privacy policy | webpage terms | privacy policy | ISO 9001:2008 | XHTML | CSS

All manufacturers' trademarks are gratefully acknowledged.
paa, Overlord and automate.it are the trademark of Process Analysis & Automation Ltd.
Every effort is made to ensure the information on this website is accurate, paa cannot be held responsible for any errors.
paa and our partners reserve the right to update and change product information at any time without notice.