diff --git a/MonitoringTechnology/Assets/Images/Logo.png b/MonitoringTechnology/Assets/Images/Logo.png new file mode 100644 index 0000000..71cb5d3 Binary files /dev/null and b/MonitoringTechnology/Assets/Images/Logo.png differ diff --git a/MonitoringTechnology/Ble/BleDevice.cs b/MonitoringTechnology/Ble/BleDevice.cs index bafb5c6..5779b3a 100644 --- a/MonitoringTechnology/Ble/BleDevice.cs +++ b/MonitoringTechnology/Ble/BleDevice.cs @@ -222,6 +222,7 @@ namespace MonitoringTechnology.Ble GattCharacteristics.Clear(); GattDeviceServicesResult servicesResult = await _device.GetGattServicesAsync().GetResultAsync(); + if (servicesResult.Status == GattCommunicationStatus.Success) { foreach (GattDeviceService service in servicesResult.Services) @@ -267,9 +268,15 @@ namespace MonitoringTechnology.Ble { Log.Info("订阅通知成功!" + CharacteristicNotify.Uuid); } + } ConnectionStateChanged?.Invoke(this, true); } + else + { + string _message = "连接失败,请重新尝试连接!"; + ReceiveValueChangedChanged(null, _message); + } } #endregion @@ -470,37 +477,37 @@ namespace MonitoringTechnology.Ble ///定时去刷新首页电气数据和故障信息 ThreadPool.QueueUserWorkItem(delegate { - SynchronizationContext.SetSynchronizationContext(new - DispatcherSynchronizationContext(System.Windows.Application.Current.Dispatcher)); - SynchronizationContext.Current.Post(pl => - { - if (FirstPageView.firstPageView.ElectricalEnvironmentalList.Count >= 30) - FirstPageView.firstPageView.ElectricalEnvironmentalList.RemoveAt(0); - FirstPageView.firstPageView.ElectricalEnvironmentalList.Add(new ElectricalEnvironmentalModel() - { - F_CreateDate = (DateTime)monitoringSensorModel.f_CreateDate, - F_DatetimeSensor = (DateTime)monitoringSensorModel._datetime_Sensor, - F_Tem = (float)monitoringSensorModel._Tem, - F_Hum = (float)monitoringSensorModel._Hum, - F_Pressure = (float)monitoringSensorModel._pressure - }); - for (int i = 0; i < FirstPageView.firstPageView.ElectricalEnvironmentalList.Count; i++) - { - FirstPageView.firstPageView.ElectricalEnvironmentalList[i].F_SerialNo = i + 1; - } + SynchronizationContext.SetSynchronizationContext(new + DispatcherSynchronizationContext(System.Windows.Application.Current.Dispatcher)); + SynchronizationContext.Current.Post(pl => + { + if (FirstPageView.firstPageView.ElectricalEnvironmentalList.Count >= 30) + FirstPageView.firstPageView.ElectricalEnvironmentalList.RemoveAt(0); + FirstPageView.firstPageView.ElectricalEnvironmentalList.Add(new ElectricalEnvironmentalModel() + { + F_CreateDate = (DateTime)monitoringSensorModel.f_CreateDate, + F_DatetimeSensor = (DateTime)monitoringSensorModel._datetime_Sensor, + F_Tem = (float)monitoringSensorModel._Tem, + F_Hum = (float)monitoringSensorModel._Hum, + F_Pressure = (float)monitoringSensorModel._pressure + }); + for (int i = 0; i < FirstPageView.firstPageView.ElectricalEnvironmentalList.Count; i++) + { + FirstPageView.firstPageView.ElectricalEnvironmentalList[i].F_SerialNo = i + 1; + } - ////告警信息 - ////if (FirstPageView.firstPageView.AlarmItemModelList.Count >= 30) - //// FirstPageView.firstPageView.AlarmItemModelList.RemoveAt(0); + ////告警信息 + ////if (FirstPageView.firstPageView.AlarmItemModelList.Count >= 30) + //// FirstPageView.firstPageView.AlarmItemModelList.RemoveAt(0); - ////FirstPageView.firstPageView.AlarmItemModelList.Add(new AlarmItemModel() - ////{ - //// F_CreateDate = - //// F_Time = - //// F_Message = - //// F_Len = - ////}); - }, null); + ////FirstPageView.firstPageView.AlarmItemModelList.Add(new AlarmItemModel() + ////{ + //// F_CreateDate = + //// F_Time = + //// F_Message = + //// F_Len = + ////}); + }, null); }); //姿态数据刷新 @@ -526,7 +533,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 俯仰角:" + monitoringSensorModel._acceleration_X + "° 横滚角:" + monitoringSensorModel._acceleration_Y + "° 偏航角:" + monitoringSensorModel._acceleration_Z + "° 角速度X:" + monitoringSensorModel._angularVelocity_X + "m/s² 角速度Y:" + monitoringSensorModel._angularVelocity_Y + "m/s² 角速度Z:" + monitoringSensorModel._angularVelocity_Z + "m/s² 角度X:" + monitoringSensorModel.degrees_x + "rad/s 角度Y:" + monitoringSensorModel.degrees_y + "rad/s 角度Z:" + monitoringSensorModel.degrees_z + "rad/s 电池电压:" + monitoringSensorModel._batteryVoltage +"V 充电电流:"+ monitoringSensorModel._ChargingCurrent +"A 充电状态:"+ monitoringSensorModel._State; + _message = "状态数据获取成功: 数据上传时间: " + monitoringSensorModel._datetime_Sensor + " 温度:" + monitoringSensorModel._Tem + "℃ 湿度:" + monitoringSensorModel._Hum + "% 气压:" + monitoringSensorModel._pressure + "KPa 俯仰角:" + monitoringSensorModel._acceleration_X + "° 横滚角:" + monitoringSensorModel._acceleration_Y + "° 偏航角:" + monitoringSensorModel._acceleration_Z + "° 角速度X:" + monitoringSensorModel._angularVelocity_X + "m/s² 角速度Y:" + monitoringSensorModel._angularVelocity_Y + "m/s² 角速度Z:" + monitoringSensorModel._angularVelocity_Z + "m/s² 角度X:" + monitoringSensorModel.degrees_x + "rad/s 角度Y:" + monitoringSensorModel.degrees_y + "rad/s 角度Z:" + monitoringSensorModel.degrees_z + "rad/s 电池电压:" + monitoringSensorModel._batteryVoltage + "V 充电电流:" + monitoringSensorModel._ChargingCurrent + "A 充电状态:" + monitoringSensorModel._State; ReceiveValueChangedChanged(null, _message); break; diff --git a/MonitoringTechnology/Ble/BleManager.cs b/MonitoringTechnology/Ble/BleManager.cs index bf33d3a..d6ab440 100644 --- a/MonitoringTechnology/Ble/BleManager.cs +++ b/MonitoringTechnology/Ble/BleManager.cs @@ -125,6 +125,9 @@ namespace MonitoringTechnology.Ble }*/ } + /// + /// 开始扫描 + /// public async void StartScan() { if (advertisementWatcher.Status != BluetoothLEAdvertisementWatcherStatus.Started) @@ -134,11 +137,15 @@ namespace MonitoringTechnology.Ble advertisementWatcher.Start(); deviceWatcher.Start(); Started?.Invoke(this, null); - await Task.Delay(5000); - StopScan(); + await Task.Delay(1000); + StartScan(); + } } + /// + /// 停止扫描 + /// public void StopScan() { //判断状态,防止 InvalidOperationException @@ -149,7 +156,5 @@ namespace MonitoringTechnology.Ble Log.Info("停止扫描"); } } - - // } } diff --git a/MonitoringTechnology/Views/SystemOperationView.xaml b/MonitoringTechnology/Views/SystemOperationView.xaml index a53d8cc..3051b1a 100644 --- a/MonitoringTechnology/Views/SystemOperationView.xaml +++ b/MonitoringTechnology/Views/SystemOperationView.xaml @@ -95,6 +95,7 @@ + @@ -113,6 +114,8 @@ Click="buttonRead_Click" Template="{StaticResource ButtonTemplate}"/>