Skip to content

Commit 82ee9c4

Browse files
committed
working labware population, fixing pipette mounting
1 parent 90c42cd commit 82ee9c4

1 file changed

Lines changed: 6 additions & 99 deletions

File tree

src/opentrons_resources.py

Lines changed: 6 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ def process_setup_commands(self, ot_log):
6767
self.logger.log(cmd_type)
6868

6969
if cmd_type == 'loadLabware':
70-
self.logger.log("LOADING LABWARE")
7170
self.load_labware(command, ot_log)
7271
elif cmd_type == 'loadPipette':
7372
self.logger.log("LAODING PIPETTE")
@@ -83,10 +82,6 @@ def process_protocol_commands(self, ot_log):
8382

8483
for command in commands:
8584
cmd_type = command.get('commandType')
86-
self.logger.log("COMMAND")
87-
self.logger.log(command)
88-
self.logger.log("COMMAND TYPE")
89-
self.logger.log(cmd_type)
9085

9186
try:
9287
if cmd_type == 'pickUpTip':
@@ -109,9 +104,6 @@ def load_labware(self, command, ot_log):
109104
"""loads labware, tracks labware present in each deck slot"""
110105
params = command.get('params', {})
111106
result = command.get('result', {})
112-
self.logger.log("LABWARE PARAMS AND RESULT")
113-
self.logger.log(f"PARAMS: {params}")
114-
self.logger.log(f"RESULT, {result}")
115107

116108
#get labware id
117109
location = params.get('location', {})
@@ -120,10 +112,6 @@ def load_labware(self, command, ot_log):
120112
#string number 1-11
121113
slot_name = location.get('slotName', 'unknown')
122114

123-
self.logger.log("LOCATION, LOADNAME, AND SLOT NAME")
124-
self.logger.log(f"LOCATION, {location}")
125-
self.logger.log(f"LOADNAME, {load_name}")
126-
self.logger.log(f"SLOTNAME, {slot_name}")
127115

128116
#find matching id
129117
labware_id = None
@@ -132,19 +120,16 @@ def load_labware(self, command, ot_log):
132120
if (labware.get('loadName') == load_name and
133121
labware.get('location', {}).get('slotName') == slot_name):
134122
labware_id = labware.get('id')
135-
self.logger.log("MATCHING ID FOUND")
136123
break
137124

138125
if not labware_id:
139-
self.logger.log("MATCHING ID NOT FOUND")
140126
#just in case not found
141127
labware_id = f"labware_{slot_name}_{load_name}"
142128

143129
slot_name = location.get('slotName', 'unknown')
144130

145131

146132
#store info
147-
self.logger.log("STORING LABWARE INFO")
148133
self.labware_id_to_info[labware_id] = {
149134
'load_name': load_name,
150135
'display_name': display_name,
@@ -154,9 +139,6 @@ def load_labware(self, command, ot_log):
154139
}
155140

156141
#get or create labware in deck slot
157-
self.logger.log("LOOK FOR SLOT NAME IN DECK SLOTS")
158-
self.logger.log(f"SLOT NAME, {slot_name}")
159-
self.logger.log(f"DECK SLOTS, {self.deck_slots}")
160142
if slot_name in self.deck_slots:
161143
slot_resource = self.deck_slots[slot_name]
162144
self.logger.log(f"FOUND SLOT RESOURCE, {slot_resource}")
@@ -165,26 +147,7 @@ def load_labware(self, command, ot_log):
165147
# # query for existing labware in slot
166148

