Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
刘韬
/
SO815-AutoInOutStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
图表
网络
创建新的问题
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 615e6b79
由
几米阳光
编写于
2018-12-10 19:37:23 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
调试修改
1 个父辈
16cc676d
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
374 行增加
和
208 行删除
source/ACSingleStore/App.config
source/ACSingleStore/FrmStoreBox.Designer.cs
source/ACSingleStore/FrmStoreBox.cs
source/Common/util/LogUtil.cs
source/DeviceLibrary/PanasonicServo/ACServerManager_Partial.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/store/AC_Store.cs
source/DeviceLibrary/store/model/StoreMoveInfo.cs
source/LoadCVSLibrary/storeConfig/config/Store_IO_Type.cs
source/ACSingleStore/App.config
查看文件 @
615e6b7
...
@@ -6,7 +6,6 @@
...
@@ -6,7 +6,6 @@
<
appSettings
>
<
appSettings
>
<!--是否开机自动启动料仓-->
<!--是否开机自动启动料仓-->
<
add
key
=
"App_AutoRun"
value
=
"1"
/>
<
add
key
=
"App_AutoRun"
value
=
"1"
/>
<
add
key
=
"CodeRun"
value
=
"0"
/>
<
add
key
=
"App_Title"
value
=
"料仓_批量上下料"
/>
<
add
key
=
"App_Title"
value
=
"料仓_批量上下料"
/>
<
add
key
=
"scanner_start_command"
value
=
"S"
/>
<
add
key
=
"scanner_start_command"
value
=
"S"
/>
<!-- 开始吹气的判断值(配置值=服务器发送的湿度值-开始吹气值)-->
<!-- 开始吹气的判断值(配置值=服务器发送的湿度值-开始吹气值)-->
...
@@ -25,19 +24,20 @@
...
@@ -25,19 +24,20 @@
<!--
end
one
store
config
-->
<!--
end
one
store
config
-->
<!--摄像机名称列表配置,用
#分割-->
<!--摄像机名称列表配置,用
#分割-->
<
add
key
=
"CameraName"
value
=
"
codeCamera
"
/>
<
add
key
=
"CameraName"
value
=
"
GigE:MV-CE100-30GC (00C69898477)
"
/>
<!--二维码类型列表配置,用
#分割-->
<!--二维码类型列表配置,用
#分割-->
<
add
key
=
"CodeType"
value
=
"Data Matrix ECC 200"
/>
<
add
key
=
"CodeType"
value
=
"Data Matrix ECC 200"
/>
<!--<
add
key
=
"CodeType"
value
=
"Data Matrix ECC 200"
/>-->
<!--<
add
key
=
"CodeType"
value
=
"Data Matrix ECC 200"
/>-->
<!--二维码参数文件所在路径,文件名与二维码类型名一样-->
<!--二维码参数文件所在路径,文件名与二维码类型名一样-->
<
add
key
=
"CodeParamPath"
value
=
"\CodeParam\"
/>
<
add
key
=
"CodeParamPath"
value
=
"\CodeParam\"
/>
<
add
key
=
"InOutDefaultPosition"
value
=
"3000"
/>
<
add
key
=
"InOutDefaultPosition"
value
=
"3000"
/>
<
add
key
=
"Config_Pwd"
value
=
"123456"
/>
<
add
key
=
"Config_Pwd"
value
=
"123456"
/>
<
add
key
=
"AxisChangeValue"
value
=
"100"
/>
<!--
5000
脉冲对应
1
mm
-->
<
add
key
=
"AxisChangeValue"
value
=
"5000"
/>
</
appSettings
>
</
appSettings
>
<
log4net
>
<
log4net
>
<
appender
name
=
"RollingLogFileAppender"
type
=
"log4net.Appender.RollingFileAppender"
>
<
appender
name
=
"RollingLogFileAppender"
type
=
"log4net.Appender.RollingFileAppender"
>
<
file
value
=
"logs/AutoStore.log"
/>
<
file
value
=
"logs/AutoStore
1
.log"
/>
<
appendToFile
value
=
"true"
/>
<
appendToFile
value
=
"true"
/>
<
rollingStyle
value
=
"Date"
/>
<
rollingStyle
value
=
"Date"
/>
<
datePattern
value
=
"yyyy-MM-dd"
/>
<
datePattern
value
=
"yyyy-MM-dd"
/>
...
...
source/ACSingleStore/FrmStoreBox.Designer.cs
查看文件 @
615e6b7
此文件的差异被折叠,
点击展开。
source/ACSingleStore/FrmStoreBox.cs
查看文件 @
615e6b7
...
@@ -136,11 +136,11 @@ namespace OnlineStore.AutoInOutStore
...
@@ -136,11 +136,11 @@ namespace OnlineStore.AutoInOutStore
btnOutStore
.
Enabled
=
isOpen
;
btnOutStore
.
Enabled
=
isOpen
;
btnInStore
.
Enabled
=
isOpen
;
btnInStore
.
Enabled
=
isOpen
;
btnAxisAMove
.
Enabled
=
isOpen
;
//
btnAxisAMove.Enabled = isOpen;
btnAxisReturnHome
.
Enabled
=
isOpen
;
//
btnAxisReturnHome.Enabled = isOpen;
btnAxisRMove
.
Enabled
=
isOpen
;
//
btnAxisRMove.Enabled = isOpen;
btnAxisVMove
.
Enabled
=
isOpen
;
//
btnAxisVMove.Enabled = isOpen;
启动
ToolStripMenuItem
.
Enabled
=
!
isOpen
;
启动
ToolStripMenuItem
.
Enabled
=
!
isOpen
;
停止
ToolStripMenuItem
.
Enabled
=
isOpen
;
停止
ToolStripMenuItem
.
Enabled
=
isOpen
;
...
@@ -154,7 +154,8 @@ namespace OnlineStore.AutoInOutStore
...
@@ -154,7 +154,8 @@ namespace OnlineStore.AutoInOutStore
this
.
ShowInTaskbar
=
true
;
this
.
ShowInTaskbar
=
true
;
this
.
Text
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
App_Title
);
this
.
Text
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
App_Title
);
HideForm
();
HideForm
();
initValue
();
initValue
();
txtTempPort
.
Text
=
store
.
Config
.
Humiture_Port
;
LoadOk
=
true
;
LoadOk
=
true
;
cmbHomeType
.
SelectedIndex
=
1
;
cmbHomeType
.
SelectedIndex
=
1
;
timer1
.
Start
();
timer1
.
Start
();
...
@@ -326,7 +327,20 @@ namespace OnlineStore.AutoInOutStore
...
@@ -326,7 +327,20 @@ namespace OnlineStore.AutoInOutStore
UpdateFormDoorStats
(
true
);
UpdateFormDoorStats
(
true
);
}
}
}
}
if
(
HumitureController
.
IsRun
)
{
btnSelTemp
.
Enabled
=
true
;
btnTempClose
.
Enabled
=
true
;
btnTempInit
.
Enabled
=
false
;
}
else
{
btnSelTemp
.
Enabled
=
false
;
btnTempClose
.
Enabled
=
false
;
btnTempInit
.
Enabled
=
true
;
}
}
}
private
void
UpdateFormDoorStats
(
bool
dooIsOpen
)
private
void
UpdateFormDoorStats
(
bool
dooIsOpen
)
...
@@ -495,6 +509,7 @@ namespace OnlineStore.AutoInOutStore
...
@@ -495,6 +509,7 @@ namespace OnlineStore.AutoInOutStore
ktk
.
UpDown_P6
=
FormUtil
.
GetIntValue
(
txtUpDownP6
);
ktk
.
UpDown_P6
=
FormUtil
.
GetIntValue
(
txtUpDownP6
);
//ktk.UpDown_P7 = FormUtil.GetIntValue(txtUpDownP7);
//ktk.UpDown_P7 = FormUtil.GetIntValue(txtUpDownP7);
//ktk.UpDown_P8 = FormUtil.GetIntValue(txtUpDownP8);
//ktk.UpDown_P8 = FormUtil.GetIntValue(txtUpDownP8);
return
ktk
;
return
ktk
;
}
}
private
void
btnComAlarmClear_Click
(
object
sender
,
EventArgs
e
)
private
void
btnComAlarmClear_Click
(
object
sender
,
EventArgs
e
)
...
@@ -1111,13 +1126,13 @@ namespace OnlineStore.AutoInOutStore
...
@@ -1111,13 +1126,13 @@ namespace OnlineStore.AutoInOutStore
{
{
SetSkin
(
this
);
SetSkin
(
this
);
this
.
btnUpDownP1
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP1
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP2
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
//
this.btnUpDownP2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
this
.
btnUpDownP3
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP3
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP4
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP4
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP5
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP5
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP6
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP6
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
this
.
btnUpDownP7
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
//
this.btnUpDownP7.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
this
.
btnUpDownP8
.
ForeColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
192
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
0
)))));
//
this.btnUpDownP8.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
//this.lblWarnMsg.ForeColor = System.Drawing.Color.Red;
//this.lblWarnMsg.ForeColor = System.Drawing.Color.Red;
//this.lblThisSta.ForeColor = System.Drawing.Color.Red;
//this.lblThisSta.ForeColor = System.Drawing.Color.Red;
...
@@ -1462,70 +1477,7 @@ namespace OnlineStore.AutoInOutStore
...
@@ -1462,70 +1477,7 @@ namespace OnlineStore.AutoInOutStore
}
}
}
}
private
void
btnBatchInStore_Click
(
object
sender
,
EventArgs
e
)
{
if
(
store
.
storeRunStatus
.
Equals
(
StoreRunStatus
.
Runing
)
&&
AutomaticBaiting
.
AutoBaitingStatus
.
Equals
(
StoreRunStatus
.
Runing
))
{
AutomaticBaiting
.
BatchDoorOpen
(
false
);
}
else
{
MessageBox
.
Show
(
"当前忙碌中,无法进行此操作"
);
}
}
private
void
btnStartBatchInStore_Click
(
object
sender
,
EventArgs
e
)
{
if
(!
AutomaticBaiting
.
DoorStatus
.
Equals
(
1
))
{
return
;
}
if
(
AutomaticBaiting
.
DoorIsClose
())
{
AutomaticBaiting
.
BatchDoorClose
(
false
);
AutomaticBaiting
.
Reset
();
}
else
{
MessageBox
.
Show
(
"请先关闭批量上下料门"
);
}
}
private
void
btnGetOutTray_Click
(
object
sender
,
EventArgs
e
)
{
if
(
store
.
storeRunStatus
.
Equals
(
StoreRunStatus
.
Runing
)
&&
AutomaticBaiting
.
AutoBaitingStatus
.
Equals
(
StoreRunStatus
.
Runing
))
{
if
(
AutomaticBaiting
.
BatchOutStoreCount
>
0
&&
AutomaticBaiting
.
BatchOutStoreHeight
>
0
)
{
AutomaticBaiting
.
BatchDoorOpen
(
false
);
}
else
{
MessageBox
.
Show
(
"未出库,无料盘可取"
);
}
}
else
{
MessageBox
.
Show
(
"当前忙碌中,无法进行此操作"
);
}
}
private
void
btnBatchOutEnd_Click
(
object
sender
,
EventArgs
e
)
{
if
(!
AutomaticBaiting
.
DoorStatus
.
Equals
(
1
))
{
return
;
}
if
(
AutomaticBaiting
.
DoorIsClose
())
{
AutomaticBaiting
.
BatchDoorClose
(
false
);
bool
result
=
AutomaticBaiting
.
Reset
();
}
else
{
MessageBox
.
Show
(
"请先关闭批量上下料门"
);
}
}
private
void
button3_Click
(
object
sender
,
EventArgs
e
)
private
void
button3_Click
(
object
sender
,
EventArgs
e
)
{
{
...
@@ -1600,5 +1552,117 @@ namespace OnlineStore.AutoInOutStore
...
@@ -1600,5 +1552,117 @@ namespace OnlineStore.AutoInOutStore
AxisABSMove
(
store
.
Config
.
UpDown_Axis
,
value
,
store
.
Config
.
UpDownAxis_Door_Speed
);
AxisABSMove
(
store
.
Config
.
UpDown_Axis
,
value
,
store
.
Config
.
UpDownAxis_Door_Speed
);
}
}
}
}
private
void
chbIsUseBatch_CheckedChanged
(
object
sender
,
EventArgs
e
)
{
store
.
UseBatchInout
=
chbIsUseBatch
.
Checked
;
LogUtil
.
info
(
"切换是否使用批量上下料:"
+
store
.
UseBatchInout
);
}
private
void
BtnOpenDoor_Click
(
object
sender
,
EventArgs
e
)
{
if
(
store
.
storeRunStatus
.
Equals
(
StoreRunStatus
.
Runing
)
&&
AutomaticBaiting
.
AutoBaitingStatus
.
Equals
(
StoreRunStatus
.
Runing
))
{
AutomaticBaiting
.
BatchDoorOpen
(
false
);
AutomaticBaiting
.
IsNeedStartInout
=
false
;
}
else
{
MessageBox
.
Show
(
"当前忙碌中,无法进行此操作"
);
}
}
private
void
btnBatchInStore_Click
(
object
sender
,
EventArgs
e
)
{
if
(!
AutomaticBaiting
.
DoorStatus
.
Equals
(
1
))
{
return
;
}
if
(
AutomaticBaiting
.
DoorIsClose
())
{
AutomaticBaiting
.
IsNeedStartInout
=
true
;
AutomaticBaiting
.
BatchDoorClose
(
false
);
AutomaticBaiting
.
Reset
();
}
else
{
MessageBox
.
Show
(
"请先关闭批量上下料门"
);
}
}
private
void
btnStartBatchInStore_Click
(
object
sender
,
EventArgs
e
)
{
if
(!
AutomaticBaiting
.
DoorStatus
.
Equals
(
1
))
{
return
;
}
if
(
AutomaticBaiting
.
DoorIsClose
())
{
AutomaticBaiting
.
BatchDoorClose
(
false
);
AutomaticBaiting
.
Reset
();
}
else
{
MessageBox
.
Show
(
"请先关闭批量上下料门"
);
}
}
private
void
btnGetOutTray_Click
(
object
sender
,
EventArgs
e
)
{
if
(
store
.
storeRunStatus
.
Equals
(
StoreRunStatus
.
Runing
)
&&
AutomaticBaiting
.
AutoBaitingStatus
.
Equals
(
StoreRunStatus
.
Runing
))
{
if
(
AutomaticBaiting
.
BatchOutStoreCount
>
0
&&
AutomaticBaiting
.
BatchOutStoreHeight
>
0
)
{
AutomaticBaiting
.
BatchDoorOpen
(
false
);
}
else
{
MessageBox
.
Show
(
"未出库,无料盘可取"
);
}
}
else
{
MessageBox
.
Show
(
"当前忙碌中,无法进行此操作"
);
}
}
private
void
btnBatchOutEnd_Click
(
object
sender
,
EventArgs
e
)
{
if
(!
AutomaticBaiting
.
DoorStatus
.
Equals
(
1
))
{
return
;
}
if
(
AutomaticBaiting
.
DoorIsClose
())
{
AutomaticBaiting
.
BatchDoorClose
(
false
);
bool
result
=
AutomaticBaiting
.
Reset
();
}
else
{
MessageBox
.
Show
(
"请先关闭批量上下料门"
);
}
}
private
void
btnTempInit_Click
(
object
sender
,
EventArgs
e
)
{
string
port
=
txtTempPort
.
Text
.
ToString
();
if
(
HumitureController
.
IsRun
)
{
HumitureController
.
Release
();
}
HumitureController
.
Init
(
port
);
}
private
void
btnTempClose_Click
(
object
sender
,
EventArgs
e
)
{
HumitureController
.
Release
();
}
private
void
btnSelTemp_Click
(
object
sender
,
EventArgs
e
)
{
ASTemperateParam
param
=
HumitureController
.
QueryData
();
txtTemp
.
Text
=
param
.
Temperate
.
ToString
();
txtHum
.
Text
=
param
.
Humidity
.
ToString
();
}
}
}
}
}
source/Common/util/LogUtil.cs
查看文件 @
615e6b7
...
@@ -73,7 +73,7 @@ namespace OnlineStore.Common
...
@@ -73,7 +73,7 @@ namespace OnlineStore.Common
}
}
}
}
private
static
List
<
string
>
lasErrorLogList
=
new
List
<
string
>();
//
private static List<string> lasErrorLogList = new List<string>();
private
static
int
errCount
=
5
;
private
static
int
errCount
=
5
;
public
static
void
error
(
ILog
log
,
string
errorMsg
,
int
type
)
public
static
void
error
(
ILog
log
,
string
errorMsg
,
int
type
)
...
@@ -100,7 +100,7 @@ namespace OnlineStore.Common
...
@@ -100,7 +100,7 @@ namespace OnlineStore.Common
}
}
public
static
void
error
(
ILog
log
,
string
errorMsg
)
public
static
void
error
(
ILog
log
,
string
errorMsg
)
{
{
if
(!
lasErrorLogList
.
Contains
(
errorMsg
))
//
if (!lasErrorLogList.Contains(errorMsg))
{
{
log
.
Error
(
log
.
Logger
.
Name
+
" - "
+
errorMsg
);
log
.
Error
(
log
.
Logger
.
Name
+
" - "
+
errorMsg
);
if
(
logBox
==
null
)
if
(
logBox
==
null
)
...
@@ -109,17 +109,17 @@ namespace OnlineStore.Common
...
@@ -109,17 +109,17 @@ namespace OnlineStore.Common
}
}
AddToBox
(
errorMsg
,
Color
.
Red
);
AddToBox
(
errorMsg
,
Color
.
Red
);
}
}
lasErrorLogList
.
Add
(
errorMsg
);
//
lasErrorLogList.Add(errorMsg);
if
(
lasErrorLogList
.
Count
>
errCount
)
//
if (lasErrorLogList.Count > errCount)
{
//
{
lasErrorLogList
.
RemoveAt
(
0
);
//
lasErrorLogList.RemoveAt(0);
}
//
}
}
}
private
static
void
AddToBox
(
string
msg
,
Color
color
)
private
static
void
AddToBox
(
string
msg
,
Color
color
)
{
{
try
try
{
{
ShowLogPro
(
msg
,
color
);
ShowLogPro
(
msg
);
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
{
{
...
@@ -127,7 +127,7 @@ namespace OnlineStore.Common
...
@@ -127,7 +127,7 @@ namespace OnlineStore.Common
}
}
}
}
private
static
int
count
=
0
;
private
static
int
count
=
0
;
private
static
void
ShowLogPro
(
string
msg
,
Color
color
)
private
static
void
ShowLogPro
(
string
msg
)
{
{
try
try
{
{
...
...
source/DeviceLibrary/PanasonicServo/ACServerManager_Partial.cs
查看文件 @
615e6b7
using
OnlineStore.Common
;
using
OnlineStore.Common
;
using
OnlineStore.LoadCSVLibrary
;
using
System
;
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
System.IO.Ports
;
using
System.IO.Ports
;
...
@@ -422,7 +423,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -422,7 +423,11 @@ namespace OnlineStore.DeviceLibrary
return
GetRegisterData
(
portName
,
reviceData
,
ACCMDManager
.
TargetPostion
);
return
GetRegisterData
(
portName
,
reviceData
,
ACCMDManager
.
TargetPostion
);
}
}
public
static
int
GetActualtPosition
(
string
portName
,
int
slvAddr
)
public
static
int
GetActualtPosition
(
ConfigMoveAxis
axis
)
{
return
GetActualtPosition
(
axis
.
DeviceName
,
axis
.
GetAxisValue
());
}
public
static
int
GetActualtPosition
(
string
portName
,
int
slvAddr
)
{
{
PreReadAddr
=
ACCMDManager
.
ActualPosition
;
PreReadAddr
=
ACCMDManager
.
ActualPosition
;
byte
[]
dataArray
=
ACCMDManager
.
GetWriteData
(
slvAddr
,
ACCMDManager
.
CMD_ReadRegisters
,
ACCMDManager
.
ActualPosition
,
"0000"
,
2
);
byte
[]
dataArray
=
ACCMDManager
.
GetWriteData
(
slvAddr
,
ACCMDManager
.
CMD_ReadRegisters
,
ACCMDManager
.
ActualPosition
,
"0000"
,
2
);
...
@@ -506,6 +511,20 @@ namespace OnlineStore.DeviceLibrary
...
@@ -506,6 +511,20 @@ namespace OnlineStore.DeviceLibrary
return
GetCoilData
(
portName
,
reviceData
,
ACCMDManager
.
Home_Single
);
return
GetCoilData
(
portName
,
reviceData
,
ACCMDManager
.
Home_Single
);
}
}
/// <summary>
/// <summary>
/// 负极限
/// </summary>
public
static
int
GetLimitNegativeSingle
(
ConfigMoveAxis
axis
)
{
return
GetLimitNegativeSingle
(
axis
);
}
/// <summary>
/// 正极限
/// </summary>
public
static
int
GetLimitPositiveSingle
(
ConfigMoveAxis
axis
)
{
return
GetLimitPositiveSingle
(
axis
);
}
/// <summary>
/// 正极限
/// 正极限
/// </summary>
/// </summary>
public
static
int
GetLimitPositiveSingle
(
string
portName
,
int
slvAddr
)
public
static
int
GetLimitPositiveSingle
(
string
portName
,
int
slvAddr
)
...
...
source/DeviceLibrary/StoreConfig/AC/StoreConfig.csv
查看文件 @
615e6b7
...
@@ -9,7 +9,7 @@ DI,吸盘气缸上升端,SuckingDisc_Up,206,192.168.200.11,0,吸盘气缸上升端,X07,DI-07,0
...
@@ -9,7 +9,7 @@ DI,吸盘气缸上升端,SuckingDisc_Up,206,192.168.200.11,0,吸盘气缸上升端,X07,DI-07,0
DI,吸盘气缸下降端,SuckingDisc_Down,207,192.168.200.11,0,吸盘气缸下降端,X08,DI-08,0,
DI,吸盘气缸下降端,SuckingDisc_Down,207,192.168.200.11,0,吸盘气缸下降端,X08,DI-08,0,
DI,料盘宽度检测1,WidthCheck1,208,192.168.200.11,0,料盘宽度检测1,X09,DI-09,0,
DI,料盘宽度检测1,WidthCheck1,208,192.168.200.11,0,料盘宽度检测1,X09,DI-09,0,
DI,料盘宽度检测2,WidthCheck2,209,192.168.200.11,0,料盘宽度检测2,X10,DI-10,0,
DI,料盘宽度检测2,WidthCheck2,209,192.168.200.11,0,料盘宽度检测2,X10,DI-10,0,
DI,料盘检测1(上料机构),TrayCheck_LoadMaterial,210,192.168.200.11,0,料盘检测1
(上料机构)
,X11,DI-11,0,
DI,料盘检测1(上料机构),TrayCheck_LoadMaterial,210,192.168.200.11,0,料盘检测1
(上料机构)
,X11,DI-11,0,
DI,上料机构出料检测,OutCheck,211,192.168.200.11,0,上料机构出料检测,X12,DI-12,0,
DI,上料机构出料检测,OutCheck,211,192.168.200.11,0,上料机构出料检测,X12,DI-12,0,
DI,门锁气缸打开端,BatchDoor_Open,212,192.168.200.11,0,门锁气缸打开端,X13,DI-13,0,
DI,门锁气缸打开端,BatchDoor_Open,212,192.168.200.11,0,门锁气缸打开端,X13,DI-13,0,
DI,门锁气缸关闭端,BatchDoor_Close,213,192.168.200.11,0,门锁气缸关闭端,X14,DI-14,0,
DI,门锁气缸关闭端,BatchDoor_Close,213,192.168.200.11,0,门锁气缸关闭端,X14,DI-14,0,
...
@@ -27,8 +27,8 @@ DO,进料口门上升SOL,Door_Up,108,192.168.200.11,0,进料口门上升SOL,Y09,DO-09,0,
...
@@ -27,8 +27,8 @@ DO,进料口门上升SOL,Door_Up,108,192.168.200.11,0,进料口门上升SOL,Y09,DO-09,0,
DO,进料口门下降SOL,Door_Down,109,192.168.200.11,0,进料口门下降SOL,Y10,DO-10,0,
DO,进料口门下降SOL,Door_Down,109,192.168.200.11,0,进料口门下降SOL,Y10,DO-10,0,
DO,吸盘气缸上升SOL,SuckingDisc_Up,110,192.168.200.11,0,吸盘气缸上升SOL,Y11,DO-11,0,
DO,吸盘气缸上升SOL,SuckingDisc_Up,110,192.168.200.11,0,吸盘气缸上升SOL,Y11,DO-11,0,
DO,吸盘气缸下降SOL,SuckingDisc_Down,111,192.168.200.11,0,吸盘气缸下降SOL,Y12,DO-12,0,
DO,吸盘气缸下降SOL,SuckingDisc_Down,111,192.168.200.11,0,吸盘气缸下降SOL,Y12,DO-12,0,
DO,门锁气缸打开SOL,
Auto
Door_Open,112,192.168.200.11,0,门锁气缸打开SOL,Y13,DO-13,0,
DO,门锁气缸打开SOL,
Batch
Door_Open,112,192.168.200.11,0,门锁气缸打开SOL,Y13,DO-13,0,
DO,门锁气缸关闭SOL,
Auto
Door_Close,113,192.168.200.11,0,门锁气缸关闭SOL,Y14,DO-14,0,
DO,门锁气缸关闭SOL,
Batch
Door_Close,113,192.168.200.11,0,门锁气缸关闭SOL,Y14,DO-14,0,
,,,114,192.168.200.11,0,,Y15,DO-15,0,
,,,114,192.168.200.11,0,,Y15,DO-15,0,
,,,115,192.168.200.11,0,,Y16,DO-16,0,
,,,115,192.168.200.11,0,,Y16,DO-16,0,
DI,上料机构门关闭,DoorClose_LoadMaterial,200,192.168.200.12,0,上料机构门关闭,X21,DI-21,0,
DI,上料机构门关闭,DoorClose_LoadMaterial,200,192.168.200.12,0,上料机构门关闭,X21,DI-21,0,
...
@@ -45,15 +45,15 @@ AXIS,(轴三)进出轴,InOut_Axis,1,COM5,0,,,,,
...
@@ -45,15 +45,15 @@ AXIS,(轴三)进出轴,InOut_Axis,1,COM5,0,,,,,
AXIS,(轴五)批量上下料轴,Batch_Axis,1,COM6,0,,,,,
AXIS,(轴五)批量上下料轴,Batch_Axis,1,COM6,0,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,升降轴 进料口仓门位置,UpDownAxis_DoorPosition,
403
000,,,,,,,
PRO,升降轴 进料口仓门位置,UpDownAxis_DoorPosition,
355
000,,,,,,,
,升降轴 进料口取料点 P1,UpDownAxis_DoorOPosition_P1,403000,,,,,,,
,升降轴 进料口取料点 P1,UpDownAxis_DoorOPosition_P1,403000,,,,,,,
,升降轴 进料口出料前点 P2,UpDownAxis_DoorIPosition_P2,415000,,,,,,,
,升降轴 进料口出料前点 P2,UpDownAxis_DoorIPosition_P2,415000,,,,,,,
,升降轴 进料口取料缓冲点 P7,UpDownAxis_DoorOBPosition_P7,415000,,,,,,,
,升降轴 进料口取料缓冲点 P7,UpDownAxis_DoorOBPosition_P7,415000,,,,,,,
,升降轴 进料口出料缓冲点 P8,UpDownAxis_DoorIBPosition_P8,403000,,,,,,,
,升降轴 进料口出料缓冲点 P8,UpDownAxis_DoorIBPosition_P8,403000,,,,,,,
PRO,升降轴 出入料待机点P1集合,UpDownAxis_P1_List,8#
20000;12#22000
,,,,,,,
PRO,升降轴 出入料待机点P1集合,UpDownAxis_P1_List,8#
355000;12#350000;
,,,,,,,
PRO,旋转轴(轴一)P1 待机原位点,MiddleAxis_P1_Position,26
8093
,,,,,,,
PRO,旋转轴(轴一)P1 待机原位点,MiddleAxis_P1_Position,26
0000
,,,,,,,
PRO,进出轴(轴三)P1待机原位点,InOutAxis_P1_Position,1000,,,,,,,
PRO,进出轴(轴三)P1待机原位点,InOutAxis_P1_Position,1000,,,,,,,
PRO,压紧轴(轴4)P1待机原位点,CompressAxis_P1_Position,-
75
000,,,,,,,
PRO,压紧轴(轴4)P1待机原位点,CompressAxis_P1_Position,-
40
000,,,,,,,
PRO,是否使用定位气缸,IsHasLocationCylinder,0,,,,,,,
PRO,是否使用定位气缸,IsHasLocationCylinder,0,,,,,,,
PRO,是否有左右侧门,IsHasDoorLimit,1,,,,,,,
PRO,是否有左右侧门,IsHasDoorLimit,1,,,,,,,
PRO,是否使用压紧轴(1=使用),IsHasCompress_Axis,1,,,,, ,,
PRO,是否使用压紧轴(1=使用),IsHasCompress_Axis,1,,,,, ,,
...
@@ -62,7 +62,7 @@ PRO,气压检测IO关闭需要持续的时间,AirCheckSeconds,3,,,,,,,
...
@@ -62,7 +62,7 @@ PRO,气压检测IO关闭需要持续的时间,AirCheckSeconds,3,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,预警温度,WarnTemperate,80,,,,,,,
PRO,预警温度,WarnTemperate,80,,,,,,,
PRO,预警湿度,WarnHumidity,80,,,,,,,
PRO,预警湿度,WarnHumidity,80,,,,,,,
PRO,(轴一)旋转轴目标速度,MiddleAxis_TargetSpeed,
25
0,,,,,,,
PRO,(轴一)旋转轴目标速度,MiddleAxis_TargetSpeed,
10
0,,,,,,,
PRO,(轴一)旋转轴加速度,MiddleAxis_AddSpeed,80,,,,,,,
PRO,(轴一)旋转轴加速度,MiddleAxis_AddSpeed,80,,,,,,,
PRO,(轴一)旋转轴减速度,MiddleAxis_DelSpeed,80,,,,,,,
PRO,(轴一)旋转轴减速度,MiddleAxis_DelSpeed,80,,,,,,,
PRO,(轴一)旋转轴原点低速度,MiddleAxis_HomeLowSpeed,80,,,,,,,
PRO,(轴一)旋转轴原点低速度,MiddleAxis_HomeLowSpeed,80,,,,,,,
...
@@ -128,18 +128,18 @@ PRO,硕科步进电机(压紧轴)控制减速度,CompressAxis_DelSpeed,15000,,,,,,,
...
@@ -128,18 +128,18 @@ PRO,硕科步进电机(压紧轴)控制减速度,CompressAxis_DelSpeed,15000,,,,,,,
PRO,硕科步进电机(压紧轴)原点返回速度,CompressAxis_HomeSpeed,15000,,,,,,,
PRO,硕科步进电机(压紧轴)原点返回速度,CompressAxis_HomeSpeed,15000,,,,,,,
PRO,硕科步进电机轴地址(压紧轴),CompressAxis_Slv,1,,,,,, ,
PRO,硕科步进电机轴地址(压紧轴),CompressAxis_Slv,1,,,,,, ,
,,,,,,,,,,
,,,,,,,,,,
PRO,(轴五)上料轴目标速度,BatchAxis_TargetSpeed,
5
0,,,,,,,
PRO,(轴五)上料轴目标速度,BatchAxis_TargetSpeed,
20
0,,,,,,,
PRO,(轴五)上料轴加速度,BatchAxis_AddSpeed,300,,,,,,,
PRO,(轴五)上料轴加速度,BatchAxis_AddSpeed,300,,,,,,,
PRO,(轴五)上料轴减速度,BatchAxis_DelSpeed,300,,,,,,,
PRO,(轴五)上料轴减速度,BatchAxis_DelSpeed,300,,,,,,,
PRO,(轴五)上料轴原点低速,BatchAxis_HomeLowSpeed,20,,,,,,,
PRO,(轴五)上料轴原点低速,BatchAxis_HomeLowSpeed,20,,,,,,,
PRO,(轴五)上料轴原点高速,BatchAxis_HomeHighSpeed,60,,,,,,,
PRO,(轴五)上料轴原点高速,BatchAxis_HomeHighSpeed,60,,,,,,,
PRO,(轴五)上料轴原点加速度,BatchAxis_HomeAddSpeed,200,,,,,,,
PRO,(轴五)上料轴原点加速度,BatchAxis_HomeAddSpeed,200,,,,,,,
PRO,(轴五)上料轴P1点(出库时接料盘的位置),BatchAxis_P1,
2
00,,,,,, ,
PRO,(轴五)上料轴P1点(出库时接料盘的位置),BatchAxis_P1,
17300
00,,,,,, ,
PRO,(轴五)上料轴最小误差脉冲值,BatchAxis_ErrorCountMin,10,,,,,,,
PRO,(轴五)上料轴最小误差脉冲值,BatchAxis_ErrorCountMin,10,,,,,,,
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,(轴五)上料轴P1速度,BatchAxis_P1_Speed,
5
0,,,,,,,
PRO,(轴五)上料轴P1速度,BatchAxis_P1_Speed,
20
0,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
,,,,,,,,,,
PRO,IO模块对应的DI数量,IO_DILength,192.168.200.11#16;192.168.200.12#4,,,,,, ,
PRO,IO模块对应的DI数量,IO_DILength,192.168.200.11#16;192.168.200.12#4,,,,,, ,
...
...
source/DeviceLibrary/StoreConfig/AC/linePositions.csv
查看文件 @
615e6b7
位置,优先级,高度,宽度,料仓ID,中轴位置P2,升降轴库位出料前点P5,升降轴库位出料缓冲点P6,升降轴库位入料前点P3,升降轴库位入料缓冲点P4,进出轴库位点取料点P3,压紧轴压紧点P2,压紧轴压紧前点P3,进出轴仓门取料点P2,进出轴吸盘取料点P2
位置,优先级,高度,宽度,料仓ID,中轴位置P2,升降轴库位出料前点P5,升降轴库位出料缓冲点P6,升降轴库位入料前点P3,升降轴库位入料缓冲点P4,进出轴库位点取料点P3,压紧轴压紧点P2,压紧轴压紧前点P3,进出轴仓门取料点P2,进出轴吸盘取料点P2
1#AC1_1_1_4,774,8,7,1,211783,51884,55245,55245,51884,68000,-110000,-75000,
81000,81
000
1#AC1_1_1_4,774,8,7,1,211783,51884,55245,55245,51884,68000,-110000,-75000,
5000,5
000
1#AC1_1_1_5,773,12,7,1,211783,67807,71168,71168,67807,68000,-110000,-75000,
81000,81
000
1#AC1_1_1_5,773,12,7,1,211783,67807,71168,71168,67807,68000,-110000,-75000,
5000,5
000
1#AC1_1_1_6,772,8,7,,211783,83730,87091,87091,83730,68000,-110000,-75000,81000,81000
1#AC1_1_1_6,772,8,7,,211783,83730,87091,87091,83730,68000,-110000,-75000,81000,81000
1#AC1_1_1_7,771,8,7,,211783,99653,103014,103014,99653,68000,-110000,-75000,81000,81000
1#AC1_1_1_7,771,8,7,,211783,99653,103014,103014,99653,68000,-110000,-75000,81000,81000
1#AC1_1_1_8,770,8,7,,211783,115576,118937,118937,115576,68000,-110000,-75000,81000,81000
1#AC1_1_1_8,770,8,7,,211783,115576,118937,118937,115576,68000,-110000,-75000,81000,81000
...
...
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean.cs
查看文件 @
615e6b7
...
@@ -16,8 +16,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -16,8 +16,8 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
/// </summary>
public
partial
class
AC_SA_BoxBean
:
AC_Store
public
partial
class
AC_SA_BoxBean
:
AC_Store
{
{
private
static
bool
IsIntSlvBlock
=
false
;
private
bool
IsIntSlvBlock
=
false
;
public
bool
UseBatchInout
=
true
;
public
string
CID
=
""
;
public
string
CID
=
""
;
public
AUTO_SA_Config
Config
;
public
AUTO_SA_Config
Config
;
/// <summary>
/// <summary>
...
@@ -136,7 +136,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -136,7 +136,7 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
/// </summary>
public
override
bool
StartRun
()
public
override
bool
StartRun
()
{
{
runTimeWatch
.
Res
e
t
();
runTimeWatch
.
Res
tar
t
();
LogUtil
.
info
(
LOGGER
,
StoreName
+
"开始启动,启动时间:"
+
DateTime
.
Now
.
ToLongTimeString
());
LogUtil
.
info
(
LOGGER
,
StoreName
+
"开始启动,启动时间:"
+
DateTime
.
Now
.
ToLongTimeString
());
if
(
IsHasCompress_Axis
)
if
(
IsHasCompress_Axis
)
...
@@ -147,11 +147,14 @@ namespace OnlineStore.DeviceLibrary
...
@@ -147,11 +147,14 @@ namespace OnlineStore.DeviceLibrary
return
false
;
return
false
;
}
}
}
}
string
canStart
=
AutomaticBaiting
.
CanStart
();
if
(
UseBatchInout
)
if
(!
canStart
.
Equals
(
""
))
{
{
LogUtil
.
info
(
StoreName
+
canStart
);
string
canStart
=
AutomaticBaiting
.
CanStart
();
return
false
;
if
(!
canStart
.
Equals
(
""
))
{
LogUtil
.
info
(
StoreName
+
canStart
);
return
false
;
}
}
}
autoNext
=
false
;
autoNext
=
false
;
mainTimer
.
Enabled
=
false
;
mainTimer
.
Enabled
=
false
;
...
@@ -170,8 +173,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -170,8 +173,10 @@ namespace OnlineStore.DeviceLibrary
{
{
return
false
;
return
false
;
}
}
if
(
UseBatchInout
)
AutomaticBaiting
.
Reset
();
{
AutomaticBaiting
.
Reset
();
}
//TODO 启动时先所有轴远点返回,测试暂时关闭
//TODO 启动时先所有轴远点返回,测试暂时关闭
storeRunStatus
=
StoreRunStatus
.
HomeMoving
;
storeRunStatus
=
StoreRunStatus
.
HomeMoving
;
HumitureController
.
Init
(
Config
.
Humiture_Port
);
HumitureController
.
Init
(
Config
.
Humiture_Port
);
...
@@ -698,11 +703,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -698,11 +703,12 @@ namespace OnlineStore.DeviceLibrary
//private DateTime preProcessTime = DateTime.Now;
//private DateTime preProcessTime = DateTime.Now;
private
bool
IsChongfu
=
false
;
private
bool
IsChongfu
=
false
;
private
Stopwatch
stopwatch
=
new
Stopwatch
();
private
Stopwatch
stopwatch
=
new
Stopwatch
();
private
object
TimerLock
=
""
;
protected
override
void
timersTimer_Elapsed
(
object
sender
,
System
.
Timers
.
ElapsedEventArgs
e
)
protected
override
void
timersTimer_Elapsed
(
object
sender
,
System
.
Timers
.
ElapsedEventArgs
e
)
{
{
if
(
InProcess
)
if
(
InProcess
)
{
{
//TimeSpan span = DateTime.Now - preProcessTime;
if
(
stopwatch
.
Elapsed
.
TotalMinutes
<
1
)
if
(
stopwatch
.
Elapsed
.
TotalMinutes
<
1
)
{
{
return
;
return
;
...
@@ -711,30 +717,46 @@ namespace OnlineStore.DeviceLibrary
...
@@ -711,30 +717,46 @@ namespace OnlineStore.DeviceLibrary
{
{
LogUtil
.
error
(
"主定时器:InProcess已等待"
+
stopwatch
.
Elapsed
.
ToString
()
+
"重新处理"
);
LogUtil
.
error
(
"主定时器:InProcess已等待"
+
stopwatch
.
Elapsed
.
ToString
()
+
"重新处理"
);
IsChongfu
=
true
;
IsChongfu
=
true
;
Monitor
.
Exit
(
TimerLock
);
}
}
}
}
try
InProcess
=
true
;
stopwatch
.
Restart
();
if
(
Monitor
.
TryEnter
(
TimerLock
))
{
{
InProcess
=
true
;
try
//preProcessTime = DateTime.Now;
{
stopwatch
.
Restart
();
IoCheckProcess
();
IoCheckProcess
();
ShowTimeLog
(
"IoCheckProcess"
);
ShowTimeLog
(
"IoCheckProcess"
);
TimerProcess
();
TimerProcess
();
ShowTimeLog
(
"TimerProcess"
);
ShowTimeLog
(
"TimerProcess"
);
//检查运动轴报警
//检查运动轴报警
if
(
storeRunStatus
>
StoreRunStatus
.
Wait
&&
(!
isInSuddenDown
)
&&
(!
isNoAirCheck
))
if
(
storeRunStatus
>
StoreRunStatus
.
Wait
&&
(!
isInSuddenDown
)
&&
(!
isNoAirCheck
))
{
ShowTimeLog
(
"开始检测轴报警"
);
CheckAxisAlarm
();
ShowTimeLog
(
"轴报警检测完成"
);
}
if
(
UseBatchInout
)
{
AutomaticBaiting
.
TimerProcess
();
}
}
catch
(
Exception
ex
)
{
LOGGER
.
Error
(
StoreName
+
"定时处理出错:"
+
ex
.
ToString
());
}
finally
{
{
ShowTimeLog
(
"开始检测轴报警"
);
Monitor
.
Exit
(
TimerLock
);
CheckAxisAlarm
();
ShowTimeLog
(
"轴报警检测完成"
);
}
}
AutomaticBaiting
.
TimerProcess
();
}
}
catch
(
Exception
ex
)
else
{
{
LOGGER
.
Error
(
StoreName
+
"定时处理
出错:"
+
ex
.
ToString
()
);
LOGGER
.
Error
(
StoreName
+
"定时处理
未得到锁"
);
}
}
IsChongfu
=
false
;
IsChongfu
=
false
;
InProcess
=
false
;
InProcess
=
false
;
}
}
...
@@ -923,37 +945,37 @@ namespace OnlineStore.DeviceLibrary
...
@@ -923,37 +945,37 @@ namespace OnlineStore.DeviceLibrary
//遮挡光栅信号
//遮挡光栅信号
if
(
KND
.
IOValue
(
IO_Type
.
SafetyLightCurtains
).
Equals
(
IO_VALUE
.
LOW
))
if
(
KND
.
IOValue
(
IO_Type
.
SafetyLightCurtains
).
Equals
(
IO_VALUE
.
LOW
))
{
{
if
(
NeedCheckSafetyLight
.
Equals
(
1
))
//
if (NeedCheckSafetyLight.Equals(1))
{
//
{
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
OutStore
)
&&
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SO_10_DeviceToDoor
))
//
if (StoreMove.MoveType.Equals(StoreMoveType.OutStore) && StoreMove.MoveStep.Equals(StoreMoveStep.SO_10_DeviceToDoor))
{
//
{
NeedCheckSafetyLight
=
2
;
//
NeedCheckSafetyLight = 2;
LOGGER
.
Info
(
"出库SO_10_DeviceToDoor运动中,光栅被遮挡,停止进出轴运动"
);
//
LOGGER.Info("出库SO_10_DeviceToDoor运动中,光栅被遮挡,停止进出轴运动");
ACServerManager
.
SuddenStop
(
Config
.
InOut_Axis
.
DeviceName
,
Config
.
InOut_Axis
.
GetAxisValue
());
//
ACServerManager.SuddenStop(Config.InOut_Axis.DeviceName, Config.InOut_Axis.GetAxisValue());
}
//
}
else
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
InStore
)
&&
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SI_05_DeviceToDoor
))
//
else if (StoreMove.MoveType.Equals(StoreMoveType.InStore) && StoreMove.MoveStep.Equals(StoreMoveStep.SI_05_DeviceToDoor))
{
//
{
NeedCheckSafetyLight
=
2
;
//
NeedCheckSafetyLight = 2;
LOGGER
.
Info
(
"入库SI_05_DeviceToDoor运动中,光栅被遮挡,停止进出轴运动"
);
//
LOGGER.Info("入库SI_05_DeviceToDoor运动中,光栅被遮挡,停止进出轴运动");
ACServerManager
.
SuddenStop
(
Config
.
InOut_Axis
.
DeviceName
,
Config
.
InOut_Axis
.
GetAxisValue
());
//
ACServerManager.SuddenStop(Config.InOut_Axis.DeviceName, Config.InOut_Axis.GetAxisValue());
}
//
}
}
//
}
}
}
else
else
{
{
if
(
NeedCheckSafetyLight
.
Equals
(
2
))
//
if (NeedCheckSafetyLight.Equals(2))
{
//
{
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
OutStore
)
&&
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SO_10_DeviceToDoor
))
//
if (StoreMove.MoveType.Equals(StoreMoveType.OutStore) && StoreMove.MoveStep.Equals(StoreMoveStep.SO_10_DeviceToDoor))
{
//
{
LOGGER
.
Info
(
"出库SO_10_DeviceToDoor运动中,光栅已恢复,继续进出轴运动"
);
//
LOGGER.Info("出库SO_10_DeviceToDoor运动中,光栅已恢复,继续进出轴运动");
SO_10_DeviceToDoorPro
();
//
SO_10_DeviceToDoorPro();
}
//
}
else
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
InStore
)
&&
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SI_05_DeviceToDoor
))
//
else if (StoreMove.MoveType.Equals(StoreMoveType.InStore) && StoreMove.MoveStep.Equals(StoreMoveStep.SI_05_DeviceToDoor))
{
//
{
LOGGER
.
Info
(
"入库SI_05_DeviceToDoor运动中,光栅已恢复,继续进出轴运动"
);
//
LOGGER.Info("入库SI_05_DeviceToDoor运动中,光栅已恢复,继续进出轴运动");
SI_05_DeviceToDoor
();
//
SI_05_DeviceToDoor();
}
//
}
}
//
}
}
}
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
...
@@ -1232,7 +1254,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1232,7 +1254,10 @@ namespace OnlineStore.DeviceLibrary
LogUtil
.
info
(
LOGGER
,
StoreName
+
"StopMove"
);
LogUtil
.
info
(
LOGGER
,
StoreName
+
"StopMove"
);
KND
.
IOMove
(
IO_Type
.
Door_Down
,
IO_VALUE
.
LOW
);
KND
.
IOMove
(
IO_Type
.
Door_Down
,
IO_VALUE
.
LOW
);
KND
.
IOMove
(
IO_Type
.
Door_Up
,
IO_VALUE
.
LOW
);
KND
.
IOMove
(
IO_Type
.
Door_Up
,
IO_VALUE
.
LOW
);
AutomaticBaiting
.
StopMove
();
if
(
UseBatchInout
)
{
AutomaticBaiting
.
StopMove
();
}
//HDevelopExport.CloseAllCamera();
//HDevelopExport.CloseAllCamera();
isInPro
=
false
;
isInPro
=
false
;
}
}
...
@@ -1502,8 +1527,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1502,8 +1527,9 @@ namespace OnlineStore.DeviceLibrary
LOGGER
.
Error
(
"定时给服务器发送消息出错:"
,
ex
);
LOGGER
.
Error
(
"定时给服务器发送消息出错:"
,
ex
);
}
}
}
}
HumitureController
.
QueryData
();
//温湿度暂时注释
HumidityProcess
();
//HumitureController.QueryData();
//HumidityProcess();
LedProcess
();
LedProcess
();
isInProcess
=
false
;
isInProcess
=
false
;
}
}
...
...
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean_Partial.cs
查看文件 @
615e6b7
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/acSingleStore/AutomaticBaiting.cs
查看文件 @
615e6b7
...
@@ -10,8 +10,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -10,8 +10,8 @@ namespace OnlineStore.DeviceLibrary
public
partial
class
AutomaticBaiting
public
partial
class
AutomaticBaiting
{
{
/// <summary>
/// <summary>
/// 操作人员是否拿走料盘
/// 操作人员是否拿走料盘
/// </summary>
/// </summary>
public
static
bool
IsGetTrayGo
=
false
;
public
static
bool
IsGetTrayGo
=
false
;
public
static
bool
IsWaitTragGo
=
false
;
public
static
bool
IsWaitTragGo
=
false
;
/// <summary>
/// <summary>
...
@@ -29,6 +29,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -29,6 +29,7 @@ namespace OnlineStore.DeviceLibrary
public
static
StoreMoveInfo
StoreMove
=
null
;
public
static
StoreMoveInfo
StoreMove
=
null
;
public
static
StoreRunStatus
AutoBaitingStatus
=
StoreRunStatus
.
Wait
;
public
static
StoreRunStatus
AutoBaitingStatus
=
StoreRunStatus
.
Wait
;
public
static
bool
IsNeedStartInout
=
false
;
//记录没开门状态下,已经出库的数量
//记录没开门状态下,已经出库的数量
public
static
int
BatchOutStoreCount
=
0
;
public
static
int
BatchOutStoreCount
=
0
;
...
@@ -46,20 +47,26 @@ namespace OnlineStore.DeviceLibrary
...
@@ -46,20 +47,26 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
/// </summary>
public
static
void
TimerProcess
()
public
static
void
TimerProcess
()
{
{
if
(
AutoBaitingStatus
>=
StoreRunStatus
.
Wait
)
try
{
{
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
StoreReset
))
if
(
AutoBaitingStatus
>=
StoreRunStatus
.
Wait
)
{
ResetProcess
();
}
else
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
InStore
))
{
InStoreProcess
();
}
else
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
OutStore
))
{
{
//OutStoreProcess();
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
StoreReset
))
{
ResetProcess
();
}
else
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
InStore
))
{
InStoreProcess
();
}
else
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
OutStore
))
{
//OutStoreProcess();
}
}
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
Name
+
"出错:"
+
ex
.
StackTrace
);
}
}
}
}
...
@@ -115,6 +122,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -115,6 +122,7 @@ namespace OnlineStore.DeviceLibrary
//关闭门,轴回原点,检测
//关闭门,轴回原点,检测
BatchDoorClose
(
true
);
BatchDoorClose
(
true
);
KND
.
IOMove
(
IO_Type
.
SuckingDisc_Work
,
IO_VALUE
.
LOW
);
KND
.
IOMove
(
IO_Type
.
SuckingDisc_Work
,
IO_VALUE
.
LOW
);
CylinderMove
(
IO_Type
.
SuckingDisc_Up
,
IO_Type
.
SuckingDisc_Down
,
true
);
LogUtil
.
info
(
Name
+
"复位中:关闭门锁"
);
LogUtil
.
info
(
Name
+
"复位中:关闭门锁"
);
return
true
;
return
true
;
}
}
...
@@ -136,19 +144,33 @@ namespace OnlineStore.DeviceLibrary
...
@@ -136,19 +144,33 @@ namespace OnlineStore.DeviceLibrary
case
StoreMoveStep
.
AUTO_R01_CloseDoor
:
case
StoreMoveStep
.
AUTO_R01_CloseDoor
:
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_R02_AutoAxisHome
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_R02_AutoAxisHome
);
LogUtil
.
info
(
Name
+
"复位中:批量上下料轴原点返回"
);
LogUtil
.
info
(
Name
+
"复位中:批量上下料轴原点返回"
);
StoreMove
.
TimeOutSeconds
=
120
;
ACAxisHomeMove
(
StoreManager
.
Config
.
Batch_Axis
);
ACAxisHomeMove
(
StoreManager
.
Config
.
Batch_Axis
);
break
;
break
;
case
StoreMoveStep
.
AUTO_R02_AutoAxisHome
:
case
StoreMoveStep
.
AUTO_R02_AutoAxisHome
:
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_R03_AutoAxisHome
);
if
(
IsNeedStartInout
)
LogUtil
.
info
(
Name
+
"复位中:匀速向上运动,检测 是否有料盘"
);
{
ACAxisSpeedMove
(
StoreManager
.
Config
.
Batch_Axis
,
StoreManager
.
Config
.
Batch_Axis
.
TargetSpeed
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_R03_AutoAxisHome
);
LogUtil
.
info
(
Name
+
"复位中:匀速向上运动,检测 是否有料盘"
);
ACAxisSpeedMove
(
StoreManager
.
Config
.
Batch_Axis
,
StoreManager
.
Config
.
Batch_Axis
.
TargetSpeed
);
}
else
{
LogUtil
.
info
(
Name
+
"复位完成"
);
StoreMove
.
EndMove
();
AutoBaitingStatus
=
StoreRunStatus
.
Runing
;
WarnMsg
=
""
;
IsNeedStartInout
=
false
;
}
break
;
break
;
case
StoreMoveStep
.
AUTO_R03_AutoAxisHome
:
case
StoreMoveStep
.
AUTO_R03_AutoAxisHome
:
if
(
KND
.
IOValue
(
IO_Type
.
TrayCheck_LoadMaterial
).
Equals
(
IO_VALUE
.
LOW
))
//if (KND.IOValue(IO_Type.TrayCheck_LoadMaterial).Equals(IO_VALUE.LOW))
if
(
ACServerManager
.
GetLimitPositiveSingle
(
StoreManager
.
Config
.
Batch_Axis
).
Equals
(
1
))
{
{
LogUtil
.
info
(
Name
+
"复位中: 没有料盘,不需要上料,上料轴回0点"
);
LogUtil
.
info
(
Name
+
"复位中: 没有料盘,不需要上料,上料轴回0点"
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_R04_AutoBack
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_R04_AutoBack
);
StoreMove
.
TimeOutSeconds
=
120
;
ACAxisHomeMove
(
StoreManager
.
Config
.
Batch_Axis
);
ACAxisHomeMove
(
StoreManager
.
Config
.
Batch_Axis
);
}
}
else
else
...
@@ -165,6 +187,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -165,6 +187,7 @@ namespace OnlineStore.DeviceLibrary
StoreMove
.
EndMove
();
StoreMove
.
EndMove
();
AutoBaitingStatus
=
StoreRunStatus
.
Runing
;
AutoBaitingStatus
=
StoreRunStatus
.
Runing
;
WarnMsg
=
""
;
WarnMsg
=
""
;
IsNeedStartInout
=
false
;
break
;
break
;
default
:
break
;
default
:
break
;
}
}
...
@@ -343,7 +366,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -343,7 +366,8 @@ namespace OnlineStore.DeviceLibrary
LastSize
=
0
;
LastSize
=
0
;
LastPosId
=
""
;
LastPosId
=
""
;
SuckingDisc_WorkCount
=
0
;
SuckingDisc_WorkCount
=
0
;
if
(
KND
.
IOValue
(
IO_Type
.
TrayCheck_LoadMaterial
).
Equals
(
IO_VALUE
.
HIGH
))
if
(
ACServerManager
.
GetLimitPositiveSingle
(
StoreManager
.
Config
.
Batch_Axis
).
Equals
(
0
))
//if (KND.IOValue(IO_Type.TrayCheck_LoadMaterial).Equals(IO_VALUE.HIGH))
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_I01_ScanCode
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
AUTO_I01_ScanCode
);
LogUtil
.
info
(
Name
+
"入料: 开始扫码 "
);
LogUtil
.
info
(
Name
+
"入料: 开始扫码 "
);
...
...
source/DeviceLibrary/acSingleStore/AutomaticBaiting_Partial.cs
查看文件 @
615e6b7
...
@@ -72,6 +72,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -72,6 +72,7 @@ namespace OnlineStore.DeviceLibrary
StoreMove
.
EndStepWait
();
StoreMove
.
EndStepWait
();
return
;
return
;
}
}
try
{
//当等待超过一分钟时,需要打印提示
//当等待超过一分钟时,需要打印提示
TimeSpan
span
=
DateTime
.
Now
-
StoreMove
.
LastSetpTime
;
TimeSpan
span
=
DateTime
.
Now
-
StoreMove
.
LastSetpTime
;
string
NotOkMsg
=
""
;
string
NotOkMsg
=
""
;
...
@@ -119,12 +120,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -119,12 +120,12 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
wait
.
WaitType
==
8
)
else
if
(
wait
.
WaitType
==
8
)
{
{
IO_VALUE
value
=
(
IO_VALUE
)
ACServerManager
.
GetLimitNegativeSingle
(
wait
.
AxisInfo
.
DeviceName
,
wait
.
AxisInfo
.
GetAxisValue
()
);
IO_VALUE
value
=
(
IO_VALUE
)
ACServerManager
.
GetLimitNegativeSingle
(
wait
.
AxisInfo
);
wait
.
IsEnd
=
wait
.
IoValue
.
Equals
(
value
);
wait
.
IsEnd
=
wait
.
IoValue
.
Equals
(
value
);
}
}
else
if
(
wait
.
WaitType
==
9
)
else
if
(
wait
.
WaitType
==
9
)
{
{
IO_VALUE
value
=
(
IO_VALUE
)
ACServerManager
.
GetLimitPositiveSingle
(
wait
.
AxisInfo
.
DeviceName
,
wait
.
AxisInfo
.
GetAxisValue
()
);
IO_VALUE
value
=
(
IO_VALUE
)
ACServerManager
.
GetLimitPositiveSingle
(
wait
.
AxisInfo
);
wait
.
IsEnd
=
wait
.
IoValue
.
Equals
(
value
);
wait
.
IsEnd
=
wait
.
IoValue
.
Equals
(
value
);
}
}
else
if
(
wait
.
WaitType
==
10
)
else
if
(
wait
.
WaitType
==
10
)
...
@@ -174,6 +175,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -174,6 +175,11 @@ namespace OnlineStore.DeviceLibrary
LogUtil
.
error
(
WarnMsg
);
LogUtil
.
error
(
WarnMsg
);
}
}
StoreManager
.
Store
.
Alarm
(
StoreAlarmType
.
IoSingleTimeOut
,
""
,
WarnMsg
,
StoreMove
.
MoveType
);
StoreManager
.
Store
.
Alarm
(
StoreAlarmType
.
IoSingleTimeOut
,
""
,
WarnMsg
,
StoreMove
.
MoveType
);
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
Name
+
"CheckWait出错:"
+
ex
.
StackTrace
);
}
}
}
}
/// <summary>
/// <summary>
...
@@ -218,16 +224,16 @@ namespace OnlineStore.DeviceLibrary
...
@@ -218,16 +224,16 @@ namespace OnlineStore.DeviceLibrary
{
{
wait
.
IsEnd
=
ACAxisMoveIsEnd
(
wait
.
AxisInfo
,
wait
.
TargetPosition
,
wait
.
TargetSpeed
,
out
msg
);
wait
.
IsEnd
=
ACAxisMoveIsEnd
(
wait
.
AxisInfo
,
wait
.
TargetPosition
,
wait
.
TargetSpeed
,
out
msg
);
}
}
if
(!
wait
.
IsEnd
)
//
if (!wait.IsEnd)
{
//
{
IO_VALUE
value
=
(
IO_VALUE
)
ACServerManager
.
GetHomeSingle
(
wait
.
AxisInfo
.
DeviceName
,
wait
.
AxisInfo
.
GetAxisValue
()
);
// IO_VALUE value = (IO_VALUE)ACServerManager.GetLimitNegativeSingle(wait.AxisInfo
);
if
(
value
.
Equals
(
IO_VALUE
.
HIGH
))
//
if (value.Equals(IO_VALUE.HIGH))
{
//
{
ACServerManager
.
SuddenStop
(
wait
.
AxisInfo
.
DeviceName
,
wait
.
AxisInfo
.
GetAxisValue
());
//
ACServerManager.SuddenStop(wait.AxisInfo.DeviceName, wait.AxisInfo.GetAxisValue());
LogUtil
.
error
(
Name
+
wait
.
ToStr
()
+
"原点返回过程中到达 负限位,直接停止运动"
);
//
LogUtil.error(Name + wait.ToStr() + "原点返回过程中到达 负限位,直接停止运动");
StoreManager
.
Store
.
Alarm
(
StoreAlarmType
.
AxisMoveError
,
StoreManager
.
Store
.
GetAlarmCodeByAxis
(
wait
.
AxisInfo
).
ToString
(),
WarnMsg
,
StoreMove
.
MoveType
);
//
StoreManager.Store.Alarm(StoreAlarmType.AxisMoveError, StoreManager.Store.GetAlarmCodeByAxis(wait.AxisInfo).ToString(), WarnMsg, StoreMove.MoveType);
}
//
}
}
//
}
if
(!
msg
.
Equals
(
""
))
if
(!
msg
.
Equals
(
""
))
{
{
WarnMsg
=
msg
;
WarnMsg
=
msg
;
...
@@ -288,6 +294,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -288,6 +294,10 @@ namespace OnlineStore.DeviceLibrary
if
(
codeList
.
Count
<=
0
)
if
(
codeList
.
Count
<=
0
)
{
{
codeList
=
CodeManager
.
CameraScan
();
codeList
=
CodeManager
.
CameraScan
();
}
else
if
(
StoreManager
.
Store
.
IsDebug
)
{
codeList
=
new
List
<
string
>()
{
"NoCode"
};
LogUtil
.
info
(
Name
+
"未扫到二维码,默认为NoCode"
);
}
}
foreach
(
string
str
in
codeList
)
foreach
(
string
str
in
codeList
)
{
{
...
@@ -356,6 +366,31 @@ namespace OnlineStore.DeviceLibrary
...
@@ -356,6 +366,31 @@ namespace OnlineStore.DeviceLibrary
IsScanCode
=
false
;
IsScanCode
=
false
;
return
;
return
;
}
}
if
(
StoreManager
.
Store
.
IsDebug
)
{
string
posId
=
"1#AC1_1_1_4"
;
LogUtil
.
info
(
Name
+
"调试模式,不需要连接服务器,直接模拟库位号【"
+
posId
+
"】"
);
string
plateH
=
"8"
;
string
plateW
=
"7"
;
if
(
StoreManager
.
Store
.
CanStarInOut
())
{
LastPosId
=
posId
;
IsScanCode
=
false
;
InOutStoreParam
param
=
new
InOutStoreParam
(
message
,
posId
,
plateH
,
plateW
,
0
);
StoreManager
.
Store
.
StartInStoreMove
(
param
,
true
);
//如果当前正在出入库中,需要记录下来,等待空闲时执行
LogUtil
.
info
(
Name
+
" 入库调试模拟:库位号【"
+
posId
+
"】二维码【"
+
message
+
"】 开始入库!"
);
}
else
{
LogUtil
.
info
(
Name
+
" 入库调试模拟:库位号【"
+
posId
+
"】二维码【"
+
message
+
"】 正在忙碌中,无法入库!"
);
IsScanCode
=
false
;
}
return
;
}
// CodeMsg = "收到二维码【 " + message + "】,发送给服务器获取入库PosID";
// CodeMsg = "收到二维码【 " + message + "】,发送给服务器获取入库PosID";
LogUtil
.
info
(
Name
+
"收到二维码【 "
+
message
+
"】,发送给服务器获取入库PosID"
);
LogUtil
.
info
(
Name
+
"收到二维码【 "
+
message
+
"】,发送给服务器获取入库PosID"
);
//发送扫码内容到服务器进行入库操作
//发送扫码内容到服务器进行入库操作
...
...
source/DeviceLibrary/store/AC_Store.cs
查看文件 @
615e6b7
...
@@ -370,8 +370,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -370,8 +370,7 @@ namespace OnlineStore.DeviceLibrary
string
deviceName
=
moveAxis
.
DeviceName
;
string
deviceName
=
moveAxis
.
DeviceName
;
short
axisNo
=
moveAxis
.
GetAxisValue
();
short
axisNo
=
moveAxis
.
GetAxisValue
();
//如果是进出轴,并且光栅被遮挡,直接返回false
//如果是进出轴,并且光栅被遮挡,直接返回false
if
(
NeedCheckSafetyLight
.
Equals
(
2
))
if
(
NeedCheckSafetyLight
.
Equals
(
2
))
{
{
if
(
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SO_10_DeviceToDoor
)
||
if
(
StoreMove
.
MoveStep
.
Equals
(
StoreMoveStep
.
SO_10_DeviceToDoor
)
||
...
@@ -401,7 +400,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -401,7 +400,6 @@ namespace OnlineStore.DeviceLibrary
{
{
LogUtil
.
error
(
LOGGER
,
moveAxis
.
DisplayStr
+
"目标位置["
+
targetPosition
+
"]当前位置["
+
outCount
+
LogUtil
.
error
(
LOGGER
,
moveAxis
.
DisplayStr
+
"目标位置["
+
targetPosition
+
"]当前位置["
+
outCount
+
"],误差过大,重新开始运动,剩余["
+
StoreMove
.
CanWhileCount
+
"]次"
);
"],误差过大,重新开始运动,剩余["
+
StoreMove
.
CanWhileCount
+
"]次"
);
//LogUtil.error(LOGGER, StoreName + " storeMoveStep=" + StoreMove.MoveStep + moveAxis.DisplayStr + "目标位置[" + targetPosition + "]重新开始运动");
ACServerManager
.
AbsMove
(
moveAxis
.
DeviceName
,
moveAxis
.
GetAxisValue
(),
targetPosition
,
targetSpeed
);
ACServerManager
.
AbsMove
(
moveAxis
.
DeviceName
,
moveAxis
.
GetAxisValue
(),
targetPosition
,
targetSpeed
);
StoreMove
.
CanWhileCount
--;
StoreMove
.
CanWhileCount
--;
return
false
;
return
false
;
...
...
source/DeviceLibrary/store/model/StoreMoveInfo.cs
查看文件 @
615e6b7
...
@@ -243,20 +243,20 @@ namespace OnlineStore.DeviceLibrary
...
@@ -243,20 +243,20 @@ namespace OnlineStore.DeviceLibrary
// wait.IsEnd = false;
// wait.IsEnd = false;
// return wait;
// return wait;
//}
//}
/// <summary>
///
//
<summary>
///8= 等待轴的反限位为指定值
///
//
8= 等待轴的反限位为指定值
/// </summary>
///
//
</summary>
public
static
WaitResultInfo
WaitAxistNegativeLimit
(
ConfigMoveAxis
moveAxis
,
IO_VALUE
ioValue
)
//
public static WaitResultInfo WaitAxistNegativeLimit(ConfigMoveAxis moveAxis ,IO_VALUE ioValue)
{
//
{
WaitResultInfo
wait
=
new
WaitResultInfo
();
//
WaitResultInfo wait = new WaitResultInfo();
wait
.
CanWhileMoveCount
=
0
;
//
wait.CanWhileMoveCount = 0;
wait
.
WaitType
=
8
;
//
wait.WaitType = 8;
wait
.
AxisInfo
=
moveAxis
;
//
wait.AxisInfo = moveAxis;
wait
.
IsHomeMove
=
true
;
//
wait.IsHomeMove = true;
wait
.
IoValue
=
ioValue
;
//
wait.IoValue = ioValue;
wait
.
IsEnd
=
false
;
//
wait.IsEnd = false;
return
wait
;
//
return wait;
}
//
}
/// <summary>
/// <summary>
///9= 等待轴的正限位为指定值
///9= 等待轴的正限位为指定值
/// </summary>
/// </summary>
...
...
source/LoadCVSLibrary/storeConfig/config/Store_IO_Type.cs
查看文件 @
615e6b7
...
@@ -150,11 +150,11 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -150,11 +150,11 @@ namespace OnlineStore.LoadCSVLibrary
/// <summary>
/// <summary>
/// 门锁气缸打开端 Door_Open X13 DI-13
/// 门锁气缸打开端 Door_Open X13 DI-13
/// </summary>
/// </summary>
public
static
string
BatchDoor_Open
=
"Door_Open"
;
public
static
string
BatchDoor_Open
=
"
Batch
Door_Open"
;
/// <summary>
/// <summary>
/// 门锁气缸关闭端 Door_Close X14 DI-14
/// 门锁气缸关闭端 Door_Close X14 DI-14
/// </summary>
/// </summary>
public
static
string
BatchDoor_Close
=
"Door_Close"
;
public
static
string
BatchDoor_Close
=
"
Batch
Door_Close"
;
/// <summary>
/// <summary>
/// 料盘检测2(料叉机构) TrayCheck_Fixture X15 DI-15
/// 料盘检测2(料叉机构) TrayCheck_Fixture X15 DI-15
/// </summary>
/// </summary>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论