Open-source pneumatic pressure pump for drop-based microfluidic flow controls

An open-source pneumatic pressure pump is engineered for driving fluid flow in a microfluidic device. It is designed to be a cost-effective and customizable alternative to commercial systems. The pneumatic pressure pump utilizes a single open-source microcontroller to control four dual-valve pressure regulators. The control scheme is written in the Arduino development environment and the user interface is written in Python. The pump was used to pressurize water and a fluorinated oil that have similar viscosities. The pump can accurately control pressures to a resolution of less than 0.02 psig with rapid response times of less than one second, overshoot of desired pressures by less than 30%, and setting response times of less than two seconds. The pump was also validated in its ability to produce water-in-oil drops using a drop-making microfluidic device. The resultant drop size scaled as expected with the pressures applied to the emulsion phases. The pump is the first custom-made dual-valve regulator that is used to precisely control fluid flow in a microfluidic device. The presented design is an advancement towards making more fully open-source pneumatic pressure pumps for controlling flow in microfluidic devices.


Introduction
Microfluidics can translate biological and chemical assays from the lab bench to a device that is only several square centimeters in size [1]. These devices, commonly called microfluidic chips, are useful tools in many fields of biotechnology, particularly for single cell analyses [2]. Fluids are typically delivered into micron-sized channels on the chip from milliliter-sized vessels using mechanical syringe pumps [3], hydrostatic pressure pumps [4][5][6], or pneumatic pressure pumps [7][8][9][10]. Syringe pumps operate by converting the rotary actuation of a stepper motor into linear motion that drives the displacement of a syringe plunger [3]. Hydrostatic pressure pumps flow fluid from an elevated reservoir into the microfluidic channels, in which the pressure applied to the fluid is proportional to the height of the reservoir relative to the device [11]. Pneumatic pressure pumps utilize a pressure regulator to control the pressure of a compressed gas that drives fluid from a reservoir into the device [12,13].
Pneumatic pressure pumps have several advantages over syringe and hydrostatic pumps. Syringe pumps have larger flow-rate fluctuations and slower response times to setpoint changes when compared to pressure pumps [11,12]. Hydrostatic pumps have a narrower range of usable pressures and cannot be used for highpressure applications as easily as pneumatic pumps [5]. Pneumatic pumps can also be used with a wider range of vessel volumes compared to syringe pumps.
Given Any further distribution of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI. microcontroller. The pump would be controlled using a guided user interface (GUI) written in an accessible programming language, such as Python [14]. Finally, the pump system would ideally not require custom machining or assembly.
Prior work creating open-source pneumatic pressure pumps utilized a blend of commercial and opensource components. Pressure pumps consist of four main components: the pressure regulator, the pressure transducer or sensor, the controller, and the GUI. Frank et al used commercially available parts for all of these components, except for the interface [8]. Gao et al developed a pump that used a commercial pressure regulator; the other components were open-source with a GUI written in C++ [10]. Finally, Watson and Senyo created a fully open-source pump with custom pressure regulators and a GUI written in C++. However, the pump created by Watson and Senyo was used to control valves on a microfluidic chip, not to drive flow [9].
In this work, we present a fully open-source pneumatic pressure pump designed to drive flow on a microfluidic device. Our pump utilizes a single open-source controller to control four dual-valve pressure regulators. The control scheme was written in the Arduino development environment and the GUI was written in Python. The ability of the pump to accurately change and regulate pressure was evaluated with step changes in pressure both without flow and when driving flow in a drop-making microfluidic device. The fluids used in these experiments were water and a fluorinated oil which have similar viscosities. When driving flow, the pump overshot the target pressures by less than 30%, settled within 5% of the desired pressure in less than two seconds, and was accurate down to less than 1% of the target pressure. The performance of the pump was comparable to previously reported open-source pneumatic pumps and other pumps. The pump performance was also validated in its ability to produce water-in-oil drops using a drop-making microfluidic device. The resultant drop size, measured by normalized drop length, scaled as expected to the applied pressures. This work demonstrates the utility of this custom built open-source pneumatic pressure pump for rapidly creating drops with stable fluid flow.

