static SerialDataEntity parseByteByAngle(List <string> cByte) { SerialDataEntity temp = new SerialDataEntity(); double wx = makeSign(int.Parse(cByte[3]), int.Parse(cByte[2])) / 32768 * 180; // 度 x方向的角度 double wy = makeSign(int.Parse(cByte[5]), int.Parse(cByte[4])) / 32768 * 180; // 度 y方向的角度 double wz = makeSign(int.Parse(cByte[7]), int.Parse(cByte[6])) / 32768 * 180; // 度 z方向的角度 double temperture = makeSign(int.Parse(cByte[9]), int.Parse(cByte[8])) / 340 + 36.53; //温度 摄氏度 temp.setNum(3); temp.setX(wx); temp.setY(wy); temp.setZ(wz); temp.setTem(temperture); return(temp); }
static SerialDataEntity parseByteByAngle_velocity(List <string> cByte) { SerialDataEntity temp = new SerialDataEntity(); double wx = makeSign(int.Parse(cByte[3]), int.Parse(cByte[2])) / 32768 * 2000; // 度/s x方向的角速度 double wy = makeSign(int.Parse(cByte[5]), int.Parse(cByte[4])) / 32768 * 2000; // 度/s y方向的角速度 double wz = makeSign(int.Parse(cByte[7]), int.Parse(cByte[6])) / 32768 * 2000; // 度/s z方向的角速度 double temperture = makeSign(int.Parse(cByte[9]), int.Parse(cByte[8])) / 340 + 36.53; //温度 摄氏度 //Console.WriteLine("角速度:x方向角速度", wx, "y方向角速度", wy, "z方向角速度", wz); temp.setNum(2); temp.setX(wx); temp.setY(wy); temp.setZ(wz); temp.setTem(temperture); return(temp); }
static SerialDataEntity parseByteBySpeed(List <string> cByte) { SerialDataEntity temp = new SerialDataEntity(); double wx = makeSign(int.Parse(cByte[3]), int.Parse(cByte[2])) / 32768 * 16; // * G; // m/s^2 x方向的加速度 double wy = makeSign(int.Parse(cByte[5]), int.Parse(cByte[4])) / 32768 * 16; // * G; // m/s^2 y方向的加速度 double wz = makeSign(int.Parse(cByte[7]), int.Parse(cByte[6])) / 32768 * 16; // * G; // m/s^2 z方向的加速度 double temperture = makeSign(int.Parse(cByte[9]), int.Parse(cByte[8])) / 340 + 36.53; //温度 摄氏度 Console.WriteLine("加速度:x方向" + wx.ToString() + " y方向" + wy.ToString() + " z方向" + wz.ToString()); temp.setNum(1); temp.setX(wx); temp.setY(wy); temp.setZ(wz); temp.setTem(temperture); return(temp); }