167149
# # Grid resource if tip rack
168-
self.logger.log("CHECKING IF RESOURCE IS A TIP RACK")
169-
self.logger.log(f"LOAD NAME LOWER, {load_name.lower()}")
170150
if 'tip' in load_name.lower():
171-
self.logger.log("IS TIP RACK")
172-
#tip rack always 8x12 grid
173-
# labware_resource = Grid(
174-
# resource_name = f"{self.node_name}_{display_name}_{slot_name}",
175-
# resource_class = "tip_rack",
176-
# rows = 8,
177-
# columns = 12,
178-
# attributes = {
179-
# "ot2_labware_id": labware_id,
180-
# "load_name": load_name,
181-
# "slot": slot_name
182-
# }
183-
# )
184-
# labware_resource = self.client.add_resource(labware_resource)
185-
self.logger.log("CREATING TIP RACK RESOURCE FROM TEMPLATE")
186-
self.logger.log(f"TEMPLATE NAME, {load_name}")
187-
self.logger.log(f"RESOURCE NAME, {labware_id}")
188151
#TODO: better naming conventions
189152
resource_name = (str(labware_id) + str(load_name))
190153
labware_resource = self.client.create_resource_from_template(
@@ -194,16 +157,10 @@ def load_labware(self, command, ot_log):
194157

195158

196159
#set as child of the deck slot
197-
self.logger.log(f"LABWARE RESOURCE, {labware_resource}")
198-
self.logger.log("SETTING LABWARE RESOURCE AS CHILD OF DECK SLOT")
199-
self.logger.log(f"SLOT RESOURCE, {slot_resource}")
200-
# self.client.set_child(resource=slot_resource, key="labware", child=labware_resource)
201160
self.client.push(resource=slot_resource, child=labware_resource)
202161
self.labware_id_to_resource[labware_id] = labware_resource
203162

204163
elif 'plate' in load_name.lower() or 'well' in load_name.loawer():
205-
self.logger.log("RESOURCE IS A PLATE")
206-
self.logger.log(f"LOAD NAME LOWER, {load_name.lower()}")
207164
#plate as grid, either 96 or 384
208165
if '96' in load_name:
209166
rows, cols = 8, 12
@@ -212,56 +169,24 @@ def load_labware(self, command, ot_log):
212169

213170
else:
214171
rows, cols = 8, 12 #96 well by default
215-
216-
# labware_resource = Grid(
217-
# resource_name=f"{self.node_name}_{display_name}_{slot_name}",
218-
# resource_class="plate",
219-
# rows=rows,
220-
# columns=cols,
221-
# attributes={
222-
# "ot2_labware_id": labware_id,
223-
# "load_name": load_name,
224-
# "slot": slot_name
225-
# }
226-
# )
227-
# labware_resource = self.client.add_resource(labware_resource)
228-
self.logger.log("CREATING PLATE RESOURCE FROM TEMPLATE")
229-
self.logger.log(f"TEMPLATE NAME, {load_name}")
230-
self.logger.log(f"RESOURCE NAME, {labware_id}")
172+
231173
resource_name = (str(labware_id) + str(load_name))
232174
labware_resource = self.client.create_resource_from_template(
233175
template_name = load_name,
234176
resource_name = resource_name
235177
)
236-
237-
self.logger.log(f"LABWARE RESOURCE, {labware_resource}")
238-
self.logger.log("SETTING LABWARE RESOURCE AS CHILD OF DECK SLOT")
239-
self.logger.log(f"SLOT RESOURCE, {slot_resource}")
240178

241179
# self.client.set_child(resource=slot_resource, key="labware", child=labware_resource)
242180
self.client.push(resource=slot_resource, child=labware_resource)
243181
self.labware_id_to_resource[labware_id] = labware_resource
244182

245183
else:
246-
self.logger.log("REGISTERING AS NEITHER PLATE OR TIP RACK")
247-
#TODO: add addional labware types, tuberacks and modules etc, generic container for now
248-
# labware_resource = Container(
249-
# resource_name=f"{self.node_name}_{display_name}_{slot_name}",
250-
# resource_class="labware",
251-
# capacity=100, # Generic capacity
252-
# attributes={
253-
# "ot2_labware_id": labware_id,
254-
# "load_name": load_name,
255-
# "slot": slot_name
256-
# }
257-
# )
258-
259-
# labware_resource = self.client.add_resource(labware_resource)
184+
260185
labware_resource = self.client.create_resource_from_template(
261186
template_name = load_name,
262187
resource_name = labware_id
263188
)
264-
self.client.set_child(resource=slot_resource, key="labware", child=labware_resource)
189+
self.client.push(resource=slot_resource, child=labware_resource)
265190
self.labware_id_to_resource[labware_id] = labware_resource
266191

267192
except Exception as e:
@@ -294,33 +219,15 @@ def load_pipette(self, command, ot_log):
294219

295220

296221
try:
297-
# if 'p20' in pipette_name.lower():
298-
# capacity = 20.0
299-
# elif 'p300' in pipette_name.lower():
300-
# capacity = 300.0
301-
# elif 'p1000' in pipette_name.lower():
302-
# capacity = 1000.0
303-
# #TODO: error handling
304-
# else:
305-
# capacity = 0.0
306-
307-
# pipette_resource = Pool(
308-
# resource_name=f"{self.node_name}_{pipette_name}_{mount}",
309-
# resource_class="pipette",
310-
# capacity=capacity,
311-
# attributes={
312-
# "ot2_pipette_id": pipette_id,
313-
# "pipette_name": pipette_name,
314-
# "mount": mount
315-
# }
316-
# )
222+
317223
pipette_resource = self.client.create_resource_from_template(
318224
template_name = pipette_name,
319225
resource_name = mount_resource
320226
)
321227

322228
# pipette_resource = self.client.add_resource(pipette_resource) #TODO: create_resource_from_template
323-
self.client.set_child(resource=mount_resource, key='pipette', child=pipette_resource)
229+
# self.client.set_child(resource=mount_resource, key='pipette', child=pipette_resource)
230+
self.client.push(resource=mount_resource, child=pipette_resource)
324231
self.pipette_id_to_resource[pipette_id] = pipette_resource
325232

326233
except Exception as e:

0 commit comments

Comments
 (0)