Skip to content

Predefined Modules

Sarah Nemsick edited this page Jun 29, 2017 · 12 revisions

A Module represents commonly used complex structures found in microfluidic devices and contains elements on both the flow layer and the control layer. Components and channels contained in modules do not undergo the place-and-route as the entire module is treated as one component for the purposes of place-and-route. This allows modules to contain some structures involving channels at angles that would otherwise violate my architecture model. The following table shows the syntax for all module declarations. All modules with elements in the flow layer must be declared in the flow layer. The only module that can be declared in the control layer is a PortBank.

Statement Syntax
Port Bank `‘V’ ‘BANK’ ID ‘of’ INT ‘PORT’ ‘r=’ INT ‘dir=’(‘RIGHT’
Cell Trap Bank (‘V’|‘H’) ‘BANK’ ID ‘of’ INT ‘CELL TRAP’ ‘numChambers=’ INT ‘chamberWidth=’ INT ‘chamber-Length=’ INT ‘chamberSpacing=’ INT ‘spacing=’ INT‘channelWidth=’ INT ‘;’
Mux (‘V’|‘H’) ‘MUX’ ID INT ‘to’ INT ‘spacing=’ INT‘flowChannelWidth=’ INT ‘controlChannelWidth=’ INT‘;’
Tree (‘V’|‘H’) ‘TREE’ ID INT ‘to’ INT ‘spacing=’ INT‘flowChannelWidth=’ INT ‘;’
Logic Array ‘LOGIC ARRAY’ ID ‘flowChannelWidth=’ INT ‘con-trolChannelWidth=’ INT ‘chamberLength=’ INT ‘cham-berWidth=’ INT ‘r=’ INT ’;’
Gradient Generator (‘V’|‘H’) ‘GRADIENT GENERATOR’ ID INT ‘to’ INT‘numBends=’ INT ‘bendSpacing=’ INT ‘bendLength=’INT ‘channelWidth=’ INT ‘;’
T Droplet Generator (‘V’|‘H’) ’DROPLET GENERATOR’ ‘T’ ID ‘radius=’INT ‘oilChannelWidth=’ INT ‘waterChannelWidth=’INT ‘;’
Flow Focusing Droplet Generator (‘V’|‘H’) ‘DROPLET GENERATOR’ ‘FLOW FOCUS’ID ‘radius=’ INT ‘oilChannelWidth=’ INT ‘waterChan-nelWidth=’ INT ‘angle=’ INT ‘length=’ INT ‘;’
Rotary Pump (‘V’|‘H’) ‘ROTARY PUMP’ ID ‘radius=’ INT‘flowChannelWidth=’ INT ‘controlChannelWidth=’ INT‘;’

Description of the Predefined Modules

Bank

A Bank represents a set of repeated components with the same parameters placed a fixed distance from each other either vertically or horizontally. Key parameters include the number of components, the distance between terminals, and the width of the channels connecting to the components on each layer. Spacing contraints between adjacent components in each Bank are maintained. The two subclasses of Bank are PortBank for repeated ports and CellTrapBank for repeated long cell traps. Additional parameters for PortBank are the radius of the ports in the bank and the direction that the connections are made from the ports. Figure 4·13 shows the parameters and terminal numbering. PortBank is the only module that may be declared on both the flow layer and the control layer.

Additional parameters for CellTrapBank are the parameters for defining the struc- ture of each cell trap as seen in the Figure, including number of chambers, the chamber size, and the spacing between chambers. All cell traps in a CellTrapBank have the same parameters. The Figure shows the terminal numbering.

Mux

A Mux represents the microfluidic multiplexer as described by Thorsen et al. (Thorsen et al., 2002). It uses 2log 2 n control lines to select one of n flow channels. The parameters for declaring a Mux include number of flow lines to be selected from (1 to n or n to 1), the orientation (vertical or horizontal), the flow channel width, the control channel width, and the spacing between the terminals. Spacing between the channels is constrained to a minimum of the spacing required by the given design rule parameters. Valves are sized according to flow channel width, with the larger dimension being 3 times the flow channel width and the smaller dimension being 1.5 times the flow channel width. The Figure shows the parameters and terminal numbering for an 8 to 1 Mux and a 1 to 8 Mux.

Tree

A tree can only be used on the flow layer. The structure of a Tree is that of a Mux without the control layer. A Tree has all the parameters of a Mux except the control channel width. The Figure shows the parameters and the terminal numbering.

Logic array

The LogicArray is a structure for controlling flows between four square cell traps and an input. The cell traps are meant to contain biological Boolean logic. Each valve is controlled individually, and the structure can direct flow between any two or more cell traps. The key parameters include the length and width of the cell traps, the flow channel width, the control channel width, and the radius for the four internal ports. The size of the valves will depend on the flow channel width. Parameters and terminal numbering are shown in Figure.

Gradient Generator

The GradientGenerator is based on the design by Dertinger et al. (Dertinger et al., 2001). The arrangement of serpentine mixers generates a gradient of concentrations at the output channel. This is one of three modules that contain internal structures that would otherwise violate the architecture model. This structure contains a node that may have more than 4 connections with channels that do not connect at right angles. Key parameters are the number of mixers at the input, the number of mixers at the output, and the channel width. The output channel width will be 3 times the channel width. Additional parameters used to define the structure of each mixer include bend length, number of bends, and the spacing between bends as shown in the Figure. Terminal numbering is shown in Figure.

"params": {
            "orientation": "V|H",
            "in": INT,
            "numberOfBends": INT,
            "bendSpacing": INT,
            "channelWidth": INT,
            "width": INT,
            "length": INT,
            "focus": true|false,
            "position": [
              INT,
              INT
            ]
}

Droplet generator

Droplet generators are used to create droplets of water emulsified in oil for droplet or digital flow-based microfluidic experiments, the details of which are given by Squires and Quake (Squires and Quake, 2005). The two subclasses of droplet generators are flow-focusing droplet generators and T-shaped droplet generators. The key parameters are the width of the water flow channel, the width of the oil flow channel, and the radius of the internal ports. The width of the water channel should be at most 1/5 of that of the oil channel. The terminal numbering for a T-shaped droplet generator, TDroplet is shown in the Figure. Additional parameters for the flow-focusing droplet generator, FFDroplet, include the angle of the connection between the water and oil flow channels and the length of the water flow channel as shown in the Figure. This is one of the modules with an internal structure that would otherwise violate the architecture model as it allows channels to connect at angles other than right angles.

Rotary pump

The RotaryPump represents an active mixing structure as described in Urbanski et al. (Urbanski et al., 2006) where actuated valves around a ring mix the fluid inside the ring. The key parameters are the radius of the ring, the flow channel width, and the control channel width. The valves are sized according to the flow channel width. Parameters and terminal numbering are shown in the Figure.

Via

The Via is a structure that allows channels on the flow layer to connect to channels on the control layer. The terminal numbering is given in the Figure. Multiple vias may be declared in the same statement.

Transposer

The Transposer is a structure designed to reconfigure flows between two inputs. When valves v2, v3, v4, v5 are closed, and valves v1 and v6 are open, the input at in1 connects to out1, and the input at in2 connects to out2. By opening v2, v3, v4, v5 and closing v1 and v6, in1 is redirected to out2 and in2 is redirected to out1. This structure moves the microfluidic design one step closer to the goal of a fully reconfigurable microfluidic device. The key parameters are the valve radius, the valve gap, the flow channel width, and the control channel width. The Figure shows the parameters and the terminal numbering.