Labs

Lab writeups:

  • Week 1 Lab: Pipetting

  • Week 2 Lab: DNA Gel Art

    Benchling Gel Design Restriction Digest Protocol Gel Preparation Protocol Gel Run and Imaging Protocol Final Gel Image

  • Week 3 Lab: Opentrons Art

    Opentrons Design Opentrons CoLab Code ### Green cursor = center_location.move(types.Point(x=-18, y = 12)) pipette_20ul.pick_up_tip() pipette_20ul.aspirate(15, location_of_color('Green')) dispense_and_detach(pipette_20ul, 3, cursor) cursor = cursor.move(types.Point(x=-4, y=4)) for i in range(4): dispense_and_detach(pipette_20ul, 3, cursor) if i!=3: cursor = cursor.move(types.Point(y=4)) pipette_20ul.aspirate(15, location_of_color('Green')) for i in range(2): cursor = cursor.move(types.Point(x=4, y=4)) dispense_and_detach(pipette_20ul, 3, cursor) cursor = cursor.move(types.Point(x=4)) for i in range(3): dispense_and_detach(pipette_20ul, 3, cursor) if i!=2: cursor = cursor.move(types.Point(x=4, y=-4)) pipette_20ul.aspirate(18, location_of_color('Green')) cursor = cursor.move(types.Point(x=4)) for i in range(3): dispense_and_detach(pipette_20ul, 3, cursor) if i!=2: cursor = cursor.move(types.Point(x=4, y=4)) cursor = cursor.move(types.Point(x=4)) for i in range(3): dispense_and_detach(pipette_20ul, 3, cursor) if i!=2: cursor = cursor.move(types.Point(x=4, y=-4)) pipette_20ul.aspirate(15, location_of_color('Green')) cursor = cursor.move(types.Point(y=-4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(y=-4)) cursor = cursor.move(types.Point(y=-4)) for i in range(3): dispense_and_detach(pipette_20ul, 3, cursor) if i!=2: cursor = cursor.move(types.Point(x=-4, y=-4)) cursor = cursor.move(types.Point(x=-4)) pipette_20ul.aspirate(18, location_of_color('Green')) for i in range(6): dispense_and_detach(pipette_20ul, 3, cursor) if i!=5: cursor = cursor.move(types.Point(x=-4)) cursor = cursor.move(types.Point(x=-4)) pipette_20ul.aspirate(15, location_of_color('Green')) for i in range(3): dispense_and_detach(pipette_20ul, 3, cursor) if i!=2: cursor = cursor.move(types.Point(x=-4, y=-4)) cursor = cursor.move(types.Point(y=-4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(y=-4)) cursor = cursor.move(types.Point(y=-4)) pipette_20ul.aspirate(15, location_of_color('Green')) for i in range(3): dispense_and_detach(pipette_20ul, 3, cursor) if i!=2: cursor = cursor.move(types.Point(x=4, y=-4)) cursor = cursor.move(types.Point(x=-12, y=16)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=-4)) cursor = cursor.move(types.Point(x=-4, y=-4)) pipette_20ul.aspirate(9, location_of_color('Green')) dispense_and_detach(pipette_20ul, 3, cursor) cursor = cursor.move(types.Point(y=-4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=4, y=-4)) cursor = cursor.move(types.Point(x=-4, y=-4)) pipette_20ul.aspirate(12, location_of_color('Green')) for i in range(4): dispense_and_detach(pipette_20ul, 3, cursor) if i!=3: cursor = cursor.move(types.Point(x=4)) cursor = cursor.move(types.Point(x=12)) pipette_20ul.aspirate(18, location_of_color('Green')) for i in range(6): dispense_and_detach(pipette_20ul, 3, cursor) if i!=5: cursor = cursor.move(types.Point(x=4)) cursor = cursor.move(types.Point(x=4)) pipette_20ul.aspirate(15, location_of_color('Green')) for i in range(3): dispense_and_detach(pipette_20ul, 3, cursor) if i!=2: cursor = cursor.move(types.Point(x=4, y=4)) cursor = cursor.move(types.Point(y=4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(y=4)) cursor = cursor.move(types.Point(y=4)) pipette_20ul.aspirate(15, location_of_color('Green')) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=-4, y=4)) cursor = cursor.move(types.Point(x=8, y=-8)) dispense_and_detach(pipette_20ul, 3, cursor) cursor = cursor.move(types.Point(x=4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=4, y=-4)) cursor = cursor.move(types.Point(y=-4)) pipette_20ul.aspirate(18, location_of_color('Green')) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=-4, y=-4)) cursor = cursor.move(types.Point(x=4, y=-4)) for i in range(4): dispense_and_detach(pipette_20ul, 3, cursor) if i!=3: cursor = cursor.move(types.Point(x=-4)) pipette_20ul.drop_tip() pipette_20ul.pick_up_tip() ### Red cursor = cursor.move(types.Point(x=-8, y=44)) pipette_20ul.aspirate(12, location_of_color('Red')) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=-4)) cursor = cursor.move(types.Point(y=4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=4)) cursor = cursor.move(types.Point(x=-24)) pipette_20ul.aspirate(12, location_of_color('Red')) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=-4)) cursor = cursor.move(types.Point(y=-4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=4)) cursor = cursor.move(types.Point(x=4, y=-8)) pipette_20ul.aspirate(18, location_of_color('Red')) for i in range(4): dispense_and_detach(pipette_20ul, 3, cursor) if i!=3: cursor = cursor.move(types.Point(x=4)) cursor = cursor.move(types.Point(x=-4, y=-4)) for i in range(2): dispense_and_detach(pipette_20ul, 3, cursor) if i!=1: cursor = cursor.move(types.Point(x=-4)) pipette_20ul.drop_tip()