Electrical design of the pressure pump
All four dual-valve pressure regulators are controlled from a single microcontroller using transistor switches. The circuit diagram used for all the pressure regulators is shown in figure 1(B). The PT transmits the measured pressure downstream of the solenoids to the microcontroller (Arduino, Mega 2560 Rev 3) via an analog signal. The microcontroller supplies the PT with 5 V and the PT transmits a voltage signal between 0 and 5 V which is proportional to a pressure between 0 and 15 psig. Alternative pressure sensors with varying ranges can be used in this setup depending upon the application. The microcontroller opens and closes the solenoids valves (Aalborg, PSV1S-BB) using pulse width modulation (PWM) enabled digital pins. The PWM pins send a power cycle (PC) that opens or closes the valves. The PC is sent to NPN transistors (ON Semiconductor, 2N4124) via base resistors (Digikey, 13-CFR-25JR-52-1KTR-ND, 1 kΩ ± 5%), figure 2(D). The transistors act as digital switches to power the solenoids with a 12V power supply (Mean Well, LRS-100-12). Diodes (ON Semiconductor, 1N4005G) are wired in parallel to the solenoids to provide the current stored in the inductive load a path to ground without shorting the transistor when the circuit is opened [15], figure 2(C). The electrical circuit was assembled and soldered onto a perfboard, figure 2(D).

