Commit 40225d59 张东亮

agv上报

1 个父辈 0a84f7d6
......@@ -15,35 +15,71 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RFID_PuYue", "source\RFID_P
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PosConfig", "source\PosConfig\PosConfig\PosConfig.csproj", "{4A2857DF-01D4-46D4-A1F8-340B59828260}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConfigHelper", "..\..\CSharp-Workspace\MyProject\DLL\ConfigHelper\ConfigHelper\ConfigHelper.csproj", "{290182DB-D949-434E-9FF7-C59BDE3F433A}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64
Release|Any CPU = Release|Any CPU
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{43CDD09E-FCF3-4960-A01D-3BBFE9933122}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{43CDD09E-FCF3-4960-A01D-3BBFE9933122}.Debug|x64.ActiveCfg = Debug|Any CPU
{43CDD09E-FCF3-4960-A01D-3BBFE9933122}.Debug|x64.Build.0 = Debug|Any CPU
{43CDD09E-FCF3-4960-A01D-3BBFE9933122}.Release|Any CPU.ActiveCfg = Release|Any CPU
{43CDD09E-FCF3-4960-A01D-3BBFE9933122}.Release|Any CPU.Build.0 = Release|Any CPU
{43CDD09E-FCF3-4960-A01D-3BBFE9933122}.Release|x64.ActiveCfg = Release|Any CPU
{43CDD09E-FCF3-4960-A01D-3BBFE9933122}.Release|x64.Build.0 = Release|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Debug|Any CPU.Build.0 = Debug|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Debug|x64.ActiveCfg = Debug|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Debug|x64.Build.0 = Debug|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Release|Any CPU.ActiveCfg = Release|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Release|Any CPU.Build.0 = Release|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Release|x64.ActiveCfg = Release|Any CPU
{513BC1C9-800D-43A6-9499-3700BAEC3554}.Release|x64.Build.0 = Release|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Debug|Any CPU.Build.0 = Debug|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Debug|x64.ActiveCfg = Debug|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Debug|x64.Build.0 = Debug|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Release|Any CPU.ActiveCfg = Release|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Release|Any CPU.Build.0 = Release|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Release|x64.ActiveCfg = Release|Any CPU
{064BEBF5-8FAA-4EA2-A5F3-A06E6E7D9251}.Release|x64.Build.0 = Release|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Debug|x64.ActiveCfg = Debug|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Debug|x64.Build.0 = Debug|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Release|Any CPU.Build.0 = Release|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Release|x64.ActiveCfg = Release|Any CPU
{0D2542F5-DD62-4352-82D0-383D9A045E74}.Release|x64.Build.0 = Release|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Debug|x64.ActiveCfg = Debug|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Debug|x64.Build.0 = Debug|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Release|Any CPU.Build.0 = Release|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Release|x64.ActiveCfg = Release|Any CPU
{6AFA3060-1DFF-4AC0-B082-827C451E5FF7}.Release|x64.Build.0 = Release|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Debug|x64.ActiveCfg = Debug|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Debug|x64.Build.0 = Debug|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Release|Any CPU.Build.0 = Release|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Release|x64.ActiveCfg = Release|Any CPU
{4A2857DF-01D4-46D4-A1F8-340B59828260}.Release|x64.Build.0 = Release|Any CPU
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Debug|x64.ActiveCfg = Debug|x64
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Debug|x64.Build.0 = Debug|x64
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Release|Any CPU.Build.0 = Release|Any CPU
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Release|x64.ActiveCfg = Release|x64
{290182DB-D949-434E-9FF7-C59BDE3F433A}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......
......@@ -203,6 +203,10 @@
</None>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\CSharp-Workspace\MyProject\DLL\ConfigHelper\ConfigHelper\ConfigHelper.csproj">
<Project>{290182db-d949-434e-9ff7-c59bde3f433a}</Project>
<Name>ConfigHelper</Name>
</ProjectReference>
<ProjectReference Include="..\Common\Common.csproj">
<Project>{43cdd09e-fcf3-4960-a01d-3bbfe9933122}</Project>
<Name>Common</Name>
......
......@@ -59,6 +59,7 @@
this.lblVersion.TabIndex = 276;
this.lblVersion.Text = "版本号:1.1.0000.0000";
this.lblVersion.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lblVersion.Click += new System.EventHandler(this.lblVersion_Click);
//
// lblTime
//
......@@ -94,7 +95,7 @@
//
// FrmAbout
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(553, 222);
this.Controls.Add(this.btnCopy);
......
......@@ -37,5 +37,10 @@ namespace OnlineStore.AssemblyLine
{
Clipboard.SetDataObject(GetCodeNum(), true);
}
private void lblVersion_Click(object sender, EventArgs e)
{
ConfigHelper.AdvanceConfigForm.ShowEditDialog(this);
}
}
}
......@@ -115,6 +115,10 @@
</Compile>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\CSharp-Workspace\MyProject\DLL\ConfigHelper\ConfigHelper\ConfigHelper.csproj">
<Project>{290182db-d949-434e-9ff7-c59bde3f433a}</Project>
<Name>ConfigHelper</Name>
</ProjectReference>
<ProjectReference Include="..\Common\Common.csproj">
<Project>{43cdd09e-fcf3-4960-a01d-3bbfe9933122}</Project>
<Name>Common</Name>
......
......@@ -901,7 +901,7 @@ namespace OnlineStore.DeviceLibrary
}
}
LineManager.UploadAGVStatus(states);
}
//发送呼叫任务
ContainerManager.HandlePendingTask();
......
......@@ -3,12 +3,14 @@ using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Web.Management;
using System.Web.UI.WebControls;
using System.Windows.Forms;
namespace OnlineStore.DeviceLibrary
......@@ -22,8 +24,20 @@ namespace OnlineStore.DeviceLibrary
public static LineBean Line = null;
public static Line_Config Config = null;
public static Dictionary<int, DeviceConfig> allConfigMap = null;
public LineManager()
static LineManager()
{
int take_x = ConfigHelper.Config.Get("takePosX", 23781);
int take_y = ConfigHelper.Config.Get("takePosY", 20612);
AgvPoints.Add("TAKE", new List<Point>() { new Point { X=take_x,Y= take_y} });//取料点
int put_x = ConfigHelper.Config.Get("putPosX", 23781);
int put_y = ConfigHelper.Config.Get("putPosY", 22812);
AgvPoints.Add("PUT", new List<Point>() { new Point { X=put_x,Y=put_y} });//放料点
int standby_x = ConfigHelper.Config.Get("standbyPosX", 27564);
int standby_y = ConfigHelper.Config.Get("standbyPosY", 20282);
AgvPoints.Add("STANDBY", new List<Point>() { new Point { X = standby_x, Y = standby_y } });
int charge_x = ConfigHelper.Config.Get("chargePosX", 22081);
int charge_y = ConfigHelper.Config.Get("chargePosY", 13187);
AgvPoints.Add("CHARGE", new List<Point>() { new Point() { X = charge_x, Y = charge_y } });
}
public static Dictionary<string, string> StepDesMap = new Dictionary<string, string>();
......@@ -217,6 +231,41 @@ namespace OnlineStore.DeviceLibrary
}
return false;
}
static Dictionary<string, List<Point>> AgvPoints = new Dictionary<string, List<Point>>();
public static void UploadAGVStatus(RobotStates robotStates)
{
try
{
if (robotStates != null && robotStates.robots != null)
{
List<AgvStatus> agvs = new List<AgvStatus>();
foreach (var item in robotStates.robots)
{
AgvStatus status = new AgvStatus();
status.elec = item.energyLevel.ToString();
status.name = item.robotCode;
foreach (var key in AgvPoints.Keys)
{
var find = AgvPoints[key].Find(s => s.X.Equals(item.positionX) && s.Y.Equals(item.positionY));
if (find != null)
{
status.loc = key;
break;
}
}
if (string.IsNullOrEmpty(status.loc))
{
status.loc = "WAREHOUSE";
}
}
SServerManager.UpdateAgvStatus(agvs);
}
}
catch (Exception ex)
{
LogUtil.error("UploadAGVStatus", ex);
}
}
/// <summary>
/// 检查机器人背篓是否是入库容器
/// </summary>
......
......@@ -40,6 +40,10 @@ namespace OnlineStore.DeviceLibrary
/// 根据料箱条码获取目的地信息
/// </summary>
private static string Addr_getTarget = "/service/store/agvBox/getTarget";
/// <summary>
/// AGV状态上报
/// </summary>
static string Addr_agvStatus = "/service/store/agvStatus/agvInfo";
private static string GetAddr(string addr, Dictionary<string, string> paramsMap)
{
......@@ -515,6 +519,38 @@ namespace OnlineStore.DeviceLibrary
return null;
}
#endregion
#region AGV状态上报
/// <summary>
/// AGV状态上报
/// </summary>
/// <param name="agvStatuses"></param>
/// <returns></returns>
public static bool UpdateAgvStatus(List<AgvStatus> agvStatuses)
{
try
{
Dictionary<string, string> queryStr = new Dictionary<string, string>();
//queryStr.Add("rfid", rfid);
string server = GetAddr(Addr_agvStatus, queryStr);
string json = HttpHelper.Post(server,"");
ServerData rtnData = JsonHelper.DeserializeJsonToObject<ServerData>(json);
if (rtnData != null && rtnData.code == 0)
{
return true;
}
}
catch (Exception ex)
{
LogUtil.error($"UpdateAgvStatus", ex);
}
return false;
}
#endregion
#region 未使用接口
//public static string GetTraySize(string deviceName, int robotIndex, string codeStr, out int outSize, out bool isNg)
//{
......@@ -943,6 +979,25 @@ namespace OnlineStore.DeviceLibrary
//}
#endregion
}
public class AgvStatus
{
/// <summary>
/// 小车名称
/// </summary>
public string name { get; set; }
/// <summary>
/// 小车电量
/// </summary>
public string elec { get; set; }
/// <summary>
/// 小车位置
/// </summary>
public string loc { get; set; }
/// <summary>
/// 错误消息
/// </summary>
public string message { get; set; }
}
public class OutTaskData
{
/// <summary>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!