Easy-To-Build CPAP Device Prototype: Technical Information
Easy-To-Build CPAP Device Prototype: Technical Information
Easy-To-Build CPAP Device Prototype: Technical Information
Technical Information
corresponding to the device described and tested at:
Farré R, Montserrat JM, Solana, G, Gozal D, Navajas D. Easy-to-build and
affordable CPAP device for adult patients in low-income countries. Eur Repir J,
2019, in press.
DISCLAIMER
Using components different from (although similar to) the ones described here may
require technical adjustments or adaptations and therefore the final performance
of the resulting device must be specifically assessed.
The authors of this document are not responsible for the use of the information
contained herein nor for any device built using such information.
1/16
The system has the following components:
2/16
Circuit of the Proportional-Integral (PI) controller
3/16
4/16
Photomask of Circuit of the Proportional-Integral (PI) controller
5/16
Components:
6/16
C4 100NF Polyester Capacitor
C5 100uF/25V Radial Electrolytic Capacitor
C6 100NF Polyester Capacitor
C7 10uF/25V Radial Electrolytic Capacitor
C8 100NF Polyester Capacitor
C9 1uF Polyester Capacitor
C10 1uF Polyester Capacitor
C11 100nF Polyester Capacitor
C12 1uF Radial Electrolytic Capacitor
C14 470nf Polyester Capacitor
C15 10uF Radial Electrolytic Capacitor
D1 4734A (5V6) Zener Diode
D2 1N4148 Diode
IC1 78L09 Regulador +9V (100ma)
IC2 79L09 Regulador -9V (100ma)
IC3 XGZP6847 Sensor de Presion
IC4 MC3403 4xAO (DIP14)
IC5 MC3403 4xAO (DIP14)
IC6 78L05 Regulador +5V (100ma)
IC7 LM 741 1 AO (DIP8)
CON1 220V AC 3 pin connector 2,54
CON2 9V_Arduino 2 pin connector 2,54
CON3 Consigna Arduino 2 pin connector 2,54
CON4 Integrador 2 pin connector 2,54
CON5 control Turbina 2 pin connector 2,54
CON6 con SAI 5 pin connector 2,54
CON11 out TP Arduino 2 pin connector 2,54
TR1 2X12V encapsulated transformer 2,4VA
7/16
Circuit of te LCD display
8/16
Components:
9/16
Code to be uploaded to Arduino Nano (Cpapdisplay_filtrado.ino):
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
const int switchPin = 6;
int switchState = 0;
int prevSwitchState = 0;
int i =0;
int n =100; //muestras a promediar
int samplepressure[100];
float totalpress = 0.00, promediopress = 0.00;
int samplecons[100];
float totalcons = 0.00, promediocons = 0.00;
const int sensorpress=A0;
const int consigna=A1;
void setup() {
void loop() {
10/16
if (i >= n) {
i = 0;
float promediopress = (totalpress /( n+1)); // calcula el promedio de las n medidas almacenadas
en la variable Total
float promediocons = (totalcons / (n+1));
float P_sensor=(promediopress/1024)*5.0*5.1058; //(*)
float Padj=(promediocons/1024)*5.0*5.1058; //(*)
switchState = digitalRead(switchPin);
if (switchState == LOW) {
lcd.setCursor(0,0);
lcd.print(" Level Pres " );
lcd.setCursor(0,1);
lcd.print("Pres :");
lcd.print(P_sensor,1);
lcd.print(" CmH2o");
promediopress = 0.00;
totalpress=0;
}
Else {
lcd.setCursor(0,0);
lcd.print(" Adj Pres Level " );
lcd.setCursor(0,1);
lcd.print("Pres :");
lcd.print(Padj,1);
lcd.print(" CmH2o");
promediocons=0.00;
totalcons=0;
}
}
}
The file “Cpapdisplay_filtrado.ino” with the code to upload to Arduino can be downloaded from:
11/16
http://www.ub.edu/biofisica/dwn/Cpapdisplay_filtrado.zip
Adjustments:
The only required adjustment is the offset of the pressure transducer. To this end, the PI controller
and the LCD display should be connected and the blower power source should be disconnected so
that actual pressure is zero. Then potentiometer P1 (blue color in the PI board) should be adjusted
until the LCD display indicates “0.0 cmH2O”.
External potentiometer P4 (in the PI board) is used to set the pressure level.
12/16
Blower and blower-controller:
These figures/tables were obtained from the provider website (December 12, 2018):
13/16
The following figures correspond to the pressure-flow (P-V) relationship measured in the
specific blower unit used in this setting for different power supply: 12 V, 15 V and 24 V.
14/16
For 24 V, the P-V relationship closely match the one shown by the provider (page 13).
Blower performance exceeded by far the requirements for CPAP application: it can provide
more than 50 cmH2O for flow up to 150 l/min. Reducing power supply to 15 V, the
pressure generated by the blower was higher than 25 cmH2O for air flow up to 100 l/min.
With a power supply of 12 V, the blower can provide up to 16 cmH2O with a flow of 110
l/min which should be enough for most clinical applications of CPAP, considering that the
air flows corresponding to patient’s inspiration peak, intended air leak through the 5-mm
diameter exhalation port and unintended air leak are 36 l/min (0.6 l/s), 39 l/min (for
CPAP=16 cmH2O) and 35 l/min, respectively. Accordingly, this 12 V power supply option
was the one selected for implementing our CPAP device.
However, in case that higher pressure or flows are required, blower power supply can be
increased.
15/16
Pressure transducer:
These figures/tables were obtained from the provider website (December 12, 2018):
16/16
Annex 1. Uninterruptible power supply (UPS) (update Feb 11, 2019).
UPS circuit:
17/16
Photomask of the UPS circuit. Actual size: 110.7mm x 70.7 mm
18/16
Components:
Designator Value Description
R6 1K2 Resistor 1/4W 1%
R3 1K2 Resistor 1/4W 1%
R2 1K2 Resistor 1/4W 1%
R1 1Mega Resistor 1/2W 1%
D1 1N4007 Rectifier diode 1ª
D2 1N4007 Rectifier diode 1ª
D3 1N4007 Rectifier diode 1ª
T1 2N2222 NPN Transistor
DZ1 4,7V/1W Zener Diode
C4 100uF/25V Radial electrolytic capacitor
C5 100uF/25V Radial electrolytic capacitor
C2 100uf/25 Radial electrolytic capacitor
C1 680NF/400V Axial polypropylene capacitor
C3 1000uf/25 radial electrolytic capacitor
R5 220 Ohm Resistor 1W 1%
R4 560 Ohm Resistor 1/2W 1%
CON2 Batt12V 2 Pin PCB Terminal Block
CON1 CON 220VAC PANEL Connector 220V pcb panel
D4 Diodo 5A Rectifier diode 5ª
CON3 FA 12V/5A 2 Pin PCB Terminal Block
IC1 H11L2 Optocopler
DL1 LED Rojo LED 5mm
DL2 LED Verde LED 5mm
RL1 RELAY 55.14.09.012 Relay Finder
IC2 TMR3-1222E DC/DC converter
19/16
con6 con 220v out 3-pin connector 2,54
F1 fuse220v/2A 5x20 fuse holder PCB bayonet closure
CON4 To PCB PI controller 5-pin connector 2,54
CON5 To Power blower PCB 2 Pin PCB Terminal Block
20/16
Annex 2. 3D-Printed box (update Feb 11, 2019)
A customized box can be obtained by using a conventional 3D printer. The cost of
the ink to build the box is ≈15 €.
21/16