Subsections of Labs

Week 1 Lab: Pipetting

cover image cover image

Week 2 Lab: DNA Gel Art

Benchling Gel Design

VirtualDigestGelDesign VirtualDigestGelDesign

Restriction Digest Protocol

Gel Preparation Protocol

Gel Run and Imaging Protocol

Final Gel Image

Week 3 Lab: Opentrons Art

Opentrons Design

OpentronsDesign OpentronsDesign

Opentrons CoLab Code

 ### Green
  cursor = center_location.move(types.Point(x=-18, y = 12))

  pipette_20ul.pick_up_tip()

  pipette_20ul.aspirate(15, location_of_color('Green'))
  dispense_and_detach(pipette_20ul, 3, cursor)

  cursor = cursor.move(types.Point(x=-4, y=4))

  for i in range(4):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=3:
      cursor = cursor.move(types.Point(y=4))

  pipette_20ul.aspirate(15, location_of_color('Green'))

  for i in range(2):
    cursor = cursor.move(types.Point(x=4, y=4))
    dispense_and_detach(pipette_20ul, 3, cursor)

  cursor = cursor.move(types.Point(x=4))

  for i in range(3):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=2:
      cursor = cursor.move(types.Point(x=4, y=-4))

  pipette_20ul.aspirate(18, location_of_color('Green'))

  cursor = cursor.move(types.Point(x=4))

  for i in range(3):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=2:
      cursor = cursor.move(types.Point(x=4, y=4))

  cursor = cursor.move(types.Point(x=4))

  for i in range(3):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=2:
      cursor = cursor.move(types.Point(x=4, y=-4))

  pipette_20ul.aspirate(15, location_of_color('Green'))

  cursor = cursor.move(types.Point(y=-4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(y=-4))

  cursor = cursor.move(types.Point(y=-4))

  for i in range(3):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=2:
      cursor = cursor.move(types.Point(x=-4, y=-4))

  cursor = cursor.move(types.Point(x=-4))

  pipette_20ul.aspirate(18, location_of_color('Green'))

  for i in range(6):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=5:
      cursor = cursor.move(types.Point(x=-4))

  cursor = cursor.move(types.Point(x=-4))

  pipette_20ul.aspirate(15, location_of_color('Green'))

  for i in range(3):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=2:
      cursor = cursor.move(types.Point(x=-4, y=-4))

  cursor = cursor.move(types.Point(y=-4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(y=-4))

  cursor = cursor.move(types.Point(y=-4))

  pipette_20ul.aspirate(15, location_of_color('Green'))

  for i in range(3):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=2:
      cursor = cursor.move(types.Point(x=4, y=-4))

  cursor = cursor.move(types.Point(x=-12, y=16))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=-4))

  cursor = cursor.move(types.Point(x=-4, y=-4))

  pipette_20ul.aspirate(9, location_of_color('Green'))

  dispense_and_detach(pipette_20ul, 3, cursor)

  cursor = cursor.move(types.Point(y=-4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=4, y=-4))

  cursor = cursor.move(types.Point(x=-4, y=-4))

  pipette_20ul.aspirate(12, location_of_color('Green'))

  for i in range(4):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=3:
      cursor = cursor.move(types.Point(x=4))

  cursor = cursor.move(types.Point(x=12))

  pipette_20ul.aspirate(18, location_of_color('Green'))

  for i in range(6):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=5:
      cursor = cursor.move(types.Point(x=4))

  cursor = cursor.move(types.Point(x=4))

  pipette_20ul.aspirate(15, location_of_color('Green'))

  for i in range(3):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=2:
      cursor = cursor.move(types.Point(x=4, y=4))

  cursor = cursor.move(types.Point(y=4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(y=4))

  cursor = cursor.move(types.Point(y=4))

  pipette_20ul.aspirate(15, location_of_color('Green'))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=-4, y=4))

  cursor = cursor.move(types.Point(x=8, y=-8))

  dispense_and_detach(pipette_20ul, 3, cursor)

  cursor = cursor.move(types.Point(x=4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=4, y=-4))

  cursor = cursor.move(types.Point(y=-4))

  pipette_20ul.aspirate(18, location_of_color('Green'))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=-4, y=-4))

  cursor = cursor.move(types.Point(x=4, y=-4))

  for i in range(4):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=3:
      cursor = cursor.move(types.Point(x=-4))

  pipette_20ul.drop_tip()
  pipette_20ul.pick_up_tip()

  ### Red
  cursor = cursor.move(types.Point(x=-8, y=44))

  pipette_20ul.aspirate(12, location_of_color('Red'))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=-4))

  cursor = cursor.move(types.Point(y=4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=4))

  cursor = cursor.move(types.Point(x=-24))

  pipette_20ul.aspirate(12, location_of_color('Red'))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=-4))

  cursor = cursor.move(types.Point(y=-4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=4))

  cursor = cursor.move(types.Point(x=4, y=-8))

  pipette_20ul.aspirate(18, location_of_color('Red'))

  for i in range(4):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=3:
      cursor = cursor.move(types.Point(x=4))

  cursor = cursor.move(types.Point(x=-4, y=-4))

  for i in range(2):
    dispense_and_detach(pipette_20ul, 3, cursor)
    if i!=1:
      cursor = cursor.move(types.Point(x=-4))

  pipette_20ul.drop_tip()