Commit 5744dc8a LN

配置结构修改

1 个父辈 95bcc5d0
正在显示 60 个修改的文件 包含 1142 行增加397 行删除
此文件类型无法预览
...@@ -10,10 +10,14 @@ ...@@ -10,10 +10,14 @@
<!--Server address--> <!--Server address-->
<add key="http.server" value="http://localhost/myproject/service/store/emptyPosForPutin"/> <add key="http.server" value="http://localhost/myproject/service/store/emptyPosForPutin"/>
<!--storeType--> <!--storeType-->
<add key="line_count" value="4" /> <add key="Line_moveEquip_count" value="18" />
<add key="Line_feedingEquip_count" value="4" />
<add key="Line_providingEquip_count" value="4" />
<!--start one store config--> <!--start one store config-->
<add key="Line_ConfigPath" value="\LineConfig\StoreConfig_line.csv" /> <add key="ConfigPath_Line" value="\LineConfig\Config_Line.csv" />
<add key="MoveEquip_ConfigPath" value="\LineConfig\StoreConfig.csv" /> <add key="ConfigPath_MoveEquip" value="\LineConfig\MoveEquip\Config_MoveEquip.csv" />
<add key="ConfigPath_FeedingEquip" value="\LineConfig\Config_FeedingEquip.csv" />
<add key="ConfigPath_ProvidingEquip" value="\LineConfig\Config_ProvidingEquip.csv" />
<add key="Line_Type" value="RC_LINE" /> <add key="Line_Type" value="RC_LINE" />
<add key="Line_CID" value="rc1246" /> <add key="Line_CID" value="rc1246" />
<!--end one store config--> <!--end one store config-->
......
...@@ -84,6 +84,18 @@ ...@@ -84,6 +84,18 @@
<Compile Include="FrmBase.Designer.cs"> <Compile Include="FrmBase.Designer.cs">
<DependentUpon>FrmBase.cs</DependentUpon> <DependentUpon>FrmBase.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="FrmProvidingEquip.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmProvidingEquip.Designer.cs">
<DependentUpon>FrmProvidingEquip.cs</DependentUpon>
</Compile>
<Compile Include="FrmFeedingEquip.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmFeedingEquip.Designer.cs">
<DependentUpon>FrmFeedingEquip.cs</DependentUpon>
</Compile>
<Compile Include="FrmMoveEquip.cs"> <Compile Include="FrmMoveEquip.cs">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
...@@ -120,6 +132,12 @@ ...@@ -120,6 +132,12 @@
<EmbeddedResource Include="FrmBase.resx"> <EmbeddedResource Include="FrmBase.resx">
<DependentUpon>FrmBase.cs</DependentUpon> <DependentUpon>FrmBase.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="FrmProvidingEquip.resx">
<DependentUpon>FrmProvidingEquip.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmFeedingEquip.resx">
<DependentUpon>FrmFeedingEquip.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmMoveEquip.resx"> <EmbeddedResource Include="FrmMoveEquip.resx">
<DependentUpon>FrmMoveEquip.cs</DependentUpon> <DependentUpon>FrmMoveEquip.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
......
...@@ -44,7 +44,22 @@ namespace OnlineStore.AssemblyLine ...@@ -44,7 +44,22 @@ namespace OnlineStore.AssemblyLine
FrmIOStatus ioStatus = new FrmIOStatus(); FrmIOStatus ioStatus = new FrmIOStatus();
AddForm(" 流水线IO状态 ", ioStatus); AddForm(" 流水线IO状态 ", ioStatus);
List<FeedingEquip> feeds = new List<FeedingEquip>(lineBean.FeedingEquipMap.Values);
for (int i = 0; i < feeds.Count; i++)
{
FeedingEquip feed = feeds[i];
FrmFeedingEquip test = new FrmFeedingEquip(feed);
AddForm(" " + feed.Name, test);
}
List<ProvidingEquip> provids = new List<ProvidingEquip>(lineBean.ProvidingEquipMap.Values);
for (int i = 0; i < provids.Count; i++)
{
ProvidingEquip provid = provids[i];
FrmProvidingEquip test = new FrmProvidingEquip(provid);
AddForm(" " + provid.Name, test);
}
List<MoveEquip> moveEquipList = new List<MoveEquip>(lineBean.MoveEquipMap.Values); List<MoveEquip> moveEquipList = new List<MoveEquip>(lineBean.MoveEquipMap.Values);
for (int i = 0; i < moveEquipList.Count; i++) for (int i = 0; i < moveEquipList.Count; i++)
{ {
......
...@@ -24,11 +24,17 @@ namespace OnlineStore.Common ...@@ -24,11 +24,17 @@ namespace OnlineStore.Common
public static string http_server = "http.server"; public static string http_server = "http.server";
public static string Line_CID = "Line_CID"; public static string Line_CID = "Line_CID";
public static string line_count = "line_count";
public static string Line_moveEquip_count = "Line_moveEquip_count";
public static string Line_feedingEquip_count = "Line_feedingEquip_count";
public static string Line_providingEquip_count = "Line_providingEquip_count";
public static string Line_Type = "Line_Type"; public static string Line_Type = "Line_Type";
public static string Line_ConfigPath = "Line_ConfigPath"; public static string ConfigPath_Line = "ConfigPath_Line";
public static string MoveEquip_ConfigPath = "MoveEquip_ConfigPath"; public static string ConfigPath_MoveEquip = "ConfigPath_MoveEquip";
public static string ConfigPath_FeedingEquip = "ConfigPath_FeedingEquip";
public static string ConfigPath_ProvidingEquip = "ConfigPath_ProvidingEquip";
/// <summary> /// <summary>
/// 摄像机名称,多个中间使用#分割 /// 摄像机名称,多个中间使用#分割
/// </summary> /// </summary>
......
...@@ -60,6 +60,10 @@ ...@@ -60,6 +60,10 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Include="assemblyLine\AssemblyLineManager.cs" /> <Compile Include="assemblyLine\AssemblyLineManager.cs" />
<Compile Include="assemblyLine\ProvidingEquip_Partial.cs" />
<Compile Include="assemblyLine\FeedingEquip_Partial.cs" />
<Compile Include="assemblyLine\ProvidingEquip.cs" />
<Compile Include="assemblyLine\FeedingEquip.cs" />
<Compile Include="assemblyLine\TrayManager.cs" /> <Compile Include="assemblyLine\TrayManager.cs" />
<Compile Include="deviceLibrary\halcon\CodeManager.cs" /> <Compile Include="deviceLibrary\halcon\CodeManager.cs" />
<Compile Include="deviceLibrary\IO\AIManager.cs" /> <Compile Include="deviceLibrary\IO\AIManager.cs" />
...@@ -109,19 +113,88 @@ ...@@ -109,19 +113,88 @@
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="LineConfig\StoreConfig_1.csv"> <None Include="LineConfig\Config_FeedingEquip_1.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Include="LineConfig\StoreConfig_2.csv"> <None Include="LineConfig\Config_FeedingEquip_2.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Include="LineConfig\StoreConfig_3.csv"> <None Include="LineConfig\Config_FeedingEquip_3.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Include="LineConfig\StoreConfig_4.csv"> <None Include="LineConfig\Config_FeedingEquip_4.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Include="LineConfig\StoreConfig_line.csv"> <None Include="LineConfig\Config_Line.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\Config_ProvidingEquip_1.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\Config_ProvidingEquip_2.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\Config_ProvidingEquip_3.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\Config_ProvidingEquip_4.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_01.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_10.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_11.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_12.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_13.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_14.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_15.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_16.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_17.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_18.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_02.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_03.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_04.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_05.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_06.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_07.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_08.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\MoveEquip\Config_MoveEquip_09.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="LineConfig\StoreConfig_line.xlsx">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
</ItemGroup> </ItemGroup>
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
PRO,0,移栽上下移动料盘高度对应的上升位置,UpDownPositions,12=1000;16=1300;20=2000;24=2000;36=3000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,2,COM1,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,阻挡气缸控制信号(1-4分别对应夹具检测1-4),StopCylinderIOType,1,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,移栽上下轴在移栽上下降的位置,UpDownPositions,0=180000;,,,,,,
PRO,0,移栽上下轴在料仓门口下降的位置,UpDownBoxPositions,0=116000;,,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM1,1,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,20000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
PRO,0,移栽上下轴原点低速度,UpdownAxis_HomeLowSpeed,100,,,,,
PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
...@@ -22,7 +22,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -22,7 +22,9 @@ namespace OnlineStore.DeviceLibrary
public static LineBean Line = null; public static LineBean Line = null;
public static Line_Config Config = null; public static Line_Config Config = null;
public static Dictionary<int, MoveEquip_Config> EquipConfigMap = null; public static Dictionary<int, MoveEquip_Config> moveECMap = null;
public static Dictionary<int, FeedingEquip_Config> feedingECMap = null;
public static Dictionary<int, ProvidingEquip_Config> providingECMap = null;
public LineManager() public LineManager()
{ {
} }
...@@ -49,7 +51,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -49,7 +51,9 @@ namespace OnlineStore.DeviceLibrary
{ {
if (!isInit) if (!isInit)
{ {
EquipConfigMap = new Dictionary<int, MoveEquip_Config>(); moveECMap = new Dictionary<int, MoveEquip_Config>();
feedingECMap = new Dictionary<int, FeedingEquip_Config>();
providingECMap = new Dictionary<int, ProvidingEquip_Config>();
string server = ConfigAppSettings.GetValue(Setting_Init.http_server); string server = ConfigAppSettings.GetValue(Setting_Init.http_server);
if (server.Equals("")) if (server.Equals(""))
{ {
...@@ -70,42 +74,45 @@ namespace OnlineStore.DeviceLibrary ...@@ -70,42 +74,45 @@ namespace OnlineStore.DeviceLibrary
{ {
string appPath = Application.StartupPath; string appPath = Application.StartupPath;
string CID = ConfigAppSettings.GetValue(Setting_Init.Line_CID); string CID = ConfigAppSettings.GetValue(Setting_Init.Line_CID);
string linefilePath = appPath + ConfigAppSettings.GetValue(Setting_Init.Line_ConfigPath); string linefilePath = appPath + ConfigAppSettings.GetValue(Setting_Init.ConfigPath_Line);
Config = CSVConfigReader.LoadLineConfig(1, CID, StoreType.RC_LINE, linefilePath); Config = CSVConfigReader.LoadLineConfig(1, CID, StoreType.RC_LINE, linefilePath);
int count = ConfigAppSettings.GetIntValue(Setting_Init.line_count);
string moveEquipConfig = ConfigAppSettings.GetValue(Setting_Init.MoveEquip_ConfigPath); int moveEquipCount = ConfigAppSettings.GetIntValue(Setting_Init.Line_moveEquip_count);
for (int i = 1; i <= count; i++) string moveEquipConfig = ConfigAppSettings.GetValue(Setting_Init.ConfigPath_MoveEquip);
for (int i = 1; i <= moveEquipCount; i++)
{ {
string config = appPath + moveEquipConfig.Replace(".csv", "_" + i + ".csv"); string nameStr = i.ToString().PadLeft(2, '0');
MoveEquip_Config moveConfig = CSVConfigReader.LoadMoveConfig(i, config); string config = appPath + moveEquipConfig.Replace(".csv", "_" + nameStr + ".csv");
//增加DI,DO MoveEquip_Config moveConfig = CSVConfigReader.LoadMoveConfig(i, config);
Dictionary<string, ConfigIO> doList = new Dictionary<string, ConfigIO>(); int subType = i;
Dictionary<string, ConfigIO> diList = new Dictionary<string, ConfigIO>(); moveConfig.SetIO(Config, subType);
moveECMap.Add(i, moveConfig);
if (Config.SubDIList.ContainsKey(i)) }
{ int feedingEquipCount = ConfigAppSettings.GetIntValue(Setting_Init.Line_feedingEquip_count);
diList = Config.SubDIList[i]; string feedingEquipConfig = ConfigAppSettings.GetValue(Setting_Init.ConfigPath_FeedingEquip);
} for (int i = 1; i <= feedingEquipCount; i++)
if (Config.SubDOList.ContainsKey(i)) {
{ int subType = 100 + i;
doList = Config.SubDOList[i]; string config = appPath + feedingEquipConfig.Replace(".csv", "_" + i + ".csv");
} FeedingEquip_Config moveConfig = CSVConfigReader.LoadFeedingConfig(subType, config);
foreach (string key in diList.Keys)
{ moveConfig.SetIO(Config, subType);
moveConfig.DIList.Add(key, diList[key]); feedingECMap.Add(i, moveConfig);
}
foreach (string key in doList.Keys)
{
moveConfig.DOList.Add(key, doList[key]);
}
EquipConfigMap.Add(i, moveConfig);
} }
Line = new LineBean(Config, EquipConfigMap); int providingEquipCount = ConfigAppSettings.GetIntValue(Setting_Init.Line_providingEquip_count);
string providingEquipConfig = ConfigAppSettings.GetValue(Setting_Init.ConfigPath_ProvidingEquip);
for (int i = 1; i <= providingEquipCount; i++)
{
int subType = 200 + i;
string config = appPath + providingEquipConfig.Replace(".csv", "_" + i + ".csv");
ProvidingEquip_Config moveConfig = CSVConfigReader.LoadProvidingConfig(subType, config);
moveConfig.SetIO(Config, subType);
providingECMap.Add(i, moveConfig);
}
Line = new LineBean(Config, moveECMap,feedingECMap,providingECMap);
LogUtil.info(LOGGER, "加载 完成!"); LogUtil.info(LOGGER, "加载 完成!");
return Line; return Line;
} }
...@@ -119,43 +126,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -119,43 +126,7 @@ namespace OnlineStore.DeviceLibrary
} }
return null; return null;
} }
//private static string api_communication = "service/store/communication"; //流水线状态通信接口
//private static string api_nextFeeder = "service/store/nextFeeder"; // 出库站位列表切换接口
//public static string GetPostApi(string host)
//{
// if (host == "")
// {
// host = ConfigAppSettings.GetValue(Setting_Init.http_server);
// }
// if (!host.StartsWith("http://"))
// {
// host = "http://" + host;
// }
// if (!host.EndsWith("/"))
// {
// host = host + "/";
// }
// return host + api_communication;
//}
//public static string GetNextFeederApi(string host)
//{
// if (host == "")
// {
// host = ConfigAppSettings.GetValue(Setting_Init.http_server);
// }
// if (!host.StartsWith("http://"))
// {
// host = "http://" + host;
// }
// if (!host.EndsWith("/"))
// {
// host = host + "/";
// }
// return host + api_nextFeeder;
//}
/// <summary> /// <summary>
/// 获取阻挡气缸检测类型 /// 获取阻挡气缸检测类型
/// </summary> /// </summary>
...@@ -187,11 +158,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -187,11 +158,11 @@ namespace OnlineStore.DeviceLibrary
{ {
//位置配置到文件中 //位置配置到文件中
string appPath = Application.StartupPath; string appPath = Application.StartupPath;
string moveEquipConfig = ConfigAppSettings.GetValue(Setting_Init.MoveEquip_ConfigPath); string moveEquipConfig = ConfigAppSettings.GetValue(Setting_Init.ConfigPath_MoveEquip);
string configStr = appPath + moveEquipConfig.Replace(".csv", "_" + config.Id + ".csv"); string configStr = appPath + moveEquipConfig.Replace(".csv", "_" + config.Id.ToString().PadLeft(2,'0') + ".csv");
EquipConfigMap[config.Id] = config; moveECMap[config.Id] = config;
bool result = CSVConfigReader.SaveMoveEquipConfig(configStr, config); bool result = CSVConfigReader.SaveConfig(configStr, config,typeof(MoveEquip_Config));
if (!result) if (!result)
{ {
LOGGER.Error("保存配置文件失败:" + configStr); LOGGER.Error("保存配置文件失败:" + configStr);
...@@ -202,6 +173,48 @@ namespace OnlineStore.DeviceLibrary ...@@ -202,6 +173,48 @@ namespace OnlineStore.DeviceLibrary
LOGGER.Error("出错:", ex); LOGGER.Error("出错:", ex);
} }
} }
public static void SaveFeedingEquipConfig(FeedingEquip_Config config)
{
try
{
//位置配置到文件中
string appPath = Application.StartupPath;
string moveEquipConfig = ConfigAppSettings.GetValue(Setting_Init.ConfigPath_FeedingEquip);
int id = config.Id - 100;
string configStr = appPath + moveEquipConfig.Replace(".csv", "_" + id+ ".csv");
feedingECMap[config.Id] = config;
bool result = CSVConfigReader.SaveConfig(configStr, config,typeof(FeedingEquip_Config));
if (!result)
{
LOGGER.Error("保存配置文件失败:" + configStr);
}
}
catch (Exception ex)
{
LOGGER.Error("出错:", ex);
}
}
public static void SaveProvidingEquipConfig(ProvidingEquip_Config config)
{
try
{
//位置配置到文件中
string appPath = Application.StartupPath;
string moveEquipConfig = ConfigAppSettings.GetValue(Setting_Init.ConfigPath_ProvidingEquip);
int id = config.Id - 200;
string configStr = appPath + moveEquipConfig.Replace(".csv", "_" + id + ".csv");
providingECMap[config.Id] = config;
bool result = CSVConfigReader.SaveConfig(configStr, config,typeof(ProvidingEquip_Config));
if (!result)
{
LOGGER.Error("保存配置文件失败:" + configStr);
}
}
catch (Exception ex)
{
LOGGER.Error("出错:", ex);
}
}
} }
} }
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OnlineStore.DeviceLibrary
{
partial class FeedingEquip
{
}
}
...@@ -38,6 +38,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -38,6 +38,9 @@ namespace OnlineStore.DeviceLibrary
/// </summary> /// </summary>
public Dictionary<int, MoveEquip> MoveEquipMap { get; set; } public Dictionary<int, MoveEquip> MoveEquipMap { get; set; }
public Dictionary <int,FeedingEquip> FeedingEquipMap { get; set; }
public Dictionary<int, ProvidingEquip> ProvidingEquipMap { get; set; }
/// <summary> /// <summary>
/// 流水线配置 /// 流水线配置
/// </summary> /// </summary>
...@@ -45,7 +48,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -45,7 +48,7 @@ namespace OnlineStore.DeviceLibrary
private bool canStart = false; private bool canStart = false;
public LineBean(Line_Config lineConfig, Dictionary<int, MoveEquip_Config> configList) public LineBean(Line_Config lineConfig, Dictionary<int, MoveEquip_Config> configList,Dictionary<int,FeedingEquip_Config> feedMap,Dictionary<int,ProvidingEquip_Config> providMap)
{ {
if (lineConfig.IOSingle_TimerOut <= 0) if (lineConfig.IOSingle_TimerOut <= 0)
{ {
...@@ -62,6 +65,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -62,6 +65,9 @@ namespace OnlineStore.DeviceLibrary
MoveEquipMap = new Dictionary<int, MoveEquip>(); MoveEquipMap = new Dictionary<int, MoveEquip>();
FeedingEquipMap = new Dictionary<int, FeedingEquip>();
ProvidingEquipMap = new Dictionary<int, ProvidingEquip>();
List<string> ioList = new List<string>(); List<string> ioList = new List<string>();
AddDeviceName(ioList, Config.IOIPList); AddDeviceName(ioList, Config.IOIPList);
...@@ -72,6 +78,20 @@ namespace OnlineStore.DeviceLibrary ...@@ -72,6 +78,20 @@ namespace OnlineStore.DeviceLibrary
AddDeviceName(ioList, config.IOIPList); AddDeviceName(ioList, config.IOIPList);
MoveEquipMap.Add(config.Id, equip); MoveEquipMap.Add(config.Id, equip);
} }
foreach (FeedingEquip_Config config in feedMap.Values)
{
FeedingEquip equip = new FeedingEquip(lineConfig.CID, config);
AddDeviceName(ioList, config.IOIPList);
FeedingEquipMap.Add(config.Id, equip);
}
foreach (ProvidingEquip_Config config in providMap.Values)
{
ProvidingEquip equip = new ProvidingEquip(lineConfig.CID, config);
AddDeviceName(ioList, config.IOIPList);
ProvidingEquipMap.Add(config.Id, equip);
}
IOManager.Init(); IOManager.Init();
//先初始化设备 //先初始化设备
......
...@@ -33,6 +33,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -33,6 +33,7 @@ namespace OnlineStore.DeviceLibrary
public MoveEquip(string cid, MoveEquip_Config config) public MoveEquip(string cid, MoveEquip_Config config)
{ {
baseConfig = config;
this.DeviceID = config.Id; this.DeviceID = config.Id;
this.Config = config; this.Config = config;
Name = (" " + "_移栽_" + DeviceID + " ").ToUpper(); Name = (" " + "_移栽_" + DeviceID + " ").ToUpper();
......
...@@ -817,28 +817,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -817,28 +817,6 @@ namespace OnlineStore.DeviceLibrary
} }
public void CylinderMove(LineMoveInfo moveInfo, string IoLowType, string IoHighType)
{
IOMove(IoLowType, IO_VALUE.LOW);
IOMove(IoHighType, IO_VALUE.HIGH);
if (moveInfo != null)
{
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoLowType, IO_VALUE.LOW));
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoHighType, IO_VALUE.HIGH));
}
}
public void IOMove(string IoType, IO_VALUE value)
{
IOManager.IOMove(IoType, value, Config.Id);
}
public IO_VALUE IOValue(string IoType)
{
return IOManager.IOValue(IoType, Config.Id);
}
public void LogInfo(string logInfo)
{
LogUtil.info( Name + logInfo);
}
} }
} }
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OnlineStore.DeviceLibrary
{
partial class ProvidingEquip
{
}
}

