Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
ACSingleStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 7bdb0072
由
LN
编写于
2019-10-25 11:11:33 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
IOip配置方式修改
1 个父辈
a9301e4f
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
97 行增加
和
55 行删除
dll/CodeLibrary.dll
source/ACSingleStore/FrmIOStatus.cs
source/ACSingleStore/FrmStoreBox.cs
source/DeviceLibrary/IO/AIOBOX/AIOBOXManager.cs
source/DeviceLibrary/IO/IOManager.cs
source/DeviceLibrary/IO/KangNaiDe/KNDManager.cs
source/DeviceLibrary/StoreConfig/AC/StoreConfig.csv
source/DeviceLibrary/acSingleStore/StoreManager.cs
source/LoadCVSLibrary/storeConfig/ConfigItemBase.cs
source/LoadCVSLibrary/storeConfig/config/StoreConfig.cs
dll/CodeLibrary.dll
查看文件 @
7bdb007
此文件类型无法预览
source/ACSingleStore/FrmIOStatus.cs
查看文件 @
7bdb007
...
@@ -136,7 +136,7 @@ namespace OnlineStore.ACSingleStore
...
@@ -136,7 +136,7 @@ namespace OnlineStore.ACSingleStore
{
{
// txtIp.Text = io.DeviceName;
// txtIp.Text = io.DeviceName;
txtDOIndex
.
Text
=
io
.
GetIOAddr
().
ToString
();
txtDOIndex
.
Text
=
io
.
GetIOAddr
().
ToString
();
txtDoName
.
Text
=
io
.
DeviceName
;
txtDoName
.
Text
=
io
.
IO_IP
;
txtSlaveId
.
Text
=
io
.
SlaveID
.
ToString
();
txtSlaveId
.
Text
=
io
.
SlaveID
.
ToString
();
IOTextControl
newControl
=
DOControlList
[
io
.
ProName
];
IOTextControl
newControl
=
DOControlList
[
io
.
ProName
];
selectControl
=
newControl
;
selectControl
=
newControl
;
...
...
source/ACSingleStore/FrmStoreBox.cs
查看文件 @
7bdb007
...
@@ -67,6 +67,7 @@ namespace OnlineStore.ACSingleStore
...
@@ -67,6 +67,7 @@ namespace OnlineStore.ACSingleStore
if
(
store
==
null
)
if
(
store
==
null
)
{
{
LogUtil
.
error
(
LOGGER
,
"找不到对应的料仓"
);
LogUtil
.
error
(
LOGGER
,
"找不到对应的料仓"
);
this
.
Close
();
return
;
return
;
}
}
//txtSpeed.Text = store.Config.CompressAxis_EndSpeed.ToString();
//txtSpeed.Text = store.Config.CompressAxis_EndSpeed.ToString();
...
...
source/DeviceLibrary/IO/AIOBOX/AIOBOXManager.cs
查看文件 @
7bdb007
...
@@ -451,11 +451,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -451,11 +451,11 @@ namespace OnlineStore.DeviceLibrary
{
{
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DI
))
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DI
))
{
{
return
GetDIValue
(
configIO
.
DeviceName
,
configIO
.
SlaveID
,
configIO
.
GetIOAddr
());
return
GetDIValue
(
configIO
.
IO_IP
,
configIO
.
SlaveID
,
configIO
.
GetIOAddr
());
}
}
else
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DO
))
else
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DO
))
{
{
return
GetDOValue
(
configIO
.
DeviceName
,
configIO
.
SlaveID
,
configIO
.
GetIOAddr
());
return
GetDOValue
(
configIO
.
IO_IP
,
configIO
.
SlaveID
,
configIO
.
GetIOAddr
());
}
}
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
...
...
source/DeviceLibrary/IO/IOManager.cs
查看文件 @
7bdb007
...
@@ -23,7 +23,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -23,7 +23,7 @@ namespace OnlineStore.DeviceLibrary
{
{
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDOList
[
ioType
];
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDOList
[
ioType
];
//DateTime time = DateTime.Now;
//DateTime time = DateTime.Now;
instance
.
WriteSingleDO
(
configIo
.
DeviceName
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
(),
ioValue
);
instance
.
WriteSingleDO
(
configIo
.
IO_IP
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
(),
ioValue
);
//TimeSpan span = DateTime.Now - time;
//TimeSpan span = DateTime.Now - time;
//if (span.TotalMilliseconds > 100)
//if (span.TotalMilliseconds > 100)
//{
//{
...
@@ -43,13 +43,13 @@ namespace OnlineStore.DeviceLibrary
...
@@ -43,13 +43,13 @@ namespace OnlineStore.DeviceLibrary
if
(
StoreManager
.
Config
.
StoreDIList
.
ContainsKey
(
ioType
))
if
(
StoreManager
.
Config
.
StoreDIList
.
ContainsKey
(
ioType
))
{
{
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDIList
[
ioType
];
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDIList
[
ioType
];
ioValue
=
instance
.
GetDIValue
(
configIo
.
DeviceName
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
());
ioValue
=
instance
.
GetDIValue
(
configIo
.
IO_IP
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
());
//UpdateDoValue(ioType, ioValue);
//UpdateDoValue(ioType, ioValue);
}
}
else
if
(
StoreManager
.
Config
.
StoreDOList
.
ContainsKey
(
ioType
))
else
if
(
StoreManager
.
Config
.
StoreDOList
.
ContainsKey
(
ioType
))
{
{
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDOList
[
ioType
];
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDOList
[
ioType
];
ioValue
=
instance
.
GetDOValue
(
configIo
.
DeviceName
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
());
ioValue
=
instance
.
GetDOValue
(
configIo
.
IO_IP
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
());
}
}
else
else
{
{
...
@@ -63,7 +63,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -63,7 +63,7 @@ namespace OnlineStore.DeviceLibrary
if
(
StoreManager
.
Config
.
StoreDOList
.
ContainsKey
(
ioType
))
if
(
StoreManager
.
Config
.
StoreDOList
.
ContainsKey
(
ioType
))
{
{
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDOList
[
ioType
];
ConfigIO
configIo
=
StoreManager
.
Config
.
StoreDOList
[
ioType
];
ioValue
=
instance
.
GetDOValue
(
configIo
.
DeviceName
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
());
ioValue
=
instance
.
GetDOValue
(
configIo
.
IO_IP
,
configIo
.
SlaveID
,
configIo
.
GetIOAddr
());
}
}
else
else
{
{
...
...
source/DeviceLibrary/IO/KangNaiDe/KNDManager.cs
查看文件 @
7bdb007
...
@@ -367,9 +367,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -367,9 +367,9 @@ namespace OnlineStore.DeviceLibrary
{
{
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DI
))
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DI
))
{
{
if
(
DIValueMap
.
ContainsKey
(
configIO
.
DeviceName
))
if
(
DIValueMap
.
ContainsKey
(
configIO
.
IO_IP
))
{
{
List
<
KNDIO
>
allIo
=
new
List
<
KNDIO
>(
DIValueMap
[
configIO
.
DeviceName
]);
List
<
KNDIO
>
allIo
=
new
List
<
KNDIO
>(
DIValueMap
[
configIO
.
IO_IP
]);
List
<
KNDIO
>
list
=
(
from
m
in
allIo
where
m
.
IOAddress
.
Equals
(
configIO
.
GetIOAddr
())
select
m
).
ToList
<
KNDIO
>();
List
<
KNDIO
>
list
=
(
from
m
in
allIo
where
m
.
IOAddress
.
Equals
(
configIO
.
GetIOAddr
())
select
m
).
ToList
<
KNDIO
>();
if
(
list
.
Count
>
0
)
if
(
list
.
Count
>
0
)
{
{
...
@@ -379,9 +379,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -379,9 +379,9 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DO
))
else
if
(
configIO
.
ProType
.
Equals
(
ConfigItemType
.
DO
))
{
{
if
(
DOValueMap
.
ContainsKey
(
configIO
.
DeviceName
))
if
(
DOValueMap
.
ContainsKey
(
configIO
.
IO_IP
))
{
{
List
<
KNDIO
>
allIo
=
new
List
<
KNDIO
>(
DOValueMap
[
configIO
.
DeviceName
]);
List
<
KNDIO
>
allIo
=
new
List
<
KNDIO
>(
DOValueMap
[
configIO
.
IO_IP
]);
List
<
KNDIO
>
list
=
(
from
m
in
allIo
where
m
.
SlaveId
.
Equals
(
configIO
.
SlaveID
)
&&
m
.
IOAddress
.
Equals
(
configIO
.
GetIOAddr
())
select
m
).
ToList
<
KNDIO
>();
List
<
KNDIO
>
list
=
(
from
m
in
allIo
where
m
.
SlaveId
.
Equals
(
configIO
.
SlaveID
)
&&
m
.
IOAddress
.
Equals
(
configIO
.
GetIOAddr
())
select
m
).
ToList
<
KNDIO
>();
if
(
list
.
Count
>
0
)
if
(
list
.
Count
>
0
)
{
{
...
...
source/DeviceLibrary/StoreConfig/AC/StoreConfig.csv
查看文件 @
7bdb007
类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID,
类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID,
DI,急停,SuddenStop_BTN,0,192.168.200.11,0,急停,X01,DI-01,0,
PRO,IO模块对应的DI数量,IO_DILength,192.168.200.11#8,,,,,,,
DI,复位,Reset_BTN,1,192.168.200.11,0,复位,X02,DI-02,0,
PRO,模块对应的DO数量,IO_DOLength,192.168.200.11#8,,,,,,,
DI,门禁,DoorLimit,2,192.168.200.11,0,门禁,X03,DI-03,0,
PRO,是否有仓门,HasDoor,1,,,,,,,
DI,料盘检测1(进料口),TrayCheck_Door,3,192.168.200.11,0,料盘检测1(进料口),X04,DI-04,0,
PRO,IO模块IP,PRO_AOI_IP_1,192.168.200.11,,,,,,,
DI,料盘检测2(料叉),TrayCheck_Fixture,4,192.168.200.11,0,料盘检测2(料叉),X05,DI-05,0,
,,,,,,,,,,
DI,气压检测,Airpressure_Check,5,192.168.200.11,0,气压检测,X06,DI-06,0,
DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0,
DI,进料口门上升端,Door_Up,6,192.168.200.11,0,进料口门上升端,X07,DI-07,0,
DI,复位,Reset_BTN,1,PRO_AOI_IP_1,0,复位,X02,DI-02,0,
DI,进料口门下降端,Door_Down,7,192.168.200.11,0,进料口门下降端,X08,DI-08,0,
DI,门禁,DoorLimit,2,PRO_AOI_IP_1,0,门禁,X03,DI-03,0,
DO,自动指示灯,AutoRun_HddLed,0,192.168.200.11,0,自动指示灯,Y01,DO-01,0,
DI,料盘检测1(进料口),TrayCheck_Door,3,PRO_AOI_IP_1,0,料盘检测1(进料口),X04,DI-04,0,
DO,故障指示灯,Alarm_HddLed,1,192.168.200.11,0,故障指示灯,Y02,DO-02,0,
DI,料盘检测2(料叉),TrayCheck_Fixture,4,PRO_AOI_IP_1,0,料盘检测2(料叉),X05,DI-05,0,
DO,待机指示灯,RunSign_HddLed,2,192.168.200.11,0,待机指示灯,Y03,DO-03,0,
DI,气压检测,Airpressure_Check,5,PRO_AOI_IP_1,0,气压检测,X06,DI-06,0,
DO,料仓运转ON,Run_Signal,3,192.168.200.11,0,料仓运转ON,Y04,DO-04,0,
DI,进料口门上升端,Door_Up,6,PRO_AOI_IP_1,0,进料口门上升端,X07,DI-07,0,
DO,轴2刹车电源ON,Axis_Brake,4,192.168.200.11,0,轴2刹车电源ON,Y05,DO-05,0,
DI,进料口门下降端,Door_Down,7,PRO_AOI_IP_1,0,进料口门下降端,X08,DI-08,0,
DO,料仓吹气SOL,StartOrStopBlow,5,192.168.200.11,0,料仓吹气SOL,Y06,DO-06,0,
DO,自动指示灯,AutoRun_HddLed,0,PRO_AOI_IP_1,0,自动指示灯,Y01,DO-01,0,
DO,进料口门上升SOL,Door_Up,6,192.168.200.11,0,进料口门上升SOL,Y07,DO-07,0,
DO,故障指示灯,Alarm_HddLed,1,PRO_AOI_IP_1,0,故障指示灯,Y02,DO-02,0,
DO,进料口门下降SOL,Door_Down,7,192.168.200.11,0,进料口门下降SOL,Y08,DO-08,0,
DO,待机指示灯,RunSign_HddLed,2,PRO_AOI_IP_1,0,待机指示灯,Y03,DO-03,0,
DO,料仓运转ON,Run_Signal,3,PRO_AOI_IP_1,0,料仓运转ON,Y04,DO-04,0,
DO,轴2刹车电源ON,Axis_Brake,4,PRO_AOI_IP_1,0,轴2刹车电源ON,Y05,DO-05,0,
DO,料仓吹气SOL,StartOrStopBlow,5,PRO_AOI_IP_1,0,料仓吹气SOL,Y06,DO-06,0,
DO,进料口门上升SOL,Door_Up,6,PRO_AOI_IP_1,0,进料口门上升SOL,Y07,DO-07,0,
DO,进料口门下降SOL,Door_Down,7,PRO_AOI_IP_1,0,进料口门下降SOL,Y08,DO-08,0,
AXIS,(轴一)旋转轴,Middle_Axis,1,COM1,0,,,,,
AXIS,(轴一)旋转轴,Middle_Axis,1,COM1,0,,,,,
AXIS,(轴二)升降轴轴,UpDown_Axis,2,COM1,0,,,,,
AXIS,(轴二)升降轴轴,UpDown_Axis,2,COM1,0,,,,,
AXIS,(轴三)进出轴,InOut_Axis,3,COM1,0,,,,,
AXIS,(轴三)进出轴,InOut_Axis,3,COM1,0,,,,,
...
@@ -96,6 +101,4 @@ PRO,每次吹气的时间(分钟),BlowAir_Time,10,,,,,,,
...
@@ -96,6 +101,4 @@ PRO,每次吹气的时间(分钟),BlowAir_Time,10,,,,,,,
PRO,两次吹气间隔(分钟),BlowAir_Interval,10,,,,,,,
PRO,两次吹气间隔(分钟),BlowAir_Interval,10,,,,,,,
PRO,温湿度端口号,Humiture_Port,COM2,,,,,,,
PRO,温湿度端口号,Humiture_Port,COM2,,,,,,,
,,,,,,,,, ,
,,,,,,,,, ,
PRO,IO模块对应的DI数量,IO_DILength,192.168.200.11#8,,,,,, ,
,,,,,,,,, ,
PRO,模块对应的DO数量,IO_DOLength,192.168.200.11#8,,,,,,,
PRO,是否有仓门,HasDoor,1,,,,,,,
source/DeviceLibrary/acSingleStore/StoreManager.cs
查看文件 @
7bdb007
...
@@ -48,6 +48,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -48,6 +48,7 @@ namespace OnlineStore.DeviceLibrary
{
{
try
try
{
{
StoreConfig
.
ProIOIpMap
=
new
Dictionary
<
string
,
string
>();
if
(!
isInit
)
if
(!
isInit
)
{
{
string
server
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
http_server
);
string
server
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
http_server
);
...
...
source/LoadCVSLibrary/storeConfig/ConfigItemBase.cs
查看文件 @
7bdb007
...
@@ -32,14 +32,14 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -32,14 +32,14 @@ namespace OnlineStore.LoadCSVLibrary
/// 属性值
/// 属性值
/// </summary>
/// </summary>
[
CSVAttribute
(
"属性值"
)]
[
CSVAttribute
(
"属性值"
)]
public
string
ProVale
{
get
;
set
;
}
public
string
ProVal
u
e
{
get
;
set
;
}
public
ushort
GetIOAddr
()
public
ushort
GetIOAddr
()
{
{
ushort
value
=
0
;
ushort
value
=
0
;
try
try
{
{
value
=
(
ushort
)
Convert
.
ToInt32
(
ProVale
);
value
=
(
ushort
)
Convert
.
ToInt32
(
ProVal
u
e
);
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
{
{
...
@@ -49,20 +49,20 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -49,20 +49,20 @@ namespace OnlineStore.LoadCSVLibrary
}
}
public
virtual
int
GetValue
()
public
virtual
int
GetValue
()
{
{
if
(
ProVale
.
Equals
(
""
))
if
(
ProVal
u
e
.
Equals
(
""
))
{
{
return
-
1
;
return
-
1
;
}
}
return
Convert
.
ToInt32
(
ProVale
);
return
Convert
.
ToInt32
(
ProVal
u
e
);
}
}
public
override
string
ToString
()
public
override
string
ToString
()
{
{
return
"ConfigBase。"
+
"类型:"
+
ProType
+
",说明:"
+
Explain
+
",名称:"
+
ProName
+
",属性值:"
+
ProVale
;
return
"ConfigBase。"
+
"类型:"
+
ProType
+
",说明:"
+
Explain
+
",名称:"
+
ProName
+
",属性值:"
+
ProVal
u
e
;
}
}
public
virtual
void
CheckField
()
public
virtual
void
CheckField
()
{
{
if
(
String
.
IsNullOrEmpty
(
ProType
)
||
String
.
IsNullOrEmpty
(
ProName
)
||
String
.
IsNullOrEmpty
(
ProVale
))
if
(
String
.
IsNullOrEmpty
(
ProType
)
||
String
.
IsNullOrEmpty
(
ProName
)
||
String
.
IsNullOrEmpty
(
ProVal
u
e
))
{
{
throw
new
CVSFieldNotMatchingExection
(
ToString
()
+
",【类型:ProType】【名称:ProName】【属性值:ProVale】必须配置值!"
);
throw
new
CVSFieldNotMatchingExection
(
ToString
()
+
",【类型:ProType】【名称:ProName】【属性值:ProVale】必须配置值!"
);
}
}
...
@@ -168,20 +168,20 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -168,20 +168,20 @@ namespace OnlineStore.LoadCSVLibrary
/// <returns></returns>
/// <returns></returns>
public
short
GetAxisValue
()
public
short
GetAxisValue
()
{
{
if
(
ProVal
e
.
Equals
(
""
)
||
ProVal
e
.
Equals
(
"-1"
))
if
(
ProVal
ue
.
Equals
(
""
)
||
ProValu
e
.
Equals
(
"-1"
))
{
{
return
-
1
;
return
-
1
;
}
}
return
(
short
)
Convert
.
ToInt32
(
ProVale
);
return
(
short
)
Convert
.
ToInt32
(
ProVal
u
e
);
}
}
public
override
string
ToString
()
public
override
string
ToString
()
{
{
return
"ConfigMoveAxis。"
+
"类型:"
+
ProType
+
",说明:"
+
Explain
+
",名称:"
+
ProName
+
",属性值:"
+
ProVale
+
",设备名称:"
+
DeviceName
;
return
"ConfigMoveAxis。"
+
"类型:"
+
ProType
+
",说明:"
+
Explain
+
",名称:"
+
ProName
+
",属性值:"
+
ProVal
u
e
+
",设备名称:"
+
DeviceName
;
}
}
public
override
void
CheckField
()
public
override
void
CheckField
()
{
{
if
(
String
.
IsNullOrEmpty
(
ProType
)
||
String
.
IsNullOrEmpty
(
ProName
)
||
String
.
IsNullOrEmpty
(
DeviceName
)
||
String
.
IsNullOrEmpty
(
ProVale
))
if
(
String
.
IsNullOrEmpty
(
ProType
)
||
String
.
IsNullOrEmpty
(
ProName
)
||
String
.
IsNullOrEmpty
(
DeviceName
)
||
String
.
IsNullOrEmpty
(
ProVal
u
e
))
{
{
throw
new
CVSFieldNotMatchingExection
(
ToString
()
+
",【类型:ProType】【名称:ProName】【属性值:ProVale】【设备名称:DeviceName】必须配置值!"
);
throw
new
CVSFieldNotMatchingExection
(
ToString
()
+
",【类型:ProType】【名称:ProName】【属性值:ProVale】【设备名称:DeviceName】必须配置值!"
);
}
}
...
@@ -208,6 +208,28 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -208,6 +208,28 @@ namespace OnlineStore.LoadCSVLibrary
{
{
SlaveID
=
0
;
SlaveID
=
0
;
}
}
private
string
IP
=
""
;
/// <summary>
/// 设备IP
/// </summary>
public
string
IO_IP
{
get
{
if
(
String
.
IsNullOrEmpty
(
IP
))
{
if
(
StoreConfig
.
ProIOIpMap
!=
null
&&
StoreConfig
.
ProIOIpMap
.
ContainsKey
(
DeviceName
))
{
IP
=
StoreConfig
.
ProIOIpMap
[
DeviceName
];
}
else
{
IP
=
DeviceName
;
}
}
return
IP
;
}
}
/// <summary>
/// <summary>
/// 设备名称
/// 设备名称
/// </summary>
/// </summary>
...
@@ -262,26 +284,26 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -262,26 +284,26 @@ namespace OnlineStore.LoadCSVLibrary
}
}
try
try
{
{
if
(
ProVal
e
.
Equals
(
""
)
||
ProVal
e
.
Equals
(
"-1"
))
if
(
ProVal
ue
.
Equals
(
""
)
||
ProValu
e
.
Equals
(
"-1"
))
{
{
IoValue
=
-
1
;
IoValue
=
-
1
;
}
}
else
if
(
ProType
.
Equals
(
ConfigItemType
.
DI
))
else
if
(
ProType
.
Equals
(
ConfigItemType
.
DI
))
{
{
IoValue
=
Convert
.
ToInt32
(
ProVale
,
8
);
IoValue
=
Convert
.
ToInt32
(
ProVal
u
e
,
8
);
}
}
else
if
(
ProType
.
Equals
(
ConfigItemType
.
DO
))
else
if
(
ProType
.
Equals
(
ConfigItemType
.
DO
))
{
{
if
(
ProVale
.
Length
==
2
)
if
(
ProVal
u
e
.
Length
==
2
)
{
{
int
a
=
Convert
.
ToInt32
(
ProVale
.
Substring
(
0
,
1
),
16
)
-
8
;
int
a
=
Convert
.
ToInt32
(
ProVal
u
e
.
Substring
(
0
,
1
),
16
)
-
8
;
string
str
=
a
+
ProVale
.
Substring
(
1
,
1
);
string
str
=
a
+
ProVal
u
e
.
Substring
(
1
,
1
);
IoValue
=
Convert
.
ToInt32
(
str
,
8
);
IoValue
=
Convert
.
ToInt32
(
str
,
8
);
//IoValue = a + b;
//IoValue = a + b;
}
}
else
else
{
{
IoValue
=
Convert
.
ToInt32
(
ProVale
,
16
)
-
Convert
.
ToInt32
(
"80"
,
16
);
IoValue
=
Convert
.
ToInt32
(
ProVal
u
e
,
16
)
-
Convert
.
ToInt32
(
"80"
,
16
);
}
}
}
}
//LOGGER.Info("IO转换:(" + ElectricalDefinition + ")" + ProVale + "=" + IoValue);
//LOGGER.Info("IO转换:(" + ElectricalDefinition + ")" + ProVale + "=" + IoValue);
...
@@ -296,11 +318,11 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -296,11 +318,11 @@ namespace OnlineStore.LoadCSVLibrary
public
override
string
ToString
()
public
override
string
ToString
()
{
{
return
"ConfigIO。"
+
ProType
+
","
+
Explain
+
","
+
ProName
+
",属性值:"
+
ProVale
+
",设备名称:"
+
DeviceName
+
",描述:"
+
Describe
+
",电器定义:"
+
ElectricalDefinition
+
",代码定义:"
+
CodeDefinition
+
""
;
return
"ConfigIO。"
+
ProType
+
","
+
Explain
+
","
+
ProName
+
",属性值:"
+
ProVal
u
e
+
",设备名称:"
+
DeviceName
+
",描述:"
+
Describe
+
",电器定义:"
+
ElectricalDefinition
+
",代码定义:"
+
CodeDefinition
+
""
;
}
}
public
override
void
CheckField
()
public
override
void
CheckField
()
{
{
if
(
String
.
IsNullOrEmpty
(
ProType
)
||
String
.
IsNullOrEmpty
(
ProName
)
||
String
.
IsNullOrEmpty
(
DeviceName
)
||
String
.
IsNullOrEmpty
(
ProVale
))
if
(
String
.
IsNullOrEmpty
(
ProType
)
||
String
.
IsNullOrEmpty
(
ProName
)
||
String
.
IsNullOrEmpty
(
DeviceName
)
||
String
.
IsNullOrEmpty
(
ProVal
u
e
))
{
{
throw
new
CVSFieldNotMatchingExection
(
ToString
()
+
",【类型:ProType】【名称:ProName】【属性值:ProVale】【设备名称:DeviceName】必须配置值!"
);
throw
new
CVSFieldNotMatchingExection
(
ToString
()
+
",【类型:ProType】【名称:ProName】【属性值:ProVale】【设备名称:DeviceName】必须配置值!"
);
}
}
...
...
source/LoadCVSLibrary/storeConfig/config/StoreConfig.cs
查看文件 @
7bdb007
...
@@ -4,11 +4,14 @@ using System.Collections.Generic;
...
@@ -4,11 +4,14 @@ using System.Collections.Generic;
using
System.Linq
;
using
System.Linq
;
using
System.Reflection
;
using
System.Reflection
;
using
System.Text
;
using
System.Text
;
namespace
OnlineStore.LoadCSVLibrary
namespace
OnlineStore.LoadCSVLibrary
{
{
public
class
StoreConfig
public
class
StoreConfig
{
{
public
static
Dictionary
<
string
,
string
>
ProIOIpMap
=
null
;
public
const
string
IOIP_Str
=
"PRO_AOI_IP"
;
public
static
readonly
ILog
LOGGER
=
LogManager
.
GetLogger
(
System
.
Reflection
.
MethodBase
.
GetCurrentMethod
().
DeclaringType
);
public
static
readonly
ILog
LOGGER
=
LogManager
.
GetLogger
(
System
.
Reflection
.
MethodBase
.
GetCurrentMethod
().
DeclaringType
);
/// <summary>
/// <summary>
/// ID
/// ID
...
@@ -109,9 +112,21 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -109,9 +112,21 @@ namespace OnlineStore.LoadCSVLibrary
}
}
else
if
(
con
.
ProType
==
ConfigItemType
.
PRO
)
else
if
(
con
.
ProType
==
ConfigItemType
.
PRO
)
{
{
prop
.
SetValue
(
this
,
Convert
.
ChangeType
(
con
.
ProVale
,
prop
.
PropertyType
),
null
);
//赋值
prop
.
SetValue
(
this
,
Convert
.
ChangeType
(
con
.
ProVal
u
e
,
prop
.
PropertyType
),
null
);
//赋值
}
}
}
}
else
{
LOGGER
.
Error
(
"配置文件:"
+
this
.
ConfigFilePath
+
",属性名="
+
con
.
ProName
+
"的属性未找到匹配字段!"
);
}
}
else
if
(!
ProIOIpMap
.
ContainsKey
(
con
.
ProName
)
&&
con
.
ProName
.
ToUpper
().
Contains
(
IOIP_Str
))
{
ProIOIpMap
.
Add
(
con
.
ProName
,
con
.
ProValue
);
if
(!
DIODeviceNameList
.
Contains
(
con
.
ProValue
))
{
DIODeviceNameList
.
Add
(
con
.
ProValue
);
}
}
}
else
else
{
{
...
@@ -123,7 +138,7 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -123,7 +138,7 @@ namespace OnlineStore.LoadCSVLibrary
if
(
IO_Type
.
GetTypeList
().
Contains
(
con
.
ProName
))
if
(
IO_Type
.
GetTypeList
().
Contains
(
con
.
ProName
))
{
{
ConfigIO
io
=
(
ConfigIO
)
con
;
ConfigIO
io
=
(
ConfigIO
)
con
;
if
(!
DIODeviceNameList
.
Contains
(
io
.
DeviceName
)
&&
(
io
.
GetIOValue
()
>=
0
||
io
.
GetIOAddr
()
>=
0
))
if
(!
DIODeviceNameList
.
Contains
(
io
.
DeviceName
)
&&
(
io
.
GetIOValue
()
>=
0
||
io
.
GetIOAddr
()
>=
0
)
&&
io
.
DeviceName
.
Contains
(
IOIP_Str
).
Equals
(
false
)
)
{
{
DIODeviceNameList
.
Add
(
io
.
DeviceName
);
DIODeviceNameList
.
Add
(
io
.
DeviceName
);
}
}
...
@@ -139,7 +154,7 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -139,7 +154,7 @@ namespace OnlineStore.LoadCSVLibrary
if
(
IO_Type
.
GetTypeList
().
Contains
(
con
.
ProName
))
if
(
IO_Type
.
GetTypeList
().
Contains
(
con
.
ProName
))
{
{
ConfigIO
io
=
(
ConfigIO
)
con
;
ConfigIO
io
=
(
ConfigIO
)
con
;
if
(!
DIODeviceNameList
.
Contains
(
io
.
DeviceName
)
&&
io
.
GetIOValue
()
>=
0
)
if
(!
DIODeviceNameList
.
Contains
(
io
.
DeviceName
)
&&
io
.
GetIOValue
()
>=
0
&&
io
.
DeviceName
.
Contains
(
IOIP_Str
).
Equals
(
false
)
)
{
{
DIODeviceNameList
.
Add
(
io
.
DeviceName
);
DIODeviceNameList
.
Add
(
io
.
DeviceName
);
}
}
...
@@ -204,7 +219,7 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -204,7 +219,7 @@ namespace OnlineStore.LoadCSVLibrary
}
}
}
}
public
ConfigIO
getWaitIO
(
string
ioType
)
public
ConfigIO
getWaitIO
(
string
ioType
)
{
{
if
(
StoreDIList
.
ContainsKey
(
ioType
))
if
(
StoreDIList
.
ContainsKey
(
ioType
))
...
@@ -216,6 +231,6 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -216,6 +231,6 @@ namespace OnlineStore.LoadCSVLibrary
return
StoreDOList
[
ioType
];
return
StoreDOList
[
ioType
];
}
}
return
null
;
return
null
;
}
}
}
}
}
}
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论