public void UpdateRespirationDataOnGraph(object sender, RespirateurDataEventArgs e)
        {
            oscilloRespiration.AddPointToLine(0, e.EmbeddedTimeStampInMs / 1000.0, e.pressureSensor1);
            //double pression2 = (e.pressureSensor2 - 1.65+ 0.0075)/3.0 * (100000 / 0.085) ;
            oscilloRespiration.AddPointToLine(5, e.EmbeddedTimeStampInMs / 1000.0, e.pressureSensor2);
            double rho          = 1.23;
            double diametre     = 0.014;    //en M
            double diffPression = e.pressureSensor1 - 0.08;
            int    sign         = 1;

            if (diffPression < 0)
            {
                sign = -1;
            }
            else
            {
                sign = 1;
            }
            double vitesse = Math.Sqrt(2 * Math.Abs(diffPression) / rho) * sign;
            //double surface = (diametre * diametre) / 4 * Math.PI;
            double surface = 9.4 / 100000;              //En M²
            double debit   = vitesse * surface;         //En M3/s

            if (vitesse > 0.01)
            {
                volume += (debit * 1000) / 50;
            }
            else
            {
                volume = 0;
            }
            oscilloRespiration.AddPointToLine(3, e.EmbeddedTimeStampInMs / 1000.0, vitesse);
            oscilloRespiration.AddPointToLine(4, e.EmbeddedTimeStampInMs / 1000.0, debit * 1000);
            oscilloRespiration.AddPointToLine(1, e.EmbeddedTimeStampInMs / 1000.0, volume);
        }
Exemple #2
0
        public void UpdateVolumeDataOnGraph(object sender, RespirateurDataEventArgs e)
        {
            oscilloPression.AddPointToLine(0, e.EmbeddedTimeStampInMs / 1000.0, e.pressureSensor2 / 100);     //Pression patient (mmH2o)
            //double pression2 = (e.pressureSensor2 - 1.65+ 0.0075)/3.0 * (100000 / 0.085) ;
            double rho = 1.23;
            //double diametre = 0.014;        //en M
            double diffPression = e.pressureSensor1 - 0.08;
            int    sign         = 1;

            if (diffPression < 0)
            {
                sign = -1;
            }
            else
            {
                sign = 1;
            }
            double vitesse = Math.Sqrt(2 * Math.Abs(diffPression) / rho) * sign;
            //double surface = (diametre * diametre) / 4 * Math.PI;
            double surface = 1;

            if (!usePitot4mm)
            {
                surface = 9.4 / 100000;                 //En M² pour tube en 4mm externe
            }
            else
            {
                surface = 7.26 / 100000;                //En M² pour tube en 6mm externe
            }
            //double surface = 7.26 / 100000;                 //En M² pour tube en 6mm externe
            double debit = vitesse * surface;           //En M3/s

            if (vitesse > 0.01)
            {
                volume += (debit * 1000) / 50;
            }
            else
            {
                volume = 0;
            }
            oscilloVolume.AddPointToLine(0, e.EmbeddedTimeStampInMs / 1000.0, e.pressureSensor1);      //Tube pito
        }