Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
刘韬
/
SO815-AutoInOutStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
图表
网络
创建新的问题
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 9ecc8e31
由
刘韬
编写于
2021-01-18 13:53:57 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
合并LN_07 Jan, 2021 1 次提交
1 个父辈
b35ac40c
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
391 行增加
和
278 行删除
source/ACSingleStore/FrmIOStatus.Designer.cs
source/ACSingleStore/FrmStoreBox.cs
source/ACSingleStore/positionTool/FrmPositionTool.Designer.cs
source/Common/util/HttpHelper.cs
source/Common/util/JsonHelper.cs
source/Common/util/LogUtil.cs
source/DeviceLibrary/DeviceLibrary.csproj
source/DeviceLibrary/DeviceLibrary/halcon/CodeManager.cs
source/DeviceLibrary/StoreConfig/AC/StoreConfig.csv
source/DeviceLibrary/StoreConfig/AC/linePositions.csv
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean.cs
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean_Partial.cs
source/DeviceLibrary/acSingleStore/AutomaticBaiting.cs
source/DeviceLibrary/acSingleStore/AutomaticBaiting_Partial.cs
source/DeviceLibrary/acSingleStore/StoreManager.cs
source/ACSingleStore/FrmIOStatus.Designer.cs
查看文件 @
9ecc8e3
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
private
System
.
ComponentModel
.
IContainer
components
=
null
;
private
System
.
ComponentModel
.
IContainer
components
=
null
;
#
region
Windows
窗体设计器生成的代码
#
region
Windows
窗体设计器生成的代码
/// <summary>
/// <summary>
/// 设计器支持所需的方法 - 不要
/// 设计器支持所需的方法 - 不要
/// 使用代码编辑器修改此方法的内容。
/// 使用代码编辑器修改此方法的内容。
...
@@ -65,7 +65,7 @@
...
@@ -65,7 +65,7 @@
//
//
// groupBox1
// groupBox1
//
//
this
.
groupBox1
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
this
.
groupBox1
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
this
.
groupBox1
.
Controls
.
Add
(
this
.
btnCloseDeviceLed
);
this
.
groupBox1
.
Controls
.
Add
(
this
.
btnCloseDeviceLed
);
this
.
groupBox1
.
Controls
.
Add
(
this
.
btnOpenDeviceLed
);
this
.
groupBox1
.
Controls
.
Add
(
this
.
btnOpenDeviceLed
);
...
@@ -102,7 +102,7 @@
...
@@ -102,7 +102,7 @@
this
.
groupBox1
.
Size
=
new
System
.
Drawing
.
Size
(
456
,
608
);
this
.
groupBox1
.
Size
=
new
System
.
Drawing
.
Size
(
456
,
608
);
this
.
groupBox1
.
TabIndex
=
105
;
this
.
groupBox1
.
TabIndex
=
105
;
this
.
groupBox1
.
TabStop
=
false
;
this
.
groupBox1
.
TabStop
=
false
;
this
.
groupBox1
.
Text
=
"
DO写入
"
;
this
.
groupBox1
.
Text
=
"
IO状态修改
"
;
//
//
// btnCloseDeviceLed
// btnCloseDeviceLed
//
//
...
@@ -155,7 +155,7 @@
...
@@ -155,7 +155,7 @@
this
.
btnDisDoorClose
.
Name
=
"btnDisDoorClose"
;
this
.
btnDisDoorClose
.
Name
=
"btnDisDoorClose"
;
this
.
btnDisDoorClose
.
Size
=
new
System
.
Drawing
.
Size
(
135
,
52
);
this
.
btnDisDoorClose
.
Size
=
new
System
.
Drawing
.
Size
(
135
,
52
);
this
.
btnDisDoorClose
.
TabIndex
=
268
;
this
.
btnDisDoorClose
.
TabIndex
=
268
;
this
.
btnDisDoorClose
.
Text
=
"激活
电气
维护门警报"
;
this
.
btnDisDoorClose
.
Text
=
"激活维护门警报"
;
this
.
btnDisDoorClose
.
UseVisualStyleBackColor
=
true
;
this
.
btnDisDoorClose
.
UseVisualStyleBackColor
=
true
;
this
.
btnDisDoorClose
.
Click
+=
new
System
.
EventHandler
(
this
.
btnDisDoorClose_Click
);
this
.
btnDisDoorClose
.
Click
+=
new
System
.
EventHandler
(
this
.
btnDisDoorClose_Click
);
//
//
...
@@ -166,7 +166,7 @@
...
@@ -166,7 +166,7 @@
this
.
btnDisDoorOpen
.
Name
=
"btnDisDoorOpen"
;
this
.
btnDisDoorOpen
.
Name
=
"btnDisDoorOpen"
;
this
.
btnDisDoorOpen
.
Size
=
new
System
.
Drawing
.
Size
(
135
,
52
);
this
.
btnDisDoorOpen
.
Size
=
new
System
.
Drawing
.
Size
(
135
,
52
);
this
.
btnDisDoorOpen
.
TabIndex
=
267
;
this
.
btnDisDoorOpen
.
TabIndex
=
267
;
this
.
btnDisDoorOpen
.
Text
=
"关闭
电气
维护门警报"
;
this
.
btnDisDoorOpen
.
Text
=
"关闭维护门警报"
;
this
.
btnDisDoorOpen
.
UseVisualStyleBackColor
=
true
;
this
.
btnDisDoorOpen
.
UseVisualStyleBackColor
=
true
;
this
.
btnDisDoorOpen
.
Click
+=
new
System
.
EventHandler
(
this
.
btnDisDoorOpen_Click
);
this
.
btnDisDoorOpen
.
Click
+=
new
System
.
EventHandler
(
this
.
btnDisDoorOpen_Click
);
//
//
...
@@ -188,7 +188,7 @@
...
@@ -188,7 +188,7 @@
this
.
button5
.
Name
=
"button5"
;
this
.
button5
.
Name
=
"button5"
;
this
.
button5
.
Size
=
new
System
.
Drawing
.
Size
(
135
,
52
);
this
.
button5
.
Size
=
new
System
.
Drawing
.
Size
(
135
,
52
);
this
.
button5
.
TabIndex
=
265
;
this
.
button5
.
TabIndex
=
265
;
this
.
button5
.
Text
=
"
打开
进气口"
;
this
.
button5
.
Text
=
"
开启
进气口"
;
this
.
button5
.
UseVisualStyleBackColor
=
true
;
this
.
button5
.
UseVisualStyleBackColor
=
true
;
this
.
button5
.
Click
+=
new
System
.
EventHandler
(
this
.
button5_Click
);
this
.
button5
.
Click
+=
new
System
.
EventHandler
(
this
.
button5_Click
);
//
//
...
@@ -277,7 +277,7 @@
...
@@ -277,7 +277,7 @@
this
.
label3
.
Name
=
"label3"
;
this
.
label3
.
Name
=
"label3"
;
this
.
label3
.
Size
=
new
System
.
Drawing
.
Size
(
104
,
32
);
this
.
label3
.
Size
=
new
System
.
Drawing
.
Size
(
104
,
32
);
this
.
label3
.
TabIndex
=
247
;
this
.
label3
.
TabIndex
=
247
;
this
.
label3
.
Text
=
"
选择
:"
;
this
.
label3
.
Text
=
"
端口
:"
;
this
.
label3
.
TextAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
this
.
label3
.
TextAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
//
//
// btnOpenLed
// btnOpenLed
...
@@ -384,7 +384,7 @@
...
@@ -384,7 +384,7 @@
this
.
label5
.
Name
=
"label5"
;
this
.
label5
.
Name
=
"label5"
;
this
.
label5
.
Size
=
new
System
.
Drawing
.
Size
(
103
,
30
);
this
.
label5
.
Size
=
new
System
.
Drawing
.
Size
(
103
,
30
);
this
.
label5
.
TabIndex
=
237
;
this
.
label5
.
TabIndex
=
237
;
this
.
label5
.
Text
=
"保持(ms):"
;
this
.
label5
.
Text
=
"保持
时间
(ms):"
;
this
.
label5
.
TextAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
this
.
label5
.
TextAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
//
//
// cmbWriteIO
// cmbWriteIO
...
@@ -437,7 +437,7 @@
...
@@ -437,7 +437,7 @@
//
//
// groupBox4
// groupBox4
//
//
this
.
groupBox4
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
this
.
groupBox4
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
this
.
groupBox4
.
Controls
.
Add
(
this
.
tableLayoutPanel2
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
tableLayoutPanel2
);
this
.
groupBox4
.
Location
=
new
System
.
Drawing
.
Point
(
376
,
3
);
this
.
groupBox4
.
Location
=
new
System
.
Drawing
.
Point
(
376
,
3
);
...
@@ -449,8 +449,8 @@
...
@@ -449,8 +449,8 @@
//
//
// tableLayoutPanel2
// tableLayoutPanel2
//
//
this
.
tableLayoutPanel2
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
this
.
tableLayoutPanel2
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
tableLayoutPanel2
.
AutoScroll
=
true
;
this
.
tableLayoutPanel2
.
AutoScroll
=
true
;
this
.
tableLayoutPanel2
.
ColumnCount
=
1
;
this
.
tableLayoutPanel2
.
ColumnCount
=
1
;
...
@@ -465,7 +465,7 @@
...
@@ -465,7 +465,7 @@
//
//
// groupBox3
// groupBox3
//
//
this
.
groupBox3
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
this
.
groupBox3
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
this
.
groupBox3
.
Controls
.
Add
(
this
.
tableLayoutPanel1
);
this
.
groupBox3
.
Controls
.
Add
(
this
.
tableLayoutPanel1
);
this
.
groupBox3
.
Location
=
new
System
.
Drawing
.
Point
(
12
,
3
);
this
.
groupBox3
.
Location
=
new
System
.
Drawing
.
Point
(
12
,
3
);
...
@@ -477,8 +477,8 @@
...
@@ -477,8 +477,8 @@
//
//
// tableLayoutPanel1
// tableLayoutPanel1
//
//
this
.
tableLayoutPanel1
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
this
.
tableLayoutPanel1
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
tableLayoutPanel1
.
AutoScroll
=
true
;
this
.
tableLayoutPanel1
.
AutoScroll
=
true
;
this
.
tableLayoutPanel1
.
ColumnCount
=
1
;
this
.
tableLayoutPanel1
.
ColumnCount
=
1
;
...
@@ -555,4 +555,3 @@
...
@@ -555,4 +555,3 @@
private
System
.
Windows
.
Forms
.
Button
btnOpenDeviceLed
;
private
System
.
Windows
.
Forms
.
Button
btnOpenDeviceLed
;
}
}
}
}
source/ACSingleStore/FrmStoreBox.cs
查看文件 @
9ecc8e3
...
@@ -1574,6 +1574,8 @@ namespace OnlineStore.AutoInOutStore
...
@@ -1574,6 +1574,8 @@ namespace OnlineStore.AutoInOutStore
LogUtil
.
info
(
LOGGER
,
store
.
StoreName
+
"开启自动出入库模式,开始位置【"
+
poText
+
"】(索引="
+
currIndex
+
"),间隔="
+
jiange
+
""
);
LogUtil
.
info
(
LOGGER
,
store
.
StoreName
+
"开启自动出入库模式,开始位置【"
+
poText
+
"】(索引="
+
currIndex
+
"),间隔="
+
jiange
+
""
);
btnStart
.
Text
=
StopAuto
;
btnStart
.
Text
=
StopAuto
;
DebugStatus
(
false
);
DebugStatus
(
false
);
string
msg
=
AutomaticBaiting
.
doStartBatchIn
();
LogUtil
.
info
(
"自动出入库: 开始自动入库:库位号【"
+
poText
+
"】,开始入库,结果:"
+
msg
);
}
}
}
}
}
}
...
...
source/ACSingleStore/positionTool/FrmPositionTool.Designer.cs
查看文件 @
9ecc8e3
...
@@ -33,7 +33,6 @@
...
@@ -33,7 +33,6 @@
this
.
groupBox6
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
groupBox6
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
picAxis2
=
new
System
.
Windows
.
Forms
.
PictureBox
();
this
.
picAxis2
=
new
System
.
Windows
.
Forms
.
PictureBox
();
this
.
groupBox2
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
groupBox2
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
ioSingle
=
new
UserFromControl
.
IOTextControl
();
this
.
txtP4Offset
=
new
System
.
Windows
.
Forms
.
TextBox
();
this
.
txtP4Offset
=
new
System
.
Windows
.
Forms
.
TextBox
();
this
.
label10
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
label10
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
txtP3Offset
=
new
System
.
Windows
.
Forms
.
TextBox
();
this
.
txtP3Offset
=
new
System
.
Windows
.
Forms
.
TextBox
();
...
@@ -72,6 +71,7 @@
...
@@ -72,6 +71,7 @@
this
.
btnClear
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnClear
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
richTextBox1
=
new
System
.
Windows
.
Forms
.
RichTextBox
();
this
.
richTextBox1
=
new
System
.
Windows
.
Forms
.
RichTextBox
();
this
.
timer1
=
new
System
.
Windows
.
Forms
.
Timer
(
this
.
components
);
this
.
timer1
=
new
System
.
Windows
.
Forms
.
Timer
(
this
.
components
);
this
.
ioSingle
=
new
UserFromControl
.
IOTextControl
();
this
.
groupBox6
.
SuspendLayout
();
this
.
groupBox6
.
SuspendLayout
();
((
System
.
ComponentModel
.
ISupportInitialize
)(
this
.
picAxis2
)).
BeginInit
();
((
System
.
ComponentModel
.
ISupportInitialize
)(
this
.
picAxis2
)).
BeginInit
();
this
.
groupBox2
.
SuspendLayout
();
this
.
groupBox2
.
SuspendLayout
();
...
@@ -101,7 +101,7 @@
...
@@ -101,7 +101,7 @@
this
.
picAxis2
.
Image
=
((
System
.
Drawing
.
Image
)(
resources
.
GetObject
(
"picAxis2.Image"
)));
this
.
picAxis2
.
Image
=
((
System
.
Drawing
.
Image
)(
resources
.
GetObject
(
"picAxis2.Image"
)));
this
.
picAxis2
.
Location
=
new
System
.
Drawing
.
Point
(
453
,
13
);
this
.
picAxis2
.
Location
=
new
System
.
Drawing
.
Point
(
453
,
13
);
this
.
picAxis2
.
Name
=
"picAxis2"
;
this
.
picAxis2
.
Name
=
"picAxis2"
;
this
.
picAxis2
.
Size
=
new
System
.
Drawing
.
Size
(
551
,
5
4
2
);
this
.
picAxis2
.
Size
=
new
System
.
Drawing
.
Size
(
551
,
5
0
2
);
this
.
picAxis2
.
SizeMode
=
System
.
Windows
.
Forms
.
PictureBoxSizeMode
.
Zoom
;
this
.
picAxis2
.
SizeMode
=
System
.
Windows
.
Forms
.
PictureBoxSizeMode
.
Zoom
;
this
.
picAxis2
.
TabIndex
=
285
;
this
.
picAxis2
.
TabIndex
=
285
;
this
.
picAxis2
.
TabStop
=
false
;
this
.
picAxis2
.
TabStop
=
false
;
...
@@ -140,17 +140,6 @@
...
@@ -140,17 +140,6 @@
this
.
groupBox2
.
TabStop
=
false
;
this
.
groupBox2
.
TabStop
=
false
;
this
.
groupBox2
.
Text
=
"位置信息"
;
this
.
groupBox2
.
Text
=
"位置信息"
;
//
//
// ioSingle
//
this
.
ioSingle
.
BackColor
=
System
.
Drawing
.
Color
.
White
;
this
.
ioSingle
.
IOName
=
"检测信号"
;
this
.
ioSingle
.
IOValue
=
0
;
this
.
ioSingle
.
isCanClick
=
false
;
this
.
ioSingle
.
Location
=
new
System
.
Drawing
.
Point
(
46
,
425
);
this
.
ioSingle
.
Name
=
"ioSingle"
;
this
.
ioSingle
.
Size
=
new
System
.
Drawing
.
Size
(
202
,
28
);
this
.
ioSingle
.
TabIndex
=
289
;
//
// txtP4Offset
// txtP4Offset
//
//
this
.
txtP4Offset
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
10.5F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
txtP4Offset
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
10.5F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
...
@@ -540,9 +529,9 @@
...
@@ -540,9 +529,9 @@
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
richTextBox1
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
richTextBox1
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
richTextBox1
.
Location
=
new
System
.
Drawing
.
Point
(
454
,
5
76
);
this
.
richTextBox1
.
Location
=
new
System
.
Drawing
.
Point
(
454
,
5
21
);
this
.
richTextBox1
.
Name
=
"richTextBox1"
;
this
.
richTextBox1
.
Name
=
"richTextBox1"
;
this
.
richTextBox1
.
Size
=
new
System
.
Drawing
.
Size
(
549
,
88
);
this
.
richTextBox1
.
Size
=
new
System
.
Drawing
.
Size
(
549
,
143
);
this
.
richTextBox1
.
TabIndex
=
105
;
this
.
richTextBox1
.
TabIndex
=
105
;
this
.
richTextBox1
.
Text
=
""
;
this
.
richTextBox1
.
Text
=
""
;
//
//
...
@@ -551,6 +540,17 @@
...
@@ -551,6 +540,17 @@
this
.
timer1
.
Interval
=
1000
;
this
.
timer1
.
Interval
=
1000
;
this
.
timer1
.
Tick
+=
new
System
.
EventHandler
(
this
.
timer1_Tick
);
this
.
timer1
.
Tick
+=
new
System
.
EventHandler
(
this
.
timer1_Tick
);
//
//
// ioSingle
//
this
.
ioSingle
.
BackColor
=
System
.
Drawing
.
Color
.
White
;
this
.
ioSingle
.
IOName
=
"检测信号"
;
this
.
ioSingle
.
IOValue
=
0
;
this
.
ioSingle
.
isCanClick
=
false
;
this
.
ioSingle
.
Location
=
new
System
.
Drawing
.
Point
(
46
,
425
);
this
.
ioSingle
.
Name
=
"ioSingle"
;
this
.
ioSingle
.
Size
=
new
System
.
Drawing
.
Size
(
202
,
28
);
this
.
ioSingle
.
TabIndex
=
289
;
//
// FrmPositionTool
// FrmPositionTool
//
//
this
.
AutoScaleDimensions
=
new
System
.
Drawing
.
SizeF
(
96F
,
96F
);
this
.
AutoScaleDimensions
=
new
System
.
Drawing
.
SizeF
(
96F
,
96F
);
...
...
source/Common/util/HttpHelper.cs
查看文件 @
9ecc8e3
...
@@ -12,76 +12,53 @@ using System.Security.Cryptography;
...
@@ -12,76 +12,53 @@ using System.Security.Cryptography;
using
System.Security.Cryptography.X509Certificates
;
using
System.Security.Cryptography.X509Certificates
;
using
System.Reflection
;
using
System.Reflection
;
using
log4net
;
using
log4net
;
using
System.Threading
;
namespace
OnlineStore.Common
namespace
OnlineStore.Common
{
{
public
class
HttpHelper
public
class
HttpHelper
{
{
public
static
readonly
ILog
LOGGER
=
LogManager
.
GetLogger
(
MethodBase
.
GetCurrentMethod
().
DeclaringType
);
public
static
int
isLog
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
Server_Log_Open
);
public
static
string
Post
(
string
url
,
string
paramData
)
private
static
object
lockObj
=
""
;
public
static
Operation
PostOP
(
string
url
,
Operation
operation
,
int
lockTime
=
0
)
{
{
return
Post
(
url
,
paramData
,
Encoding
.
UTF8
);
if
(
Monitor
.
TryEnter
(
lockObj
,
lockTime
))
}
/// <summary>
///
/// </summary>
/// <param name="url"></param>
/// <param name="operation"></param>
/// <param name="simulate">是否模拟服务器返回结果</param>
/// <returns></returns>
public
static
Operation
Post
(
string
url
,
Operation
operation
,
bool
simulate
)
{
try
{
{
if
(
simulate
)
try
{
//模拟服务器返回
operation
.
status
=
200
;
operation
.
data
.
Clear
();
operation
.
data
.
Add
(
"posId"
,
"A001"
);
string
pos
=
"D100-111#D102-222#D104-333"
;
operation
.
data
.
Add
(
"pos"
,
pos
);
if
(
operation
.
op
==
1
||
operation
.
op
==
2
)
{
//入库或出库
string
json
=
JsonHelper
.
SerializeObject
(
operation
);
LogUtil
.
error
(
LOGGER
,
"模拟HTTP服务器返回出库入库信息:"
+
json
);
return
operation
;
}
}
else
{
{
string
json
=
""
;
string
json
=
JsonHelper
.
SerializeObject
(
operation
);
try
string
result
=
PostJson
(
url
,
json
,
Encoding
.
UTF8
);
{
if
(
operation
.
op
>
0
)
json
=
JsonHelper
.
SerializeObject
(
operation
);
}
catch
(
Exception
ex
)
{
{
L
OGGER
.
Error
(
"JsonHelper.SerializeObject(operation) 出错【operation.op="
+
operation
.
op
+
"】"
+
ex
);
L
ogUtil
.
info
(
"send 【"
+
url
+
"】【"
+
json
+
"】 "
+
",receive 【 "
+
result
+
"】"
);
}
}
string
result
=
Post
(
url
,
json
);
if
(!
string
.
IsNullOrEmpty
(
result
))
if
(!
string
.
IsNullOrEmpty
(
result
))
{
{
try
Operation
resultOP
=
JsonHelper
.
DeserializeJsonToObject
<
Operation
>(
result
);
if
(
resultOP
!=
null
&&
(!
operation
.
seq
.
Equals
(
resultOP
.
seq
)))
{
{
return
JsonHelper
.
DeserializeJsonToObject
<
Operation
>(
result
);
LogUtil
.
error
(
" seq error : send 【"
+
json
+
"】 "
+
",receive 【 "
+
result
+
"】"
);
}
catch
(
Exception
ex
)
{
LOGGER
.
Error
(
"JsonHelper.DeserializeJsonToObject 出错【result="
+
result
+
"】"
+
ex
);
}
}
return
resultOP
;
}
}
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
"PostOP error【operation.op="
+
operation
.
op
+
"】:"
+
ex
);
}
finally
{
Monitor
.
Exit
(
lockObj
);
}
}
}
catch
(
Exception
ex
)
else
if
(
lockTime
>
10
)
{
{
LOGGER
.
Error
(
"Post 出错【operation.op="
+
operation
.
op
+
"】:"
+
ex
);
string
json
=
JsonHelper
.
SerializeObject
(
operation
);
LogUtil
.
error
(
" PostOP "
+
lockTime
+
" send "
+
json
+
" TryEnter fail "
);
}
}
return
null
;
return
null
;
}
}
public
static
int
isLog
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
Server_Log_Open
);
public
static
string
PostJson
(
string
url
,
string
paramData
=
""
,
Encoding
encoding
=
null
)
public
static
string
Post
(
string
url
,
string
paramData
=
""
,
Encoding
encoding
=
null
)
{
{
if
(
encoding
==
null
)
if
(
encoding
==
null
)
{
{
...
@@ -89,12 +66,9 @@ namespace OnlineStore.Common
...
@@ -89,12 +66,9 @@ namespace OnlineStore.Common
}
}
if
(
isLog
==
1
)
if
(
isLog
==
1
)
{
{
LOGGER
.
Info
(
"给服务器发送数据【"
+
paramData
+
"】 "
);
LogUtil
.
info
(
"PostJson Send【"
+
paramData
+
"】 "
);
}
if
(
paramData
!=
"null"
&&
paramData
!=
null
)
{
// LogUtil.debug(LOGGER, "HTTP POST to " + url + " \n\t >> " + paramData);
}
}
string
result
=
""
;
string
result
=
""
;
if
(
url
.
ToLower
().
IndexOf
(
"https"
,
System
.
StringComparison
.
Ordinal
)
>
-
1
)
if
(
url
.
ToLower
().
IndexOf
(
"https"
,
System
.
StringComparison
.
Ordinal
)
>
-
1
)
...
@@ -112,19 +86,15 @@ namespace OnlineStore.Common
...
@@ -112,19 +86,15 @@ namespace OnlineStore.Common
//paramData = Uri.EscapeDataString(paramData);
//paramData = Uri.EscapeDataString(paramData);
result
=
wc
.
UploadString
(
url
,
"POST"
,
paramData
);
result
=
wc
.
UploadString
(
url
,
"POST"
,
paramData
);
//LogUtil.info(result);
}
}
catch
(
Exception
e
)
catch
(
Exception
e
)
{
{
LogUtil
.
error
(
"POST【"
+
paramData
+
"】 ERROR:"
+
e
.
StackTrace
,
1
);
LogUtil
.
error
(
"PostJson【"
+
paramData
+
"】 ERROR:"
+
e
.
StackTrace
,
1
);
}
if
(!
result
.
Contains
(
"null"
)
&&
result
.
Length
!=
0
)
{
//LogUtil.debug(LOGGER,"receive << " + result);
}
}
if
(
isLog
==
1
)
if
(
isLog
==
1
)
{
{
L
OGGER
.
Info
(
"收到服务器数据
【"
+
result
+
"】"
);
L
ogUtil
.
info
(
"PostJson Revice
【"
+
result
+
"】"
);
}
}
return
result
;
return
result
;
}
}
...
@@ -138,21 +108,81 @@ namespace OnlineStore.Common
...
@@ -138,21 +108,81 @@ namespace OnlineStore.Common
{
{
try
try
{
{
LogUtil
.
debug
(
LOGGER
,
"HTTP GET FROM: "
+
url
);
LogUtil
.
debug
(
"HTTP GET FROM: "
+
url
);
var
wc
=
new
WebClient
{
Encoding
=
encoding
};
var
wc
=
new
WebClient
{
Encoding
=
encoding
};
var
readStream
=
wc
.
OpenRead
(
url
);
var
readStream
=
wc
.
OpenRead
(
url
);
using
(
var
sr
=
new
StreamReader
(
readStream
,
encoding
))
using
(
var
sr
=
new
StreamReader
(
readStream
,
encoding
))
{
{
var
result
=
sr
.
ReadToEnd
();
var
result
=
sr
.
ReadToEnd
();
LogUtil
.
debug
(
LOGGER
,
"receive << "
+
result
);
LogUtil
.
debug
(
"receive << "
+
result
);
return
result
;
return
result
;
}
}
}
}
catch
(
Exception
e
)
catch
(
Exception
e
)
{
{
LogUtil
.
error
(
"HTTP GET ERROR:"
+
e
.
Message
,
2
);
LogUtil
.
error
(
"HTTP GET ERROR:"
+
e
.
Message
,
2
);
}
}
return
""
;
return
""
;
}
}
public
static
string
Post
(
string
url
,
string
paramData
=
""
,
int
timeOut
=
5000
)
{
bool
IsTimeOut
=
false
;
return
Post
(
url
,
paramData
,
Encoding
.
UTF8
,
timeOut
,
out
IsTimeOut
);
}
public
static
string
Post
(
string
url
,
string
paramData
,
Encoding
encoding
,
int
timeOut
,
out
bool
IsTimeOut
)
{
if
(
paramData
.
Equals
(
""
))
{
int
index
=
url
.
IndexOf
(
"?"
);
if
(
index
>
0
)
{
paramData
=
url
.
Substring
(
index
+
1
,
url
.
Length
-
index
-
1
);
url
=
url
.
Substring
(
0
,
index
);
}
}
IsTimeOut
=
false
;
if
(
isLog
==
1
)
{
LogUtil
.
info
(
"Send【"
+
url
+
"】【"
+
paramData
+
"】 "
);
}
string
result
=
""
;
if
(
url
.
ToLower
().
IndexOf
(
"https"
,
System
.
StringComparison
.
Ordinal
)
>
-
1
)
{
ServicePointManager
.
ServerCertificateValidationCallback
=
new
RemoteCertificateValidationCallback
((
sender
,
certificate
,
chain
,
errors
)
=>
{
return
true
;
});
}
try
{
var
wc
=
new
MyWebClient
(
timeOut
);
if
(
string
.
IsNullOrEmpty
(
wc
.
Headers
[
"Content-Type"
]))
wc
.
Headers
.
Add
(
"Content-Type"
,
"application/x-www-form-urlencoded;charset=UTF-8"
);
wc
.
Encoding
=
encoding
;
result
=
wc
.
UploadString
(
url
,
"POST"
,
paramData
);
//LogUtil.info(result);
}
catch
(
WebException
ex
)
{
IsTimeOut
=
true
;
LogUtil
.
error
(
"POST ["
+
url
+
"] WebException :"
+
ex
.
ToString
());
}
catch
(
Exception
e
)
{
LogUtil
.
error
(
"POST ["
+
url
+
"] ERROR:"
+
e
.
ToString
());
}
if
(
isLog
==
1
)
{
LogUtil
.
info
(
"Revice【"
+
result
+
"】"
);
}
return
result
;
}
}
}
}
}
\ No newline at end of file
\ No newline at end of file
source/Common/util/JsonHelper.cs
查看文件 @
9ecc8e3
using
System.Collections.Generic
;
using
System
;
using
System.Collections.Generic
;
using
System.IO
;
using
System.IO
;
using
Newtonsoft.Json
;
using
Newtonsoft.Json
;
namespace
OnlineStore.Common
namespace
OnlineStore.Common
{
{
/// <summary>
/// Json帮助类
/// </summary>
public
class
JsonHelper
{
/// <summary>
/// <summary>
///
Json帮助类
///
将对象序列化为JSON格式
/// </summary>
/// </summary>
public
class
JsonHelper
/// <param name="o">对象</param>
/// <returns>json字符串</returns>
public
static
string
SerializeObject
(
object
o
)
{
{
/// <summary>
try
/// 将对象序列化为JSON格式
/// </summary>
/// <param name="o">对象</param>
/// <returns>json字符串</returns>
public
static
string
SerializeObject
(
object
o
)
{
{
string
json
=
JsonConvert
.
SerializeObject
(
o
);
string
json
=
JsonConvert
.
SerializeObject
(
o
);
return
json
;
return
json
;
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
"JsonHelper.SerializeObject error【"
+
o
.
ToString
()
+
"】"
+
ex
);
}
return
""
;
}
/// <summary>
/// <summary>
/// 解析JSON字符串生成对象实体
/// 解析JSON字符串生成对象实体
/// </summary>
/// </summary>
/// <typeparam name="T">对象类型</typeparam>
/// <typeparam name="T">对象类型</typeparam>
/// <param name="json">json字符串(eg.{"ID":"112","Name":"石子儿"})</param>
/// <param name="json">json字符串(eg.{"ID":"112","Name":"石子儿"})</param>
/// <returns>对象实体</returns>
/// <returns>对象实体</returns>
public
static
T
DeserializeJsonToObject
<
T
>(
string
json
)
where
T
:
class
public
static
T
DeserializeJsonToObject
<
T
>(
string
json
)
where
T
:
class
{
try
{
{
JsonSerializer
serializer
=
new
JsonSerializer
();
JsonSerializer
serializer
=
new
JsonSerializer
();
StringReader
sr
=
new
StringReader
(
json
);
StringReader
sr
=
new
StringReader
(
json
);
...
@@ -34,65 +45,71 @@ namespace OnlineStore.Common
...
@@ -34,65 +45,71 @@ namespace OnlineStore.Common
T
t
=
o
as
T
;
T
t
=
o
as
T
;
return
t
;
return
t
;
}
}
catch
(
Exception
ex
)
/// <summary>
/// 解析JSON数组生成对象实体集合
/// </summary>
/// <typeparam name="T">对象类型</typeparam>
/// <param name="json">json数组字符串(eg.[{"ID":"112","Name":"石子儿"}])</param>
/// <returns>对象实体集合</returns>
public
static
List
<
T
>
DeserializeJsonToList
<
T
>(
string
json
)
where
T
:
class
{
{
JsonSerializer
serializer
=
new
JsonSerializer
();
LogUtil
.
error
(
" JsonHelper.DeserializeJsonToObject error【"
+
json
+
"】"
+
ex
);
StringReader
sr
=
new
StringReader
(
json
);
object
o
=
serializer
.
Deserialize
(
new
JsonTextReader
(
sr
),
typeof
(
List
<
T
>));
List
<
T
>
list
=
o
as
List
<
T
>;
return
list
;
}
}
return
null
;
}
/// <summary>
/// <summary>
/// 反序列化JSON到给定的匿名对象.
/// 解析JSON数组生成对象实体集合
/// </summary>
/// </summary>
/// <typeparam name="T">匿名对象类型</typeparam>
/// <typeparam name="T">对象类型</typeparam>
/// <param name="json">json字符串</param>
/// <param name="json">json数组字符串(eg.[{"ID":"112","Name":"石子儿"}])</param>
/// <param name="anonymousTypeObject">匿名对象</param>
/// <returns>对象实体集合</returns>
/// <returns>匿名对象</returns>
public
static
List
<
T
>
DeserializeJsonToList
<
T
>(
string
json
)
where
T
:
class
public
static
T
DeserializeAnonymousType
<
T
>(
string
json
,
T
anonymousTypeObject
)
{
{
JsonSerializer
serializer
=
new
JsonSerializer
();
T
t
=
JsonConvert
.
DeserializeAnonymousType
(
json
,
anonymousTypeObject
);
StringReader
sr
=
new
StringReader
(
json
);
return
t
;
object
o
=
serializer
.
Deserialize
(
new
JsonTextReader
(
sr
),
typeof
(
List
<
T
>));
}
List
<
T
>
list
=
o
as
List
<
T
>;
return
list
;
}
}
///// <summary>
///// 与服务器通信用对象
///// </summary>
//public class Operation
//{
// private string _cid = "";
// public string cid
// {
// get { return _cid; }
// set { _cid = value; }
// }
// public int seq { get; set; }
/// <summary>
// public int op { get; set; }
/// 反序列化JSON到给定的匿名对象.
// public int status { get; set; }
/// </summary>
/// <typeparam name="T">匿名对象类型</typeparam>
/// <param name="json">json字符串</param>
/// <param name="anonymousTypeObject">匿名对象</param>
/// <returns>匿名对象</returns>
public
static
T
DeserializeAnonymousType
<
T
>(
string
json
,
T
anonymousTypeObject
)
{
T
t
=
JsonConvert
.
DeserializeAnonymousType
(
json
,
anonymousTypeObject
);
return
t
;
}
}
///// <summary>
///// 与服务器通信用对象
///// </summary>
//public class Operation
//{
// private string _cid = "";
// public string cid
// {
// get { return _cid; }
// set { _cid = value; }
// }
// public int seq { get; set; }
// public int op { get; set; }
// public int status { get; set; }
// private string _error = "";
// public string error
// {
// get { return _error; }
// set { _error = value; }
// }
// private Dictionary<string, string> _data = new Dictionary<string,string>();
// public Dictionary<string, string> data {
// get { return _data; }
// set { _data = value; }
// }
// private string _error = "";
// public string error
// {
// get { return _error; }
// set { _error = value; }
// }
// private Dictionary<string, string> _data = new Dictionary<string,string>();
//}
// public Dictionary<string, string> data {
// get { return _data; }
// set { _data = value; }
// }
}
//}
}
\ No newline at end of file
\ No newline at end of file
source/Common/util/LogUtil.cs
查看文件 @
9ecc8e3
...
@@ -135,6 +135,7 @@ namespace OnlineStore.Common
...
@@ -135,6 +135,7 @@ namespace OnlineStore.Common
//logBox.SelectionColor = color;
//logBox.SelectionColor = color;
System
.
DateTime
now
=
System
.
DateTime
.
Now
;
System
.
DateTime
now
=
System
.
DateTime
.
Now
;
logBox
.
AppendText
(
now
.
ToLongTimeString
()
+
" "
+
msg
+
Environment
.
NewLine
);
logBox
.
AppendText
(
now
.
ToLongTimeString
()
+
" "
+
msg
+
Environment
.
NewLine
);
logBox
.
ScrollToCaret
();
count
++;
count
++;
}
}
...
...
source/DeviceLibrary/DeviceLibrary.csproj
查看文件 @
9ecc8e3
...
@@ -56,6 +56,7 @@
...
@@ -56,6 +56,7 @@
<Reference Include="System" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
<Reference Include="System.Drawing" />
<Reference Include="System.Web" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data.DataSetExtensions" />
...
...
source/DeviceLibrary/DeviceLibrary/halcon/CodeManager.cs
查看文件 @
9ecc8e3
...
@@ -173,7 +173,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -173,7 +173,7 @@ namespace OnlineStore.DeviceLibrary
}
}
else
else
{
{
cc
=
HDCodeHelper
.
DecodeCode
(
ho_Image
,
code
Count
,
GetCodeParamFilePath
(
codeType
),
codeType
);
cc
=
HDCodeHelper
.
DecodeCode
(
ho_Image
,
code
Type
,
GetCodeParamFilePath
(
codeType
),
codeCount
,
2000
);
}
}
foreach
(
CodeInfo
c
in
cc
)
foreach
(
CodeInfo
c
in
cc
)
{
{
...
@@ -189,7 +189,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -189,7 +189,7 @@ namespace OnlineStore.DeviceLibrary
{
{
// SaveImageToFile(deviceName, cameraName, bit);
// SaveImageToFile(deviceName, cameraName, bit);
}
}
LogUtil
.
info
(
" 【"
+
cameraName
+
"】
扫码完成【"
+
FormUtil
.
GetSpanStr
(
DateTime
.
Now
-
startTime
)
+
"】 :"
+
r
);
LogUtil
.
info
(
" 【"
+
cameraName
+
"】"
+
"
扫码完成【"
+
FormUtil
.
GetSpanStr
(
DateTime
.
Now
-
startTime
)
+
"】 :"
+
r
);
}
}
catch
(
AccessViolationException
e
)
catch
(
AccessViolationException
e
)
{
{
...
@@ -294,18 +294,5 @@ namespace OnlineStore.DeviceLibrary
...
@@ -294,18 +294,5 @@ namespace OnlineStore.DeviceLibrary
{
{
return
Regex
.
IsMatch
(
str
,
@"[\u4e00-\u9fa5]"
);
return
Regex
.
IsMatch
(
str
,
@"[\u4e00-\u9fa5]"
);
}
}
public
static
string
ProcessCode
(
List
<
string
>
codeList
)
{
string
code
=
""
;
foreach
(
string
cc
in
codeList
)
{
if
(
string
.
IsNullOrEmpty
(
cc
))
{
continue
;
}
code
+=
cc
+
"##"
;
}
return
ReplaceCode
(
code
);
}
}
}
}
}
source/DeviceLibrary/StoreConfig/AC/StoreConfig.csv
查看文件 @
9ecc8e3
...
@@ -50,15 +50,15 @@ AXIS,(轴四)压紧轴,Comp_Axis,3,HC,0,,,,,
...
@@ -50,15 +50,15 @@ AXIS,(轴四)压紧轴,Comp_Axis,3,HC,0,,,,,
AXIS,(轴五)批量上下料轴,Batch_Axis,4,HC,0,,,,,
AXIS,(轴五)批量上下料轴,Batch_Axis,4,HC,0,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,升降轴 仓门位置P7(人工拿走盘的位置),UpDownAxis_Door_P7,34
3100
,,,,,,,
PRO,升降轴 仓门位置P7(人工拿走盘的位置),UpDownAxis_Door_P7,34
73
,,,,,,,
PRO,升降轴 出库高点P2,UpDownAxis_OutHigh_P2,2
31250
,,,,,,,
PRO,升降轴 出库高点P2,UpDownAxis_OutHigh_P2,2
276
,,,,,,,
PRO,升降轴 出库低点P8,UpDownAxis_OutLow_P8,21
4900
,,,,,,,
PRO,升降轴 出库低点P8,UpDownAxis_OutLow_P8,21
13
,,,,,,,
PRO,升降轴从吸盘下方接料后下降的高度,UpDownAxis_DownValue,100
00
,,,,,,,
PRO,升降轴从吸盘下方接料后下降的高度,UpDownAxis_DownValue,100,,,,,,,
PRO,升降轴 入库P1点集合,UpDownAxis_P1_List,8#39
3356;12#387000;16#387700;20#385000;24#381620;28#381620;32#381620;36#375200;40#375200;48#375200;52#375200;75#375200
;,,,,,,,
PRO,升降轴 入库P1点集合,UpDownAxis_P1_List,8#39
26;12#3884;16#3840;20#3800;24#3759
;,,,,,,,
PRO,旋转轴(轴一)P1 待机原位点,MiddleAxis_P1_Position,
24570
0,,,,,,,
PRO,旋转轴(轴一)P1 待机原位点,MiddleAxis_P1_Position,
306
0,,,,,,,
PRO,进出轴(轴三)P1待机原位点,InOutAxis_P1_Position,100
0
,,,,,,,
PRO,进出轴(轴三)P1待机原位点,InOutAxis_P1_Position,100,,,,,,,
PRO,压紧轴(轴四)P1待机原位点,CompressAxis_P1_Position,
249
00,,,,,,,
PRO,压紧轴(轴四)P1待机原位点,CompressAxis_P1_Position,
70
00,,,,,,,
PRO,压紧轴(轴四)P2压紧点集合,CompressAxis_P2_List,8#4
17100;12#380400;16#370000;20#330000;24#319450;28#300000;32#200000;36#200000;40#200000;44#200000;48#196500;52#24900;75#24900;81#314421
;,,,,,,,
PRO,压紧轴(轴四)P2压紧点集合,CompressAxis_P2_List,8#4
2835;12#38557;16#34550;20#30540;24#26030
;,,,,,,,
PRO,是否使用定位气缸,IsHasLocationCylinder,0,,,,,,,
PRO,是否使用定位气缸,IsHasLocationCylinder,0,,,,,,,
PRO,是否有左右侧门,IsHasDoorLimit,1,,,,,,,
PRO,是否有左右侧门,IsHasDoorLimit,1,,,,,,,
PRO,是否使用压紧轴(1=使用),IsHasCompress_Axis,1,,,,,,,
PRO,是否使用压紧轴(1=使用),IsHasCompress_Axis,1,,,,,,,
...
@@ -68,25 +68,24 @@ PRO,气压检测IO关闭需要持续的时间,AirCheckSeconds,180,,,,,,,
...
@@ -68,25 +68,24 @@ PRO,气压检测IO关闭需要持续的时间,AirCheckSeconds,180,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,预警温度,WarnTemperate,80,,,,,,,
PRO,预警温度,WarnTemperate,80,,,,,,,
PRO,预警湿度,WarnHumidity,80,,,,,,,
PRO,预警湿度,WarnHumidity,80,,,,,,,
PRO,(轴一)旋转轴目标速度,MiddleAxis_TargetSpeed,
5
00,,,,,,,
PRO,(轴一)旋转轴目标速度,MiddleAxis_TargetSpeed,
1
00,,,,,,,
PRO,(轴一)旋转轴加速度,MiddleAxis_AddSpeed,
10
00,,,,,,,
PRO,(轴一)旋转轴加速度,MiddleAxis_AddSpeed,
4
00,,,,,,,
PRO,(轴一)旋转轴减速度,MiddleAxis_DelSpeed,
10
00,,,,,,,
PRO,(轴一)旋转轴减速度,MiddleAxis_DelSpeed,
4
00,,,,,,,
PRO,(轴一)旋转轴原点低速度,MiddleAxis_HomeLowSpeed,
3
0,,,,,,,
PRO,(轴一)旋转轴原点低速度,MiddleAxis_HomeLowSpeed,
9
0,,,,,,,
PRO,(轴一)旋转轴原点高速,MiddleAxis_HomeHighSpeed,
25
0,,,,,,,
PRO,(轴一)旋转轴原点高速,MiddleAxis_HomeHighSpeed,
10
0,,,,,,,
PRO,(轴一)旋转轴原点加速度,MiddleAxis_HomeAddSpeed,
30
00,,,,,,,
PRO,(轴一)旋转轴原点加速度,MiddleAxis_HomeAddSpeed,
5
00,,,,,,,
PRO,(轴二)升降轴轴目标速度,UpdownAxis_TargetSpeed,
2
00,,,,,,,
PRO,(轴二)升降轴轴目标速度,UpdownAxis_TargetSpeed,
4
00,,,,,,,
PRO,(轴二)升降轴轴加速度,UpdownAxis_AddSpeed,
8
00,,,,,,,
PRO,(轴二)升降轴轴加速度,UpdownAxis_AddSpeed,
12
00,,,,,,,
PRO,(轴二)升降轴轴减速度,UpdownAxis_DelSpeed,
8
00,,,,,,,
PRO,(轴二)升降轴轴减速度,UpdownAxis_DelSpeed,
12
00,,,,,,,
PRO,(轴二)升降轴轴原点低速度,UpdownAxis_HomeLowSpeed,20,,,,,,,
PRO,(轴二)升降轴轴原点低速度,UpdownAxis_HomeLowSpeed,20,,,,,,,
PRO,(轴二)升降轴轴原点高速,UpdownAxis_HomeHighSpeed,250,,,,,,,
PRO,(轴二)升降轴轴原点高速,UpdownAxis_HomeHighSpeed,250,,,,,,,
PRO,(轴二)升降轴轴原点加速度,UpdownAxis_HomeAddSpeed,3000,,,,,,,
PRO,(轴二)升降轴轴原点加速度,UpdownAxis_HomeAddSpeed,3000,,,,,,,
PRO,(轴三)进出轴目标速度,InoutAxis_TargetSpeed,
5
000,,,,,,,
PRO,(轴三)进出轴目标速度,InoutAxis_TargetSpeed,
1
000,,,,,,,
PRO,(轴三)进出轴加速度,InoutAxis_AddSpeed,5000,,,,,,,
PRO,(轴三)进出轴加速度,InoutAxis_AddSpeed,5000,,,,,,,
PRO,(轴三)进出轴减速度,InoutAxis_DelSpeed,5000,,,,,,,
PRO,(轴三)进出轴减速度,InoutAxis_DelSpeed,5000,,,,,,,
PRO,(轴三)进出轴原点低速,InoutAxis_HomeLowSpeed,200,,,,,,,
PRO,(轴三)进出轴原点低速,InoutAxis_HomeLowSpeed,80,,,,,,,
PRO,(轴三)进出轴原点高速,InoutAxis_HomeHighSpeed,800,,,,,,,
PRO,(轴三)进出轴原点高速,InoutAxis_HomeHighSpeed,200,,,,,,,
PRO,(轴三)进出轴原点加速度,InoutAxis_HomeAddSpeed,5000,,,,,,,
PRO,(轴三)进出轴原点加速度,InoutAxis_HomeAddSpeed,3000,,,,,,,
PRO,升降轴(轴二)到仓门速度,UpDownAxis_Door_Speed,500,,,,,,,
PRO,升降轴(轴二)P1速度,UpDownAxis_P1_Speed,2000,,,,,,,
PRO,升降轴(轴二)P1速度,UpDownAxis_P1_Speed,2000,,,,,,,
PRO,升降轴(轴二)P2速度,UpDownAxis_P2_Speed,2000,,,,,,,
PRO,升降轴(轴二)P2速度,UpDownAxis_P2_Speed,2000,,,,,,,
PRO,升降轴(轴二)P3速度,UpDownAxis_P3_Speed,2000,,,,,,,
PRO,升降轴(轴二)P3速度,UpDownAxis_P3_Speed,2000,,,,,,,
...
@@ -97,15 +96,15 @@ PRO,升降轴(轴二)到仓门P7速度,UpDownAxis_P7_Speed,2000,,,,,,,
...
@@ -97,15 +96,15 @@ PRO,升降轴(轴二)到仓门P7速度,UpDownAxis_P7_Speed,2000,,,,,,,
PRO,升降轴(轴二)P8速度,UpDownAxis_P8_Speed,100,,,,,,,
PRO,升降轴(轴二)P8速度,UpDownAxis_P8_Speed,100,,,,,,,
PRO,旋转轴(轴一)P1速度,MiddleAxis_P1_Speed,800,,,,,,,
PRO,旋转轴(轴一)P1速度,MiddleAxis_P1_Speed,800,,,,,,,
PRO,旋转轴(轴一)P2速度,MiddleAxis_P2_Speed,800,,,,,,,
PRO,旋转轴(轴一)P2速度,MiddleAxis_P2_Speed,800,,,,,,,
PRO,进出轴(轴三)P1速度,InOutAxis_P1_Speed,
6
00,,,,,,,
PRO,进出轴(轴三)P1速度,InOutAxis_P1_Speed,
12
00,,,,,,,
PRO,进出轴(轴三)P2速度,InOutAxis_P2_Speed,
3
00,,,,,,,
PRO,进出轴(轴三)P2速度,InOutAxis_P2_Speed,
16
00,,,,,,,
PRO,进出轴(轴三)P3速度,InOutAxis_P3_Speed,
3
00,,,,,, ,
PRO,进出轴(轴三)P3速度,InOutAxis_P3_Speed,
16
00,,,,,, ,
PRO,(轴一)旋转轴最小误差脉冲值,MiddleAxis_ErrorCountMin,
10
,,,,,,,
PRO,(轴一)旋转轴最小误差脉冲值,MiddleAxis_ErrorCountMin,
5
,,,,,,,
PRO,(轴二)升降轴轴最小误差脉冲值,UpdownAxis_ErrorCountMin,
10
,,,,,,,
PRO,(轴二)升降轴轴最小误差脉冲值,UpdownAxis_ErrorCountMin,
5
,,,,,,,
PRO,(轴三)进出轴最小误差脉冲值,InoutAxis_ErrorCountMin,
10
,,,,,,,
PRO,(轴三)进出轴最小误差脉冲值,InoutAxis_ErrorCountMin,
5
,,,,,,,
PRO,(轴一)旋转轴最大误差脉冲值,MiddleAxis_ErrorCountMax,
100
0,,,,,,,
PRO,(轴一)旋转轴最大误差脉冲值,MiddleAxis_ErrorCountMax,
2
0,,,,,,,
PRO,(轴二)升降轴轴最大误差脉冲值,UpdownAxis_ErrorCountMax,
100
0,,,,,,,
PRO,(轴二)升降轴轴最大误差脉冲值,UpdownAxis_ErrorCountMax,
2
0,,,,,,,
PRO,(轴三)进出轴最大误差脉冲值,InoutAxis_ErrorCountMax,
100
0,,,,,,,
PRO,(轴三)进出轴最大误差脉冲值,InoutAxis_ErrorCountMax,
2
0,,,,,,,
PRO,出入库多少次,会自动重置旋转轴,Box_ResetMCount,1000,,,,,,,
PRO,出入库多少次,会自动重置旋转轴,Box_ResetMCount,1000,,,,,,,
PRO,出入库多少次,会自动重置所有轴操作,Box_ResetACount,100,,,,,, ,
PRO,出入库多少次,会自动重置所有轴操作,Box_ResetACount,100,,,,,, ,
PRO,IO信号超时时间(毫秒),IOSingle_TimerOut,10000,,,,,,,
PRO,IO信号超时时间(毫秒),IOSingle_TimerOut,10000,,,,,,,
...
@@ -124,37 +123,37 @@ PRO,温湿度端口号,Humiture_Port,COM5,,,,,,,
...
@@ -124,37 +123,37 @@ PRO,温湿度端口号,Humiture_Port,COM5,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,(轴五)上料轴目标速度,BatchAxis_TargetSpeed,200,,,,,,,
PRO,(轴五)上料轴目标速度,BatchAxis_TargetSpeed,200
00
,,,,,,,
PRO,(轴五)上料轴慢速匀速上升速度,BatchAxis_SlowSpeed,
2
00,,,,,,,
PRO,(轴五)上料轴慢速匀速上升速度,BatchAxis_SlowSpeed,
100
00,,,,,,,
PRO,(轴五)上料轴加速度,BatchAxis_AddSpeed,
4
000,,,,,,,
PRO,(轴五)上料轴加速度,BatchAxis_AddSpeed,
60
000,,,,,,,
PRO,(轴五)上料轴减速度,BatchAxis_DelSpeed,
4
000,,,,,,,
PRO,(轴五)上料轴减速度,BatchAxis_DelSpeed,
60
000,,,,,,,
PRO,(轴五)上料轴原点低速,BatchAxis_HomeLowSpeed,20,,,,,,,
PRO,(轴五)上料轴原点低速,BatchAxis_HomeLowSpeed,20
000
,,,,,,,
PRO,(轴五)上料轴原点高速,BatchAxis_HomeHighSpeed,
8
0,,,,,,,
PRO,(轴五)上料轴原点高速,BatchAxis_HomeHighSpeed,
3000
0,,,,,,,
PRO,(轴五)上料轴原点加速度,BatchAxis_HomeAddSpeed,
2
000,,,,,, ,
PRO,(轴五)上料轴原点加速度,BatchAxis_HomeAddSpeed,
90
000,,,,,, ,
PRO,(轴五)上料轴P1点(出库时接料盘的位置),BatchAxis_P1,
1610000
,,,,,, ,
PRO,(轴五)上料轴P1点(出库时接料盘的位置),BatchAxis_P1,
290669
,,,,,, ,
PRO,(轴五)上料轴P2点(待机点),BatchAxis_P2,
10
000,,,,,,,
PRO,(轴五)上料轴P2点(待机点),BatchAxis_P2,
3
000,,,,,,,
PRO,(轴五)上料轴P2速度,BatchAxis_P2_Speed,1000,,,,,,,
PRO,(轴五)上料轴P2速度,BatchAxis_P2_Speed,1
5
000,,,,,,,
PRO,(轴五)上料轴最小误差脉冲值,BatchAxis_ErrorCountMin,10,,,,,,,
PRO,(轴五)上料轴最小误差脉冲值,BatchAxis_ErrorCountMin,10
0
,,,,,,,
PRO,(轴五)上料轴最大误差脉冲值,BatchAxis_ErrorCountMax,1000,,,,,,,
PRO,(轴五)上料轴最大误差脉冲值,BatchAxis_ErrorCountMax,1000,,,,,,,
PRO,(轴五)上料轴最小限位,BatchAxis_PositionMin,0,,,,,,,
PRO,(轴五)上料轴最小限位,BatchAxis_PositionMin,0,,,,,,,
PRO,(轴五)上料轴最大限位,BatchAxis_PositionMax,0,,,,,,,
PRO,(轴五)上料轴最大限位,BatchAxis_PositionMax,0,,,,,,,
PRO,(轴五)上料轴出料时距离检测信号需要下降的高度,BatchAxis_OutDownPosition,
3000
0,,,,,,,
PRO,(轴五)上料轴出料时距离检测信号需要下降的高度,BatchAxis_OutDownPosition,
1
0,,,,,,,
PRO,(轴五)上料轴出料时检测到料盘需要下降的高度,BatchAxis_DownPosition2,
150
000,,,,,,,
PRO,(轴五)上料轴出料时检测到料盘需要下降的高度,BatchAxis_DownPosition2,
3
000,,,,,,,
PRO,(轴五)上料轴P1速度,BatchAxis_P1_Speed,2000,,,,,,,
PRO,(轴五)上料轴P1速度,BatchAxis_P1_Speed,2000
0
,,,,,,,
PRO,(轴五)上料轴最最大料盘高度,到达后无法批量出库,BatchAxis_MaxHeight,250,,,,,,,
PRO,(轴五)上料轴最最大料盘高度,到达后无法批量出库,BatchAxis_MaxHeight,250,,,,,,,
PRO,最后一盘料需要补充的高度,LastTrayAddHeight,7,,,,,,,
PRO,最后一盘料需要补充的高度,LastTrayAddHeight,7,,,,,,,
PRO,(轴五)上料轴P3点(上料目标位置),BatchAxis_P3,
1724717
,,,,,,,
PRO,(轴五)上料轴P3点(上料目标位置),BatchAxis_P3,
362062
,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,(轴二)升降轴单盘入库抬升料盘的高度,UpdownAxis_UpPosition,100
0
,,,,,,,
PRO,(轴二)升降轴单盘入库抬升料盘的高度,UpdownAxis_UpPosition,100,,,,,,,
PRO,(轴五)上料轴出库上升最大高度,BatchAxis_OutMaxValue,1
49139
0,,,,,,,
PRO,(轴五)上料轴出库上升最大高度,BatchAxis_OutMaxValue,1
0
0,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,(轴四)压紧轴目标速度,CompAxis_TargetSpeed,
3
0000,,,,,,,
PRO,(轴四)压紧轴目标速度,CompAxis_TargetSpeed,
1
0000,,,,,,,
PRO,(轴四)压紧轴加速度,CompAxis_AddSpeed,
1
5000,,,,,,,
PRO,(轴四)压紧轴加速度,CompAxis_AddSpeed,
2
5000,,,,,,,
PRO,(轴四)压紧轴减速度,CompAxis_DelSpeed,
1
5000,,,,,,,
PRO,(轴四)压紧轴减速度,CompAxis_DelSpeed,
2
5000,,,,,,,
PRO,(轴四)压紧轴原点低速,CompAxis_HomeLowSpeed,3000,,,,,,,
PRO,(轴四)压紧轴原点低速,CompAxis_HomeLowSpeed,3000,,,,,,,
PRO,(轴四)压紧轴原点高速,CompAxis_HomeHighSpeed,5000,,,,,,,
PRO,(轴四)压紧轴原点高速,CompAxis_HomeHighSpeed,5000,,,,,,,
PRO,(轴四)压紧轴原点加速度,CompAxis_HomeAddSpeed,10000,,,,,,,
PRO,(轴四)压紧轴原点加速度,CompAxis_HomeAddSpeed,10000,,,,,,,
PRO,(轴四)压紧轴P1速度,CompAxis_P1_Speed,
11
00,,,,,,,
PRO,(轴四)压紧轴P1速度,CompAxis_P1_Speed,
30
00,,,,,,,
PRO,(轴四)压紧轴P2速度,CompAxis_P2_Speed,
11
00,,,,,,,
PRO,(轴四)压紧轴P2速度,CompAxis_P2_Speed,
75
00,,,,,,,
PRO,(轴四)压紧轴P3速度,CompAxis_P3_Speed,
11
00,,,,,,,
PRO,(轴四)压紧轴P3速度,CompAxis_P3_Speed,
75
00,,,,,,,
PRO,特殊二维码尺寸配置,CodeSizeConfig,T;PartNum;1=330x81,,,,,,,
PRO,特殊二维码尺寸配置,CodeSizeConfig,T;PartNum;1=330x81,,,,,,,
source/DeviceLibrary/StoreConfig/AC/linePositions.csv
查看文件 @
9ecc8e3
此文件的差异太大,无法显示。
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean.cs
查看文件 @
9ecc8e3
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean_Partial.cs
查看文件 @
9ecc8e3
...
@@ -113,7 +113,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -113,7 +113,7 @@ namespace OnlineStore.DeviceLibrary
return
true
;
return
true
;
}
}
}
}
private
DateTime
preRWTime
=
DateTime
.
Now
;
private
void
CheckWait
()
private
void
CheckWait
()
{
{
List
<
WaitResultInfo
>
list
=
StoreMove
.
WaitList
;
List
<
WaitResultInfo
>
list
=
StoreMove
.
WaitList
;
...
@@ -169,16 +169,29 @@ namespace OnlineStore.DeviceLibrary
...
@@ -169,16 +169,29 @@ namespace OnlineStore.DeviceLibrary
{
{
timeOutMs
=
650000
;
timeOutMs
=
650000
;
}
}
//if (!wait.IsEnd && span.TotalSeconds > 2 && wait.IoType.Equals(IO_Type.SuckingDisc_Air))
TimeSpan
rwSpan
=
DateTime
.
Now
-
preRWTime
;
//{
if
(
wait
.
IsEnd
.
Equals
(
false
)
&&
rwSpan
.
TotalSeconds
>
5
&&
span
.
TotalSeconds
>
6
&&
span
.
TotalSeconds
<
30
&&
Config
.
DOList
.
ContainsKey
(
wait
.
IoType
))
// string ioType = IO_Type.SuckingDisc_Work;
{
// IO_VALUE doValue = IOManager.DOValue(ioType);
preRWTime
=
DateTime
.
Now
;
// if (!doValue.Equals(wait.IoValue))
string
msg
=
" ["
+
StoreMove
.
MoveType
+
"]["
+
StoreMove
.
MoveStep
+
"] "
+
NotOkMsg
+
"已等待 "
+
Math
.
Round
(
span
.
TotalSeconds
,
1
)
+
"秒,重写DO:"
;
// {
bool
isLog
=
false
;
// LogUtil.error("等待[" + NotOkMsg + "],重写DO(" + ioType + "=" + wait.IoValue + ")");
foreach
(
WaitResultInfo
ww
in
list
)
// IOManager.IOMove(ioType, wait.IoValue);
{
// }
if
(
ww
!=
null
&&
ww
.
WaitType
.
Equals
(
2
)
&&
Config
.
DOList
.
ContainsKey
(
ww
.
IoType
))
//}
{
if
(
IOManager
.
DOValue
(
ww
.
IoType
).
Equals
(
ww
.
IoValue
).
Equals
(
false
))
{
isLog
=
true
;
IOManager
.
IOMove
(
ww
.
IoType
,
ww
.
IoValue
);
msg
+=
ww
.
ToStr
()
+
","
;
}
}
}
if
(
isLog
)
{
LogUtil
.
error
(
StoreName
+
msg
);
}
}
if
((!
wait
.
IsEnd
)
&&
span
.
TotalMilliseconds
>
timeOutMs
)
if
((!
wait
.
IsEnd
)
&&
span
.
TotalMilliseconds
>
timeOutMs
)
{
{
ConfigIO
io
=
Config
.
getWaitIO
(
wait
.
IoType
);
ConfigIO
io
=
Config
.
getWaitIO
(
wait
.
IoType
);
...
@@ -253,12 +266,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -253,12 +266,12 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
span
.
TotalSeconds
>
StoreMove
.
TimeOutSeconds
)
else
if
(
span
.
TotalSeconds
>
StoreMove
.
TimeOutSeconds
)
{
{
//string msg = string.Format(ResourceControl.GetString(ResourceControl.MoveTimeOut), "[" + StoreMove.MoveStep + "]" ,
string
p1
=
"["
+
StoreMove
.
MoveStep
+
"]"
;
// "[" + NotOkMsg + "]","[" + Math.Round(span.TotalSeconds, 1) + "]")
;
string
p2
=
"["
+
NotOkMsg
+
"]"
;
string
msg
=
ResourceControl
.
MoveTimeOut
+
"["
+
StoreMove
.
MoveStep
+
"]"
+
$
"[{((Wait_Type)waitType).ToString()}]"
+
string
p3
=
"["
+
Math
.
Round
(
span
.
TotalSeconds
,
1
)
+
"]"
;
"["
+
NotOkMsg
+
"]"
+
"["
+
Math
.
Round
(
span
.
TotalSeconds
,
1
)
+
"]"
;
string
msg
=
ResourceControl
.
GetString
(
ResourceControl
.
MoveTimeOut
,
p1
+
ResourceControl
.
GetString
(
ResourceControl
.
TimeOut
,
"超时"
)
+
p2
+
p3
,
p1
,
p2
,
p3
)
;
string
newType
=
ResourceControl
.
MoveTimeOut
;
string
newType
=
ResourceControl
.
MoveTimeOut
;
SetWaitWarnMsg
(
msg
,
newType
,
StoreMove
.
MoveStep
+
""
,
Math
.
Round
(
span
.
TotalSeconds
,
1
)
+
""
);
SetWaitWarnMsg
(
msg
,
newType
,
p1
,
p2
,
p3
);
LogUtil
.
error
(
WarnObj
.
WarnMsg
,
15
);
LogUtil
.
error
(
WarnObj
.
WarnMsg
,
15
);
Alarm
(
StoreAlarmType
.
IoSingleTimeOut
,
""
,
WarnObj
.
WarnMsg
,
StoreMove
.
MoveType
);
Alarm
(
StoreAlarmType
.
IoSingleTimeOut
,
""
,
WarnObj
.
WarnMsg
,
StoreMove
.
MoveType
);
}
}
...
@@ -557,8 +570,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -557,8 +570,8 @@ namespace OnlineStore.DeviceLibrary
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_14_GoBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_14_GoBack
)
{
{
preProTime
=
DateTime
.
Now
.
AddSeconds
(-
5
);
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PositionNum
:
""
;
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PositionNum
:
""
;
LogUtil
.
info
(
LOGGER
,
" 【"
+
posId
+
"】 入库结束,耗时【"
+
FormUtil
.
GetSpanStr
(
InOutWatch
.
Elapsed
)
+
"】!"
);
LogUtil
.
info
(
LOGGER
,
" 【"
+
posId
+
"】 入库结束,耗时【"
+
FormUtil
.
GetSpanStr
(
InOutWatch
.
Elapsed
)
+
"】!"
);
StoreMove
.
EndMove
();
StoreMove
.
EndMove
();
...
@@ -696,9 +709,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -696,9 +709,9 @@ namespace OnlineStore.DeviceLibrary
InStoreLog
(
"入库:SIS_38 ,清理扫码信息,开始扫码,最多等待6000 "
);
InStoreLog
(
"入库:SIS_38 ,清理扫码信息,开始扫码,最多等待6000 "
);
AutomaticBaiting
.
ClearInStoreInfo
();
AutomaticBaiting
.
ClearInStoreInfo
();
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SIS_38_ScanCode
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SIS_38_ScanCode
);
StoreMove
.
OneWaitCanEndStep
=
true
;
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitCodeOK
());
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitCodeOK
());
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
6000
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
9000
));
StoreMove
.
OneWaitCanEndStep
=
true
;
AutomaticBaiting
.
GetCameraCode
();
AutomaticBaiting
.
GetCameraCode
();
}
}
else
if
(
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SIS_38_ScanCode
))
else
if
(
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SIS_38_ScanCode
))
...
...
source/DeviceLibrary/acSingleStore/AutomaticBaiting.cs
查看文件 @
9ecc8e3
...
@@ -376,8 +376,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -376,8 +376,9 @@ namespace OnlineStore.DeviceLibrary
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_I06_SuckingDisc_Up
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_I06_SuckingDisc_Up
);
InStoreLog
(
" 吸盘上升"
);
InStoreLog
(
" 吸盘上升"
);
CylinderMove
(
IO_Type
.
ClampingDisc_Up
,
IO_Type
.
ClampingDisc_Down
,
false
);
//CylinderMove(IO_Type.ClampingDisc_Up, IO_Type.ClampingDisc_Down, false);
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
ClampingDisc_Down
,
IO_VALUE
.
LOW
));
//StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ClampingDisc_Down, IO_VALUE.LOW));
CylinderMove
(
IO_Type
.
ClampingDisc_Up
,
IO_Type
.
ClampingDisc_Down
,
true
);
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1500
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1500
));
}
}
...
@@ -479,7 +480,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -479,7 +480,7 @@ namespace OnlineStore.DeviceLibrary
LogUtil
.
debug
(
Name
+
StoreMove
.
MoveStep
+
"入料: 从服务器获取入库PosId,尺寸:【"
+
LastWidth
+
"*"
+
LastHeight
+
"】二维码【"
+
LastCode
+
"】"
);
LogUtil
.
debug
(
Name
+
StoreMove
.
MoveStep
+
"入料: 从服务器获取入库PosId,尺寸:【"
+
LastWidth
+
"*"
+
LastHeight
+
"】二维码【"
+
LastCode
+
"】"
);
GetInStorePosId
(
ProcessMsg
());
GetInStorePosId
(
ProcessMsg
());
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
3
000
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
5
000
));
}
}
}
}
else
if
(
span
.
TotalSeconds
>
60
)
else
if
(
span
.
TotalSeconds
>
60
)
...
@@ -514,6 +515,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -514,6 +515,7 @@ namespace OnlineStore.DeviceLibrary
else
else
{
{
InStoreLog
(
" 入库失败,尺寸:【"
+
LastWidth
+
"*"
+
LastHeight
+
"】将料盘送出,等待料盘拿走"
);
InStoreLog
(
" 入库失败,尺寸:【"
+
LastWidth
+
"*"
+
LastHeight
+
"】将料盘送出,等待料盘拿走"
);
StoreManager
.
cancelPutInTask
(
LastSendCode
);
SendTrayOut
();
SendTrayOut
();
}
}
}
}
...
@@ -637,8 +639,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -637,8 +639,8 @@ namespace OnlineStore.DeviceLibrary
if
(
IOManager
.
IOValue
(
IO_Type
.
TrayCheck_LoadMaterial
).
Equals
(
IO_VALUE
.
HIGH
))
if
(
IOManager
.
IOValue
(
IO_Type
.
TrayCheck_LoadMaterial
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_I03_ScanCode
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_I03_ScanCode
);
InStoreLog
(
" 开始扫码,最多等待
10
000 "
);
InStoreLog
(
" 开始扫码,最多等待
9
000 "
);
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
10
000
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
9
000
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitCodeOK
());
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitCodeOK
());
StoreMove
.
OneWaitCanEndStep
=
true
;
StoreMove
.
OneWaitCanEndStep
=
true
;
GetCameraCode
();
GetCameraCode
();
...
...
source/DeviceLibrary/acSingleStore/AutomaticBaiting_Partial.cs
查看文件 @
9ecc8e3
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/acSingleStore/StoreManager.cs
查看文件 @
9ecc8e3
...
@@ -6,7 +6,7 @@ using System.Collections.Generic;
...
@@ -6,7 +6,7 @@ using System.Collections.Generic;
using
System.IO
;
using
System.IO
;
using
System.IO.Ports
;
using
System.IO.Ports
;
using
System.Linq
;
using
System.Linq
;
using
System.Text
;
using
System.Text
;
using
System.Windows.Forms
;
using
System.Windows.Forms
;
namespace
OnlineStore.DeviceLibrary
namespace
OnlineStore.DeviceLibrary
...
@@ -14,22 +14,24 @@ namespace OnlineStore.DeviceLibrary
...
@@ -14,22 +14,24 @@ namespace OnlineStore.DeviceLibrary
public
class
StoreManager
public
class
StoreManager
{
{
public
static
bool
HasDisableDoorControl
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
HasDisableDoorControl
).
Equals
(
1
);
public
static
bool
HasDisableDoorControl
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
HasDisableDoorControl
).
Equals
(
1
);
private
static
string
api_communication
=
"service/store/communication"
;
//流水线状态通信接口
private
static
string
api_communication
=
"service/store/communication"
;
//流水线状态通信接口
//private static string api_nextFeeder = "service/store/nextFeeder"; // 出库站位列表切换接口
//private static string api_nextFeeder = "service/store/nextFeeder"; // 出库站位列表切换接口
public
static
string
api_inventory
=
"rest/api/v2/mes/inventory"
;
//获取单个或全总SMD-BOX 中的实时库存信息
public
static
string
api_inventory
=
"rest/api/v2/mes/inventory"
;
//获取单个或全总SMD-BOX 中的实时库存信息
public
static
string
api_stackOut
=
"rest/api/v2/mes/stackOut"
;
//本接⼜提供物料出库功能,可⼀次性出单/多盘物料
public
static
string
api_stackOut
=
"rest/api/v2/mes/stackOut"
;
//本接⼜提供物料出库功能,可⼀次性出单/多盘物料
// 取消任务地址: /cancelPutInTask //参数: barcode
private
static
string
Addr_cancelPutInTask
=
"service/store/cancelPutInTask"
;
public
static
readonly
ILog
LOGGER
=
LogManager
.
GetLogger
(
System
.
Reflection
.
MethodBase
.
GetCurrentMethod
().
DeclaringType
);
public
static
readonly
ILog
LOGGER
=
LogManager
.
GetLogger
(
System
.
Reflection
.
MethodBase
.
GetCurrentMethod
().
DeclaringType
);
public
static
AC_SA_BoxBean
Store
=
null
;
public
static
AC_SA_BoxBean
Store
=
null
;
public
static
AUTO_SA_Config
Config
=
null
;
public
static
AUTO_SA_Config
Config
=
null
;
private
static
bool
isInit
=
false
;
private
static
bool
isInit
=
false
;
public
static
bool
IsConnectServer
=
!
ConfigAppSettings
.
GetValue
(
Setting_Init
.
http_server
).
Equals
(
""
);
public
static
bool
IsConnectServer
=
!
ConfigAppSettings
.
GetValue
(
Setting_Init
.
http_server
).
Equals
(
""
);
public
StoreManager
()
public
StoreManager
()
{
{
}
}
public
static
void
CheckEnum
(
Type
type
)
public
static
void
CheckEnum
(
Type
type
)
{
{
if
(
type
.
IsEnum
)
if
(
type
.
IsEnum
)
...
@@ -71,7 +73,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -71,7 +73,7 @@ namespace OnlineStore.DeviceLibrary
LogUtil
.
info
(
LOGGER
,
"配置的料仓 类型="
+
storeType
+
",开始加载料仓配置"
);
LogUtil
.
info
(
LOGGER
,
"配置的料仓 类型="
+
storeType
+
",开始加载料仓配置"
);
if
(
storeType
==
StoreType
.
AUTO_SA_Config
)
if
(
storeType
==
StoreType
.
AUTO_SA_Config
)
{
{
string
appPath
=
Application
.
StartupPath
;
string
appPath
=
Application
.
StartupPath
;
string
CID
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
Store_CID
);
string
CID
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
Store_CID
);
string
linefilePath
=
appPath
+
ConfigAppSettings
.
GetValue
(
Setting_Init
.
Store_ConfigPath
);
string
linefilePath
=
appPath
+
ConfigAppSettings
.
GetValue
(
Setting_Init
.
Store_ConfigPath
);
...
@@ -86,7 +88,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -86,7 +88,7 @@ namespace OnlineStore.DeviceLibrary
Config
=
(
AUTO_SA_Config
)
storeConfig
;
Config
=
(
AUTO_SA_Config
)
storeConfig
;
Store
=
new
AC_SA_BoxBean
(
Config
);
Store
=
new
AC_SA_BoxBean
(
Config
);
Store
.
CID
=
CID
;
Store
.
CID
=
CID
;
LogUtil
.
info
(
LOGGER
,
"加载料仓完成!"
);
LogUtil
.
info
(
LOGGER
,
"加载料仓完成!"
);
return
Store
;
return
Store
;
}
}
}
}
...
@@ -99,10 +101,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -99,10 +101,6 @@ namespace OnlineStore.DeviceLibrary
}
}
return
Store
;
return
Store
;
}
}
/// <summary>
/// 修改了料仓配置,更新缓存,更新配置文件(只能更新PRO的配置)
/// </summary>
/// <param name="kTK_LA_Store_Config"></param>
public
static
void
UpdateBoxConfig
(
AUTO_SA_Config
storeConfig
)
public
static
void
UpdateBoxConfig
(
AUTO_SA_Config
storeConfig
)
{
{
try
try
...
@@ -125,15 +123,26 @@ namespace OnlineStore.DeviceLibrary
...
@@ -125,15 +123,26 @@ namespace OnlineStore.DeviceLibrary
}
}
}
}
public
static
string
GetPostApi
(
string
host
)
public
static
string
GetPostApi
(
string
host
)
{
{
host
=
GetHostUrl
(
host
);
host
=
GetHostUrl
(
host
);
return
host
+
api_communication
;
return
host
+
api_communication
;
}
}
public
static
string
GetAPI
(
string
host
,
string
api
)
public
static
string
GetAPI
(
string
api
,
Dictionary
<
string
,
string
>
paramsMap
=
null
)
{
{
host
=
GetHostUrl
(
host
);
string
host
=
GetHostUrl
(
""
);
return
host
+
api
;
if
(
paramsMap
==
null
||
paramsMap
.
Count
<=
0
)
{
return
host
+
api
;
}
string
path
=
host
+
api
.
Trim
()
+
"?"
;
foreach
(
string
paramName
in
paramsMap
.
Keys
)
{
string
par
=
System
.
Web
.
HttpUtility
.
UrlEncode
(
paramsMap
[
paramName
],
System
.
Text
.
Encoding
.
UTF8
);
path
+=
paramName
+
"="
+
par
+
"&"
;
}
path
=
path
.
Substring
(
0
,
path
.
Length
-
1
);
return
path
;
}
}
private
static
string
GetHostUrl
(
string
host
)
private
static
string
GetHostUrl
(
string
host
)
...
@@ -152,7 +161,51 @@ namespace OnlineStore.DeviceLibrary
...
@@ -152,7 +161,51 @@ namespace OnlineStore.DeviceLibrary
}
}
return
host
;
return
host
;
}
}
public
static
string
GetAllAxisPos
()
{
public
static
string
cancelPutInTask
(
string
barcode
)
{
string
msg
=
""
;
try
{
string
serverAddr
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
http_server
);
if
(
string
.
IsNullOrEmpty
(
serverAddr
))
{
LogUtil
.
error
(
"cancelPutInTask ["
+
barcode
+
"] :未找到服务器地址"
);
return
msg
;
}
Dictionary
<
string
,
string
>
paramMap
=
new
Dictionary
<
string
,
string
>();
paramMap
.
Add
(
"barcode"
,
barcode
);
string
server
=
GetAPI
(
Addr_cancelPutInTask
,
paramMap
);
DateTime
startTime
=
DateTime
.
Now
;
string
resultStr
=
HttpHelper
.
Post
(
server
,
""
);
LogUtil
.
info
(
"cancelPutInTask "
+
FormUtil
.
GetSpanStr
(
DateTime
.
Now
-
startTime
)
+
" 【"
+
server
+
"】【"
+
resultStr
+
"】"
);
//【http://192.168.21.62/myproject/service/store/cancelPutInTask?barcode=%3d1%2b0x0-7x8%3dIAC%3b6010A0243701%3b2031%3bNA%3b4000%3bVBR20BP02341%3b%23%23】
//【{"code":0,"msg":"ok","data":true}】
ReviceData
data
=
JsonHelper
.
DeserializeJsonToObject
<
ReviceData
>(
resultStr
);
if
(
data
==
null
)
{
return
msg
=
" cancelPutInTask【 "
+
barcode
+
"】 没有收到服务器反馈"
;
}
else
if
(
data
.
code
.
Equals
(
0
).
Equals
(
false
))
{
return
msg
=
" cancelPutInTask【 "
+
barcode
+
"】 :"
+
data
.
msg
;
}
return
""
;
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
" "
+
ex
.
ToString
());
}
return
msg
;
}
public
static
string
GetAllAxisPos
()
{
int
UpDown_AxisP
=
AxisManager
.
instance
.
GetActualtPosition
(
Config
.
UpDown_Axis
);
int
UpDown_AxisP
=
AxisManager
.
instance
.
GetActualtPosition
(
Config
.
UpDown_Axis
);
int
Batch_AxisP
=
AxisManager
.
instance
.
GetActualtPosition
(
Config
.
Batch_Axis
);
int
Batch_AxisP
=
AxisManager
.
instance
.
GetActualtPosition
(
Config
.
Batch_Axis
);
int
Comp_AxisP
=
AxisManager
.
instance
.
GetActualtPosition
(
Config
.
Comp_Axis
);
int
Comp_AxisP
=
AxisManager
.
instance
.
GetActualtPosition
(
Config
.
Comp_Axis
);
...
@@ -162,14 +215,23 @@ namespace OnlineStore.DeviceLibrary
...
@@ -162,14 +215,23 @@ namespace OnlineStore.DeviceLibrary
}
}
}
}
public
class
ReviceData
{
//{"code":0,"msg":"ok","data":"7"}
public
int
code
{
get
;
set
;
}
public
string
msg
{
get
;
set
;
}
public
object
data
{
get
;
set
;
}
}
public
class
APIInfo
public
class
APIInfo
{
{
//[{"LOC":"1","RI":"A100007","QTY":1000,"PN":"pn"},{"LOC":"2","RI":"A100015","QTY":1000,"PN":"pn"}]
//[{"LOC":"1","RI":"A100007","QTY":1000,"PN":"pn"},{"LOC":"2","RI":"A100015","QTY":1000,"PN":"pn"}]
public
int
LOC
=
1
;
public
int
LOC
=
1
;
public
string
RI
=
""
;
public
string
RI
=
""
;
public
string
QTY
=
""
;
public
string
QTY
=
""
;
public
string
PN
=
""
;
public
string
PN
=
""
;
}
}
}
}
\ No newline at end of file
\ No newline at end of file
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论