Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
e2ea96ed56 | |||
fb17c0a3f9 |
@ -172,5 +172,15 @@ namespace Plane.Copters
|
||||
/// 获取当前电池电压,单位为伏特。
|
||||
/// </summary>
|
||||
float Voltage { get; }
|
||||
|
||||
//定位类型RTK,GPS
|
||||
CopterLocationType LocationType { get; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// MissionStatus=1表示正在飞向目标中,0标识达到目标
|
||||
/// </summary>
|
||||
int MissionStatus { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -20,6 +20,7 @@
|
||||
<Compile Include="$(MSBuildThisFileDirectory)CopterManagement\ICopterManager.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Copters\Constants.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Copters\CopterCommand.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Copters\CopterLocationType.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Copters\CopterState.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Copters\PLObservableObject.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Copters\FlightCommand.cs" />
|
||||
|
@ -9,6 +9,7 @@ namespace Plane.Communication
|
||||
internal class UdpServerConnection : UdpConnectionBase
|
||||
{
|
||||
private IPEndPoint _remoteEP;
|
||||
private IPEndPoint _boardaddEP;
|
||||
|
||||
private Func<byte[], int, IPEndPoint, Task<int>> _sendFunc;
|
||||
|
||||
@ -17,6 +18,7 @@ namespace Plane.Communication
|
||||
/// </summary>
|
||||
public UdpServerConnection(IPEndPoint remoteEP, Func<byte[], int, IPEndPoint, Task<int>> sendFunc)
|
||||
{
|
||||
_boardaddEP = new IPEndPoint(IPAddress.Parse("192.168.62.255"), remoteEP.Port);
|
||||
_remoteEP = remoteEP;
|
||||
_sendFunc = sendFunc;
|
||||
}
|
||||
@ -37,6 +39,13 @@ namespace Plane.Communication
|
||||
try
|
||||
{
|
||||
await _sendFunc(datagram, bytes, _remoteEP).ConfigureAwait(false);
|
||||
/*
|
||||
//如果是广播包,用于广播消息,比如RTK等
|
||||
if (false)
|
||||
await _sendFunc(datagram, bytes, _boardaddEP).ConfigureAwait(false);
|
||||
else
|
||||
await _sendFunc(datagram, bytes, _remoteEP).ConfigureAwait(false);
|
||||
*/
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -155,8 +155,12 @@ namespace Plane.Copters
|
||||
|
||||
private float _Voltage;
|
||||
|
||||
private CopterLocationType _LocationType= CopterLocationType.GPS;
|
||||
|
||||
private float _Yaw;
|
||||
|
||||
private int _MissionStatus;
|
||||
|
||||
#endregion Backing Fields
|
||||
|
||||
public CopterImplSharedPart(SynchronizationContext uiSyncContext) : base(uiSyncContext)
|
||||
@ -613,12 +617,27 @@ namespace Plane.Copters
|
||||
protected set { Set(nameof(Voltage), ref _Voltage, value); }
|
||||
}
|
||||
|
||||
|
||||
public CopterLocationType LocationType
|
||||
{
|
||||
get { return _LocationType; }
|
||||
protected set { Set(nameof(LocationType), ref _LocationType, value); }
|
||||
}
|
||||
|
||||
public float Yaw
|
||||
{
|
||||
get { return _Yaw; }
|
||||
protected set { Set(nameof(Yaw), ref _Yaw, value); }
|
||||
}
|
||||
|
||||
public int MissionStatus
|
||||
{
|
||||
get { return _MissionStatus; }
|
||||
set { Set(nameof(MissionStatus), ref _MissionStatus, value); }
|
||||
}
|
||||
|
||||
|
||||
|
||||
#if PRIVATE
|
||||
public
|
||||
#else
|
||||
|
@ -84,6 +84,11 @@ namespace Plane.Copters
|
||||
return TaskUtils.CompletedTask;
|
||||
}
|
||||
|
||||
public Task InitAsync()
|
||||
{
|
||||
return TaskUtils.CompletedTask;
|
||||
}
|
||||
|
||||
public Task StopPairingAsync()
|
||||
{
|
||||
return TaskUtils.CompletedTask;
|
||||
|
@ -343,6 +343,12 @@ namespace Plane.Copters
|
||||
return TaskUtils.CompletedTask;
|
||||
}
|
||||
|
||||
|
||||
public Task InitAsync()
|
||||
{
|
||||
return TaskUtils.CompletedTask;
|
||||
}
|
||||
|
||||
public Task StopPairingAsync()
|
||||
{
|
||||
return TaskUtils.CompletedTask;
|
||||
|
@ -54,6 +54,8 @@ namespace Plane.Copters
|
||||
await _internalCopter.ConnectAsync().ConfigureAwait(false);
|
||||
IsConnected = _internalCopter.IsConnected;
|
||||
IsCheckingConnection = true;
|
||||
//连接完成后做一些初始化的工作
|
||||
await InitAsync();
|
||||
}
|
||||
|
||||
public virtual async Task DisconnectAsync()
|
||||
@ -248,6 +250,17 @@ namespace Plane.Copters
|
||||
await _internalCopter.GeneratePacketAsync(MAVLink.MAVLINK_MSG_ID_SET_PAIR, packet).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
public async Task InitAsync()
|
||||
{
|
||||
float Gpstype= await _internalCopter.GetParamAsync("GPS_TYPE") ;
|
||||
if (Gpstype == 15)
|
||||
LocationType = CopterLocationType.RTK;
|
||||
else
|
||||
LocationType = CopterLocationType.GPS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public async Task StopPairingAsync()
|
||||
{
|
||||
if (!IsPairing) return;
|
||||
|
Loading…
Reference in New Issue
Block a user