ReaderLibrary.MyTag.GetDigitalAccel C# (CSharp) Method

GetDigitalAccel() public method

public GetDigitalAccel ( string channel ) : double
channel string
return double
        public double GetDigitalAccel(string channel)
        {
            channel = channel.ToLower();

            double value = GetRawDigitalAccel(channel);

            /* Make postive */
            value += 4096 / 2;
            /* Scale to 0 to 100% */
            value = 100.0 * value / 4096.0;

            // flip x,y by default
            if (channel == "x" || channel == "y") value = 100 - value;

            return value;
        }

Usage Example

Example #1
0
        private void HandleDigitalAccelTagStats(MyTag tag)
        {
            double alpha = accelInfo.alpha;

            if (accelInfo.filterChkd)
            {
                //alpha = tbarLPFilter.Value;
                alpha = alpha / 100.0;
                if (alpha > 1 || alpha < 0)
                {
                    alpha = 0.2;
                    Trace.WriteLine("alpha out of bounds");
                }
            }
            else
            {
                alpha = 0.0;
            }

            double xac, yac, zac;
            // First work with the scaled values
            xac = tag.GetDigitalAccel("x");
            yac = tag.GetDigitalAccel("y");
            zac = tag.GetDigitalAccel("z");

            currentX = currentX * alpha + xac * (1 - alpha);
            currentY = currentY * alpha + yac * (1 - alpha);
            currentZ = currentZ * alpha + zac * (1 - alpha);

            // Now work with the raw adc values
            xac = tag.GetRawAccel("x");
            yac = tag.GetRawAccel("y");
            zac = tag.GetRawAccel("z");

            if (xac > xMax) xMax = xac;
            if (yac > yMax) yMax = yac;
            if (zac > zMax) zMax = zac;

            if (xac < xMin) xMin = xac;
            if (yac < yMin) yMin = yac;
            if (zac < zMin) zMin = zac;

            deltaX = xMax - xMin;
            deltaY = yMax - yMin;
            deltaZ = zMax - zMin;
        }