From 8e5c058dd25cb5801df0707830783f02f12f8349 Mon Sep 17 00:00:00 2001 From: MoYue <18168119590@163.com> Date: Tue, 11 Jul 2023 09:48:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=A7=E6=B0=94=E5=8E=8B?= =?UTF-8?q?=E5=8D=95=E4=BD=8D=E5=8F=8A=E5=A7=BF=E6=80=81=E6=A0=A1=E5=87=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MonitoringTechnology/Ble/BleDevice.cs | 148 +++++++++----------------- 1 file changed, 52 insertions(+), 96 deletions(-) diff --git a/MonitoringTechnology/Ble/BleDevice.cs b/MonitoringTechnology/Ble/BleDevice.cs index 28d2147..0315c7f 100644 --- a/MonitoringTechnology/Ble/BleDevice.cs +++ b/MonitoringTechnology/Ble/BleDevice.cs @@ -453,38 +453,36 @@ namespace MonitoringTechnology.Ble //角度X 48,49,50,51 float X = tools.bytetofloat(byteList, 48); + //monitoringSensorModel.degrees_x = X; + if (X > 0) { - monitoringSensorModel.degrees_x = X * 1.035F; + monitoringSensorModel.degrees_x = X * 1.058F; } else { - monitoringSensorModel.degrees_x = X * 1.088F; + monitoringSensorModel.degrees_x = X * 1.104F; } //monitoringSensorModel.degrees_x = tools.bytetofloat(byteList, 48) * 1.02F; //角度Y 52,53,54,55 float Y = tools.bytetofloat(byteList, 52); - if (Y > 92) - { - monitoringSensorModel.degrees_y = Y * 1.0172F; - if (monitoringSensorModel.degrees_y > 180F) - { - monitoringSensorModel.degrees_y = 180F; - } - } - else if (Y < -91) - { - monitoringSensorModel.degrees_y = Y * 0.9829F; - if (monitoringSensorModel.degrees_y < -175F) - { - monitoringSensorModel.degrees_y = Y * 1.0172F; - } + //monitoringSensorModel.degrees_y = Y; - if (monitoringSensorModel.degrees_y < -180F) + if (Y > 0) + { + if (Y < 90) { - monitoringSensorModel.degrees_y = -180F; + monitoringSensorModel.degrees_y = Y * 1.0624F; + } + else if ( Y >= 173) + { + monitoringSensorModel.degrees_y = Y * (-1.0353F); + } + else if (Y < 173) + { + monitoringSensorModel.degrees_y = Y * 1.0411F; } } else @@ -492,37 +490,16 @@ namespace MonitoringTechnology.Ble monitoringSensorModel.degrees_y = Y; } - // monitoringSensorModel.degrees_y = tools.bytetofloat(byteList, 52) * 1.0172F; + //角度Z 56,57,58,59 //monitoringSensorModel.degrees_z = tools.bytetofloat(byteList, 56); float Z = tools.bytetofloat(byteList, 56); - if ((Z > 0 && Z < 2) || (Z > -2F && Z < 0F)) - { - monitoringSensorModel.degrees_z = 0F; - } - else if (Z > 88F && Z < 92F) - { - monitoringSensorModel.degrees_z = 90F; - } - else if (Z > 178F && Z < 182F) - { - monitoringSensorModel.degrees_z = 180F; - } - else if (Z > -92F && Z < -88F) - { - monitoringSensorModel.degrees_z = -90F; - } - else if (Z > -182F && Z < -178F) - { - monitoringSensorModel.degrees_z = -180F; - } - else - { - monitoringSensorModel.degrees_z = Z; - } + + monitoringSensorModel.degrees_z = Z; + //电池电压 60,61,62,63 monitoringSensorModel._batteryVoltage = tools.bytetofloat(byteList, 60); @@ -607,7 +584,7 @@ namespace MonitoringTechnology.Ble localDataAccess.write("INSERT INTO monitoringsensormodel(F_CreateDate,F_DatetimeSensor,F_Tem,F_Hum,F_Pressure,F_AccelerationX,F_AccelerationY,F_AccelerationZ,F_AngularVelocityX,F_AngularVelocityY,F_AngularVelocityZ,F_DegreesX,F_DegreesY,F_DegreesZ,F_BatteryVoltage,F_ChargingCurrent,F_State) VALUES('" + monitoringSensorModel.f_CreateDate + "','" + monitoringSensorModel._datetime_Sensor + "','" + monitoringSensorModel._Tem + "','" + monitoringSensorModel._Hum + "','" + monitoringSensorModel._pressure + "','" + monitoringSensorModel._acceleration_X + "','" + monitoringSensorModel._acceleration_Y + "','" + monitoringSensorModel._acceleration_Z + "','" + monitoringSensorModel._angularVelocity_X + "','" + monitoringSensorModel._angularVelocity_Y + "','" + monitoringSensorModel._angularVelocity_Z + "','" + monitoringSensorModel.degrees_x + "','" + monitoringSensorModel.degrees_y + "','" + monitoringSensorModel.degrees_z + "','" + monitoringSensorModel._batteryVoltage + "','" + monitoringSensorModel._ChargingCurrent + "','" + monitoringSensorModel._State + "');"); - _message = "状态数据获取成功: 数据上传时间: " + monitoringSensorModel._datetime_Sensor + " 温度:" + monitoringSensorModel._Tem + "℃ 湿度:" + monitoringSensorModel._Hum + "% 气压:" + monitoringSensorModel._pressure + "KPa 加速度X:" + monitoringSensorModel._acceleration_X + "rad/s 加速度Y:" + monitoringSensorModel._acceleration_Y + "rad/s 加速度Z:" + monitoringSensorModel._acceleration_Z + "rad/s 角速度X:" + monitoringSensorModel._angularVelocity_X + "m/s² 角速度Y:" + monitoringSensorModel._angularVelocity_Y + "m/s² 角速度Z:" + monitoringSensorModel._angularVelocity_Z + "m/s² 俯仰角:" + monitoringSensorModel.degrees_x + "° 横滚角:" + monitoringSensorModel.degrees_y + "° 偏航角:" + monitoringSensorModel.degrees_z + "° 电池电压:" + monitoringSensorModel._batteryVoltage + "V 充电电流:" + monitoringSensorModel._ChargingCurrent + "A 充电状态:" + monitoringSensorModel._State + " 蓝牙速率:" + LYSpeed + " Mbps"; + _message = "状态数据获取成功: 数据上传时间: " + monitoringSensorModel._datetime_Sensor + " 温度:" + monitoringSensorModel._Tem + "℃ 湿度:" + monitoringSensorModel._Hum + "% 气压:" + monitoringSensorModel._pressure + "Pa 加速度X:" + monitoringSensorModel._acceleration_X + "rad/s 加速度Y:" + monitoringSensorModel._acceleration_Y + "rad/s 加速度Z:" + monitoringSensorModel._acceleration_Z + "rad/s 角速度X:" + monitoringSensorModel._angularVelocity_X + "m/s² 角速度Y:" + monitoringSensorModel._angularVelocity_Y + "m/s² 角速度Z:" + monitoringSensorModel._angularVelocity_Z + "m/s² 俯仰角:" + monitoringSensorModel.degrees_x + "° 横滚角:" + monitoringSensorModel.degrees_y + "° 偏航角:" + monitoringSensorModel.degrees_z + "° 电池电压:" + monitoringSensorModel._batteryVoltage + "V 充电电流:" + monitoringSensorModel._ChargingCurrent + "A 充电状态:" + monitoringSensorModel._State + " 蓝牙速率:" + LYSpeed + " Mbps"; ReceiveValueChangedChanged(null, _message); break; @@ -870,74 +847,53 @@ namespace MonitoringTechnology.Ble // monitoringSensorModel.degrees_y = tools.bytetofloat(byteList, 50); //角度X 48,49,50,51 - float X_History = tools.bytetofloat(byteList, 46); - if (X_History > 0) + float X_history = tools.bytetofloat(byteList, 48); + //monitoringSensorModel.degrees_x = X; + + if (X_history > 0) { - monitoringSensorModel.degrees_x = X_History * 1.035F; + monitoringSensorModel.degrees_x = X_history * 1.058F; } else { - monitoringSensorModel.degrees_x = X_History * 1.088F; + monitoringSensorModel.degrees_x = X_history * 1.104F; } //monitoringSensorModel.degrees_x = tools.bytetofloat(byteList, 48) * 1.02F; //角度Y 52,53,54,55 - float Y_History = tools.bytetofloat(byteList, 50); - if (Y_History > 92) - { - monitoringSensorModel.degrees_y = Y_History * 1.0172F; + float Y_history = tools.bytetofloat(byteList, 52); - if (monitoringSensorModel.degrees_y > 180F) - { - monitoringSensorModel.degrees_y = 180F; - } - } - else if (Y_History < -91) - { - monitoringSensorModel.degrees_y = Y_History * 0.9829F; - if (monitoringSensorModel.degrees_y < -175F) - { - monitoringSensorModel.degrees_y = Y_History * 1.0172F; - } + //monitoringSensorModel.degrees_y = Y; - if (monitoringSensorModel.degrees_y < -180F) + if (Y_history > 0) + { + if (Y_history < 90) { - monitoringSensorModel.degrees_y = -180F; + monitoringSensorModel.degrees_y = Y_history * 1.0624F; + } + else if (Y_history >= 173) + { + monitoringSensorModel.degrees_y = Y_history * (-1.0353F); + } + else if (Y_history < 173) + { + monitoringSensorModel.degrees_y = Y_history * 1.0411F; } } else { - monitoringSensorModel.degrees_y = Y_History; + monitoringSensorModel.degrees_y = Y_history; } - //角度Z 54,55,56,57 - //monitoringSensorModel.degrees_z = tools.bytetofloat(byteList, 54); - float Z_History = tools.bytetofloat(byteList, 56); - if ((Z_History > 0 && Z_History < 2) || (Z_History > -2F && Z_History < 0F)) - { - monitoringSensorModel.degrees_z = 0F; - } - else if (Z_History > 88F && Z_History < 92F) - { - monitoringSensorModel.degrees_z = 90F; - } - else if (Z_History > 178F && Z_History < 182F) - { - monitoringSensorModel.degrees_z = 180F; - } - else if (Z_History > -92F && Z_History < -88F) - { - monitoringSensorModel.degrees_z = -90F; - } - else if (Z_History > -182F && Z_History < -178F) - { - monitoringSensorModel.degrees_z = -180F; - } - else - { - monitoringSensorModel.degrees_z = Z_History; - } + + + //角度Z 56,57,58,59 + //monitoringSensorModel.degrees_z = tools.bytetofloat(byteList, 56); + + float Z_history = tools.bytetofloat(byteList, 56); + + monitoringSensorModel.degrees_z = Z_history; //电池电压 58,59.60,61 monitoringSensorModel._batteryVoltage = tools.bytetofloat(byteList, 58); @@ -1045,7 +1001,7 @@ namespace MonitoringTechnology.Ble #endregion - _message = "日期:" + monitoringSensorModel._datetime_Sensor + "\r\n" + " 温度:" + monitoringSensorModel._Tem + "℃ 湿度:" + monitoringSensorModel._Hum + "% 气压:" + monitoringSensorModel._pressure + "KPa " + "\r\n" + " 加速度X:" + monitoringSensorModel._acceleration_X + "rad/s 加速度Y:" + monitoringSensorModel._acceleration_Y + "rad/s 加速度Z:" + monitoringSensorModel._acceleration_Z + "rad/s" + "\r\n" + " 角速度X:" + monitoringSensorModel._angularVelocity_X + "m/s² 角速度Y:" + monitoringSensorModel._angularVelocity_Y + "m/s² 角速度Z:" + monitoringSensorModel._angularVelocity_Z + "m/s² " + "\r\n" + " 俯仰角:" + monitoringSensorModel.degrees_x + "° 横滚角:" + monitoringSensorModel.degrees_y + "° 偏航角:" + monitoringSensorModel.degrees_z + "° " + "\r\n" + " 电池电压:" + monitoringSensorModel._batteryVoltage + "V 充电电流:" + monitoringSensorModel._ChargingCurrent + "A 充电状态:" + monitoringSensorModel._State + "\r\n" + " 温度-主系统:" + monitoringSensorModel.tem + "℃ 湿度-主系统:" + monitoringSensorModel.hum + "% 气压 -主系统 :" + monitoringSensorModel.preeure + "KPa" + "\r\n" + " 电压1 -主系统:" + monitoringSensorModel.voltage1 + "V 电压2 -主系统:" + monitoringSensorModel.voltage2 + "V 电压3 -主系统:" + monitoringSensorModel.voltage3 + "V" + "\r\n" + " 电压4 -主系统:" + monitoringSensorModel.voltage4 + "V 电压5 -主系统:" + monitoringSensorModel.voltage5 + "V 电压6 -主系统:" + monitoringSensorModel.voltage6 + "V" + "\r\n" + " 电压7 -主系统:" + monitoringSensorModel.voltage7 + "V 电压8 -主系统:" + monitoringSensorModel.voltage8 + "V 电压9 -主系统:" + monitoringSensorModel.voltage9 + "V" + "\r\n" + " 电压10 -主系统:" + monitoringSensorModel.voltage10 + "V" + "\r\n" + " 电流1 -主系统:" + monitoringSensorModel.current1 + "A 电流2 -主系统:" + monitoringSensorModel.current2 + "A 电流3 -主系统:" + monitoringSensorModel.current3 + "A" + "\r\n" + " 电流4 -主系统:" + monitoringSensorModel.current4 + "A 电流5 -主系统:" + monitoringSensorModel.current5 + "A 电流6 -主系统:" + monitoringSensorModel.current6 + "A" + "\r\n" + " 电流7 -主系统:" + monitoringSensorModel.current7 + "A 电流8 -主系统:" + monitoringSensorModel.current8 + "A 电流9 -主系统:" + monitoringSensorModel.current9 + "A" + "\r\n" + " 电流10 -主系统:" + monitoringSensorModel.current10 + "A" + "\r\n"; + _message = "日期:" + monitoringSensorModel._datetime_Sensor + "\r\n" + " 温度:" + monitoringSensorModel._Tem + "℃ 湿度:" + monitoringSensorModel._Hum + "% 气压:" + monitoringSensorModel._pressure + "Pa " + "\r\n" + " 加速度X:" + monitoringSensorModel._acceleration_X + "rad/s 加速度Y:" + monitoringSensorModel._acceleration_Y + "rad/s 加速度Z:" + monitoringSensorModel._acceleration_Z + "rad/s" + "\r\n" + " 角速度X:" + monitoringSensorModel._angularVelocity_X + "m/s² 角速度Y:" + monitoringSensorModel._angularVelocity_Y + "m/s² 角速度Z:" + monitoringSensorModel._angularVelocity_Z + "m/s² " + "\r\n" + " 俯仰角:" + monitoringSensorModel.degrees_x + "° 横滚角:" + monitoringSensorModel.degrees_y + "° 偏航角:" + monitoringSensorModel.degrees_z + "° " + "\r\n" + " 电池电压:" + monitoringSensorModel._batteryVoltage + "V 充电电流:" + monitoringSensorModel._ChargingCurrent + "A 充电状态:" + monitoringSensorModel._State + "\r\n" + " 温度-主系统:" + monitoringSensorModel.tem + "℃ 湿度-主系统:" + monitoringSensorModel.hum + "% 气压 -主系统 :" + monitoringSensorModel.preeure + "KPa" + "\r\n" + " 电压1 -主系统:" + monitoringSensorModel.voltage1 + "V 电压2 -主系统:" + monitoringSensorModel.voltage2 + "V 电压3 -主系统:" + monitoringSensorModel.voltage3 + "V" + "\r\n" + " 电压4 -主系统:" + monitoringSensorModel.voltage4 + "V 电压5 -主系统:" + monitoringSensorModel.voltage5 + "V 电压6 -主系统:" + monitoringSensorModel.voltage6 + "V" + "\r\n" + " 电压7 -主系统:" + monitoringSensorModel.voltage7 + "V 电压8 -主系统:" + monitoringSensorModel.voltage8 + "V 电压9 -主系统:" + monitoringSensorModel.voltage9 + "V" + "\r\n" + " 电压10 -主系统:" + monitoringSensorModel.voltage10 + "V" + "\r\n" + " 电流1 -主系统:" + monitoringSensorModel.current1 + "A 电流2 -主系统:" + monitoringSensorModel.current2 + "A 电流3 -主系统:" + monitoringSensorModel.current3 + "A" + "\r\n" + " 电流4 -主系统:" + monitoringSensorModel.current4 + "A 电流5 -主系统:" + monitoringSensorModel.current5 + "A 电流6 -主系统:" + monitoringSensorModel.current6 + "A" + "\r\n" + " 电流7 -主系统:" + monitoringSensorModel.current7 + "A 电流8 -主系统:" + monitoringSensorModel.current8 + "A 电流9 -主系统:" + monitoringSensorModel.current9 + "A" + "\r\n" + " 电流10 -主系统:" + monitoringSensorModel.current10 + "A" + "\r\n"; //以txt文档的形式存储接收到的数据---默认D盘 //tools.AddLgoToTXT(FileModel.File_Name + FileModel.File_Time.ToString("yyyy-MM-dd") + " 历史数据查询记录" + ".txt", FileModel.File_Path + FileModel.File_Time.ToString("yyyy-MM-dd") + @"\", _localtime + ": " + _message + "\r\n");