Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
李娜
/
SO664-HCSingleStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 32bf752b
由
LN
编写于
2021-06-25 16:15:30 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
视觉识别修改,识别时增加参数planName
1 个父辈
8fce0372
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
102 行增加
和
31 行删除
dll/camera/Asa.Camera.VisionLib.dll
dll/camera/Asa.Camera.VisionLib.xml
dll/camera/Camera.json
dll/camera/CameraVisionLibSetting.exe
dll/camera/EyemLib/eyemLib.dll
dll/camera/log4net.config
dll/camera/log4net.dll
source/DeviceLibrary/acSingleStore/BoxBean.cs
source/DeviceLibrary/acSingleStore/BoxBean_Partial.cs
source/DeviceLibrary/acSingleStore/StoreBean.cs
source/DeviceLibrary/acSingleStore/StoreManager.cs
source/DeviceLibrary/bean/model/StoreMoveInfo.cs
source/HCSingleStore/Camera.json
source/HCSingleStore/FrmBox.Designer.cs
source/HCSingleStore/FrmBox.cs
dll/camera/Asa.Camera.VisionLib.dll
查看文件 @
32bf752
此文件类型无法预览
dll/camera/Asa.Camera.VisionLib.xml
查看文件 @
32bf752
此文件的差异被折叠,
点击展开。
dll/camera/Camera.json
查看文件 @
32bf752
{
"CodeOrder"
:
"HalconOnly"
,
"Halcon"
:{
"CodeType"
:
"All"
,
"Zoom1DCode"
:
1.5
,
"Zoom2DCode"
:
1.5
},
"EyemLib"
:{
"CodeType"
:
"All"
,
"BlockSize"
:
11
,
"RangeC"
:
5
,
"SymbolMin"
:
128
,
"SymbolMax"
:
215
},
"Region"
:[{
"CameraName"
:
"monitor"
,
"RegionName"
:
"LeftTop"
,
"X"
:
952
,
"Y"
:
268
,
"Width"
:
416
,
"Height"
:
479
,
"Ratio"
:
0.7
},{
"CameraName"
:
"monitor"
,
"RegionName"
:
"RightTop"
,
"X"
:
967
,
"Y"
:
288
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.7
},{
"CameraName"
:
"monitor"
,
"RegionName"
:
"name1"
,
"X"
:
526
,
"Y"
:
424
,
"Width"
:
640
,
"Height"
:
375
,
"Ratio"
:
0.7
}],
"HIKIPCamera"
:[{
"Name"
:
"monitor"
,
"IP"
:
"192.168.102.210"
,
"Port"
:
"8000"
,
"User"
:
"admin"
,
"Pwd"
:
"acc123456"
}]}
\ No newline at end of file
{
"CodeOrder"
:
"HalconOnly"
,
"Halcon"
:{
"CodeType"
:
"All"
,
"Zoom1DCode"
:
1.5
,
"Zoom2DCode"
:
1.5
},
"EyemLib"
:{
"CodeType"
:
"All"
,
"BlockSize"
:
11
,
"RangeC"
:
5
,
"SymbolMin"
:
128
,
"SymbolMax"
:
215
},
"Region"
:{
"monitor"
:{
"Aplan"
:[{
"RegionName"
:
"one"
,
"X"
:
133
,
"Y"
:
167
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
},{
"RegionName"
:
"two"
,
"X"
:
555
,
"Y"
:
170
,
"Width"
:
390
,
"Height"
:
450
,
"Ratio"
:
0.6
}],
"Bplan"
:[{
"RegionName"
:
"one"
,
"X"
:
927
,
"Y"
:
278
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
},{
"RegionName"
:
"two"
,
"X"
:
1353
,
"Y"
:
276
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
}],
"C计划"
:[{
"RegionName"
:
"name1"
,
"X"
:
122
,
"Y"
:
147
,
"Width"
:
100
,
"Height"
:
100
,
"Ratio"
:
0.4
}]},
"monitor2"
:{
"key1"
:[{
"RegionName"
:
"one"
,
"X"
:
967
,
"Y"
:
288
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
}]}},
"HIKIPCamera"
:[{
"Name"
:
"monitor"
,
"IP"
:
"192.168.10.64"
,
"User"
:
"admin"
,
"Password"
:
"qwert2asdfg"
,
"Port"
:
8000
}]}
\ No newline at end of file
dll/camera/CameraVisionLibSetting.exe
查看文件 @
32bf752
此文件类型无法预览
dll/camera/EyemLib/eyemLib.dll
查看文件 @
32bf752
此文件类型无法预览
dll/camera/log4net.config
0 → 100644
查看文件 @
32bf752
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
configuration
>
<
log4net
>
<
logger
name
=
"log"
>
<
level
value
=
"Debug"
/>
<
appender
-
ref
ref
=
"log"
/>
</
logger
>
<
appender
name
=
"log"
type
=
"log4net.Appender.RollingFileAppender"
>
<
param
name
=
"File"
value
=
"Logs\\CameraVisionLibSetting.log"
/>
<
param
name
=
"Encoding"
value
=
"UTF-8"
/>
<
param
name
=
"AppendToFile"
value
=
"true"
/>
<
param
name
=
"RollingStyle"
value
=
"Date"
/>
<
param
name
=
"DatePattern"
value
=
"yyyy-MM-dd"
/>
<
param
name
=
"MaxSizeRollBackups"
value
=
"100"
/>
<
param
name
=
"MaxFileSize"
value
=
"10240"
/>
<
layout
type
=
"log4net.Layout.PatternLayout"
>
<
param
name
=
"ConversionPattern"
value
=
"[%d][%t][%c:%L]%-5p %m%n"
/>
</
layout
>
</
appender
>
</
log4net
>
</
configuration
>
\ No newline at end of file
dll/camera/log4net.dll
查看文件 @
32bf752
此文件类型无法预览
source/DeviceLibrary/acSingleStore/BoxBean.cs
查看文件 @
32bf752
...
...
@@ -85,6 +85,28 @@ namespace OnlineStore.DeviceLibrary
lineConnect
=
new
LineConnect
(
config
.
GetStoreId
(),
config
.
CID
);
mainTimer
.
Enabled
=
false
;
}
public
void
FeatureOriginal
(
string
planName
)
{
try
{
//判断是否记录比较原图
if
(
MoveInfo
.
MoveType
.
Equals
(
StoreMoveType
.
ReturnHome
)
&&
StoreManager
.
Store
.
vision
!=
null
&&
(!
String
.
IsNullOrEmpty
(
Config
.
Camera_Name
)))
{
LogInfo
(
""
+
MoveInfo
.
MoveType
+
$
":获取特征原始图[{Config.Camera_Name}][{planName}]"
);
StoreManager
.
Store
.
vision
.
FeatureOriginal
(
Config
.
Camera_Name
,
planName
);
}
}
catch
(
AccessViolationException
e
)
{
LogUtil
.
error
(
Name
+
"FeatureOriginal 出错 AccessViolationException:"
+
e
.
ToString
());
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
Name
+
"FeatureOriginal 出错:"
+
ex
.
ToString
());
}
}
private
int
vcount
=
0
;
/// <summary>
/// 视觉比较是否有料
...
...
@@ -92,7 +114,7 @@ namespace OnlineStore.DeviceLibrary
/// <param name="exist"></param>
/// <returns>true=有料,false=无料</returns>
[
HandleProcessCorruptedStateExceptions
]
public
bool
VisionComp
(
out
Dictionary
<
string
,
bool
>
exist
)
public
bool
VisionComp
(
string
planName
,
out
Dictionary
<
string
,
bool
>
exist
)
{
LastCheckTime
=
DateTime
.
Now
;
bool
returnResult
=
false
;
...
...
@@ -106,7 +128,7 @@ namespace OnlineStore.DeviceLibrary
if
(
StoreManager
.
Store
.
vision
!=
null
)
{
vcount
++;
bool
result
=
StoreManager
.
Store
.
vision
.
FeatureCompare
(
Config
.
Camera_Name
,
out
exist
);
bool
result
=
StoreManager
.
Store
.
vision
.
FeatureCompare
(
Config
.
Camera_Name
,
planName
,
out
exist
);
if
(!
result
)
{
LogUtil
.
error
(
Name
+
" VisionComp ["
+
Config
.
Camera_Name
+
"] ="
+
result
);
...
...
@@ -128,7 +150,7 @@ namespace OnlineStore.DeviceLibrary
str
+=
key
+
"="
+
exist
[
key
]
+
";"
;
}
}
LogUtil
.
info
(
Name
+
"VisionComp "
+
vcount
+
" ["
+
Config
.
Camera_Name
+
"] 结果:"
+
str
);
LogUtil
.
info
(
Name
+
$
"VisionComp{ vcount } [{ Config.Camera_Name }][{planName}] 结果:{str}"
);
}
}
}
...
...
@@ -224,9 +246,17 @@ namespace OnlineStore.DeviceLibrary
storeRunStatus
=
StoreRunStatus
.
HomeMoving
;
MoveInfo
.
NewMove
(
StoreMoveType
.
ReturnHome
);
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BOX_H_InOutBack
);
ACAxisHomeMove
(
Config
.
InOut_Axis
);
LogInfo
(
"开始原点返回,先把进出轴回原点"
);
ACAxisHomeMove
(
Config
.
InOut_Axis
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
2000
));
if
(
MoveInfo
.
MoveType
.
Equals
(
StoreMoveType
.
ReturnHome
)
&&
StoreManager
.
Store
.
vision
!=
null
&&
(!
String
.
IsNullOrEmpty
(
Config
.
Camera_Name
)))
{
LogInfo
(
"开始原点返回,先把进出轴回原点,打开仓门"
);
OpenDoor
(
true
);
}
else
{
LogInfo
(
"开始原点返回,先把进出轴回原点"
);
}
}
public
void
MoveToP1
()
{
...
...
@@ -267,9 +297,9 @@ namespace OnlineStore.DeviceLibrary
return
;
}
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BOX_H_InOutMove
);
LogInfo
(
"复位中,等待2秒后进出轴开始原点返回"
);
LogInfo
(
"复位中,等待2秒后进出轴开始原点返回"
);
//ACAxisHomeMove(Config.InOut_Axis);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
2000
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
2000
));
isInPro
=
false
;
}
...
...
@@ -291,15 +321,17 @@ namespace OnlineStore.DeviceLibrary
case
StoreMoveStep
.
BOX_H_InOutMove
:
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BOX_H_InOutBack
);
ACAxisHomeMove
(
Config
.
InOut_Axis
);
LogInfo
(
""
+
MoveInfo
.
MoveType
+
":进出轴开始原点返回"
);
LogInfo
(
""
+
MoveInfo
.
MoveType
+
":进出轴开始原点返回"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
2000
));
break
;
case
StoreMoveStep
.
BOX_H_InOutBack
:
Thread
.
Sleep
(
200
);
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BOX_H_InOutToP1
);
LogInfo
(
""
+
MoveInfo
.
MoveType
+
":进出轴到待机点P1["
+
Config
.
InOutAxis_P1_Position
+
"]
,关闭舱门
"
);
LogInfo
(
""
+
MoveInfo
.
MoveType
+
":进出轴到待机点P1["
+
Config
.
InOutAxis_P1_Position
+
"]"
);
ACAxisMove
(
Config
.
InOut_Axis
,
Config
.
InOutAxis_P1_Position
,
Config
.
InOutAxis_P1_Speed
);
CloseDoor
();
//判断是否记录比较原图
FeatureOriginal
(
StoreManager
.
PlanName_OpenDoor
);
break
;
case
StoreMoveStep
.
BOX_H_InOutToP1
:
//如果此时轴三还在报警,需要提示错误并等待
...
...
@@ -312,9 +344,11 @@ namespace OnlineStore.DeviceLibrary
}
}
//复位和回原点要等轴3进出轴ORG亮了以后才能返回其他轴
LogInfo
(
""
+
MoveInfo
.
MoveType
+
": 压紧轴,旋转轴,上下轴开始 原点返回"
);
LogInfo
(
""
+
MoveInfo
.
MoveType
+
": 压紧轴,旋转轴,上下轴开始 原点返回
,关闭舱门
"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BOX_H_OtherAxisBack
);
CloseDoor
();
MoveInfo
.
TimeOutSeconds
=
100
;
if
(
UseCompress_Axis
)
{
...
...
@@ -337,6 +371,9 @@ namespace OnlineStore.DeviceLibrary
Thread
.
Sleep
(
500
);
ACAxisMove
(
Config
.
Middle_Axis
,
Config
.
MiddleAxis_P1_Position
,
Config
.
MiddleAxis_P1_Speed
);
//判断是否记录比较原图
FeatureOriginal
(
StoreManager
.
PlanName_CloseDoor
);
break
;
case
StoreMoveStep
.
BOX_H_MiddleAxisToP1
:
LogInfo
(
""
+
MoveInfo
.
MoveType
+
"完成"
);
...
...
source/DeviceLibrary/acSingleStore/BoxBean_Partial.cs
查看文件 @
32bf752
...
...
@@ -274,7 +274,7 @@ namespace OnlineStore.DeviceLibrary
TimeSpan
checkSpan
=
DateTime
.
Now
-
LastCheckTime
;
if
(
checkSpan
.
TotalSeconds
>
1
)
{
bool
result
=
VisionComp
(
out
Dictionary
<
string
,
bool
>
exist
);
bool
result
=
VisionComp
(
wait
.
PlanName
,
out
Dictionary
<
string
,
bool
>
exist
);
if
(
result
&&
wait
.
IoValue
.
Equals
(
IO_VALUE
.
HIGH
))
{
wait
.
IsEnd
=
true
;
...
...
@@ -443,7 +443,7 @@ namespace OnlineStore.DeviceLibrary
if
(
alarmType
.
Equals
(
StoreAlarmType
.
None
)
&&
String
.
IsNullOrEmpty
(
WarnMsg
))
{
//如果视觉检测有料,也可以入库
if
(
VisionComp
(
out
Dictionary
<
string
,
bool
>
exist
))
if
(
VisionComp
(
StoreManager
.
PlanName_CloseDoor
,
out
Dictionary
<
string
,
bool
>
exist
))
{
string
imgName
=
SaveComName
();
InStoreLog
(
"入库:门口检测信号不亮,但视觉识别有料盘,认为有料:"
+
imgName
);
...
...
@@ -851,17 +851,17 @@ namespace OnlineStore.DeviceLibrary
{
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
SO_22_WaitNoTray
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
TrayCheck_Door
,
IO_VALUE
.
LOW
));
OpenDoor
();
OpenDoor
(
true
);
}
else
if
(
MoveInfo
.
MoveStep
==
StoreMoveStep
.
SO_22_WaitNoTray
)
{
if
(
IOValue
(
IO_Type
.
TrayCheck_Door
).
Equals
(
IO_VALUE
.
LOW
)
&&
VisionComp
(
out
Dictionary
<
string
,
bool
>
exist
))
if
(
IOValue
(
IO_Type
.
TrayCheck_Door
).
Equals
(
IO_VALUE
.
LOW
)
&&
VisionComp
(
StoreManager
.
PlanName_OpenDoor
,
out
Dictionary
<
string
,
bool
>
exist
))
{
string
fileName
=
SaveComName
(
);
LogUtil
.
error
(
Name
+
"_"
+
MoveInfo
.
MoveStep
+
"_"
+
MoveInfo
.
MoveParam
.
PosInfo
.
PosId
+
"出库:门口检测信号无料,但视觉识别有料盘:"
+
fileName
+
",重新等待仓门口无料"
);
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
SO_22_WaitNoTray
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitVisionComp
(
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitVisionComp
(
StoreManager
.
PlanName_OpenDoor
,
IO_VALUE
.
LOW
));
}
else
{
...
...
@@ -898,7 +898,7 @@ namespace OnlineStore.DeviceLibrary
{
SO_28_GoBack
();
}
else
if
(
VisionComp
(
out
Dictionary
<
string
,
bool
>
exist
))
else
if
(
VisionComp
(
StoreManager
.
PlanName_CloseDoor
,
out
Dictionary
<
string
,
bool
>
exist
))
{
SO_28_GoBack
();
}
...
...
@@ -963,7 +963,7 @@ namespace OnlineStore.DeviceLibrary
string
posId
=
MoveInfo
.
MoveParam
!=
null
?
MoveInfo
.
MoveParam
.
PosInfo
.
PosId
:
""
;
string
barcode
=
MoveInfo
.
MoveParam
!=
null
?
MoveInfo
.
MoveParam
.
PosInfo
.
barcode
:
""
;
//再次检测
bool
hasReel
=
VisionComp
(
out
Dictionary
<
string
,
bool
>
exist
);
bool
hasReel
=
VisionComp
(
StoreManager
.
PlanName_CloseDoor
,
out
Dictionary
<
string
,
bool
>
exist
);
if
(
hasReel
)
{
string
fileName
=
SaveComName
();
...
...
source/DeviceLibrary/acSingleStore/StoreBean.cs
查看文件 @
32bf752
...
...
@@ -148,7 +148,7 @@ namespace OnlineStore.DeviceLibrary
{
vision
=
new
Asa
.
Camera
.
VisionLib
(
vfile
,
"RollingLogFileAppender"
);
vision
.
Open
();
vision
.
FeatureOriginal
();
//
vision.FeatureOriginal();
LogUtil
.
info
(
" InitVisionLib ["
+
vfile
+
"] [RollingLogFileAppender] 完成"
);
}
}
...
...
source/DeviceLibrary/acSingleStore/StoreManager.cs
查看文件 @
32bf752
...
...
@@ -352,9 +352,10 @@ namespace OnlineStore.DeviceLibrary
return
msg
;
}
}
public
class
ResultData
public
static
string
PlanName_CloseDoor
=
"DoorClosed"
;
public
static
string
PlanName_OpenDoor
=
"DoorOpening"
;
}
public
class
ResultData
{
//{"code":0,"msg":"ok","data":"7"}
public
int
code
{
get
;
set
;
}
...
...
source/DeviceLibrary/bean/model/StoreMoveInfo.cs
查看文件 @
32bf752
...
...
@@ -219,13 +219,14 @@ namespace OnlineStore.DeviceLibrary
/// 等待有料
/// </summary>
/// <returns></returns>
public
static
WaitResultInfo
WaitVisionComp
(
IO_VALUE
value
)
public
static
WaitResultInfo
WaitVisionComp
(
string
planName
,
IO_VALUE
value
)
{
WaitResultInfo
wait
=
new
WaitResultInfo
();
wait
.
CanWhileMoveCount
=
0
;
wait
.
WaitType
=
8
;
wait
.
IoValue
=
value
;
wait
.
IsEnd
=
false
;
wait
.
PlanName
=
planName
;
return
wait
;
}
...
...
@@ -340,7 +341,7 @@ namespace OnlineStore.DeviceLibrary
public
int
AxisOrgValue
=
0
;
public
string
PlanName
=
""
;
public
DateTime
LastHasOrgTime
=
DateTime
.
Now
;
...
...
source/HCSingleStore/Camera.json
查看文件 @
32bf752
{
"CodeOrder"
:
"HalconOnly"
,
"Halcon"
:{
"CodeType"
:
"All"
,
"Zoom1DCode"
:
1.5
,
"Zoom2DCode"
:
1.5
},
"EyemLib"
:{
"CodeType"
:
"All"
,
"BlockSize"
:
11
,
"RangeC"
:
5
,
"SymbolMin"
:
128
,
"SymbolMax"
:
215
},
"Region"
:[{
"CameraName"
:
"monitor"
,
"RegionName"
:
"LeftTop"
,
"X"
:
76
,
"Y"
:
172
,
"Width"
:
416
,
"Height"
:
479
,
"Ratio"
:
0.5
},{
"CameraName"
:
"monitor"
,
"RegionName"
:
"RightTop"
,
"X"
:
555
,
"Y"
:
170
,
"Width"
:
286
,
"Height"
:
202
,
"Ratio"
:
0.4
},{
"CameraName"
:
"monitor"
,
"RegionName"
:
"name1"
,
"X"
:
526
,
"Y"
:
424
,
"Width"
:
640
,
"Height"
:
375
,
"Ratio"
:
0.7
}],
"HIKIPCamera"
:[{
"Name"
:
"monitor"
,
"IP"
:
"192.168.1.64"
,
"Port"
:
"8000"
,
"User"
:
"admin"
,
"Pwd"
:
"qwert2asdfg"
},{
"Name"
:
"photoCamera"
,
"IP"
:
"192.168.1.121"
,
"Port"
:
"8000"
,
"User"
:
"admin"
,
"Pwd"
:
"admin123"
}]}
\ No newline at end of file
{
"CodeOrder"
:
"HalconOnly"
,
"Halcon"
:{
"CodeType"
:
"All"
,
"Zoom1DCode"
:
1.5
,
"Zoom2DCode"
:
1.5
},
"EyemLib"
:{
"CodeType"
:
"All"
,
"BlockSize"
:
11
,
"RangeC"
:
5
,
"SymbolMin"
:
128
,
"SymbolMax"
:
215
},
"Region"
:{
"monitor"
:{
"Aplan"
:[{
"RegionName"
:
"one"
,
"X"
:
133
,
"Y"
:
167
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
},{
"RegionName"
:
"two"
,
"X"
:
555
,
"Y"
:
170
,
"Width"
:
390
,
"Height"
:
450
,
"Ratio"
:
0.6
}],
"Bplan"
:[{
"RegionName"
:
"one"
,
"X"
:
927
,
"Y"
:
278
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
},{
"RegionName"
:
"two"
,
"X"
:
1353
,
"Y"
:
276
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
}],
"C计划"
:[{
"RegionName"
:
"name1"
,
"X"
:
122
,
"Y"
:
147
,
"Width"
:
100
,
"Height"
:
100
,
"Ratio"
:
0.4
}]},
"monitor2"
:{
"key1"
:[{
"RegionName"
:
"one"
,
"X"
:
967
,
"Y"
:
288
,
"Width"
:
396
,
"Height"
:
456
,
"Ratio"
:
0.5
}]}},
"HIKIPCamera"
:[{
"Name"
:
"monitor"
,
"IP"
:
"192.168.10.64"
,
"User"
:
"admin"
,
"Password"
:
"qwert2asdfg"
,
"Port"
:
8000
}]}
\ No newline at end of file
source/HCSingleStore/FrmBox.Designer.cs
查看文件 @
32bf752
此文件的差异被折叠,
点击展开。
source/HCSingleStore/FrmBox.cs
查看文件 @
32bf752
...
...
@@ -44,10 +44,11 @@ namespace OnlineStore.ACSingleStore
tabPage2
.
Text
=
" 设备["
+
boxBean
.
CID
+
"]状态 "
;
this
.
Opacity
=
1
;
DebugStatus
(
false
);
cmbPlanName
.
SelectedIndex
=
0
;
bool
isShow
=
(!
String
.
IsNullOrEmpty
(
boxBean
.
Config
.
Camera_Name
));
btnFcomp
.
Visible
=
isShow
;
btnForig
.
Visible
=
isShow
;
groupcom
.
Visible
=
isShow
;
btnImgSave
.
Visible
=
(!
String
.
IsNullOrEmpty
(
boxBean
.
Config
.
PhotoCamera_Name
));
LoadOk
=
true
;
}
...
...
@@ -1144,21 +1145,31 @@ namespace OnlineStore.ACSingleStore
private
void
btnForig_Click
(
object
sender
,
EventArgs
e
)
{
string
planName
=
StoreManager
.
PlanName_CloseDoor
;
if
(
cmbPlanName
.
SelectedIndex
.
Equals
(
1
))
{
planName
=
StoreManager
.
PlanName_OpenDoor
;
}
if
(
StoreManager
.
Store
.
vision
!=
null
)
{
string
date
=
boxBean
.
Name
+
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd-HH-mm-ss"
)
+
"-Original
"
;
string
date
=
boxBean
.
Name
+
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd-HH-mm-ss"
)
+
"-Original
-"
+
planName
;
StoreManager
.
Store
.
vision
.
SaveImage
(
boxBean
.
Config
.
Camera_Name
,
Application
.
StartupPath
+
@"\image\"
,
date
,
ImageFormat
.
Png
);
StoreManager
.
Store
.
vision
.
FeatureOriginal
(
boxBean
.
Config
.
Camera_Name
);
StoreManager
.
Store
.
vision
.
FeatureOriginal
(
boxBean
.
Config
.
Camera_Name
,
planName
);
}
}
private
void
btnFcomp_Click
(
object
sender
,
EventArgs
e
)
{
string
planName
=
StoreManager
.
PlanName_CloseDoor
;
if
(
cmbPlanName
.
SelectedIndex
.
Equals
(
1
))
{
planName
=
StoreManager
.
PlanName_OpenDoor
;
}
if
(
StoreManager
.
Store
.
vision
!=
null
)
{
string
date
=
boxBean
.
Name
+
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd-HH-mm-ss"
)
+
"-Comp
"
;
string
date
=
boxBean
.
Name
+
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd-HH-mm-ss"
)
+
"-Comp
-"
+
planName
;
StoreManager
.
Store
.
vision
.
SaveImage
(
boxBean
.
Config
.
Camera_Name
,
Application
.
StartupPath
+
@"\image\"
,
date
,
ImageFormat
.
Png
);
bool
result
=
boxBean
.
VisionComp
(
out
Dictionary
<
string
,
bool
>
exist
);
bool
result
=
boxBean
.
VisionComp
(
planName
,
out
Dictionary
<
string
,
bool
>
exist
);
string
str
=
result
?
"有料\r\n"
:
"无料\r\n"
;
if
(
exist
!=
null
)
{
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论