Commit 30a616ce LN

入料机构代码

1 个父辈 5d42698f
正在显示 29 个修改的文件 包含 2929 行增加826 行删除
......@@ -100,6 +100,15 @@ namespace OnlineStore.Common
public static string PNList = "PNList";
public static string AutoInput { get; set; }
public static string AutoInput = "AutoInput";
public static string AInStoreInfo= "AInStoreInfo";
public static string AOutStoreInfo= "AOutStoreInfo";
public static string BInStoreInfo= "BInStoreInfo";
public static string BOutStoreInfo= "BOutStoreInfo";
public static string AShelfInfo = "AShelfInfo";
public static string BShelfInfo = "BShelfInfo";
}
}
类型,分类编号,说明,名称,属性值,设备名称,电器定义,目标速度,加速度,减速度,出力,距离,推压速度,脆盘目标速度,脆盘加速度,脆盘减速度,脆盘出力,脆盘距离,脆盘推压速度
CLAW,1,移栽D1_夹爪,CLAW_Input,0,COM13,,100,500,500,60,6,20,15,15,15,20,20,15
CLAW,1,入料机构夹爪,CLAW_Input,0,COM13,,100,500,500,60,6,20,15,15,15,20,20,15
PRO,0,当多久没操作时流水线休眠(秒),Sleep_MSeconds,600,,,,,,,,,,,,,,
PRO,0,气压检测信号关闭需要持续的时间,Airpressure_CheckSeconds,600,,,,,,,,,,,,,,
PRO,0,IO信号超时时间(秒),IOSingle_TimerOut,15,,,,,,,,,,,,,,
......
......@@ -48,15 +48,15 @@ namespace OnlineStore.DeviceLibrary
rmaxis.ClosePort();
}
}
public void Push(DeviceMoveInfo moveInfo , bool checkHasReel , string[] code )
//public void Push(DeviceMoveInfo moveInfo , bool checkHasReel , string[] code )
//{
// ClampPush(moveInfo, checkHasReel, code);
//}
public void Push(DeviceMoveInfo moveInfo = null, bool checkHasReel = true, params string[] code )
{
ClampPush(moveInfo, checkHasReel, code);
}
public void Push(DeviceMoveInfo moveInfo = null, bool checkHasReel = true, string code="")
{
ClampPush(moveInfo, checkHasReel, code);
}
public void ClampPush(DeviceMoveInfo moveInfo, bool checkHasReel, params string[] code)
private void ClampPush(DeviceMoveInfo moveInfo, bool checkHasReel, params string[] code)
{
bool iscrisp = StoreManager.IsCrispReel(code);
float distance = config.Distance;
......
......@@ -310,6 +310,7 @@ namespace OnlineStore.DeviceLibrary
public static bool HasRightCode(params string[] codes)
{
return true;
//640104 * 3331001202 * 210417624 * 600 * 0011
//分号分割后长度=4,L,E,B,R
try
......
using System;
using OnlineStore.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
......@@ -8,23 +9,102 @@ namespace OnlineStore.DeviceLibrary
{
public class BufferDataManager
{
private static InOutPosInfo aInStoreInfo=null;
private static InOutPosInfo aOutStoreInfo = null;
private static InOutPosInfo bInStoreInfo = null;
private static InOutPosInfo bOutStoreInfo = null;
/// <summary>
/// A进料上暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo AInStoreInfo = null;
public static InOutPosInfo AInStoreInfo
{
get { return aInStoreInfo; }
set
{
aInStoreInfo = value;
SaveData(Setting_Init.AInStoreInfo, value);
}
}
/// <summary>
/// A出料下暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo AOutStoreInfo = null;
public static InOutPosInfo AOutStoreInfo
{
get { return aOutStoreInfo; }
set
{
aOutStoreInfo = value;
SaveData(Setting_Init.AOutStoreInfo, value);
}
}
/// <summary>
/// B进料上暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo BInStoreInfo = null;
public static InOutPosInfo BInStoreInfo
{
get { return bInStoreInfo; }
set
{
bInStoreInfo = value;
SaveData(Setting_Init.BInStoreInfo, value);
}
}
/// <summary>
/// B出料下暂存区料盘信息,null时无料
/// </summary>
public static InOutPosInfo BOutStoreInfo = null;
public static InOutPosInfo BOutStoreInfo
{
get { return bOutStoreInfo; }
set
{
bOutStoreInfo = value;
SaveData(Setting_Init.BOutStoreInfo, value);
}
}
public static void InitData()
{
AInStoreInfo = LoadInoutPosInfo(Setting_Init.AInStoreInfo);
AOutStoreInfo = LoadInoutPosInfo(Setting_Init.AOutStoreInfo);
BInStoreInfo = LoadInoutPosInfo(Setting_Init.BInStoreInfo);
BOutStoreInfo = LoadInoutPosInfo(Setting_Init.BOutStoreInfo);
}
private static InOutPosInfo LoadInoutPosInfo(string configStr)
{
string saveData = ConfigAppSettings.GetValue(configStr);
if (!String.IsNullOrEmpty(saveData))
{
InOutPosInfo ainPos = JsonHelper.DeserializeJsonToObject<InOutPosInfo>(saveData);
if (ainPos != null && (!ainPos.barcode.Equals("")) && (!ainPos.PosId.Equals("")))
{
return ainPos;
}
}
return null;
}
public static T LoadData<T>(string configStr)where T:class
{
string saveData = ConfigAppSettings.GetValue(configStr);
if (!String.IsNullOrEmpty(saveData))
{
T data = JsonHelper.DeserializeJsonToObject<T>(saveData);
return data;
}
return null;
}
public static void SaveData<T>(string configStr, T value) where T : class
{
string jsonData = "";
if (!(value == null))
{
JsonHelper.SerializeObject(value);
}
ConfigAppSettings.SaveValue(configStr, jsonData);
LogUtil.info($"保存配置:[{ configStr}]=[{jsonData }]");
}
}
}
......@@ -433,7 +433,7 @@ namespace OnlineStore.DeviceLibrary
// 参数:cids: 多个 cid
//code: 条码内容
Dictionary<string, string> paramMap = new Dictionary<string, string>();
//paramMap.Add("cids", LineServer.GetAllCID(feedEquipId));
paramMap.Add("cids", StoreManager.Config.CID);
paramMap.Add("code", codeStr);
paramMap.Add(ParamDefine.rfid, rfid);
......@@ -487,14 +487,14 @@ namespace OnlineStore.DeviceLibrary
result.Result = serverResult.result;
if (!serverResult.pos.Equals(""))
{
// 仓位命名: 4D01020304
//第1和第2位表示楼层(4D)
//第3和第4位表示料仓(01) 01 - 18为流水线料仓, 19 - 24为包装料仓
//第5和第6位表示列(02)
//第7和第8位表示行(03)
//第9和第10位表示隔板位置(04)
//例如: 4D12010124 表示4楼12号料仓第1列第1行架子上的第24个隔板位置
//4D19050208 表示4楼19号料仓(包装料仓)第5列第2行架子上的第8个隔板位置
// 库位号格式:
//例:05AA03040102
//05:第1和第2位表示料仓编号,01 - 08
//AA:第3和第4位存储机构A面或B面,AA或者BB
//03:第5和第6位表示抽屉在第几行
//04:第7和第8位表示抽屉在第几列
//01:第9和第10位表示在抽屉中的第几行
//02:第11和第12位表示在抽屉中的第几列
string posId = serverResult.pos;
//根据库位号查找移栽
......
......@@ -97,12 +97,13 @@ namespace OnlineStore.DeviceLibrary
string inputConfigPath = appPath + ConfigAppSettings.GetValue(Setting_Init.ConfigPath_Input);
InputEquip_Config inputConfig = CSVConfigReader.LoadInputConfig(1, DeviceType.InputEquip, inputConfigPath);
inputConfig.CID = CID;
inputConfig.SetIO(1);
allConfigMap.Add(1, inputConfig);
string boxPath = appPath + ConfigAppSettings.GetValue(Setting_Init.ConfigPath_Box);
BoxEquip_Config boxConfig = CSVConfigReader.LoadBoxConfig(2, DeviceType.BoxEquip, boxPath);
boxConfig.CID = CID;
boxConfig.SetIO(2);
allConfigMap.Add(2, boxConfig);
......
......@@ -278,6 +278,16 @@ namespace OnlineStore.DeviceLibrary
wait.IsEnd = false;
return wait;
}
public static WaitResultInfo WaitAxisOrg(ConfigMoveAxis axis, IO_VALUE value)
{
WaitResultInfo wait = new WaitResultInfo();
wait.CanWhileMoveCount = 0;
wait.WaitType = WaitEnum.W006_AxisOrg;
wait.AxisInfo = axis;
wait.IoValue = value;
wait.IsEnd = false;
return wait;
}
public static WaitResultInfo WaitTime(int MScends)
{
......
......@@ -106,7 +106,6 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
ResetMove =13,
}
public enum StepEnum
{
Wait = 0,
......@@ -154,12 +153,12 @@ namespace OnlineStore.DeviceLibrary
#endregion
#region 入料模块取 1100 开始
#region 入料机构入 1100 开始
/// <summary>
/// 入库料串取料:升降轴到达P1
/// </summary>
II01_UpdownToP1= 1101,
II01_UpdownToP1 = 1101,
/// <summary>
/// 入库料串取料A:取料旋转轴SVD13运动到P2(A料口取料点)
......@@ -195,14 +194,20 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
II10_WaitAxisCheck,
/// <summary>
/// 入库料串取料:等待测高完成
/// </summary>
II11_WaitHeight,
/// <summary>
/// 入库料串取料:测宽度,记录条码高度宽度,开始下一盘预扫码
/// </summary>
II11_SaveSize,
II12_SaveSize,
/// <summary>
/// 入库料串取料:获取库位号
/// </summary>
II12_GetPosId,
II13_GetPosId,
#region 入料->A侧上暂存区 1140
......@@ -244,27 +249,27 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
II61_WaitNoReel,
/// <summary>
/// 入料->B侧:取料升降轴 到P8(B上暂存区放料高点)
/// 入料->B侧:取料升降轴 到P10(B上暂存区放料高点)
/// </summary>
II62_UpdownToP8,
II62_UpdownToP10,
/// <summary>
/// 入料->B侧:取料旋转轴 到P5 (B上暂存区放料点)
/// </summary>
II63_MiddleToP5,
/// <summary>
/// 入料->B侧:取料升降轴 到P9 (B上暂存区放料低点)
/// 入料->B侧:取料升降轴 到P11 (B上暂存区放料低点)
/// </summary>
II64_UpdownToP9,
II64_UpdownToP11,
/// <summary>
/// 入料->B侧:电卡爪放松
/// </summary>
II65_ClampRelax,
/// <summary>
/// 入料->B侧:取料升降轴 到P8 (B上暂存区放料高点)
/// 入料->B侧:取料升降轴 到P10 (B上暂存区放料高点)
/// </summary>
II66_UpdownToP8,
II66_UpdownToP10,
/// <summary>
/// 入料->B侧:取料旋转轴 到P1(待机点)
/// </summary>
......@@ -303,7 +308,128 @@ namespace OnlineStore.DeviceLibrary
#endregion
#region 入料模块批量轴开始复位 1500 开始
#region 入料机构出料 1200 开始
#region 出库A侧取料
/// <summary>
/// A侧出料:等待 X54(A出料下暂存区料盘检测)=1
/// </summary>
IO01_ReelCheck = 1201,
/// <summary>
/// A侧出料:取料升降轴SVD12 运动到P6(A下暂存区取料高点)
/// </summary>
IO02_UpdownToP6,
/// <summary>
/// A侧出料:取料旋转轴SVD13 运动到P7(A下暂存区取料点)
/// </summary>
IO03_MiddleToP7,
/// <summary>
/// A侧出料:取料升降轴SVD12 运动到P7(A下暂存区取料低点)
/// </summary>
IO04_UpdownToP7,
/// <summary>
/// A侧出料:电卡爪夹紧 判断到位
/// </summary>
IO05_ClampWork,
/// <summary>
/// A侧出料:取料升降轴SVD12 运动到P6(A下暂存区取料高点)
/// </summary>
IO06_UpdownToP6,
#endregion
#region 出库B侧取料
/// <summary>
/// B侧出料:等待 X56(A出料下暂存区料盘检测)=1
/// </summary>
IO11_ReelCheck = 1211,
/// <summary>
/// B侧出料:取料升降轴SVD12 运动到P12(B下暂存区取料高点)
/// </summary>
IO12_UpdownToP12,
/// <summary>
/// B侧出料:取料旋转轴SVD13 运动到P8(B下暂存区取料点)
/// </summary>
IO13_MiddleToP8,
/// <summary>
/// B侧出料:取料升降轴SVD12 运动到P13(B下暂存区取料低点)
/// </summary>
IO14_UpdownToP13,
/// <summary>
/// B侧出料:电卡爪夹紧 判断到位
/// </summary>
IO15_ClampWork,
/// <summary>
/// B侧出料:取料升降轴SVD12 运动到P12(B下暂存区取料高点)
/// </summary>
IO16_UpdownToP6,
#endregion
#region 出库到料串
/// <summary>
/// 出库:判断到那个料串,等待料串准备完成
/// </summary>
IO21_WaitShelfReady=1221,
/// <summary>
/// 出库->A料串:批量轴运动到位
/// </summary>
IO22_BatchAxisReady ,
/// <summary>
/// 出库->A料串:取料旋转轴SVD13 运动到P2(A料口取料点)
/// </summary>
IO23_MiddleToP2,
/// <summary>
/// 出库->A料串:取料升降轴SVD12 运动到P2(A料口取料点)
/// </summary>
IO24_UpdownToP2,
/// <summary>
/// 出库->B料串:批量轴运动到位
/// </summary>
IO26_BatchAxisReady,
/// <summary>
/// 出库->B料串:取料旋转轴SVD13 运动到P3(B料口取料点)
/// </summary>
IO27_MiddleToP3,
/// <summary>
/// 出库->B料串:取料升降轴SVD12 运动到P3(B料口取料点)
/// </summary>
IO28_UpdownToP3,
/// <summary>
/// 出库 :电卡爪放松 判断到位
/// </summary>
IO31_ClampRelax,
/// <summary>
/// 出库 :取料升降轴SVD12 运动到P1(待机点)
/// </summary>
IO32_UpdownToP1,
/// <summary>
/// 出库 :取料旋转轴SVD13 运动到P1(待机点)
/// </summary>
IO33_MiddleToP1,
#endregion
#endregion
#region 料串批量轴复位 1500 开始
/// <summary>
/// 入料模块复位:阻挡气缸下降
......@@ -335,7 +461,7 @@ namespace OnlineStore.DeviceLibrary
#endregion
#region 入料模块批量轴开始入料 1600 开始
#region 料串批量轴入料 1600 开始
/// <summary>
/// 料串入料:准备取料
/// </summary>
......@@ -389,6 +515,14 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
IB13_SaveHight,
/// <summary>
/// 入料结束:入料完成,判断是否直接出库
/// </summary>
IB20_InStoreEnd,
/// <summary>
/// 入料结束:入料完成,批量轴下降到P1
/// </summary>
......@@ -403,7 +537,74 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
IB23_ShelfOut,
#endregion
#region 料串批量轴出料 1700 开始
///// <summary>
///// 料串出库:准备出库
///// </summary>
//IS01_Wait = 1701,
///// <summary>
///// 料串出库:批量轴到待机点P1, 阻挡气缸下降
///// </summary>
//IS02_BatchAxisToP1,
///// <summary>
///// 料串出库:链条开始转动
///// </summary>
//IS04_LineStart,
///// <summary>
///// 料串出库:阻挡气缸上升
///// </summary>
//IS05_StopUp,
///// <summary>
///// 料串出库:等待料串稳定
///// </summary>
//IS06_WaitTime,
/// <summary>
/// 料串出库:上料轴开始慢速上升到P2点,等待检测到料盘
/// </summary>
IS07_AxisUpMove,
/// <summary>
/// 料串出库:料串准备完成,可以放料
/// </summary>
IS11_ShelfReady,
/// <summary>
/// 料串出库:料串下降指定的高度(料盘高度X系数)
/// </summary>
IS12_AxisDown,
/// <summary>
/// 料串出库:等待放料结束
/// </summary>
IS13_WaitReel,
/// <summary>
/// 料串出库:放料结束,
/// 如果当前位置<=P1到下个步骤
/// 否则直接到IS11_ShelfReady
/// </summary>
IS14_ReelOK,
/// <summary>
/// 料串出库:如果当前位置<=P1,缓慢上升判断料串是否满,若已经满了,直接离开.
/// </summary>
IS15_AxisUpMove,
/// <summary>
/// 料串出库:入料完成,批量轴下降到P1
/// </summary>
IS21_BatchToP1,
/// <summary>
/// 料串出库:阻挡气缸下降
/// </summary>
IS22_StopDown,
/// <summary>
/// 料串出库:通知agv来拉料串
/// </summary>
IS23_ShelfOut,
#endregion
}
/// <summary>
/// 料仓运动状态(当料仓状态=busy时,才会有此运动状态)
/// </summary>
......
......@@ -75,7 +75,7 @@ namespace OnlineStore.DeviceLibrary
this.singleOut = singleOut;
}
public static InOutPosInfo NewNgPos(string barcode, string posId, int platew , int plateh, string ngMsg)
public static InOutPosInfo NewNgPos(string barcode, string posId, int platew, int plateh, string ngMsg)
{
InOutPosInfo inOut = new InOutPosInfo(barcode, posId, platew, plateh);
inOut.IsNG = true;
......@@ -132,6 +132,24 @@ namespace OnlineStore.DeviceLibrary
public bool IsNG { get; set; } = false;
public string NgMsg { get; set; } = "";
public int GetPosType()
{
int startP = 0;
if (String.IsNullOrEmpty(PosId))
{
return 0;
}
if (PosId.Contains("AA"))
{
startP = 1;
}
else if (PosId.Contains("BB"))
{
startP = 2;
}
return startP;
}
}
/// <summary>
/// 出入库位置信息
......
......@@ -717,5 +717,12 @@ namespace OnlineStore.DeviceLibrary
}
return Color.White;
}
protected void MoveTimeOut(DeviceMoveInfo move, string msg)
{
WarnMsg = move.Name + "[" + move.MoveStep + "] " + msg + " [" + FormUtil.GetSpanStr(move.StepSpan()) + "]";
int logId = DeviceID * 10000 + (int)move.MoveStep;
LogUtil.error(WarnMsg, logId);
Alarm(AlarmType.IoSingleTimeOut);
}
}
}
......@@ -4,6 +4,7 @@ using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
......@@ -12,13 +13,15 @@ namespace OnlineStore.DeviceLibrary
{
public partial class BatchMoveBean
{
public string Name = "入料";
public bool ShelfAutoOut = true;
public bool ShelfNeedLeave = false;
public string Name = "料口";
public AxisBean BatchAxis = null;
public int EquipType = 1;//1=左侧A,2=右侧B
public DeviceMoveInfo MoveInfo;
public string WarnMsg = "";
private string CameraName = "";
private string AgvName = "";
public string CameraName = "";
public string AgvName = "";
private string RfidIP = "";
public int BatchAxisP1 = 0;
public int BatchAxisP2 = 0;
......@@ -37,6 +40,7 @@ namespace OnlineStore.DeviceLibrary
string ioAdd = "_A";
if (EquipType.Equals(1))
{
Name = "A料口 " ;
this.BatchAxisP1 = config.BatchAxisP1_A;
this.BatchAxisP2 = config.BatchAxisP2_A;
ioAdd = "_A";
......@@ -46,6 +50,7 @@ namespace OnlineStore.DeviceLibrary
}
else
{
Name = "B料口 " ;
this.BatchAxisP1 = config.BatchAxisP1_B;
this.BatchAxisP2 = config.BatchAxisP2_B;
ioAdd = "_B";
......@@ -54,9 +59,9 @@ namespace OnlineStore.DeviceLibrary
this.RfidIP = config.PRO_RFIP_B;
}
Name = "入料 " + ioAdd;
MoveInfo = new DeviceMoveInfo(Name);
IO_MAxis_Check = IO_MAxis_Check + ioAdd;
IO_ReelCheck = IO_ReelCheck + ioAdd;
IO_LineIn_Check = IO_LineIn_Check + ioAdd;
IO_LineEnd_Check = IO_LineEnd_Check + ioAdd;
IO_Shelf_StopUp = IO_Shelf_StopUp + ioAdd;
......@@ -64,7 +69,7 @@ namespace OnlineStore.DeviceLibrary
IO_LineStart = IO_LineStart + ioAdd;
IO_LineBack = IO_LineBack + ioAdd;
DIList.Add(IO_MAxis_Check);
DIList.Add(IO_ReelCheck);
DIList.Add(IO_LineIn_Check);
DIList.Add(IO_LineEnd_Check);
DIList.Add(IO_Shelf_StopUp);
......@@ -86,26 +91,28 @@ namespace OnlineStore.DeviceLibrary
{
if (Robot.AutoInput && Robot.IOValue(IO_LineIn_Check).Equals(IO_VALUE.HIGH))
{
StartInstore(new InOutParam ());
StartInstore(new InOutParam());
}
}
}
else if (MoveInfo.MoveType.Equals(MoveType.Reset))
{
ResetProcess();
}else if (MoveInfo.MoveType.Equals(MoveType.InStore))
}
else if (MoveInfo.MoveType.Equals(MoveType.InStore))
{
}else if (MoveInfo.MoveType.Equals(MoveType.OutStore))
InstoreProcess();
}
else if (MoveInfo.MoveType.Equals(MoveType.OutStore))
{
OutstoreProcess();
}
//判断是否无料串
if (Robot.IOValue(IO_LineIn_Check).Equals(IO_VALUE.LOW)
&& Robot.IOValue(IO_LineEnd_Check).Equals(IO_VALUE.LOW)
&& Robot.CylinderIsOk(IO_Shelf_StopUp, IO_Shelf_StopDown) )
&& Robot.CylinderIsOk(IO_Shelf_StopUp, IO_Shelf_StopDown))
{
if (StoreManager.checkWatch(shelfWatch, 10000, true))
{
......@@ -228,7 +235,7 @@ namespace OnlineStore.DeviceLibrary
#region 左右入料口共有IO
//伺服料盘检测
private string IO_MAxis_Check = "MAxis_Check";
private string IO_ReelCheck = "ReelCheck";
//料串前端检测
private string IO_LineIn_Check = "LineIn_Check";
//料串到位检测
......@@ -475,10 +482,34 @@ namespace OnlineStore.DeviceLibrary
}
/// <summary>
/// 料串准备好出库
/// </summary>
/// <returns></returns>
internal bool ShelfReadyOut(InOutPosInfo posInfo, bool SendShelfOut)
{
if (MoveInfo.MoveType.Equals(MoveType.OutStore) && MoveInfo.IsStep(StepEnum.IS11_ShelfReady))
{
//TODO 验证料串是否同一个,不是同一个直接送出料串
if (String.IsNullOrEmpty(CurrShelf.XuniRfid))
{
return true;
}
else if (posInfo.rfid.Equals(CurrShelf.XuniRfid))
{
return true;
}
else if (SendShelfOut)
{
SendOutShelfLeave("");
}
}
return false;
}
#region 提升轴匀速上升处理
public bool LastMoveIsTest = true;
public void BatchAxisToP2(bool isFirstMove = true, bool isWait = true, bool IsTest = false)
{
int targetP2 = BatchAxisP2;
......@@ -508,7 +539,7 @@ namespace OnlineStore.DeviceLibrary
BatchAxis.Config.TargetPosition = targetP2;
BatchAxis.AbsMove(null, targetP2, targetSpeed);
//开始检测信号
BatchAxis.BatchAxisStartCheck(IO_MAxis_Check, IO_VALUE.HIGH);
BatchAxis.BatchAxisStartCheck(IO_ReelCheck, IO_VALUE.HIGH);
LastMoveIsTest = IsTest;
}
#endregion
......@@ -518,12 +549,12 @@ namespace OnlineStore.DeviceLibrary
if (MoveInfo.MoveType.Equals(MoveType.OutStore))
{
string code = MoveInfo.MoveParam != null ? MoveInfo.MoveParam.PosInfo.ToStr() : "";
return "料串:" + CurrShelf .ToStr()+ ", 出料:" + " " + MoveInfo.MoveStep + " \r\n" + code + "\n";
return CurrShelf.ToStr() + ", 出料:" + " " + MoveInfo.MoveStep + " \r\n" + code + "\n";
}
else if (MoveInfo.MoveType.Equals(MoveType.InStore))
{
string code = MoveInfo.MoveParam != null ? MoveInfo.MoveParam.PosInfo.ToStr() : "";
return "料串:" + CurrShelf.ToStr() + ", 入料:" + " " + MoveInfo.MoveStep + " " + code + "\n";
return CurrShelf.ToStr() + ", 入料:" + " " + MoveInfo.MoveStep + " \r\n" + code + "\n";
}
else
{
......@@ -533,11 +564,34 @@ namespace OnlineStore.DeviceLibrary
}
else
{
return "料串:" + CurrShelf.ShelfRfid;
return CurrShelf.ToStr();
}
}
}
public Color GetShowColor()
{
Color color = Robot.GetShowColor();
if (Robot.runStatus > RunStatus.Wait)
{
if (alarmType.Equals(AlarmType.IoSingleTimeOut))
{
color = Color.LightCoral;
}
else if (alarmType.Equals(AlarmType.None).Equals(false))
{
color = Color.Red;
}
else if (MoveInfo.MoveType.Equals(MoveType.InStore) || MoveInfo.MoveType.Equals(MoveType.OutStore))
{
color = Color.LimeGreen;
}
}
return color;
}
protected void WorkLog(string msg)
{
LogUtil.info(Name + " [" + MoveInfo.MoveStep + "]" + msg);
......
......@@ -12,8 +12,8 @@ namespace OnlineStore.DeviceLibrary
{
partial class BatchMoveBean
{
#region 料串入料处理
public ShelfInfo CurrShelf = new ShelfInfo();
#region 入库
private List<string> LastCodeList = new List<string>();
private List<string> NextCodeList = new List<string>();
......@@ -33,6 +33,13 @@ namespace OnlineStore.DeviceLibrary
//WorkLog("料串入料 :等待AGV来取空料串1");
return false; ;
}
UpdateShelf(1);
if (CurrShelf.ShelfState.Equals(3))
{
bool agvcallresult = AgvClient.NeedLeave(AgvName, CurrShelf.ShelfRfid, ClientLevel.High);
LogUtil.info(Name+ "StartInstore 失败,料串" + CurrShelf.ToStr()+ "需要离开,NeedLeave:" + AgvName + "," + CurrShelf.ShelfRfid + ",agvcallresult:" + agvcallresult.ToString());
return false ;
}
if (Robot.IOValue(IO_LineEnd_Check).Equals(IO_VALUE.HIGH) && Robot.IOValue(IO_LineIn_Check).Equals(IO_VALUE.HIGH))
{
MoveInfo.NewMove(MoveType.InStore);
......@@ -54,25 +61,18 @@ namespace OnlineStore.DeviceLibrary
}
return true;
}
private bool UpdateShelfId(int state = 0)
{
try
{
//判断料串的编码是否正确
RFIDData rfidD = RFIDManager.ReadRFID(RfidIP);
CurrShelf = new ShelfInfo(rfidD.StrData, state);
LogUtil.info(Name + "当前料串信息:" + CurrShelf.ToStr());
//TODO 需要保存到配置文件,重启后读取
}
catch (Exception ex)
internal InOutParam GetInstoreParam()
{
LogUtil.error(Name + "UpdateShelfId出错:", ex);
string code = MoveInfo.MoveParam.PosInfo.barcode;
InOutPosInfo posInfo = new InOutPosInfo(code, "");
posInfo.NgMsg = MoveInfo.MoveParam.PosInfo.NgMsg;
posInfo.IsNG = MoveInfo.MoveParam.PosInfo.IsNG;
posInfo.rfid = MoveInfo.MoveParam.PosInfo.rfid;
InOutParam param = new InOutParam(posInfo);
param.ShelfType = 1;
return param;
}
return true;
}
private void IB05_StopUp()
{
......@@ -102,7 +102,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.ShelfNoTray = false;
BatchAxisToP2(true);
}
protected void WorkingProcess()
protected void InstoreProcess()
{
if (MoveInfo.IsInWait)
{
......@@ -127,10 +127,6 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(StepEnum.IB04_LineStart))
{
//if (AgvClient.GetAction(AgvName) == ClientAction.NeedLeave || AgvClient.GetAction(AgvName) == ClientAction.MayLeave) {
// WorkLog("料串入料 :等待AGV来取空料串0");
// //return;
//}
if (Robot.IOValue(IO_LineIn_Check).Equals(IO_VALUE.HIGH) && Robot.IOValue(IO_LineEnd_Check).Equals(IO_VALUE.HIGH))
{
IB05_StopUp();
......@@ -154,16 +150,24 @@ namespace OnlineStore.DeviceLibrary
LineStop();
if (Robot.IOValue(IO_LineIn_Check).Equals(IO_VALUE.HIGH) && Robot.IOValue(IO_LineEnd_Check).Equals(IO_VALUE.HIGH))
{
UpdateShelfId(1);
if (CurrShelf.ShelfState.Equals(2))
{
SendInShelfLeave(" 料串【" + CurrShelf.ToStr() + "】为出库中料串,不需要入库 ");
}
else
{
UpdateShelf(1);
if (CurrShelf.ShelfRfid.EndsWith("00"))
{
SendShelfOut(" 料串号【" + CurrShelf.ShelfRfid + "】无效 ");
SendInShelfLeave(" 料串号【" + CurrShelf.ShelfRfid + "】无效 ");
}
else
{
IB07_AxisUpMove();
}
}
}
else
{
LineStop();
......@@ -184,9 +188,10 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(StepEnum.IB09_ScanCode))
{
WorkLog("IB09_ScanCode");
MoveInfo.MoveParam = new InOutParam(new InOutPosInfo("",""));
string code= CodeManager.ProcessCode(LastCodeList);
MoveInfo.MoveParam = new InOutParam(new InOutPosInfo("", ""));
string code = CodeManager.ProcessCode(LastCodeList);
MoveInfo.MoveParam.PosInfo.barcode = code;
MoveInfo.MoveParam.PosInfo.rfid = CurrShelf.ShelfRfid;
if (String.IsNullOrEmpty(code))
{
MoveInfo.MoveParam.PosInfo.IsNG = true;
......@@ -203,7 +208,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StepEnum.IB12_BatchAxisToP2);
WorkLog("料串入料 :料盘已拿走,批量轴到P2,测盘高 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
BatchAxisToP2 ();
BatchAxisToP2();
}
else if (MoveInfo.IsStep(StepEnum.IB12_BatchAxisToP2))
{
......@@ -232,7 +237,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.OneWaitCanEndStep = true;
bool agvcallresult = AgvClient.NeedLeave(AgvName, CurrShelf.ShelfRfid, ClientLevel.High);
WorkLog("上料完成 :通知agv来取料串,等待料串离开AgvName:" + AgvName + ",CurrShelfId:" + CurrShelf.ShelfRfid + ",agvcallresult:"+ agvcallresult.ToString());
WorkLog("上料完成 :通知agv来取料串,等待料串离开AgvName:" + AgvName + ",CurrShelfId:" + CurrShelf.ShelfRfid + ",agvcallresult:" + agvcallresult.ToString());
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(60000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_LineIn_Check, IO_VALUE.LOW));
}
......@@ -247,21 +252,6 @@ namespace OnlineStore.DeviceLibrary
#endregion
}
public void GetTrayOK()
{
if (MoveInfo.MoveType.Equals(MoveType.InStore))
{
MoveInfo.NextMoveStep(StepEnum.IB11_WaitReelLeave);
WorkLog("当前料盘已离开,清理高度,准备开始测高");
LastHeight = 0;
}
else
{
LogUtil.error(Name + "当前状态:" + MoveInfo.MoveType + ",GetTrayOK暂不处理");
}
}
private void IB09_ScanCode()
{
MoveInfo.NextMoveStep(StepEnum.IB09_ScanCode);
......@@ -291,7 +281,7 @@ namespace OnlineStore.DeviceLibrary
{
Robot.IOMove(IO_Type.CameraLed, IO_VALUE.HIGH);
LastCodeList = CodeManager.CameraScan( CameraName, Name );
LastCodeList = CodeManager.CameraScan(CameraName, Name);
if (LastCodeList.Count <= 0)
{
LastCodeList = CodeManager.CameraScan(CameraName, Name);
......@@ -311,10 +301,11 @@ namespace OnlineStore.DeviceLibrary
}
}
private void CheckHasTray()
{
WarnMsg = "";
if (Robot.IOValue(IO_MAxis_Check).Equals(IO_VALUE.HIGH) && MoveInfo.ShelfNoTray.Equals(false))
if (Robot.IOValue(IO_ReelCheck).Equals(IO_VALUE.HIGH) && MoveInfo.ShelfNoTray.Equals(false))
{
IB09_ScanCode();
}
......@@ -328,7 +319,7 @@ namespace OnlineStore.DeviceLibrary
if (chaz > BatchAxis.Config.CanErrorCountMax)
{
MoveInfo.NextMoveStep(StepEnum.IB07_AxisUpMove);
WorkLog("料串入料 :CheckHasTray:上料轴开始慢速上升到P2点,等待检测到料盘。currP"+ currP.ToString());
WorkLog("料串入料 :CheckHasTray:上料轴开始慢速上升到P2点,等待检测到料盘。currP" + currP.ToString());
MoveInfo.ShelfNoTray = false;
BatchAxisToP2();
return;
......@@ -336,19 +327,31 @@ namespace OnlineStore.DeviceLibrary
}
//无料盘
MoveInfo.ShelfNoTray = true;
SendShelfOut(" 未检测到料盘 ");
SendInShelfLeave(" 未检测到料盘 ");
}
}
private void SendInShelfLeave(string msg = "")
{
//入料完成直接开始出库
if (ShelfAutoOut || CurrShelf.ShelfState.Equals(2))
{
MoveInfo.NextMoveStep(StepEnum.IB20_InStoreEnd);
StartOutstore();
}
private void SendShelfOut(string msg = "")
else
{
UpdateShelf(3);
MoveInfo.NextMoveStep(StepEnum.IB21_BatchToP1);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
WorkLog("送出料串 :" + msg + ",提升伺服到P1点");
BatchAxis.SuddenStop( );
BatchAxis.SuddenStop();
BatchAxis.AbsMove(MoveInfo, BatchAxisP1, Robot.Config.BatchAxis_P1Speed);
}
}
#endregion
#region 获取料盘高度
public int StartMovePosition = 0;
public int EndMovePosition = 0;
......@@ -403,13 +406,177 @@ namespace OnlineStore.DeviceLibrary
#endregion
#region 出库
/// <summary>
/// 入库完成的料串直接开始出库
/// </summary>
/// <returns></returns>
public bool StartOutstore()
{
if (MoveInfo.MoveType.Equals(MoveType.InStore) && MoveInfo.IsStep(StepEnum.IB20_InStoreEnd))
{
MoveInfo.NewMove(MoveType.OutStore);
//如果已经在P2位置 或者伺服检测信号亮,直接开始
if (BatchAxis.IsInPosition(BatchAxisP2) || Robot.IOValue(IO_ReelCheck).Equals(IO_VALUE.LOW))
{
ShelfToReady();
}
else
{
MoveInfo.NextMoveStep(StepEnum.IS07_AxisUpMove);
WorkLog("料串入库完成,料串上升到P2或检测到料盘");
BatchAxisToP2();
}
}
return true;
}
protected void OutstoreProcess()
{
if (MoveInfo.IsInWait)
{
CheckWait(MoveInfo);
}
if (MoveInfo.IsInWait)
{
return;
}
if (MoveInfo.IsStep(StepEnum.IS07_AxisUpMove))
{
CheckShelfIsFull();
}
else if (MoveInfo.IsStep(StepEnum.IS11_ShelfReady))
{
if (ShelfNeedLeave)
{
SendOutShelfLeave("手动送料串离开");
}
else
{
MoveInfo.NextMoveStep(StepEnum.IS11_ShelfReady);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
}
}
else if (MoveInfo.IsStep(StepEnum.IS12_AxisDown))
{
MoveInfo.NextMoveStep(StepEnum.IS13_WaitReel);
WorkLog($"出库{MoveInfo.SLog} 伺服下降完成,等待放料盘");
}
else if (MoveInfo.IsStep(StepEnum.IS13_WaitReel))
{
}
else if (MoveInfo.IsStep(StepEnum.IS14_ReelOK))
{
}
#region 送料串离开
else if (MoveInfo.IsStep(StepEnum.IS21_BatchToP1))
{
MoveInfo.NextMoveStep(StepEnum.IB22_StopDown);
WorkLog("送出出库料串 :阻挡气缸下降");
StopDown(MoveInfo);
}
else if (MoveInfo.IsStep(StepEnum.IB22_StopDown))
{
MoveInfo.NextMoveStep(StepEnum.IS23_ShelfOut);
MoveInfo.TimeOutSeconds = 40;
MoveInfo.OneWaitCanEndStep = true;
bool agvcallresult = AgvClient.NeedLeave(AgvName, CurrShelf.ShelfRfid, ClientLevel.High);
WorkLog("送出出库料串 :通知agv来取料串,等待料串离开AgvName:" + AgvName + ",CurrShelfId:" + CurrShelf.ShelfRfid + ",agvcallresult:" + agvcallresult.ToString());
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(60000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_LineIn_Check, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(StepEnum.IS23_ShelfOut))
{
WarnMsg = "";
alarmType = AlarmType.None;
WorkLog("上料结束");
MoveInfo.EndMove();
}
#endregion
}
internal void NewReelOut(InOutPosInfo posInfo,string xnRfid="")
{
UpdateShelf(2, xnRfid);
MoveInfo.NextMoveStep(StepEnum.IS12_AxisDown);
MoveInfo.MoveParam.PosInfo = posInfo;
int currPositon = BatchAxis.GetAclPosition();
int downValue = Robot.Config.Height_ChangeValue * (posInfo.PlateH + 2);
int batchTP = currPositon - downValue;
if (batchTP <= BatchAxisP1)
{
batchTP = BatchAxisP1;
}
WorkLog($"出库{MoveInfo.SLog}新料盘:{posInfo.ToStr()},提升轴下降{posInfo.PlateH + 2}mm,目标位置{batchTP}");
BatchAxis.AbsMove(MoveInfo, batchTP, Robot.Config.BatchAxis_P1Speed);
}
internal void ReelPutOk()
{
MoveInfo.NextMoveStep(StepEnum.IS14_ReelOK);
WorkLog($"出库{MoveInfo.SLog} 放料完成");
CheckShelfIsFull();
}
private void CheckShelfIsFull()
{
int currPositon = BatchAxis.GetAclPosition();
int nextP = currPositon - Robot.Config.Height_ChangeValue * (8 + 2);
if (nextP <= BatchAxisP1)
{
if (Robot.IOValue(IO_ReelCheck).Equals(IO_VALUE.HIGH))
{
SendOutShelfLeave("料串出满需离开");
}
else if (MoveInfo.IsStep(StepEnum.IB07_AxisUpMove))
{
SendOutShelfLeave("料串出满需离开");
}
else
{
MoveInfo.NextMoveStep(StepEnum.IS07_AxisUpMove);
WorkLog("料串入库完成,料串上升到P2或检测到料盘");
BatchAxisToP2();
}
}
else
{
ShelfToReady();
}
}
private void SendOutShelfLeave(string log)
{
MoveInfo.NewMove(MoveType.OutStore);
MoveInfo.NextMoveStep(StepEnum.IS21_BatchToP1);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
WorkLog($"送出料串{MoveInfo.SLog} :" + log + ",提升伺服到P1点");
UpdateShelf(3);
BatchAxis.SuddenStop();
BatchAxis.AbsMove(MoveInfo, BatchAxisP1, Robot.Config.BatchAxis_P1Speed);
}
private void ShelfToReady()
{
UpdateShelf(2);
MoveInfo.NextMoveStep(StepEnum.IS11_ShelfReady);
WorkLog($"出库{MoveInfo.SLog}料串{CurrShelf.ToStr()}准备完成");
ShelfNeedLeave = false;
}
#endregion
#region AGV 处理
internal bool ProcessShelfOut = false;
internal bool ProcessShelfEnter = false;
internal void AgvReady(string nodeId, string rfid, ClientAction clientaction)
{
if (clientaction== ClientAction.MayLeave)
if (clientaction == ClientAction.MayLeave)
{
ShelfOutProcess(nodeId, rfid);
}
......@@ -422,7 +589,7 @@ namespace OnlineStore.DeviceLibrary
{
Task.Factory.StartNew(delegate
{
CurrShelf = new ShelfInfo();
UpdateShelf();
string logName = Name + "料串 " + rfid + " [AGV->" + AgvName + "] ";
try
{
......@@ -528,7 +695,7 @@ namespace OnlineStore.DeviceLibrary
});
ProcessShelfOut = false;
LogUtil.info(logName + "结束,停止转动,清空料串[" + CurrShelf.ShelfRfid + "] ");
CurrShelf = new ShelfInfo();
UpdateShelf();
}
else
{
......@@ -559,34 +726,98 @@ namespace OnlineStore.DeviceLibrary
#endregion
public void GetTrayOK()
{
if (MoveInfo.MoveType.Equals(MoveType.InStore))
{
MoveInfo.NextMoveStep(StepEnum.IB11_WaitReelLeave);
WorkLog("当前料盘已离开,清理高度,准备开始测高");
LastHeight = 0;
}
else
{
LogUtil.error(Name + "当前状态:" + MoveInfo.MoveType + ",GetTrayOK暂不处理");
}
}
public class ShelfInfo {
private bool isFastLoad = false;
private bool UpdateShelf(int state = 0, string xnRfid = "")
{
try
{
string configStr = "";
if (EquipType.Equals(1))
{
configStr = Setting_Init.AShelfInfo;
}
else
{
configStr = Setting_Init.BShelfInfo;
}
if (state.Equals(0))
{
CurrShelf = new ShelfInfo();
}
else
{
if (isFastLoad)
{
CurrShelf = BufferDataManager.LoadData<ShelfInfo>(configStr);
isFastLoad = true;
LogUtil.info(Name + "当前料串信息:" + CurrShelf.ToStr());
return false;
}
else
{
RFIDData rfidD = RFIDManager.ReadRFID(RfidIP);
CurrShelf = new ShelfInfo(rfidD.StrData, state, xnRfid);
BufferDataManager.SaveData<ShelfInfo>(configStr, CurrShelf);
LogUtil.info(Name + "当前料串信息:" + CurrShelf.ToStr());
}
}
}
catch (Exception ex)
{
LogUtil.error(Name + "UpdateShelfId出错:", ex);
}
return true;
}
}
public class ShelfInfo {
public ShelfInfo (string rfid="",int state = 0)
public ShelfInfo (string rfid="",int state = 0,string xnrfid = "")
{
this.ShelfRfid = rfid;
this.ShelfState = state;
this.XuniRfid = xnrfid;
}
/// <summary>
/// 料串RFID
/// </summary>
public string ShelfRfid = "";
/// <summary>
/// 料串状态,0=未开始,1=入库,2=出库中
/// 料串状态,0=未开始,1=入库,2=出库中,3=需要离开
/// </summary>
public int ShelfState =0;
public string XuniRfid = "";
public string ToStr()
{
if (ShelfState.Equals(1))
{
return ShelfRfid + "_入库中";
return "料串:" + ShelfRfid + "_入库中";
}
else if (ShelfState.Equals(2))
{
return ShelfRfid + "_出库中";
return "料串:" + ShelfRfid + "_出库中";
}
else if (ShelfState.Equals(3))
{
return "料串:" + ShelfRfid + "_需离开";
}
else
{
......
......@@ -35,7 +35,7 @@ namespace OnlineStore.DeviceLibrary
baseConfig = config;
this.Config = config;
IsDebug = config.IsDebug.Equals(1);
Name = (" " + "料机构" + " ").ToUpper();
Name = (" " + "料机构" + " ").ToUpper();
Init();
ledProcessTimer.Elapsed += LedProcess;
IoCheckTimer.Elapsed += IoCheckTimerProcess;
......@@ -136,7 +136,7 @@ namespace OnlineStore.DeviceLibrary
// 1,处于A,B,NG料口是,可以直接回取料升降轴。
// 2,处于A, B两个暂存区时,升降轴先运动到该暂存区的取放料高点,旋转轴再回原点或待机点。
//验证旋转轴位置 TODO
if (MiddleAxis.IsInPosition(Config.Middle_P4_AUpper))
if (MiddleAxis.IsInPosition(Config.Middle_P4_AUpper) )
{
MoveInfo.NextMoveStep(StepEnum.IR02_UpdownUpMove);
LogInfo($"复位 {MoveInfo.SLog}:当前旋转轴在 A上暂存区 {Config.Middle_P4_AUpper},升降轴先到P4:{Config.Updown_P4_AUpperH}");
......@@ -204,10 +204,7 @@ namespace OnlineStore.DeviceLibrary
{
MoveInfo.NextMoveStep(StepEnum.IR07_ClampRelax);
LogInfo($"复位{MoveInfo.SLog}:夹爪气缸放松");
if (Config.UseClampJaw.Equals(1))
{
ClampJaw.Relax(MoveInfo);
}
ClampRelax(MoveInfo,MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.IR07_ClampRelax))
{
......@@ -283,28 +280,48 @@ namespace OnlineStore.DeviceLibrary
if (BatchMove_A.MoveInfo.MoveType.Equals(MoveType.InStore) && BatchMove_A.MoveInfo.IsStep(StepEnum.IB10_ScanOK))
{
LogInfo( "A侧开始取料");
string code = BatchMove_A.MoveInfo.MoveParam.PosInfo.barcode;
InOutPosInfo posInfo = new InOutPosInfo(code, "");
posInfo.NgMsg = BatchMove_A.MoveInfo.MoveParam.PosInfo.NgMsg;
posInfo.IsNG = BatchMove_A.MoveInfo.MoveParam.PosInfo.IsNG;
InOutParam param = new InOutParam(posInfo);
param.ShelfType = 1;
StartInstore(param);
LogInfo("A侧开始取料");
StartInstore(BatchMove_A.GetInstoreParam());
}
else if (BatchMove_B.MoveInfo.MoveType.Equals(MoveType.InStore) && BatchMove_B.MoveInfo.IsStep(StepEnum.IB10_ScanOK))
{
LogInfo("B侧开始取料");
string code = BatchMove_B.MoveInfo.MoveParam.PosInfo.barcode;
InOutPosInfo posInfo = new InOutPosInfo(code, "");
posInfo.NgMsg = BatchMove_B.MoveInfo.MoveParam.PosInfo.NgMsg;
posInfo.IsNG = BatchMove_B.MoveInfo.MoveParam.PosInfo.IsNG;
InOutParam param = new InOutParam(posInfo);
StartInstore(BatchMove_B.GetInstoreParam());
}
//TODO 如果出料暂存区有料,且空料串准备完成,开始出料
else if (BatchMove_A.MoveInfo.MoveType.Equals(MoveType.OutStore) && BatchMove_A.MoveInfo.IsStep(StepEnum.IS11_ShelfReady))
{
if (BufferDataManager.AOutStoreInfo != null)
{
InOutParam param = new InOutParam(BufferDataManager.AOutStoreInfo);
param.ShelfType = 1;
LogInfo($"A下暂存区物料{param.PosInfo.ToStr()},准备出库到料串{param.ShelfType}");
StartOutstore(param);
}
else if (BufferDataManager.BOutStoreInfo != null)
{
InOutParam param = new InOutParam(BufferDataManager.AOutStoreInfo);
param.ShelfType = 1;
LogInfo($"B下暂存区物料{param.PosInfo.ToStr()},准备出库到料串{param.ShelfType}");
StartOutstore(param);
}
}
else if (BatchMove_B.MoveInfo.MoveType.Equals(MoveType.OutStore) && BatchMove_B.MoveInfo.IsStep(StepEnum.IS11_ShelfReady))
{
if (BufferDataManager.AOutStoreInfo != null)
{
InOutParam param = new InOutParam(BufferDataManager.AOutStoreInfo);
param.ShelfType = 2;
StartInstore(param);
}else
LogInfo($"A下暂存区物料{param.PosInfo.ToStr()},准备出库到料串{param.ShelfType}");
StartOutstore(param);
}
else if (BufferDataManager.BOutStoreInfo != null)
{
//TODO 如果出料暂存区有料,且空料串准备完成,开始出料
InOutParam param = new InOutParam(BufferDataManager.AOutStoreInfo);
param.ShelfType = 2;
LogInfo($"B下暂存区物料{param.PosInfo.ToStr()},准备出库到料串{param.ShelfType}");
StartOutstore(param);
}
}
}
......@@ -338,7 +355,7 @@ namespace OnlineStore.DeviceLibrary
}
private DateTime checkAlarmTime = DateTime.Now;
public void CheckAxisAlarm()
private void CheckAxisAlarm()
{
if (alarmType.Equals(AlarmType.AxisAlarm) || alarmType.Equals(AlarmType.AxisMoveError))
{
......@@ -404,6 +421,30 @@ namespace OnlineStore.DeviceLibrary
}
}
private void ClampWork(DeviceMoveInfo moveInfo,bool isCheck,params string[] codes)
{
if (Config.UseClampJaw.Equals(1))
{
ClampJaw.Push(moveInfo, isCheck, codes);
}
else
{
}
}
private void ClampRelax(DeviceMoveInfo moveInfo ,params string[] codes)
{
if (Config.UseClampJaw.Equals(1))
{
ClampJaw.Relax(moveInfo, codes);
}
else
{
}
}
}
}
......@@ -6,6 +6,7 @@ using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Threading.Tasks;
......@@ -13,9 +14,49 @@ namespace OnlineStore.DeviceLibrary
{
partial class InputEquip
{
protected override bool CheckWaitResult(DeviceMoveInfo moveInfo, WaitResultInfo wait)
public bool ClampEmptyMove = false;
protected override bool CheckWaitResult(DeviceMoveInfo moveInfo, WaitResultInfo wait )
{
return false;
TimeSpan span = DateTime.Now - moveInfo.LastSetpTime;
if (wait.WaitType.Equals(WaitEnum.W004_ClampReached))
{
if (ClampJaw != null)
{
if (ClampJaw.IsReached())
{
float currp = ClampJaw.GetPosition() - (float)wait.TargetPosition;
if (currp < 1)
{
wait.IsEnd = true;
}
}
}
}
else if (wait.WaitType.Equals(WaitEnum.W005_WaitHasReel))
{
if (ClampJaw != null)
{
wait.IsEnd = ClampJaw.HasReel();
if ((!wait.IsEnd) && ClampEmptyMove)
{
LogUtil.info(Name + " 用户点击了:忽略夹爪有料信号,继续出入库动作");
wait.IsEnd = true;
}
//如果是运动中,且到达目标,认为有料
if ((!wait.IsEnd) && ClampJaw.IsMoving() && ClampJaw.IsReached() && span.TotalSeconds > 3)
{
LogUtil.info(Name + " 无料,但在运动中,且运动到位,认为有料");
wait.IsEnd = true;
}
}
}
else if (wait.WaitType.Equals(WaitEnum.W006_AxisOrg))
{
wait.IsEnd = AxisManager.instance.GetHomeSingle(wait.AxisInfo.DeviceName, wait.AxisInfo.GetAxisValue()).Equals(1);
}
return wait.IsEnd;
}
#region 入库
......@@ -23,7 +64,7 @@ namespace OnlineStore.DeviceLibrary
{
if (!NoAlarm())
{
LogInfo("报警中,无法开始取放料:" + param.PosInfo.ToStr() );
LogInfo("报警中,无法开始取料入库:" + param.PosInfo.ToStr() );
return false;
}
......@@ -48,19 +89,635 @@ namespace OnlineStore.DeviceLibrary
{
return;
}
int shelf = MoveInfo.MoveParam.ShelfType;
#region 入库取料,获取库位号
if (MoveInfo.IsStep(StepEnum.II01_UpdownToP1))
{
if (shelf.Equals(1))
{
MoveInfo.NextMoveStep(StepEnum.II02_MIddleToP2);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: 旋转轴到P2(A料口取料点){Config.Middle_P2_ATake},等待{IO_Type.MAxis_Check_A}信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P2_ATake, Config.Middle_P2_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.MAxis_Check_A, IO_VALUE.HIGH));
}
else if (shelf.Equals(2))
{
MoveInfo.NextMoveStep(StepEnum.II05_MIddleToP3);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: 旋转轴到P3(B料口取料点){Config.Middle_P3_BTake},等待{IO_Type.MAxis_Check_B}信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P3_BTake, Config.Middle_P3_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.MAxis_Check_B, IO_VALUE.HIGH));
}
else
{
MoveLog($"入库{MoveInfo.SLog}未找到料串{shelf},结束处理");
MoveInfo.EndMove();
}
}
else if (MoveInfo.IsStep(StepEnum.II02_MIddleToP2))
{
MoveInfo.NextMoveStep(StepEnum.II03_UpdownToP2);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: 升降轴到P2(A料口取料点) {Config.Updown_P2_ATake}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P2_ATake, Config.Updown_P2_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II05_MIddleToP3))
{
MoveInfo.NextMoveStep(StepEnum.II06_UpdownToP3);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: 升降轴到P3(B料口取料点) {Config.Updown_P3_BTake}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P3_BTake, Config.Updown_P3_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II03_UpdownToP2))
{
II08_ClampWork();
}
else if (MoveInfo.IsStep(StepEnum.II06_UpdownToP3))
{
II08_ClampWork();
}
else if (MoveInfo.IsStep(StepEnum.II08_ClampWork))
{
MoveInfo.NextMoveStep(StepEnum.II09_UpdownToP1);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: 升降轴到待机点P1 {Config.Updown_P1}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P1, Config.Updown_P1_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II09_UpdownToP1))
{
II10_WaitAxisCheck();
}
else if (MoveInfo.IsStep(StepEnum.II10_WaitAxisCheck))
{
II10_WaitAxisCheck();
}
else if (MoveInfo.IsStep(StepEnum.II11_WaitHeight))
{
BatchMoveBean moveBean = BatchMove_A;
if (shelf.Equals(2))
{
moveBean = BatchMove_B;
}
if (moveBean.LastHeight > 0)
{
ClearTimeoutAlarm("获取料盘高度完成超时");
int Height = moveBean.LastHeight;
int width = 7;
if (IOValue(IO_Type.MAxis_ReelCheck_13).Equals(IO_VALUE.HIGH))
{
width = 13;
}
MoveInfo.MoveParam.PosInfo.PlateH = Height;
MoveInfo.MoveParam.PosInfo.PlateW = width;
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: 料盘尺寸{width}X{Height},开始获取库位号");
II13_GetPosId();
}
else if (MoveInfo.IsTimeOut(60))
{
MoveTimeOut(MoveInfo, "" + moveBean.Name + "获取料盘高度完成");
}
}
else if (MoveInfo.IsStep(StepEnum.II13_GetPosId))
{
if (getPosTask != null && getPosTask.IsCompleted && LastPosInfo != null)
{
getPosIdMsg = "";
ClearTimeoutAlarm("获取库位号超时");
InOutPosInfo oldPos = MoveInfo.MoveParam.PosInfo;
if ((!LastPosInfo.PlateH.Equals(oldPos.PlateH)) || (!LastPosInfo.PlateW.Equals(oldPos.PlateW)))
{
MoveLog(" " + MoveInfo.SLog + " 原有料盘尺寸:【" + oldPos.PlateW + "X" + oldPos.PlateH + "】服务器返回尺寸【" + LastPosInfo.PlateW + "X" + LastPosInfo.PlateH + "】 ");
}
MoveInfo.MoveParam.PosInfo = LastPosInfo;
if (LastResult.Equals(98))
{
//出库料 暂不处理出库,全部入库
}
//判断是A还是B
if (LastPosInfo.IsNG)
{
MoveInfo.NextMoveStep(StepEnum.II81_UpdownToP8);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: NG料{LastPosInfo.ToStr()} 升降轴到P8(NG料区放料高点){Config.Updown_P8_NGH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P8_NGH, Config.Updown_P8_Speed);
}
else if (LastPosInfo.PosId.Contains("AA"))
{
MoveInfo.NextMoveStep(StepEnum.II41_WaitNoReel);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: A侧入库料{LastPosInfo.ToStr()} 等待A上暂存区无料");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.UpperArea_Check_A, IO_VALUE.LOW));
}
else
{
MoveInfo.NextMoveStep(StepEnum.II61_WaitNoReel);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: B侧入库料{LastPosInfo.ToStr()} 等待B上暂存区无料");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.UpperArea_Check_B, IO_VALUE.LOW));
}
}
else if (MoveInfo.IsTimeOut(15))
{
MoveTimeOut(MoveInfo, "获取库位号超时 " + getPosIdMsg);
}
}
#endregion
#region 入料->A侧上暂存区
else if(MoveInfo.IsStep(StepEnum.II41_WaitNoReel))
{
if (BufferDataManager.AInStoreInfo == null||BufferDataManager.AInStoreInfo.PosId.Equals(""))
{
ClearTimeoutAlarm("A上暂存区物料拿走");
MoveInfo.NextMoveStep(StepEnum.II42_UpdownToP4);
MoveLog($" 入料->A侧 {MoveInfo.SLog}: 升降轴 到P4(A上暂存区放料高点){Config.Updown_P4_AUpperH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P4_AUpperH, Config.Updown_P4_Speed);
}else if (MoveInfo.IsTimeOut(20))
{
MoveTimeOut(MoveInfo, "A上暂存区物料拿走");
}
}
else if (MoveInfo.IsStep(StepEnum.II42_UpdownToP4))
{
MoveInfo.NextMoveStep(StepEnum.II43_MiddleToP4);
MoveLog($" 入料->A侧 {MoveInfo.SLog}: 旋转轴 到P4(A上暂存区放料点){Config.Middle_P4_AUpper},等待{IO_Type.MAxis_Check_AreaA}信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P4_AUpper, Config.Middle_P4_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.MAxis_Check_AreaA, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(StepEnum.II43_MiddleToP4))
{
MoveInfo.NextMoveStep(StepEnum.II44_UpdownToP5);
MoveLog($" 入料->A侧 {MoveInfo.SLog}: 升降轴 到P5(A上暂存区放料低点){Config.Updown_P5_AUpperL}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P5_AUpperL, Config.Updown_P5_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II44_UpdownToP5))
{
MoveInfo.NextMoveStep(StepEnum.II45_ClampRelax);
MoveLog($" 入料->A侧 {MoveInfo.SLog}: 夹爪放松");
ClampRelax(MoveInfo, MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.II45_ClampRelax))
{
MoveInfo.NextMoveStep(StepEnum.II46_UpdownToP4);
MoveLog($" 入料->A侧 {MoveInfo.SLog}: 升降轴 到P4(A上暂存区放料高点){Config.Updown_P4_AUpperH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P4_AUpperH, Config.Updown_P4_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II46_UpdownToP4))
{
MoveInfo.NextMoveStep(StepEnum.II47_MiddleToP1);
MoveLog($" 入料->A侧 {MoveInfo.SLog}: 旋转轴 到P1(待机点){Config.Middle_P1}");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P1, Config.Middle_P1_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II47_MiddleToP1))
{
MoveLog($" 入料->A侧放料结束,更新A上暂存区物料{MoveInfo.MoveParam.PosInfo.ToStr()}");
BufferDataManager.AInStoreInfo = MoveInfo.MoveParam.PosInfo;
MoveInfo.EndMove();
}
#endregion
#region 入料->B侧上暂存区
else if (MoveInfo.IsStep(StepEnum.II61_WaitNoReel))
{
if (BufferDataManager.BInStoreInfo == null || BufferDataManager.BInStoreInfo.PosId.Equals(""))
{
ClearTimeoutAlarm("B上暂存区物料拿走");
MoveInfo.NextMoveStep(StepEnum.II62_UpdownToP10);
MoveLog($" 入料->B侧 {MoveInfo.SLog}: 升降轴 到P10(B上暂存区放料高点){Config.Updown_P10_BUpperH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P10_BUpperH, Config.Updown_P10_Speed);
}
else if (MoveInfo.IsTimeOut(20))
{
MoveTimeOut(MoveInfo, "B上暂存区物料拿走");
}
}
else if (MoveInfo.IsStep(StepEnum.II62_UpdownToP10))
{
MoveInfo.NextMoveStep(StepEnum.II63_MiddleToP5);
MoveLog($" 入料->B侧 {MoveInfo.SLog}: 旋转轴 到P5 (B上暂存区放料点){Config.Middle_P5_BUpper},等待{MiddleAxis.AxisName}原点信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P5_BUpper, Config.Middle_P5_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitAxisOrg(MiddleAxis.Config, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(StepEnum.II63_MiddleToP5))
{
MoveInfo.NextMoveStep(StepEnum.II64_UpdownToP11);
MoveLog($" 入料->B侧 {MoveInfo.SLog}: 升降轴 到P11 (B上暂存区放料低点){Config.Updown_P11_BUpperL}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P11_BUpperL, Config.Updown_P11_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II64_UpdownToP11))
{
MoveInfo.NextMoveStep(StepEnum.II65_ClampRelax);
MoveLog($" 入料->B侧 {MoveInfo.SLog}: 夹爪放松");
ClampRelax(MoveInfo, MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.II65_ClampRelax))
{
MoveInfo.NextMoveStep(StepEnum.II66_UpdownToP10);
MoveLog($" 入料->B侧 {MoveInfo.SLog}: 升降轴 到P10 (B上暂存区放料高点){Config.Updown_P10_BUpperH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P10_BUpperH, Config.Updown_P10_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II66_UpdownToP10))
{
MoveInfo.NextMoveStep(StepEnum.II67_MiddleToP1);
MoveLog($" 入料->B侧 {MoveInfo.SLog}: 旋转轴 到P1(待机点){Config.Middle_P1}");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P1, Config.Middle_P1_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II67_MiddleToP1))
{
MoveLog($" 入料->B侧放料结束,更新B上暂存区物料{MoveInfo.MoveParam.PosInfo.ToStr()}");
BufferDataManager.BInStoreInfo = MoveInfo.MoveParam.PosInfo;
MoveInfo.EndMove();
}
#endregion
#region 入料->NG箱上暂存区
else if (MoveInfo.IsStep(StepEnum.II81_UpdownToP8))
{
MoveInfo.NextMoveStep(StepEnum.II82_MiddleToNg);
MoveLog($" 入料->NG箱 {MoveInfo.SLog}: 旋转轴到P6(NG料区放料点){Config.Middle_P6_NG}");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P6_NG, Config.Middle_P6_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II82_MiddleToNg))
{
MoveInfo.NextMoveStep(StepEnum.II83_UpdownToP9);
MoveLog($" 入料->NG箱 {MoveInfo.SLog}: 升降轴到P9(NG料区放料低点){Config.Updown_P9_NGL}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P9_NGL, Config.Updown_P9_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II83_UpdownToP9))
{
MoveInfo.NextMoveStep(StepEnum.II84_ClampRelax);
MoveLog($" 入料->NG箱 {MoveInfo.SLog}: 夹爪放松");
ClampRelax(MoveInfo, MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.II84_ClampRelax))
{
MoveInfo.NextMoveStep(StepEnum.II85_UpdownToP8);
MoveLog($" 入料->NG箱 {MoveInfo.SLog}: 升降轴到P8(NG料区放料高点){Config.Updown_P8_NGH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P8_NGH, Config.Updown_P8_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II85_UpdownToP8))
{
MoveInfo.NextMoveStep(StepEnum.II86_MiddleToP1);
MoveLog($" 入料->NG箱 {MoveInfo.SLog}: 旋转轴 到P1(待机点){Config.Middle_P1}");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P1, Config.Middle_P1_Speed);
}
else if (MoveInfo.IsStep(StepEnum.II86_MiddleToP1))
{
MoveLog($" 入料->NG箱放料结束");
MoveInfo.EndMove();
}
#endregion
}
private Task getPosTask = null;
private InOutPosInfo LastPosInfo = null;
private int LastResult = 0;
private string getPosIdMsg = "";
private void II13_GetPosId()
{
MoveInfo.NextMoveStep(StepEnum.II13_GetPosId);
MoveLog($"入库{MoveInfo.SLog}: 清空LastPosResult,从服务器获取入库库位");
LastPosInfo = null;
InOutPosInfo pos = MoveInfo.MoveParam.PosInfo;
List<string> codeList = Regex.Split(pos.barcode, "##", RegexOptions.IgnoreCase).ToList();
getPosTask = Task.Factory.StartNew(delegate
{
//更新托盘条码信息
try
{
int count = 1;
while (MoveInfo.MoveType.Equals(MoveType.InStore))
{
int ms = 5000;
//从服务器获取库位号
GetPosResult result = SServerManager.GetPosId(Name, codeList, pos.PlateH, pos.PlateW, pos.rfid, DeviceID);
LastResult = result.Result;
if (result.IsTimeOut)
{
if (count < 5)
{
ms = 2000;
}
Thread.Sleep(ms);
LogUtil.error(Name + "【" + pos.barcode + "】第[" + count + "]次 " + MoveInfo.SLog + " 超时,等待" + ms + "后重新获取");
}
else if (result.Result.Equals(99) || result.Result.Equals(100))
{
if (count < 5)
{
ms = 3000;
}
getPosIdMsg = result.Msg;
Thread.Sleep(ms);
LogUtil.error(Name + "【" + pos.barcode + "】第[" + count + "]次 " + MoveInfo.SLog + " 结果【" + result.Result + "】,等待" + ms + "后重新获取");
}
else if (!result.Msg.Equals(""))
{
LastPosInfo = result.Param;
LogUtil.error(Name + "【" + pos.barcode + "】第[" + count + "]次 " + MoveInfo.SLog + " 入库NG:" + result.Msg);
break;
}
else
{
LastPosInfo = result.Param;
break;
}
count++;
}
}
catch (Exception ex)
{
LogUtil.error(Name + "【" + pos.barcode + "】 " + MoveInfo.SLog + " 获取库位号报错:" + ex.ToString());
}
});
}
private void II08_ClampWork()
{
MoveInfo.NextMoveStep(StepEnum.II08_ClampWork);
MoveLog($"入库取料{MoveInfo.MoveParam.ShelfType}{MoveInfo.SLog}: 夹爪夹紧,判断到位 ");
ClampWork(MoveInfo, true, MoveInfo.MoveParam.PosInfo.barcode);
}
private void II10_WaitAxisCheck()
{
int shelf = MoveInfo.MoveParam.ShelfType;
MoveInfo.NextMoveStep(StepEnum.II10_WaitAxisCheck);
MoveLog($"入库取料{shelf}{MoveInfo.SLog}: 等待伺服检测信号消失,通知料串料盘已离开");
if (shelf.Equals(1))
{
if (IOValue(IO_Type.ReelCheck_A).Equals(IO_VALUE.LOW))
{
MoveInfo.NextMoveStep(StepEnum.II11_WaitHeight);
BatchMove_A.GetTrayOK();
}
else
{
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ReelCheck_A, IO_VALUE.LOW));
}
}
else if (shelf.Equals(2))
{
if (IOValue(IO_Type.ReelCheck_B).Equals(IO_VALUE.LOW))
{
MoveInfo.NextMoveStep(StepEnum.II11_WaitHeight);
BatchMove_B.GetTrayOK();
}
else
{
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ReelCheck_B, IO_VALUE.LOW));
}
}
}
#endregion
#region 出库
public override bool StartOutstore(InOutParam param)
{
if (!NoAlarm())
{
LogInfo("报警中,无法开始出库:" + param.PosInfo.ToStr());
return false;
}
if (MoveInfo.MoveType.Equals(MoveType.None))
{
//获取位置是左侧还是右侧。
int startp = param.PosInfo.GetPosType();
if (startp.Equals(1))
{
MoveInfo.NewMove(MoveType.OutStore, param);
MoveInfo.NextMoveStep(StepEnum.IO01_ReelCheck);
MoveLog($"开始A下暂存区物料出库{MoveInfo.SLog}: 料串{param.ShelfType},等待料盘检测=1");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.UnderArea_Check_A, IO_VALUE.HIGH));
}
else if (startp.Equals(2))
{
MoveInfo.NewMove(MoveType.OutStore, param);
MoveInfo.NextMoveStep(StepEnum.IO11_ReelCheck);
MoveLog($"开始B下暂存区物料出库{MoveInfo.SLog}: 料串{param.ShelfType},等待料盘检测=1");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.UnderArea_Check_B, IO_VALUE.HIGH));
}
else
{
LogInfo("出库失败,未找到库位位置:" + param.PosInfo.ToStr());
return false;
}
return true;
}
return false;
}
protected override void OutstoreProcess()
{
if (MoveInfo.IsInWait)
{
CheckWait(MoveInfo);
}
if (MoveInfo.IsInWait)
{
return;
}
int shelf = MoveInfo.MoveParam.ShelfType;
#region 出库A侧取料
if (MoveInfo.IsStep(StepEnum.IO01_ReelCheck))
{
MoveInfo.NextMoveStep(StepEnum.IO02_UpdownToP6);
MoveLog($"出库A->{shelf}料串 {MoveInfo.SLog}: 升降轴到P6(A下暂存区取料高点){Config.Updown_P6_AUnderH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P6_AUnderH, Config.Updown_P6_Speed);
ShelfBatchAxisDown();
}
else if (MoveInfo.IsStep(StepEnum.IO02_UpdownToP6))
{
MoveInfo.NextMoveStep(StepEnum.IO03_MiddleToP7);
MoveLog($"出库A->{shelf}料串 {MoveInfo.SLog}: 旋转轴到P7(A下暂存区取料点){Config.Middle_P7_AUnder},等待{IO_Type.MAxis_Check_AreaA}信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P7_AUnder, Config.Middle_P7_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.MAxis_Check_AreaA, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(StepEnum.IO03_MiddleToP7))
{
MoveInfo.NextMoveStep(StepEnum.IO04_UpdownToP7);
MoveLog($"出库A->{shelf}料串 {MoveInfo.SLog}: 升降轴到P7(A下暂存区取料低点){Config.Updown_P7_AUnderL}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P7_AUnderL, Config.Updown_P7_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO04_UpdownToP7))
{
MoveInfo.NextMoveStep(StepEnum.IO05_ClampWork);
MoveLog($"出库A->{shelf}料串 {MoveInfo.SLog}: 电卡爪夹紧 判断到位");
ClampWork(MoveInfo, true, MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.IO05_ClampWork))
{
MoveInfo.NextMoveStep(StepEnum.IO06_UpdownToP6);
MoveLog($"出库A->{shelf}料串 {MoveInfo.SLog}: 升降轴到P6(A下暂存区取料高点){Config.Updown_P6_AUnderH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P6_AUnderH, Config.Updown_P6_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO06_UpdownToP6))
{
if (!MiddleToShelf())
{
MoveInfo.NextMoveStep(StepEnum.IO21_WaitShelfReady);
MoveLog($"出库A->{shelf}料串 {MoveInfo.SLog}: 等待料串可放料");
}
}
#endregion
#region 出库B侧取料
else if (MoveInfo.IsStep(StepEnum.IO11_ReelCheck))
{
MoveInfo.NextMoveStep(StepEnum.IO12_UpdownToP12);
MoveLog($"出库B->{shelf}料串 {MoveInfo.SLog}: 升降轴到P12(B下暂存区取料高点){Config.Updown_P12_BUnderH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P12_BUnderH, Config.Updown_P12_Speed);
ShelfBatchAxisDown();
}
else if (MoveInfo.IsStep(StepEnum.IO12_UpdownToP12))
{
MoveInfo.NextMoveStep(StepEnum.IO13_MiddleToP8);
MoveLog($"出库B->{shelf}料串 {MoveInfo.SLog}: 旋转轴到P8(B下暂存区取料点){Config.Middle_P8_BUnder},等待{MiddleAxis.AxisName}原点信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P8_BUnder, Config.Middle_P8_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitAxisOrg(MiddleAxis.Config, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(StepEnum.IO13_MiddleToP8))
{
MoveInfo.NextMoveStep(StepEnum.IO14_UpdownToP13);
MoveLog($"出库B->{shelf}料串 {MoveInfo.SLog}: 升降轴到P13(B下暂存区取料低点){Config.Updown_P13_BUnderL}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P13_BUnderL, Config.Updown_P13_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO14_UpdownToP13))
{
MoveInfo.NextMoveStep(StepEnum.IO15_ClampWork);
MoveLog($"出库B->{shelf}料串 {MoveInfo.SLog}: 电卡爪夹紧 判断到位");
ClampWork(MoveInfo, true, MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.IO15_ClampWork))
{
MoveInfo.NextMoveStep(StepEnum.IO16_UpdownToP6);
MoveLog($"出库B->{shelf}料串 {MoveInfo.SLog}: 升降轴到P12(B下暂存区取料高点){Config.Updown_P12_BUnderH}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P12_BUnderH, Config.Updown_P12_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO16_UpdownToP6))
{
if (!MiddleToShelf())
{
MoveInfo.NextMoveStep(StepEnum.IO21_WaitShelfReady);
MoveLog($"出库B->{shelf}料串 {MoveInfo.SLog}: 等待料串可放料");
}
}
#endregion
#region 出库放料到料串
else if (MoveInfo.IsStep(StepEnum.IO21_WaitShelfReady))
{
if (MiddleToShelf())
{
}
else if (MoveInfo.IsTimeOut(60))
{
MoveTimeOut(MoveInfo, "等待料串可放料");
}
}else if (MoveInfo.IsStep(StepEnum.IO23_MiddleToP2))
{
MoveInfo.NextMoveStep(StepEnum.IO24_UpdownToP2);
MoveLog($"出库->A料串 {MoveInfo.SLog}: 升降轴到P2(A料口取料点){Config.Updown_P2_ATake}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P2_ATake, Config.Updown_P2_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO27_MiddleToP3))
{
MoveInfo.NextMoveStep(StepEnum.IO28_UpdownToP3);
MoveLog($"出库->A料串 {MoveInfo.SLog}: 升降轴到P3(B料口取料点){Config.Updown_P3_BTake}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P3_BTake, Config.Updown_P3_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO24_UpdownToP2))
{
MoveInfo.NextMoveStep(StepEnum.IO31_ClampRelax);
MoveLog($"出库->料串 {MoveInfo.SLog}: 电卡爪放松 判断到位");
ClampRelax(MoveInfo, MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.IO28_UpdownToP3))
{
MoveInfo.NextMoveStep(StepEnum.IO31_ClampRelax);
MoveLog($"出库->料串 {MoveInfo.SLog}: 电卡爪放松 判断到位");
ClampRelax(MoveInfo, MoveInfo.MoveParam.PosInfo.barcode);
}
else if (MoveInfo.IsStep(StepEnum.IO31_ClampRelax))
{
if (shelf.Equals(1))
{
BatchMove_A.ReelPutOk();
}
else
{
BatchMove_B.ReelPutOk();
}
MoveInfo.NextMoveStep(StepEnum.IO32_UpdownToP1);
MoveLog($"出库->料串 {MoveInfo.SLog}: 升降轴到P1(待机点){Config.Updown_P1}");
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P1, Config.Updown_P1_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO32_UpdownToP1))
{
MoveInfo.NextMoveStep(StepEnum.IO33_MiddleToP1);
MoveLog($"出库->料串 {MoveInfo.SLog}: 旋转轴 到P1(待机点) {Config.Middle_P1}");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P1, Config.Middle_P1_Speed);
}
else if (MoveInfo.IsStep(StepEnum.IO33_MiddleToP1))
{
MoveInfo.EndMove();
MoveLog($"出库->料串 {MoveInfo.SLog}: 放料完成");
}
#endregion
}
private bool MiddleToShelf()
{
int shelf = MoveInfo.MoveParam.ShelfType;
if (shelf.Equals(1) && BatchMove_A.MoveInfo.MoveType.Equals(MoveType.OutStore) && BatchMove_A.MoveInfo.IsStep(StepEnum.IS13_WaitReel))
{
ClearTimeoutAlarm("等待料串可放料");
MoveInfo.NextMoveStep(StepEnum.IO23_MiddleToP2);
MoveLog($"出库->A料串 {MoveInfo.SLog}: 旋转轴到P2(A料口取料点){Config.Middle_P2_ATake},等待{IO_Type.MAxis_Check_A}信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P2_ATake, Config.Middle_P2_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.MAxis_Check_A, IO_VALUE.HIGH));
return true;
}
else if (shelf.Equals(2) && BatchMove_B.MoveInfo.MoveType.Equals(MoveType.OutStore) && BatchMove_B.MoveInfo.IsStep(StepEnum.IS13_WaitReel))
{
ClearTimeoutAlarm("等待料串可放料");
MoveInfo.NextMoveStep(StepEnum.IO27_MiddleToP3);
MoveLog($"出库->B料串 {MoveInfo.SLog}: 旋转轴到P3(B料口取料点){Config.Middle_P3_BTake},等待{IO_Type.MAxis_Check_B}信号亮");
MiddleAxis.AbsMove(MoveInfo, Config.Middle_P3_BTake, Config.Middle_P3_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.MAxis_Check_B, IO_VALUE.HIGH));
return true;
}
else
{
return false;
}
}
private void ShelfBatchAxisDown()
{
int shelf = MoveInfo.MoveParam.ShelfType;
//判断料串是否完成
if (shelf.Equals(1) && BatchMove_A.MoveInfo.MoveType.Equals(MoveType.OutStore) && BatchMove_A.MoveInfo.IsStep(StepEnum.IS11_ShelfReady))
{
BatchMove_A.NewReelOut(MoveInfo.MoveParam.PosInfo);
}
else if (shelf.Equals(2) && BatchMove_B.MoveInfo.MoveType.Equals(MoveType.OutStore) && BatchMove_B.MoveInfo.IsStep(StepEnum.IS11_ShelfReady))
{
BatchMove_B.NewReelOut(MoveInfo.MoveParam.PosInfo);
}
else
{
LogUtil.error($"{Name}{MoveInfo.SLog}出库错误:未找到准备好的料串 ");
}
}
#endregion
}
}
......@@ -93,7 +93,6 @@ namespace OnlineStore.LoadCSVLibrary
[ConfigProAttribute("BatchAxisP2_A")]
public int BatchAxisP2_A { get; set; }
public int Height_ChangeValue_A { get; set; }
/// <summary>
/// PRO,0,提升轴待机点_B侧,BatchAxisP1_B,1000,,,,,,,,,,,,
/// </summary>
......
......@@ -32,9 +32,18 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmXLRStore));
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.lblBufferInfo = new System.Windows.Forms.Label();
this.logBox = new System.Windows.Forms.RichTextBox();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.panel1 = new System.Windows.Forms.Panel();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.InputControl = new OnlineStore.XLRStore.EquipControl();
this.ReelControlA1 = new OnlineStore.XLRStore.ReelDataControl();
this.ReelControlA2 = new OnlineStore.XLRStore.ReelDataControl();
this.ReelControlB1 = new OnlineStore.XLRStore.ReelDataControl();
this.ReelControlB2 = new OnlineStore.XLRStore.ReelDataControl();
this.BoxControl = new OnlineStore.XLRStore.EquipControl();
this.ShelfAControl = new OnlineStore.XLRStore.EquipControl();
this.ShelfBControl = new OnlineStore.XLRStore.EquipControl();
this.lblStatus = new System.Windows.Forms.Label();
this.lblWarnMsg = new System.Windows.Forms.Label();
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
......@@ -76,7 +85,9 @@
this.toolStripSeparator17 = new System.Windows.Forms.ToolStripSeparator();
this.tabControl1.SuspendLayout();
this.tabPage1.SuspendLayout();
this.groupBox2.SuspendLayout();
this.tabPage2.SuspendLayout();
this.panel1.SuspendLayout();
this.tableLayoutPanel1.SuspendLayout();
this.contextMenuStrip1.SuspendLayout();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
......@@ -87,59 +98,190 @@
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.tabControl1.Controls.Add(this.tabPage1);
this.tabControl1.Controls.Add(this.tabPage2);
this.tabControl1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.tabControl1.Location = new System.Drawing.Point(8, 81);
this.tabControl1.Location = new System.Drawing.Point(4, 78);
this.tabControl1.Multiline = true;
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(990, 634);
this.tabControl1.Size = new System.Drawing.Size(996, 638);
this.tabControl1.TabIndex = 0;
this.tabControl1.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.tabControl1_DrawItem);
this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged);
//
// tabPage1
//
this.tabPage1.Controls.Add(this.groupBox2);
this.tabPage1.Controls.Add(this.logBox);
this.tabPage1.Location = new System.Drawing.Point(4, 29);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Size = new System.Drawing.Size(982, 601);
this.tabPage1.Size = new System.Drawing.Size(988, 605);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = " 运行状态 ";
this.tabPage1.Text = " 运行日志 ";
this.tabPage1.UseVisualStyleBackColor = true;
//
// groupBox2
//
this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox2.Controls.Add(this.lblBufferInfo);
this.groupBox2.Location = new System.Drawing.Point(5, 3);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(971, 184);
this.groupBox2.TabIndex = 200;
this.groupBox2.TabStop = false;
//
// lblBufferInfo
//
this.lblBufferInfo.AutoSize = true;
this.lblBufferInfo.Location = new System.Drawing.Point(7, 17);
this.lblBufferInfo.Name = "lblBufferInfo";
this.lblBufferInfo.Size = new System.Drawing.Size(107, 20);
this.lblBufferInfo.TabIndex = 0;
this.lblBufferInfo.Text = "暂存区料盘信息";
//
// logBox
//
this.logBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.logBox.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.logBox.Location = new System.Drawing.Point(5, 193);
this.logBox.Location = new System.Drawing.Point(5, 3);
this.logBox.Name = "logBox";
this.logBox.Size = new System.Drawing.Size(971, 400);
this.logBox.Size = new System.Drawing.Size(977, 594);
this.logBox.TabIndex = 106;
this.logBox.Text = "";
this.logBox.VisibleChanged += new System.EventHandler(this.logBox_VisibleChanged);
//
// tabPage2
//
this.tabPage2.Controls.Add(this.panel1);
this.tabPage2.Location = new System.Drawing.Point(4, 29);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Size = new System.Drawing.Size(192, 67);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = " 设备状态 ";
this.tabPage2.UseVisualStyleBackColor = true;
//
// panel1
//
this.panel1.Controls.Add(this.tableLayoutPanel1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(192, 67);
this.panel1.TabIndex = 1;
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 2;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Controls.Add(this.InputControl, 0, 3);
this.tableLayoutPanel1.Controls.Add(this.ReelControlA1, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.ReelControlA2, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.ReelControlB1, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.ReelControlB2, 1, 2);
this.tableLayoutPanel1.Controls.Add(this.BoxControl, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.ShelfAControl, 0, 4);
this.tableLayoutPanel1.Controls.Add(this.ShelfBControl, 1, 4);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 5;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 19.04762F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 19.04762F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(192, 67);
this.tableLayoutPanel1.TabIndex = 0;
//
// InputControl
//
this.InputControl.BackColor = System.Drawing.Color.White;
this.InputControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.InputControl.ColorStatus = System.Drawing.Color.White;
this.tableLayoutPanel1.SetColumnSpan(this.InputControl, 2);
this.InputControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.InputControl.EquipText = "上料机构";
this.InputControl.Location = new System.Drawing.Point(3, 43);
this.InputControl.MoveInfo = "暂无出入库";
this.InputControl.Name = "InputControl";
this.InputControl.Size = new System.Drawing.Size(186, 6);
this.InputControl.TabIndex = 5;
this.InputControl.WorkStatus = "暂未启动";
//
// ReelControlA1
//
this.ReelControlA1.BackColor = System.Drawing.Color.White;
this.ReelControlA1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.ReelControlA1.ColorStatus = System.Drawing.Color.White;
this.ReelControlA1.Dock = System.Windows.Forms.DockStyle.Fill;
this.ReelControlA1.Location = new System.Drawing.Point(3, 25);
this.ReelControlA1.Name = "ReelControlA1";
this.ReelControlA1.ReelText = "暂存区物料";
this.ReelControlA1.Size = new System.Drawing.Size(90, 3);
this.ReelControlA1.TabIndex = 0;
//
// ReelControlA2
//
this.ReelControlA2.BackColor = System.Drawing.Color.White;
this.ReelControlA2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.ReelControlA2.ColorStatus = System.Drawing.Color.White;
this.ReelControlA2.Dock = System.Windows.Forms.DockStyle.Fill;
this.ReelControlA2.Location = new System.Drawing.Point(3, 34);
this.ReelControlA2.Name = "ReelControlA2";
this.ReelControlA2.ReelText = "暂存区物料";
this.ReelControlA2.Size = new System.Drawing.Size(90, 3);
this.ReelControlA2.TabIndex = 1;
//
// ReelControlB1
//
this.ReelControlB1.BackColor = System.Drawing.Color.White;
this.ReelControlB1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.ReelControlB1.ColorStatus = System.Drawing.Color.White;
this.ReelControlB1.Dock = System.Windows.Forms.DockStyle.Fill;
this.ReelControlB1.Location = new System.Drawing.Point(99, 25);
this.ReelControlB1.Name = "ReelControlB1";
this.ReelControlB1.ReelText = "暂存区物料";
this.ReelControlB1.Size = new System.Drawing.Size(90, 3);
this.ReelControlB1.TabIndex = 2;
//
// ReelControlB2
//
this.ReelControlB2.BackColor = System.Drawing.Color.White;
this.ReelControlB2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.ReelControlB2.ColorStatus = System.Drawing.Color.White;
this.ReelControlB2.Dock = System.Windows.Forms.DockStyle.Fill;
this.ReelControlB2.Location = new System.Drawing.Point(99, 34);
this.ReelControlB2.Name = "ReelControlB2";
this.ReelControlB2.ReelText = "暂存区物料";
this.ReelControlB2.Size = new System.Drawing.Size(90, 3);
this.ReelControlB2.TabIndex = 3;
//
// BoxControl
//
this.BoxControl.BackColor = System.Drawing.Color.White;
this.BoxControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.BoxControl.ColorStatus = System.Drawing.Color.White;
this.tableLayoutPanel1.SetColumnSpan(this.BoxControl, 2);
this.BoxControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.BoxControl.EquipText = "存储机构";
this.BoxControl.Location = new System.Drawing.Point(3, 3);
this.BoxControl.MoveInfo = "暂无出入库";
this.BoxControl.Name = "BoxControl";
this.BoxControl.Size = new System.Drawing.Size(186, 16);
this.BoxControl.TabIndex = 4;
this.BoxControl.WorkStatus = "暂未启动";
//
// ShelfAControl
//
this.ShelfAControl.BackColor = System.Drawing.Color.White;
this.ShelfAControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.ShelfAControl.ColorStatus = System.Drawing.Color.White;
this.ShelfAControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.ShelfAControl.EquipText = "A料口";
this.ShelfAControl.Location = new System.Drawing.Point(3, 55);
this.ShelfAControl.MoveInfo = "暂无出入库";
this.ShelfAControl.Name = "ShelfAControl";
this.ShelfAControl.Size = new System.Drawing.Size(90, 9);
this.ShelfAControl.TabIndex = 6;
this.ShelfAControl.WorkStatus = "暂未启动";
//
// ShelfBControl
//
this.ShelfBControl.BackColor = System.Drawing.Color.White;
this.ShelfBControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.ShelfBControl.ColorStatus = System.Drawing.Color.White;
this.ShelfBControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.ShelfBControl.EquipText = "B料口";
this.ShelfBControl.Location = new System.Drawing.Point(99, 55);
this.ShelfBControl.MoveInfo = "暂无出入库";
this.ShelfBControl.Name = "ShelfBControl";
this.ShelfBControl.Size = new System.Drawing.Size(90, 9);
this.ShelfBControl.TabIndex = 7;
this.ShelfBControl.WorkStatus = "暂未启动";
//
// lblStatus
//
this.lblStatus.AutoSize = true;
......@@ -456,8 +598,9 @@
this.Load += new System.EventHandler(this.FrmMain_Load);
this.tabControl1.ResumeLayout(false);
this.tabPage1.ResumeLayout(false);
this.groupBox2.ResumeLayout(false);
this.groupBox2.PerformLayout();
this.tabPage2.ResumeLayout(false);
this.panel1.ResumeLayout(false);
this.tableLayoutPanel1.ResumeLayout(false);
this.contextMenuStrip1.ResumeLayout(false);
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
......@@ -508,10 +651,19 @@
private System.Windows.Forms.ToolStripMenuItem aGVCancelStateToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator17;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator25;
private System.Windows.Forms.GroupBox groupBox2;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem3;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator16;
private System.Windows.Forms.Label lblBufferInfo;
private System.Windows.Forms.TabPage tabPage2;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private EquipControl InputControl;
private ReelDataControl ReelControlA1;
private ReelDataControl ReelControlA2;
private ReelDataControl ReelControlB1;
private ReelDataControl ReelControlB2;
private EquipControl BoxControl;
private EquipControl ShelfAControl;
private EquipControl ShelfBControl;
}
}
......@@ -56,7 +56,8 @@ namespace OnlineStore.XLRStore
//tabControl1.TabPages.Remove(tabPage5);
timer1.Start();
}
private FrmInputEquip inputEquip = null;
private FrmBoxEquip box = null;
private void LoadStoreData()
{
formLineStatus(false);
......@@ -70,9 +71,10 @@ namespace OnlineStore.XLRStore
Application.Exit();
return;
}
FrmInputEquip inputEquip = new FrmInputEquip(StoreManager.XLRStore.inputEquip);
inputEquip = new FrmInputEquip(StoreManager.XLRStore.inputEquip);
AddForm(" 入料机构 ", inputEquip);
FrmBoxEquip box = new FrmBoxEquip(StoreManager.XLRStore.boxEquip);
box = new FrmBoxEquip(StoreManager.XLRStore.boxEquip);
AddForm(" 仓储机构 ", box);
托盘初始化ToolStripMenuItem.Visible = ConfigAppSettings.GetIntValue(Setting_Init.OpenRFIDWrite).Equals(1);
......@@ -97,8 +99,75 @@ namespace OnlineStore.XLRStore
LogUtil.logBox = this.logBox;
lastLogTime = DateTime.Now.AddMinutes(-10);
this.Opacity = 100;
ReelControlA1.ShowData("A上暂存区物料", BufferDataManager.AInStoreInfo);
ReelControlA2.ShowData("A下暂存区物料", BufferDataManager.AOutStoreInfo);
ReelControlB1.ShowData("B上暂存区物料", BufferDataManager.BInStoreInfo);
ReelControlB2.ShowData("B下暂存区物料", BufferDataManager.BOutStoreInfo);
ReelControlA1.linkClear.Click += LinkClear_ClickA1;
ReelControlA1.linkClear.Click += LinkClear_ClickA2;
ReelControlA1.linkClear.Click += LinkClear_ClickB1;
ReelControlA1.linkClear.Click += LinkClear_ClickB2;
BoxControl.InitData(StoreManager.XLRStore.boxEquip.Name);
InputControl.InitData(StoreManager.XLRStore.inputEquip.Name);
ShelfAControl.InitData(StoreManager.XLRStore.inputEquip.BatchMove_A.Name);
ShelfBControl.InitData(StoreManager.XLRStore.inputEquip.BatchMove_B.Name);
LoadOk = true;
}
private void LinkClear_ClickA1(object sender, EventArgs e)
{
if (BufferDataManager.AInStoreInfo == null)
{
return;
}
DialogResult result = MessageBox.Show("确定清除A上暂存区物料:" + BufferDataManager.AInStoreInfo.ToStr(), "", MessageBoxButtons.OKCancel);
if (result.Equals(DialogResult.OK))
{
LogUtil.info(Name + "手动清除A上暂存区物料:" + BufferDataManager.AInStoreInfo.ToStr());
BufferDataManager.AInStoreInfo = null;
}
}
private void LinkClear_ClickA2(object sender, EventArgs e)
{
if (BufferDataManager.AOutStoreInfo == null)
{
return;
}
DialogResult result = MessageBox.Show("确定清除A下暂存区物料:" + BufferDataManager.AOutStoreInfo.ToStr(), "", MessageBoxButtons.OKCancel);
if (result.Equals(DialogResult.OK))
{
LogUtil.info(Name + "手动清除A下暂存区物料:" + BufferDataManager.AOutStoreInfo.ToStr());
BufferDataManager.AOutStoreInfo = null;
}
}
private void LinkClear_ClickB1(object sender, EventArgs e)
{
if (BufferDataManager.BInStoreInfo == null)
{
return;
}
DialogResult result = MessageBox.Show("确定清除B上暂存区物料:" + BufferDataManager.BInStoreInfo.ToStr(), "", MessageBoxButtons.OKCancel);
if (result.Equals(DialogResult.OK))
{
LogUtil.info(Name + "手动清除B上暂存区物料:" + BufferDataManager.BInStoreInfo.ToStr());
BufferDataManager.BInStoreInfo = null;
}
}
private void LinkClear_ClickB2(object sender, EventArgs e)
{
if (BufferDataManager.BOutStoreInfo == null)
{
return;
}
DialogResult result = MessageBox.Show("确定清除B下暂存区物料:" + BufferDataManager.BOutStoreInfo.ToStr(), "", MessageBoxButtons.OKCancel);
if (result.Equals(DialogResult.OK))
{
LogUtil.info(Name + "手动清除B下暂存区物料:" + BufferDataManager.BOutStoreInfo.ToStr());
BufferDataManager.BOutStoreInfo = null;
}
}
private void AddForm(string text, Form form)
{
//text = text.PadRight(10, ' ');
......@@ -372,14 +441,13 @@ namespace OnlineStore.XLRStore
lblWarnMsg.Text = warnMsg;
BoxEquip box = StoreManager.XLRStore.boxEquip;
BoxControl.ShowData(box.IsDebug, box.GetRunStr(), box.WarnMsg, box.MoveInfo, box.GetShowColor());
InputEquip input = StoreManager.XLRStore.inputEquip;
InputControl.ShowData(input.IsDebug, input.GetRunStr(), input.WarnMsg, input.MoveInfo, input.GetShowColor());
ShelfAControl.ShowData(true, "", input.BatchMove_A.WarnMsg, input.BatchMove_A.MoveInfo, input.BatchMove_A.GetShowColor(), input.BatchMove_A.CurrShelf?.ToStr());
ShelfBControl.ShowData(true, "", input.BatchMove_B.WarnMsg, input.BatchMove_B.MoveInfo, input.BatchMove_B.GetShowColor(), input.BatchMove_B.CurrShelf?.ToStr());
string bufStr = "";
bufStr+="A进料暂存料盘:"+ BufferDataManager.AInStoreInfo?.ToStr()+"\r\n";
bufStr += "A出料暂存料盘:" + BufferDataManager.AOutStoreInfo?.ToStr() + "\r\n";
bufStr += "A进料暂存料盘:" + BufferDataManager.BInStoreInfo?.ToStr() + "\r\n";
bufStr += "A出料暂存料盘:" + BufferDataManager.BOutStoreInfo?.ToStr() + "";
lblBufferInfo.Text = bufStr;
if (StoreBean.runStatus > RunStatus.Wait)
......@@ -579,5 +647,22 @@ namespace OnlineStore.XLRStore
LogUtil.error("FrmCrispTray 出错:" + ex.ToString());
}
}
private void timer2_Tick(object sender, EventArgs e)
{
}
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (!LoadOk)
{
return;
}
if (inputEquip != null)
{
inputEquip.FrmInputEquip_VisibleChanged(null, null);
}
}
}
}
......@@ -86,6 +86,7 @@
<Reference Include="UserFromControl">
<HintPath>..\..\dll\UserFromControl.dll</HintPath>
</Reference>
<Reference Include="XLRStore, Version=1.0.7818.19677, Culture=neutral, PublicKeyToken=null" />
</ItemGroup>
<ItemGroup>
<Compile Include="FrmBase.cs">
......@@ -163,6 +164,12 @@
<Compile Include="useControl\ClampJawControl.Designer.cs">
<DependentUpon>ClampJawControl.cs</DependentUpon>
</Compile>
<Compile Include="useControl\ReelDataControl.cs">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="useControl\ReelDataControl.Designer.cs">
<DependentUpon>ReelDataControl.cs</DependentUpon>
</Compile>
<Compile Include="useControl\EquipControl.cs">
<SubType>UserControl</SubType>
</Compile>
......@@ -215,6 +222,9 @@
<EmbeddedResource Include="useControl\ClampJawControl.resx">
<DependentUpon>ClampJawControl.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="useControl\ReelDataControl.resx">
<DependentUpon>ReelDataControl.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="useControl\EquipControl.resx">
<DependentUpon>EquipControl.cs</DependentUpon>
</EmbeddedResource>
......
......@@ -24,20 +24,29 @@
this.btnStartTest = new System.Windows.Forms.Button();
this.axisMoveControl1 = new OnlineStore.XLRStore.AxisMoveControl();
this.lblCurrInfo = new System.Windows.Forms.Label();
this.lblMoveInfo = new System.Windows.Forms.Label();
this.lblWarnMsg = new System.Windows.Forms.Label();
this.panBase = new System.Windows.Forms.Panel();
this.lblName = new System.Windows.Forms.Label();
this.lblStoreStatus = new System.Windows.Forms.Label();
this.chbDebug = new System.Windows.Forms.CheckBox();
this.btnScanTest = new System.Windows.Forms.Button();
this.lblAgvInfo = new System.Windows.Forms.Label();
this.btnShelfOut = new System.Windows.Forms.Button();
this.chbAutoOut = new System.Windows.Forms.CheckBox();
this.btnStart = new System.Windows.Forms.Button();
this.btnSave = new System.Windows.Forms.Button();
this.panel2 = new System.Windows.Forms.Panel();
this.groupBox3 = new System.Windows.Forms.GroupBox();
this.LineStop_A = new System.Windows.Forms.Button();
this.LineBack_A = new System.Windows.Forms.Button();
this.Shelf_StopDown_A = new System.Windows.Forms.Button();
this.Shelf_StopUp_A = new System.Windows.Forms.Button();
this.LineStart_A = new System.Windows.Forms.Button();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.batchAxisP2 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.batchAxisP1 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.panBase.SuspendLayout();
this.panel2.SuspendLayout();
this.groupBox3.SuspendLayout();
this.groupBox2.SuspendLayout();
this.groupBox1.SuspendLayout();
this.SuspendLayout();
......@@ -64,9 +73,9 @@
this.lblTestMsg.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblTestMsg.ForeColor = System.Drawing.Color.Black;
this.lblTestMsg.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblTestMsg.Location = new System.Drawing.Point(3, 82);
this.lblTestMsg.Location = new System.Drawing.Point(4, 68);
this.lblTestMsg.Name = "lblTestMsg";
this.lblTestMsg.Size = new System.Drawing.Size(455, 43);
this.lblTestMsg.Size = new System.Drawing.Size(438, 43);
this.lblTestMsg.TabIndex = 322;
this.lblTestMsg.Text = "测试信息:";
this.lblTestMsg.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
......@@ -78,8 +87,8 @@
this.btnTestStop.Enabled = false;
this.btnTestStop.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnTestStop.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnTestStop.ForeColor = System.Drawing.Color.Red;
this.btnTestStop.Location = new System.Drawing.Point(192, 31);
this.btnTestStop.ForeColor = System.Drawing.Color.Blue;
this.btnTestStop.Location = new System.Drawing.Point(192, 26);
this.btnTestStop.Name = "btnTestStop";
this.btnTestStop.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.btnTestStop.Size = new System.Drawing.Size(154, 34);
......@@ -94,8 +103,8 @@
this.btnStartTest.Cursor = System.Windows.Forms.Cursors.Default;
this.btnStartTest.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnStartTest.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnStartTest.ForeColor = System.Drawing.Color.Red;
this.btnStartTest.Location = new System.Drawing.Point(21, 31);
this.btnStartTest.ForeColor = System.Drawing.Color.Blue;
this.btnStartTest.Location = new System.Drawing.Point(21, 26);
this.btnStartTest.Name = "btnStartTest";
this.btnStartTest.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.btnStartTest.Size = new System.Drawing.Size(154, 34);
......@@ -106,9 +115,9 @@
//
// axisMoveControl1
//
this.axisMoveControl1.Location = new System.Drawing.Point(6, 174);
this.axisMoveControl1.Location = new System.Drawing.Point(6, 128);
this.axisMoveControl1.Name = "axisMoveControl1";
this.axisMoveControl1.Size = new System.Drawing.Size(488, 400);
this.axisMoveControl1.Size = new System.Drawing.Size(490, 398);
this.axisMoveControl1.TabIndex = 219;
//
// lblCurrInfo
......@@ -117,24 +126,12 @@
| System.Windows.Forms.AnchorStyles.Right)));
this.lblCurrInfo.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblCurrInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblCurrInfo.Location = new System.Drawing.Point(8, 47);
this.lblCurrInfo.Location = new System.Drawing.Point(3, 3);
this.lblCurrInfo.Name = "lblCurrInfo";
this.lblCurrInfo.Size = new System.Drawing.Size(943, 50);
this.lblCurrInfo.Size = new System.Drawing.Size(931, 47);
this.lblCurrInfo.TabIndex = 279;
this.lblCurrInfo.Text = "当前料盘:";
//
// lblMoveInfo
//
this.lblMoveInfo.AutoSize = true;
this.lblMoveInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblMoveInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblMoveInfo.Location = new System.Drawing.Point(6, 130);
this.lblMoveInfo.Name = "lblMoveInfo";
this.lblMoveInfo.Size = new System.Drawing.Size(68, 17);
this.lblMoveInfo.TabIndex = 278;
this.lblMoveInfo.Text = "运动信息:";
this.lblMoveInfo.Visible = false;
//
// lblWarnMsg
//
this.lblWarnMsg.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
......@@ -142,62 +139,104 @@
this.lblWarnMsg.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblWarnMsg.ForeColor = System.Drawing.Color.Red;
this.lblWarnMsg.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblWarnMsg.Location = new System.Drawing.Point(8, 109);
this.lblWarnMsg.Location = new System.Drawing.Point(3, 53);
this.lblWarnMsg.Name = "lblWarnMsg";
this.lblWarnMsg.Size = new System.Drawing.Size(943, 50);
this.lblWarnMsg.Size = new System.Drawing.Size(930, 23);
this.lblWarnMsg.TabIndex = 246;
this.lblWarnMsg.Text = "等待启动";
this.lblWarnMsg.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// panBase
//
this.panBase.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panBase.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panBase.Controls.Add(this.lblMoveInfo);
this.panBase.Controls.Add(this.chbDebug);
this.panBase.Controls.Add(this.btnScanTest);
this.panBase.Controls.Add(this.lblAgvInfo);
this.panBase.Controls.Add(this.btnShelfOut);
this.panBase.Controls.Add(this.chbAutoOut);
this.panBase.Controls.Add(this.lblCurrInfo);
this.panBase.Controls.Add(this.lblWarnMsg);
this.panBase.Controls.Add(this.lblName);
this.panBase.Controls.Add(this.lblStoreStatus);
this.panBase.Controls.Add(this.btnStart);
this.panBase.Location = new System.Drawing.Point(6, 6);
this.panBase.Location = new System.Drawing.Point(4, 4);
this.panBase.Name = "panBase";
this.panBase.Size = new System.Drawing.Size(957, 168);
this.panBase.Size = new System.Drawing.Size(940, 122);
this.panBase.TabIndex = 260;
//
// lblName
//
this.lblName.BackColor = System.Drawing.Color.DodgerBlue;
this.lblName.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblName.ForeColor = System.Drawing.Color.Black;
this.lblName.Location = new System.Drawing.Point(5, 4);
this.lblName.Name = "lblName";
this.lblName.Size = new System.Drawing.Size(120, 40);
this.lblName.TabIndex = 250;
this.lblName.Text = "A入料机构";
this.lblName.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// lblStoreStatus
//
this.lblStoreStatus.AutoSize = true;
this.lblStoreStatus.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblStoreStatus.ForeColor = System.Drawing.Color.Green;
this.lblStoreStatus.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblStoreStatus.Location = new System.Drawing.Point(142, 15);
this.lblStoreStatus.Name = "lblStoreStatus";
this.lblStoreStatus.Size = new System.Drawing.Size(65, 20);
this.lblStoreStatus.TabIndex = 245;
this.lblStoreStatus.Text = "等待启动";
this.lblStoreStatus.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
// chbDebug
//
this.chbDebug.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.chbDebug.AutoSize = true;
this.chbDebug.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chbDebug.Location = new System.Drawing.Point(312, 86);
this.chbDebug.Name = "chbDebug";
this.chbDebug.Size = new System.Drawing.Size(84, 24);
this.chbDebug.TabIndex = 325;
this.chbDebug.Text = "调试状态";
this.chbDebug.UseVisualStyleBackColor = true;
//
// btnScanTest
//
this.btnScanTest.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnScanTest.BackColor = System.Drawing.Color.White;
this.btnScanTest.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnScanTest.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnScanTest.Location = new System.Drawing.Point(690, 78);
this.btnScanTest.Name = "btnScanTest";
this.btnScanTest.Size = new System.Drawing.Size(120, 40);
this.btnScanTest.TabIndex = 283;
this.btnScanTest.Text = "扫码测试";
this.btnScanTest.UseVisualStyleBackColor = false;
this.btnScanTest.Click += new System.EventHandler(this.btnScanTest_Click);
//
// lblAgvInfo
//
this.lblAgvInfo.AutoSize = true;
this.lblAgvInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblAgvInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblAgvInfo.Location = new System.Drawing.Point(5, 89);
this.lblAgvInfo.Name = "lblAgvInfo";
this.lblAgvInfo.Size = new System.Drawing.Size(61, 17);
this.lblAgvInfo.TabIndex = 282;
this.lblAgvInfo.Text = "AGV 状态";
//
// btnShelfOut
//
this.btnShelfOut.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnShelfOut.BackColor = System.Drawing.Color.White;
this.btnShelfOut.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnShelfOut.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnShelfOut.Location = new System.Drawing.Point(568, 78);
this.btnShelfOut.Name = "btnShelfOut";
this.btnShelfOut.Size = new System.Drawing.Size(120, 40);
this.btnShelfOut.TabIndex = 281;
this.btnShelfOut.Text = "送出料串";
this.btnShelfOut.UseVisualStyleBackColor = false;
this.btnShelfOut.Click += new System.EventHandler(this.btnShelfOut_Click);
//
// chbAutoOut
//
this.chbAutoOut.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.chbAutoOut.AutoSize = true;
this.chbAutoOut.Checked = true;
this.chbAutoOut.CheckState = System.Windows.Forms.CheckState.Checked;
this.chbAutoOut.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chbAutoOut.Location = new System.Drawing.Point(398, 86);
this.chbAutoOut.Name = "chbAutoOut";
this.chbAutoOut.Size = new System.Drawing.Size(168, 24);
this.chbAutoOut.TabIndex = 280;
this.chbAutoOut.Text = "上料完成自动开始出库";
this.chbAutoOut.UseVisualStyleBackColor = true;
this.chbAutoOut.CheckedChanged += new System.EventHandler(this.chbAutoOut_CheckedChanged);
//
// btnStart
//
this.btnStart.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnStart.BackColor = System.Drawing.Color.White;
this.btnStart.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnStart.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnStart.Location = new System.Drawing.Point(841, 3);
this.btnStart.Location = new System.Drawing.Point(812, 78);
this.btnStart.Name = "btnStart";
this.btnStart.Size = new System.Drawing.Size(105, 40);
this.btnStart.Size = new System.Drawing.Size(120, 40);
this.btnStart.TabIndex = 86;
this.btnStart.Text = "复位";
this.btnStart.UseVisualStyleBackColor = false;
......@@ -209,8 +248,8 @@
this.btnSave.Cursor = System.Windows.Forms.Cursors.Default;
this.btnSave.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnSave.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSave.ForeColor = System.Drawing.Color.Red;
this.btnSave.Location = new System.Drawing.Point(301, 62);
this.btnSave.ForeColor = System.Drawing.Color.Blue;
this.btnSave.Location = new System.Drawing.Point(274, 70);
this.btnSave.Name = "btnSave";
this.btnSave.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.btnSave.Size = new System.Drawing.Size(118, 34);
......@@ -221,6 +260,7 @@
//
// panel2
//
this.panel2.Controls.Add(this.groupBox3);
this.panel2.Controls.Add(this.groupBox2);
this.panel2.Controls.Add(this.groupBox1);
this.panel2.Controls.Add(this.panBase);
......@@ -228,17 +268,96 @@
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(0, 0);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(969, 576);
this.panel2.Size = new System.Drawing.Size(949, 546);
this.panel2.TabIndex = 324;
//
// groupBox3
//
this.groupBox3.Controls.Add(this.LineStop_A);
this.groupBox3.Controls.Add(this.LineBack_A);
this.groupBox3.Controls.Add(this.Shelf_StopDown_A);
this.groupBox3.Controls.Add(this.Shelf_StopUp_A);
this.groupBox3.Controls.Add(this.LineStart_A);
this.groupBox3.Location = new System.Drawing.Point(499, 387);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(444, 120);
this.groupBox3.TabIndex = 281;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "IO操作";
//
// LineStop_A
//
this.LineStop_A.BackColor = System.Drawing.Color.White;
this.LineStop_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineStop_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineStop_A.Location = new System.Drawing.Point(293, 30);
this.LineStop_A.Name = "LineStop_A";
this.LineStop_A.Size = new System.Drawing.Size(135, 34);
this.LineStop_A.TabIndex = 288;
this.LineStop_A.Text = "电机停止";
this.LineStop_A.UseVisualStyleBackColor = false;
this.LineStop_A.Click += new System.EventHandler(this.LineStop_A_Click);
//
// LineBack_A
//
this.LineBack_A.BackColor = System.Drawing.Color.White;
this.LineBack_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineBack_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineBack_A.Location = new System.Drawing.Point(151, 70);
this.LineBack_A.Name = "LineBack_A";
this.LineBack_A.Size = new System.Drawing.Size(135, 34);
this.LineBack_A.TabIndex = 287;
this.LineBack_A.Text = "电机反转<<";
this.LineBack_A.UseVisualStyleBackColor = false;
this.LineBack_A.Click += new System.EventHandler(this.LineBack_A_Click);
//
// Shelf_StopDown_A
//
this.Shelf_StopDown_A.BackColor = System.Drawing.Color.White;
this.Shelf_StopDown_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Shelf_StopDown_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Shelf_StopDown_A.Location = new System.Drawing.Point(10, 70);
this.Shelf_StopDown_A.Name = "Shelf_StopDown_A";
this.Shelf_StopDown_A.Size = new System.Drawing.Size(135, 34);
this.Shelf_StopDown_A.TabIndex = 286;
this.Shelf_StopDown_A.Text = "阻挡下降 ↓";
this.Shelf_StopDown_A.UseVisualStyleBackColor = false;
this.Shelf_StopDown_A.Click += new System.EventHandler(this.Shelf_StopDown_A_Click);
//
// Shelf_StopUp_A
//
this.Shelf_StopUp_A.BackColor = System.Drawing.Color.White;
this.Shelf_StopUp_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Shelf_StopUp_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Shelf_StopUp_A.Location = new System.Drawing.Point(10, 30);
this.Shelf_StopUp_A.Name = "Shelf_StopUp_A";
this.Shelf_StopUp_A.Size = new System.Drawing.Size(135, 34);
this.Shelf_StopUp_A.TabIndex = 285;
this.Shelf_StopUp_A.Text = "阻挡上升 ↑";
this.Shelf_StopUp_A.UseVisualStyleBackColor = false;
this.Shelf_StopUp_A.Click += new System.EventHandler(this.Shelf_StopUp_A_Click);
//
// LineStart_A
//
this.LineStart_A.BackColor = System.Drawing.Color.White;
this.LineStart_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineStart_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineStart_A.Location = new System.Drawing.Point(151, 30);
this.LineStart_A.Name = "LineStart_A";
this.LineStart_A.Size = new System.Drawing.Size(135, 34);
this.LineStart_A.TabIndex = 284;
this.LineStart_A.Text = "电机启动>>";
this.LineStart_A.UseVisualStyleBackColor = false;
this.LineStart_A.Click += new System.EventHandler(this.LineStart_A_Click);
//
// groupBox2
//
this.groupBox2.Controls.Add(this.btnStartTest);
this.groupBox2.Controls.Add(this.lblTestMsg);
this.groupBox2.Controls.Add(this.btnTestStop);
this.groupBox2.Location = new System.Drawing.Point(499, 336);
this.groupBox2.Location = new System.Drawing.Point(499, 260);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(461, 184);
this.groupBox2.Size = new System.Drawing.Size(444, 123);
this.groupBox2.TabIndex = 280;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "上料轴运动测试";
......@@ -248,9 +367,9 @@
this.groupBox1.Controls.Add(this.batchAxisP2);
this.groupBox1.Controls.Add(this.batchAxisP1);
this.groupBox1.Controls.Add(this.btnSave);
this.groupBox1.Location = new System.Drawing.Point(499, 178);
this.groupBox1.Location = new System.Drawing.Point(499, 133);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(461, 152);
this.groupBox1.Size = new System.Drawing.Size(444, 121);
this.groupBox1.TabIndex = 280;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "上料轴点位信息";
......@@ -258,10 +377,10 @@
// batchAxisP2
//
this.batchAxisP2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.batchAxisP2.Location = new System.Drawing.Point(21, 80);
this.batchAxisP2.Location = new System.Drawing.Point(21, 70);
this.batchAxisP2.Name = "batchAxisP2";
this.batchAxisP2.PointBackColor = System.Drawing.Color.Transparent;
this.batchAxisP2.PointForeColor = System.Drawing.Color.Red;
this.batchAxisP2.PointForeColor = System.Drawing.Color.Blue;
this.batchAxisP2.PointText = "上升待机点P1:";
this.batchAxisP2.PointValue = 0;
this.batchAxisP2.Size = new System.Drawing.Size(233, 41);
......@@ -270,10 +389,10 @@
// batchAxisP1
//
this.batchAxisP1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.batchAxisP1.Location = new System.Drawing.Point(21, 33);
this.batchAxisP1.Location = new System.Drawing.Point(21, 23);
this.batchAxisP1.Name = "batchAxisP1";
this.batchAxisP1.PointBackColor = System.Drawing.Color.Transparent;
this.batchAxisP1.PointForeColor = System.Drawing.Color.Red;
this.batchAxisP1.PointForeColor = System.Drawing.Color.Blue;
this.batchAxisP1.PointText = "上升待机点P1:";
this.batchAxisP1.PointValue = 0;
this.batchAxisP1.Size = new System.Drawing.Size(233, 41);
......@@ -283,7 +402,7 @@
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(969, 576);
this.ClientSize = new System.Drawing.Size(949, 546);
this.Controls.Add(this.panel2);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
......@@ -296,6 +415,7 @@
this.panBase.ResumeLayout(false);
this.panBase.PerformLayout();
this.panel2.ResumeLayout(false);
this.groupBox3.ResumeLayout(false);
this.groupBox2.ResumeLayout(false);
this.groupBox1.ResumeLayout(false);
this.ResumeLayout(false);
......@@ -308,11 +428,8 @@
private System.Windows.Forms.Button btnScan;
private AxisMoveControl axisMoveControl1;
private System.Windows.Forms.Label lblCurrInfo;
private System.Windows.Forms.Label lblMoveInfo;
private System.Windows.Forms.Label lblWarnMsg;
protected System.Windows.Forms.Panel panBase;
protected System.Windows.Forms.Label lblName;
protected System.Windows.Forms.Label lblStoreStatus;
protected System.Windows.Forms.Button btnStart;
private System.Windows.Forms.Label lblTestMsg;
internal System.Windows.Forms.Button btnTestStop;
......@@ -323,6 +440,17 @@
private System.Windows.Forms.GroupBox groupBox1;
private useControl.AxisPointControl batchAxisP2;
private useControl.AxisPointControl batchAxisP1;
protected System.Windows.Forms.Button btnShelfOut;
private System.Windows.Forms.CheckBox chbAutoOut;
private System.Windows.Forms.Label lblAgvInfo;
protected System.Windows.Forms.Button btnScanTest;
private System.Windows.Forms.GroupBox groupBox3;
private System.Windows.Forms.Button LineStop_A;
private System.Windows.Forms.Button LineBack_A;
private System.Windows.Forms.Button Shelf_StopDown_A;
private System.Windows.Forms.Button Shelf_StopUp_A;
private System.Windows.Forms.Button LineStart_A;
protected System.Windows.Forms.CheckBox chbDebug;
}
}
......@@ -42,7 +42,7 @@ namespace OnlineStore.XLRStore
}
lblWarnMsg.Text = moveBean.WarnMsg;
lblCurrInfo.Text = moveBean.GetMoveStr();
lblAgvInfo.Text = "AGV " + moveBean.AgvName + " :" + AgvClient.GetAction(moveBean.AgvName);
}
catch (Exception ex)
{
......@@ -69,12 +69,14 @@ namespace OnlineStore.XLRStore
private void FrmStoreIOStatus_Load(object sender, EventArgs e)
{
this.chbAutoOut.Checked = moveBean.ShelfAutoOut;
axisMoveControl1.LoadData(StoreManager.XLRStore.inputEquip, new AxisBean[] { moveBean.BatchAxis });
lblName.Text = moveBean.Name;
batchAxisP1.SetMoveData(moveBean.BatchAxis, StoreManager.XLRStore.inputEquip.Config.BatchAxis_P1Speed, moveBean.BatchAxisP1);
batchAxisP2.SetMoveData(moveBean.BatchAxis, StoreManager.XLRStore.inputEquip.Config.BatchAxis_P2Speed, moveBean.BatchAxisP2 );
lblWarnMsg.Text = moveBean.WarnMsg;
lblCurrInfo.Text = moveBean.GetMoveStr();
lblAgvInfo.Text = "AGV " + moveBean.AgvName + " :" + AgvClient.GetAction(moveBean.AgvName);
IsLoad = true;
}
......@@ -204,6 +206,73 @@ namespace OnlineStore.XLRStore
btnTestStop.Enabled = false;
}
}
private void chbAutoOut_CheckedChanged(object sender, EventArgs e)
{
if (!IsLoad)
{
return;
}
moveBean.ShelfAutoOut = chbAutoOut.Checked;
LogUtil.info(moveBean.Name + "用户切换料架入库完成自动出库: " + moveBean.ShelfAutoOut);
}
private void btnShelfOut_Click(object sender, EventArgs e)
{
if (!IsLoad)
{
return;
}
moveBean.ShelfNeedLeave = true;
LogUtil.info(moveBean.Name + "用户点击:"+btnShelfOut.Text );
}
private void btnScanTest_Click(object sender, EventArgs e)
{
if (!IsLoad)
{
return;
}
string camera = moveBean.CameraName;
List<string> LastCodeList = CodeManager.CameraScan(camera, moveBean.Name.Trim() + "测试");
string msg = CodeManager.ProcessCode(LastCodeList);
LogUtil.info(moveBean.Name + "[" + camera + "]扫码测试结果:\r\n" + msg);
MessageBox.Show(moveBean.Name + "[" + camera + "]扫码测试结果:" + msg);
}
private void Shelf_StopUp_A_Click(object sender, EventArgs e)
{
LogUtil.info(moveBean.Name + "点击:" + Shelf_StopUp_A.Text);
moveBean.StopUp();
}
private void Shelf_StopDown_A_Click(object sender, EventArgs e)
{
LogUtil.info(moveBean.Name + "点击:" + Shelf_StopDown_A.Text);
moveBean.StopDown();
}
private void LineStart_A_Click(object sender, EventArgs e)
{
LogUtil.info(moveBean.Name + "点击:" + LineStart_A .Text);
moveBean.LineRun ();
}
private void LineBack_A_Click(object sender, EventArgs e)
{
LogUtil.info(moveBean.Name + "点击:" + LineBack_A.Text);
moveBean.LineBack ();
}
private void LineStop_A_Click(object sender, EventArgs e)
{
LogUtil.info(moveBean.Name + "点击:" + LineStop_A.Text);
moveBean.LineStop();
}
}
}
......
......@@ -22,18 +22,21 @@ namespace OnlineStore.XLRStore
this.timer1 = new System.Windows.Forms.Timer(this.components);
this.btnScan = new System.Windows.Forms.Button();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.btnSave = new System.Windows.Forms.Button();
this.chbPointEditEnable = new System.Windows.Forms.CheckBox();
this.groupBox11 = new System.Windows.Forms.GroupBox();
this.panel1 = new System.Windows.Forms.Panel();
this.mideleAxisP3 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.mideleAxisP2 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.updownAxisP2 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.updownAxisP3 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.groupBox10 = new System.Windows.Forms.GroupBox();
this.mideleAxisP1 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.updownAxisP1 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.groupBox9 = new System.Windows.Forms.GroupBox();
this.updownAxisP8 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.updownAxisP9 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.mideleAxisP6 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.mideleAxisP2 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.mideleAxisP1 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.updownAxisP1 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.updownAxisP2 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.updownAxisP3 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.btnSave = new System.Windows.Forms.Button();
this.groupBox8 = new System.Windows.Forms.GroupBox();
this.updownAxisP13 = new OnlineStore.XLRStore.useControl.AxisPointControl();
this.mideleAxisP8 = new OnlineStore.XLRStore.useControl.AxisPointControl();
......@@ -80,24 +83,32 @@ namespace OnlineStore.XLRStore
this.groupBox4 = new System.Windows.Forms.GroupBox();
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
this.tabPage3 = new System.Windows.Forms.TabPage();
this.groupBox6 = new System.Windows.Forms.GroupBox();
this.btnHlhasReel = new System.Windows.Forms.Button();
this.lblwidth = new System.Windows.Forms.Label();
this.lblMoveInfo = new System.Windows.Forms.Label();
this.lblAgvInfo = new System.Windows.Forms.Label();
this.lblThisSta = new System.Windows.Forms.Label();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.panBase = new System.Windows.Forms.Panel();
this.btnHlhasReel = new System.Windows.Forms.Button();
this.chbMoveStop = new System.Windows.Forms.CheckBox();
this.lblName = new System.Windows.Forms.Label();
this.chbDebug = new System.Windows.Forms.CheckBox();
this.lblStoreStatus = new System.Windows.Forms.Label();
this.btnStart = new System.Windows.Forms.Button();
this.btnStop = new System.Windows.Forms.Button();
this.groupBox10 = new System.Windows.Forms.GroupBox();
this.groupBox11 = new System.Windows.Forms.GroupBox();
this.groupBox6 = new System.Windows.Forms.GroupBox();
this.groupBox12 = new System.Windows.Forms.GroupBox();
this.btnOutTest = new System.Windows.Forms.Button();
this.cmbOutShelf = new System.Windows.Forms.ComboBox();
this.label2 = new System.Windows.Forms.Label();
this.cmbOutStart = new System.Windows.Forms.ComboBox();
this.button1 = new System.Windows.Forms.Button();
this.cmbInstoreTargetP = new System.Windows.Forms.ComboBox();
this.label1 = new System.Windows.Forms.Label();
this.cmbInstoreShelf = new System.Windows.Forms.ComboBox();
this.lblwidth = new System.Windows.Forms.Label();
this.lblMoveInfo = new System.Windows.Forms.Label();
this.lblThisSta = new System.Windows.Forms.Label();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage2.SuspendLayout();
this.groupBox11.SuspendLayout();
this.panel1.SuspendLayout();
this.groupBox10.SuspendLayout();
this.groupBox9.SuspendLayout();
this.groupBox8.SuspendLayout();
this.groupBox7.SuspendLayout();
......@@ -109,11 +120,10 @@ namespace OnlineStore.XLRStore
this.groupBox3.SuspendLayout();
this.groupBox4.SuspendLayout();
this.tabPage3.SuspendLayout();
this.panBase.SuspendLayout();
this.groupBox6.SuspendLayout();
this.groupBox12.SuspendLayout();
this.tabControl1.SuspendLayout();
this.panBase.SuspendLayout();
this.groupBox10.SuspendLayout();
this.groupBox11.SuspendLayout();
this.SuspendLayout();
//
// timer1
......@@ -135,6 +145,7 @@ namespace OnlineStore.XLRStore
//
// tabPage2
//
this.tabPage2.Controls.Add(this.chbPointEditEnable);
this.tabPage2.Controls.Add(this.groupBox11);
this.tabPage2.Controls.Add(this.groupBox10);
this.tabPage2.Controls.Add(this.groupBox9);
......@@ -147,23 +158,33 @@ namespace OnlineStore.XLRStore
this.tabPage2.Location = new System.Drawing.Point(4, 26);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage2.Size = new System.Drawing.Size(985, 617);
this.tabPage2.Size = new System.Drawing.Size(957, 561);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = " 伺服信息 ";
this.tabPage2.UseVisualStyleBackColor = true;
this.tabPage2.Click += new System.EventHandler(this.tabPage2_Click);
//
// btnSave
// chbPointEditEnable
//
this.btnSave.BackColor = System.Drawing.Color.White;
this.btnSave.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnSave.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSave.Location = new System.Drawing.Point(735, 278);
this.btnSave.Name = "btnSave";
this.btnSave.Size = new System.Drawing.Size(163, 40);
this.btnSave.TabIndex = 226;
this.btnSave.Text = "保存点位信息";
this.btnSave.UseVisualStyleBackColor = false;
this.btnSave.Click += new System.EventHandler(this.btnSave_Click);
this.chbPointEditEnable.AutoSize = true;
this.chbPointEditEnable.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chbPointEditEnable.Location = new System.Drawing.Point(606, 265);
this.chbPointEditEnable.Name = "chbPointEditEnable";
this.chbPointEditEnable.Size = new System.Drawing.Size(125, 26);
this.chbPointEditEnable.TabIndex = 229;
this.chbPointEditEnable.Text = "启用点位编辑";
this.chbPointEditEnable.UseVisualStyleBackColor = true;
this.chbPointEditEnable.CheckedChanged += new System.EventHandler(this.chbPointEditEnable_CheckedChanged);
//
// groupBox11
//
this.groupBox11.Controls.Add(this.panel1);
this.groupBox11.Location = new System.Drawing.Point(718, 312);
this.groupBox11.Name = "groupBox11";
this.groupBox11.Size = new System.Drawing.Size(239, 213);
this.groupBox11.TabIndex = 228;
this.groupBox11.TabStop = false;
this.groupBox11.Text = "料串取放料点位";
//
// panel1
//
......@@ -174,14 +195,14 @@ namespace OnlineStore.XLRStore
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(3, 19);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(241, 210);
this.panel1.Size = new System.Drawing.Size(233, 191);
this.panel1.TabIndex = 220;
this.panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.panel1_Paint);
//
// mideleAxisP3
//
this.mideleAxisP3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP3.Location = new System.Drawing.Point(3, 56);
this.mideleAxisP3.Location = new System.Drawing.Point(3, 50);
this.mideleAxisP3.Name = "mideleAxisP3";
this.mideleAxisP3.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP3.PointForeColor = System.Drawing.Color.Black;
......@@ -190,14 +211,85 @@ namespace OnlineStore.XLRStore
this.mideleAxisP3.Size = new System.Drawing.Size(223, 41);
this.mideleAxisP3.TabIndex = 2;
//
// mideleAxisP2
//
this.mideleAxisP2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP2.Location = new System.Drawing.Point(3, 9);
this.mideleAxisP2.Name = "mideleAxisP2";
this.mideleAxisP2.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP2.PointForeColor = System.Drawing.Color.Black;
this.mideleAxisP2.PointText = "旋转轴-A料口取料点P2:";
this.mideleAxisP2.PointValue = 0;
this.mideleAxisP2.Size = new System.Drawing.Size(223, 41);
this.mideleAxisP2.TabIndex = 1;
//
// updownAxisP2
//
this.updownAxisP2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP2.Location = new System.Drawing.Point(3, 96);
this.updownAxisP2.Name = "updownAxisP2";
this.updownAxisP2.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP2.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP2.PointText = "升降轴-A料口取料点P2:";
this.updownAxisP2.PointValue = 0;
this.updownAxisP2.Size = new System.Drawing.Size(223, 41);
this.updownAxisP2.TabIndex = 1;
//
// updownAxisP3
//
this.updownAxisP3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP3.Location = new System.Drawing.Point(3, 137);
this.updownAxisP3.Name = "updownAxisP3";
this.updownAxisP3.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP3.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP3.PointText = "升降轴-B料口取料点P3:";
this.updownAxisP3.PointValue = 0;
this.updownAxisP3.Size = new System.Drawing.Size(223, 41);
this.updownAxisP3.TabIndex = 2;
//
// groupBox10
//
this.groupBox10.Controls.Add(this.mideleAxisP1);
this.groupBox10.Controls.Add(this.updownAxisP1);
this.groupBox10.Location = new System.Drawing.Point(600, 6);
this.groupBox10.Name = "groupBox10";
this.groupBox10.Size = new System.Drawing.Size(286, 104);
this.groupBox10.TabIndex = 227;
this.groupBox10.TabStop = false;
this.groupBox10.Text = "待机点点位";
//
// mideleAxisP1
//
this.mideleAxisP1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP1.Location = new System.Drawing.Point(6, 18);
this.mideleAxisP1.Name = "mideleAxisP1";
this.mideleAxisP1.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP1.PointForeColor = System.Drawing.Color.Black;
this.mideleAxisP1.PointText = "旋转轴待机点P1:";
this.mideleAxisP1.PointValue = 0;
this.mideleAxisP1.Size = new System.Drawing.Size(247, 41);
this.mideleAxisP1.TabIndex = 0;
//
// updownAxisP1
//
this.updownAxisP1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP1.Location = new System.Drawing.Point(6, 57);
this.updownAxisP1.Name = "updownAxisP1";
this.updownAxisP1.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP1.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP1.PointText = "升降轴-待机点P1:";
this.updownAxisP1.PointValue = 0;
this.updownAxisP1.Size = new System.Drawing.Size(247, 41);
this.updownAxisP1.TabIndex = 0;
//
// groupBox9
//
this.groupBox9.Controls.Add(this.updownAxisP8);
this.groupBox9.Controls.Add(this.updownAxisP9);
this.groupBox9.Controls.Add(this.mideleAxisP6);
this.groupBox9.Location = new System.Drawing.Point(600, 116);
this.groupBox9.Location = new System.Drawing.Point(600, 112);
this.groupBox9.Name = "groupBox9";
this.groupBox9.Size = new System.Drawing.Size(286, 146);
this.groupBox9.Size = new System.Drawing.Size(286, 144);
this.groupBox9.TabIndex = 225;
this.groupBox9.TabStop = false;
this.groupBox9.Text = "NG料区点位";
......@@ -205,9 +297,9 @@ namespace OnlineStore.XLRStore
// updownAxisP8
//
this.updownAxisP8.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP8.Location = new System.Drawing.Point(6, 59);
this.updownAxisP8.Location = new System.Drawing.Point(6, 54);
this.updownAxisP8.Name = "updownAxisP8";
this.updownAxisP8.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP8.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP8.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP8.PointText = "升降轴-NG料区放料高点P8:";
this.updownAxisP8.PointValue = 0;
......@@ -217,9 +309,9 @@ namespace OnlineStore.XLRStore
// updownAxisP9
//
this.updownAxisP9.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP9.Location = new System.Drawing.Point(6, 100);
this.updownAxisP9.Location = new System.Drawing.Point(6, 92);
this.updownAxisP9.Name = "updownAxisP9";
this.updownAxisP9.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP9.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP9.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP9.PointText = "升降轴-NG料区放料低点P9:";
this.updownAxisP9.PointValue = 0;
......@@ -229,7 +321,7 @@ namespace OnlineStore.XLRStore
// mideleAxisP6
//
this.mideleAxisP6.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP6.Location = new System.Drawing.Point(6, 18);
this.mideleAxisP6.Location = new System.Drawing.Point(6, 16);
this.mideleAxisP6.Name = "mideleAxisP6";
this.mideleAxisP6.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP6.PointForeColor = System.Drawing.Color.Black;
......@@ -238,74 +330,27 @@ namespace OnlineStore.XLRStore
this.mideleAxisP6.Size = new System.Drawing.Size(247, 41);
this.mideleAxisP6.TabIndex = 5;
//
// mideleAxisP2
//
this.mideleAxisP2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP2.Location = new System.Drawing.Point(3, 9);
this.mideleAxisP2.Name = "mideleAxisP2";
this.mideleAxisP2.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP2.PointForeColor = System.Drawing.Color.Black;
this.mideleAxisP2.PointText = "旋转轴-A料口取料点P2:";
this.mideleAxisP2.PointValue = 0;
this.mideleAxisP2.Size = new System.Drawing.Size(223, 41);
this.mideleAxisP2.TabIndex = 1;
//
// mideleAxisP1
//
this.mideleAxisP1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP1.Location = new System.Drawing.Point(6, 20);
this.mideleAxisP1.Name = "mideleAxisP1";
this.mideleAxisP1.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP1.PointForeColor = System.Drawing.Color.Black;
this.mideleAxisP1.PointText = "旋转轴待机点P1:";
this.mideleAxisP1.PointValue = 0;
this.mideleAxisP1.Size = new System.Drawing.Size(247, 41);
this.mideleAxisP1.TabIndex = 0;
//
// updownAxisP1
//
this.updownAxisP1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP1.Location = new System.Drawing.Point(6, 59);
this.updownAxisP1.Name = "updownAxisP1";
this.updownAxisP1.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP1.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP1.PointText = "升降轴-待机点P1:";
this.updownAxisP1.PointValue = 0;
this.updownAxisP1.Size = new System.Drawing.Size(247, 41);
this.updownAxisP1.TabIndex = 0;
//
// updownAxisP2
//
this.updownAxisP2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP2.Location = new System.Drawing.Point(3, 103);
this.updownAxisP2.Name = "updownAxisP2";
this.updownAxisP2.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP2.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP2.PointText = "升降轴-A料口取料点P2:";
this.updownAxisP2.PointValue = 0;
this.updownAxisP2.Size = new System.Drawing.Size(223, 41);
this.updownAxisP2.TabIndex = 1;
//
// updownAxisP3
// btnSave
//
this.updownAxisP3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP3.Location = new System.Drawing.Point(3, 150);
this.updownAxisP3.Name = "updownAxisP3";
this.updownAxisP3.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP3.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP3.PointText = "升降轴-B料口取料点P3:";
this.updownAxisP3.PointValue = 0;
this.updownAxisP3.Size = new System.Drawing.Size(223, 41);
this.updownAxisP3.TabIndex = 2;
this.btnSave.BackColor = System.Drawing.Color.White;
this.btnSave.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnSave.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSave.Location = new System.Drawing.Point(761, 263);
this.btnSave.Name = "btnSave";
this.btnSave.Size = new System.Drawing.Size(163, 40);
this.btnSave.TabIndex = 226;
this.btnSave.Text = "保存点位信息";
this.btnSave.UseVisualStyleBackColor = false;
this.btnSave.Click += new System.EventHandler(this.btnSave_Click);
//
// groupBox8
//
this.groupBox8.Controls.Add(this.updownAxisP13);
this.groupBox8.Controls.Add(this.mideleAxisP8);
this.groupBox8.Controls.Add(this.updownAxisP12);
this.groupBox8.Location = new System.Drawing.Point(302, 154);
this.groupBox8.Location = new System.Drawing.Point(302, 147);
this.groupBox8.Name = "groupBox8";
this.groupBox8.Size = new System.Drawing.Size(286, 150);
this.groupBox8.Size = new System.Drawing.Size(286, 144);
this.groupBox8.TabIndex = 224;
this.groupBox8.TabStop = false;
this.groupBox8.Text = "B下暂存区点位";
......@@ -313,9 +358,9 @@ namespace OnlineStore.XLRStore
// updownAxisP13
//
this.updownAxisP13.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP13.Location = new System.Drawing.Point(6, 103);
this.updownAxisP13.Location = new System.Drawing.Point(6, 95);
this.updownAxisP13.Name = "updownAxisP13";
this.updownAxisP13.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP13.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP13.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP13.PointText = "升降轴-B下暂存区取料低点P13:";
this.updownAxisP13.PointValue = 0;
......@@ -325,7 +370,7 @@ namespace OnlineStore.XLRStore
// mideleAxisP8
//
this.mideleAxisP8.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP8.Location = new System.Drawing.Point(6, 21);
this.mideleAxisP8.Location = new System.Drawing.Point(6, 19);
this.mideleAxisP8.Name = "mideleAxisP8";
this.mideleAxisP8.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP8.PointForeColor = System.Drawing.Color.Black;
......@@ -337,9 +382,9 @@ namespace OnlineStore.XLRStore
// updownAxisP12
//
this.updownAxisP12.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP12.Location = new System.Drawing.Point(6, 62);
this.updownAxisP12.Location = new System.Drawing.Point(6, 57);
this.updownAxisP12.Name = "updownAxisP12";
this.updownAxisP12.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP12.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP12.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP12.PointText = "升降轴-B下暂存区取料高点P12:";
this.updownAxisP12.PointValue = 0;
......@@ -353,7 +398,7 @@ namespace OnlineStore.XLRStore
this.groupBox7.Controls.Add(this.updownAxisP11);
this.groupBox7.Location = new System.Drawing.Point(302, 6);
this.groupBox7.Name = "groupBox7";
this.groupBox7.Size = new System.Drawing.Size(286, 146);
this.groupBox7.Size = new System.Drawing.Size(286, 140);
this.groupBox7.TabIndex = 224;
this.groupBox7.TabStop = false;
this.groupBox7.Text = "B上暂存区点位";
......@@ -361,7 +406,7 @@ namespace OnlineStore.XLRStore
// mideleAxisP5
//
this.mideleAxisP5.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP5.Location = new System.Drawing.Point(6, 20);
this.mideleAxisP5.Location = new System.Drawing.Point(6, 18);
this.mideleAxisP5.Name = "mideleAxisP5";
this.mideleAxisP5.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP5.PointForeColor = System.Drawing.Color.Black;
......@@ -373,9 +418,9 @@ namespace OnlineStore.XLRStore
// updownAxisP10
//
this.updownAxisP10.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP10.Location = new System.Drawing.Point(6, 61);
this.updownAxisP10.Location = new System.Drawing.Point(6, 56);
this.updownAxisP10.Name = "updownAxisP10";
this.updownAxisP10.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP10.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP10.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP10.PointText = "升降轴-B上暂存区放料高点P10:";
this.updownAxisP10.PointValue = 0;
......@@ -385,9 +430,9 @@ namespace OnlineStore.XLRStore
// updownAxisP11
//
this.updownAxisP11.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP11.Location = new System.Drawing.Point(6, 102);
this.updownAxisP11.Location = new System.Drawing.Point(6, 94);
this.updownAxisP11.Name = "updownAxisP11";
this.updownAxisP11.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP11.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP11.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP11.PointText = "升降轴-B上暂存区放料低点P11:";
this.updownAxisP11.PointValue = 0;
......@@ -399,9 +444,9 @@ namespace OnlineStore.XLRStore
this.groupBox5.Controls.Add(this.mideleAxisP7);
this.groupBox5.Controls.Add(this.updownAxisP6);
this.groupBox5.Controls.Add(this.updownAxisP7);
this.groupBox5.Location = new System.Drawing.Point(7, 154);
this.groupBox5.Location = new System.Drawing.Point(7, 147);
this.groupBox5.Name = "groupBox5";
this.groupBox5.Size = new System.Drawing.Size(286, 150);
this.groupBox5.Size = new System.Drawing.Size(286, 144);
this.groupBox5.TabIndex = 223;
this.groupBox5.TabStop = false;
this.groupBox5.Text = "A下暂存区点位";
......@@ -409,7 +454,7 @@ namespace OnlineStore.XLRStore
// mideleAxisP7
//
this.mideleAxisP7.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP7.Location = new System.Drawing.Point(6, 18);
this.mideleAxisP7.Location = new System.Drawing.Point(6, 16);
this.mideleAxisP7.Name = "mideleAxisP7";
this.mideleAxisP7.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP7.PointForeColor = System.Drawing.Color.Black;
......@@ -421,9 +466,9 @@ namespace OnlineStore.XLRStore
// updownAxisP6
//
this.updownAxisP6.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP6.Location = new System.Drawing.Point(6, 59);
this.updownAxisP6.Location = new System.Drawing.Point(6, 54);
this.updownAxisP6.Name = "updownAxisP6";
this.updownAxisP6.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP6.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP6.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP6.PointText = "升降轴-A下暂存区取料高点P6:";
this.updownAxisP6.PointValue = 0;
......@@ -433,9 +478,9 @@ namespace OnlineStore.XLRStore
// updownAxisP7
//
this.updownAxisP7.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP7.Location = new System.Drawing.Point(6, 100);
this.updownAxisP7.Location = new System.Drawing.Point(6, 92);
this.updownAxisP7.Name = "updownAxisP7";
this.updownAxisP7.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP7.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP7.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP7.PointText = "升降轴-A下暂存区取料低点P7:";
this.updownAxisP7.PointValue = 0;
......@@ -449,7 +494,7 @@ namespace OnlineStore.XLRStore
this.groupBox2.Controls.Add(this.updownAxisP5);
this.groupBox2.Location = new System.Drawing.Point(7, 6);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(286, 146);
this.groupBox2.Size = new System.Drawing.Size(286, 140);
this.groupBox2.TabIndex = 222;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "A上暂存区点位";
......@@ -457,7 +502,7 @@ namespace OnlineStore.XLRStore
// mideleAxisP4
//
this.mideleAxisP4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.mideleAxisP4.Location = new System.Drawing.Point(6, 21);
this.mideleAxisP4.Location = new System.Drawing.Point(6, 19);
this.mideleAxisP4.Name = "mideleAxisP4";
this.mideleAxisP4.PointBackColor = System.Drawing.Color.SkyBlue;
this.mideleAxisP4.PointForeColor = System.Drawing.Color.Black;
......@@ -469,9 +514,9 @@ namespace OnlineStore.XLRStore
// updownAxisP4
//
this.updownAxisP4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP4.Location = new System.Drawing.Point(6, 62);
this.updownAxisP4.Location = new System.Drawing.Point(6, 57);
this.updownAxisP4.Name = "updownAxisP4";
this.updownAxisP4.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP4.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP4.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP4.PointText = "升降轴-A上暂存区放料高点P4:";
this.updownAxisP4.PointValue = 0;
......@@ -481,9 +526,9 @@ namespace OnlineStore.XLRStore
// updownAxisP5
//
this.updownAxisP5.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.updownAxisP5.Location = new System.Drawing.Point(6, 103);
this.updownAxisP5.Location = new System.Drawing.Point(6, 95);
this.updownAxisP5.Name = "updownAxisP5";
this.updownAxisP5.PointBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
this.updownAxisP5.PointBackColor = System.Drawing.Color.LightGreen;
this.updownAxisP5.PointForeColor = System.Drawing.Color.Black;
this.updownAxisP5.PointText = "升降轴-A上暂存区放料低点P5:";
this.updownAxisP5.PointValue = 0;
......@@ -492,9 +537,9 @@ namespace OnlineStore.XLRStore
//
// axisMoveControl1
//
this.axisMoveControl1.Location = new System.Drawing.Point(5, 310);
this.axisMoveControl1.Location = new System.Drawing.Point(5, 292);
this.axisMoveControl1.Name = "axisMoveControl1";
this.axisMoveControl1.Size = new System.Drawing.Size(719, 269);
this.axisMoveControl1.Size = new System.Drawing.Size(713, 264);
this.axisMoveControl1.TabIndex = 219;
//
// tabPage1
......@@ -507,16 +552,13 @@ namespace OnlineStore.XLRStore
this.tabPage1.Location = new System.Drawing.Point(4, 26);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage1.Size = new System.Drawing.Size(985, 615);
this.tabPage1.Size = new System.Drawing.Size(957, 561);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = " IO列表 ";
this.tabPage1.UseVisualStyleBackColor = true;
//
// groupDO
//
this.groupDO.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupDO.Controls.Add(this.LineStop_B);
this.groupDO.Controls.Add(this.LineBack_B);
this.groupDO.Controls.Add(this.LineStart_B);
......@@ -530,7 +572,7 @@ namespace OnlineStore.XLRStore
this.groupDO.Controls.Add(this.btnCloseAll);
this.groupDO.Location = new System.Drawing.Point(480, 119);
this.groupDO.Name = "groupDO";
this.groupDO.Size = new System.Drawing.Size(496, 217);
this.groupDO.Size = new System.Drawing.Size(466, 195);
this.groupDO.TabIndex = 255;
this.groupDO.TabStop = false;
this.groupDO.Text = "IO操作测试";
......@@ -540,7 +582,7 @@ namespace OnlineStore.XLRStore
this.LineStop_B.BackColor = System.Drawing.Color.White;
this.LineStop_B.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineStop_B.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineStop_B.Location = new System.Drawing.Point(344, 101);
this.LineStop_B.Location = new System.Drawing.Point(314, 101);
this.LineStop_B.Name = "LineStop_B";
this.LineStop_B.Size = new System.Drawing.Size(135, 34);
this.LineStop_B.TabIndex = 286;
......@@ -553,7 +595,7 @@ namespace OnlineStore.XLRStore
this.LineBack_B.BackColor = System.Drawing.Color.White;
this.LineBack_B.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineBack_B.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineBack_B.Location = new System.Drawing.Point(344, 61);
this.LineBack_B.Location = new System.Drawing.Point(314, 61);
this.LineBack_B.Name = "LineBack_B";
this.LineBack_B.Size = new System.Drawing.Size(135, 34);
this.LineBack_B.TabIndex = 285;
......@@ -566,7 +608,7 @@ namespace OnlineStore.XLRStore
this.LineStart_B.BackColor = System.Drawing.Color.White;
this.LineStart_B.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineStart_B.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineStart_B.Location = new System.Drawing.Point(344, 21);
this.LineStart_B.Location = new System.Drawing.Point(314, 21);
this.LineStart_B.Name = "LineStart_B";
this.LineStart_B.Size = new System.Drawing.Size(135, 34);
this.LineStart_B.TabIndex = 284;
......@@ -579,7 +621,7 @@ namespace OnlineStore.XLRStore
this.LineStop_A.BackColor = System.Drawing.Color.White;
this.LineStop_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineStop_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineStop_A.Location = new System.Drawing.Point(173, 101);
this.LineStop_A.Location = new System.Drawing.Point(162, 101);
this.LineStop_A.Name = "LineStop_A";
this.LineStop_A.Size = new System.Drawing.Size(135, 34);
this.LineStop_A.TabIndex = 283;
......@@ -592,7 +634,7 @@ namespace OnlineStore.XLRStore
this.LineBack_A.BackColor = System.Drawing.Color.White;
this.LineBack_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineBack_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineBack_A.Location = new System.Drawing.Point(173, 61);
this.LineBack_A.Location = new System.Drawing.Point(162, 61);
this.LineBack_A.Name = "LineBack_A";
this.LineBack_A.Size = new System.Drawing.Size(135, 34);
this.LineBack_A.TabIndex = 282;
......@@ -605,7 +647,7 @@ namespace OnlineStore.XLRStore
this.Shelf_StopDown_B.BackColor = System.Drawing.Color.White;
this.Shelf_StopDown_B.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Shelf_StopDown_B.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Shelf_StopDown_B.Location = new System.Drawing.Point(15, 151);
this.Shelf_StopDown_B.Location = new System.Drawing.Point(10, 145);
this.Shelf_StopDown_B.Name = "Shelf_StopDown_B";
this.Shelf_StopDown_B.Size = new System.Drawing.Size(135, 34);
this.Shelf_StopDown_B.TabIndex = 277;
......@@ -618,7 +660,7 @@ namespace OnlineStore.XLRStore
this.Shelf_StopDown_A.BackColor = System.Drawing.Color.White;
this.Shelf_StopDown_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Shelf_StopDown_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Shelf_StopDown_A.Location = new System.Drawing.Point(15, 61);
this.Shelf_StopDown_A.Location = new System.Drawing.Point(10, 61);
this.Shelf_StopDown_A.Name = "Shelf_StopDown_A";
this.Shelf_StopDown_A.Size = new System.Drawing.Size(135, 34);
this.Shelf_StopDown_A.TabIndex = 276;
......@@ -631,7 +673,7 @@ namespace OnlineStore.XLRStore
this.Shelf_StopUp_A.BackColor = System.Drawing.Color.White;
this.Shelf_StopUp_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Shelf_StopUp_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Shelf_StopUp_A.Location = new System.Drawing.Point(15, 21);
this.Shelf_StopUp_A.Location = new System.Drawing.Point(10, 21);
this.Shelf_StopUp_A.Name = "Shelf_StopUp_A";
this.Shelf_StopUp_A.Size = new System.Drawing.Size(135, 34);
this.Shelf_StopUp_A.TabIndex = 274;
......@@ -644,7 +686,7 @@ namespace OnlineStore.XLRStore
this.Shelf_StopUp_B.BackColor = System.Drawing.Color.White;
this.Shelf_StopUp_B.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.Shelf_StopUp_B.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Shelf_StopUp_B.Location = new System.Drawing.Point(15, 111);
this.Shelf_StopUp_B.Location = new System.Drawing.Point(10, 105);
this.Shelf_StopUp_B.Name = "Shelf_StopUp_B";
this.Shelf_StopUp_B.Size = new System.Drawing.Size(135, 34);
this.Shelf_StopUp_B.TabIndex = 273;
......@@ -657,7 +699,7 @@ namespace OnlineStore.XLRStore
this.LineStart_A.BackColor = System.Drawing.Color.White;
this.LineStart_A.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.LineStart_A.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.LineStart_A.Location = new System.Drawing.Point(173, 21);
this.LineStart_A.Location = new System.Drawing.Point(162, 21);
this.LineStart_A.Name = "LineStart_A";
this.LineStart_A.Size = new System.Drawing.Size(135, 34);
this.LineStart_A.TabIndex = 255;
......@@ -670,7 +712,7 @@ namespace OnlineStore.XLRStore
this.btnCloseAll.BackColor = System.Drawing.Color.White;
this.btnCloseAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnCloseAll.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnCloseAll.Location = new System.Drawing.Point(344, 160);
this.btnCloseAll.Location = new System.Drawing.Point(314, 145);
this.btnCloseAll.Name = "btnCloseAll";
this.btnCloseAll.Size = new System.Drawing.Size(135, 34);
this.btnCloseAll.TabIndex = 259;
......@@ -680,14 +722,13 @@ namespace OnlineStore.XLRStore
//
// clampJawControl1
//
this.clampJawControl1.Location = new System.Drawing.Point(474, 342);
this.clampJawControl1.Location = new System.Drawing.Point(480, 320);
this.clampJawControl1.Name = "clampJawControl1";
this.clampJawControl1.Size = new System.Drawing.Size(505, 216);
this.clampJawControl1.Size = new System.Drawing.Size(466, 216);
this.clampJawControl1.TabIndex = 280;
//
// groupBox1
//
this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.groupBox1.Controls.Add(this.txtDOIndex);
this.groupBox1.Controls.Add(this.txtDoName);
this.groupBox1.Controls.Add(this.lblAddr);
......@@ -700,7 +741,7 @@ namespace OnlineStore.XLRStore
this.groupBox1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.groupBox1.Location = new System.Drawing.Point(480, 6);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(496, 107);
this.groupBox1.Size = new System.Drawing.Size(466, 107);
this.groupBox1.TabIndex = 105;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "DO写入";
......@@ -709,7 +750,7 @@ namespace OnlineStore.XLRStore
//
this.txtDOIndex.Enabled = false;
this.txtDOIndex.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtDOIndex.Location = new System.Drawing.Point(445, 64);
this.txtDOIndex.Location = new System.Drawing.Point(386, 47);
this.txtDOIndex.MaxLength = 10;
this.txtDOIndex.Name = "txtDOIndex";
this.txtDOIndex.Size = new System.Drawing.Size(47, 23);
......@@ -823,7 +864,7 @@ namespace OnlineStore.XLRStore
this.groupBox3.Controls.Add(this.tableLayoutPanel1);
this.groupBox3.Location = new System.Drawing.Point(6, 6);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(231, 602);
this.groupBox3.Size = new System.Drawing.Size(231, 546);
this.groupBox3.TabIndex = 103;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "DI列表";
......@@ -841,7 +882,7 @@ namespace OnlineStore.XLRStore
this.tableLayoutPanel1.RowCount = 2;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(220, 582);
this.tableLayoutPanel1.Size = new System.Drawing.Size(220, 526);
this.tableLayoutPanel1.TabIndex = 102;
//
// groupBox4
......@@ -851,7 +892,7 @@ namespace OnlineStore.XLRStore
this.groupBox4.Controls.Add(this.tableLayoutPanel2);
this.groupBox4.Location = new System.Drawing.Point(243, 6);
this.groupBox4.Name = "groupBox4";
this.groupBox4.Size = new System.Drawing.Size(231, 602);
this.groupBox4.Size = new System.Drawing.Size(231, 546);
this.groupBox4.TabIndex = 104;
this.groupBox4.TabStop = false;
this.groupBox4.Text = "DO列表";
......@@ -869,145 +910,68 @@ namespace OnlineStore.XLRStore
this.tableLayoutPanel2.RowCount = 2;
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(220, 582);
this.tableLayoutPanel2.Size = new System.Drawing.Size(220, 526);
this.tableLayoutPanel2.TabIndex = 103;
//
// tabPage3
//
this.tabPage3.Controls.Add(this.panBase);
this.tabPage3.Controls.Add(this.groupBox6);
this.tabPage3.Location = new System.Drawing.Point(4, 26);
this.tabPage3.Name = "tabPage3";
this.tabPage3.Size = new System.Drawing.Size(985, 615);
this.tabPage3.Size = new System.Drawing.Size(986, 561);
this.tabPage3.TabIndex = 2;
this.tabPage3.Text = "状态信息";
this.tabPage3.UseVisualStyleBackColor = true;
//
// groupBox6
//
this.groupBox6.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox6.Controls.Add(this.btnHlhasReel);
this.groupBox6.Controls.Add(this.lblwidth);
this.groupBox6.Controls.Add(this.lblMoveInfo);
this.groupBox6.Controls.Add(this.lblAgvInfo);
this.groupBox6.Controls.Add(this.lblThisSta);
this.groupBox6.Location = new System.Drawing.Point(3, 3);
this.groupBox6.Name = "groupBox6";
this.groupBox6.Size = new System.Drawing.Size(979, 609);
this.groupBox6.TabIndex = 278;
this.groupBox6.TabStop = false;
this.groupBox6.Text = "消息";
//
// btnHlhasReel
//
this.btnHlhasReel.BackColor = System.Drawing.Color.SkyBlue;
this.btnHlhasReel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnHlhasReel.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnHlhasReel.Location = new System.Drawing.Point(11, 507);
this.btnHlhasReel.Name = "btnHlhasReel";
this.btnHlhasReel.Size = new System.Drawing.Size(217, 55);
this.btnHlhasReel.TabIndex = 288;
this.btnHlhasReel.Text = "忽略夹爪有料信号";
this.btnHlhasReel.UseVisualStyleBackColor = false;
this.btnHlhasReel.Visible = false;
//
// lblwidth
//
this.lblwidth.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblwidth.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblwidth.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblwidth.Location = new System.Drawing.Point(6, 17);
this.lblwidth.Name = "lblwidth";
this.lblwidth.Size = new System.Drawing.Size(967, 117);
this.lblwidth.TabIndex = 279;
this.lblwidth.Text = "当前料盘:";
//
// lblMoveInfo
//
this.lblMoveInfo.AutoSize = true;
this.lblMoveInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblMoveInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblMoveInfo.Location = new System.Drawing.Point(6, 164);
this.lblMoveInfo.Name = "lblMoveInfo";
this.lblMoveInfo.Size = new System.Drawing.Size(59, 17);
this.lblMoveInfo.TabIndex = 278;
this.lblMoveInfo.Text = "运动信息:";
//
// lblAgvInfo
//
this.lblAgvInfo.AutoSize = true;
this.lblAgvInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblAgvInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblAgvInfo.Location = new System.Drawing.Point(6, 139);
this.lblAgvInfo.Name = "lblAgvInfo";
this.lblAgvInfo.Size = new System.Drawing.Size(61, 17);
this.lblAgvInfo.TabIndex = 276;
this.lblAgvInfo.Text = "AGV 状态";
//
// lblThisSta
//
this.lblThisSta.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblThisSta.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblThisSta.ForeColor = System.Drawing.Color.Red;
this.lblThisSta.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblThisSta.Location = new System.Drawing.Point(406, 176);
this.lblThisSta.Name = "lblThisSta";
this.lblThisSta.Size = new System.Drawing.Size(567, 259);
this.lblThisSta.TabIndex = 246;
this.lblThisSta.Text = "等待启动";
this.lblThisSta.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// tabControl1
//
this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.tabControl1.Controls.Add(this.tabPage3);
this.tabControl1.Controls.Add(this.tabPage1);
this.tabControl1.Controls.Add(this.tabPage2);
this.tabControl1.Location = new System.Drawing.Point(5, 58);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(993, 647);
this.tabControl1.TabIndex = 257;
//
// panBase
//
this.panBase.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panBase.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panBase.Controls.Add(this.btnHlhasReel);
this.panBase.Controls.Add(this.chbMoveStop);
this.panBase.Controls.Add(this.lblName);
this.panBase.Controls.Add(this.chbDebug);
this.panBase.Controls.Add(this.lblStoreStatus);
this.panBase.Controls.Add(this.btnStart);
this.panBase.Controls.Add(this.btnStop);
this.panBase.Location = new System.Drawing.Point(5, 4);
this.panBase.Location = new System.Drawing.Point(3, 3);
this.panBase.Name = "panBase";
this.panBase.Size = new System.Drawing.Size(997, 50);
this.panBase.Size = new System.Drawing.Size(980, 50);
this.panBase.TabIndex = 260;
//
// btnHlhasReel
//
this.btnHlhasReel.BackColor = System.Drawing.Color.SkyBlue;
this.btnHlhasReel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnHlhasReel.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnHlhasReel.Location = new System.Drawing.Point(758, 1);
this.btnHlhasReel.Name = "btnHlhasReel";
this.btnHlhasReel.Size = new System.Drawing.Size(217, 44);
this.btnHlhasReel.TabIndex = 288;
this.btnHlhasReel.Text = "忽略夹爪有料信号";
this.btnHlhasReel.UseVisualStyleBackColor = false;
this.btnHlhasReel.Visible = false;
//
// chbMoveStop
//
this.chbMoveStop.AutoSize = true;
this.chbMoveStop.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chbMoveStop.Location = new System.Drawing.Point(657, 12);
this.chbMoveStop.Location = new System.Drawing.Point(454, 11);
this.chbMoveStop.Name = "chbMoveStop";
this.chbMoveStop.Size = new System.Drawing.Size(84, 24);
this.chbMoveStop.TabIndex = 262;
this.chbMoveStop.Text = "暂停运动";
this.chbMoveStop.UseVisualStyleBackColor = true;
this.chbMoveStop.Click += new System.EventHandler(this.chbMoveStop_CheckedChanged);
this.chbMoveStop.CheckedChanged += new System.EventHandler(this.chbMoveStop_CheckedChanged);
//
// lblName
//
this.lblName.BackColor = System.Drawing.Color.DodgerBlue;
this.lblName.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblName.ForeColor = System.Drawing.Color.Black;
this.lblName.Location = new System.Drawing.Point(5, 4);
this.lblName.Location = new System.Drawing.Point(5, 3);
this.lblName.Name = "lblName";
this.lblName.Size = new System.Drawing.Size(120, 40);
this.lblName.TabIndex = 250;
......@@ -1018,7 +982,7 @@ namespace OnlineStore.XLRStore
//
this.chbDebug.AutoSize = true;
this.chbDebug.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chbDebug.Location = new System.Drawing.Point(568, 12);
this.chbDebug.Location = new System.Drawing.Point(365, 11);
this.chbDebug.Name = "chbDebug";
this.chbDebug.Size = new System.Drawing.Size(84, 24);
this.chbDebug.TabIndex = 247;
......@@ -1033,7 +997,7 @@ namespace OnlineStore.XLRStore
this.lblStoreStatus.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblStoreStatus.ForeColor = System.Drawing.Color.Green;
this.lblStoreStatus.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblStoreStatus.Location = new System.Drawing.Point(746, 14);
this.lblStoreStatus.Location = new System.Drawing.Point(543, 13);
this.lblStoreStatus.Name = "lblStoreStatus";
this.lblStoreStatus.Size = new System.Drawing.Size(65, 20);
this.lblStoreStatus.TabIndex = 245;
......@@ -1045,7 +1009,7 @@ namespace OnlineStore.XLRStore
this.btnStart.BackColor = System.Drawing.Color.White;
this.btnStart.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnStart.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnStart.Location = new System.Drawing.Point(129, 4);
this.btnStart.Location = new System.Drawing.Point(129, 3);
this.btnStart.Name = "btnStart";
this.btnStart.Size = new System.Drawing.Size(105, 40);
this.btnStart.TabIndex = 86;
......@@ -1058,7 +1022,7 @@ namespace OnlineStore.XLRStore
this.btnStop.BackColor = System.Drawing.Color.White;
this.btnStop.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnStop.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnStop.Location = new System.Drawing.Point(238, 4);
this.btnStop.Location = new System.Drawing.Point(238, 3);
this.btnStop.Name = "btnStop";
this.btnStop.Size = new System.Drawing.Size(105, 40);
this.btnStop.TabIndex = 87;
......@@ -1066,33 +1030,192 @@ namespace OnlineStore.XLRStore
this.btnStop.UseVisualStyleBackColor = false;
this.btnStop.Click += new System.EventHandler(this.btnStop_Click);
//
// groupBox10
// groupBox6
//
this.groupBox10.Controls.Add(this.mideleAxisP1);
this.groupBox10.Controls.Add(this.updownAxisP1);
this.groupBox10.Location = new System.Drawing.Point(600, 6);
this.groupBox10.Name = "groupBox10";
this.groupBox10.Size = new System.Drawing.Size(286, 104);
this.groupBox10.TabIndex = 227;
this.groupBox10.TabStop = false;
this.groupBox10.Text = "待机点点位";
this.groupBox6.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox6.Controls.Add(this.groupBox12);
this.groupBox6.Controls.Add(this.lblwidth);
this.groupBox6.Controls.Add(this.lblMoveInfo);
this.groupBox6.Controls.Add(this.lblThisSta);
this.groupBox6.Location = new System.Drawing.Point(3, 58);
this.groupBox6.Name = "groupBox6";
this.groupBox6.Size = new System.Drawing.Size(980, 497);
this.groupBox6.TabIndex = 278;
this.groupBox6.TabStop = false;
this.groupBox6.Text = "消息";
//
// groupBox11
// groupBox12
//
this.groupBox12.Controls.Add(this.btnOutTest);
this.groupBox12.Controls.Add(this.cmbOutShelf);
this.groupBox12.Controls.Add(this.label2);
this.groupBox12.Controls.Add(this.cmbOutStart);
this.groupBox12.Controls.Add(this.button1);
this.groupBox12.Controls.Add(this.cmbInstoreTargetP);
this.groupBox12.Controls.Add(this.label1);
this.groupBox12.Controls.Add(this.cmbInstoreShelf);
this.groupBox12.Location = new System.Drawing.Point(3, 371);
this.groupBox12.Name = "groupBox12";
this.groupBox12.Size = new System.Drawing.Size(942, 120);
this.groupBox12.TabIndex = 280;
this.groupBox12.TabStop = false;
this.groupBox12.Text = "取料机构测试";
//
// btnOutTest
//
this.btnOutTest.BackColor = System.Drawing.Color.White;
this.btnOutTest.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnOutTest.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnOutTest.Location = new System.Drawing.Point(306, 71);
this.btnOutTest.Name = "btnOutTest";
this.btnOutTest.Size = new System.Drawing.Size(135, 34);
this.btnOutTest.TabIndex = 288;
this.btnOutTest.Text = "取料出库测试";
this.btnOutTest.UseVisualStyleBackColor = false;
//
// cmbOutShelf
//
this.cmbOutShelf.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbOutShelf.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.cmbOutShelf.FormattingEnabled = true;
this.cmbOutShelf.Items.AddRange(new object[] {
"A料口",
"B料口"});
this.cmbOutShelf.Location = new System.Drawing.Point(175, 74);
this.cmbOutShelf.Name = "cmbOutShelf";
this.cmbOutShelf.Size = new System.Drawing.Size(121, 28);
this.cmbOutShelf.TabIndex = 287;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label2.Location = new System.Drawing.Point(146, 78);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(31, 20);
this.label2.TabIndex = 286;
this.label2.Text = "-->";
//
// cmbOutStart
//
this.cmbOutStart.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbOutStart.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.cmbOutStart.FormattingEnabled = true;
this.cmbOutStart.Items.AddRange(new object[] {
"A上暂存区",
"B上暂存区"});
this.cmbOutStart.Location = new System.Drawing.Point(19, 74);
this.cmbOutStart.Name = "cmbOutStart";
this.cmbOutStart.Size = new System.Drawing.Size(121, 28);
this.cmbOutStart.TabIndex = 285;
//
// button1
//
this.button1.BackColor = System.Drawing.Color.White;
this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button1.Location = new System.Drawing.Point(306, 25);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(135, 34);
this.button1.TabIndex = 284;
this.button1.Text = "取料入库测试";
this.button1.UseVisualStyleBackColor = false;
//
// cmbInstoreTargetP
//
this.cmbInstoreTargetP.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbInstoreTargetP.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.cmbInstoreTargetP.FormattingEnabled = true;
this.cmbInstoreTargetP.Items.AddRange(new object[] {
"A上暂存区",
"B上暂存区"});
this.cmbInstoreTargetP.Location = new System.Drawing.Point(175, 28);
this.cmbInstoreTargetP.Name = "cmbInstoreTargetP";
this.cmbInstoreTargetP.Size = new System.Drawing.Size(121, 28);
this.cmbInstoreTargetP.TabIndex = 2;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.Location = new System.Drawing.Point(146, 32);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(31, 20);
this.label1.TabIndex = 1;
this.label1.Text = "-->";
//
// cmbInstoreShelf
//
this.cmbInstoreShelf.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbInstoreShelf.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.cmbInstoreShelf.FormattingEnabled = true;
this.cmbInstoreShelf.Items.AddRange(new object[] {
"A料口",
"B料口"});
this.cmbInstoreShelf.Location = new System.Drawing.Point(19, 28);
this.cmbInstoreShelf.Name = "cmbInstoreShelf";
this.cmbInstoreShelf.Size = new System.Drawing.Size(121, 28);
this.cmbInstoreShelf.TabIndex = 0;
//
this.groupBox11.Controls.Add(this.panel1);
this.groupBox11.Location = new System.Drawing.Point(729, 338);
this.groupBox11.Name = "groupBox11";
this.groupBox11.Size = new System.Drawing.Size(247, 232);
this.groupBox11.TabIndex = 228;
this.groupBox11.TabStop = false;
this.groupBox11.Text = "料串取放料点位";
// lblwidth
//
this.lblwidth.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblwidth.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblwidth.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblwidth.Location = new System.Drawing.Point(6, 17);
this.lblwidth.Name = "lblwidth";
this.lblwidth.Size = new System.Drawing.Size(968, 85);
this.lblwidth.TabIndex = 279;
this.lblwidth.Text = "当前料盘:";
//
// lblMoveInfo
//
this.lblMoveInfo.AutoSize = true;
this.lblMoveInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblMoveInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblMoveInfo.Location = new System.Drawing.Point(8, 109);
this.lblMoveInfo.Name = "lblMoveInfo";
this.lblMoveInfo.Size = new System.Drawing.Size(59, 17);
this.lblMoveInfo.TabIndex = 278;
this.lblMoveInfo.Text = "运动信息:";
//
// lblThisSta
//
this.lblThisSta.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblThisSta.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblThisSta.ForeColor = System.Drawing.Color.Red;
this.lblThisSta.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblThisSta.Location = new System.Drawing.Point(392, 109);
this.lblThisSta.Name = "lblThisSta";
this.lblThisSta.Size = new System.Drawing.Size(568, 78);
this.lblThisSta.TabIndex = 246;
this.lblThisSta.Text = "等待启动";
this.lblThisSta.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// tabControl1
//
this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.tabControl1.Controls.Add(this.tabPage3);
this.tabControl1.Controls.Add(this.tabPage2);
this.tabControl1.Controls.Add(this.tabPage1);
this.tabControl1.Location = new System.Drawing.Point(2, 2);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(994, 591);
this.tabControl1.TabIndex = 257;
this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged);
//
// FrmInputEquip
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1004, 711);
this.Controls.Add(this.panBase);
this.ClientSize = new System.Drawing.Size(1000, 596);
this.Controls.Add(this.tabControl1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
......@@ -1102,8 +1225,12 @@ namespace OnlineStore.XLRStore
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmTest_FormClosing);
this.Load += new System.EventHandler(this.FrmInputEquip_Load);
this.Shown += new System.EventHandler(this.FrmIOStatus_Shown);
this.VisibleChanged += new System.EventHandler(this.FrmInputEquip_VisibleChanged);
this.tabPage2.ResumeLayout(false);
this.tabPage2.PerformLayout();
this.groupBox11.ResumeLayout(false);
this.panel1.ResumeLayout(false);
this.groupBox10.ResumeLayout(false);
this.groupBox9.ResumeLayout(false);
this.groupBox8.ResumeLayout(false);
this.groupBox7.ResumeLayout(false);
......@@ -1116,13 +1243,13 @@ namespace OnlineStore.XLRStore
this.groupBox3.ResumeLayout(false);
this.groupBox4.ResumeLayout(false);
this.tabPage3.ResumeLayout(false);
this.panBase.ResumeLayout(false);
this.panBase.PerformLayout();
this.groupBox6.ResumeLayout(false);
this.groupBox6.PerformLayout();
this.groupBox12.ResumeLayout(false);
this.groupBox12.PerformLayout();
this.tabControl1.ResumeLayout(false);
this.panBase.ResumeLayout(false);
this.panBase.PerformLayout();
this.groupBox10.ResumeLayout(false);
this.groupBox11.ResumeLayout(false);
this.ResumeLayout(false);
}
......@@ -1166,7 +1293,6 @@ namespace OnlineStore.XLRStore
private System.Windows.Forms.Button btnHlhasReel;
private System.Windows.Forms.Label lblwidth;
private System.Windows.Forms.Label lblMoveInfo;
private System.Windows.Forms.Label lblAgvInfo;
private System.Windows.Forms.Label lblThisSta;
private System.Windows.Forms.TabControl tabControl1;
protected System.Windows.Forms.Panel panBase;
......@@ -1206,6 +1332,16 @@ namespace OnlineStore.XLRStore
protected System.Windows.Forms.Button btnSave;
private System.Windows.Forms.GroupBox groupBox10;
private System.Windows.Forms.GroupBox groupBox11;
private System.Windows.Forms.GroupBox groupBox12;
private System.Windows.Forms.ComboBox cmbInstoreShelf;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.ComboBox cmbInstoreTargetP;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button btnOutTest;
private System.Windows.Forms.ComboBox cmbOutShelf;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.ComboBox cmbOutStart;
private System.Windows.Forms.CheckBox chbPointEditEnable;
}
}
......@@ -201,6 +201,7 @@ namespace OnlineStore.XLRStore
}
}
lblThisSta.Text = inputEquip.WarnMsg;
lblMoveInfo.Text = inputEquip.GetMoveStr();
string text = "";
}
......@@ -306,7 +307,7 @@ namespace OnlineStore.XLRStore
FrmBatchMove frmMove2 = new FrmBatchMove(inputEquip.BatchMove_B);
AddForm(tabControl1, " " + inputEquip.BatchMove_B.Name + " ", frmMove2);
PointEditEnable(false);
LoadPoint();
IsLoad = true;
}
......@@ -579,6 +580,48 @@ namespace OnlineStore.XLRStore
{
}
private void PointEditEnable(bool enable)
{
groupBox2.Enabled = enable;
groupBox5.Enabled = enable;
groupBox7.Enabled = enable;
groupBox8.Enabled = enable;
groupBox9.Enabled = enable;
groupBox10.Enabled = enable;
groupBox11.Enabled = enable;
}
private void chbPointEditEnable_CheckedChanged(object sender, EventArgs e)
{
if (!IsLoad)
{
return;
}
PointEditEnable(chbPointEditEnable.Checked);
}
internal void FrmInputEquip_VisibleChanged(object sender, EventArgs e)
{
if (!IsLoad)
{
return;
}
chbPointEditEnable.Checked = false;
}
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (!IsLoad)
{
return;
}
chbPointEditEnable.Checked = false;
}
private void tabPage2_Click(object sender, EventArgs e)
{
}
}
}
......
......@@ -29,50 +29,51 @@
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.lblTrayNum = new System.Windows.Forms.Label();
this.lblName = new System.Windows.Forms.Label();
this.lblShelf = new System.Windows.Forms.Label();
this.lblText = new System.Windows.Forms.Label();
this.lblStatus = new System.Windows.Forms.Label();
this.lblMoveInfo = new System.Windows.Forms.Label();
this.lblDebug = new System.Windows.Forms.Label();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.lblBox = new System.Windows.Forms.Label();
this.panName = new System.Windows.Forms.Panel();
this.lblUseServo = new System.Windows.Forms.Label();
this.lblWarn = new System.Windows.Forms.Label();
this.panName.SuspendLayout();
this.SuspendLayout();
//
// lblTrayNum
//
this.lblTrayNum.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblTrayNum.AutoSize = true;
this.lblTrayNum.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblTrayNum.ForeColor = System.Drawing.Color.Black;
this.lblTrayNum.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblTrayNum.Location = new System.Drawing.Point(180, 29);
this.lblTrayNum.Name = "lblTrayNum";
this.lblTrayNum.Size = new System.Drawing.Size(56, 17);
this.lblTrayNum.TabIndex = 0;
this.lblTrayNum.Text = "托盘号:";
this.lblTrayNum.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblTrayNum.DoubleClick += new System.EventHandler(this.lblStatus_DoubleClick);
this.lblTrayNum.MouseEnter += new System.EventHandler(this.lblStatus_MouseEnter);
//
// lblName
//
this.lblName.AutoSize = true;
this.lblName.BackColor = System.Drawing.Color.Transparent;
this.lblName.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblName.ForeColor = System.Drawing.Color.Black;
this.lblName.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblName.Location = new System.Drawing.Point(-2, 2);
this.lblName.Name = "lblName";
this.lblName.Size = new System.Drawing.Size(99, 22);
this.lblName.TabIndex = 1;
this.lblName.Text = "移栽D1-1_1";
this.lblName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblName.DoubleClick += new System.EventHandler(this.lblName_DoubleClick);
this.lblName.MouseEnter += new System.EventHandler(this.lblName_MouseEnter);
// lblShelf
//
this.lblShelf.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblShelf.AutoSize = true;
this.lblShelf.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblShelf.ForeColor = System.Drawing.Color.Black;
this.lblShelf.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblShelf.Location = new System.Drawing.Point(180, 29);
this.lblShelf.Name = "lblShelf";
this.lblShelf.Size = new System.Drawing.Size(56, 17);
this.lblShelf.TabIndex = 0;
this.lblShelf.Text = "料架号:";
this.lblShelf.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblShelf.DoubleClick += new System.EventHandler(this.lblStatus_DoubleClick);
this.lblShelf.MouseEnter += new System.EventHandler(this.lblDebug_MouseEnter);
this.lblShelf.MouseLeave += new System.EventHandler(this.lblDebug_MouseLeave);
//
// lblText
//
this.lblText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblText.BackColor = System.Drawing.Color.Transparent;
this.lblText.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblText.ForeColor = System.Drawing.Color.Black;
this.lblText.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblText.Location = new System.Drawing.Point(-2, 2);
this.lblText.Name = "lblText";
this.lblText.Size = new System.Drawing.Size(194, 22);
this.lblText.TabIndex = 1;
this.lblText.Text = "移栽D1-1_1";
this.lblText.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lblText.DoubleClick += new System.EventHandler(this.lblName_DoubleClick);
this.lblText.MouseEnter += new System.EventHandler(this.lblDebug_MouseEnter);
this.lblText.MouseLeave += new System.EventHandler(this.lblDebug_MouseLeave);
//
// lblStatus
//
......@@ -89,7 +90,8 @@
this.lblStatus.Text = "暂未启动";
this.lblStatus.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblStatus.DoubleClick += new System.EventHandler(this.lblStatus_DoubleClick);
this.lblStatus.MouseEnter += new System.EventHandler(this.lblStatus_MouseEnter);
this.lblStatus.MouseEnter += new System.EventHandler(this.lblDebug_MouseEnter);
this.lblStatus.MouseLeave += new System.EventHandler(this.lblDebug_MouseLeave);
//
// lblMoveInfo
//
......@@ -106,7 +108,8 @@
this.lblMoveInfo.Text = "暂无出入库";
this.lblMoveInfo.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblMoveInfo.DoubleClick += new System.EventHandler(this.lblStatus_DoubleClick);
this.lblMoveInfo.MouseEnter += new System.EventHandler(this.lblStatus_MouseEnter);
this.lblMoveInfo.MouseEnter += new System.EventHandler(this.lblDebug_MouseEnter);
this.lblMoveInfo.MouseLeave += new System.EventHandler(this.lblDebug_MouseLeave);
//
// lblDebug
//
......@@ -120,23 +123,8 @@
this.lblDebug.TabIndex = 5;
this.lblDebug.Text = "启用✔";
this.lblDebug.DoubleClick += new System.EventHandler(this.lblStatus_DoubleClick);
this.lblDebug.MouseEnter += new System.EventHandler(this.lblStatus_MouseEnter);
//
// lblBox
//
this.lblBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblBox.BackColor = System.Drawing.Color.LightGray;
this.lblBox.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblBox.ForeColor = System.Drawing.Color.Black;
this.lblBox.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblBox.Location = new System.Drawing.Point(1, 94);
this.lblBox.Name = "lblBox";
this.lblBox.Size = new System.Drawing.Size(248, 24);
this.lblBox.TabIndex = 6;
this.lblBox.Text = "BOX状态:";
this.lblBox.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblBox.MouseEnter += new System.EventHandler(this.lblBox_MouseEnter);
this.lblDebug.MouseEnter += new System.EventHandler(this.lblDebug_MouseEnter);
this.lblDebug.MouseLeave += new System.EventHandler(this.lblDebug_MouseLeave);
//
// panName
//
......@@ -145,27 +133,14 @@
this.panName.BackColor = System.Drawing.Color.Transparent;
this.panName.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panName.Controls.Add(this.lblDebug);
this.panName.Controls.Add(this.lblUseServo);
this.panName.Controls.Add(this.lblName);
this.panName.Controls.Add(this.lblText);
this.panName.Location = new System.Drawing.Point(1, 1);
this.panName.Name = "panName";
this.panName.Size = new System.Drawing.Size(248, 28);
this.panName.TabIndex = 7;
this.panName.DoubleClick += new System.EventHandler(this.panName_DoubleClick);
this.panName.MouseEnter += new System.EventHandler(this.panName_MouseEnter);
//
// lblUseServo
//
this.lblUseServo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblUseServo.AutoSize = true;
this.lblUseServo.BackColor = System.Drawing.Color.Transparent;
this.lblUseServo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblUseServo.Location = new System.Drawing.Point(153, 4);
this.lblUseServo.Name = "lblUseServo";
this.lblUseServo.Size = new System.Drawing.Size(48, 17);
this.lblUseServo.TabIndex = 6;
this.lblUseServo.Text = "伺服✔";
this.lblUseServo.Visible = false;
this.panName.MouseEnter += new System.EventHandler(this.lblDebug_MouseEnter);
this.panName.MouseLeave += new System.EventHandler(this.lblDebug_MouseLeave);
//
// lblWarn
//
......@@ -181,23 +156,25 @@
this.lblWarn.TabIndex = 8;
this.lblWarn.Text = "暂无报警";
this.lblWarn.DoubleClick += new System.EventHandler(this.lblStatus_DoubleClick);
this.lblWarn.MouseEnter += new System.EventHandler(this.lblStatus_MouseEnter);
this.lblWarn.MouseEnter += new System.EventHandler(this.lblDebug_MouseEnter);
this.lblWarn.MouseLeave += new System.EventHandler(this.lblDebug_MouseLeave);
//
// EquipControl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.BackColor = System.Drawing.Color.LightCoral;
this.BackColor = System.Drawing.Color.White;
this.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.Controls.Add(this.panName);
this.Controls.Add(this.lblBox);
this.Controls.Add(this.lblMoveInfo);
this.Controls.Add(this.lblStatus);
this.Controls.Add(this.lblTrayNum);
this.Controls.Add(this.lblShelf);
this.Controls.Add(this.lblWarn);
this.Name = "EquipControl";
this.Size = new System.Drawing.Size(250, 121);
this.Load += new System.EventHandler(this.EquipControl_Load);
this.MouseEnter += new System.EventHandler(this.EquipControl_MouseEnter);
this.MouseLeave += new System.EventHandler(this.EquipControl_MouseLeave);
this.panName.ResumeLayout(false);
this.panName.PerformLayout();
this.ResumeLayout(false);
......@@ -207,15 +184,13 @@
#endregion
private System.Windows.Forms.Label lblTrayNum;
private System.Windows.Forms.Label lblName;
private System.Windows.Forms.Label lblShelf;
private System.Windows.Forms.Label lblText;
private System.Windows.Forms.Label lblStatus;
private System.Windows.Forms.Label lblMoveInfo;
private System.Windows.Forms.Label lblDebug;
private System.Windows.Forms.ToolTip toolTip1;
private System.Windows.Forms.Label lblBox;
private System.Windows.Forms.Panel panName;
private System.Windows.Forms.Label lblWarn;
private System.Windows.Forms.Label lblUseServo;
}
}
......@@ -12,15 +12,11 @@ namespace OnlineStore.XLRStore
{
public partial class EquipControl : UserControl
{
public string TrayNum
{
get { return lblTrayNum.Text; }
set { lblTrayNum.Text = value; }
}
public string EquipName
public string EquipText
{
get { return lblName.Text; }
set { lblName.Text = value; }
get { return lblText.Text; }
set { lblText.Text = value; }
}
public string WorkStatus
{
......@@ -49,185 +45,61 @@ namespace OnlineStore.XLRStore
{
panName.BackColor = Color.Transparent;
}
public void InitData(EquipBase equip)
public void InitData(string text)
{
if (equip is BoxEquip)
{
//panName.BackColor = Color.DeepSkyBlue;
lblBox.Visible = true;
lblBox.Text = "";
lblText.Text = text;
}
else if (equip is InputEquip )
public int DeviceId = 0;
public void ShowData(bool isDebug, string runStr, string warnMsg, DeviceMoveInfo MoveInfo, Color backColor,string shelfStr="")
{
//panName.BackColor = Color.Lime;
//panName.BackColor = Color.MediumSpringGreen;
lblBox.Visible = false ;
lblBox.Text = "";
//lblTrayNum.Text = "托盘:" + currTrayNum;
lblStatus.Text = runStr;
toolTip1.ToolTipTitle = "" + EquipText + ":双击进入";
lblDebug.Text = "启用" + (isDebug ? "✘" : "✔");
lblWarn.Text = warnMsg;
lblShelf.Text = shelfStr;
string str = "";
if (MoveInfo.MoveType.Equals(MoveType.InStore))
{
str = "入库中:";
InOutPosInfo pos = MoveInfo.MoveParam.PosInfo;
if (pos != null)
{
if (pos.IsNG)
{
str = "NG料:" + pos.PosId + "_" + pos.barcode;
}
else
{
//panName.BackColor = Color.Aqua;
//panName.BackColor = Color.DarkTurquoise;
lblBox.Visible = false ;
lblBox.Text = "";
str = "入库中:" + pos.PosId + "_" + pos.barcode;
}
DeviceId = equip.DeviceID;
lblName.Text = equip.Name;
}
}
else if (MoveInfo.MoveType.Equals(MoveType.OutStore))
{
str = "出库中:";
InOutPosInfo pos = MoveInfo.MoveParam.PosInfo;
if (pos != null)
{
if (pos.urgentReel)
{
str = "紧急料出库:" + pos.PosId + "_" + pos.barcode;
}
else if (pos.cutReel)
{
str = "分盘料出库:" + pos.PosId + "_" + pos.barcode;
}
else if (pos.cutReel)
{
str = "出库中:" + pos.PosId + "_" + pos.barcode;
}
}
}
lblMoveInfo.Text = str;
public int DeviceId = 0;
public void ShowData(EquipBase equip)
{
//lblTrayNum.Text ="托盘:"+equip.currTrayNum;
//lblStatus.Text = equip.GetRunStr();
//toolTip1.ToolTipTitle = ""+equip.Name+":双击进入";
//lblDebug.Text = "启用" + (equip.IsDebug ? "✘" : "✔");
//lblWarn.Text = equip.WarnMsg;
//lblUseServo.Visible = false;
//if (String.IsNullOrEmpty(equip.RFIDIP))
//{
// lblTrayNum.Visible = false;
//}
//else
//{
// lblTrayNum.Visible = true;
//}
//if (equip.DeviceID < 100)
//{
// lblUseServo.Visible = equip.UseAxis;
// if (equip.MoveInfo.MoveType.Equals(MoveType.InStore))
// {
// if (equip.OnlyProOutTray)
// {
// if (equip.MoveInfo.MoveParam.IsNG)
// {
// lblMoveInfo.Text = "NG料移栽:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// else if (equip.MoveInfo.MoveParam.urgentReel)
// {
// lblMoveInfo.Text = "紧急料移栽:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// else if (equip.MoveInfo.MoveParam.cutReel)
// {
// lblMoveInfo.Text = "分盘料移栽:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// else
// {
// lblMoveInfo.Text = "工单料移栽:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// }
// else
// {
// lblMoveInfo.Text = "入库中:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// }
// else if (equip.MoveInfo.MoveType.Equals(MoveType.OutStore))
// {
// lblMoveInfo.Text = "出库中:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// else if (equip.SecondMoveInfo.MoveType.Equals(MoveType.Fixture))
// {
// lblMoveInfo.Text = "托盘[" + equip.currTrayNum + "]处理中";
// }
// else
// {
// lblMoveInfo.Text = "暂无出入库";
// }
// BoxInfo box = LineServer.GetBoxInfo(equip.DeviceID);
// string online = "✘";
// string str = "BOX";
// if (equip.DeviceID.Equals(StoreManager.OutMoveId))
// {
// str = "出料机构";
// }
// if (box != null)
// {
// string posId = "";
// if (!String.IsNullOrEmpty(box.rfids))
// {
// posId = "[" + box.rfids + "]";
// }
// if (!String.IsNullOrEmpty(box.CurrPosId))
// {
// posId += "[" + box.CurrPosId + "]";
// }
// if ((DateTime.Now - box.LastMsgTime).TotalSeconds < LineServer.ClientKeepSecond)
// {
// online = "✔";
// if (box.SAlarmType.Equals(AlarmType.None))
// {
// lblBox.Text = str+"[" + box.CId.ToString() + "]:" + online + " " +posId+ box.ToShowStr();
// if (box.SRunStatus.Equals((int)RunStatus.Busy))
// {
// lblBox.BackColor = Color.LightGreen;
// }
// else
// {
// lblBox.BackColor = Color.LightBlue;
// }
// }
// else
// {
// lblBox.Text = str + "[" + box.CId.ToString() + "]:" + online + " " + posId + box.SAlarmType+" " + box.ToShowStr();
// lblBox.BackColor = Color.Red;
// }
// }
// else
// {
// lblBox.Text = str + "[" + box.CId.ToString() + "]:" + online + " " + posId + box.ToShowStr();
// lblBox.BackColor = Color.Gray;
// }
// }
// else
// {
// lblBox.Text = str + "状态:" + online;
// lblBox.BackColor = Color.Gray;
// }
//}
//else if (equip.DeviceID < 200)
//{
// if (equip.MoveInfo.MoveType.Equals(MoveType.InStore))
// {
// lblMoveInfo.Text = "料架" + equip.CurrShelfId + ",入库:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// else if (equip.MoveInfo.MoveType.Equals(MoveType.OutStore))
// {
// lblMoveInfo.Text = "料架"+equip.CurrShelfId+",出库:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// else if (equip.SecondMoveInfo.MoveType.Equals(MoveType.Fixture))
// {
// lblMoveInfo.Text = "托盘[" + equip.currTrayNum + "]处理中";
// }
// else
// {
// lblMoveInfo.Text = "暂无出入库";
// }
//}
//else
//{
// if (equip.MoveInfo.MoveType.Equals(MoveType.OutStore))
// {
// lblMoveInfo.Text = "托盘[" + equip.currTrayNum + "]送料:" + equip.MoveInfo.MoveParam.PosId + "_" + equip.MoveInfo.MoveParam.WareCode;
// }
// else if (equip.MoveInfo.MoveType.Equals(MoveType.Fixture))
// {
// lblMoveInfo.Text = "托盘[" + equip.currTrayNum + "]处理中";
// }
// else if (equip.SecondMoveInfo.MoveType.Equals(MoveType.Fixture))
// {
// lblMoveInfo.Text = "托盘[" + equip.currTrayNum + "]处理中";
// }
// else
// {
// lblMoveInfo.Text = "暂无托盘处理";
// }
//}
this.BackColor = equip.GetShowColor();
this.BackColor = backColor;
}
public EquipControl()
{
......@@ -237,30 +109,6 @@ namespace OnlineStore.XLRStore
{
}
public static EquipControl NewControl(EquipBase equip)
{
EquipControl control = new EquipControl();
control.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
control.BackColor = System.Drawing.SystemColors.Control;
control.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
control.ColorStatus = System.Drawing.SystemColors.Control;
control.EquipName = "";
control.Location = new System.Drawing.Point(3, 3);
control.MoveInfo = "";
control.Name = "EquipControl" + equip.DeviceID;
control.Size = new System.Drawing.Size(270, 91);
control.TabIndex = 0;
control.TrayNum = "";
control.WorkStatus = "";
control.EquipName = equip.Name;
control.DeviceId = equip.DeviceID;
control.InitData(equip);
control.ShowData(equip);
return control;
}
private void lblName_DoubleClick(object sender, EventArgs e)
{
this.OnDoubleClick(e);
......@@ -295,5 +143,27 @@ namespace OnlineStore.XLRStore
{
this.OnMouseEnter(e);
}
private void lblDebug_MouseEnter(object sender, EventArgs e)
{
SelectStyle();
}
private void lblDebug_MouseLeave(object sender, EventArgs e)
{
UnSelectStyle();
}
private void EquipControl_MouseLeave(object sender, EventArgs e)
{
UnSelectStyle();
}
private void EquipControl_MouseEnter(object sender, EventArgs e)
{
SelectStyle();
}
}
}
namespace OnlineStore.XLRStore
{
partial class ReelDataControl
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region 组件设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要修改
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.lblText = new System.Windows.Forms.Label();
this.lblReelInfo = new System.Windows.Forms.Label();
this.panName = new System.Windows.Forms.Panel();
this.linkClear = new System.Windows.Forms.LinkLabel();
this.panName.SuspendLayout();
this.SuspendLayout();
//
// lblText
//
this.lblText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblText.BackColor = System.Drawing.Color.Transparent;
this.lblText.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblText.ForeColor = System.Drawing.Color.Black;
this.lblText.Location = new System.Drawing.Point(-2, 2);
this.lblText.Name = "lblText";
this.lblText.Size = new System.Drawing.Size(154, 19);
this.lblText.TabIndex = 1;
this.lblText.Text = "暂存区物料信息";
this.lblText.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lblText.MouseEnter += new System.EventHandler(this.lblText_MouseEnter);
this.lblText.MouseLeave += new System.EventHandler(this.lblText_MouseLeave);
//
// lblReelInfo
//
this.lblReelInfo.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblReelInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblReelInfo.ForeColor = System.Drawing.Color.Black;
this.lblReelInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblReelInfo.Location = new System.Drawing.Point(0, 31);
this.lblReelInfo.Name = "lblReelInfo";
this.lblReelInfo.Size = new System.Drawing.Size(248, 89);
this.lblReelInfo.TabIndex = 3;
this.lblReelInfo.Text = "暂无物料";
this.lblReelInfo.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lblReelInfo.MouseEnter += new System.EventHandler(this.lblText_MouseEnter);
this.lblReelInfo.MouseLeave += new System.EventHandler(this.lblText_MouseLeave);
//
// panName
//
this.panName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panName.BackColor = System.Drawing.Color.Transparent;
this.panName.Controls.Add(this.linkClear);
this.panName.Controls.Add(this.lblText);
this.panName.Location = new System.Drawing.Point(1, 1);
this.panName.Name = "panName";
this.panName.Size = new System.Drawing.Size(248, 28);
this.panName.TabIndex = 7;
this.panName.MouseEnter += new System.EventHandler(this.lblText_MouseEnter);
this.panName.MouseLeave += new System.EventHandler(this.lblText_MouseLeave);
//
// linkClear
//
this.linkClear.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.linkClear.AutoSize = true;
this.linkClear.Location = new System.Drawing.Point(158, 9);
this.linkClear.Name = "linkClear";
this.linkClear.Size = new System.Drawing.Size(77, 12);
this.linkClear.TabIndex = 2;
this.linkClear.TabStop = true;
this.linkClear.Text = "清除料盘信息";
this.linkClear.MouseEnter += new System.EventHandler(this.lblText_MouseEnter);
this.linkClear.MouseLeave += new System.EventHandler(this.lblText_MouseLeave);
//
// ReelDataControl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.BackColor = System.Drawing.Color.White;
this.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.Controls.Add(this.panName);
this.Controls.Add(this.lblReelInfo);
this.Name = "ReelDataControl";
this.Size = new System.Drawing.Size(250, 121);
this.Load += new System.EventHandler(this.EquipControl_Load);
this.MouseEnter += new System.EventHandler(this.ReelDataControl_MouseEnter);
this.MouseLeave += new System.EventHandler(this.ReelDataControl_MouseLeave);
this.panName.ResumeLayout(false);
this.panName.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Label lblText;
private System.Windows.Forms.Label lblReelInfo;
private System.Windows.Forms.Panel panName;
public System.Windows.Forms.LinkLabel linkClear;
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using OnlineStore.DeviceLibrary;
namespace OnlineStore.XLRStore
{
public partial class ReelDataControl : UserControl
{
public string ReelText
{
get { return lblText.Text; }
set { lblText.Text = value; }
}
public Color ColorStatus
{
get { return this.BackColor; }
set
{
this.BackColor = value;
}
}
public void SelectStyle()
{
panName.BackColor = Color.DeepSkyBlue;
}
public void UnSelectStyle()
{
panName.BackColor = Color.Transparent;
}
public void ShowData(string text, InOutPosInfo posInfo)
{
lblText.Text = text;
if (posInfo == null)
{
lblReelInfo.Text = "";
this.BackColor = Color.White;
linkClear.Visible = false;
}
else
{
lblReelInfo.Text = posInfo.ToStr();
this.BackColor = Color.LimeGreen;
linkClear.Visible = true ;
}
}
public ReelDataControl()
{
InitializeComponent();
}
private void EquipControl_Load(object sender, EventArgs e)
{
}
private void ReelDataControl_MouseEnter(object sender, EventArgs e)
{
SelectStyle();
}
private void ReelDataControl_MouseLeave(object sender, EventArgs e)
{
UnSelectStyle();
}
private void lblText_MouseEnter(object sender, EventArgs e)
{
SelectStyle();
}
private void lblText_MouseLeave(object sender, EventArgs e)
{
UnSelectStyle();
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
\ No newline at end of file
库位号格式:
 库位号格式:
例:05AA03040102
05:表示料仓编号,01-08
AA:存储机构A面或B面,AA或者BB
03:表示抽屉在第几行
04:表示抽屉在第几列
01:表示在抽屉中的第几行
02:表示在抽屉中的第几列
\ No newline at end of file
05:第1和第2位表示料仓编号,01 - 08
AA:第3和第4位存储机构A面或B面,AA或者BB
03:第5和第6位表示抽屉在第几行
04:第7和第8位表示抽屉在第几列
01:第9和第10位表示在抽屉中的第几行
02:第11和第12位表示在抽屉中的第几列
\ No newline at end of file
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!