namespace Asa.IOModule
{
/// <summary>
/// IO模块寄存器
/// </summary>
public class Reg
{
/// <summary>
/// 标识
/// </summary>
public int ID;
/// <summary>
/// 文本,仅用于显示
/// </summary>
public string Text;
/// <summary>
/// 寄存器地址
/// </summary>
public Box_Addr Address;
/// <summary>
/// 当前的状态
/// </summary>
public Box_Sta Status;
/// <summary>
/// 寄存器,文本空,状态OFF
/// </summary>
/// <param name="address">地址</param>
public Reg(Box_Addr address) : this(0, "", address, Box_Sta.Off)
{
}
/// <summary>
/// 寄存器,状态OFF
/// </summary>
/// <param name="text">文本</param>
/// <param name="addr">地址</param>
public Reg(string text, Box_Addr addr) : this(0, text, addr, Box_Sta.Off)
{
}
/// <summary>
/// 寄存器,状态OFF
/// </summary>
/// <param name="id">标志</param>
/// <param name="text">文本</param>
/// <param name="addr">地址</param>
public Reg(int id, string text, Box_Addr addr) : this(id, text, addr, Box_Sta.Off)
{
}
/// <summary>
/// 寄存器
/// </summary>
/// <param name="text">文本</param>
/// <param name="addr">地址</param>
/// <param name="status">状态</param>
public Reg(string text, Box_Addr addr, Box_Sta status) : this(0, text, addr, status)
{
}
/// <summary>
/// 寄存器
/// </summary>
/// <param name="id">标志</param>
/// <param name="text">文本</param>
/// <param name="address">地址</param>
/// <param name="status">状态</param>
public Reg(int id, string text, Box_Addr address, Box_Sta status)
{
ID = id;
Text = text;
Address = address;
Status = status;
}
}
/// <summary>
/// IO模块寄存器地址
/// </summary>
public enum Box_Addr : int
{
/// <summary>
/// 输入点,DI01
/// </summary>
DI_1,
/// <summary>
/// 输入点,DI02
/// </summary>
DI_2,
/// <summary>
/// 输入点,DI03
/// </summary>
DI_3,
/// <summary>
/// 输入点,DI04
/// </summary>
DI_4,
/// <summary>
/// 输入点,DI05
/// </summary>
DI_5,
/// <summary>
/// 输入点,DI06
/// </summary>
DI_6,
/// <summary>
/// 输入点,DI07
/// </summary>
DI_7,
/// <summary>
/// 输入点,DI08
/// </summary>
DI_8,
/// <summary>
/// 输入点,DI09
/// </summary>
DI_9,
/// <summary>
/// 输入点,DI10
/// </summary>
DI_10,
/// <summary>
/// 输入点,DI11
/// </summary>
DI_11,
/// <summary>
/// 输入点,DI12
/// </summary>
DI_12,
/// <summary>
/// 输入点,DI13
/// </summary>
DI_13,
/// <summary>
/// 输入点,DI14
/// </summary>
DI_14,
/// <summary>
/// 输入点,DI15
/// </summary>
DI_15,
/// <summary>
/// 输入点,DI16
/// </summary>
DI_16,
/// <summary>
/// 输出点,DO01
/// </summary>
DO_1,
/// <summary>
/// 输出点,DO02
/// </summary>
DO_2,
/// <summary>
/// 输出点,DO03
/// </summary>
DO_3,
/// <summary>
/// 输出点,DO04
/// </summary>
DO_4,
/// <summary>
/// 输出点,DO05
/// </summary>
DO_5,
/// <summary>
/// 输出点,DO06
/// </summary>
DO_6,
/// <summary>
/// 输出点,DO07
/// </summary>
DO_7,
/// <summary>
/// 输出点,DO08
/// </summary>
DO_8,
/// <summary>
/// 输出点,DO09
/// </summary>
DO_9,
/// <summary>
/// 输出点,DO10
/// </summary>
DO_10,
/// <summary>
/// 输出点,DO11
/// </summary>
DO_11,
/// <summary>
/// 输出点,DO12
/// </summary>
DO_12,
/// <summary>
/// 输出点,DO13
/// </summary>
DO_13,
/// <summary>
/// 输出点,DO14
/// </summary>
DO_14,
/// <summary>
/// 输出点,DO15
/// </summary>
DO_15,
/// <summary>
/// 输出点,DO16
/// </summary>
DO_16,
/// <summary>
/// 无
/// </summary>
NONE = 255
}
/// <summary>
/// IO模块类型
/// </summary>
public enum Box_Type : int
{
/// <summary>
/// 16位,8DI + 8DO
/// </summary>
DIO_16,
/// <summary>
/// 32位,16DI + 16DO
/// </summary>
DIO_32,
/// <summary>
/// 16位DO
/// </summary>
DO_16,
/// <summary>
/// 32位,24DI + 8DO
/// </summary>
DI24_DO8,
}
/// <summary>
/// IO模块寄存器状态
/// </summary>
public enum Box_Sta : int
{
/// <summary>
/// 断开,关闭,低电平
/// </summary>
Off = 0,
/// <summary>
/// 闭合,打开,高电平
/// </summary>
On = 255
}
}
\ No newline at end of file \ No newline at end of file
...@@ -40,31 +40,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -40,31 +40,12 @@ namespace OnlineStore.DeviceLibrary
public static IO_VALUE IOValue(string ioType,int subType ) public static IO_VALUE IOValue(string ioType,int subType )
{ {
IO_VALUE ioValue = IO_VALUE.LOW; IO_VALUE ioValue = IO_VALUE.LOW;
ConfigIO configIo = null; ConfigIO configIo = GetDI(ioType,subType );
if (subType <= 0) if (configIo == null)
{
if (LineManager.Config.DIList.ContainsKey(ioType))
{
configIo = LineManager.Config.DIList[ioType];
}else if (LineManager.Config.DOList.ContainsKey(ioType))
{
configIo = LineManager.Config.DOList[ioType];
}
}
else
{ {
if (LineManager.EquipConfigMap.ContainsKey(subType)) configIo = GetDO(ioType, subType);
{
if (LineManager.EquipConfigMap[subType].DIList.ContainsKey(ioType))
{
configIo = LineManager.EquipConfigMap[subType].DIList[ioType];
}
else if (LineManager.EquipConfigMap[subType].DOList.ContainsKey(ioType))
{
configIo = LineManager.EquipConfigMap[subType].DOList[ioType];
}
}
} }
if (configIo != null) if (configIo != null)
{ {
if (configIo.ProType.Equals(ConfigItemType.DI)) if (configIo.ProType.Equals(ConfigItemType.DI))
...@@ -98,6 +79,42 @@ namespace OnlineStore.DeviceLibrary ...@@ -98,6 +79,42 @@ namespace OnlineStore.DeviceLibrary
} }
return ioValue; return ioValue;
} }
private static ConfigIO GetDI(string ioType, int subType)
{
ConfigIO configIo = null;
if (subType <= 0)
{
if (LineManager.Config.DIList.ContainsKey(ioType))
{
return LineManager.Config.DIList[ioType];
}
}
else
{
if (LineManager.moveECMap.ContainsKey(subType))
{
if (LineManager.moveECMap[subType].DIList.ContainsKey(ioType))
{
return LineManager.moveECMap[subType].DIList[ioType];
}
}
if (LineManager.feedingECMap.ContainsKey(subType))
{
if (LineManager.feedingECMap[subType].DIList.ContainsKey(ioType))
{
return LineManager.feedingECMap[subType].DIList[ioType];
}
}
if (LineManager.providingECMap.ContainsKey(subType))
{
if (LineManager.providingECMap[subType].DIList.ContainsKey(ioType))
{
return LineManager.providingECMap[subType].DIList[ioType];
}
}
}
return configIo;
}
private static ConfigIO GetDO(string ioType, int subType ) private static ConfigIO GetDO(string ioType, int subType )
{ {
ConfigIO configIo = null; ConfigIO configIo = null;
...@@ -105,16 +122,30 @@ namespace OnlineStore.DeviceLibrary ...@@ -105,16 +122,30 @@ namespace OnlineStore.DeviceLibrary
{ {
if (LineManager.Config.DOList.ContainsKey(ioType)) if (LineManager.Config.DOList.ContainsKey(ioType))
{ {
configIo = LineManager.Config.DOList[ioType]; return LineManager.Config.DOList[ioType];
} }
} }
else else
{ {
if (LineManager.EquipConfigMap.ContainsKey(subType)) if (LineManager.moveECMap.ContainsKey(subType))
{
if (LineManager.moveECMap[subType].DOList.ContainsKey(ioType))
{
return LineManager.moveECMap[subType].DOList[ioType];
}
}
if (LineManager.feedingECMap.ContainsKey(subType))
{
if (LineManager.feedingECMap[subType].DOList.ContainsKey(ioType))
{
return LineManager.feedingECMap[subType].DOList[ioType];
}
}
if (LineManager.providingECMap.ContainsKey(subType))
{ {
if (LineManager.EquipConfigMap[subType].DOList.ContainsKey(ioType)) if (LineManager.providingECMap[subType].DOList.ContainsKey(ioType))
{ {
configIo = LineManager.EquipConfigMap[subType].DOList[ioType]; return LineManager.providingECMap[subType].DOList[ioType];
} }
} }
} }
......
...@@ -31,8 +31,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -31,8 +31,7 @@ namespace OnlineStore.DeviceLibrary
/// 提示消息,一般发给服务器后清空(LineBean表示报警提示消息,BoxBean表示出入库失败的原因记录) /// 提示消息,一般发给服务器后清空(LineBean表示报警提示消息,BoxBean表示出入库失败的原因记录)
/// </summary> /// </summary>
public string WarnMsg = ""; public string WarnMsg = "";
public StoreConfig baseConfig = null;
// protected static readonly ILog LOGGER = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
public string Name { get; set; } public string Name { get; set; }
public int DeviceID { get; set; } public int DeviceID { get; set; }
/// <summary> /// <summary>
...@@ -323,7 +322,29 @@ namespace OnlineStore.DeviceLibrary ...@@ -323,7 +322,29 @@ namespace OnlineStore.DeviceLibrary
return sta; return sta;
} }
} }
public void CylinderMove(LineMoveInfo moveInfo, string IoLowType, string IoHighType)
{
IOMove(IoLowType, IO_VALUE.LOW);
IOMove(IoHighType, IO_VALUE.HIGH);
if (moveInfo != null)
{
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoLowType, IO_VALUE.LOW));
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoHighType, IO_VALUE.HIGH));
}
}
public void IOMove(string IoType, IO_VALUE value)
{
IOManager.IOMove(IoType, value, baseConfig.Id);
}
public IO_VALUE IOValue(string IoType)
{
return IOManager.IOValue(IoType, baseConfig.Id);
}
public void LogInfo(string logInfo)
{
LogUtil.info(Name + logInfo);
}
} }
} }
...@@ -50,6 +50,8 @@ ...@@ -50,6 +50,8 @@
<Compile Include="storeConfig\ConfigItemBase.cs" /> <Compile Include="storeConfig\ConfigItemBase.cs" />
<Compile Include="storeConfig\ConfigProAttribute.cs" /> <Compile Include="storeConfig\ConfigProAttribute.cs" />
<Compile Include="storeConfig\config\Line_Config.cs" /> <Compile Include="storeConfig\config\Line_Config.cs" />
<Compile Include="storeConfig\config\FeedingEquip_Config.cs" />
<Compile Include="storeConfig\config\ProvidingEquip_Config.cs" />
<Compile Include="storeConfig\config\MoveEquip_Config.cs" /> <Compile Include="storeConfig\config\MoveEquip_Config.cs" />
<Compile Include="storeConfig\config\StoreType.cs" /> <Compile Include="storeConfig\config\StoreType.cs" />
<Compile Include="storeConfig\config\IO_Type.cs" /> <Compile Include="storeConfig\config\IO_Type.cs" />
......
...@@ -146,6 +146,18 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -146,6 +146,18 @@ namespace OnlineStore.LoadCSVLibrary
return (MoveEquip_Config)LoadConfig(config); return (MoveEquip_Config)LoadConfig(config);
} }
public static FeedingEquip_Config LoadFeedingConfig(int storeId, string filePath)
{
FeedingEquip_Config config = new FeedingEquip_Config(storeId, storeId + "_FeedingEquip", "", filePath);
return (FeedingEquip_Config)LoadConfig(config);
}
public static ProvidingEquip_Config LoadProvidingConfig(int storeId, string filePath)
{
ProvidingEquip_Config config = new ProvidingEquip_Config(storeId, storeId + "_ProvidingEquip", "", filePath);
return (ProvidingEquip_Config)LoadConfig(config);
}
public static StoreConfig LoadConfig(StoreConfig config) public static StoreConfig LoadConfig(StoreConfig config)
{ {
LOGGER.Info("开始读取文件:" + config.ConfigFilePath); LOGGER.Info("开始读取文件:" + config.ConfigFilePath);
...@@ -159,9 +171,16 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -159,9 +171,16 @@ namespace OnlineStore.LoadCSVLibrary
return config; return config;
} }
public static bool SaveMoveEquipConfig(string configStr, MoveEquip_Config config) public static bool SaveConfig(string configStr, StoreConfig config,Type type)
{ {
Type type = typeof(MoveEquip_Config); //Type type = typeof(MoveEquip_Config);
//if(config is FeedingEquip_Config)
//{
// type = typeof(FeedingEquip_Config);
//}else if(config is ProvidingEquip_Config)
//{
// type = typeof(ProvidingEquip_Config);
//}
//取得属性集合 //取得属性集合
PropertyInfo[] props = type.GetProperties(); PropertyInfo[] props = type.GetProperties();
......
using log4net;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
namespace OnlineStore.LoadCSVLibrary
{
public class FeedingEquip_Config : StoreConfig
{
public FeedingEquip_Config()
: base()
{
}
public FeedingEquip_Config(int id, string cid, string type, string filepath)
: base(id, cid, type, filepath)
{
}
/// <summary>
/// 设备是否处于调试状态(1=调试,0=正常)
/// </summary>
[ConfigProAttribute("IsDebug")]
public int IsDebug { get; set; }
///// <summary>
///// 阻挡气缸控制信号(1-4分别对应夹具检测1-4)
///// </summary>
//[ConfigProAttribute("StopCylinderIOType")]
//public int StopCylinderIOType { get; set; }
/// <summary>
/// PRO 0 移栽上下运动是否使用伺服 UpDownUseAxis 1
/// </summary>
[ConfigProAttribute("UpDownUseAxis")]
public int UpDownUseAxis { get; set; }
/// <summary>
/// PRO 0 移栽上下轴在移栽上下降的位置 UpDownPositions 0=180000
/// </summary>
[ConfigProAttribute("UpDownPositions",false) ]
public string UpDownPositions { get; set; }
/// <summary>
/// PRO 0 移栽上下轴在料仓门口下降的位置 UpDownBoxPositions 0=116000
/// </summary>
[ConfigProAttribute("UpDownBoxPositions", false)]
public string UpDownBoxPositions { get; set; }
/// <summary>
/// AXIS 0 移栽上下轴 UpDown_Axis 2
/// </summary>
[ConfigProAttribute("UpDown_Axis", false)]
public ConfigMoveAxis UpDown_Axis { get; set; }
/// <summary>
/// PRO 0 移栽上下轴待机点 P1 UpDownAxisP1 403000
/// </summary>
[ConfigProAttribute("UpDownAxisP1", false)]
public int UpDownAxisP1 { get; set; }
/// <summary>
/// PRO 0 移栽上下轴目标速度 UpdownAxis_TargetSpeed 150
/// </summary>
[ConfigProAttribute("UpdownAxis_TargetSpeed", false)]
public int UpdownAxis_TargetSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴加速度 UpdownAxis_AddSpeed 400
/// </summary>
[ConfigProAttribute("UpdownAxis_AddSpeed", false)]
public short UpdownAxis_AddSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴减速度 UpdownAxis_DelSpeed 400
/// </summary>
[ConfigProAttribute("UpdownAxis_DelSpeed", false)]
public short UpdownAxis_DelSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴原点低速度 UpdownAxis_HomeLowSpeed 100
/// </summary>
[ConfigProAttribute("UpdownAxis_HomeLowSpeed", false)]
public int UpdownAxis_HomeLowSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴原点高速 UpdownAxis_HomeHighSpeed 200
/// </summary>
[ConfigProAttribute("UpdownAxis_HomeHighSpeed", false)]
public int UpdownAxis_HomeHighSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴原点加速度 UpdownAxis_HomeAddSpeed 200
/// </summary>
[ConfigProAttribute("UpdownAxis_HomeAddSpeed", false)]
public int UpdownAxis_HomeAddSpeed { get; set; }
/// <summary>
/// PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
/// </summary>
[ConfigProAttribute("UpdownAxis_P1Speed", false)]
public int UpdownAxis_P1Speed { get; set; }
/// <summary>
/// PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
/// </summary>
[ConfigProAttribute("UpdownAxis_DownSpeed", false)]
public int UpdownAxis_DownSpeed { get; set; }
private Dictionary<int, int> UpDownPositionMap = null;
public int GetUpdownPosition(int trayHeight)
{
try
{
if (UpDownPositionMap == null)
{
UpDownPositionMap = new Dictionary<int, int>();
string[] arrayList = UpDownPositions.Split(';');
foreach (string str in arrayList)
{
string[] arrStr = str.Split('=');
if (arrStr.Length == 2)
{
int height = Convert.ToInt32(arrStr[0].Trim());
int length = Convert.ToInt32(arrStr[1].Trim());
UpDownPositionMap.Add(height, length);
}
}
}
}
catch (Exception ex)
{
}
if (UpDownPositionMap.ContainsKey(trayHeight))
{
return UpDownPositionMap[trayHeight];
}else if (UpDownPositionMap.ContainsKey(0))
{
return UpDownPositionMap[0];
}
return -1;
}
public void UpdateUpdownPositon(int size, int sizePosition)
{
string newPositionStr = "";
if (UpDownPositionMap.ContainsKey(size))
{
UpDownPositionMap[size] = sizePosition;
}
else
{
UpDownPositionMap.Add(size, sizePosition);
}
foreach(int key in UpDownPositionMap.Keys)
{
newPositionStr += key + "=" + UpDownPositionMap[key] + ";";
}
newPositionStr = newPositionStr.Substring(0, newPositionStr.Length - 1);
UpDownPositions = newPositionStr;
}
private Dictionary<int, int> UpDownBoxPositionMap = null;
public int GetUpdownBoxPosition(int trayHeight)
{
try
{
if (UpDownBoxPositionMap == null)
{
UpDownBoxPositionMap = new Dictionary<int, int>();
string[] arrayList = UpDownBoxPositions.Split(';');
foreach (string str in arrayList)
{
string[] arrStr = str.Split('=');
if (arrStr.Length == 2)
{
int height = Convert.ToInt32(arrStr[0].Trim());
int length = Convert.ToInt32(arrStr[1].Trim());
UpDownBoxPositionMap.Add(height, length);
}
}
}
}
catch (Exception ex)
{
}
if (UpDownBoxPositionMap.ContainsKey(trayHeight))
{
return UpDownBoxPositionMap[trayHeight];
}else if (UpDownBoxPositionMap.ContainsKey(0))
{
return UpDownBoxPositionMap[0];
}
return -1;
}
public void UpdateUpdownBoxPositon(int size, int sizePosition)
{
string newPositionStr = "";
if (UpDownBoxPositionMap.ContainsKey(size))
{
UpDownBoxPositionMap[size] = sizePosition;
}
else
{
UpDownBoxPositionMap.Add(size, sizePosition);
}
foreach (int key in UpDownPositionMap.Keys)
{
newPositionStr += key + "=" + UpDownBoxPositionMap[key] + ";";
}
newPositionStr = newPositionStr.Substring(0, newPositionStr.Length - 1);
UpDownBoxPositions = newPositionStr;
}
}
}
...@@ -136,6 +136,7 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -136,6 +136,7 @@ namespace OnlineStore.LoadCSVLibrary
return -1; return -1;
} }
public void UpdateUpdownPositon(int size, int sizePosition) public void UpdateUpdownPositon(int size, int sizePosition)
{ {
string newPositionStr = ""; string newPositionStr = "";
......
using log4net;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
namespace OnlineStore.LoadCSVLibrary
{
public class ProvidingEquip_Config : StoreConfig
{
public ProvidingEquip_Config()
: base()
{
}
public ProvidingEquip_Config(int id, string cid, string type, string filepath)
: base(id, cid, type, filepath)
{
}
/// <summary>
/// 设备是否处于调试状态(1=调试,0=正常)
/// </summary>
[ConfigProAttribute("IsDebug")]
public int IsDebug { get; set; }
///// <summary>
///// 阻挡气缸控制信号(1-4分别对应夹具检测1-4)
///// </summary>
//[ConfigProAttribute("StopCylinderIOType")]
//public int StopCylinderIOType { get; set; }
/// <summary>
/// PRO 0 移栽上下运动是否使用伺服 UpDownUseAxis 1
/// </summary>
[ConfigProAttribute("UpDownUseAxis")]
public int UpDownUseAxis { get; set; }
/// <summary>
/// PRO 0 移栽上下轴在移栽上下降的位置 UpDownPositions 0=180000
/// </summary>
[ConfigProAttribute("UpDownPositions",false) ]
public string UpDownPositions { get; set; }
/// <summary>
/// PRO 0 移栽上下轴在料仓门口下降的位置 UpDownBoxPositions 0=116000
/// </summary>
[ConfigProAttribute("UpDownBoxPositions", false)]
public string UpDownBoxPositions { get; set; }
/// <summary>
/// AXIS 0 移栽上下轴 UpDown_Axis 2
/// </summary>
[ConfigProAttribute("UpDown_Axis", false)]
public ConfigMoveAxis UpDown_Axis { get; set; }
/// <summary>
/// PRO 0 移栽上下轴待机点 P1 UpDownAxisP1 403000
/// </summary>
[ConfigProAttribute("UpDownAxisP1", false)]
public int UpDownAxisP1 { get; set; }
/// <summary>
/// PRO 0 移栽上下轴目标速度 UpdownAxis_TargetSpeed 150
/// </summary>
[ConfigProAttribute("UpdownAxis_TargetSpeed", false)]
public int UpdownAxis_TargetSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴加速度 UpdownAxis_AddSpeed 400
/// </summary>
[ConfigProAttribute("UpdownAxis_AddSpeed", false)]
public short UpdownAxis_AddSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴减速度 UpdownAxis_DelSpeed 400
/// </summary>
[ConfigProAttribute("UpdownAxis_DelSpeed", false)]
public short UpdownAxis_DelSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴原点低速度 UpdownAxis_HomeLowSpeed 100
/// </summary>
[ConfigProAttribute("UpdownAxis_HomeLowSpeed", false)]
public int UpdownAxis_HomeLowSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴原点高速 UpdownAxis_HomeHighSpeed 200
/// </summary>
[ConfigProAttribute("UpdownAxis_HomeHighSpeed", false)]
public int UpdownAxis_HomeHighSpeed { get; set; }
/// <summary>
/// PRO 0 移栽上下轴原点加速度 UpdownAxis_HomeAddSpeed 200
/// </summary>
[ConfigProAttribute("UpdownAxis_HomeAddSpeed", false)]
public int UpdownAxis_HomeAddSpeed { get; set; }
/// <summary>
/// PRO,0,移栽上下轴走到待机点速度,UpdownAxis_P1Speed,400,,,,,
/// </summary>
[ConfigProAttribute("UpdownAxis_P1Speed", false)]
public int UpdownAxis_P1Speed { get; set; }
/// <summary>
/// PRO,0,移栽上下轴下降速度,UpdownAxis_DownSpeed,500,,,,,
/// </summary>
[ConfigProAttribute("UpdownAxis_DownSpeed", false)]
public int UpdownAxis_DownSpeed { get; set; }
private Dictionary<int, int> UpDownPositionMap = null;
public int GetUpdownPosition(int trayHeight)
{
try
{
if (UpDownPositionMap == null)
{
UpDownPositionMap = new Dictionary<int, int>();
string[] arrayList = UpDownPositions.Split(';');
foreach (string str in arrayList)
{
string[] arrStr = str.Split('=');
if (arrStr.Length == 2)
{
int height = Convert.ToInt32(arrStr[0].Trim());
int length = Convert.ToInt32(arrStr[1].Trim());
UpDownPositionMap.Add(height, length);
}
}
}
}
catch (Exception ex)
{
}
if (UpDownPositionMap.ContainsKey(trayHeight))
{
return UpDownPositionMap[trayHeight];
}else if (UpDownPositionMap.ContainsKey(0))
{
return UpDownPositionMap[0];
}
return -1;
}
public void UpdateUpdownPositon(int size, int sizePosition)
{
string newPositionStr = "";
if (UpDownPositionMap.ContainsKey(size))
{
UpDownPositionMap[size] = sizePosition;
}
else
{
UpDownPositionMap.Add(size, sizePosition);
}
foreach(int key in UpDownPositionMap.Keys)
{
newPositionStr += key + "=" + UpDownPositionMap[key] + ";";
}
newPositionStr = newPositionStr.Substring(0, newPositionStr.Length - 1);
UpDownPositions = newPositionStr;
}
private Dictionary<int, int> UpDownBoxPositionMap = null;
public int GetUpdownBoxPosition(int trayHeight)
{
try
{
if (UpDownBoxPositionMap == null)
{
UpDownBoxPositionMap = new Dictionary<int, int>();
string[] arrayList = UpDownBoxPositions.Split(';');
foreach (string str in arrayList)
{
string[] arrStr = str.Split('=');
if (arrStr.Length == 2)
{
int height = Convert.ToInt32(arrStr[0].Trim());
int length = Convert.ToInt32(arrStr[1].Trim());
UpDownBoxPositionMap.Add(height, length);
}
}
}
}
catch (Exception ex)
{
}
if (UpDownBoxPositionMap.ContainsKey(trayHeight))
{
return UpDownBoxPositionMap[trayHeight];
}else if (UpDownBoxPositionMap.ContainsKey(0))
{
return UpDownBoxPositionMap[0];
}
return -1;
}
public void UpdateUpdownBoxPositon(int size, int sizePosition)
{
string newPositionStr = "";
if (UpDownBoxPositionMap.ContainsKey(size))
{
UpDownBoxPositionMap[size] = sizePosition;
}
else
{
UpDownBoxPositionMap.Add(size, sizePosition);
}
foreach (int key in UpDownPositionMap.Keys)
{
newPositionStr += key + "=" + UpDownBoxPositionMap[key] + ";";
}
newPositionStr = newPositionStr.Substring(0, newPositionStr.Length - 1);
UpDownBoxPositions = newPositionStr;
}
}
}
...@@ -255,7 +255,29 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -255,7 +255,29 @@ namespace OnlineStore.LoadCSVLibrary
} }
} }
public void SetIO(Line_Config Config, int subType)
{
Dictionary<string, ConfigIO> doList = new Dictionary<string, ConfigIO>();
Dictionary<string, ConfigIO> diList = new Dictionary<string, ConfigIO>();
if (Config.SubDIList.ContainsKey(subType))
{
diList = Config.SubDIList[subType];
}
if (Config.SubDOList.ContainsKey(subType))
{
doList = Config.SubDOList[subType];
}
foreach (string key in diList.Keys)
{
DIList.Add(key, diList[key]);
}
foreach (string key in doList.Keys)
{
DOList.Add(key, doList[key]);
}
}
public ConfigIO getWaitIO(string ioType) public ConfigIO getWaitIO(string ioType)
{ {
if (DIList.ContainsKey(ioType)) if (DIList.ContainsKey(ioType))
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!