Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
李娜
/
SO908-XLRStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit c4361089
由
张东亮
编写于
2021-05-26 10:42:14 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
0526-存储机构-1
1 个父辈
df7955bc
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
17 个修改的文件
包含
953 行增加
和
20 行删除
source/Common/Setting_Init.cs
source/Common/util/AcSerialBean.cs
source/DeviceLibrary/Config/Config_BoxEquip.csv
source/DeviceLibrary/Config/linePositions.csv
source/DeviceLibrary/DeviceLibrary.csproj
source/DeviceLibrary/manager/model/DeviceStep.cs
source/DeviceLibrary/manager/model/InOutParam.cs
source/DeviceLibrary/storeBean/boxBean/AutoInoutInfo.cs
source/DeviceLibrary/storeBean/boxBean/BoxEquip.cs
source/DeviceLibrary/storeBean/boxBean/BoxEquip_Partial.cs
source/DeviceLibrary/storeBean/boxBean/BoxEquip_RequestServer.cs
source/DeviceLibrary/storeBean/boxBean/Humiture/HumitureBean.cs
source/DeviceLibrary/storeBean/boxBean/Humiture/HumitureController.cs
source/LoadCVSLibrary/LoadCSVLibrary.csproj
source/LoadCVSLibrary/position/BoxPosition.cs
source/LoadCVSLibrary/storeConfig/config/BoxEquip_Config.cs
source/XLRStoreClient/App.config
source/Common/Setting_Init.cs
查看文件 @
c436108
...
...
@@ -53,7 +53,14 @@ namespace OnlineStore.Common
/// 温控器类型,0=壁挂王字壳温湿度变送器,1=妙昕温湿度记录仪
/// </summary>
public
static
string
HumitureControllerType
=
"HumitureControllerType"
;
/// <summary>
/// 开始吹气的判断值(配置值=服务器发送的湿度值-开始吹气值)
/// </summary>
public
static
string
StartBlowValue
=
"StartBlowValue"
;
/// <summary>
/// 停止吹气的判断值(配置值=服务器发送的湿度值-停止吹气值)
/// </summary>
public
static
string
StopBlowValue
=
"StopBlowValue"
;
/// <summary>
/// 流水线监听端口
/// </summary>
...
...
source/Common/util/AcSerialBean.cs
查看文件 @
c436108
...
...
@@ -504,7 +504,26 @@ namespace OnlineStore.Common
return
putout
;
}
#
endregion
#
region
字节型转十六进制字符串
/// <summary>
/// 字节数组转16进制字符串
/// </summary>
/// <param name="bytes"></param>
/// <returns></returns>
public
static
string
byteToHexStr
(
byte
[]
bytes
)
{
string
returnStr
=
""
;
if
(
bytes
!=
null
)
{
for
(
int
i
=
0
;
i
<
bytes
.
Length
;
i
++)
{
returnStr
+=
bytes
[
i
].
ToString
(
"X2"
);
}
}
return
returnStr
;
}
#
endregion
#
region
计算校验码
...
...
source/DeviceLibrary/Config/Config_BoxEquip.csv
查看文件 @
c436108
...
...
@@ -13,31 +13,92 @@ AXIS,0,B面移栽压紧轴,ComAxis_B,9,HC,,35000,60000,60000,1000,5000,20000,10,100,0,
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,行走机构_待机点P1,MoveAxis_P1,100,,,,,,,,,,,,
PRO,0,行走机构_P1速度,MoveAxis_P1_Speed,108,,,,,,,,,,,,
PRO,0,行走机构_进出料机构取放点P2,MoveAxis_P2,100,,,,,,,,,,,,
PRO,0,行走机构_存储库位取放点位P3,MoveAxis_P3,100,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,料斗拉取进出轴_待机点P1,PullAxis_Inout_P1,100,,,,,,,,,,,,
PRO,0,料斗拉取进出轴_P1速度,PullAxis_Inout_P1_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,移栽升降轴_待机点P1,Updown_P1,100,,,,,,,,,,,,
PRO,0,移栽升降轴_P1速度,Updown_P1_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_A上暂存区取料高点P2,Updown_P2,100,,,,,,,,,,,,
PRO,0,移栽升降轴_A上暂存区取料低点P3,Updown_P3,100,,,,,,,,,,,,
PRO,0,移栽升降轴_A下暂存区放料高点P4,Updown_P4,100,,,,,,,,,,,,
PRO,0,移栽升降轴_A下暂存区放料低点P5,Updown_P5,100,,,,,,,,,,,,
PRO,0,移栽升降轴_B上暂存区取料高点P8,Updown_P8,100,,,,,,,,,,,,
PRO,0,移栽升降轴_B上暂存区取料低点P9,Updown_P9,100,,,,,,,,,,,,
PRO,0,移栽升降轴_B下暂存区取料高点P10,Updown_P10,100,,,,,,,,,,,,
PRO,0,移栽升降轴_B下暂存区取料低点P11,Updown_P11,100,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,料斗拉取升降轴_待机点P1,PullAxis_Updown_P1,100,,,,,,,,,,,,
PRO,0,料斗拉取升降轴_
P1速度,PullAxis_Updown_P1_Speed,108
,,,,,,,,,,,,
PRO,0,料斗拉取升降轴_
料屉提取水平点P2,PullAxis_Updown_P2,100
,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,A面移栽X轴_待机点P1,XAxis_A_P1,100,,,,,,,,,,,,
PRO,0,A面移栽X轴_
P1速度,XAxis_A_P1_Speed,108
,,,,,,,,,,,,
PRO,0,A面移栽X轴_
A进出料暂存区取放料点P2,XAxis_A_P2,100
,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,A面移栽旋转轴_待机点P1,MiddleAxis_A_P1,100,,,,,,,,,,,,
PRO,0,A面移栽旋转轴_P1速度,MiddleAxis_A_P1_Speed,108,,,,,,,,,,,,
PRO,0,A面移栽旋转轴_A进出料暂存区取放料水平点P2,MiddleAxis_A_P2,100,,,,,,,,,,,,
PRO,0,A面移栽旋转轴_A面料屉库位垂直取放料点P3,MiddleAxis_A_P3,100,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,A面移栽压紧轴_待机点P1,ComAxis_A_P1,100,,,,,,,,,,,,
PRO,0,A面移栽压紧轴_P1速度,ComAxis_A_P1_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,B面移栽X轴_待机点P1,XAxis_B_P1,100,,,,,,,,,,,,
PRO,0,B面移栽X轴_
P1速度,XAxis_B_P1_Speed,108
,,,,,,,,,,,,
PRO,0,B面移栽X轴_
B进出料暂存区取放料点P2,XAxis_B_P2,100
,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,B面移栽旋转轴_待机点P1,MiddleAxis_B_P1,100,,,,,,,,,,,,
PRO,0,B面移栽旋转轴_P1速度,MiddleAxis_B_P1_Speed,108,,,,,,,,,,,,
PRO,0,B面移栽旋转轴_B进出料暂存区取放料水平点P2,MiddleAxis_B_P2,100,,,,,,,,,,,,
PRO,0,B面移栽旋转轴_B面料屉库位垂直取放料点P3,MiddleAxis_B_P3,100,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,B面移栽压紧轴_待机点P1,ComAxis_B_P1,100,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,行走机构_P1速度,MoveAxis_P1_Speed,108,,,,,,,,,,,,
PRO,0,行走机构_P2速度,MoveAxis_P2_Speed,108,,,,,,,,,,,,
PRO,0,行走机构_P3速度,MoveAxis_P3_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,料斗拉取进出轴_P1速度,PullAxis_Inout_P1_Speed,108,,,,,,,,,,,,
PRO,0,料斗拉取进出轴_P2速度,PullAxis_Inout_P2_Speed,108,,,,,,,,,,,,
PRO,0,料斗拉取进出轴_P3速度,PullAxis_Inout_P3_Speed,108,,,,,,,,,,,,
PRO,0,料斗拉取进出轴_P4速度,PullAxis_Inout_P4_Speed,108,,,,,,,,,,,,
PRO,0,料斗拉取进出轴_P5速度,PullAxis_Inout_P5_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,移栽升降轴_P1速度,Updown_P1_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P2速度,Updown_P2_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P3速度,Updown_P3_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P4速度,Updown_P4_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P5速度,Updown_P5_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P6速度,Updown_P6_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P7速度,Updown_P7_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P8速度,Updown_P8_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P9速度,Updown_P9_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P10速度,Updown_P10_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P11速度,Updown_P11_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P12速度,Updown_P12_Speed,108,,,,,,,,,,,,
PRO,0,移栽升降轴_P13速度,Updown_P13_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,料斗拉取升降轴_P1速度,PullAxis_Updown_P1_Speed,108,,,,,,,,,,,,
PRO,0,料斗拉取升降轴_P2速度,PullAxis_Updown_P2_Speed,108,,,,,,,,,,,,
PRO,0,料斗拉取升降轴_P3速度,PullAxis_Updown_P3_Speed,108,,,,,,,,,,,,
PRO,0,料斗拉取升降轴_P4速度,PullAxis_Updown_P4_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,A面移栽X轴_P1速度,XAxis_A_P1_Speed,108,,,,,,,,,,,,
PRO,0,A面移栽X轴_P2速度,XAxis_A_P2_Speed,108,,,,,,,,,,,,
PRO,0,A面移栽X轴_P3速度,XAxis_A_P3_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,A面移栽旋转轴_P1速度,MiddleAxis_A_P1_Speed,108,,,,,,,,,,,,
PRO,0,A面移栽旋转轴_P2速度,MiddleAxis_A_P2_Speed,108,,,,,,,,,,,,
PRO,0,A面移栽旋转轴_P3速度,MiddleAxis_A_P3_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,A面移栽压紧轴_P1速度,ComAxis_A_P1_Speed,108,,,,,,,,,,,,
PRO,0,A面移栽压紧轴_P2速度,ComAxis_A_P2_Speed,108,,,,,,,,,,,,
PRO,0,A面移栽压紧轴_P3速度,ComAxis_A_P3_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,B面移栽X轴_P1速度,XAxis_B_P1_Speed,108,,,,,,,,,,,,
PRO,0,B面移栽X轴_P2速度,XAxis_B_P2_Speed,108,,,,,,,,,,,,
PRO,0,B面移栽X轴_P3速度,XAxis_B_P3_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,B面移栽旋转轴_P1速度,MiddleAxis_B_P1_Speed,108,,,,,,,,,,,,
PRO,0,B面移栽旋转轴_P2速度,MiddleAxis_B_P2_Speed,108,,,,,,,,,,,,
PRO,0,B面移栽旋转轴_P3速度,MiddleAxis_B_P3_Speed,108,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
PRO,0,B面移栽压紧轴_P1速度,ComAxis_B_P1_Speed,108,,,,,,,,,,,,
PRO,0,B面移栽压紧轴_P2速度,ComAxis_B_P2_Speed,108,,,,,,,,,,,,
PRO,0,B面移栽压紧轴_P3速度,ComAxis_B_P3_Speed,108,,,,,,,,,,,,
source/DeviceLibrary/Config/linePositions.csv
0 → 100644
查看文件 @
c436108
位置,优先级,高度,宽度,料仓ID,料斗进出轴料屉提取点P2P4,料斗进出轴料屉库位点P3P5,料斗升降轴料屉提取高点P3,料斗升降轴料屉提取低点P4,移栽升降轴料屉上方过渡点P6P12,移栽升降轴料屉取放点P7P13,AB移栽X轴料屉库位取放料点P3,AB移栽压紧轴压紧前点P2,AB移栽压紧轴压紧点P3
05AA03040102,1,20,7,1,190500,1779933,1790933,1790933,1779933,1779933,1779933,1779933,1779933
source/DeviceLibrary/DeviceLibrary.csproj
查看文件 @
c436108
...
...
@@ -79,6 +79,10 @@
<Compile Include="manager\StoreManager.cs" />
<Compile Include="deviceLibrary\RFID\RFIDManagercs.cs" />
<Compile Include="manager\SServerManager.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_RequestServer.cs" />
<Compile Include="storeBean\boxBean\AutoInoutInfo.cs" />
<Compile Include="storeBean\boxBean\Humiture\HumitureBean.cs" />
<Compile Include="storeBean\boxBean\Humiture\HumitureController.cs" />
<Compile Include="storeBean\inputBean\BatchMoveBean.cs" />
<Compile Include="storeBean\inputBean\BatchMoveBean_Partial.cs" />
<Compile Include="storeBean\EquipBase.cs" />
...
...
@@ -197,6 +201,7 @@
<Content Include="huichuan_x86\IMC_API_x86.lib">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<None Include="Config\linePositions.csv" />
<None Include="packages.config" />
<Content Include="SDK\MotorMaster.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
...
...
source/DeviceLibrary/manager/model/DeviceStep.cs
查看文件 @
c436108
...
...
@@ -362,7 +362,269 @@ namespace OnlineStore.DeviceLibrary
IB23_ShelfOut
,
#
endregion
}
/// <summary>
/// 料仓运动状态(当料仓状态=busy时,才会有此运动状态)
/// </summary>
public
enum
StoreStep
{
/// <summary>
/// 无操作,等待状态
/// </summary>
Wait
=
0
,
#
region
料仓原点返回和重置步骤
0010
开始
/// <summary>
/// BOX复位:料斗拉取进出轴先返回原点
/// </summary>
BOX_H01_PullAxis_InoutBack
=
011
,
/// <summary>
/// BOX复位:料斗拉取升降轴、AB面压紧轴返回原点
/// </summary>
BOX_H02_PullAxis_Updown_ABComAxis_Back
=
012
,
/// <summary>
/// BOX复位:AB面移栽x轴原点返回
/// </summary>
BOX_H03_XAxis_AB_Back
=
013
,
/// <summary>
/// BOX复位:行走机构、移栽升降轴、AB面移栽旋转轴原点返回
/// </summary>
BOX_H04_OtherAxisBack
=
014
,
/// <summary>
/// BOX待机位:料斗拉取进出轴先返回待机位
/// </summary>
BOX_H05_PullAxis_InoutToP1
=
015
,
/// <summary>
/// BOX待机位:料斗拉取升降轴、AB面压紧轴返回待机位
/// </summary>
BOX_H06_PullAxis_Updown_ABComAxis_ToP1
=
016
,
/// <summary>
/// BOX待机位:AB面移栽x轴返回待机位
/// </summary>
BOX_H07_XAxis_AB_ToP1
=
017
,
/// <summary>
/// BOX待机位:行走机构、移栽升降轴、AB面移栽旋转轴返回待机位
/// </summary>
BOX_H08_OtherAxisToP1
=
018
,
#
endregion
#
region
出库步骤
2000
开始
/// <summary>
///料仓出库:检查出库的料在哪一边
/// </summary>
SO_00_StartWithCheck
=
2001
,
/// <summary>
///料仓出库:料斗拉取进出轴先运动到P1,料斗拉取升降轴运动到料屉提取低点
/// </summary>
SO_01_PullAxis_Ready
=
2002
,
/// <summary>
/// 料仓出库:所有轴运行到库位:
/// 1. 移栽升降轴到AB料屉上方过度点
/// 2. 行走机构到P3(存储库位取放点位)
/// 3. A/B面移栽压紧轴到P2(压紧前点)
/// 4. A/B面移栽旋转轴到P3(料屉垂直取放料点)
/// </summary>
SO_02_ToPosition
,
/// <summary>
/// 料仓出库:到抽屉提取点,料斗拉取进出轴到P2(A/B面料屉提取点)
/// </summary>
SO_03_ToTray
,
/// <summary>
/// 料仓出库:提升抽屉,料斗拉取升降轴到P3(料屉提取高点)
/// </summary>
SO_04_LiftTray
,
/// <summary>
/// 料仓出库:拉抽屉到库位点,料斗拉取进出轴到P3(A/B面料屉库位点)
/// </summary>
SO_05_PullTray
,
/// <summary>
/// 料仓出库:将抽屉降到库位提取点,料斗拉取升降轴到P2(料屉提取水平点),到位后检测X16-X30对应信号=1
/// </summary>
SO_06_DropTrayToPos
,
/// <summary>
/// 料仓出库:进入库位中,移栽升降轴到A/B面料屉取放点
/// </summary>
SO_07_GetReel
,
///// <summary>
///// 料仓出库:压紧轴开始缓慢压紧,A/B面移栽压紧轴到P3(压紧点)
///// </summary>
SO_08_StartCompress
,
///// <summary>
///// 料仓出库:检测到料叉压紧确认信号,再次向下压紧指定的值
///// </summary>
//SO_09_ComDownMove,
/// <summary>
/// 料仓出库,等待压紧信号确认
/// </summary>
//SO_10_CheckComSig,
/// <summary>
///料仓出库:叉子从库位返回,移栽升降轴到A/B面料屉上方过度点
/// </summary>
SO_09_UpDownBack
,
/// <summary>
/// 料仓出库:料屉返回,提升抽屉,料斗拉取升降轴到P3(料屉提取高点)
/// </summary>
SO_10_LiftTray
,
/// <summary>
/// 料仓出库:推到抽屉提取点,料斗拉取进出轴到P2(A/B面料屉提取点)同时检测X04-X09=1
/// </summary>
SO_11_PushTray
,
/// <summary>
/// 料仓出库:放下料屉,料斗拉取升降轴到P4(料屉提取低点)
/// /// </summary>
SO_12_PutTrayDown
,
/// <summary>
/// 料仓出库:料斗拉取进出轴到P1(待机点)
/// </summary>
SO_13_InoutBack
,
/// <summary>
/// 料仓出库:检查另一边是否有出库任务
/// </summary>
SO_14_CheckOtherSide
,
/// <summary>
/// 料仓出库:到料盘暂存区
/// 1. 移栽升降轴到A/B下暂存区放料高点
/// 2. 行走机构到P2(进出料机构取放点)
/// 3. A面移栽旋转轴到P2(进出料暂存区取放料水平点),同时检测X02=1
/// 或者 B面移栽旋转轴到P2(进出料暂存区取放料水平点),同时检测X03=1
/// </summary>
S0_15_ToBufferArea
,
/// <summary>
/// 料仓出库:确保暂存区无料盘
/// 如果有料盘则报警,该区域无料时才会出库
/// </summary>
SO_16_VerifyBufferState
,
/// <summary>
/// 料仓出库:A/B面移栽X轴到P2(A/B进出料暂存区取放点)
/// </summary>
SO_17_InOutToBuff
,
/// <summary>
/// 料仓出库:把料盘放下
/// 1. 移栽升降轴到A/B下暂存区放料低点
/// 2. A/B面移栽压紧轴到P2压紧前点
/// </summary>
SO_18_PutReel
,
/// <summary>
/// 料仓出库:A/B面移栽X轴到P1(待机点)
/// </summary>
SO_19_InOutBackFromBuff
,
/// <summary>
/// 料仓出库:A/B面移栽旋转轴到P1(待机点)
/// </summary>
SO_20_Finish
,
#
endregion
#
region
入库步骤,
3000
开始
/// <summary>
///料仓出库:料斗拉取进出轴先运动到P1
/// </summary>
SI_01_PullAxis_Ready
=
3010
,
/// <summary>
/// 料仓入库:到料盘暂存区
/// 1. 移栽升降轴到P3(A上暂存区取料低点)
/// 2. 行走机构到P2(进出料机构取放点)
/// 3. A/B面移栽压紧轴到P2(压紧前点)
/// 3. A面移栽旋转轴到P2(进出料暂存区取放料水平点),同时检测X02=1
/// 或者 B面移栽旋转轴到P2(进出料暂存区取放料水平点),同时检测X03=1
/// </summary>
SI_02_ToBufferArea
,
/// <summary>
/// 料仓入库:确保暂存区有料盘
/// 如果无料盘则报警
/// </summary>
SI_03_VerifyBufferState
,
/// <summary>
/// 料仓入库:A/B面移栽X轴到P2(A/B进出料暂存区取放点)
/// </summary>
SI_04_InOutToBuff
,
/// <summary>
/// 料仓入库:取料盘
/// 1. 移栽升降轴到P2(A上暂存区取料高点)
/// 2. A/B面移栽压紧轴到P3压紧点
/// </summary>
SI_05_GetReel
,
/// <summary>
/// 料仓入库:A/B面移栽X轴到P3(A/B面料屉库位取放料点)
/// </summary>
SI_06_InOutBackFromBuff
,
/// <summary>
/// 料仓入库:A/B面移栽旋转轴到P3(A面料屉库位垂直取放料点)
/// </summary>
SI_07_MiddleToP3
,
/// <summary>
/// 料仓入库:所有轴运行到库位:
/// 1. 移栽升降轴到AB料屉上方过度点
/// 2. 行走机构到P3(存储库位取放点位)
/// 3. 料斗拉取升降轴到P4(料屉提取低点)
/// </summary>
SI_08_ToPosition
,
/// <summary>
/// 料仓入库:到抽屉提取点,料斗拉取进出轴到P2(A/B面料屉提取点)
/// </summary>
SI_09_ToTray
,
/// <summary>
/// 料仓入库:提升抽屉,料斗拉取升降轴到P3(料屉提取高点)
/// </summary>
SI_10_LiftTray
,
/// <summary>
/// 料仓入库:拉抽屉到库位点,料斗拉取进出轴到P3(A/B面料屉库位点)
/// </summary>
SI_11_PullTray
,
/// <summary>
/// 料仓入库:将抽屉降到库位提取点,料斗拉取升降轴到P2(料屉提取水平点),到位后检测X16-X30对应信号=1
/// </summary>
SI_12_DropTrayToPos
,
/// <summary>
/// 料仓入库:进入库位中,移栽升降轴到A/B面料屉取放点
/// </summary>
SI_13_GetReel
,
///// <summary>
///// 料仓入库:压紧轴开始缓慢释放,A/B面移栽压紧轴到P2(压紧前点)
///// </summary>
SI_14_ReleaseCompress
,
/// <summary>
///料仓入库:叉子从库位返回,移栽升降轴到A/B面料屉上方过度点
/// </summary>
SI_15_UpDownBack
,
/// <summary>
/// 料仓入库:料屉返回,提升抽屉,料斗拉取升降轴到P3(料屉提取高点)
/// </summary>
SI_16_LiftTray
,
/// <summary>
/// 料仓入库:推到抽屉提取点,料斗拉取进出轴到P2(A/B面料屉提取点)同时检测X04-X09=1
/// </summary>
SI_17_PushTray
,
/// <summary>
/// 料仓入库:放下料屉,料斗拉取升降轴到P4(料屉提取低点)
/// /// </summary>
SI_18_PutTrayDown
,
/// <summary>
/// 料仓入库:料斗拉取进出轴到P1(待机点)
/// </summary>
SI_19_InoutBack
,
/// <summary>
/// 料仓入库:检查另一边入库情况
/// </summary>
SI_20_CheckOtherSide
,
#
endregion
}
public
enum
AlarmType
{
/// <summary>
...
...
source/DeviceLibrary/manager/model/InOutParam.cs
查看文件 @
c436108
...
...
@@ -22,7 +22,7 @@ namespace OnlineStore.DeviceLibrary
MoveP
=
null
;
}
public
InOutParam
(
InOutPosInfo
inoutInfo
,
LineMoveP
linePosition
=
null
)
public
InOutParam
(
InOutPosInfo
inoutInfo
,
BoxMovePosition
linePosition
=
null
)
{
ACStoreP
=
null
;
;
MoveP
=
linePosition
;
...
...
@@ -48,7 +48,7 @@ namespace OnlineStore.DeviceLibrary
}
public
InOutPosInfo
PosInfo
{
get
;
set
;
}
public
LineMoveP
MoveP
{
get
;
set
;
}
public
BoxMovePosition
MoveP
{
get
;
set
;
}
}
/// <summary>
/// 出入库料盘信息
...
...
@@ -130,8 +130,17 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 出入库位置信息
/// </summary>
public
class
LineMoveP
public
class
BoxMovePosition
{
public
BoxMovePosition
()
{
}
public
BoxMovePosition
(
BoxEquip_Config
Config
)
{
}
}
}
source/DeviceLibrary/storeBean/boxBean/AutoInoutInfo.cs
0 → 100644
查看文件 @
c436108
using
OnlineStore.Common
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
namespace
OnlineStore.DeviceLibrary
{
public
class
AutoInoutInfo
{
/// <summary>
/// 入库完成后自动出库,出库完成后自动入库
/// </summary>
public
bool
autoNext
=
false
;
/// <summary>
/// 自动出入库间隔
/// </summary>
private
int
Jiange
=
3
;
private
int
positionIndex
=
0
;
public
string
autoMsg
=
""
;
private
int
startIndex
=
-
1
;
private
string
shelfPosId
=
""
;
#
region
出入库参数
/// <summary>
/// 当前出入库的次数,超过配置的数量时,需要自动重置一下,再进行出入库
/// </summary>
internal
int
CurrInOutCount
=
0
;
internal
int
CurrInOutACount
=
0
;
#
endregion
public
void
StartAuto
(
int
jiange
,
int
currIndex
,
string
shelfPosId
)
{
autoNext
=
true
;
Jiange
=
jiange
;
positionIndex
=
currIndex
;
startIndex
=
currIndex
;
this
.
shelfPosId
=
shelfPosId
;
}
public
void
StopAuto
()
{
autoNext
=
false
;
}
internal
void
InOutEndProcess
(
AC_BOX_Bean
boxBean
,
StoreMoveType
storeMoveType
)
{
try
{
CurrInOutCount
++;
CurrInOutACount
++;
//是否自动进入出库状态
if
(!
autoNext
)
{
return
;
}
if
(
storeMoveType
.
Equals
(
StoreMoveType
.
InStore
))
{
int
newIndex
=
positionIndex
-
1
;
if
(
newIndex
<
0
)
{
if
(
startIndex
>=
0
&&
startIndex
<
boxBean
.
PositionNumList
.
Count
)
{
newIndex
=
startIndex
;
boxBean
.
LogInfo
(
"下一个索引不存在,重新开始自动出入库,索引【"
+
startIndex
+
"】"
);
}
else
{
autoNext
=
false
;
autoMsg
=
"自动出入库结束!"
;
boxBean
.
LogInfo
(
"下一个索引不存在,自动 出入库结束!"
);
}
}
else
{
positionIndex
=
newIndex
;
string
posid
=
boxBean
.
PositionNumList
[
positionIndex
];
InOutParam
param
=
new
InOutParam
(
"AAAA"
,
posid
,
shelfPosId
);
//param.NeedOutShelf = false;
//param.NeedEnterShelf = false;
//判断是否需要重置
if
(
CurrInOutACount
>=
boxBean
.
Config
.
Box_ResetACount
)
{
boxBean
.
LogInfo
(
"自动进入下一个出库:posid="
+
posid
+
",当时已经出入库"
+
CurrInOutACount
+
"次,需要重置BOX,先把出库信息存入排队列表中"
);
boxBean
.
Reset
(
false
);
autoMsg
=
"自动出库:"
+
posid
;
boxBean
.
waitOutStoreList
.
Enqueue
(
param
);
}
else
{
boxBean
.
LogInfo
(
"自动进入下一个出库:posid="
+
posid
);
autoMsg
=
"自动出库:"
+
posid
;
boxBean
.
StartOutStoreMove
(
param
);
}
}
}
else
if
(
storeMoveType
.
Equals
(
StoreMoveType
.
OutStore
))
{
int
newIndex
=
positionIndex
-
Jiange
;
if
(
newIndex
<
0
)
{
if
(
startIndex
>=
0
&&
startIndex
<
boxBean
.
PositionNumList
.
Count
)
{
newIndex
=
startIndex
;
boxBean
.
LogInfo
(
"下一个索引不存在,重新开始自动出入库,索引【"
+
startIndex
+
"】"
);
}
else
{
autoNext
=
false
;
autoMsg
=
"自动出入库结束!"
;
boxBean
.
LogInfo
(
"下一个索引不存在,自动 出入库结束!"
);
}
}
else
{
string
posid
=
boxBean
.
PositionNumList
[
newIndex
];
InOutParam
param
=
new
InOutParam
(
"AAAA"
,
posid
,
shelfPosId
);
// param.NeedOutShelf = false;
//判断是否需要重置
if
(
CurrInOutACount
>=
boxBean
.
Config
.
Box_ResetACount
)
{
boxBean
.
LogInfo
(
"自动进入下一个入库:posid="
+
posid
+
",当时已经出入库"
+
CurrInOutACount
+
"次,需要重置BOX,先把入库信息存入排队列表中"
);
boxBean
.
Reset
(
false
);
autoMsg
=
"自动入库:"
+
posid
;
boxBean
.
waitOutStoreList
.
Enqueue
(
param
);
}
else
{
boxBean
.
LogInfo
(
"自动进入下一个入库:posid="
+
posid
);
autoMsg
=
"自动入库:"
+
posid
;
boxBean
.
StartInStoreMove
(
param
);
}
}
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
boxBean
.
Name
+
"InOutEndProcess ERROR:"
+
ex
.
ToString
());
}
}
internal
void
ClearCount
()
{
CurrInOutACount
=
0
;
CurrInOutCount
=
0
;
}
}
}
source/DeviceLibrary/storeBean/boxBean/BoxEquip.cs
查看文件 @
c436108
...
...
@@ -13,9 +13,13 @@ namespace OnlineStore.DeviceLibrary
{
public
partial
class
BoxEquip
:
EquipBase
{
/// <summary>
/// 配置文件
/// </summary>
public
BoxEquip_Config
Config
;
/// <summary>
/// 轴
/// </summary>
public
AxisBean
MoveAxis
=
null
;
public
AxisBean
PullAxis_Inout
=
null
;
public
AxisBean
UpdownAxis
=
null
;
...
...
@@ -27,7 +31,14 @@ namespace OnlineStore.DeviceLibrary
public
AxisBean
MiddleAxis_B
=
null
;
public
AxisBean
ComAxis_B
=
null
;
private
AxisBean
[]
moveAxisArray
;
/// <summary>
/// A面等待出库的队列
/// </summary>
public
ConcurrentQueue
<
InOutParam
>
waitAOutStoreList
=
new
ConcurrentQueue
<
InOutParam
>();
/// <summary>
/// B面等待出库的队列
/// </summary>
public
ConcurrentQueue
<
InOutParam
>
waitBOutStoreList
=
new
ConcurrentQueue
<
InOutParam
>();
public
BoxEquip
(
string
cid
,
BoxEquip_Config
config
)
{
baseConfig
=
config
;
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip_Partial.cs
查看文件 @
c436108
...
...
@@ -20,11 +20,11 @@ namespace OnlineStore.DeviceLibrary
return
false
;
}
#
region
出
入库
#
region
入库
public
override
bool
StartInstore
(
InOutParam
param
)
{
return
false
;
}
...
...
@@ -40,6 +40,10 @@ namespace OnlineStore.DeviceLibrary
return
;
}
}
#
endregion
#
region
出库
public
override
bool
StartOutstore
(
InOutParam
param
)
{
return
false
;
...
...
@@ -47,6 +51,14 @@ namespace OnlineStore.DeviceLibrary
protected
override
void
OutstoreProcess
()
{
if
(
MoveInfo
.
IsInWait
)
{
CheckWait
(
MoveInfo
);
}
if
(
MoveInfo
.
IsInWait
)
{
return
;
}
}
#
endregion
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip_RequestServer.cs
0 → 100644
查看文件 @
c436108
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/storeBean/boxBean/Humiture/HumitureBean.cs
0 → 100644
查看文件 @
c436108
using
OnlineStore.Common
;
using
OnlineStore.LoadCSVLibrary
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
namespace
OnlineStore.DeviceLibrary
{
public
class
HumitureBean
{
private
string
PortName
=
""
;
private
string
Name
=
""
;
public
HumitureParam
LastData
=
new
HumitureParam
(
0
,
0
);
internal
HumitureBean
(
string
port
,
string
deviceName
)
{
this
.
Name
=
deviceName
;
this
.
PortName
=
port
;
}
public
HumitureParam
QueryData
()
{
HumitureParam
param
=
HumitureController
.
QueryData
(
PortName
);
LastData
=
param
;
return
LastData
;
}
internal
void
ProcessHumidityCMD
(
Operation
resultOperation
)
{
Dictionary
<
string
,
string
>
data
=
resultOperation
.
data
;
if
(
data
!=
null
&&
data
.
ContainsKey
(
ParamDefine
.
maxHumidity
)
&&
data
.
ContainsKey
(
ParamDefine
.
maxTemperature
))
{
string
maxHumidity
=
data
[
ParamDefine
.
maxHumidity
];
string
maxTemp
=
data
[
ParamDefine
.
maxTemperature
];
LogUtil
.
info
(
Name
+
"收到服务器温湿度预警值:maxHumidity="
+
maxHumidity
+
",maxTemperature="
+
maxTemp
);
try
{
this
.
Max_Humidity
=
(
float
)
Convert
.
ToDouble
(
maxHumidity
);
this
.
Max_Temperature
=
(
float
)
Convert
.
ToDouble
(
maxTemp
);
LogUtil
.
info
(
Name
+
"保存温湿度预警值:Max_Humidity="
+
Max_Humidity
+
",Max_Temperature="
+
Max_Temperature
);
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
Name
+
"转换温湿度失败:"
+
ex
.
ToString
());
}
}
}
#
region
温湿度处理
/// <summary>
/// 湿度标准,超过后需要报警
/// </summary>
private
float
Max_Humidity
=
0
;
/// <summary>
/// 温度标准,超过后需要报警
/// </summary>
private
float
Max_Temperature
=
0
;
private
bool
IsInBlowing
=
false
;
private
DateTime
LastBeginBlowTime
=
DateTime
.
Now
;
private
DateTime
LastEndBlowTime
=
new
DateTime
(
1997
,
1
,
1
);
private
DateTime
preLogTime
=
DateTime
.
Now
;
public
bool
TempOrHumidityIsAlarm
=
false
;
public
DateTime
TempAlarmTime
=
DateTime
.
Now
;
private
float
StartBlowValue
=
(
float
)
ConfigAppSettings
.
GetNumValue
(
Setting_Init
.
StartBlowValue
);
private
float
StopBlowValue
=
(
float
)
ConfigAppSettings
.
GetNumValue
(
Setting_Init
.
StopBlowValue
);
public
string
currTempStr
=
""
;
internal
void
HumidityProcess
(
BoxEquip
box
)
{
try
{
if
((
DateTime
.
Now
-
preLogTime
).
TotalSeconds
>
(
8
+
box
.
DeviceID
))
{
preLogTime
=
DateTime
.
Now
;
//用最大的湿度判断是否需要吹气,开始吹气的值=发过来的值-4
//温湿度
//ASTemperateParam param = HumitureServer.GetTemperateParam(Config.GetTempAddrList());
HumitureParam
param
=
QueryData
();
double
humidity
=
0
;
double
temp
=
0
;
if
(
param
!=
null
)
{
humidity
=
param
.
Humidity
;
temp
=
param
.
Temperate
;
currTempStr
=
Name
+
(
"湿度:"
+
humidity
.
ToString
()
+
",温度:"
+
temp
);
}
//double currMaxHumidity = HumitureServer.GetMaxHumidity(Config.GetTempAddrList());
double
currMaxHumidity
=
param
.
Humidity
;
float
startBlowHumidity
=
Max_Humidity
-
StartBlowValue
;
float
stopBlowHumidity
=
Max_Humidity
-
StopBlowValue
;
//判断是否需要吹气
if
(
startBlowHumidity
>
0
&&
startBlowHumidity
<
currMaxHumidity
&&
IsInBlowing
.
Equals
(
false
))
{
//判断是否距离上次结束指定的时间
TimeSpan
span
=
DateTime
.
Now
-
LastEndBlowTime
;
if
(
span
.
TotalMinutes
>
box
.
Config
.
BlowAir_Interval
)
{
LogUtil
.
info
(
Name
+
"当前最大湿度:"
+
currMaxHumidity
.
ToString
()
+
",开始吹气湿度:"
+
startBlowHumidity
+
",当前不在吹气中,且间隔超过"
+
box
.
Config
.
BlowAir_Interval
+
"分钟,开始吹气!"
);
IsInBlowing
=
true
;
//Thread.Sleep(100);
//box.IOMove(IO_Type.StartOrStopBlow, IO_VALUE.HIGH);
LastBeginBlowTime
=
DateTime
.
Now
;
LastEndBlowTime
=
DateTime
.
Now
;
}
}
if
(
IsInBlowing
&&
stopBlowHumidity
>
currMaxHumidity
)
{
LogUtil
.
info
(
Name
+
"当前最大湿度:"
+
currMaxHumidity
.
ToString
()
+
",停止吹气湿度:"
+
stopBlowHumidity
+
",停止吹气!"
);
IsInBlowing
=
false
;
// box.IOMove(IO_Type.StartOrStopBlow, IO_VALUE.LOW);
LastEndBlowTime
=
DateTime
.
Now
;
}
if
(
IsInBlowing
)
{
//判断是否需要结束吹气
TimeSpan
span
=
DateTime
.
Now
-
LastBeginBlowTime
;
if
(
span
.
TotalMinutes
>
box
.
Config
.
BlowAir_Time
)
{
LogUtil
.
info
(
Name
+
"已经吹气"
+
span
.
TotalMinutes
+
"分钟,超过配置的吹气时间"
+
box
.
Config
.
BlowAir_Time
+
"分钟,停止吹气!"
);
IsInBlowing
=
false
;
//Thread.Sleep(100);
// box.IOMove(IO_Type.StartOrStopBlow, IO_VALUE.LOW);
LastEndBlowTime
=
DateTime
.
Now
;
}
}
bool
needAlarm
=
false
;
//如果开始吹气并且当前达到报警值
if
(
IsInBlowing
&&
humidity
>
Max_Humidity
)
{
needAlarm
=
true
;
}
else
if
(
temp
>
Max_Temperature
&&
Max_Temperature
>
0
)
{
LogUtil
.
info
(
Name
+
"当前温度【"
+
param
.
Temperate
+
"】超过最高温度【"
+
Max_Temperature
+
"】,开始报警!"
);
needAlarm
=
true
;
//Thread.Sleep(100);
//box.IOMove(IO_Type.StartOrStopBlow, IO_VALUE.LOW);
}
else
if
(
temp
<
Max_Temperature
)
{
if
(
IsInBlowing
.
Equals
(
false
)
&&
TempOrHumidityIsAlarm
)
{
LogUtil
.
info
(
Name
+
"不在吹气中,且当前温度【"
+
param
.
Temperate
+
"】低于【"
+
Max_Temperature
+
"】,关闭报警!"
);
TempOrHumidityIsAlarm
=
false
;
//Thread.Sleep(100);
//box.IOMove(IO_Type.StartOrStopBlow, IO_VALUE.LOW);
}
}
else
{
TempOrHumidityIsAlarm
=
false
;
}
if
(
needAlarm
)
{
HTAlarm
();
}
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
Name
+
"HumidityProcess出错:"
+
ex
.
ToString
());
}
}
private
void
HTAlarm
()
{
if
(
TempOrHumidityIsAlarm
)
{
return
;
}
TempAlarmTime
=
DateTime
.
Now
;
TempOrHumidityIsAlarm
=
true
;
}
internal
bool
NeedGetTem
()
{
if
(
Max_Humidity
<=
0
||
(
Max_Temperature
<=
0
))
{
return
true
;
}
return
false
;
}
#
endregion
}
public
class
HumitureParam
{
public
HumitureParam
(
string
clientipe
,
string
add
,
string
pwd
,
double
wendu
,
double
shidu
,
DateTime
updateTime
)
{
this
.
IpAddress
=
clientipe
;
this
.
DeviceAddress
=
add
;
this
.
Password
=
pwd
;
this
.
Temperate
=
wendu
;
this
.
Humidity
=
shidu
;
this
.
UpdateTime
=
updateTime
;
}
//获取平均值时使用此 参数,只做显示用
public
HumitureParam
(
double
wendu
,
double
shidu
)
{
this
.
IpAddress
=
""
;
this
.
DeviceAddress
=
""
;
this
.
Password
=
""
;
this
.
Temperate
=
wendu
;
this
.
Humidity
=
shidu
;
this
.
UpdateTime
=
DateTime
.
Now
;
}
/// <summary>
/// 判断值是否在有效期内。默认有效期是一分钟
/// </summary>
/// <returns></returns>
public
bool
IsValid
()
{
TimeSpan
span
=
DateTime
.
Now
-
UpdateTime
;
if
(
span
.
TotalMinutes
>
3
)
{
return
false
;
}
return
true
;
}
/// <summary>
/// 更新时间
/// </summary>
public
DateTime
UpdateTime
{
get
;
set
;
}
/// <summary>
/// IP地址
/// </summary>
public
string
IpAddress
{
get
;
set
;
}
/// <summary>
/// 设备地址
/// </summary>
public
string
DeviceAddress
{
get
;
set
;
}
/// <summary>
/// 访问密码
/// </summary>
public
string
Password
{
get
;
set
;
}
/// <summary>
/// 温度
/// </summary>
public
double
Temperate
{
get
;
set
;
}
/// <summary>
/// 湿度
/// </summary>
public
double
Humidity
{
get
;
set
;
}
}
}
source/DeviceLibrary/storeBean/boxBean/Humiture/HumitureController.cs
0 → 100644
查看文件 @
c436108
此文件的差异被折叠,
点击展开。
source/LoadCVSLibrary/LoadCSVLibrary.csproj
查看文件 @
c436108
...
...
@@ -49,6 +49,7 @@
<ItemGroup>
<Compile Include="CSVExection.cs" />
<Compile Include="FileEncoding.cs" />
<Compile Include="position\BoxPosition.cs" />
<Compile Include="position\XLRPosition.cs" />
<Compile Include="position\CSVPositionReader.cs" />
<Compile Include="position\PositionBase.cs" />
...
...
source/LoadCVSLibrary/position/BoxPosition.cs
0 → 100644
查看文件 @
c436108
using
OnlineStore.Common
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
namespace
OnlineStore.LoadCSVLibrary
{
public
class
BoxPosition
:
PositionBase
{
/// <summary>
/// 对应的料仓ID(流水线料仓需要用此字段区分哪个BOX)
/// </summary>
[
CSVAttribute
(
"料仓ID"
)]
public
int
StoreId
{
get
;
set
;
}
/// <summary>
/// 料斗进出轴料屉提取点
/// P2 对应 A面
/// P4 对应 B面
/// </summary>
[
CSVAttribute
(
"料斗进出轴料屉提取点P2P4"
)]
public
int
PullAxis_Inout_P2_P4
{
get
;
set
;
}
/// <summary>
/// 料斗进出轴料屉库位点
/// P3 对应 A面
/// P5 对应 B面
/// </summary>
[
CSVAttribute
(
"料斗进出轴料屉库位点P3P5"
)]
public
int
PullAxis_Inout_P3_P5
{
get
;
set
;
}
/// <summary>
/// 料斗升降轴料屉提取高点P3
/// </summary>
[
CSVAttribute
(
"料斗升降轴料屉提取高点P3"
)]
public
int
PullAxis_Updown_P3
{
get
;
set
;
}
/// <summary>
/// 料斗升降轴料屉提取低点P4
/// </summary>
[
CSVAttribute
(
"料斗升降轴料屉提取低点P4"
)]
public
int
PullAxis_Updown_P4
{
get
;
set
;
}
/// <summary>
/// 移栽升降轴料屉上方过渡点
/// P6 对应 A面
/// P12 对应 B面
/// </summary>
[
CSVAttribute
(
"移栽升降轴料屉上方过渡点P6P12"
)]
public
int
Updown_P6_P12
{
get
;
set
;
}
/// <summary>
/// 移栽升降轴料屉取放点
/// P7 对应 A面
/// P13 对应 B面
/// </summary>
[
CSVAttribute
(
"移栽升降轴料屉取放点P7P13"
)]
public
int
Updown_P7_P13
{
get
;
set
;
}
/// <summary>
/// AB移栽X轴料屉库位取放料点P3
/// </summary>
[
CSVAttribute
(
"AB移栽X轴料屉库位取放料点P3"
)]
public
int
XAxis_AB_P3
{
get
;
set
;
}
/// <summary>
/// AB移栽压紧轴压紧前点P2
/// </summary>
[
CSVAttribute
(
"AB移栽压紧轴压紧前点P2"
)]
public
int
ComAxis_AB_P2
{
get
;
set
;
}
/// <summary>
/// AB移栽压紧轴压紧点P3
/// </summary>
[
CSVAttribute
(
"AB移栽压紧轴压紧点P3"
)]
public
int
ComAxis_AB_P3
{
get
;
set
;
}
public
static
bool
CheckPosition
(
XLRPosition
position
,
BoxEquip_Config
Config
)
{
try
{
//if (Config.Middle_Axis.PositionIsHasLimit())
//{
// int mMin = Config.Middle_Axis.PositionMin;
// int mMax = Config.Middle_Axis.PositionMax;
// if (mMin > position.MiddleAxis_Position_P2 || mMax < position.MiddleAxis_Position_P2)
// {
// LogUtil.error(position.PositionNum + " MiddleAxis_Position_P2位置超出" + Config.Middle_Axis.Explain + "上下限(" + mMin + "-" + mMax + ")");
// return false;
// }
//}
//if (Config.InOut_Axis.PositionIsHasLimit())
//{
// int iMin = Config.InOut_Axis.PositionMin;
// int iMax = Config.InOut_Axis.PositionMax;
// if (iMin > position.InOutAxis_DoorPosition_P2 || iMax < position.InOutAxis_DoorPosition_P2)
// {
// LogUtil.error(position.PositionNum + " InOutAxis_DoorPosition_P2位置超出" + Config.InOut_Axis.Explain + "上下限(" + iMin + "-" + iMax + ")");
// return false;
// }
// if (iMin > position.InOutAxis_Position_P3 || iMax < position.InOutAxis_Position_P3)
// {
// LogUtil.error(position.PositionNum + " InOutAxis_Position_P3位置超出" + Config.InOut_Axis.Explain + "上下限(" + iMin + "-" + iMax + ")");
// return false;
// }
//}
//if (Config.UpDown_Axis.PositionIsHasLimit())
//{
// int uMin = Config.UpDown_Axis.PositionMin;
// int uMax = Config.UpDown_Axis.PositionMax;
// if (uMin > position.UpDownAxis_IHPosition_P3 || uMax < position.UpDownAxis_IHPosition_P3)
// {
// LogUtil.error(position.PositionNum + " UpDownAxis_IHPosition_P3位置超出" + Config.UpDown_Axis.Explain + "上下限(" + uMin + "-" + uMax + ")");
// return false;
// }
// if (uMin > position.UpDownAxis_ILPosition_P4 || uMax < position.UpDownAxis_ILPosition_P4)
// {
// LogUtil.error(position.PositionNum + " UpDownAxis_ILPosition_P4位置超出" + Config.UpDown_Axis.Explain + "上下限(" + uMin + "-" + uMax + ")");
// return false;
// }
// if (uMin > position.UpDownAxis_OHPosition_P5 || uMax < position.UpDownAxis_OHPosition_P5)
// {
// LogUtil.error(position.PositionNum + " UpDownAxis_OHPosition_P5位置超出" + Config.UpDown_Axis.Explain + "上下限(" + uMin + "-" + uMax + ")");
// return false;
// }
// if (uMin > position.UpDownAxis_OLPosition_P6 || uMax < position.UpDownAxis_OLPosition_P6)
// {
// LogUtil.error(position.PositionNum + " UpDownAxis_OLPosition_P6位置超出" + Config.UpDown_Axis.Explain + "上下限(" + uMin + "-" + uMax + ")");
// return false;
// }
//}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
"验证"
+
position
.
PositionNum
+
"的位置范围出错:"
+
ex
.
ToString
());
}
return
true
;
}
}
}
source/LoadCVSLibrary/storeConfig/config/BoxEquip_Config.cs
查看文件 @
c436108
此文件的差异被折叠,
点击展开。
source/XLRStoreClient/App.config
查看文件 @
c436108
...
...
@@ -9,7 +9,12 @@
<
add
key
=
"App_Title"
value
=
"流水线客户端"
/>
<!--
Server
address
-->
<
add
key
=
"http.server"
value
=
"http://192.168.100.14/myproject/"
/>
<!-- 开始吹气的判断值(配置值=服务器发送的湿度值-开始吹气值)-->
<
add
key
=
"StartBlowValue"
value
=
"4"
/>
<!-- 停止吹气的判断值(配置值=服务器发送的湿度值-停止吹气值)-->
<
add
key
=
"StopBlowValue"
value
=
"4"
/>
<!--温控器类型,
0
=壁挂王字壳温湿度变送器,
1
=妙昕温湿度记录仪-->
<
add
key
=
"HumitureControllerType"
value
=
"0"
/>
<!--
start
one
store
config
-->
<
add
key
=
"ConfigPath_XLRStore"
value
=
"\Config\Config_Store.csv"
/>
<
add
key
=
"ConfigPath_Input"
value
=
"\Config\Config_InputEquip.csv"
/>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论