1.5架同时起飞
2.控制LED完成后悬停延时仍然有效 3.跑马灯完成后加入3次闪烁控制
This commit is contained in:
parent
a3c00572c2
commit
94f366d011
@ -100,7 +100,7 @@ namespace Plane.FormationCreator.Formation
|
|||||||
await RunLoiterTimeTaskAsync().ConfigureAwait(false);
|
await RunLoiterTimeTaskAsync().ConfigureAwait(false);
|
||||||
break;
|
break;
|
||||||
case FlightTaskType.TakeOff:
|
case FlightTaskType.TakeOff:
|
||||||
await RunTakeOffTaskAsync().ConfigureAwait(false);
|
await RunTakeOffTask2Async().ConfigureAwait(false);
|
||||||
break;
|
break;
|
||||||
case FlightTaskType.ReturnToLand: // Added by ZJF
|
case FlightTaskType.ReturnToLand: // Added by ZJF
|
||||||
await RunReturnToLandTaskAsync().ConfigureAwait(false);
|
await RunReturnToLandTaskAsync().ConfigureAwait(false);
|
||||||
|
@ -165,12 +165,15 @@ namespace Plane.FormationCreator.Formation
|
|||||||
// 当flashPeriodAttr小于10,正常闪烁,即没有预制闪烁模式
|
// 当flashPeriodAttr小于10,正常闪烁,即没有预制闪烁模式
|
||||||
// 当flashPeriodAttr大于等于10,小于20,执行预制闪烁模式
|
// 当flashPeriodAttr大于等于10,小于20,执行预制闪烁模式
|
||||||
// 当flashPeriodAttr大于等于20, 改变飞控闪烁模式,以oneByOnePeriodAttr作为周期值
|
// 当flashPeriodAttr大于等于20, 改变飞控闪烁模式,以oneByOnePeriodAttr作为周期值
|
||||||
|
|
||||||
|
//LEDFlashPlanAsync需要30架飞机
|
||||||
if ((flashPeriodAttr >= 10.0f) && (flashPeriodAttr < 20.0f))
|
if ((flashPeriodAttr >= 10.0f) && (flashPeriodAttr < 20.0f))
|
||||||
{
|
{
|
||||||
await LEDFlashPlanAsync();
|
await LEDFlashPlanAsync();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//需要固件支持
|
||||||
if (flashPeriodAttr >= 20.0f)
|
if (flashPeriodAttr >= 20.0f)
|
||||||
{
|
{
|
||||||
await LEDFlashParaModifyPlanAsync();
|
await LEDFlashParaModifyPlanAsync();
|
||||||
@ -205,9 +208,10 @@ namespace Plane.FormationCreator.Formation
|
|||||||
}
|
}
|
||||||
await Task.WhenAll(tasks_selected).ConfigureAwait(false);
|
await Task.WhenAll(tasks_selected).ConfigureAwait(false);
|
||||||
await Task.Delay(3000).ConfigureAwait(false);
|
await Task.Delay(3000).ConfigureAwait(false);
|
||||||
|
// LED灯全亮
|
||||||
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, true)));
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, true)));
|
||||||
await Task.Delay(1000).ConfigureAwait(false);
|
//延时等待
|
||||||
|
await Task.Delay((int)(LoiterTimeAttr * 1000)).ConfigureAwait(false);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -216,7 +220,7 @@ namespace Plane.FormationCreator.Formation
|
|||||||
if (flashCopterNameArray.Equals(""))
|
if (flashCopterNameArray.Equals(""))
|
||||||
return;
|
return;
|
||||||
string[] copterArray = flashCopterIndexArray.Split(',');
|
string[] copterArray = flashCopterIndexArray.Split(',');
|
||||||
|
//LED全灭
|
||||||
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, false)));
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, false)));
|
||||||
await Task.Delay(1000).ConfigureAwait(false);
|
await Task.Delay(1000).ConfigureAwait(false);
|
||||||
|
|
||||||
@ -231,13 +235,39 @@ namespace Plane.FormationCreator.Formation
|
|||||||
|
|
||||||
await Task.Delay(1000).ConfigureAwait(false);
|
await Task.Delay(1000).ConfigureAwait(false);
|
||||||
|
|
||||||
|
//////////////////全部闪烁一次
|
||||||
// LED灯全亮
|
// LED灯全亮
|
||||||
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, true)));
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, true)));
|
||||||
await Task.Delay(1000).ConfigureAwait(false);
|
await Task.Delay(200).ConfigureAwait(false);
|
||||||
|
// LED灯全灭
|
||||||
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, false)));
|
||||||
|
await Task.Delay(200).ConfigureAwait(false);
|
||||||
|
/////////////////////////////////////
|
||||||
|
//////////////////全部闪烁一次
|
||||||
|
// LED灯全亮
|
||||||
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, true)));
|
||||||
|
await Task.Delay(200).ConfigureAwait(false);
|
||||||
|
// LED灯全灭
|
||||||
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, false)));
|
||||||
|
await Task.Delay(200).ConfigureAwait(false);
|
||||||
|
/////////////////////////////////////
|
||||||
|
//////////////////全部闪烁一次
|
||||||
|
// LED灯全亮
|
||||||
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, true)));
|
||||||
|
await Task.Delay(200).ConfigureAwait(false);
|
||||||
|
// LED灯全灭
|
||||||
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, false)));
|
||||||
|
await Task.Delay(200).ConfigureAwait(false);
|
||||||
|
/////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
|
// LED灯全亮
|
||||||
|
await Task.WhenAll(SingleCopterInfos.Select(info => LEDFlashTaskFlySingleCopterAsync(info, true)));
|
||||||
|
//延时等待
|
||||||
|
await Task.Delay((int)(LoiterTimeAttr * 1000)).ConfigureAwait(false);
|
||||||
|
|
||||||
}
|
}
|
||||||
else // 没有LED显示效果
|
else // 没有LED显示效果只等待
|
||||||
{
|
{
|
||||||
await Task.Delay((int)(LoiterTimeAttr * 1000)).ConfigureAwait(false);
|
await Task.Delay((int)(LoiterTimeAttr * 1000)).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
@ -473,7 +503,7 @@ namespace Plane.FormationCreator.Formation
|
|||||||
await Task.Delay(200).ConfigureAwait(false);
|
await Task.Delay(200).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 一排一排闪烁
|
// 一排一排闪烁 需要30架飞机,6排,一排5架,一排排闪灯
|
||||||
private async Task LEDColumnFlashAsync()
|
private async Task LEDColumnFlashAsync()
|
||||||
{
|
{
|
||||||
await LEDArrayFlashAsync(columnFirst);
|
await LEDArrayFlashAsync(columnFirst);
|
||||||
|
Loading…
Reference in New Issue
Block a user