Control scheme of the pressure pump
The feedback loop for the pressure regulators uses proportional control over the solenoid valves power cycles. If the measured point is lower than the set point, the inlet solenoid PC is increased by 0.004% and the outlet solenoid PC is decreased by the same amount. Conversely, if the measured point is higher than the set point, the inlet solenoid PC is decreased by 0.004% and the outlet solenoid PC is increased by the same amount. The increment and decrement values are the lowest gain available for the microcontroller based on the PWM resolution limit. This feedback loop operates continuously with a delay time of 1 ms between each iteration. The control scheme and serial communication software for the Arduino microcontroller is available on GitHub (https://github.com/thechanglab).

Guided user interface of the pressure pump
The pump interface is written in Python and allows users to control the system via a local computer and is shown in figure 2. The GUI was written in Python using the Tkinter and PySerial libraries [14]. The GUI is broken down into two main sections, one for establishing serial communication (figure 3(A)) and one for controlling the pressure regulators ( figure 3(B)). Serial communication is established after selecting the serial port to which the pump is connected and selecting the baud rate that is used in the microcontroller. The Refresh button is used to detect all used serial ports. The Connect/Disconnect button establishes serial communication and the 'Arduino is ready to start' message is displayed if the correct parameters are selected. The set points of the individual regulators are changed after entering a new value in the 'Set point entry' column and then pressing the arrow button to the right of that column. The new set point is the displayed in the 'Current set point' column and the indicator to the far right of the GUI changes to green if that change has been accepted by the microcontroller. The current measured point is also displayed for each regulator. The GUI software is also available on GitHub (https://github.com/thechanglab).

Pressure regulation variables
The performance of the pressure pump was evaluated by applying changes in the set point and recording the measured pressures, or measured points. The pump performance was initially tested in the sealed vessel without liquid flow. The ability of the pump to regulate pressure is based off of four values: the overshoot (OS), the rise time (t R ), the settling time (t S ), and the accuracy [16]. The OS is determined graphically and is the percentage of how much the measured point goes over or under the new set point. Values of t R and t S are also determined graphically and are values of how much time is required for the measured point to reach the new set point and how long it takes for the measured point to be within 5% of the new set point. Accuracy is the average difference between the measured point and set point for all data points between the t R and the time of another set point change.

Validation with microfluidic drop production
The pump performance was validated during microfluidic drop production. Drops are formed in a microfluidic device that uses a flow-focusing geometry to produce an emulsion comprised of an immiscible dispersed phase in a continuous phase stabilized by a surfactant [17]. The dispersed phase consisted of deionized water and the continuous phase consisted of 3% (w/w) ammonium carboxylate perfluoropolyether surfactant [18] dissolved in fluorinated oil HFE-7500 (3M). The drop-maker had a channel height of 40 μm with an exit channel width of 100 μm and was fabricated using soft lithography [19]. The channels were rendered fluorophilic with an injection of a solution of (tridecafluoro-1,1,2,2-tetrahydrooctyl) trichlorosilane (1 v/v%) in HFE-7500 (3M).
Pump performance can be assessed from its ability to form drops of different lengths proportional to the applied pressures. The major axis length of a drop in a microfluidic device (ℓ d ) can be normalized to the width of the microfluidic channel (w ch ) to give a dimensionless drop size. Ward et al has shown that this drop size is proportional to the squared ratio of dispersed and continuous phases pressures, P D and P C respectively, multiplied by a scalar value [20]. This relationship is shown in equation (1), where α is the scalar multiplier that can be determined using linear regression.
Drop sizes were determined during drop production using brightfield microscopy. During the drop production process, the microfluidic device was mounted on an inverted microscope (Nikon, TE2000, 10X objective lens). Footage of the drop-making process was captured using a high-speed camera (Edgertronic, SC2) at 5,000 frames per second. The footage was analyzed using drop morphometry and velocimetry (DMV) software [21]. The DMV software is specifically designed to analyze drops in microfluidic devices and allows the user to determine the time-history of drop lengths, widths, areas, positions, velocities, and pixel intensities.
Pump performance was also evaluated with step changes during microfluidic drop production. The OS, t R , t S , and accuracy were determined during step changes to the pressures applied to the continuous phase, P C .

Pressure regulation without flow
The ability of the pump to change the pressure of the sealed vessel without outlet flow was evaluated ( figure 4(A)). The pressure was both increased and decreased from 1 to 10 psig with step changes ranging from 1.5 to 2.5 psig. These step changes were performed three times during three different operational cycles, in which the entire system was turned off between replicates. Figure 4(B) displays one of these replicates. The set point is increased and decreased from 2.5 psig to 5.0 psig. A detailed zoom of one of the step changes is displayed in figure 4(C) which also displays average t R , t S , OS, and accuracy values across all step changes and all replicates. The average OS for all the step changes was 15.1 ± 6.3%, the average t R was 0.51 ± 0.21 s, the average t S was 0.84 ± 0.44 s, and the average accuracy was 0.010 ± 0.006 psi or 0.1% of the full span of pressures.

Pressure regulation during microfluidic drop production
The ability of the pump to change the pressure of a vessel during microfluidic drop production was evaluated ( figure 4(D)). One pressure regulator varied P D from 1.0 to 4.0 psig and another regulator varied P C from 1.0 to 5.5 psig. This range of pressures was chosen as it yielded drop production in the dripping regime of the microfluidic device [22]. Drops were generated with lengths ranging from 100 μm to 250 μm. To evaluate the performance of the pump, P D was held constant at 1.0 psig and P C was increased and decreased by 0.5 psig. The step changes shown in figure 4(E) were performed in triplicate for the three different P D values used. Each P D value was set during a different operational cycle. Figure 4(E) shows one of the replicates for step changes of P C .  changes in P C was 26.8 ± 4.2%, the average t R and t S was 0.74 ± 0.07 s and 1.23 ± 0.16 s respectively, and the average accuracy was 0.016 ± 0.001 psi or 0.3% of the full span of pressures.
There was no significant difference between pressure regulation of the continuous oil phase and dispersed water phase. The fluid being pressurized mainly affects the damping of the pressure regulation, or how much the pressure oscillates [16]. The amount of damping is proportional to the viscosity of the fluids. Since the water and oil phases have similar viscosities, 1 mPa·s and 1.24 mPa·s respectively, both phases have similar dampening effects.

Drop production
Finally, we evaluated if the pressure pump can create microfluidic drops of different sizes based on the pressures used to drive microfluidic flow. A plot of ℓ d /w ch as a function of (P D /P C ) 2 , shown in figure 5(A), demonstrates that there is a power-law relationship between the normalized drop length and the pressure ratio that matches the relationship described in past literature [20]. Linear regression was used to determine the value of the scalar constant, α in equation (1). α was found to have a value of 3.11 with the fit having a R 2 value of 0.799, figure 5(A). This R 2 value was found to be a reasonable fit for several reasons. Firstly, we tested values of P D /P C that are larger than those tested by Ward et al, and equation (1) appears to have a poorer fit at those values [20]. Additionally, there is no universal scaling law for drop lengths and applied pressures in flow-focusing microfluidic devices [23]. Therefore, we chose an scaling law that captures only the essential parameters during these experiments [24]. These phenomenological models are effective for designing and testing flow-focusing microfluidic devices without relying on more recent machine-learning based models [25]. As expected, drops increase in size as P D is increased relative to P C . An average of 200 drops were analyzed per condition. Selected still images using brightfield microscopy depict drop production under varying pressure ratios ( figure 5(B)).

Discussion
The pneumatic pressure pump presented here is an advancement towards more open-source versions of these pumps. The pump in this work uses a single Arduino microcontroller to control four purpose-built regulators to provide accurate pressure regulation that can drive flow in microfluidic devices. Frank et al is the only comparable pump that did not use an Arduino controller and only Gao et al also used a single controller to control four regulators. The only specialty components of the pump are the proportional solenoid valves and the pressure sensors, components which end users can exchange for other versions depending on their specific downstream application. Only Watson and Senyo also used custom dual-valve regulators, all other comparable systems use commercial regulators. We create a GUI in Python, a popular and open-source programming language, while Watson and Senyo and Gao et al chose C++. Watson and Senyo's pump are the most like our pump, with respect to the components used; however, we use our pump to drive flow, while Watson and Senyo actuated microfluidic valves. The components used in comparable pressure pumps is listed in table 1.
Pneumatic pressure pumps have several advantages over syringe pumps and hydrostatic pumps when driving flow in microfluidic devices. Compared to syringe pumps, pneumatic pumps have smaller flow rate  fluctuations and faster response times [11], a wider range of usable pressures compared to hydrostatic pumps [5], and more flexibility in the sizes of vessels available. Syringe capacities are limited to smaller volumes, ranging between 1 ml to 50 ml. Additionally, elevating large vessels above small microfluidic devices in the case of hydrostatic pressure pumps may not be practical for all applications. By contrast, silicone septa are available for 15 ml and 50 ml conical tubes and 100 ml-10 l glass bottles ( figure 2(B)). Even smaller vessels such as 1.5 ml-2 ml microcentrifuge tubes can be sealed with epoxy. All these sealed vessels can be used with pneumatic pressure pumps.
The pressure pump presented here utilizes customizable and easily assembled pressure regulators. The dual proportional valve design is similar to Watson and Senyo's pump [9], yet is easier to assemble because it does not require a custom manifold and all four regulators are controlled from a single microcontroller. In our system, the solenoid valves use compression fittings upstream and downstream of the valve ( figure 2(C)). This allows for the use of hard plastic tubing at these connections followed or preceded by soft tubing to connect the valves to the other pneumatic components. These connections allow users to avoid using custom-machined housings and only requires typical barbed tubing connectors. Additionally, having all the pressure regulators controlled from a single microcontroller eliminates the need to use a bootloader, or an external Arduino programmer, when uploading the control scheme. Each solenoid valve is controlled from a transistor switch with a relatively simple circuit design ( figure 1(B)). The circuitry fabrication relies on through-hole soldering which is more accessible for users without a strong background in circuit assembly (figure 2(D)). A simple proportional scheme is used to control the pressure regulators; however, future users could implement another control scheme if desired. The tubing connections and the use of one microcontroller for multiple pressure regulators makes the pressure regulator presented here the most customizable and accessible to-date.
Our pneumatic pressure pump has a higher settling time, t S , when compared to Watson and Senyo's regulator [9], and the same t S when compared to Gao et al's commercial pressure regulator [10]. The pump presented here has a t S of less than two seconds, the t S of Watson and Senyo's regulator was approximately 29 milliseconds [9], and Gao et al's pressure pump had a t S of less than two seconds [10]. However, t S less than two seconds are adequate for changing the pressures during drop production and other long-term microfluidic processes since frequent pressure changes during microfluidic processes are uncommon once the target drop size is reached. A comparison of the t S values for previously published pneumatic pressure pumps is presented in table 2.
The pneumatic pressure pump presented here has an improved overshoot and accuracy compared to the pressure regulator from Watson and Senyo [9]. The average overshoot of our pump is 15.1% without flow and 26.8% during drop-making, while Watson and Senyo reported an average of 39.9% with the same range of pressures. The overshoot for our pump could be improved with an inlet pressure less than 14 psig and closer to the maximum pressure used during the drop-making process. The average accuracy of our pump is 0.01 psig without flow and 0.016 psig during drop-making, while Watson and Senyo's pump reported an accuracy of 0.12 psig with the same range of pressures. The improved accuracy of our experiments could be due to the solenoid valves used or the proportional gain used in the control scheme. Gao et al [10], did not report an overshoot percentage. The commercial regulators that Gao et al used had an accuracy of 0.03 psig. However, an accuracy of less than 1% of the target pressure is adequate for driving flow in microfluidic devices. A comparison of the OS percentage and accuracy values for previously published pneumatic pressure pumps is presented in table 2.
At this time of writing, our pneumatic pressure pump is costlier than the pump published by Watson and Senyo, but is slightly less costly than the pump published by Gao et al The costliest components for each of the pumps are the pressure regulators. Our pump uses two proportional solenoid valves that cost $544 for a pair, Watson and Senyo used valves that cost $140 for a pair, and Gao et al used commercial regulators that cost $435. Gao et al had other components that increased the costs to $750 per regulator, the Watson and Senyo's pump had a cost of $200 per regulator, and our pump had a cost of $600 per regulator. Comparing the total cost of the pneumatic pressure pumps is only applicable between the pump presented in this work and the pump presented by Gao et al since both pumps were both designed to drive flow, while the total cost of the pump presented by Watson and Senyo incorporates the solenoid valves used to actuate the microfluidic valves. Our pump system is slightly cheaper despite using more costly pressure regulators. This cost difference is due to Gao et al using different pneumatic connections, an acrylic housing, and different pressure sensors and actuators. Though slightly more expensive, our proportional solenoid valves improved performance with respect to overshoot and accuracy, and the solenoid valves we used are also more easily assembled. The costs of previously published pneumatic pressure pumps is presented in table 2.
The pneumatic pressure pump can create microfluidic drops in a consistent and precise manner. Figure 5(A) shows that a range of drop sizes can be created using the same microfluidic drop maker based upon the ratio of applied pressures (P D /P C ) 2 . The scaling equation relates the normalized drop length ℓ d /w ch to the applied pressure ratio (P D /P C ) 2 . A linear regression was performed that yields a scalar multiplier, α, which was 3.11 in this work, comparable to a value of 5.22 in Ward et al [20]. The coefficients are of the same order of magnitude, yet vary due to slight differences in device geometries [24]. The drops produced were monodisperse with average variances less than 1%.

Conclusion
The pneumatic pressure pump presented in this paper is an accurate and accessible pump for driving flow in microfluidic devices. The pump uses an open-source microcontroller and uses a GUI written in the attainable and open source language Python. The pump relies on pressure regulators that utilize a dual proportional solenoid design. A single microcontroller is used to control four pressure regulators with transistor switches. All pneumatic connections use easy-to-assemble barbed, compression, or luer taper tubing fittings contained in a 3D printed enclosure. The pump presented here can rapidly and accurately change and maintain changes in pressure. The average rise times (t r ) and settling times (t s ) with or without flow were less than one second and less than two seconds, respectively. The pump had an average overshoot percentage of 27% and was accurate within 0.02 psig, during drop-making. The cost per regulator was approximately $600, which is three times costlier than Watson and Senyo's regulator, but a quarter of the cost of the commercial regulators used by Gao et al. The pump presented in this work is an improvement over open-source pressure regulators; although it had a much slower settling time than Watson and Senyo's open source pressure regulator, it had an improved overshoot percentage and accuracy. This pump also used the first open-source pressure regulators to drive microfluidic flow, specifically to make microfluidic drops.
The pump presented here was evaluated for its ability to produce drop sizes proportional to the pressures used to drive flow during the drop-making process. The pump was able to produce drops in a flow-focusing microfluidic device whose dimensions are proportional to the pressures used to drive fluid flow, similar to the work published in Ward et al [20]. Future directions include the implementation of the pressure pump for microfluidic process that utilize single-phase flow, such as organs-on-a-chip that require long infusion times [26][27][28], or more complicated drop-based microfluidic processes, such as drop injection, merging, and splitting [29][30][31]. This pressure pump could also easily operate multiple drop-making devices in parallel with the pressurized reservoirs going to several devices at the same time. We envision applying the pressure pump to improve particle encapsulation into drops, as each pressurized vessel can be easily stirred to prevent the particles from settling in the vessel. Finally, this pump can be used for any number of applications that require precision fluid handling for scientists or engineers at a reasonable cost.