Serial Dilution with Color Visualization
Overview
This example demonstrates how to perform a serial dilution using colored water to visualize the dilution series. The example uses a 24-well plate and petri dishes as reservoirs.
Setup
python
from science_jubilee.Machine import Machine
from science_jubilee.tools.Syringe import Syringe
from science_jubilee.decks import Deck
# Connect to machine
m = Machine(address='192.168.1.2')
# Change the profile to your desired profile
deck = m.load_deck('calibrated-deck')
# Load and configure syringe tool
syringe_index = 2 # Adjust based on your machine configuration
syringe = Syringe(index=syringe_index,
name='syringe',
config='10cc_syringe_liquidhandling')
m.load_tool(syringe)
m.pickup_tool(syringe)
# Move to safe height for labware installation
m.move_to(z=150)Loading Labware
python
# Load reservoirs (petri dishes)
water = m.load_labware("generic_petri_dish_100ml", 0)
color = m.load_labware("generic_petri_dish_100ml", 2)
# Access single well in petri dishes
water = water["A1"]
color = color["A1"]
# Load well plate for dilutions
samples = m.load_labware("greiner_24_wellplate_3300ul", 1)Preparing Initial Solutions
Add Water to First Column
python
# Add decreasing amounts of water to first column
fill_volume = 2 # mL
step_size = 0.5
for well in samples.column_data[1]:
syringe.transfer(
vol=fill_volume,
source=water,
destination=well)
fill_volume -= step_sizeAdd Water to Remaining Wells
python
# Add water to all other wells
fill_volume = 1.5 # mL
for column in range(2, len(samples.column_data)+1):
syringe.transfer(
vol=fill_volume,
source=water,
destination=list(samples.column_data[column]))Add Colored Solution
python
# Add increasing amounts of colored solution to first column
fill_volume = 0.5
for well in samples.column_data[1]:
syringe.transfer(
vol=fill_volume,
source=color,
destination=well,
mix_after=(1,2))
fill_volume += step_sizePerforming Serial Dilution
python
# Transfer and mix down each column
transfer_volume = 1.5
for row in samples.row_data:
for column in range(1, len(samples.column_data)):
syringe.transfer(
vol=transfer_volume,
source=samples.wells[f"{row}{column}"],
destination=samples.wells[f"{row}{column+1}"],
mix_after=(1,2))Expected Results
- First column: Decreasing water volume (2.0 to 0.5 mL) with increasing colored solution (0.5 to 2.0 mL)
- Subsequent columns: Serial dilution of the first column's solutions
- Visual gradient of color intensity across the plate
- Each row represents an independent dilution series
Notes
- Use appropriate volumes for your well plate (check well capacity)
- Consider using colored solutions for visual verification
- Mix thoroughly after each transfer for consistent dilutions
- Monitor liquid levels in source reservoirs
- Clean and maintain the syringe tool after use