Commit f4831bd6 LN

料仓库位格式更新

1 个父辈 02316ea9
......@@ -20,7 +20,7 @@
<add key="Store_ConfigPath" value="\StoreConfig\AC\StoreConfig.csv" />
<add key="Store_Type" value="RC_AC_SA" />
<add key="Store_CID" value="line-ac-01" />
<add key="Store_ID" value="1" />
<add key="Store_ID" value="7" />
<!--end one store config-->
<add key="ACBaudRate" value="115200" />
<add key="InOutDefaultPosition" value="8000" />
......
......@@ -11,9 +11,19 @@
在RC1246-ACSingleStore 项目基础上,
新建分支RC1250-ACSingleStore,作为佳世达流水线单台料仓软件
5 出库时根据StatusBean返回data中的参数决定料盘流转到哪里

5 出库时根据StatusBean返回data中的参数决定料盘流转到哪里
urgentReel: true 表示紧急料,需要出到料串上
cutReel: true 表示分盘料,需要出到料串上
smallReel: true 小料(7x8),放置到小料架上
rfid: 分配的料架RFID
rfidLoc: 料架的架位,值为-1时,可以自由分配皮带线, 小料时,架位为1-46优先走1/2号皮带线,47-92优先走3/4号皮带线, 70,71,72时只能分配到3/4号皮带线;大料时,架位1-6优先走1/2号皮带线, 7-12优先走3/4号皮带线
仓位命名: 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个隔板位置
......@@ -20,7 +20,7 @@ namespace OnlineStore.Common
public static System.Windows.Forms.RichTextBox logBox = null;
public static int showCount = 15;
public static int showCount = 10;
public static bool debug_opened = false;
......@@ -141,7 +141,7 @@ namespace OnlineStore.Common
logBox.AppendText(now.ToLongTimeString() + " " + msg + Environment.NewLine); //增加文本
TimeSpan span = DateTime.Now - lastTime;
if (span.TotalSeconds > 10)
if (span.TotalSeconds > 1000)
{
lastTime = DateTime.Now;
logBox.Select(logBox.Text.Length, 0); //设置光标的位置到文本尾
......@@ -160,9 +160,6 @@ namespace OnlineStore.Common
if (logBox != null && logBox.Visible)
{
logBox.Text = LastText;
logBox.Select(logBox.Text.Length, 0); //设置光标的位置到文本尾
logBox.ScrollToCaret(); //滚动到控件光标处
}
}
public static void ClearLog()
......
类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID,
PRO,IO模块对应的DI数量,IO_DILength,192.168.200.11#8,,,,,,,
PRO,模块对应的DO数量,IO_DOLength,192.168.200.11#8,,,,,,,
PRO,IO模块对应的DI数量,IO_DILength,192.168.201.21#8,,,,,,,
PRO,模块对应的DO数量,IO_DOLength,192.168.201.21#8,,,,,,,
PRO,是否有仓门,HasDoor,1,,,,,,,
PRO,IO模块IP,PRO_AOI_IP_1,192.168.200.11,,,,,,,
PRO,IO模块IP,PRO_AOI_IP_1,192.168.201.21,,,,,,,
,,,,,,,,,,
DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0,
DI,复位,Reset_BTN,1,PRO_AOI_IP_1,0,复位,X02,DI-02,0,
......@@ -20,17 +20,17 @@ DO,轴2刹车电源ON,Axis_Brake,4,PRO_AOI_IP_1,0,轴2刹车电源ON,Y05,DO-05,0,
DO,料仓吹气SOL,StartOrStopBlow,5,PRO_AOI_IP_1,0,料仓吹气SOL,Y06,DO-06,0,
DO,进料口门上升SOL,Door_Up,6,PRO_AOI_IP_1,0,进料口门上升SOL,Y07,DO-07,0,
DO,进料口门下降SOL,Door_Down,7,PRO_AOI_IP_1,0,进料口门下降SOL,Y08,DO-08,0,
AXIS,(轴一)旋转轴,Middle_Axis,1,COM1,0,,,,,
AXIS,(轴二)升降轴轴,UpDown_Axis,2,COM1,0,,,,,
AXIS,(轴三)进出轴,InOut_Axis,3,COM1,0,,,,,
AXIS,(轴四)压紧轴,Comp_Axis,4,COM1,0,,,,,
PRO,升降轴 进料口取料点 P1,UpDownAxis_DoorOPosition_P1,403000,,,,,,,
PRO,升降轴 进料口出料前点 P2,UpDownAxis_DoorIPosition_P2,415000,,,,,,,
PRO,升降轴 进料口取料缓冲点 P7,UpDownAxis_DoorOBPosition_P7,415000,,,,,,,
PRO,升降轴 进料口出料缓冲点 P8,UpDownAxis_DoorIBPosition_P8,403000,,,,,,,
PRO,旋转轴(轴1)P1 待机原位点,MiddleAxis_P1_Position,268093,,,,,,,
PRO,进出轴(轴3)P1待机原位点,InOutAxis_P1_Position,1000,,,,,,,
PRO,压紧轴(轴4)P1待机原位点,CompressAxis_P1_Position,10000,,,,,,,
AXIS,(轴一)旋转轴,Middle_Axis,1,COM3,0,,,,,
AXIS,(轴二)升降轴轴,UpDown_Axis,2,COM3,0,,,,,
AXIS,(轴三)进出轴,InOut_Axis,3,COM3,0,,,,,
AXIS,(轴四)压紧轴,Comp_Axis,4,COM3,0,,,,,
PRO,升降轴 进料口取料点 P1,UpDownAxis_DoorOPosition_P1,301400,,,,,,,
PRO,升降轴 进料口出料前点 P2,UpDownAxis_DoorIPosition_P2,321500,,,,,,,
PRO,升降轴 进料口取料缓冲点 P7,UpDownAxis_DoorOBPosition_P7,321500,,,,,,,
PRO,升降轴 进料口出料缓冲点 P8,UpDownAxis_DoorIBPosition_P8,301400,,,,,,,
PRO,旋转轴(轴1)P1 待机原位点,MiddleAxis_P1_Position,325000,,,,,,,
PRO,进出轴(轴3)P1待机原位点,InOutAxis_P1_Position,7900,,,,,,,
PRO,压紧轴(轴4)P1待机原位点,CompressAxis_P1_Position,318000,,,,,,,
PRO,是否使用定位气缸,IsHasLocationCylinder,0,,,,,,,
PRO,是否有左右侧门,IsHasDoorLimit,1,,,,,,,
PRO,是否使用压紧轴(1=使用),IsHasCompress_Axis,1,,,,, ,,
......@@ -39,8 +39,8 @@ PRO,气压检测IO关闭需要持续的时间,AirCheckSeconds,3,,,,,,,
PRO,预警温度,WarnTemperate,80,,,,,,,
PRO,预警湿度,WarnHumidity,80,,,,,,,
PRO,(轴一)旋转轴目标速度,MiddleAxis_TargetSpeed,250,,,,,,,
PRO,(轴一)旋转轴加速度,MiddleAxis_AddSpeed,80,,,,,,,
PRO,(轴一)旋转轴减速度,MiddleAxis_DelSpeed,80,,,,,,,
PRO,(轴一)旋转轴加速度,MiddleAxis_AddSpeed,1000,,,,,,,
PRO,(轴一)旋转轴减速度,MiddleAxis_DelSpeed,1000,,,,,,,
PRO,(轴一)旋转轴原点低速度,MiddleAxis_HomeLowSpeed,80,,,,,,,
PRO,(轴一)旋转轴原点高速,MiddleAxis_HomeHighSpeed,60,,,,,,,
PRO,(轴一)旋转轴原点加速度,MiddleAxis_HomeAddSpeed,50,,,,,,,
......@@ -63,22 +63,22 @@ PRO,(轴四)压紧轴原点低速,CompAxis_HomeLowSpeed,20,,,,,,,
PRO,(轴四)压紧轴原点高速,CompAxis_HomeHighSpeed,60,,,,,,,
PRO,(轴四)压紧轴原点加速度,CompAxis_HomeAddSpeed,200,,,,,,,
,,,,,,,,,,
PRO,升降轴(轴2)P1速度,UpDownAxis_P1_Speed,250,,,,,,,
PRO,升降轴(轴2)P2速度,UpDownAxis_P2_Speed,250,,,,,,,
PRO,升降轴(轴2)P3速度,UpDownAxis_P3_Speed,250,,,,,,,
PRO,升降轴(轴2)P4速度,UpDownAxis_P4_Speed,150,,,,,,,
PRO,升降轴(轴2)P5速度,UpDownAxis_P5_Speed,250,,,,,,,
PRO,升降轴(轴2)P6速度,UpDownAxis_P6_Speed,100,,,,,,,
PRO,升降轴(轴2)P7速度,UpDownAxis_P7_Speed,100,,,,,, ,
PRO,升降轴(轴2)P8速度,UpDownAxis_P8_Speed,100,,,,,,,
PRO,旋转轴(轴1)P1速度,MiddleAxis_P1_Speed,120,,,,,,,
PRO,旋转轴(轴1)P2速度,MiddleAxis_P2_Speed,120,,,,,,,
PRO,进出轴(轴3)P1速度,InOutAxis_P1_Speed,100,,,,,,,
PRO,进出轴(轴3)P2速度,InOutAxis_P2_Speed,100,,,,,,,
PRO,进出轴(轴3)P3速度,InOutAxis_P3_Speed,1000,,,,,,,
PRO,压紧轴(轴4)P1速度,CompAxis_P1_Speed,100,,,,,,,
PRO,压紧轴(轴4)P2速度,CompAxis_P2_Speed,100,,,,,,,
PRO,压紧轴(轴4)P3速度,CompAxis_P3_Speed,100,,,,,,,
PRO,升降轴(轴2)P1速度,UpDownAxis_P1_Speed,1000,,,,,,,
PRO,升降轴(轴2)P2速度,UpDownAxis_P2_Speed,600,,,,,,,
PRO,升降轴(轴2)P3速度,UpDownAxis_P3_Speed,1000,,,,,,,
PRO,升降轴(轴2)P4速度,UpDownAxis_P4_Speed,600,,,,,,,
PRO,升降轴(轴2)P5速度,UpDownAxis_P5_Speed,1000,,,,,,,
PRO,升降轴(轴2)P6速度,UpDownAxis_P6_Speed,600,,,,,,,
PRO,升降轴(轴2)P7速度,UpDownAxis_P7_Speed,600,,,,,, ,
PRO,升降轴(轴2)P8速度,UpDownAxis_P8_Speed,600,,,,,,,
PRO,旋转轴(轴1)P1速度,MiddleAxis_P1_Speed,500,,,,,,,
PRO,旋转轴(轴1)P2速度,MiddleAxis_P2_Speed,500,,,,,,,
PRO,进出轴(轴3)P1速度,InOutAxis_P1_Speed,600,,,,,,,
PRO,进出轴(轴3)P2速度,InOutAxis_P2_Speed,600,,,,,,,
PRO,进出轴(轴3)P3速度,InOutAxis_P3_Speed,600,,,,,,,
PRO,压紧轴(轴4)P1速度,CompAxis_P1_Speed,600,,,,,,,
PRO,压紧轴(轴4)P2速度,CompAxis_P2_Speed,600,,,,,,,
PRO,压紧轴(轴4)P3速度,CompAxis_P3_Speed,600,,,,,,,
PRO,(轴一)旋转轴停止时可误差的脉冲数的最小值,MiddleAxis_ErrorCountMin,10,,,,,,,
PRO,(轴二)升降轴轴停止时可误差的脉冲数的最小值,UpdownAxis_ErrorCountMin,10,,,,,, ,
PRO,(轴三)进出轴停止时可误差的脉冲数的最小值,InoutAxis_ErrorCountMin,10,,,,,,,
......@@ -99,6 +99,6 @@ PRO,需要吹气的温度(温度标准),Max_Temperature,0,,,,,,,
PRO,需要吹气的湿度(湿度标准),Max_Humidity,10,,,,,,,
PRO,每次吹气的时间(分钟),BlowAir_Time,10,,,,,,,
PRO,两次吹气间隔(分钟),BlowAir_Interval,10,,,,,,,
PRO,温湿度端口号,Humiture_Port,COM2,,,,,,,
PRO,温湿度端口号,Humiture_Port,COM1,,,,,,,
,,,,,,,,, ,
,,,,,,,,, ,
......@@ -1190,21 +1190,11 @@ namespace OnlineStore.DeviceLibrary
if (data != null && data.ContainsKey(ParamDefine.posId) && data.ContainsKey(ParamDefine.plateH) && data.ContainsKey(ParamDefine.plateW))
{
//服务器返回时有:posId库位编号,plateW:料盘宽度,plateH:料盘高度,
//postId格式BoxId#位置
string posId = data[ParamDefine.posId];
string plateW = data[ParamDefine.plateW];
string plateH = data[ParamDefine.plateH];
string[] posArray = posId.Split('#');
InOutPosInfo inoutInfo = new InOutPosInfo(message, posId, plateH, plateW);
if (!(posArray.Length == 2))
{
WarnMsg = StoreName + "入库库位格式错误: 【" + inoutInfo.ToStr() + "】";
LogUtil.error(LOGGER, "服务器反馈 入库库位格式错误:【" + inoutInfo.ToStr() + "】");
LogUtil.info(LOGGER, "服务器反馈 入库库位格式错误:【" + inoutInfo.ToStr() + "】");
return;
}
int storeId = int.Parse(posArray[0]);
//根据发送的posId获取位置列表
ACStorePosition position = CSVPositionReader<ACStorePosition>.GetPositon(posId);
if (position == null)
......@@ -1685,14 +1675,6 @@ namespace OnlineStore.DeviceLibrary
string plateW = plateWArray[index];
string plateH = plateHArray[index];
InOutPosInfo intouInfo = new InOutPosInfo(barcode, posId, plateW, plateH, urgentReel, cutReel, smallReel, rfid, rfidLoc);
string[] posArray = posId.Split('#');
if (posArray.Length != 2)
{
WarnMsg = StoreName + "库位号格式错误: 【" + intouInfo.ToStr() + "】";
LogUtil.error(LOGGER, WarnMsg);
continue;
}
// int storeId = int.Parse(posArray[0]);
//根据发送的posId获取位置列表
ACStorePosition position = CSVPositionReader<ACStorePosition>.GetPositon(posId);
......
......@@ -239,12 +239,53 @@ namespace OnlineStore.LoadCSVLibrary
StorePostionBase position = (GetPositon(PosId));
if (position != null)
{
int jIndex = position.PositionNum.IndexOf("#");
position.PositionNum = storeIndex.ToString().PadLeft(2, '0') + position.PositionNum.Substring(jIndex);
try
{
// 仓位命名: 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个隔板位置
string oldPosId = position.PositionNum;//08#AC1_18_3_18
string newPosId = "";
int jIndex = oldPosId.IndexOf("#");
string louceng = "4D";
string storeId = storeIndex.ToString().PadLeft(2, '0');
if (jIndex > 0)
{
string[] hengStr = oldPosId.Split('_');
int lie = 0;
int hang = 0;
int p = 0;
if (hengStr.Length == 4)
{
lie = Convert.ToInt32(hengStr[1]);
hang = Convert.ToInt32(hengStr[2]);
p = Convert.ToInt32(hengStr[3]);
}
lie++;
newPosId = louceng + storeId + lie.ToString().PadLeft(2, '0') + hang.ToString().PadLeft(2, '0') + p.ToString().PadLeft(2, '0');
}
else
{
newPosId = louceng + storeId + oldPosId.Substring(4, oldPosId.Length - 4);
}
// position.PositionNum = storeIndex.ToString().PadLeft(2, '0') + position.PositionNum.Substring(jIndex);
position.PositionNum = newPosId;
position.StoreId = storeIndex;
string newValue = PostionToString(position, titleIndex, proTitleMap);
lines[index] = newValue;
}
catch (Exception ex)
{
LogUtil.error("更新【" + filePath + "】位置出错【" + line + "】"+ex.ToString());
}
}
//if (value.Equals(position.PositionNum))
//{
// //更新缓存
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!