Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
ACSingleStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 8f4fffc6
由
几米阳光
编写于
2019-03-11 14:09:28 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
灯状态修改
1 个父辈
a8dda7d4
显示空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
74 行增加
和
84 行删除
source/ACSingleStore/记录.txt
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean.cs
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean_Partial.cs
source/DeviceLibrary/store/StoreStep.cs
source/ACSingleStore/记录.txt
查看文件 @
8f4fffc
...
@@ -53,13 +53,13 @@
...
@@ -53,13 +53,13 @@
3.扫码不需要每次都关闭相机。
3.扫码不需要每次都关闭相机。
增加功能:
20190305
增加功能:
1,复位时增加料盘感应功能,感应到料盘时给提示且增加出库功能
1,复位时增加料盘感应功能,感应到料盘时给提示且增加出库功能
2,出库完成时,通过料仓窗口高度感应检测出料有无料盘,无料盘提示报警。
2,出库完成时,通过料仓窗口高度感应检测出料有无料盘,无料盘提示报警。
20190306修改
通电和待机白灯亮,出入库过程中绿灯亮,报警黄灯亮2秒灭掉后红灯亮
...
...
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean.cs
查看文件 @
8f4fffc
...
@@ -274,7 +274,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -274,7 +274,7 @@ namespace OnlineStore.DeviceLibrary
CurrInOutACount
=
0
;
CurrInOutACount
=
0
;
KNDIOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
KNDIOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
HIGH
);
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
KNDIOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
LOW
);
KNDIOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
LOW
);
//复位之前先停止运行
//复位之前先停止运行
if
(
isNeedClearAuto
)
if
(
isNeedClearAuto
)
...
@@ -778,7 +778,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -778,7 +778,7 @@ namespace OnlineStore.DeviceLibrary
LogUtil
.
info
(
LOGGER
,
StoreName
+
",停止运行,总运行时间:"
+
span
.
ToString
());
LogUtil
.
info
(
LOGGER
,
StoreName
+
",停止运行,总运行时间:"
+
span
.
ToString
());
}
}
private
DateTime
LastAlarmTime
=
DateTime
.
Now
;
public
override
void
Alarm
(
StoreAlarmType
alarmType
,
string
alarmDetial
,
string
alarmMsg
,
StoreMoveType
storeMoveType
)
public
override
void
Alarm
(
StoreAlarmType
alarmType
,
string
alarmDetial
,
string
alarmMsg
,
StoreMoveType
storeMoveType
)
{
{
SaveAlarmInfo
(
alarmType
,
alarmDetial
,
alarmMsg
,
storeMoveType
);
SaveAlarmInfo
(
alarmType
,
alarmDetial
,
alarmMsg
,
storeMoveType
);
...
@@ -790,6 +790,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -790,6 +790,7 @@ namespace OnlineStore.DeviceLibrary
}
}
LogUtil
.
error
(
LOGGER
,
StoreName
+
" 报警,报警类型:"
+
alarmType
);
LogUtil
.
error
(
LOGGER
,
StoreName
+
" 报警,报警类型:"
+
alarmType
);
LastAlarmTime
=
DateTime
.
Now
;
this
.
alarmType
=
alarmType
;
this
.
alarmType
=
alarmType
;
if
(
alarmType
.
Equals
(
StoreAlarmType
.
AxisAlarm
)
|
alarmType
.
Equals
(
StoreAlarmType
.
AxisMoveError
))
if
(
alarmType
.
Equals
(
StoreAlarmType
.
AxisAlarm
)
|
alarmType
.
Equals
(
StoreAlarmType
.
AxisMoveError
))
{
{
...
@@ -874,48 +875,66 @@ namespace OnlineStore.DeviceLibrary
...
@@ -874,48 +875,66 @@ namespace OnlineStore.DeviceLibrary
{
{
try
try
{
{
// 灯状态修改:
//20190306修改:通电和待机白灯亮,出入库过程中绿灯亮,报警黄灯亮2秒灭掉后红灯亮
// 红灯:报警故障时常亮
// 黄灯:待机时闪烁
// 绿灯:正常运行或待机时常亮
if
(
alarmType
.
Equals
(
StoreAlarmType
.
None
))
if
(
alarmType
.
Equals
(
StoreAlarmType
.
None
))
{
{
//黄灯常亮
//出入库过程中绿灯亮,其他情况下绿灯灭
if
(
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
InStore
)
||
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
OutStore
))
{
if
(
KNDIOValue
(
IO_Type
.
AutoRun_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
if
(
KNDIOValue
(
IO_Type
.
AutoRun_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
{
{
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
HIGH
);
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
HIGH
);
}
}
//空闲中黄灯闪
if
((
StoreMove
.
MoveType
.
Equals
(
StoreMoveType
.
None
)))
{
if
(
KNDIOValue
(
IO_Type
.
RunSign_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
KNDIOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
LOW
);
}
}
else
else
{
{
KNDIOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
HIGH
);
if
(
KNDIOValue
(
IO_Type
.
AutoRun_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
}
}
}
}
//红灯黄灯关闭
if
(
KNDIOValue
(
IO_Type
.
Alarm_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
if
(
KNDIOValue
(
IO_Type
.
Alarm_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
KNDIOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
KNDIOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
}
}
if
(
KNDIOValue
(
IO_Type
.
RunSign_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
}
}
}
else
else
{
{
//报警 红灯亮,绿灯黄灯灭
//报警关闭绿灯
if
(
KNDIOValue
(
IO_Type
.
AutoRun_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
}
//判断报警时间,报警前两秒黄灯亮,后面绿灯亮
TimeSpan
span
=
DateTime
.
Now
-
LastAlarmTime
;
if
(
span
.
TotalSeconds
>
2
)
{
//红灯亮
if
(
KNDIOValue
(
IO_Type
.
Alarm_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
if
(
KNDIOValue
(
IO_Type
.
Alarm_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
{
{
KNDIOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
HIGH
);
KNDIOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
HIGH
);
}
}
if
(
KNDIOValue
(
IO_Type
.
AutoRun_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
if
(
KNDIOValue
(
IO_Type
.
RunSign_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
KNDIOMove
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
LOW
);
KNDIOMove
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
LOW
);
}
}
if
(
KNDIOValue
(
IO_Type
.
RunSign_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
}
else
{
{
KNDIOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
if
(
KNDIOValue
(
IO_Type
.
RunSign_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
{
KNDIOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
HIGH
);
}
if
(
KNDIOValue
(
IO_Type
.
Alarm_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
KNDIOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
}
}
}
}
}
}
}
...
@@ -928,89 +947,49 @@ namespace OnlineStore.DeviceLibrary
...
@@ -928,89 +947,49 @@ namespace OnlineStore.DeviceLibrary
//{
//{
// try
// try
// {
// {
// // 机器状态 顶灯显示
// //20190306修改:通电和待机白灯亮,出入库过程中绿灯亮,报警黄灯亮2秒灭掉后红灯亮
// // 绿 黄 红
// // 灯状态修改:
// //机器复位中 闪 灭 灭
// // 红灯:报警故障时常亮
// //机器待机中 亮 灭 灭
// // 黄灯:待机时闪烁
// //机器出入库中 闪 闪 灭
// // 绿灯:正常运行或待机时常亮
// //温湿度超限报警中 亮 闪 灭
// if (alarmType.Equals(StoreAlarmType.None))
// //温湿度超限报警中超过30分钟 亮 闪 闪
// //机器未启动 灭 灭 灭
// //机器设备故障(非温湿度)报警 亮 灭 闪
// //报警时只需要亮红灯
// DateTime time = DateTime.Now;
// bool isTemp30M = false;
// if (TempOrHumidityIsAlarm)
// {
// {
//
TimeSpan span = DateTime.Now - TempAlarmTime;
//
//黄灯常亮
// if (
span.Minutes > 30
)
// if (
KNDIOValue(IO_Type.AutoRun_HddLed).Equals(IO_VALUE.LOW)
)
// {
// {
// isTemp30M = true;
// KNDIOMove(IO_Type.AutoRun_HddLed, IO_VALUE.HIGH);
// }
// }
// }
// bool isNeedAlarmLed = false;
// //空闲中黄灯闪
// //报警灯
// if ((StoreMove.MoveType.Equals(StoreMoveType.None)))
// if (!alarmType.Equals(StoreAlarmType.None) || isTemp30M)
// {
// {
// isNeedAlarmLed = true;
// if (KNDIOValue(IO_Type.RunSign_HddLed).Equals(IO_VALUE.HIGH))
// }
// if (isNeedAlarmLed && KNDIOValue(IO_Type.Alarm_HddLed).Equals(IO_VALUE.LOW))
// {
// {
//
KNDIOMove(IO_Type.Alarm_HddLed, IO_VALUE.HIGH
);
//
KNDIOMove(IO_Type.RunSign_HddLed, IO_VALUE.LOW
);
// }
// }
// else
// else
// {
// {
// if (KNDIOValue(IO_Type.Alarm_HddLed).Equals(IO_VALUE.HIGH))
// KNDIOMove(IO_Type.RunSign_HddLed, IO_VALUE.HIGH);
// {
// KNDIOMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW);
// }
// }
// }
// //报警时绿灯和黄灯灭
// if (isNeedAlarmLed)
// {
// if (KNDIOValue(IO_Type.AutoRun_HddLed).Equals(IO_VALUE.HIGH))
// {
// KNDIOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW);
// }
// }
// if (KNDIOValue(IO_Type.
RunSign
_HddLed).Equals(IO_VALUE.HIGH))
// if (KNDIOValue(IO_Type.
Alarm
_HddLed).Equals(IO_VALUE.HIGH))
// {
// {
// KNDIOMove(IO_Type.A
utoRun
_HddLed, IO_VALUE.LOW);
// KNDIOMove(IO_Type.A
larm
_HddLed, IO_VALUE.LOW);
// }
// }
// return;
// }
// //绿灯闪
// if ((StoreMove.MoveType.Equals(StoreMoveType.InStore) || StoreMove.MoveType.Equals(StoreMoveType.OutStore)
// || storeRunStatus.Equals(StoreRunStatus.HomeMoving) || storeRunStatus.Equals(StoreRunStatus.Reset))
// && KNDIOValue(IO_Type.AutoRun_HddLed).Equals(IO_VALUE.HIGH))
// {
// KNDIOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW);
// }
// }
// else
// else
// {
// {
// //绿灯亮
// //报警 红灯亮,绿灯黄灯灭
// KNDIOMove(IO_Type.AutoRun_HddLed, IO_VALUE.HIGH);
// if (KNDIOValue(IO_Type.Alarm_HddLed).Equals(IO_VALUE.LOW))
// }
// //黄灯
// if (StoreMove.MoveType.Equals(StoreMoveType.InStore) || StoreMove.MoveType.Equals(StoreMoveType.OutStore) || TempOrHumidityIsAlarm || isTemp30M)
// {
// if (KNDIOValue(IO_Type.RunSign_HddLed).Equals(IO_VALUE.HIGH))
// {
// {
// KNDIOMove(IO_Type.
RunSign_HddLed, IO_VALUE.LOW
);
// KNDIOMove(IO_Type.
Alarm_HddLed, IO_VALUE.HIGH
);
// }
// }
//
else
//
if (KNDIOValue(IO_Type.AutoRun_HddLed).Equals(IO_VALUE.HIGH))
// {
// {
// KNDIOMove(IO_Type.RunSign_HddLed, IO_VALUE.HIGH);
// KNDIOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW);
// }
// }
// }
// else
// {
// if (KNDIOValue(IO_Type.RunSign_HddLed).Equals(IO_VALUE.HIGH))
// if (KNDIOValue(IO_Type.RunSign_HddLed).Equals(IO_VALUE.HIGH))
// {
// {
// KNDIOMove(IO_Type.
RunSig
n_HddLed, IO_VALUE.LOW);
// KNDIOMove(IO_Type.
AutoRu
n_HddLed, IO_VALUE.LOW);
// }
// }
// }
// }
// }
// }
...
@@ -1019,6 +998,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1019,6 +998,7 @@ namespace OnlineStore.DeviceLibrary
// LOGGER.Error(StoreName + "灯处理定时器出错:", ex);
// LOGGER.Error(StoreName + "灯处理定时器出错:", ex);
// }
// }
//}
//}
private
IO_VALUE
lastAutoRun
=
IO_VALUE
.
LOW
;
private
IO_VALUE
lastAutoRun
=
IO_VALUE
.
LOW
;
private
IO_VALUE
lastAirValue
=
IO_VALUE
.
LOW
;
private
IO_VALUE
lastAirValue
=
IO_VALUE
.
LOW
;
public
void
IoCheckProcess
()
public
void
IoCheckProcess
()
...
...
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean_Partial.cs
查看文件 @
8f4fffc
...
@@ -729,6 +729,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -729,6 +729,11 @@ 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
);
CloseDoorAndWait
();
CloseDoorAndWait
();
//把料盘放到门口时出库完成
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PositionNum
:
""
;
lastPosId
=
posId
;
lastPosIdStatus
=
StoreStatus
.
OutStoreEnd
;
storeStatus
=
StoreStatus
.
OutStoreEnd
;
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_13_GoBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_13_GoBack
)
{
{
...
...
source/DeviceLibrary/store/StoreStep.cs
查看文件 @
8f4fffc
...
@@ -104,6 +104,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -104,6 +104,11 @@ namespace OnlineStore.DeviceLibrary
/// 重置中(原点返回和重置都发此状态)
/// 重置中(原点返回和重置都发此状态)
/// </summary>
/// </summary>
ResetMove
=
13
,
ResetMove
=
13
,
/// <summary>
/// 出库完成,叉子从门口退回之后更新为此状态
/// </summary>
OutStoreEnd
=
14
,
}
}
/// <summary>
/// <summary>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论