Home › Forums › Science/Applications › Chemostat with Slow Inflow Rate
- This topic has 1 reply, 2 voices, and was last updated 2 years, 5 months ago by harrison.
-
AuthorPosts
-
July 6, 2022 at 3:26 am #1531john.saxonParticipant
We are currently working with some very slow growing species and want to run a several day experiment. We want the turn-over rate of media in each bioreactor to be about 20mL/24hrs. I understand that we will have to modify the system to achieve these small volumes. So far we have changed to cycle time to 10 minutes (up from 1 minute) and modified app.py to use the time.perf_counter() method which has brought down our ‘minimum on-time’ to about 140ms per cycle and an inflow rate of about 30-40mL/24hr. The main issue is that there is still that miniumum on-time no matter how small the pump setting is (also accuracy is reduced at these very low settings). Is it possible to 1) decrease the speed of the pumps (so that duty cycling for longer will transfer a smaller volume) or 2) add some other modifications to app.py to further reduce the minimum on-time?
Another consideration is that we are using an old computer to run the program. Is the timing system and python run on the computer or the Beagle Bone? If it’s the former, do you think it would be worth upgrading to a faster laptop to improve performance?
Thank you for your help,
JohnJuly 7, 2022 at 9:18 am #1533harrisonKeymasterHello John,
As to timing, all of this is run on the Beaglebone so it should make no difference what computer it is plugged in to.
As to the slow down mechanisms, things you might try:
1. Change the PWM value of the pumps when on. Currently it is at 100%. This is done in the “if” statements at line 722 and onward here: https://github.com/HarrisonSteel/ChiBio/blob/master/app.py
For example, to reduce it you need to reduce the number “1.0” in the line “setPWM(M,’Pumps’,sysItems[item][‘In1’],1.0*float(sysData[M][item][‘ON’]),0)”
2. If you want the pumps to be even slower, you could leave the cycle time at 1 minute (probably better since you then get more measurments) and instead put some “if” statement into the pump Pumpmodulation which depends on sysData[M][‘Experiment’][‘cycles’] and only turns on the pump if this is equal to 1 modulo something. For example if sysData[M][‘Experiment’][‘cycles’] is a multiple of 30 then it activates the pump, otherwise it does not. This would give you a more robust and easy way to have the pump turn on every X cycles, and thereby achieve very low media influx rates.
3. If you are ultimately looking for a constant media input over long time periods, and you don’t need to control it directly from the Chi.Bio UI, you could also consider buying a different kind of pump and hooking it up – something more expensive and precise than the low-cost items in the Chi.Bio platform. For example you can get stepper motor driven peristaltic pumps pretty cheaply which can then be run at very low rates, and with less pump-to-pump variation than the cheap DC motor pumps in Chi.Bio at present.Hope that helps
-
AuthorPosts
- You must be logged in to reply to this topic.