Commit 39de335a 刘韬

NA

1 个父辈 ef9490c0
正在显示 42 个修改的文件 包含 3777 行增加703 行删除
...@@ -105,8 +105,9 @@ namespace OnlineStore.Common ...@@ -105,8 +105,9 @@ namespace OnlineStore.Common
public static string HasT4Axis = "HasT4Axis"; public static string HasT4Axis = "HasT4Axis";
public static string AgvServerIp = "AgvServerIp"; public static string AgvServerIp = "AgvServerIp";
public static string AgvServerPort = "AgvServerPort";
public static string code_block_size_list = "code_block_size_list";
} }
} }
...@@ -9,7 +9,7 @@ namespace OnlineStore.Common ...@@ -9,7 +9,7 @@ namespace OnlineStore.Common
{ {
public class FormUtil public class FormUtil
{ {
public static int GetIntValue(TextBox txt) public static int GetIntValue(Control txt)
{ {
int value = 0; int value = 0;
try try
......
<?xml version="1.0"?> <?xml version="1.0"?>
<configuration> <configuration>
<configSections> <configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections> </configSections>
<appSettings> <appSettings>
<!--是否开机自动启动料仓--> <!--是否开机自动启动料仓-->
<add key="App_AutoRun" value="0" /> <add key="App_AutoRun" value="0"/>
<add key="App_Title" value="DUO料仓" /> <add key="App_Title" value="DUO料仓"/>
<!-- 开始吹气的判断值(配置值=服务器发送的湿度值-开始吹气值)--> <!-- 开始吹气的判断值(配置值=服务器发送的湿度值-开始吹气值)-->
<add key="StartBlowValue" value="4" /> <add key="StartBlowValue" value="4"/>
<!-- 停止吹气的判断值(配置值=服务器发送的湿度值-停止吹气值)--> <!-- 停止吹气的判断值(配置值=服务器发送的湿度值-停止吹气值)-->
<add key="StopBlowValue" value="4" /> <add key="StopBlowValue" value="4"/>
<!--Server address--> <!--Server address-->
<add key="http.server" value="http://localhost/myproject/" /> <add key="http.server" value="http://localhost/myproject/"/>
<!--storeType--> <!--storeType-->
<add key="store_count" value="2" /> <add key="store_count" value="2"/>
<add key="Store_ConfigPath" value="\StoreConfig\StoreConfig.csv" /> <add key="Store_ConfigPath" value="\StoreConfig\StoreConfig.csv"/>
<!--start one store config--> <!--start one store config-->
<add key="Store_Position_Config" value="\StoreConfig\linePositions.csv" /> <add key="Store_Position_Config" value="\StoreConfig\linePositions.csv"/>
<add key="BOX_ConfigPath" value="\StoreConfig\BoxConfig.csv" /> <add key="BOX_ConfigPath" value="\StoreConfig\BoxConfig.csv"/>
<add key="Store_Type" value="RC_AC_PA" /> <add key="Store_Type" value="RC_AC_PA"/>
<add key="Store_CID" value="duo-store" /> <add key="Store_CID" value="duo-store"/>
<add key="Store_CID_1" value="duo-1" /> <add key="Store_CID_1" value="duo-1"/>
<add key="Store_CID_2" value="duo-2" /> <add key="Store_CID_2" value="duo-2"/>
<add key="Store_CID_1_disabled" value="1" /> <add key="Store_CID_1_disabled" value="1"/>
<add key="Store_CID_2_disabled" value="1" /> <add key="Store_CID_2_disabled" value="1"/>
<!--end one store config--> <!--end one store config-->
<add key="ACBaudRate" value="115200" /> <add key="ACBaudRate" value="115200"/>
<add key="Config_Pwd" value="123456" /> <add key="Config_Pwd" value="123456"/>
<!--二维码类型列表配置,用#分割,一维码=Barcode 二维码: QR Code#Data Matrix ECC 200#Micro QR Code--> <!--二维码类型列表配置,用#分割,一维码=Barcode 二维码: QR Code#Data Matrix ECC 200#Micro QR Code-->
<add key="CodeType" value="QR Code#Data Matrix ECC 200" /> <add key="CodeType" value="QR Code#Data Matrix ECC 200"/>
<!--二维码参数文件所在路径,文件名与二维码类型名一样--> <!--二维码参数文件所在路径,文件名与二维码类型名一样-->
<add key="CodeParamPath" value="\CodeParam\" /> <add key="CodeParamPath" value="\CodeParam\"/>
<!--出库等待料盘拿走的时间,秒--> <!--出库等待料盘拿走的时间,秒-->
<add key="OutStoreWaitSeconds" value="1" /> <add key="OutStoreWaitSeconds" value="1"/>
<!--温控器类型,0=壁挂王字壳温湿度变送器,1=妙昕温湿度记录仪--> <!--温控器类型,0=壁挂王字壳温湿度变送器,1=妙昕温湿度记录仪-->
<add key="HumitureControllerType" value="0" /> <add key="HumitureControllerType" value="0"/>
<add key="UseBuzzer" value="0" /> <add key="UseBuzzer" value="0"/>
<!--IO模块是否主动上传--> <!--IO模块是否主动上传-->
<add key="AIOAutoUpload" value="0" /> <add key="AIOAutoUpload" value="0"/>
<add key="CodeCount" value="3" /> <add key="CodeCount" value="3"/>
<add key="Tool_P3_Offset" value="70" /> <add key="Tool_P3_Offset" value="70"/>
<add key="Tool_P4_Offset" value="-20" /> <add key="Tool_P4_Offset" value="-20"/>
<add key="Tool_P5_Offset" value="-20" /> <add key="Tool_P5_Offset" value="-20"/>
<add key="Tool_P6_Offset" value="70" /> <add key="Tool_P6_Offset" value="70"/>
<add key="Tool_TargetSpeed" value="20" /> <add key="Tool_TargetSpeed" value="20"/>
<add key="Tool_TargetPosition" value="10420" /> <add key="Tool_TargetPosition" value="10420"/>
<add key="Agv_Log_Open" value="1" /> <add key="Agv_Log_Open" value="1"/>
<!--进出轴位置--> <!--进出轴位置-->
<add key ="InOutDefaultPosition" value ="3000"/> <add key="InOutDefaultPosition" value="3000"/>
<!--当前料架信息-料架号--> <!--当前料架信息-料架号-->
<add key ="CurrShelfNum" value ="-1"/> <add key="CurrShelfNum" value="-1"/>
<!--当前料架信息-料架类型,0=空料架,1=入库料架,2=出库料架--> <!--当前料架信息-料架类型,0=空料架,1=入库料架,2=出库料架-->
<add key ="CurrShelfType" value ="-1"/> <add key="CurrShelfType" value="-1"/>
<add key ="HasT4Axis" value ="true"/> <add key="HasT4Axis" value="true"/>
<add key ="AgvServerIp" value ="192.168.11.11"/> <add key="AgvServerIp" value="192.168.11.11"/>
<add key="Code_Block_Size_List" value="17,19"/>
</appSettings> </appSettings>
<log4net> <log4net>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="logs/duoStore.log" /> <file value="logs/duoStore.log"/>
<param name="Encoding" value="UTF-8" /> <param name="Encoding" value="UTF-8"/>
<appendToFile value="true" /> <appendToFile value="true"/>
<rollingStyle value="Date" /> <rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd" /> <datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout"> <layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date][%t]%-5p %m%n" /> <conversionPattern value="[%date][%t]%-5p %m%n"/>
</layout> </layout>
</appender> </appender>
<appender name="Rmaxis" type="log4net.Appender.RollingFileAppender"> <appender name="Rmaxis" type="log4net.Appender.RollingFileAppender">
<file value="logs/Rmaxis.log" /> <file value="logs/Rmaxis.log"/>
<param name="Encoding" value="UTF-8" /> <param name="Encoding" value="UTF-8"/>
<appendToFile value="true" /> <appendToFile value="true"/>
<rollingStyle value="Date" /> <rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd" /> <datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout"> <layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date][%t]%-5p %m%n" /> <conversionPattern value="[%date][%t]%-5p %m%n"/>
</layout> </layout>
</appender> </appender>
<appender name="AIOBOX" type="log4net.Appender.RollingFileAppender"> <appender name="AIOBOX" type="log4net.Appender.RollingFileAppender">
<file value="logs/aio/AIOBOX.log" /> <file value="logs/aio/AIOBOX.log"/>
<param name="Encoding" value="UTF-8" /> <param name="Encoding" value="UTF-8"/>
<appendToFile value="true" /> <appendToFile value="true"/>
<rollingStyle value="Date" /> <rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd" /> <datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout"> <layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date][%t]%-5p %m%n" /> <conversionPattern value="[%date][%t]%-5p %m%n"/>
</layout> </layout>
</appender> </appender>
<appender name="HCBOARD" type="log4net.Appender.RollingFileAppender">
<file value="logs/HCBOARD.log"/>
<param name="Encoding" value="UTF-8"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date][%t] %m%n"/>
</layout>
</appender>
<logger name="RollingLogFileAppender"> <logger name="RollingLogFileAppender">
<level value="Info" /> <level value="Info"/>
<appender-ref ref="RollingLogFileAppender" /> <appender-ref ref="RollingLogFileAppender"/>
</logger> </logger>
<logger name="AIOBOX"> <logger name="AIOBOX">
<level value="Info" /> <level value="Info"/>
<appender-ref ref="AIOBOX" /> <appender-ref ref="AIOBOX"/>
</logger> </logger>
<logger name="Rmaxis"> <logger name="Rmaxis">
<level value="ALL" /> <level value="ALL"/>
<appender-ref ref="Rmaxis" /> <appender-ref ref="Rmaxis"/>
</logger>
<logger name="HCBOARD" additivity="false">
<level value="ALL"/>
<appender-ref ref="HCBOARD"/>
</logger> </logger>
<!--<root> <!--<root>
<level value="Info" /> <level value="Info" />
...@@ -108,6 +123,6 @@ ...@@ -108,6 +123,6 @@
</root>--> </root>-->
</log4net> </log4net>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
</startup> </startup>
</configuration>
\ No newline at end of file \ No newline at end of file
</configuration>
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>OnlineStore.DUOStore</RootNamespace> <RootNamespace>OnlineStore.DUOStore</RootNamespace>
<AssemblyName>DUOStore</AssemblyName> <AssemblyName>DUOStore</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
......
...@@ -11,7 +11,7 @@ using System.Windows.Forms; ...@@ -11,7 +11,7 @@ using System.Windows.Forms;
namespace OnlineStore.DUOStore namespace OnlineStore.DUOStore
{ {
public class FormManager public class FormManager
{ {
private static FrmAxisDebug debug = null; private static FrmAxisDebug debug = null;
public static void CloseAxisDebug() public static void CloseAxisDebug()
......
...@@ -65,6 +65,8 @@ namespace OnlineStore.DUOStore ...@@ -65,6 +65,8 @@ namespace OnlineStore.DUOStore
this.btnMiddleP3 = new System.Windows.Forms.Button(); this.btnMiddleP3 = new System.Windows.Forms.Button();
this.axisMoveControl1 = new OnlineStore.DUOStore.AxisMoveControl(); this.axisMoveControl1 = new OnlineStore.DUOStore.AxisMoveControl();
this.btnSotreReset = new System.Windows.Forms.Button(); this.btnSotreReset = new System.Windows.Forms.Button();
this.txtInOutP6 = new System.Windows.Forms.TextBox();
this.btnInOutP6 = new System.Windows.Forms.Button();
this.groupInout.SuspendLayout(); this.groupInout.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
...@@ -75,6 +77,8 @@ namespace OnlineStore.DUOStore ...@@ -75,6 +77,8 @@ namespace OnlineStore.DUOStore
// //
// groupInout // groupInout
// //
this.groupInout.Controls.Add(this.txtInOutP6);
this.groupInout.Controls.Add(this.btnInOutP6);
this.groupInout.Controls.Add(this.btnSaveP); this.groupInout.Controls.Add(this.btnSaveP);
this.groupInout.Controls.Add(this.txtT2P4); this.groupInout.Controls.Add(this.txtT2P4);
this.groupInout.Controls.Add(this.btnT2P4); this.groupInout.Controls.Add(this.btnT2P4);
...@@ -121,7 +125,7 @@ namespace OnlineStore.DUOStore ...@@ -121,7 +125,7 @@ namespace OnlineStore.DUOStore
// btnSaveP // btnSaveP
// //
this.btnSaveP.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnSaveP.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnSaveP.Location = new System.Drawing.Point(372, 357); this.btnSaveP.Location = new System.Drawing.Point(372, 404);
this.btnSaveP.Name = "btnSaveP"; this.btnSaveP.Name = "btnSaveP";
this.btnSaveP.Size = new System.Drawing.Size(128, 39); this.btnSaveP.Size = new System.Drawing.Size(128, 39);
this.btnSaveP.TabIndex = 313; this.btnSaveP.TabIndex = 313;
...@@ -181,7 +185,7 @@ namespace OnlineStore.DUOStore ...@@ -181,7 +185,7 @@ namespace OnlineStore.DUOStore
// btnAxisOff // btnAxisOff
// //
this.btnAxisOff.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnAxisOff.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnAxisOff.Location = new System.Drawing.Point(372, 277); this.btnAxisOff.Location = new System.Drawing.Point(372, 324);
this.btnAxisOff.Name = "btnAxisOff"; this.btnAxisOff.Name = "btnAxisOff";
this.btnAxisOff.Size = new System.Drawing.Size(128, 39); this.btnAxisOff.Size = new System.Drawing.Size(128, 39);
this.btnAxisOff.TabIndex = 276; this.btnAxisOff.TabIndex = 276;
...@@ -211,7 +215,7 @@ namespace OnlineStore.DUOStore ...@@ -211,7 +215,7 @@ namespace OnlineStore.DUOStore
// btnAxisOn // btnAxisOn
// //
this.btnAxisOn.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnAxisOn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnAxisOn.Location = new System.Drawing.Point(372, 232); this.btnAxisOn.Location = new System.Drawing.Point(372, 279);
this.btnAxisOn.Name = "btnAxisOn"; this.btnAxisOn.Name = "btnAxisOn";
this.btnAxisOn.Size = new System.Drawing.Size(128, 39); this.btnAxisOn.Size = new System.Drawing.Size(128, 39);
this.btnAxisOn.TabIndex = 275; this.btnAxisOn.TabIndex = 275;
...@@ -713,6 +717,40 @@ namespace OnlineStore.DUOStore ...@@ -713,6 +717,40 @@ namespace OnlineStore.DUOStore
this.btnSotreReset.UseVisualStyleBackColor = true; this.btnSotreReset.UseVisualStyleBackColor = true;
this.btnSotreReset.Click += new System.EventHandler(this.btnSotreReset_Click); this.btnSotreReset.Click += new System.EventHandler(this.btnSotreReset_Click);
// //
// txtInOutP6
//
this.txtInOutP6.AcceptsReturn = true;
this.txtInOutP6.BackColor = System.Drawing.SystemColors.Window;
this.txtInOutP6.Cursor = System.Windows.Forms.Cursors.IBeam;
this.txtInOutP6.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtInOutP6.ForeColor = System.Drawing.SystemColors.WindowText;
this.txtInOutP6.Location = new System.Drawing.Point(583, 185);
this.txtInOutP6.MaxLength = 0;
this.txtInOutP6.Name = "txtInOutP6";
this.txtInOutP6.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.txtInOutP6.Size = new System.Drawing.Size(89, 23);
this.txtInOutP6.TabIndex = 316;
this.txtInOutP6.Text = "999999";
//
// btnInOutP6
//
this.btnInOutP6.AutoSize = true;
this.btnInOutP6.BackColor = System.Drawing.SystemColors.Control;
this.btnInOutP6.Cursor = System.Windows.Forms.Cursors.Default;
this.btnInOutP6.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnInOutP6.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnInOutP6.ForeColor = System.Drawing.Color.DarkGoldenrod;
this.btnInOutP6.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.btnInOutP6.Location = new System.Drawing.Point(372, 180);
this.btnInOutP6.Name = "btnInOutP6";
this.btnInOutP6.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.btnInOutP6.Size = new System.Drawing.Size(205, 33);
this.btnInOutP6.TabIndex = 315;
this.btnInOutP6.Text = "T4_进出轴13寸取料点进入前点P6";
this.btnInOutP6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.btnInOutP6.UseVisualStyleBackColor = false;
this.btnInOutP6.Click += new System.EventHandler(this.btnInOutP6_Click);
//
// FrmAxisMove // FrmAxisMove
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
...@@ -775,6 +813,8 @@ namespace OnlineStore.DUOStore ...@@ -775,6 +813,8 @@ namespace OnlineStore.DUOStore
public System.Windows.Forms.TextBox txtInOutP3; public System.Windows.Forms.TextBox txtInOutP3;
public System.Windows.Forms.Button btnInOutP3; public System.Windows.Forms.Button btnInOutP3;
private System.Windows.Forms.Button btnSotreReset; private System.Windows.Forms.Button btnSotreReset;
public System.Windows.Forms.TextBox txtInOutP6;
public System.Windows.Forms.Button btnInOutP6;
} }
} }
...@@ -65,8 +65,7 @@ namespace OnlineStore.DUOStore ...@@ -65,8 +65,7 @@ namespace OnlineStore.DUOStore
txtInOutP2.Text = StoreManager.Store.Config.InOutAxis_P2.ToString(); txtInOutP2.Text = StoreManager.Store.Config.InOutAxis_P2.ToString();
txtInOutP3.Text = StoreManager.Store.Config.InOutAxis_P3.ToString(); txtInOutP3.Text = StoreManager.Store.Config.InOutAxis_P3.ToString();
txtInOutP4.Text = StoreManager.Store.Config.InOutAxis_P4.ToString(); txtInOutP4.Text = StoreManager.Store.Config.InOutAxis_P4.ToString();
txtInOutP6.Text = StoreManager.Store.Config.InOutAxis_P6.ToString();
} }
internal void DebugStatus(bool isDebug) internal void DebugStatus(bool isDebug)
...@@ -167,6 +166,11 @@ namespace OnlineStore.DUOStore ...@@ -167,6 +166,11 @@ namespace OnlineStore.DUOStore
{ {
AxisABSMove(StoreManager.Store.T4_InOut_Axis, txtInOutP4, StoreManager.Store.Config.InOutAxis_P4Speed); AxisABSMove(StoreManager.Store.T4_InOut_Axis, txtInOutP4, StoreManager.Store.Config.InOutAxis_P4Speed);
} }
private void btnInOutP6_Click(object sender, EventArgs e)
{
AxisABSMove(StoreManager.Store.T4_InOut_Axis, txtInOutP6, StoreManager.Store.Config.InOutAxis_P3Speed);
}
private void btnSaveP_Click(object sender, EventArgs e) private void btnSaveP_Click(object sender, EventArgs e)
{ {
Store_Config config = StoreManager.Config; Store_Config config = StoreManager.Config;
...@@ -187,7 +191,7 @@ namespace OnlineStore.DUOStore ...@@ -187,7 +191,7 @@ namespace OnlineStore.DUOStore
config.InOutAxis_P2 = FormUtil.GetIntValue(txtInOutP2); config.InOutAxis_P2 = FormUtil.GetIntValue(txtInOutP2);
config.InOutAxis_P3 = FormUtil.GetIntValue(txtInOutP3); config.InOutAxis_P3 = FormUtil.GetIntValue(txtInOutP3);
config.InOutAxis_P4 = FormUtil.GetIntValue(txtInOutP4); config.InOutAxis_P4 = FormUtil.GetIntValue(txtInOutP4);
config.InOutAxis_P6 = FormUtil.GetIntValue(txtInOutP6);
bool result = StoreManager.UpdateStoreConfig(config); bool result = StoreManager.UpdateStoreConfig(config);
if (result) if (result)
{ {
...@@ -228,5 +232,7 @@ namespace OnlineStore.DUOStore ...@@ -228,5 +232,7 @@ namespace OnlineStore.DUOStore
//btnSotreReset.Enabled = false; //btnSotreReset.Enabled = false;
} }
} }
} }
} }
...@@ -111,6 +111,7 @@ namespace OnlineStore.DUOStore ...@@ -111,6 +111,7 @@ namespace OnlineStore.DUOStore
this.lblWarnMsg = new System.Windows.Forms.Label(); this.lblWarnMsg = new System.Windows.Forms.Label();
this.lblThisSta = new System.Windows.Forms.Label(); this.lblThisSta = new System.Windows.Forms.Label();
this.chbDisable = new System.Windows.Forms.CheckBox(); this.chbDisable = new System.Windows.Forms.CheckBox();
this.cmbHight = new System.Windows.Forms.ComboBox();
this.groupBox4.SuspendLayout(); this.groupBox4.SuspendLayout();
this.groupBox1.SuspendLayout(); this.groupBox1.SuspendLayout();
this.tabControl1.SuspendLayout(); this.tabControl1.SuspendLayout();
...@@ -131,7 +132,7 @@ namespace OnlineStore.DUOStore ...@@ -131,7 +132,7 @@ namespace OnlineStore.DUOStore
this.chbDebug.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.chbDebug.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.chbDebug.AutoSize = true; this.chbDebug.AutoSize = true;
this.chbDebug.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.chbDebug.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chbDebug.Location = new System.Drawing.Point(10, 597); this.chbDebug.Location = new System.Drawing.Point(157, 480);
this.chbDebug.Name = "chbDebug"; this.chbDebug.Name = "chbDebug";
this.chbDebug.Size = new System.Drawing.Size(84, 24); this.chbDebug.Size = new System.Drawing.Size(84, 24);
this.chbDebug.TabIndex = 271; this.chbDebug.TabIndex = 271;
...@@ -241,6 +242,7 @@ namespace OnlineStore.DUOStore ...@@ -241,6 +242,7 @@ namespace OnlineStore.DUOStore
// //
this.groupInout.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) this.groupInout.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right))); | System.Windows.Forms.AnchorStyles.Right)));
this.groupInout.Controls.Add(this.cmbHight);
this.groupInout.Controls.Add(this.btnNgPro); this.groupInout.Controls.Add(this.btnNgPro);
this.groupInout.Controls.Add(this.btnAxisP); this.groupInout.Controls.Add(this.btnAxisP);
this.groupInout.Controls.Add(this.btnSingleOut); this.groupInout.Controls.Add(this.btnSingleOut);
...@@ -302,7 +304,7 @@ namespace OnlineStore.DUOStore ...@@ -302,7 +304,7 @@ namespace OnlineStore.DUOStore
this.btnNgPro.BackColor = System.Drawing.Color.White; this.btnNgPro.BackColor = System.Drawing.Color.White;
this.btnNgPro.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnNgPro.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnNgPro.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnNgPro.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnNgPro.Location = new System.Drawing.Point(658, 21); this.btnNgPro.Location = new System.Drawing.Point(754, 21);
this.btnNgPro.Name = "btnNgPro"; this.btnNgPro.Name = "btnNgPro";
this.btnNgPro.Size = new System.Drawing.Size(128, 39); this.btnNgPro.Size = new System.Drawing.Size(128, 39);
this.btnNgPro.TabIndex = 310; this.btnNgPro.TabIndex = 310;
...@@ -326,7 +328,7 @@ namespace OnlineStore.DUOStore ...@@ -326,7 +328,7 @@ namespace OnlineStore.DUOStore
this.btnSingleOut.BackColor = System.Drawing.Color.White; this.btnSingleOut.BackColor = System.Drawing.Color.White;
this.btnSingleOut.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnSingleOut.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnSingleOut.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnSingleOut.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSingleOut.Location = new System.Drawing.Point(522, 21); this.btnSingleOut.Location = new System.Drawing.Point(618, 21);
this.btnSingleOut.Name = "btnSingleOut"; this.btnSingleOut.Name = "btnSingleOut";
this.btnSingleOut.Size = new System.Drawing.Size(128, 39); this.btnSingleOut.Size = new System.Drawing.Size(128, 39);
this.btnSingleOut.TabIndex = 309; this.btnSingleOut.TabIndex = 309;
...@@ -966,7 +968,7 @@ namespace OnlineStore.DUOStore ...@@ -966,7 +968,7 @@ namespace OnlineStore.DUOStore
this.btnSavePosition.BackColor = System.Drawing.Color.White; this.btnSavePosition.BackColor = System.Drawing.Color.White;
this.btnSavePosition.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnSavePosition.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnSavePosition.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnSavePosition.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSavePosition.Location = new System.Drawing.Point(658, 64); this.btnSavePosition.Location = new System.Drawing.Point(754, 64);
this.btnSavePosition.Name = "btnSavePosition"; this.btnSavePosition.Name = "btnSavePosition";
this.btnSavePosition.Size = new System.Drawing.Size(128, 39); this.btnSavePosition.Size = new System.Drawing.Size(128, 39);
this.btnSavePosition.TabIndex = 217; this.btnSavePosition.TabIndex = 217;
...@@ -979,7 +981,7 @@ namespace OnlineStore.DUOStore ...@@ -979,7 +981,7 @@ namespace OnlineStore.DUOStore
this.btnStartAuTo.BackColor = System.Drawing.Color.White; this.btnStartAuTo.BackColor = System.Drawing.Color.White;
this.btnStartAuTo.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnStartAuTo.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnStartAuTo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnStartAuTo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnStartAuTo.Location = new System.Drawing.Point(522, 64); this.btnStartAuTo.Location = new System.Drawing.Point(618, 64);
this.btnStartAuTo.Name = "btnStartAuTo"; this.btnStartAuTo.Name = "btnStartAuTo";
this.btnStartAuTo.Size = new System.Drawing.Size(128, 39); this.btnStartAuTo.Size = new System.Drawing.Size(128, 39);
this.btnStartAuTo.TabIndex = 222; this.btnStartAuTo.TabIndex = 222;
...@@ -1003,7 +1005,7 @@ namespace OnlineStore.DUOStore ...@@ -1003,7 +1005,7 @@ namespace OnlineStore.DUOStore
this.txtJiange.Name = "txtJiange"; this.txtJiange.Name = "txtJiange";
this.txtJiange.Size = new System.Drawing.Size(52, 26); this.txtJiange.Size = new System.Drawing.Size(52, 26);
this.txtJiange.TabIndex = 221; this.txtJiange.TabIndex = 221;
this.txtJiange.Text = "0"; this.txtJiange.Text = "3";
// //
// cmbPosition // cmbPosition
// //
...@@ -1021,7 +1023,7 @@ namespace OnlineStore.DUOStore ...@@ -1021,7 +1023,7 @@ namespace OnlineStore.DUOStore
this.btnInStore.BackColor = System.Drawing.Color.White; this.btnInStore.BackColor = System.Drawing.Color.White;
this.btnInStore.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnInStore.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnInStore.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnInStore.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnInStore.Location = new System.Drawing.Point(250, 21); this.btnInStore.Location = new System.Drawing.Point(346, 21);
this.btnInStore.Name = "btnInStore"; this.btnInStore.Name = "btnInStore";
this.btnInStore.Size = new System.Drawing.Size(128, 39); this.btnInStore.Size = new System.Drawing.Size(128, 39);
this.btnInStore.TabIndex = 102; this.btnInStore.TabIndex = 102;
...@@ -1034,7 +1036,7 @@ namespace OnlineStore.DUOStore ...@@ -1034,7 +1036,7 @@ namespace OnlineStore.DUOStore
this.btnOutStore.BackColor = System.Drawing.Color.White; this.btnOutStore.BackColor = System.Drawing.Color.White;
this.btnOutStore.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnOutStore.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnOutStore.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnOutStore.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnOutStore.Location = new System.Drawing.Point(386, 21); this.btnOutStore.Location = new System.Drawing.Point(482, 21);
this.btnOutStore.Name = "btnOutStore"; this.btnOutStore.Name = "btnOutStore";
this.btnOutStore.Size = new System.Drawing.Size(128, 39); this.btnOutStore.Size = new System.Drawing.Size(128, 39);
this.btnOutStore.TabIndex = 101; this.btnOutStore.TabIndex = 101;
...@@ -1337,7 +1339,7 @@ namespace OnlineStore.DUOStore ...@@ -1337,7 +1339,7 @@ namespace OnlineStore.DUOStore
this.chbDisable.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.chbDisable.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.chbDisable.AutoSize = true; this.chbDisable.AutoSize = true;
this.chbDisable.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.chbDisable.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chbDisable.Location = new System.Drawing.Point(10, 617); this.chbDisable.Location = new System.Drawing.Point(153, 510);
this.chbDisable.Name = "chbDisable"; this.chbDisable.Name = "chbDisable";
this.chbDisable.Size = new System.Drawing.Size(84, 24); this.chbDisable.Size = new System.Drawing.Size(84, 24);
this.chbDisable.TabIndex = 274; this.chbDisable.TabIndex = 274;
...@@ -1345,6 +1347,22 @@ namespace OnlineStore.DUOStore ...@@ -1345,6 +1347,22 @@ namespace OnlineStore.DUOStore
this.chbDisable.UseVisualStyleBackColor = true; this.chbDisable.UseVisualStyleBackColor = true;
this.chbDisable.CheckedChanged += new System.EventHandler(this.chbDisable_CheckedChanged); this.chbDisable.CheckedChanged += new System.EventHandler(this.chbDisable_CheckedChanged);
// //
// cmbHight
//
this.cmbHight.FormattingEnabled = true;
this.cmbHight.Items.AddRange(new object[] {
"8",
"12",
"16",
"24",
"32",
"56"});
this.cmbHight.Location = new System.Drawing.Point(252, 25);
this.cmbHight.Name = "cmbHight";
this.cmbHight.Size = new System.Drawing.Size(88, 28);
this.cmbHight.TabIndex = 311;
this.cmbHight.Text = "8";
//
// FrmBox // FrmBox
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
...@@ -1470,6 +1488,7 @@ namespace OnlineStore.DUOStore ...@@ -1470,6 +1488,7 @@ namespace OnlineStore.DUOStore
private System.Windows.Forms.Button btnNgPro; private System.Windows.Forms.Button btnNgPro;
private System.Windows.Forms.Label lblCanOut; private System.Windows.Forms.Label lblCanOut;
private System.Windows.Forms.CheckBox chbDisable; private System.Windows.Forms.CheckBox chbDisable;
private System.Windows.Forms.ComboBox cmbHight;
} }
} }
...@@ -76,7 +76,7 @@ namespace OnlineStore.DUOStore ...@@ -76,7 +76,7 @@ namespace OnlineStore.DUOStore
chbDebug.Checked = BoxBean.IsDebug; chbDebug.Checked = BoxBean.IsDebug;
this.ShowInTaskbar = true; this.ShowInTaskbar = true;
txtTempPort.Text = BoxBean.Config.Humiture_Port; txtTempPort.Text = BoxBean.Config.Humiture_Port;
timer1.Start(); timer1.Start();
} }
#endregion #endregion
...@@ -227,7 +227,7 @@ namespace OnlineStore.DUOStore ...@@ -227,7 +227,7 @@ namespace OnlineStore.DUOStore
{ {
string selectPositionNum = cmbPosition.Text; string selectPositionNum = cmbPosition.Text;
LineMoveP ktk = LoadPostion(); LineMoveP ktk = LoadPostion();
BoxBean.StartInStoreMove(new InOutParam(MoveType.InStore, "", selectPositionNum, ktk)); BoxBean.StartInStoreMove(new InOutParam(MoveType.InStore, "#test#", selectPositionNum, ktk));
} }
else else
{ {
...@@ -239,7 +239,8 @@ namespace OnlineStore.DUOStore ...@@ -239,7 +239,8 @@ namespace OnlineStore.DUOStore
{ {
LineMoveP ktk = new LineMoveP(); LineMoveP ktk = new LineMoveP();
ktk.ComPress_P1 = FormUtil.GetIntValue(txtComP1); ktk.ComPress_P1 = FormUtil.GetIntValue(txtComP1);
ktk.ComPress_P2 = FormUtil.GetIntValue(txtComP2); //ktk.ComPress_P2 = FormUtil.GetIntValue(txtComP2);
ktk.ComPress_P2 = BoxBean.Config.GetComP2(FormUtil.GetIntValue(cmbHight));
ktk.ComPress_P3 = FormUtil.GetIntValue(txtComP3); ktk.ComPress_P3 = FormUtil.GetIntValue(txtComP3);
ktk.InOut_P1 = FormUtil.GetIntValue(txtInOutP1); ktk.InOut_P1 = FormUtil.GetIntValue(txtInOutP1);
ktk.InOut_P2 = FormUtil.GetIntValue(txtInOutP2); ktk.InOut_P2 = FormUtil.GetIntValue(txtInOutP2);
...@@ -298,7 +299,7 @@ namespace OnlineStore.DUOStore ...@@ -298,7 +299,7 @@ namespace OnlineStore.DUOStore
acPosition.UpdownAxis_IL_P4 = FormUtil.GetIntValue(txtUpDownP4); acPosition.UpdownAxis_IL_P4 = FormUtil.GetIntValue(txtUpDownP4);
acPosition.UpdownAxis_OH_P5 = FormUtil.GetIntValue(txtUpDownP5); acPosition.UpdownAxis_OH_P5 = FormUtil.GetIntValue(txtUpDownP5);
acPosition.UpdownAxis_OL_P6 = FormUtil.GetIntValue(txtUpDownP6); acPosition.UpdownAxis_OL_P6 = FormUtil.GetIntValue(txtUpDownP6);
acPosition.ComAxis_P2 = FormUtil.GetIntValue(txtComP2); //acPosition.ComAxis_P2 = FormUtil.GetIntValue(txtComP2);
acPosition.ComAxis_P3 = FormUtil.GetIntValue(txtComP3); acPosition.ComAxis_P3 = FormUtil.GetIntValue(txtComP3);
} }
//位置配置 //位置配置
...@@ -423,7 +424,7 @@ namespace OnlineStore.DUOStore ...@@ -423,7 +424,7 @@ namespace OnlineStore.DUOStore
private void AxisAbsMove(ConfigMoveAxis moveAxis, TextBox txtValue, int targetSpeed) private void AxisAbsMove(ConfigMoveAxis moveAxis, TextBox txtValue, int targetSpeed)
{ {
if (moveAxis.IsSameAxis(BoxBean.Config.UpDown_Axis) || moveAxis.IsSameAxis(BoxBean.Config.UpDown_Axis)) if (moveAxis.IsSameAxis(BoxBean.Config.UpDown_Axis) || moveAxis.IsSameAxis(BoxBean.Config.Middle_Axis))
{ {
if (!InOutIsIsP1()) if (!InOutIsIsP1())
{ {
......
...@@ -32,7 +32,10 @@ ...@@ -32,7 +32,10 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmStore)); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmStore));
this.tabControl1 = new System.Windows.Forms.TabControl(); this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage(); this.tabPage1 = new System.Windows.Forms.TabPage();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.panel1 = new System.Windows.Forms.Panel(); this.panel1 = new System.Windows.Forms.Panel();
this.BTN_ReleaseShelf = new System.Windows.Forms.Button();
this.chbInstoreEnd = new System.Windows.Forms.CheckBox(); this.chbInstoreEnd = new System.Windows.Forms.CheckBox();
this.chkDebug = new System.Windows.Forms.CheckBox(); this.chkDebug = new System.Windows.Forms.CheckBox();
this.lblMoveInfo = new System.Windows.Forms.Label(); this.lblMoveInfo = new System.Windows.Forms.Label();
...@@ -75,6 +78,8 @@ ...@@ -75,6 +78,8 @@
this.timer1 = new System.Windows.Forms.Timer(this.components); this.timer1 = new System.Windows.Forms.Timer(this.components);
this.tabControl1.SuspendLayout(); this.tabControl1.SuspendLayout();
this.tabPage1.SuspendLayout(); this.tabPage1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.panel1.SuspendLayout(); this.panel1.SuspendLayout();
this.menuStrip1.SuspendLayout(); this.menuStrip1.SuspendLayout();
this.contextMenuStrip1.SuspendLayout(); this.contextMenuStrip1.SuspendLayout();
...@@ -99,6 +104,8 @@ ...@@ -99,6 +104,8 @@
// //
// tabPage1 // tabPage1
// //
this.tabPage1.Controls.Add(this.pictureBox2);
this.tabPage1.Controls.Add(this.pictureBox1);
this.tabPage1.Controls.Add(this.panel1); this.tabPage1.Controls.Add(this.panel1);
this.tabPage1.Controls.Add(this.listView1); this.tabPage1.Controls.Add(this.listView1);
this.tabPage1.Controls.Add(this.lblServerMsg); this.tabPage1.Controls.Add(this.lblServerMsg);
...@@ -110,10 +117,29 @@ ...@@ -110,10 +117,29 @@
this.tabPage1.Text = " 日志信息 "; this.tabPage1.Text = " 日志信息 ";
this.tabPage1.UseVisualStyleBackColor = true; this.tabPage1.UseVisualStyleBackColor = true;
// //
// pictureBox2
//
this.pictureBox2.Location = new System.Drawing.Point(703, 374);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(376, 236);
this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox2.TabIndex = 273;
this.pictureBox2.TabStop = false;
//
// pictureBox1
//
this.pictureBox1.Location = new System.Drawing.Point(703, 126);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(376, 242);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox1.TabIndex = 272;
this.pictureBox1.TabStop = false;
//
// panel1 // panel1
// //
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right))); | System.Windows.Forms.AnchorStyles.Right)));
this.panel1.Controls.Add(this.BTN_ReleaseShelf);
this.panel1.Controls.Add(this.chbInstoreEnd); this.panel1.Controls.Add(this.chbInstoreEnd);
this.panel1.Controls.Add(this.chkDebug); this.panel1.Controls.Add(this.chkDebug);
this.panel1.Controls.Add(this.lblMoveInfo); this.panel1.Controls.Add(this.lblMoveInfo);
...@@ -128,6 +154,19 @@ ...@@ -128,6 +154,19 @@
this.panel1.Size = new System.Drawing.Size(182, 623); this.panel1.Size = new System.Drawing.Size(182, 623);
this.panel1.TabIndex = 271; this.panel1.TabIndex = 271;
// //
// BTN_ReleaseShelf
//
this.BTN_ReleaseShelf.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.BTN_ReleaseShelf.BackColor = System.Drawing.Color.White;
this.BTN_ReleaseShelf.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.BTN_ReleaseShelf.Location = new System.Drawing.Point(12, 366);
this.BTN_ReleaseShelf.Name = "BTN_ReleaseShelf";
this.BTN_ReleaseShelf.Size = new System.Drawing.Size(140, 35);
this.BTN_ReleaseShelf.TabIndex = 272;
this.BTN_ReleaseShelf.Text = "强制释放料架";
this.BTN_ReleaseShelf.UseVisualStyleBackColor = false;
this.BTN_ReleaseShelf.Click += new System.EventHandler(this.BTN_ReleaseShelf_Click);
//
// chbInstoreEnd // chbInstoreEnd
// //
this.chbInstoreEnd.AutoSize = true; this.chbInstoreEnd.AutoSize = true;
...@@ -509,6 +548,8 @@ ...@@ -509,6 +548,8 @@
this.tabControl1.ResumeLayout(false); this.tabControl1.ResumeLayout(false);
this.tabPage1.ResumeLayout(false); this.tabPage1.ResumeLayout(false);
this.tabPage1.PerformLayout(); this.tabPage1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.panel1.ResumeLayout(false); this.panel1.ResumeLayout(false);
this.panel1.PerformLayout(); this.panel1.PerformLayout();
this.menuStrip1.ResumeLayout(false); this.menuStrip1.ResumeLayout(false);
...@@ -564,6 +605,9 @@ ...@@ -564,6 +605,9 @@
private System.Windows.Forms.Panel panel1; private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.CheckBox chbInstoreEnd; private System.Windows.Forms.CheckBox chbInstoreEnd;
private System.Windows.Forms.ToolStripMenuItem 显示日志ToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem 显示日志ToolStripMenuItem;
private System.Windows.Forms.Button BTN_ReleaseShelf;
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.PictureBox pictureBox2;
} }
} }
...@@ -57,7 +57,8 @@ namespace OnlineStore.DUOStore ...@@ -57,7 +57,8 @@ namespace OnlineStore.DUOStore
AddForm(" 取料提升机构 ", new FrmAxisMove()); AddForm(" 取料提升机构 ", new FrmAxisMove());
AddForm(" IO状态查看 ", new FrmIOStatus()); AddForm(" IO状态查看 ", new FrmIOStatus());
chbAutoRun.Checked = store.UseBuzzer; chbUseBuzzer.Checked = (ConfigAppSettings.GetIntValue(Setting_Init.UseBuzzer).Equals(1));
//store.UseBuzzer = chbUseBuzzer.Checked;
this.Text = ConfigAppSettings.GetValue(Setting_Init.App_Title); this.Text = ConfigAppSettings.GetValue(Setting_Init.App_Title);
chbAutoRun.Checked = (ConfigAppSettings.GetIntValue(Setting_Init.App_AutoRun).Equals(1)); chbAutoRun.Checked = (ConfigAppSettings.GetIntValue(Setting_Init.App_AutoRun).Equals(1));
LoadListView(); LoadListView();
...@@ -65,7 +66,8 @@ namespace OnlineStore.DUOStore ...@@ -65,7 +66,8 @@ namespace OnlineStore.DUOStore
chbOutstoreEnd.Checked = store.OutstoreEndSendShelf; chbOutstoreEnd.Checked = store.OutstoreEndSendShelf;
LoadOk = true; LoadOk = true;
//LogUtil.logBox = this.logBox; //LogUtil.logBox = this.logBox;
store.BoxMap[1].camera_event += FrmStore_camera_event;
store.BoxMap[2].camera_event += FrmStore_camera_event2;
this.timer1.Start(); this.timer1.Start();
} }
catch (Exception ex) catch (Exception ex)
...@@ -75,6 +77,14 @@ namespace OnlineStore.DUOStore ...@@ -75,6 +77,14 @@ namespace OnlineStore.DUOStore
} }
} }
private void FrmStore_camera_event(object sender, Bitmap e)
{
pictureBox1.Image = e;
}
private void FrmStore_camera_event2(object sender, Bitmap e)
{
pictureBox2.Image = e;
}
private void LogUtil_showLogEvent(string msg, Color color) private void LogUtil_showLogEvent(string msg, Color color)
{ {
this.Invoke(new Action(() => { this.Invoke(new Action(() => {
...@@ -738,5 +748,12 @@ namespace OnlineStore.DUOStore ...@@ -738,5 +748,12 @@ namespace OnlineStore.DUOStore
btnClearLog.Visible = logBox.Visible; btnClearLog.Visible = logBox.Visible;
} }
private void BTN_ReleaseShelf_Click(object sender, EventArgs e)
{
if (!StoreManager.Store.ReleaseShelf()) {
MessageBox.Show("料串正在出入库中,不满足释放条件");
}
}
} }
} }
...@@ -94,6 +94,7 @@ namespace OnlineStore.DUOStore ...@@ -94,6 +94,7 @@ namespace OnlineStore.DUOStore
} }
} }
} }
System.Environment.CurrentDirectory = Application.StartupPath;
if (!isShow) if (!isShow)
{ {
XmlConfigurator.Configure(); XmlConfigurator.Configure();
......
...@@ -19,7 +19,7 @@ namespace OnlineStore.DUOStore.Properties { ...@@ -19,7 +19,7 @@ namespace OnlineStore.DUOStore.Properties {
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。 // (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources { internal class Resources {
...@@ -47,8 +47,8 @@ namespace OnlineStore.DUOStore.Properties { ...@@ -47,8 +47,8 @@ namespace OnlineStore.DUOStore.Properties {
} }
/// <summary> /// <summary>
/// 重写当前线程的 CurrentUICulture 属性 /// 重写当前线程的 CurrentUICulture 属性,对
/// 重写当前线程的 CurrentUICulture 属性 /// 使用此强类型资源类的所有资源查找执行重写
/// </summary> /// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture { internal static global::System.Globalization.CultureInfo Culture {
......
...@@ -12,7 +12,7 @@ namespace OnlineStore.DUOStore.Properties { ...@@ -12,7 +12,7 @@ namespace OnlineStore.DUOStore.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.8.1.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
......
...@@ -19,12 +19,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -19,12 +19,12 @@ namespace OnlineStore.DeviceLibrary
{ {
return HCBoardManager.CloseCard(); return HCBoardManager.CloseCard();
} }
public override void AbsMove(string portName, short slvAddr, int targetPosition, int targetSpeed,int ptpAcc,int ptpDec) public override void AbsMove(string portName, short slvAddr, int targetPosition, int targetSpeed, int ptpAcc, int ptpDec)
{ {
HCLogUtil.LOGGER.Info($"slvAddr={slvAddr},targetPosition={targetPosition},targetSpeed={targetSpeed},ptpAcc={ptpAcc},ptpDec={ptpDec}"); HCLogUtil.LOGGER.Info($"slvAddr={slvAddr},targetPosition={targetPosition},targetSpeed={targetSpeed},ptpAcc={ptpAcc},ptpDec={ptpDec}");
HCBoardManager.AbsMove((short)slvAddr, targetPosition, targetSpeed, ptpAcc, ptpDec); HCBoardManager.AbsMove((short)slvAddr, targetPosition, targetSpeed, ptpAcc, ptpDec);
} }
public override void AlarmClear(string portName, short slvAddr) public override void AlarmClear(string portName, short slvAddr)
{ {
HCBoardManager.ClearAxisSts((short)slvAddr); HCBoardManager.ClearAxisSts((short)slvAddr);
...@@ -34,15 +34,15 @@ namespace OnlineStore.DeviceLibrary ...@@ -34,15 +34,15 @@ namespace OnlineStore.DeviceLibrary
return true; return true;
} }
public override void ClearSpeed() public override void ClearSpeed()
{ {
} }
public override void CloseAllPort() public override void CloseAllPort()
{ {
} }
public override void ColsePort(string portName) public override void ColsePort(string portName)
{ {
} }
...@@ -58,7 +58,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -58,7 +58,7 @@ namespace OnlineStore.DeviceLibrary
public override int GetAlarmStatus(string portName, short slvAddr) public override int GetAlarmStatus(string portName, short slvAddr)
{ {
AxisSts axisS= HCBoardManager.GetAxisSts(slvAddr); AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr);
return axisS.ALM; return axisS.ALM;
} }
...@@ -70,7 +70,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -70,7 +70,7 @@ namespace OnlineStore.DeviceLibrary
public override int GetHomeEndStatus(string portName, short slvAddr) public override int GetHomeEndStatus(string portName, short slvAddr)
{ {
return (int) HCBoardManager.GetHomeStatus(slvAddr); return (int)HCBoardManager.GetHomeStatus(slvAddr);
} }
public override int GetHomeSingle(string portName, short slvAddr) public override int GetHomeSingle(string portName, short slvAddr)
...@@ -83,7 +83,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -83,7 +83,7 @@ namespace OnlineStore.DeviceLibrary
{ {
AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr); AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr);
return axisS.NEL; return axisS.NEL;
} }
public override int GetLimitPositiveSingle(string portName, short slvAddr) public override int GetLimitPositiveSingle(string portName, short slvAddr)
{ {
AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr); AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr);
...@@ -97,22 +97,22 @@ namespace OnlineStore.DeviceLibrary ...@@ -97,22 +97,22 @@ namespace OnlineStore.DeviceLibrary
public override void HomeMove(string portName, short slvAddr, int highVel, int lowVel, int acc) public override void HomeMove(string portName, short slvAddr, int highVel, int lowVel, int acc)
{ {
HCBoardManager.StartHomeMove(slvAddr,(uint) highVel, (uint)lowVel, (uint)acc); HCBoardManager.StartHomeMove(slvAddr, (uint)highVel, (uint)lowVel, (uint)acc);
} }
public override bool IsHomeMoveEnd(string portName, short slvAddr) public override bool IsHomeMoveEnd(string portName, short slvAddr)
{ {
return HCBoardManager.HomeingIsEnd(slvAddr); return HCBoardManager.HomeingIsEnd(slvAddr);
} }
public override bool isInPosition(string portName, short slvAddr, int PPosition, int canErrorCount, bool isLog = false) public override bool isInPosition(string portName, short slvAddr, int PPosition, int canErrorCount, bool isLog = false)
{ {
return HCBoardManager.IsInPosition(slvAddr, PPosition,canErrorCount ); return HCBoardManager.IsInPosition(slvAddr, PPosition, canErrorCount);
} }
public override void RelMove(string portName, short slvAddr, int position, int targetSpeed, int ptpAcc , int ptpDec ) public override void RelMove(string portName, short slvAddr, int position, int targetSpeed, int ptpAcc, int ptpDec)
{ {
HCBoardManager.RelMove(slvAddr, position, targetSpeed, ptpAcc, ptpDec); HCBoardManager.RelMove(slvAddr, position, targetSpeed, ptpAcc, ptpDec);
} }
public override bool IsServeoOn(string portName, short slvAddr) public override bool IsServeoOn(string portName, short slvAddr)
{ {
AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr); AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr);
...@@ -132,7 +132,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -132,7 +132,7 @@ namespace OnlineStore.DeviceLibrary
public override void SpeedMove(string portName, short slvAddr, int speed) public override void SpeedMove(string portName, short slvAddr, int speed)
{ {
HCBoardManager.SpeedMove(slvAddr, speed); HCBoardManager.SpeedMove(slvAddr, speed);
} }
public override void SuddenStop(string portName, short slvAddr) public override void SuddenStop(string portName, short slvAddr)
{ {
HCBoardManager.AxisStop(slvAddr); HCBoardManager.AxisStop(slvAddr);
...@@ -154,8 +154,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -154,8 +154,10 @@ namespace OnlineStore.DeviceLibrary
} }
return false; return false;
} }
public override short GetErrorCode(string portName, short slvAddr) public override short GetErrorCode(string portName, short slvAddr)
{ {
AxisSts axisS = HCBoardManager.GetAxisSts(slvAddr);
HCLogUtil.LOGGER.Info(axisS.ToStr());
return HCBoardManager.GetAxErrCode(slvAddr); return HCBoardManager.GetAxErrCode(slvAddr);
} }
} }
......
using Asa; using Agv;
using OnlineStore.Common; using OnlineStore.Common;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
...@@ -10,35 +10,36 @@ namespace OnlineStore.DeviceLibrary ...@@ -10,35 +10,36 @@ namespace OnlineStore.DeviceLibrary
{ {
public class AgvClient public class AgvClient
{ {
public static bool CurrCancelState = false;
private static string ServerIp = ConfigAppSettings.GetValue(Setting_Init.AgvServerIp); private static string ServerIp = ConfigAppSettings.GetValue(Setting_Init.AgvServerIp);
private static Asa.AgvClient agvClient; private static int ServerPort = ConfigAppSettings.GetIntValue(Setting_Init.AgvServerPort);
public static Dictionary<string, Asa.ClientAction> actionMap = new Dictionary<string, Asa.ClientAction>(); private static Agv.AgvClient agvClient;
public static Dictionary<string, Agv.ClientAction> actionMap = new Dictionary<string, Agv.ClientAction>();
public static List<string> NodeList = new List<string>(); public static List<string> NodeList = new List<string>();
private static bool isInit = false; private static bool isInit = false;
public static void Init() public static void Init()
{ {
try try
{ {
// LogUtil.info("开始 Init agvclient");
if (!isInit) if (!isInit)
{ {
isInit = true; isInit = true;
agvClient = new Asa.AgvClient(ServerIp); agvClient = new Agv.AgvClient();
agvClient.CancelState = true; agvClient.Received += AgvClient_Received;
agvClient.Log += AgvClient_Log; NodeList.Add(StoreManager.Config.AgvInName);
agvClient.Arrive += AgvClient_Arrive; NodeList.Add(StoreManager.Config.AgvOutName);
agvClient.Ready += AgvClient_Ready;
agvClient.CloseDoor += AgvClient_CloseDoor;
} }
actionMap = new Dictionary<string, Asa.ClientAction>(); actionMap = new Dictionary<string, Agv.ClientAction>();
foreach (string key in NodeList)
LogUtil.info(" 开始 agvClient.Connect"); {
agvClient.Connect(); actionMap.Add(key, Agv.ClientAction.None);
}
agvClient.Connect(ServerIp, ServerPort);
foreach (string str in NodeList) foreach (string str in NodeList)
{ {
SetStatus(str); SetStatus(str,"");
LogUtil.info("agv init ,SetStatus[" + str + "]=none ");
} }
SetCancelState(false);
} }
catch (Exception ex) catch (Exception ex)
{ {
...@@ -46,43 +47,46 @@ namespace OnlineStore.DeviceLibrary ...@@ -46,43 +47,46 @@ namespace OnlineStore.DeviceLibrary
} }
} }
public static void SetCancelState(bool isCancel) private static void AgvClient_Connected(bool status)
{ {
LogUtil.info($"AgvClient_Connected:{status}");
}
CurrCancelState = isCancel; private static void AgvClient_Received(Node node)
if (agvClient != null) {
{ /*var nodename = node.Name;
agvClient.CancelState = isCancel; if (nodename == StoreManager.Config.AgvInName) {
} SetStatus(nodename, "", ClientAction.MayEnter);
_ = StoreManager.Store.AgvSendShelfIn();
}
else if (nodename == StoreManager.Config.AgvOutName) {
SetStatus(nodename, "", ClientAction.MayLeave);
StoreManager.Store.OneShelfOutProcess();
}*/
AgvClient_Ready(node.Name, node.RFID);
}
public static void SetCancelState(bool cancel)
{
agvClient.CancelState = cancel;
} }
public static void SetStatus(string id, string shelfId = "", ClientAction action = ClientAction.None, ClientLevel level = ClientLevel.Low, bool isMust = false) public static void SetStatus(string id, string shelfId, ClientAction action = ClientAction.None, ClientLevel level = ClientLevel.Low, bool isMust = false)
{ {
if (agvClient == null)
return;
if (!isMust) if (actionMap.ContainsKey(id))
{
if (actionMap.ContainsKey(id))
{
ClientAction currA = actionMap[id]; //相同状态就设置一次
if (currA.Equals(action))
{
return;
}
}
}
string mark = "";
if (shelfId != "")
{ {
int index = shelfId.IndexOf(','); Agv.ClientAction currA = actionMap[id]; //相同状态就设置一次
if (index > 0) if (currA.Equals(action))
{ {
//紧急出料模块,料串离开时,mark=紧急料或者分配料,rfid=料串号 return;
mark = shelfId.Substring(index + 1, shelfId.Length - index - 1);
shelfId = shelfId.Substring(0, index);
} }
} }
agvClient.SetStatus(id, mark, shelfId, action, level);
agvClient.SetStatus(id, "", shelfId, action, level);
UpdateAction(id, action); UpdateAction(id, action);
LogUtil.info("AgvClient SetStatus id:" + id + ",mark:" + mark + ",shelfId:" + shelfId + ",action:" + action.ToString() + ",level:" + level.ToString()); LogUtil.info("AgvClient SetStatus id:" + id + ",shelfId:" + shelfId + ",action:" + action.ToString() + ",level:" + level.ToString());
} }
...@@ -95,7 +99,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -95,7 +99,7 @@ namespace OnlineStore.DeviceLibrary
if (GetAction(id) == ClientAction.NeedEnter || id == StoreManager.Config.AgvInName) if (GetAction(id) == ClientAction.NeedEnter || id == StoreManager.Config.AgvInName)
{ {
SetStatus(id, "", ClientAction.MayEnter); SetStatus(id, "", ClientAction.MayEnter);
_ = StoreManager.Store.AgvSendShelfIn(); _=StoreManager.Store.AgvSendShelfIn();
} }
else if (GetAction(id) == ClientAction.NeedLeave || id == StoreManager.Config.AgvOutName) else if (GetAction(id) == ClientAction.NeedLeave || id == StoreManager.Config.AgvOutName)
{ {
...@@ -112,15 +116,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -112,15 +116,6 @@ namespace OnlineStore.DeviceLibrary
LogUtil.error("AgvClient_Ready [" + id + "] [" + rfid + "] 处理出错:" + ex.ToString()); LogUtil.error("AgvClient_Ready [" + id + "] [" + rfid + "] 处理出错:" + ex.ToString());
} }
} }
private static void AgvClient_CloseDoor(string id, string rfid)
{
LogUtil.info("收到 AgvClient_CloseDoor [" + id + "] [" + rfid + "] 暂无需处理 ");
}
private static void AgvClient_Arrive(string id, string rfid)
{
// UpdateAction(id, ClientAction.Arrive);
LogUtil.info("收到 AgvClient_Arrive [" + id + "] [" + rfid + "]暂无需处理 ");
}
internal static bool ISConnected() internal static bool ISConnected()
{ {
...@@ -133,60 +128,44 @@ namespace OnlineStore.DeviceLibrary ...@@ -133,60 +128,44 @@ namespace OnlineStore.DeviceLibrary
public static bool SetToNone(string id, string shelfId = "") public static bool SetToNone(string id, string shelfId = "")
{ {
ClientAction currA = GetAction(id); Agv.ClientAction currA = GetAction(id);
if (currA.Equals(ClientAction.None) || currA.Equals(ClientAction.NeedLeave) || currA.Equals(ClientAction.NeedEnter)) if (currA.Equals(Agv.ClientAction.None) || currA.Equals(Agv.ClientAction.NeedLeave) || currA.Equals(Agv.ClientAction.NeedEnter))
{ {
SetStatus(id, shelfId, ClientAction.None); SetStatus(id, shelfId, Agv.ClientAction.None);
return true; return true;
} }
return false; return false;
} }
public static bool NeedEnter(string id, string shelfId = "", ClientLevel level = ClientLevel.Low) public static bool NeedEnter(string id, string shelfId)
{ {
ClientAction currA = GetAction(id); Agv.ClientAction currA = GetAction(id);
if (currA.Equals(ClientAction.None) || currA.Equals(ClientAction.NeedLeave) || currA.Equals(ClientAction.NeedEnter)) if (currA.Equals(Agv.ClientAction.None) || currA.Equals(Agv.ClientAction.NeedLeave) || currA.Equals(Agv.ClientAction.NeedEnter))
{ {
SetStatus(id, shelfId, ClientAction.NeedEnter, level); SetStatus(id, shelfId, Agv.ClientAction.NeedEnter);
return true; return true;
} }
return false; return false;
} }
public static bool NeedLeave(string id, string shelfId = "", ClientLevel level = ClientLevel.Low) public static bool NeedLeave(string id, string shelfId)
{ {
ClientAction currA = GetAction(id); Agv.ClientAction currA = GetAction(id);
if (currA.Equals(ClientAction.None) || currA.Equals(ClientAction.NeedLeave) || currA.Equals(ClientAction.NeedEnter)) if (currA.Equals(Agv.ClientAction.None) || currA.Equals(Agv.ClientAction.NeedLeave) || currA.Equals(Agv.ClientAction.NeedEnter))
{ {
SetStatus(id, shelfId, ClientAction.NeedLeave, level); SetStatus(id, shelfId, Agv.ClientAction.NeedLeave);
return true; return true;
} }
return false; return false;
} }
private static bool isLog = true;//ConfigAppSettings.GetIntValue(Setting_Init.Agv_Log_Open).Equals(1); public static Agv.ClientAction GetAction(string NodeName)
private static void AgvClient_Log(string s)
{
try
{
if (isLog)
{
LogUtil.info(" AGV " + ServerIp + " Log : " + s);
}
}
catch (Exception ex)
{
LogUtil.error("AgvClient_Log 出错:" + ex.ToString());
}
}
public static Asa.ClientAction GetAction(string NodeName)
{ {
if (actionMap.ContainsKey(NodeName)) if (actionMap.ContainsKey(NodeName))
{ {
return actionMap[NodeName]; return actionMap[NodeName];
} }
return Asa.ClientAction.None; return Agv.ClientAction.None;
} }
public static void UpdateAction(string name, Asa.ClientAction action) public static void UpdateAction(string name, Agv.ClientAction action)
{ {
if (actionMap.ContainsKey(name)) if (actionMap.ContainsKey(name))
{ {
...@@ -203,12 +182,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -203,12 +182,13 @@ namespace OnlineStore.DeviceLibrary
{ {
if (agvClient != null) if (agvClient != null)
{ {
SetCancelState(true);
agvClient.Close(); agvClient.Close();
} }
} }
catch (Exception ex) catch (Exception ex)
{ {
LogUtil.error("释放 agvClient " + ServerIp + " 出错:", ex); LogUtil.error("agvClient.Close " + ServerIp + " 出错:", ex);
} }
} }
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>OnlineStore.DeviceLibrary</RootNamespace> <RootNamespace>OnlineStore.DeviceLibrary</RootNamespace>
<AssemblyName>DeviceLibrary</AssemblyName> <AssemblyName>DeviceLibrary</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
...@@ -36,13 +36,24 @@ ...@@ -36,13 +36,24 @@
<Prefer32Bit>false</Prefer32Bit> <Prefer32Bit>false</Prefer32Bit>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Agv">
<HintPath>..\..\..\775-AGVClientTest\Agv.dll</HintPath>
</Reference>
<Reference Include="Agv.Client">
<HintPath>..\..\..\775-AGVClientTest\Agv.Client.dll</HintPath>
</Reference>
<Reference Include="Asa.HIK.IPCamera">
<HintPath>..\..\..\camera\Asa.HIK.IPCamera.dll</HintPath>
</Reference>
<Reference Include="Asa.IOModule.AIOBOX, Version=2.4.0.7, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="Asa.IOModule.AIOBOX, Version=2.4.0.7, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\AIOBOX\AIOBOX\bin\Debug\Asa.IOModule.AIOBOX.dll</HintPath> <HintPath>..\..\..\AIOBOX\AIOBOX\bin\Debug\Asa.IOModule.AIOBOX.dll</HintPath>
</Reference> </Reference>
<Reference Include="Client, Version=1.0.0.1, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="Asa.RFID.HiStation">
<SpecificVersion>False</SpecificVersion> <HintPath>..\..\..\..\work\RFID\Asa.RFID.HiStation.dll</HintPath>
<HintPath>..\..\dll\Client.dll</HintPath> </Reference>
<Reference Include="Asa.RFID.IReadAll">
<HintPath>..\..\..\..\work\RFID\Asa.RFID.IReadAll.dll</HintPath>
</Reference> </Reference>
<Reference Include="CodeLibrary, Version=1.0.7380.18241, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="CodeLibrary, Version=1.0.7380.18241, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
...@@ -81,6 +92,8 @@ ...@@ -81,6 +92,8 @@
<Compile Include="AXIS\PanasonicServo\ACServerManager.cs" /> <Compile Include="AXIS\PanasonicServo\ACServerManager.cs" />
<Compile Include="AXIS\PanasonicServo\ACServerManager_Partial.cs" /> <Compile Include="AXIS\PanasonicServo\ACServerManager_Partial.cs" />
<Compile Include="device\IO\HCIOManager.cs" /> <Compile Include="device\IO\HCIOManager.cs" />
<Compile Include="device\RFIDManagercs.cs" />
<Compile Include="duoStore\BoxBean_Camera.cs" />
<Compile Include="duoStore\DUOStoreBean_RaiseStation.cs" /> <Compile Include="duoStore\DUOStoreBean_RaiseStation.cs" />
<Compile Include="duoStore\AxisBean.cs" /> <Compile Include="duoStore\AxisBean.cs" />
<Compile Include="duoStore\BoxBean.cs" /> <Compile Include="duoStore\BoxBean.cs" />
...@@ -140,13 +153,13 @@ ...@@ -140,13 +153,13 @@
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Include="StoreConfig\StoreConfig.csv"> <None Include="StoreConfig\StoreConfig.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None> </None>
<None Include="StoreConfig\BoxConfig_2.csv"> <None Include="StoreConfig\BoxConfig_2.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None> </None>
<None Include="StoreConfig\BoxConfig_1.csv"> <None Include="StoreConfig\BoxConfig_1.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None> </None>
</ItemGroup> </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
......
类型,分类编号,说明,名称,属性值,设备名称,电器定义,目标速度,加速时间,减速时间,原点低速度,原点高速,原点加速度,脉冲最小误差,脉冲最大误差,脉冲最小限位,脉冲最大限位 类型,分类编号,说明,名称,属性值,设备名称,电器定义,目标速度,加速时间,减速时间,原点低速度,原点高速,原点加速度,脉冲最小误差,脉冲最大误差,脉冲最小限位,脉冲最大限位
AXIS,,L1_旋转轴,Middle_Axis,0,HC,,800,2400,2400,50,250,3000,10,1000,0,0 AXIS,,L1_旋转轴,Middle_Axis,0,HC,,800,2400,2400,50,250,3000,5,20,0,0
AXIS,,L2_上下轴,UpDown_Axis,1,HC,,2000,6000,6000,50,250,3000,10,1000,0,0 AXIS,,L2_上下轴,UpDown_Axis,1,HC,,2000,3000,6000,50,250,3000,10,100,0,0
AXIS,,L3_进出轴,InOut_Axis,2,HC,,1000,5000,5000,50,300,8000,10,1000,0,0 AXIS,,L3_进出轴,InOut_Axis,2,HC,,1000,5000,5000,50,300,8000,10,1000,0,0
AXIS,,L4_压紧轴,Comp_Axis,3,HC,,10000,25000,25000,3000,10000,20000,10,1000,0,0 AXIS,,L4_压紧轴,Comp_Axis,3,HC,,10000,60000,60000,3000,10000,20000,10,1000,0,0
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,L2_上下轴_P1待机点/入料口低点,UpDownAxis_P1,10,,,,,,,,,,,, PRO,,L2_上下轴_P1待机点/入料口低点,UpDownAxis_P1,4510,,,,,,,,,,,,
PRO,,L2_上下轴_P2入料口高点,UpDownAxis_P2,10,,,,,,,,,,,, PRO,,L2_上下轴_P2入料口高点,UpDownAxis_P2,4726,,,,,,,,,,,,
PRO,,L1_旋转轴_P1待机点/入料口位置,MiddleAxis_P1,10,,,,,,,,,,,, PRO,,L1_旋转轴_P1待机点/入料口位置,MiddleAxis_P1,8041,,,,,,,,,,,,
PRO,,L3_进出轴_P1待机点,InOutAxis_P1,10,,,,,,,,,,,, PRO,,L3_进出轴_P1待机点,InOutAxis_P1,0,,,,,,,,,,,,
PRO,,L4_压紧轴_P1待机点,CompAxis_P1,10,,,,,,,,,,,, PRO,,L4_压紧轴_P1待机点,CompAxis_P1,20000,,,,,,,,,,,,
PRO,,L4_压紧轴_P2压紧点范围对应值,CompAxis_P2_List,8=247455;12=383001;16=379001;,,,,,,,,,,,, PRO,,L4_压紧轴_P2压紧点范围对应值,CompAxis_P2_List,8=49514;12=44615;16=39596;,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,L2_上下轴_P11-出料口-低点,UpDownAxis_P11,10,,,,,,,,,,,, PRO,,L2_上下轴_P11-出料口-低点,UpDownAxis_P11,2815,,,,,,,,,,,,
PRO,,L2_上下轴_P12-出料口-高点,UpDownAxis_P12,10,,,,,,,,,,,, PRO,,L2_上下轴_P12-出料口-高点,UpDownAxis_P12,2919,,,,,,,,,,,,
PRO,,L1_旋转轴_P11-出料口位置,MiddleAxis_P11,10,,,,,,,,,,,, PRO,,L1_旋转轴_P11-出料口位置,MiddleAxis_P11,1237,,,,,,,,,,,,
PRO,,L3_进出轴_P2-入料口取放料点,InOutAxis_P2,10,,,,,,,,,,,, PRO,,L3_进出轴_P2-入料口取放料点,InOutAxis_P2,4623,,,,,,,,,,,,
PRO,,L3_进出轴_P11-出料口取放料点,InOutAxis_P11,10,,,,,,,,,,,, PRO,,L3_进出轴_P11-出料口取放料点,InOutAxis_P11,4497,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,L2_上下轴_P1速度/高速,UpDownAxis_P1_Speed,2000,,,,,,,,,,,, PRO,,L2_上下轴_P1速度/高速,UpDownAxis_P1_Speed,1500,,,,,,,,,,,,
PRO,,L2_上下轴_P2速度/低速,UpDownAxis_P2_Speed,2000,,,,,,,,,,,, PRO,,L2_上下轴_P2速度/低速,UpDownAxis_P2_Speed,150,,,,,,,,,,,,
PRO,,L2_上下轴_P3速度,UpDownAxis_P3_Speed,2000,,, ,,,,,,,,, PRO,,L2_上下轴_P3速度,UpDownAxis_P3_Speed,2000,,, ,,,,,,,,,
PRO,,L2_上下轴_P4速度,UpDownAxis_P4_Speed,150,,,,,,,,,,,, PRO,,L2_上下轴_P4速度,UpDownAxis_P4_Speed,150,,,,,,,,,,,,
PRO,,L2_上下轴_P5速度,UpDownAxis_P5_Speed,2000,,,,,,,,,,,, PRO,,L2_上下轴_P5速度,UpDownAxis_P5_Speed,2000,,,,,,,,,,,,
PRO,,L2_上下轴_P6速度,UpDownAxis_P6_Speed,150,,,,,,,,,,,, PRO,,L2_上下轴_P6速度,UpDownAxis_P6_Speed,150,,,,,,,,,,,,
PRO,,L2_上下轴_P7速度,UpDownAxis_P7_Speed,2000,,,,,,,,,,,, PRO,,L2_上下轴_P7速度,UpDownAxis_P7_Speed,2000,,,,,,,,,,,,
PRO,,L2_上下轴_P8速度,UpDownAxis_P8_Speed,100,,,,,,,,,,,, PRO,,L2_上下轴_P8速度,UpDownAxis_P8_Speed,100,,,,,,,,,,,,
PRO,,L1_旋转轴_P1速度,MiddleAxis_P1_Speed,800,,,,,,,,,,,, PRO,,L1_旋转轴_P1速度,MiddleAxis_P1_Speed,1000,,,,,,,,,,,,
PRO,,L1_旋转轴_P2速度,MiddleAxis_P2_Speed,800,,,,,,,,,,,, PRO,,L1_旋转轴_P2速度,MiddleAxis_P2_Speed,1000,,,,,,,,,,,,
PRO,,L3_进出轴_P1速度,InOutAxis_P1_Speed,1600,,,,,,,,,,,, PRO,,L3_进出轴_P1速度,InOutAxis_P1_Speed,3000,,,,,,,,,,,,
PRO,,L3_进出轴_P2速度,InOutAxis_P2_Speed,1800,,,,,,,,,,,, PRO,,L3_进出轴_P2速度,InOutAxis_P2_Speed,3000,,,,,,,,,,,,
PRO,,L3_进出轴_P3速度,InOutAxis_P3_Speed,1800,,,,,,,,,,,, PRO,,L3_进出轴_P3速度,InOutAxis_P3_Speed,3000,,,,,,,,,,,,
PRO,,L4_压紧轴_P1速度,CompAxis_P1_Speed,5000,,,,,,,,,,,, PRO,,L4_压紧轴_P1速度,CompAxis_P1_Speed,8000,,,,,,,,,,,,
PRO,,L4_压紧轴_P2速度,CompAxis_P2_Speed,8500,,,,,,,,,,,, PRO,,L4_压紧轴_P2速度,CompAxis_P2_Speed,30000,,,,,,,,,,,,
PRO,,L4_压紧轴_P3速度,CompAxis_P3_Speed,8500,,,,,,,,,,,, PRO,,L4_压紧轴_P3速度,CompAxis_P3_Speed,10000,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,L2_上下轴_P11速度/低速,UpDownAxis_P11_Speed,1000,,,,,,,,,,,, PRO,,L2_上下轴_P11速度/低速,UpDownAxis_P11_Speed,150,,,,,,,,,,,,
PRO,,L2_上下轴_P12速度/高速,UpDownAxis_P12_Speed,2000,,,,,,,,,,,, PRO,,L2_上下轴_P12速度/高速,UpDownAxis_P12_Speed,1500,,,,,,,,,,,,
PRO,,L3_进出轴_P11速度,InOutAxis_P11_Speed,1800,,,,,,,,,,,, PRO,,L3_进出轴_P11速度,InOutAxis_P11_Speed,3000,,,,,,,,,,,,
PRO,,L1_旋转轴_P11速度,MiddleAxis_P11_Speed,800,,,,,,,,,,,, PRO,,L1_旋转轴_P11速度,MiddleAxis_P11_Speed,1000,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,温湿度端口号,Humiture_Port,COM5,,,,,,,,,,,, PRO,,温湿度端口号,Humiture_Port,COM5,,,,,,,,,,,,
PRO,,是否是调试状态,IsInDebug,0,,,,,,,,,,,, PRO,,是否是调试状态,IsInDebug,0,,,,,,,,,,,,
PRO,,是否使用料叉盘检测信号,IsUse_Tray_Check,0,,,,,,,,,,,,
PRO,,旋转轴反转点位补偿,MiddleAxis_Reverse_Offset,11,,,,,,,,,,,,
类型,分类编号,说明,名称,属性值,设备名称,电器定义,目标速度,加速时间,减速时间,原点低速度,原点高速,原点加速度,脉冲最小误差,脉冲最大误差,脉冲最小限位,脉冲最大限位 类型,分类编号,说明,名称,属性值,设备名称,电器定义,目标速度,加速时间,减速时间,原点低速度,原点高速,原点加速度,脉冲最小误差,脉冲最大误差,脉冲最小限位,脉冲最大限位
AXIS,,R1_旋转轴,Middle_Axis,8,HC,,800,2400,2400,50,250,3000,10,1000,0,0 AXIS,,R1_旋转轴,Middle_Axis,8,HC,,800,2400,2400,50,250,3000,10,1000,0,0
AXIS,,R2_上下轴,UpDown_Axis,9,HC,,2000,6000,6000,50,250,3000,10,1000,0,0 AXIS,,R2_上下轴,UpDown_Axis,9,HC,,2000,3000,6000,50,250,3000,10,1000,0,0
AXIS,,R3_进出轴,InOut_Axis,10,HC,,1000,5000,5000,50,300,8000,10,1000,0,0 AXIS,,R3_进出轴,InOut_Axis,10,HC,,1000,5000,5000,50,300,8000,10,1000,0,0
AXIS,,R4_压紧轴,Comp_Axis,11,HC,,10000,25000,25000,3000,10000,20000,10,1000,0,0 AXIS,,R4_压紧轴,Comp_Axis,11,HC,,10000,25000,25000,3000,10000,20000,10,1000,0,0
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,R2_上下轴_P1待机点/扫码放料低点,UpDownAxis_P1,10,,,,,,,,,,,, PRO,,R2_上下轴_P1待机点/扫码放料低点,UpDownAxis_P1,4542,,,,,,,,,,,,
PRO,,R2_上下轴_P2扫码放料高点缓冲点,UpDownAxis_P2,10,,,,,,,,,,,, PRO,,R2_上下轴_P2扫码放料高点缓冲点,UpDownAxis_P2,4759,,,,,,,,,,,,
PRO,,R1_旋转轴_P1待机点/扫码放料点,MiddleAxis_P1,10,,,,,,,,,,,, PRO,,R1_旋转轴_P1待机点/扫码放料点,MiddleAxis_P1,1806,,,,,,,,,,,,
PRO,,R3_进出轴_P1待机点,InOutAxis_P1,10,,,,,,,,,,,, PRO,,R3_进出轴_P1待机点,InOutAxis_P1,0,,,,,,,,,,,,
PRO,,R4_压紧轴_P1待机点,CompAxis_P1,10,,,,,,,,,,,, PRO,,R4_压紧轴_P1待机点,CompAxis_P1,20000,,,,,,,,,,,,
PRO,,L4_压紧轴_P2压紧点范围对应值,CompAxis_P2_List,8=247455;12=383001;16=379001;,,,,,,,,,,,, PRO,,L4_压紧轴_P2压紧点范围对应值,CompAxis_P2_List,8=49514;12=44615;16=39596;,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,R2_上下轴_P11-出料口-低点,UpDownAxis_P11,10,,,,,,,,,,,, PRO,,R2_上下轴_P11-出料口-低点,UpDownAxis_P11,2849,,,,,,,,,,,,
PRO,,R2_上下轴_P12-出料口-高点,UpDownAxis_P12,10,,,,,,,,,,,, PRO,,R2_上下轴_P12-出料口-高点,UpDownAxis_P12,2979,,,,,,,,,,,,
PRO,,R1_旋转轴_P11-出料口位置,MiddleAxis_P11,10,,,,,,,,,,,, PRO,,R1_旋转轴_P11-出料口位置,MiddleAxis_P11,8607,,,,,,,,,,,,
PRO,,R3_进出轴_P2-入料口取放料点,InOutAxis_P2,10,,,,,,,,,,,, PRO,,R3_进出轴_P2-入料口取放料点,InOutAxis_P2,4623,,,,,,,,,,,,
PRO,,R3_进出轴_P11-出料口取放料点,InOutAxis_P11,10,,,,,,,,,,,, PRO,,R3_进出轴_P11-出料口取放料点,InOutAxis_P11,4497,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,R2_上下轴_P1速度/高速,UpDownAxis_P1_Speed,2000,,,,,,,,,,,, PRO,,R2_上下轴_P1速度/高速,UpDownAxis_P1_Speed,1500,,,,,,,,,,,,
PRO,,R2_上下轴_P2速度/低速,UpDownAxis_P2_Speed,2000,,,,,,,,,,,, PRO,,R2_上下轴_P2速度/低速,UpDownAxis_P2_Speed,150,,,,,,,,,,,,
PRO,,R2_上下轴_P3速度,UpDownAxis_P3_Speed,2000,,, ,,,,,,,,, PRO,,R2_上下轴_P3速度,UpDownAxis_P3_Speed,2000,,, ,,,,,,,,,
PRO,,R2_上下轴_P4速度,UpDownAxis_P4_Speed,150,,,,,,,,,,,, PRO,,R2_上下轴_P4速度,UpDownAxis_P4_Speed,150,,,,,,,,,,,,
PRO,,R2_上下轴_P5速度,UpDownAxis_P5_Speed,2000,,,,,,,,,,,, PRO,,R2_上下轴_P5速度,UpDownAxis_P5_Speed,2000,,,,,,,,,,,,
PRO,,R2_上下轴_P6速度,UpDownAxis_P6_Speed,150,,,,,,,,,,,, PRO,,R2_上下轴_P6速度,UpDownAxis_P6_Speed,150,,,,,,,,,,,,
PRO,,R2_上下轴_P7速度,UpDownAxis_P7_Speed,2000,,,,,,,,,,,, PRO,,R2_上下轴_P7速度,UpDownAxis_P7_Speed,2000,,,,,,,,,,,,
PRO,,R2_上下轴_P8速度,UpDownAxis_P8_Speed,100,,,,,,,,,,,, PRO,,R2_上下轴_P8速度,UpDownAxis_P8_Speed,100,,,,,,,,,,,,
PRO,,R1_旋转轴_P1速度,MiddleAxis_P1_Speed,800,,,,,,,,,,,, PRO,,R1_旋转轴_P1速度,MiddleAxis_P1_Speed,1000,,,,,,,,,,,,
PRO,,R1_旋转轴_P2速度,MiddleAxis_P2_Speed,800,,,,,,,,,,,, PRO,,R1_旋转轴_P2速度,MiddleAxis_P2_Speed,1000,,,,,,,,,,,,
PRO,,R3_进出轴_P1速度,InOutAxis_P1_Speed,1600,,,,,,,,,,,, PRO,,R3_进出轴_P1速度,InOutAxis_P1_Speed,3000,,,,,,,,,,,,
PRO,,R3_进出轴_P2速度,InOutAxis_P2_Speed,1800,,,,,,,,,,,, PRO,,R3_进出轴_P2速度,InOutAxis_P2_Speed,3000,,,,,,,,,,,,
PRO,,R3_进出轴_P3速度,InOutAxis_P3_Speed,1800,,,,,,,,,,,, PRO,,R3_进出轴_P3速度,InOutAxis_P3_Speed,3000,,,,,,,,,,,,
PRO,,R4_压紧轴_P1速度,CompAxis_P1_Speed,5000,,,,,,,,,,,, PRO,,R4_压紧轴_P1速度,CompAxis_P1_Speed,6000,,,,,,,,,,,,
PRO,,R4_压紧轴_P2速度,CompAxis_P2_Speed,8500,,,,,,,,,,,, PRO,,R4_压紧轴_P2速度,CompAxis_P2_Speed,9500,,,,,,,,,,,,
PRO,,R4_压紧轴_P3速度,CompAxis_P3_Speed,8500,,,,,,,,,,,, PRO,,R4_压紧轴_P3速度,CompAxis_P3_Speed,9500,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,R2_上下轴_P11速度/低速,UpDownAxis_P11_Speed,1000,,,,,,,,,,,, PRO,,R2_上下轴_P11速度/低速,UpDownAxis_P11_Speed,150,,,,,,,,,,,,
PRO,,R2_上下轴_P12速度/高速,UpDownAxis_P12_Speed,2000,,,,,,,,,,,, PRO,,R2_上下轴_P12速度/高速,UpDownAxis_P12_Speed,1500,,,,,,,,,,,,
PRO,,R3_进出轴_P11速度,InOutAxis_P11_Speed,1800,,,,,,,,,,,, PRO,,R3_进出轴_P11速度,InOutAxis_P11_Speed,3000,,,,,,,,,,,,
PRO,,R1_旋转轴_P11速度,MiddleAxis_P11_Speed,800,,,,,,,,,,,, PRO,,R1_旋转轴_P11速度,MiddleAxis_P11_Speed,1000,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,温湿度端口号,Humiture_Port,COM5,,,,,,,,,,,, PRO,,温湿度端口号,Humiture_Port,COM5,,,,,,,,,,,,
PRO,,是否是调试状态,IsInDebug,0,,,,,,,,,,,, PRO,,是否是调试状态,IsInDebug,0,,,,,,,,,,,,
PRO,,是否使用料叉盘检测信号,IsUse_Tray_Check,0,,,,,,,,,,,,
PRO,,旋转轴反转点位补偿,MiddleAxis_Reverse_Offset,6,,,,,,,,,,,,
\ No newline at end of file \ No newline at end of file
类型,分类编号,说明,名称,属性值,设备名称,电器定义,目标速度,加速时间,减速时间,原点低速度,原点高速,原点加速度,脉冲最小误差,脉冲最大误差,脉冲最小限位,脉冲最大限位 类型,分类编号,说明,名称,属性值,设备名称,电器定义,目标速度,加速时间,减速时间,原点低速度,原点高速,原点加速度,脉冲最小误差,脉冲最大误差,脉冲最小限位,脉冲最大限位
AXIS,,T1_提升机构升降轴,T1_Batch_Axis,4,HC,,250,500,500,100,200,1000,10,1000,0,0 AXIS,,T1_提升机构升降轴,T1_Batch_Axis,4,HC,,18000,60000,60000,8000,18000,40000,1000,1000,0,0
AXIS,,T2_取料机构旋转轴,T2_Middle_Axis,5,HC,,1000,1000,1000,200,500,500,10,1000,0,0 AXIS,,T2_取料机构旋转轴,T2_Middle_Axis,6,HC,,1500,3000,3000,100,500,3000,10,1000,0,0
AXIS,,T3_取料机构上下轴,T3_Updown_Axis,6,HC,,800,1000,1000,200,500,500,10,1000,0,0 AXIS,,T3_取料机构上下轴,T3_Updown_Axis,5,HC,,20000,60000,60000,2000,7000,21000,10,1000,0,0
AXIS,,T4_取料机构进出轴,T4_InOut_Axis,7,HC,,800,1000,1000,200,500,500,10,1000,0,0 AXIS,,T4_取料机构进出轴,T4_InOut_Axis,7,HC,,600,1500,1500,50,300,1500,10,1000,0,0
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,,IO模块对应的DI数量,IO_DILength,192.168.201.21#16;192.168.201.22#16;192.168.200.23#8,,,,,,,,,,,, PRO,,IO模块对应的DI数量,IO_DILength,192.168.201.21#16;192.168.201.22#16;192.168.200.23#8,,,,,,,,,,,,
PRO,,IO模块对应的DO数量,IO_DOLength,192.168.201.21#16;192.168.201.22#16;192.168.200.23#8,,,,,,,,,,,, PRO,,IO模块对应的DO数量,IO_DOLength,192.168.201.21#16;192.168.201.22#16;192.168.200.23#8,,,,,,,,,,,,
...@@ -39,7 +39,7 @@ DI,2,右侧料叉激光定位,Fixture_Laser,24,HC,X24,*,,,,,,,,, ...@@ -39,7 +39,7 @@ DI,2,右侧料叉激光定位,Fixture_Laser,24,HC,X24,*,,,,,,,,,
DI,0,取料气缸料盘检测,ClampCylinder_Check,25,HC,X25,,,,,,,,,, DI,0,取料气缸料盘检测,ClampCylinder_Check,25,HC,X25,,,,,,,,,,
DI,0,提升工位料盘定位检测,BatchAxis_Check,26,HC,X26,,,,,,,,,, DI,0,提升工位料盘定位检测,BatchAxis_Check,26,HC,X26,,,,,,,,,,
DI,0,7寸料盘宽度检测,TrayCheck_7,27,HC,X27,*,,,,,,,,, DI,0,7寸料盘宽度检测,TrayCheck_7,27,HC,X27,*,,,,,,,,,
DI,0,11/13/15寸料盘宽度检测,TrayCheck_11to15,28,HC,X28,*,,,,,,,,, DI,0,11/13寸料盘宽度检测,TrayCheck_11to13,28,HC,X28,*,,,,,,,,,
DI,0,提升工位前端料串检测,RaiseStation_FrontCheck,29,HC,X29,*,,,,,,,,, DI,0,提升工位前端料串检测,RaiseStation_FrontCheck,29,HC,X29,*,,,,,,,,,
DI,0,提升工位末端料串检测,RaiseStation_BackendCheck,30,HC,X30,*,,,,,,,,, DI,0,提升工位末端料串检测,RaiseStation_BackendCheck,30,HC,X30,*,,,,,,,,,
DI,0,提升工位定位1上升端,RaiseStation_UpLocation1,31,HC,X31,*,,,,,,,,, DI,0,提升工位定位1上升端,RaiseStation_UpLocation1,31,HC,X31,*,,,,,,,,,
...@@ -50,6 +50,14 @@ DI,0,设备左侧防护门打开端,LeftDoor_Open,35,HC,X35,*,,,,,,,,, ...@@ -50,6 +50,14 @@ DI,0,设备左侧防护门打开端,LeftDoor_Open,35,HC,X35,*,,,,,,,,,
DI,0,设备左侧防护门关闭端,LeftDoor_Close,36,HC,X36,*,,,,,,,,, DI,0,设备左侧防护门关闭端,LeftDoor_Close,36,HC,X36,*,,,,,,,,,
DI,0,设备右侧防护门打开端,RightDoor_Open,37,HC,X37,*,,,,,,,,, DI,0,设备右侧防护门打开端,RightDoor_Open,37,HC,X37,*,,,,,,,,,
DI,0,设备右侧防护门关闭端,RightDoor_Close,38,HC,X38,*,,,,,,,,, DI,0,设备右侧防护门关闭端,RightDoor_Close,38,HC,X38,*,,,,,,,,,
DI,0,15寸料盘宽度检测,TrayCheck_15,39,HC,X39,*,,,,,,,,,
DI,0,卡爪范围确认,Clamp_InRange,40,HC,X40,*,,,,,,,,,
DI,0,卡爪动作中,Clamp_Busy,41,HC,X41,*,,,,,,,,,
DI,0,卡爪异常代码1,Clamp_Abnormal1,42,HC,X42,*,,,,,,,,,
DI,0,卡爪异常代码2,Clamp_Abnormal2,43,HC,X43,*,,,,,,,,,
DI,0,卡爪物件辨识1,Clamp_ObjRecognize1,44,HC,X44,*,,,,,,,,,
DI,0,卡爪物件辨识2,Clamp_ObjRecognize2,45,HC,X45,*,,,,,,,,,
DI,0,卡爪物件辨识3,Clamp_ObjRecognize3,46,HC,X46,*,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
DO,0,自动指示灯,AutoRun_HddLed,0,HC,Y00,,,,,,,,,, DO,0,自动指示灯,AutoRun_HddLed,0,HC,Y00,,,,,,,,,,
DO,0,故障指示灯,Alarm_HddLed,1,HC,Y01,,,,,,,,,, DO,0,故障指示灯,Alarm_HddLed,1,HC,Y01,,,,,,,,,,
...@@ -74,7 +82,7 @@ DO,0,线体横移顶升上升,TopCylinder_Up,19,HC,Y19,,,,,,,,,, ...@@ -74,7 +82,7 @@ DO,0,线体横移顶升上升,TopCylinder_Up,19,HC,Y19,,,,,,,,,,
DO,0,线体横移顶升下降,TopCylinder_Down,20,HC,Y20,,,,,,,,,, DO,0,线体横移顶升下降,TopCylinder_Down,20,HC,Y20,,,,,,,,,,
DO,0,提升工位定位上升,RaiseStation_LocationUp,21,HC,Y21,*,,,,,,,,, DO,0,提升工位定位上升,RaiseStation_LocationUp,21,HC,Y21,*,,,,,,,,,
DO,0,提升工位定位下降,RaiseStation_LocationDown,22,HC,Y22,*,,,,,,,,, DO,0,提升工位定位下降,RaiseStation_LocationDown,22,HC,Y22,*,,,,,,,,,
,0,设备左侧防护门打开,LeftDoor_Open,23,HC,Y23,*,,,,,,,,, DO,0,设备左侧防护门打开,LeftDoor_Open,23,HC,Y23,*,,,,,,,,,
DO,0,设备左侧防护门关闭,LeftDoor_Close,24,HC,Y24,*,,,,,,,,, DO,0,设备左侧防护门关闭,LeftDoor_Close,24,HC,Y24,*,,,,,,,,,
DO,1,左侧出料口门上升,OutDoor_Up,25,HC,Y25,,,,,,,,,, DO,1,左侧出料口门上升,OutDoor_Up,25,HC,Y25,,,,,,,,,,
DO,1,左侧出料口门下降,OutDoor_Down,26,HC,Y26,,,,,,,,,, DO,1,左侧出料口门下降,OutDoor_Down,26,HC,Y26,,,,,,,,,,
...@@ -82,44 +90,52 @@ DO,0,设备右侧防护门打开,RightDoor_Open,27,HC,Y27,*,,,,,,,,, ...@@ -82,44 +90,52 @@ DO,0,设备右侧防护门打开,RightDoor_Open,27,HC,Y27,*,,,,,,,,,
DO,0,设备右侧防护门关闭,RightDoor_Close,28,HC,Y28,*,,,,,,,,, DO,0,设备右侧防护门关闭,RightDoor_Close,28,HC,Y28,*,,,,,,,,,
DO,2,右侧出料口门上升,OutDoor_Up,29,HC,Y29,,,,,,,,,, DO,2,右侧出料口门上升,OutDoor_Up,29,HC,Y29,,,,,,,,,,
DO,2,右侧出料口门下降,OutDoor_Down,30,HC,Y30,,,,,,,,,, DO,2,右侧出料口门下降,OutDoor_Down,30,HC,Y30,,,,,,,,,,
DO,0,卡爪指令编码0,Clamp_SetPos0,31,HC,Y31,*,,,,,,,,,
DO,1,卡爪指令编码1,Clamp_SetPos1,32,HC,Y32,*,,,,,,,,,
DO,2,卡爪指令编码2,Clamp_SetPos2,33,HC,Y33,*,,,,,,,,,
DO,3,卡爪指令编码3,Clamp_SetPos3,34,HC,Y34,*,,,,,,,,,
DO,4,卡爪指令编码4,Clamp_SetPos4,35,HC,Y35,*,,,,,,,,,
DO,5,卡爪动作指令,Clamp_DoAction,36,HC,Y36,*,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,0,T1_提升轴待机点 P1,BatchAxis_P1,5000,,,,, ,,,,,,, PRO,0,T1_提升轴待机点 P1,BatchAxis_P1,500,,,,, ,,,,,,,
PRO,0,T1_提升轴上升目标点_P2,BatchAxis_P2,4000,,,,, ,,,,,,, PRO,0,T1_提升轴上升目标点_P2,BatchAxis_P2,562083,,,,, ,,,,,,,
PRO,0,T1_提升轴P1速度,BatchAxis_P1Speed,4000,,,,,,,,,,,, PRO,0,T1_提升轴P1速度,BatchAxis_P1Speed,18000,,,,,,,,,,,,
PRO,0,T1_提升轴P2速度,BatchAxis_P2Speed,500,,,,, ,,,,,,, PRO,0,T1_提升轴P2速度,BatchAxis_P2Speed,12000,,,,, ,,,,,,,
PRO,0,T1_提升轴高度转换系数(1mm对应的脉冲),BatchAxis_ChangeValue,11000,,,,,,,,,,,, PRO,0,T1_提升轴高度转换系数(1mm对应的脉冲),BatchAxis_ChangeValue,996,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,0,T2_旋转轴待机点/取放料点 P1,MiddleAxis_P1,5000,,,,,,,,,,,, PRO,0,T2_旋转轴待机点/取放料点 P1,MiddleAxis_P1,500,,,,,,,,,,,,
PRO,0,T2_旋转轴左侧料仓取放料点_P2,MiddleAxis_P2,59002,,,,,,,,,,,, PRO,0,T2_旋转轴左侧料仓取放料点_P2,MiddleAxis_P2,4774,,,,,,,,,,,,
PRO,0,T2_旋转轴右侧料仓取放料点_P3,MiddleAxis_P3,59003,,,,,,,,,,,, PRO,0,T2_旋转轴右侧料仓取放料点_P3,MiddleAxis_P3,-24,,,,,,,,,,,,
PRO,0,T2_旋转轴_料串取放料点_P4,MiddleAxis_P4,59004,,,,,,,,,,,, PRO,0,T2_旋转轴_料串取放料点_P4,MiddleAxis_P4,2354,,,,,,,,,,,,
PRO,0,T2_旋转轴P1速度,MiddleAxis_P1Speed,500,,,,,,,,,,,, PRO,0,T2_旋转轴P1速度,MiddleAxis_P1Speed,1500,,,,,,,,,,,,
PRO,0,T2_旋转轴P2速度,MiddleAxis_P2Speed,500,,,,,,,,,,,, PRO,0,T2_旋转轴P2速度,MiddleAxis_P2Speed,1500,,,,,,,,,,,,
PRO,0,T2_旋转轴P3速度,MiddleAxis_P3Speed,500,,,,,,,,,,,, PRO,0,T2_旋转轴P3速度,MiddleAxis_P3Speed,1500,,,,,,,,,,,,
PRO,0,T2_旋转轴P4速度,MiddleAxis_P4Speed,500,,,,,,,,,,,, PRO,0,T2_旋转轴P4速度,MiddleAxis_P4Speed,1500,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,0,T3_升降轴料串取放料低点 P1,UpdownAxis_P1,5000,,,,,,,,,,,, PRO,0,T3_升降轴料串取放料低点 P1,UpdownAxis_P1,129763,,,,,,,,,,,,
PRO,0,T3_升降轴料串取放料高点/待机点 P2,UpdownAxis_P2,5001,,,,,,,,,,,, PRO,0,T3_升降轴料串取放料高点/待机点 P2,UpdownAxis_P2,0,,,,,,,,,,,,
PRO,0,T3_升降轴左侧料仓取放料低点 P3,UpdownAxis_P3,5002,,,,,,,,,,,, PRO,0,T3_升降轴左侧料仓取放料低点 P3,UpdownAxis_P3,74285,,,,,,,,,,,,
PRO,0,T3_升降轴左侧料仓取放料高点 P4,UpdownAxis_P4,5003,,,,,,,,,,,, PRO,0,T3_升降轴左侧料仓取放料高点 P4,UpdownAxis_P4,22181,,,,,,,,,,,,
PRO,0,T3_升降轴右侧料仓取放料低点 P5,UpdownAxis_P5,5004,,,,,,,,,,,, PRO,0,T3_升降轴右侧料仓取放料低点 P5,UpdownAxis_P5,71798,,,,,,,,,,,,
PRO,0,T3_升降轴右侧料仓取放料高点 P6,UpdownAxis_P6,5005,,,,,,,,,,,, PRO,0,T3_升降轴右侧料仓取放料高点 P6,UpdownAxis_P6,22181,,,,,,,,,,,,
PRO,0,T3_升降轴P1速度/慢速度,UpdownAxis_P1Speed,500,,,,,,,,,,,, PRO,0,T3_升降轴P1速度/慢速度,UpdownAxis_P1Speed,50000,,,,,,,,,,,,
PRO,0,T3_升降轴P2速度/快速度,UpdownAxis_P2Speed,501,,,,,,,,,,,, PRO,0,T3_升降轴P2速度/快速度,UpdownAxis_P2Speed,70000,,,,,,,,,,,,
PRO,0,T3_升降轴P3速度/慢速度,UpdownAxis_P3Speed,502,,,,,,,,,,,, PRO,0,T3_升降轴P3速度/慢速度,UpdownAxis_P3Speed,50000,,,,,,,,,,,,
PRO,0,T3_升降轴P4速度/快速度,UpdownAxis_P4Speed,503,,,,,,,,,,,, PRO,0,T3_升降轴P4速度/快速度,UpdownAxis_P4Speed,70000,,,,,,,,,,,,
PRO,0,T3_升降轴P5速度/慢速度,UpdownAxis_P5Speed,504,,,,,,,,,,,, PRO,0,T3_升降轴P5速度/慢速度,UpdownAxis_P5Speed,50000,,,,,,,,,,,,
PRO,0,T3_升降轴P6速度/快速度,UpdownAxis_P6Speed,505,,,,,,,,,,,, PRO,0,T3_升降轴P6速度/快速度,UpdownAxis_P6Speed,70000,,,,,,,,,,,,
PRO,0,T3_升降轴高度转换系数(1mm对应的脉冲),UpdownAxis_ChangeValue,11000,,,,,,,,,,,, PRO,0,T3_升降轴高度转换系数(1mm对应的脉冲),UpdownAxis_ChangeValue,10041,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,0,T4_进出轴待机点 P1,InOutAxis_P1,5000,,,,,,,,,,,, PRO,0,T4_进出轴待机点 P1,InOutAxis_P1,500,,,,,,,,,,,,
PRO,0,T4_进出轴7寸取料点P2,InOutAxis_P2,5000,,,,,,,,,,,, PRO,0,T4_进出轴7寸取料点P2,InOutAxis_P2,500,,,,,,,,,,,,
PRO,0,T4_进出轴13寸取料点P3,InOutAxis_P3,5000,,,,,,,,,,,, PRO,0,T4_进出轴13寸取料点P3,InOutAxis_P3,500,,,,,,,,,,,,
PRO,0,T4_进出轴放料点P4,InOutAxis_P4,5000,,,,,,,,,,,, PRO,0,T4_进出轴放料点P4,InOutAxis_P4,500,,,,,,,,,,,,
PRO,0,T4_进出轴待机点 P1Speed,InOutAxis_P1Speed,5000,,,,,,,,,,,, PRO,0,T4_进出轴待机点 P1Speed,InOutAxis_P1Speed,5000,,,,,,,,,,,,
PRO,0,T4_进出轴7寸取料点P2Speed,InOutAxis_P2Speed,5000,,,,,,,,,,,, PRO,0,T4_进出轴7寸取料点P2Speed,InOutAxis_P2Speed,5000,,,,,,,,,,,,
PRO,0,T4_进出轴13寸取料点P3Speed,InOutAxis_P3Speed,5000,,,,,,,,,,,, PRO,0,T4_进出轴13寸取料点P3Speed,InOutAxis_P3Speed,5000,,,,,,,,,,,,
PRO,0,T4_进出轴放料点P4Speed,InOutAxis_P4Speed,5000,,,,,,,,,,,, PRO,0,T4_进出轴放料点P4Speed,InOutAxis_P4Speed,5000,,,,,,,,,,,,
PRO,0,T4_进出轴右侧缓冲点P6,InOutAxis_P6,500,,,,,,,,,,,,
,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,0,AgvInName,AgvInName,D1,,,,,,,,,,,, PRO,0,AgvInName,AgvInName,D1,,,,,,,,,,,,
PRO,0,AgvOutName,AgvOutName,D2,,,,,,,,,,,, PRO,0,AgvOutName,AgvOutName,D2,,,,,,,,,,,,
...@@ -138,5 +154,8 @@ PRO,,两次吹气间隔(分钟),BlowAir_Interval,10,,,,,,,,,,,, ...@@ -138,5 +154,8 @@ PRO,,两次吹气间隔(分钟),BlowAir_Interval,10,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,0,是否调试状态(1=调试,0=正常),IsDebug,1,,,,,,,,,,,, PRO,0,是否调试状态(1=调试,0=正常),IsDebug,1,,,,,,,,,,,,
PRO,,气压检测IO关闭需要持续的时间,AirCheckSeconds,3,,,,,,,,,,,, PRO,,气压检测IO关闭需要持续的时间,AirCheckSeconds,3,,,,,,,,,,,,
PRO,,所有料仓的CID(用#号分隔),All_CIDs,packing-1#packing-2,,,,,,,,,,,, PRO,,所有料仓的CID(用#号分隔),All_CIDs,duo-2,,,,,,,,,,,,
PRO,,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00E96448339),,,,,,,,,,,, PRO,,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00E96448339)#,,,,,,,,,,,,
PRO,,最后一盘料需要补充的高度,LastTrayAddHeight,10,,,,,,,,,,,,
PRO,,入料Rfid_IP,In_Rfid_IP,192.168.202.21,,,,,,,,,,,,
PRO,,出料Rfid IP,Out_Rfid_IP,192.168.201.21,,,,,,,,,,,,
位置,优先级,高度,宽度,料仓ID,旋转轴库位点P2,升降轴库位出料前点P5,升降轴库位出料缓冲点P6,升降轴库位入料前点P3,升降轴库位入料缓冲点P4,进出轴库位点取料点P3,压紧轴压紧点P2,压紧轴压紧前点P3 位置,优先级,高度,宽度,料仓ID,旋转轴库位点P2,升降轴库位出料前点P5,升降轴库位出料缓冲点P6,升降轴库位入料前点P3,升降轴库位入料缓冲点P4,进出轴库位点取料点P3,压紧轴压紧点P2,压紧轴压紧前点P3,,,,,,
1#AC1_1_1_4,259,32,15,1,306200,1290614,1299614,1299614,1290614,140800,20,20 1#AC1_0A_1_1,1148,12,7,1,1057,44,100,100,44,4693,44615,31038,,,,42,,
1#AC1_1_1_5,258,32,15,1,306200,1334970,1343970,1343970,1334970,140800,20,20 1#AC1_0A_1_2,1147,12,7,1,1057,227,283,283,227,4693,44615,31038,,-56,12,,,
1#AC1_1_1_6,257,32,15,1,306200,1381622,1392122,1392122,1381622,140800,20,20 1#AC1_0A_1_3,1146,12,7,1,1057,417,473,473,417,4693,44615,31038,,-56,,,,
1#AC1_1_1_7,256,32,15,1,306200,1424390,1433390,1433390,1424390,140800,20,20 1#AC1_0A_1_4,1145,12,7,1,1057,604,660,660,604,4693,44615,31038,,-56,,,,
1#AC1_1_1_8,255,32,15,1,306200,1471088,1481488,1481488,1471088,140800,20,20 1#AC1_0A_1_5,1144,12,7,1,1057,794,850,850,794,4693,44615,31038,,-56,,,,
1#AC1_1_1_9,254,32,15,1,306200,1514627,1525627,1525627,1514627,140800,20,20 1#AC1_0A_1_6,1143,12,7,1,1057,984,1040,1040,984,4693,44615,31038,,-56,,,,
1#AC1_1_1_10,253,32,15,1,306200,1561503,1570503,1570503,1561503,140800,20,20 1#AC1_0A_1_7,1142,12,7,1,1057,1168,1224,1224,1168,4693,44615,31038,,-56,,,,
1#AC1_1_1_11,252,32,15,1,306200,1603404,1612404,1612404,1603404,140800,20,20 1#AC1_0A_1_8,1141,12,7,1,1057,1357,1413,1413,1357,4693,44615,31038,,-56,,,,
1#AC1_1_1_12,251,32,15,1,306200,1650000,1660593,1660593,1650000,140800,20,20 1#AC1_0A_1_9,1140,12,7,1,1057,1541,1597,1597,1541,4693,44615,31038,,-56,,,,
1#AC1_1_1_13,250,32,15,1,306200,1693078,1702078,1702078,1693078,140800,20,20 1#AC1_0A_1_10,1139,12,7,1,1057,1725,1781,1781,1725,4693,44615,31038,,-56,,,,
1#AC1_1_1_14,249,32,15,1,306200,1738576,1747576,1747576,1738576,140800,20,20 1#AC1_0A_1_11,1138,12,7,1,1057,1918,1974,1974,1918,4693,44615,31038,,-56,,,,
1#AC1_1_1_15,248,32,15,1,306200,1785295,1794295,1794295,1785295,140800,20,20 1#AC1_0A_1_12,1137,12,7,1,1054,2104,2160,2160,2104,4693,44615,31038,,-56,,,,
1#AC1_1_1_16,247,12,15,1,436077,9671,20171,20171,9671,140800,20,20 1#AC1_0A_1_13,1136,12,7,1,1054,2294,2350,2350,2294,4693,44615,31038,,-56,,,,
1#AC1_1_1_17,246,12,15,1,436077,39893,50393,50393,39893,140800,20,20 1#AC1_0A_1_14,1135,12,7,1,1054,2481,2537,2537,2481,4693,44615,31038,,-56,,,,
1#AC1_1_1_18,245,12,15,1,436077,70661,81161,81161,70661,140800,20,20 1#AC1_0A_2_1,1134,12,7,1,1051,3715,3763,3763,3715,4693,44615,31038,,-48,,,,
1#AC1_1_1_19,244,12,15,1,436077,98713,109213,109213,98713,140800,20,20 1#AC1_0A_2_2,1133,12,7,1,1051,3901,3949,3949,3901,4693,44615,31038,,-48,,,,
1#AC1_1_1_20,243,12,15,1,436077,128728,139228,139228,128728,140800,20,20 1#AC1_0A_2_3,1132,12,7,1,1051,4091,4139,4139,4091,4693,44615,31038,,-48,,,,
1#AC1_1_1_21,242,12,15,1,436077,159195,169695,169695,159195,140800,20,20 1#AC1_0A_2_4,1131,12,7,1,1051,4281,4329,4329,4281,4693,44615,31038,,-48,,,,
1#AC1_1_2_4,241,12,15,1,436077,189134,199634,199634,189134,140800,20,20 1#AC1_0A_2_5,1130,12,7,1,1051,4465,4513,4513,4465,4693,44615,31038,,-48,,,,
1#AC1_1_2_5,240,12,15,1,436077,219845,230345,230345,219845,140800,20,20 1#AC1_0A_2_6,1129,12,7,1,1051,4651,4699,4699,4651,4693,44615,31038,,-48,,,,
1#AC1_1_2_6,239,12,15,1,436077,252000,262500,262500,252000,140800,20,20 1#AC1_0A_2_7,1128,12,7,1,1051,4841,4889,4889,4841,4693,44615,31038,,-48,,,,
1#AC1_1_2_7,238,12,15,1,436077,280421,290921,290921,280421,140800,20,20 1#AC1_0A_2_8,1127,12,7,1,1051,5025,5073,5073,5025,4693,44615,31038,,-48,,,,
1#AC1_1_2_8,237,12,15,1,436077,312224,322724,322724,312224,140800,20,20 1#AC1_0A_2_9,1126,16,7,1,1051,5215,5263,5263,5215,4693,39596,27102,,-48,,,,
1#AC1_1_2_9,236,12,15,1,436077,342256,352756,352756,342256,140800,20,20 1#AC1_0A_2_10,1125,16,7,1,1051,5424,5472,5472,5424,4693,39596,27102,,-48,,,,
1#AC1_1_2_10,235,12,15,1,436077,369382,379882,379882,369382,140800,20,20 1#AC1_0A_2_11,1124,16,7,1,1051,5637,5685,5685,5637,4693,39596,27102,,-48,,,,
1#AC1_1_2_11,234,12,15,1,436077,399751,410251,410251,399751,140800,20,20 1#AC1_0A_2_12,1123,16,7,1,1051,5850,5898,5898,5850,4693,39596,27102,,-48,,,,
1#AC1_1_2_12,233,12,15,1,436200,430923,441423,441423,430923,140800,20,20 1#AC1_0A_2_13,1122,16,7,1,1051,6060,6108,6108,6060,4693,39596,27102,,-48,,,,
1#AC1_1_2_13,232,12,15,1,436157,459859,470359,470359,459859,140800,20,20 1#AC1_0A_2_14,1121,16,7,1,1051,6266,6314,6314,6266,4693,39596,27102,,-48,,,,
1#AC1_1_2_14,231,12,15,1,436214,489685,500185,500185,489685,140800,20,20 1#AC1_0A_2_15,1120,16,7,1,1051,6473,6521,6521,6473,4693,39596,27102,,-48,,,,
1#AC1_1_2_15,230,12,15,1,436271,522581,533081,533081,522581,140800,20,20 1#AC1_0A_2_16,1119,16,7,1,1051,6682,6730,6730,6682,4693,39596,27102,,-48,,,,
1#AC1_1_2_16,229,12,15,1,435628,550105,560605,560605,550105,140800,20,20 1#AC1_0A_2_17,1118,16,7,1,1051,6891,6943,6943,6891,4693,39596,27102,,-52,,,,
1#AC1_1_2_17,228,12,15,1,435585,583474,593974,593974,583474,140800,20,20 1#AC1_0A_3_1,1117,16,7,1,1049,7102,7150,7150,7102,4693,39596,27102,,-48,,,,
1#AC1_1_2_18,227,12,15,1,435542,612943,623443,623443,612943,140800,20,20 1#AC1_0A_3_2,1116,16,7,1,1049,7318,7366,7366,7318,4693,39596,27102,,-48,,,,
1#AC1_1_2_19,226,12,15,1,435499,642389,652889,652889,642389,140800,20,20 1#AC1_0A_3_3,1115,16,7,1,1049,7527,7575,7575,7527,4693,39596,27102,,-48,,,,
1#AC1_1_2_20,225,12,15,1,435456,670221,680721,680721,670221,140800,20,20 1#AC1_0A_3_4,1114,16,7,1,1049,7737,7785,7785,7737,4693,39596,27102,,-48,,,,
1#AC1_1_2_21,224,12,15,1,435413,700236,713736,713736,700236,140800,20,20 1#AC1_0A_3_5,1113,16,7,1,1049,7943,7991,7991,7943,4693,39596,27102,,-48,,,,
1#AC1_0A_3_6,1112,16,7,1,1049,8156,8204,8204,8156,4693,39596,27102,,-48,,,,
1#AC1_0A_3_7,1111,16,7,1,1049,8363,8411,8411,8363,4693,39596,27102,,-48,,,,
1#AC1_0A_3_8,1110,16,7,1,1049,8576,8624,8624,8576,4693,39596,27102,,-48,,,,
1#AC1_0A_3_9,1109,16,7,1,1049,8789,8837,8837,8789,4693,39596,27102,,-48,,,,
1#AC1_0A_3_10,1108,16,7,1,1049,9002,9050,9050,9002,4693,39596,27102,,-48,,,,
1#AC1_0A_3_11,1107,16,7,1,1049,9208,9256,9256,9208,4693,39596,27102,,-48,,,,
1#AC1_0A_3_12,1106,16,7,1,1049,9421,9469,9469,9421,4693,39596,27102,,-48,,,,
1#AC1_0A_3_13,1105,16,7,1,1049,9624,9672,9672,9624,4693,39596,27102,,-48,,,,
1#AC1_0A_3_14,1104,16,7,1,1049,9837,9885,9885,9837,4693,39596,27102,,-48,,,,
1#AC1_0A_3_15,1103,16,7,1,1049,10043,10091,10091,10043,4693,39596,27102,,-48,,,,
1#AC1_0A_3_16,1102,16,7,1,1049,10260,10308,10308,10260,4693,39596,27102,,-48,,,,
1#AC1_0B_1_1,1101,12,7,1,1513,44,100,100,44,4693,44615,31038,,-56,10,,,
1#AC1_0B_1_2,1100,12,7,1,1513,227,283,283,227,4693,44615,31038,,-56,,,,
1#AC1_0B_1_3,1099,12,7,1,1513,417,473,473,417,4693,44615,31038,,-56,,,,
1#AC1_0B_1_4,1098,12,7,1,1513,604,660,660,604,4693,44615,31038,,-56,,,,
1#AC1_0B_1_5,1097,12,7,1,1513,794,850,850,794,4693,44615,31038,,-56,,,,
1#AC1_0B_1_6,1096,12,7,1,1513,984,1040,1040,984,4693,44615,31038,,-56,,,,
1#AC1_0B_1_7,1095,12,7,1,1513,1168,1224,1224,1168,4693,44615,31038,,-56,,,,
1#AC1_0B_1_8,1094,12,7,1,1513,1357,1413,1413,1357,4693,44615,31038,,-56,,,,
1#AC1_0B_1_9,1093,12,7,1,1513,1541,1597,1597,1541,4693,44615,31038,,-56,,,,
1#AC1_0B_1_10,1092,12,7,1,1513,1725,1781,1781,1725,4693,44615,31038,,-56,,,,
1#AC1_0B_1_11,1091,12,7,1,1513,1918,1974,1974,1918,4693,44615,31038,,-56,,,,
1#AC1_0B_1_12,1090,12,7,1,1510,2104,2160,2160,2104,4693,44615,31038,,-56,,,,
1#AC1_0B_1_13,1089,12,7,1,1510,2294,2350,2350,2294,4693,44615,31038,,-56,,,,
1#AC1_0B_1_14,1088,12,7,1,1510,2481,2537,2537,2481,4693,44615,31038,,-56,,,,
1#AC1_0B_2_1,1087,12,7,1,1507,3715,3763,3763,3715,4693,44615,31038,,-48,,,,
1#AC1_0B_2_2,1086,12,7,1,1507,3901,3949,3949,3901,4693,44615,31038,,-48,,,,
1#AC1_0B_2_3,1085,12,7,1,1507,4091,4139,4139,4091,4693,44615,31038,,-48,,,,
1#AC1_0B_2_4,1084,12,7,1,1507,4281,4329,4329,4281,4693,44615,31038,,-48,,,,
1#AC1_0B_2_5,1083,12,7,1,1507,4465,4513,4513,4465,4693,44615,31038,,-48,,,,
1#AC1_0B_2_6,1082,12,7,1,1507,4651,4699,4699,4651,4693,44615,31038,,-48,,,,
1#AC1_0B_2_7,1081,12,7,1,1507,4841,4889,4889,4841,4693,44615,31038,,-48,,,,
1#AC1_0B_2_8,1080,12,7,1,1507,5025,5073,5073,5025,4693,44615,31038,,-48,,,,
1#AC1_0B_2_9,1079,16,7,1,1507,5215,5263,5263,5215,4693,39596,27102,,-48,,,,
1#AC1_0B_2_10,1078,16,7,1,1507,5424,5472,5472,5424,4693,39596,27102,,-48,,,,
1#AC1_0B_2_11,1077,16,7,1,1507,5637,5685,5685,5637,4693,39596,27102,,-48,,,,
1#AC1_0B_2_12,1076,16,7,1,1507,5850,5898,5898,5850,4693,39596,27102,,-48,,,,
1#AC1_0B_2_13,1075,16,7,1,1507,6060,6108,6108,6060,4693,39596,27102,,-48,,,,
1#AC1_0B_2_14,1074,16,7,1,1507,6266,6314,6314,6266,4693,39596,27102,,-48,,,,
1#AC1_0B_2_15,1073,16,7,1,1507,6473,6521,6521,6473,4693,39596,27102,,-48,,,,
1#AC1_0B_2_16,1072,16,7,1,1507,6682,6730,6730,6682,4693,39596,27102,,-48,,,,
1#AC1_0B_2_17,1071,16,7,1,1507,6891,6943,6943,6891,4693,39596,27102,,-52,,,,
1#AC1_0B_3_1,1070,16,7,1,1504,7102,7150,7150,7102,4693,39596,27102,,-48,,,,
1#AC1_0B_3_2,1069,16,7,1,1504,7318,7366,7366,7318,4693,39596,27102,,-48,,,,
1#AC1_0B_3_3,1068,16,7,1,1504,7527,7575,7575,7527,4693,39596,27102,,-48,,,,
1#AC1_0B_3_4,1067,16,7,1,1504,7737,7785,7785,7737,4693,39596,27102,,-48,,,,
1#AC1_0B_3_5,1066,16,7,1,1504,7943,7991,7991,7943,4693,39596,27102,,-48,,,,
1#AC1_0B_3_6,1065,16,7,1,1504,8156,8204,8204,8156,4693,39596,27102,,-48,,,,
1#AC1_0B_3_7,1064,16,7,1,1504,8363,8411,8411,8363,4693,39596,27102,,-48,,,,
1#AC1_0B_3_8,1063,16,7,1,1504,8576,8624,8624,8576,4693,39596,27102,,-48,,,,
1#AC1_0B_3_9,1062,16,7,1,1504,8789,8837,8837,8789,4693,39596,27102,,-48,,,,
1#AC1_0B_3_10,1061,16,7,1,1504,9002,9050,9050,9002,4693,39596,27102,,-48,,,,
1#AC1_0B_3_11,1060,16,7,1,1504,9208,9256,9256,9208,4693,39596,27102,,-48,,,,
1#AC1_0B_3_12,1059,16,7,1,1504,9421,9469,9469,9421,4693,39596,27102,,-48,,,,
1#AC1_0B_3_13,1058,16,7,1,1504,9624,9672,9672,9624,4693,39596,27102,,-48,,,,
1#AC1_0B_3_14,1057,16,7,1,1504,9837,9885,9885,9837,4693,39596,27102,,-48,,,,
1#AC1_0B_3_15,1056,16,7,1,1504,10043,10091,10091,10043,4693,39596,27102,,-48,,,,
1#AC1_0B_3_16,1055,16,7,1,1504,10260,10308,10308,10260,4693,39596,27102,,-48,,,,
1#AC1_1A_1_1,1054,8,7,1,2052,19,95,95,19,4693,49514,33031,,-61,10,,,
1#AC1_1A_1_2,1053,8,7,1,2052,183,259,259,183,4693,49514,33031,,-61,,,,
1#AC1_1A_1_3,1052,8,7,1,2052,350,426,426,350,4693,49514,33031,,-61,,,,
1#AC1_1A_1_4,1051,8,7,1,2052,517,593,593,517,4693,49514,33031,,-61,,,,
1#AC1_1A_1_5,1050,8,7,1,2052,684,760,760,684,4693,49514,33031,,-61,,,,
1#AC1_1A_1_6,1049,8,7,1,2052,848,924,924,848,4693,49514,33031,,-61,,,,
1#AC1_1A_1_7,1048,8,7,1,2052,1012,1088,1088,1012,4693,49514,33031,,-61,,,,6
1#AC1_1A_1_8,1047,8,7,1,2052,1172,1248,1248,1172,4693,49514,33031,,-61,,,,
1#AC1_1A_1_9,1046,8,7,1,2052,1339,1415,1415,1339,4693,49514,33031,,-61,,,,
1#AC1_1A_1_10,1045,8,7,1,2052,1506,1582,1582,1506,4693,49514,33031,,-61,,,,
1#AC1_1A_1_11,1044,8,7,1,2052,1673,1749,1749,1673,4693,49514,33031,,-61,,,,
1#AC1_1A_1_12,1043,8,7,1,2052,1837,1913,1913,1837,4693,49514,33031,,-61,,,,
1#AC1_1A_1_13,1042,8,7,1,2052,2007,2083,2083,2007,4693,49514,33031,,-61,,,,
1#AC1_1A_1_14,1041,8,7,1,2052,2168,2244,2244,2168,4693,49514,33031,,-61,,,,
1#AC1_1A_1_15,1040,8,7,1,2052,2332,2408,2408,2332,4693,49514,33031,,-61,,,,
1#AC1_1A_1_16,1039,8,7,1,2052,2492,2568,2568,2492,4693,49514,33031,,-61,,,,
1#AC1_1A_1_17,1038,8,7,1,2052,2659,2735,2735,2659,4600,49514,33031,,-61,,,,
1#AC1_1A_1_18,1037,8,7,1,2052,2830,2906,2906,2830,4600,49514,33031,,-61,,,,
1#AC1_1A_1_19,1036,8,7,1,2052,3000,3076,3076,3000,4600,49514,33031,,-61,,,,
1#AC1_1A_1_20,1035,8,7,1,2052,3164,3240,3240,3164,4600,49514,33031,,-61,,,,
1#AC1_1A_1_21,1034,8,7,1,2052,3320,3400,3400,3320,4600,49514,33031,,-65,,,,
1#AC1_1A_2_1,1033,8,7,1,2052,3497,3566,3566,3497,4693,49514,33031,,-69,,,,
1#AC1_1A_2_2,1032,8,7,1,2052,3664,3728,3728,3664,4693,49514,33031,,-64,,,,
1#AC1_1A_2_3,1031,8,7,1,2052,3833,3894,3894,3833,4693,49514,33031,,-61,,,,
1#AC1_1A_2_4,1030,8,7,1,2052,3997,4058,4058,3997,4693,49514,33031,,-61,,,,
1#AC1_1A_2_5,1029,8,7,1,2052,4161,4222,4222,4161,4693,49514,33031,,-61,,,,
1#AC1_1A_2_6,1028,8,7,1,2052,4324,4385,4385,4324,4693,49514,33031,,-61,,,,
1#AC1_1A_2_7,1027,8,7,1,2052,4491,4552,4552,4491,4693,49514,33031,,-61,,,,
1#AC1_1A_2_8,1026,8,7,1,2052,4658,4719,4719,4658,4693,49514,33031,,-61,,,,
1#AC1_1A_2_9,1025,8,7,1,2052,4823,4884,4884,4823,4693,49514,33031,,-61,,,,
1#AC1_1A_2_10,1024,8,7,1,2052,4986,5047,5047,4986,4693,49514,33031,,-61,,,,
1#AC1_1A_2_11,1023,8,7,1,2052,5153,5214,5214,5153,4693,49514,33031,,-61,,,,
1#AC1_1A_2_12,1022,8,7,1,2052,5317,5378,5378,5317,4693,49514,33031,,-61,,,,
1#AC1_1A_2_13,1021,8,7,1,2052,5481,5542,5542,5481,4693,49514,33031,,-61,,,,
1#AC1_1A_2_14,1020,8,7,1,2052,5648,5709,5709,5648,4693,49514,33031,,-61,,,,
1#AC1_1A_2_15,1019,8,7,1,2052,5815,5876,5876,5815,4693,49514,33031,,-61,,,,
1#AC1_1A_2_16,1018,8,7,1,2052,5979,6040,6040,5979,4693,49514,33031,,-61,,,,
1#AC1_1A_2_17,1017,8,7,1,2052,6149,6210,6210,6149,4693,49514,33031,,-61,,,,
1#AC1_1A_2_18,1016,8,7,1,2052,6306,6367,6367,6306,4650,49514,33031,,-61,,,,
1#AC1_1A_2_19,1015,8,7,1,2052,6467,6528,6528,6467,4650,49514,33031,,-61,,,,
1#AC1_1A_2_20,1014,8,7,1,2052,6634,6695,6695,6634,4650,49514,33031,,-61,,,,
1#AC1_1A_2_21,1013,8,7,1,2052,6801,6862,6862,6801,4650,49514,33031,,-61,,,,
1#AC1_1A_3_1,1012,8,7,1,2050,6964,7021,7021,6964,4693,49514,33031,,-57,,,,
1#AC1_1A_3_2,1011,8,7,1,2050,7128,7185,7185,7128,4693,49514,33031,,-57,,,,
1#AC1_1A_3_3,1010,8,7,1,2050,7292,7349,7349,7292,4693,49514,33031,,-57,,,,
1#AC1_1A_3_4,1009,8,7,1,2050,7456,7513,7513,7456,4693,49514,33031,,-57,,,,
1#AC1_1A_3_5,1008,8,7,1,2050,7619,7676,7676,7619,4693,49514,33031,,-57,,,,
1#AC1_1A_3_6,1007,8,7,1,2050,7787,7844,7844,7787,4693,49514,33031,,-57,,,,
1#AC1_1A_3_7,1006,8,7,1,2050,7950,8007,8007,7950,4693,49514,33031,,-57,,,,
1#AC1_1A_3_8,1005,8,7,1,2050,8117,8174,8174,8117,4693,49514,33031,,-57,,,,
1#AC1_1A_3_9,1004,8,7,1,2050,8281,8338,8338,8281,4693,49514,33031,,-57,,,,
1#AC1_1A_3_10,1003,8,7,1,2050,8448,8505,8505,8448,4693,49514,33031,,-57,,,,
1#AC1_1A_3_11,1002,8,7,1,2050,8609,8666,8666,8609,4693,49514,33031,,-57,,,,
1#AC1_1A_3_12,1001,8,7,1,2050,8779,8836,8836,8779,4693,49514,33031,,-57,,,,
1#AC1_1A_3_13,1000,8,7,1,2050,8940,8997,8997,8940,4693,49514,33031,,-57,,,,
1#AC1_1A_3_14,999,8,7,1,2050,9103,9160,9160,9103,4693,49514,33031,,-57,,,,
1#AC1_1A_3_15,998,8,7,1,2050,9267,9324,9324,9267,4693,49514,33031,,-57,,,,
1#AC1_1A_3_16,997,8,7,1,2050,9437,9494,9494,9437,4693,49514,33031,,-57,,,,
1#AC1_1A_3_17,996,8,7,1,2050,9601,9658,9658,9601,4693,49514,33031,,-57,,,,
1#AC1_1A_3_18,995,8,7,1,2050,9768,9825,9825,9768,4693,49514,33031,,-57,,,,
1#AC1_1A_3_19,994,8,7,1,2050,9929,9986,9986,9929,4693,49514,33031,,-57,,,,
1#AC1_1A_3_20,993,8,7,1,2050,10089,10146,10146,10089,4693,49514,33031,,-57,,,,
1#AC1_1A_3_21,992,8,7,1,2050,10266,10323,10323,10266,4693,49514,33031,,-57,,,,
1#AC1_1B_1_1,991,8,7,1,2511,34,95,95,34,4693,49514,33031,,-61,,,,
1#AC1_1B_1_2,990,8,7,1,2511,198,259,259,198,4693,49514,33031,,-61,,,,
1#AC1_1B_1_3,989,8,7,1,2511,365,426,426,365,4693,49514,33031,,-61,,18,,
1#AC1_1B_1_4,988,8,7,1,2511,532,593,593,532,4693,49514,33031,,-61,,,,
1#AC1_1B_1_5,987,8,7,1,2511,699,760,760,699,4693,49514,33031,,-61,,,,
1#AC1_1B_1_6,986,8,7,1,2511,863,924,924,863,4693,49514,33031,,-61,,,,
1#AC1_1B_1_7,985,8,7,1,2511,1027,1088,1088,1027,4693,49514,33031,,-61,,,,
1#AC1_1B_1_8,984,8,7,1,2511,1187,1248,1248,1187,4693,49514,33031,,-61,,,,
1#AC1_1B_1_9,983,8,7,1,2511,1354,1415,1415,1354,4693,49514,33031,,-61,,,,
1#AC1_1B_1_10,982,8,7,1,2511,1521,1582,1582,1521,4693,49514,33031,,-61,,,,
1#AC1_1B_1_11,981,8,7,1,2511,1688,1749,1749,1688,4693,49514,33031,,-61,,,,
1#AC1_1B_1_12,980,8,7,1,2511,1852,1913,1913,1852,4693,49514,33031,,-61,,,,
1#AC1_1B_1_13,979,8,7,1,2511,2022,2083,2083,2022,4693,49514,33031,,-61,,,,
1#AC1_1B_1_14,978,8,7,1,2511,2183,2244,2244,2183,4693,49514,33031,,-61,,,,
1#AC1_1B_1_15,977,8,7,1,2511,2347,2408,2408,2347,4693,49514,33031,,-61,,,,
1#AC1_1B_1_16,976,8,7,1,2511,2507,2568,2568,2507,4693,49514,33031,,-61,,,,
1#AC1_1B_1_17,975,8,7,1,2511,2674,2735,2735,2674,4693,49514,33031,,-61,,,,
1#AC1_1B_1_18,974,8,7,1,2511,2845,2906,2906,2845,4693,49514,33031,,-61,,,,
1#AC1_1B_1_19,973,8,7,1,2511,3015,3076,3076,3015,4693,49514,33031,,-61,,,,
1#AC1_1B_1_20,972,8,7,1,2511,3179,3240,3240,3179,4693,49514,33031,,-61,,,,
1#AC1_1B_1_21,971,8,7,1,2511,3349,3410,3410,3349,4693,49514,33031,,-61,,,,
1#AC1_1B_2_1,970,8,7,1,2509,3497,3566,3566,3497,4693,49514,33031,,-69,,,,
1#AC1_1B_2_2,969,8,7,1,2509,3664,3728,3728,3664,4693,49514,33031,,-64,,,,
1#AC1_1B_2_3,968,8,7,1,2509,3833,3894,3894,3833,4693,49514,33031,,-61,,,,
1#AC1_1B_2_4,967,8,7,1,2509,3997,4058,4058,3997,4693,49514,33031,,-61,,,,
1#AC1_1B_2_5,966,8,7,1,2509,4161,4222,4222,4161,4693,49514,33031,,-61,,,,
1#AC1_1B_2_6,965,8,7,1,2509,4324,4385,4385,4324,4693,49514,33031,,-61,,,,
1#AC1_1B_2_7,964,8,7,1,2509,4491,4552,4552,4491,4693,49514,33031,,-61,,,,
1#AC1_1B_2_8,963,8,7,1,2509,4658,4719,4719,4658,4693,49514,33031,,-61,,,,
1#AC1_1B_2_9,962,8,7,1,2509,4823,4884,4884,4823,4693,49514,33031,,-61,,,,
1#AC1_1B_2_10,961,8,7,1,2509,4986,5047,5047,4986,4693,49514,33031,,-61,,,,
1#AC1_1B_2_11,960,8,7,1,2509,5153,5214,5214,5153,4693,49514,33031,,-61,,,,
1#AC1_1B_2_12,959,8,7,1,2509,5317,5378,5378,5317,4693,49514,33031,,-61,,,,
1#AC1_1B_2_13,958,8,7,1,2509,5481,5542,5542,5481,4693,49514,33031,,-61,,,,
1#AC1_1B_2_14,957,8,7,1,2509,5648,5709,5709,5648,4693,49514,33031,,-61,,,,
1#AC1_1B_2_15,956,8,7,1,2509,5815,5876,5876,5815,4693,49514,33031,,-61,,,,
1#AC1_1B_2_16,955,8,7,1,2509,5979,6040,6040,5979,4693,49514,33031,,-61,,,,
1#AC1_1B_2_17,954,8,7,1,2509,6149,6210,6210,6149,4693,49514,33031,,-61,,,,
1#AC1_1B_2_18,953,8,7,1,2509,6306,6367,6367,6306,4693,49514,33031,,-61,,,,
1#AC1_1B_2_19,952,8,7,1,2509,6467,6528,6528,6467,4693,49514,33031,,-61,,,,
1#AC1_1B_2_20,951,8,7,1,2509,6634,6695,6695,6634,4693,49514,33031,,-61,,,,
1#AC1_1B_2_21,950,8,7,1,2509,6801,6862,6862,6801,4693,49514,33031,,-61,,,,
1#AC1_1B_3_1,949,8,7,1,2509,6964,7021,7021,6964,4693,49514,33031,,-57,,,,
1#AC1_1B_3_2,948,8,7,1,2509,7128,7185,7185,7128,4693,49514,33031,,-57,,,,
1#AC1_1B_3_3,947,8,7,1,2509,7292,7349,7349,7292,4693,49514,33031,,-57,,,,
1#AC1_1B_3_4,946,8,7,1,2509,7456,7513,7513,7456,4693,49514,33031,,-57,,,,
1#AC1_1B_3_5,945,8,7,1,2509,7619,7676,7676,7619,4693,49514,33031,,-57,,,,
1#AC1_1B_3_6,944,8,7,1,2509,7787,7844,7844,7787,4693,49514,33031,,-57,,,,
1#AC1_1B_3_7,943,8,7,1,2509,7950,8007,8007,7950,4693,49514,33031,,-57,,,,
1#AC1_1B_3_8,942,8,7,1,2509,8117,8174,8174,8117,4693,49514,33031,,-57,,,,
1#AC1_1B_3_9,941,8,7,1,2509,8281,8338,8338,8281,4693,49514,33031,,-57,,,,
1#AC1_1B_3_10,940,8,7,1,2509,8448,8505,8505,8448,4693,49514,33031,,-57,,,,
1#AC1_1B_3_11,939,8,7,1,2509,8609,8666,8666,8609,4693,49514,33031,,-57,,,,
1#AC1_1B_3_12,938,8,7,1,2506,8779,8836,8836,8779,4693,49514,33031,,-57,,,,
1#AC1_1B_3_13,937,8,7,1,2506,8940,8997,8997,8940,4693,49514,33031,,-57,,,,
1#AC1_1B_3_14,936,8,7,1,2506,9103,9160,9160,9103,4693,49514,33031,,-57,,,,
1#AC1_1B_3_15,935,8,7,1,2506,9267,9324,9324,9267,4693,49514,33031,,-57,,,,
1#AC1_1B_3_16,934,8,7,1,2506,9437,9494,9494,9437,4693,49514,33031,,-57,,,,
1#AC1_1B_3_17,933,8,7,1,2506,9601,9658,9658,9601,4693,49514,33031,,-57,,,,
1#AC1_1B_3_18,932,8,7,1,2506,9768,9825,9825,9768,4693,49514,33031,,-57,,,,
1#AC1_1B_3_19,931,8,7,1,2506,9929,9986,9986,9929,4693,49514,33031,,-57,,,,
1#AC1_1B_3_20,930,8,7,1,2506,10089,10146,10146,10089,4693,49514,33031,,-57,,,,
1#AC1_1B_3_21,929,8,7,1,2506,10266,10323,10323,10266,4693,49514,33031,,-57,,,,
1#AC1_2A_1_1,928,8,7,1,3054,27,85,85,27,4693,49514,33031,,-53,7,5,,
1#AC1_2A_1_2,927,8,7,1,3054,191,249,249,191,4693,49514,33031,,-53,,,,
1#AC1_2A_1_3,926,8,7,1,3054,355,413,413,355,4693,49514,33031,,-53,,,,
1#AC1_2A_1_4,925,8,7,1,3054,518,576,576,518,4693,49514,33031,,-53,,,,
1#AC1_2A_1_5,924,8,7,1,3054,682,740,740,682,4693,49514,33031,,-53,,,,
1#AC1_2A_1_6,923,8,7,1,3054,843,901,901,843,4693,49514,33031,,-53,,,,
1#AC1_2A_1_7,922,8,7,1,3054,1006,1064,1064,1006,4693,49514,33031,,-53,,,,
1#AC1_2A_1_8,921,8,7,1,3054,1177,1235,1235,1177,4693,49514,33031,,-53,,,,
1#AC1_2A_1_9,920,8,7,1,3054,1344,1402,1402,1344,4693,49514,33031,,-53,,,,
1#AC1_2A_1_10,919,8,7,1,3054,1508,1566,1566,1508,4693,49514,33031,,-53,,,,
1#AC1_2A_1_11,918,8,7,1,3054,1675,1733,1733,1675,4693,49514,33031,,-53,,,,
1#AC1_2A_1_12,917,8,7,1,3054,1839,1897,1897,1839,4693,49514,33031,,-53,,,,
1#AC1_2A_1_13,916,8,7,1,3054,1999,2057,2057,1999,4693,49514,33031,,-53,,,,
1#AC1_2A_1_14,915,8,7,1,3054,2163,2221,2221,2163,4693,49514,33031,,-53,,,,
1#AC1_2A_1_15,914,8,7,1,3054,2333,2391,2391,2333,4693,49514,33031,,-53,,,,
1#AC1_2A_1_16,913,8,7,1,3054,2497,2555,2555,2497,4693,49514,33031,,-53,,,,
1#AC1_2A_1_17,912,8,7,1,3054,2664,2722,2722,2664,4693,49514,33031,,-53,,,,
1#AC1_2A_1_18,911,8,7,1,3054,2831,2889,2889,2831,4693,49514,33031,,-53,,,,
1#AC1_2A_1_19,910,8,7,1,3054,2992,3050,3050,2992,4693,49514,33031,,-53,,,,
1#AC1_2A_1_20,909,8,7,1,3054,3155,3213,3213,3155,4693,49514,33031,,-53,,,,
1#AC1_2A_1_21,908,8,7,1,3054,3326,3384,3384,3326,4693,49514,33031,,-53,,,,
1#AC1_2A_2_1,907,8,7,1,3052,3483,3536,3536,3483,4693,49514,33031,,-53,,,,
1#AC1_2A_2_2,906,8,7,1,3052,3647,3700,3700,3647,4693,49514,33031,,-53,,,,
1#AC1_2A_2_3,905,8,7,1,3052,3814,3867,3867,3814,4693,49514,33031,,-53,,,,
1#AC1_2A_2_4,904,8,7,1,3052,3981,4034,4034,3981,4693,49514,33031,,-53,,,,
1#AC1_2A_2_5,903,8,7,1,3052,4138,4191,4191,4138,4693,49514,33031,,-53,,,,
1#AC1_2A_2_6,902,8,7,1,3052,4305,4358,4358,4305,4693,49514,33031,,-53,,,,
1#AC1_2A_2_7,901,8,7,1,3052,4476,4529,4529,4476,4693,49514,33031,,-53,,,,
1#AC1_2A_2_8,900,8,7,1,3052,4640,4693,4693,4640,4693,49514,33031,,-53,,,,
1#AC1_2A_2_9,899,8,7,1,3052,4806,4859,4859,4806,4693,49514,33031,,-53,,,,
1#AC1_2A_2_10,898,8,7,1,3052,4970,5023,5023,4970,4693,49514,33031,,-53,,,,
1#AC1_2A_2_11,897,8,7,1,3052,5134,5187,5187,5134,4693,49514,33031,,-53,,,,
1#AC1_2A_2_12,896,8,7,1,3052,5298,5351,5351,5298,4693,49514,33031,,-53,,,,
1#AC1_2A_2_13,895,8,7,1,3052,5462,5515,5515,5462,4693,49514,33031,,-53,,,,
1#AC1_2A_2_14,894,8,7,1,3052,5629,5682,5682,5629,4693,49514,33031,,-53,,,,
1#AC1_2A_2_15,893,8,7,1,3052,5792,5845,5845,5792,4693,49514,33031,,-53,,,,
1#AC1_2A_2_16,892,8,7,1,3052,5956,6009,6009,5956,4693,49514,33031,,-53,,,,
1#AC1_2A_2_17,891,8,7,1,3052,6126,6179,6179,6126,4693,49514,33031,,-53,,,,
1#AC1_2A_2_18,890,8,7,1,3052,6287,6340,6340,6287,4693,49514,33031,,-53,,,,
1#AC1_2A_2_19,889,8,7,1,3052,6451,6504,6504,6451,4693,49514,33031,,-53,,,,
1#AC1_2A_2_20,888,8,7,1,3052,6615,6668,6668,6615,4693,49514,33031,,-53,,,,
1#AC1_2A_2_21,887,8,7,1,3052,6779,6832,6832,6779,4693,49514,33031,,-53,,,,
1#AC1_2A_3_1,886,8,7,1,3052,6936,6990,6990,6936,4693,49514,33031,,-54,,,,
1#AC1_2A_3_2,885,8,7,1,3052,7100,7154,7154,7100,4693,49514,33031,,-54,,,,
1#AC1_2A_3_3,884,8,7,1,3052,7264,7318,7318,7264,4693,49514,33031,,-54,,,,
1#AC1_2A_3_4,883,8,7,1,3052,7431,7485,7485,7431,4693,49514,33031,,-54,,,,
1#AC1_2A_3_5,882,8,7,1,3052,7598,7652,7652,7598,4693,49514,33031,,-54,,,,
1#AC1_2A_3_6,881,8,7,1,3052,7765,7819,7819,7765,4693,49514,33031,,-54,,,,
1#AC1_2A_3_7,880,8,7,1,3052,7929,7983,7983,7929,4693,49514,33031,,-54,,,,
1#AC1_2A_3_8,879,8,7,1,3052,8096,8150,8150,8096,4693,49514,33031,,-54,,,,
1#AC1_2A_3_9,878,8,7,1,3052,8257,8311,8311,8257,4693,49514,33031,,-54,,,,
1#AC1_2A_3_10,877,8,7,1,3052,8420,8474,8474,8420,4693,49514,33031,,-54,,,,
1#AC1_2A_3_11,876,8,7,1,3050,8587,8641,8641,8587,4693,49514,33031,,-54,,,,
1#AC1_2A_3_12,875,8,7,1,3050,8755,8809,8809,8755,4693,49514,33031,,-54,,,,
1#AC1_2A_3_13,874,8,7,1,3050,8918,8972,8972,8918,4693,49514,33031,,-54,,,,
1#AC1_2A_3_14,873,8,7,1,3050,9079,9133,9133,9079,4693,49514,33031,,-54,,,,
1#AC1_2A_3_15,872,8,7,1,3050,9246,9300,9300,9246,4693,49514,33031,,-54,,,,
1#AC1_2A_3_16,871,8,7,1,3050,9406,9460,9460,9406,4693,49514,33031,,-54,,,,
1#AC1_2A_3_17,870,8,7,1,3050,9574,9628,9628,9574,4693,49514,33031,,-54,,,,
1#AC1_2A_3_18,869,8,7,1,3050,9740,9794,9794,9740,4693,49514,33031,,-54,,,,
1#AC1_2A_3_19,868,8,7,1,3050,9908,9962,9962,9908,4693,49514,33031,,-54,,,,
1#AC1_2A_3_20,867,8,7,1,3050,10071,10125,10125,10071,4693,49514,33031,,-54,,,,
1#AC1_2A_3_21,866,8,7,1,3050,10239,10293,10293,10239,4693,49514,33031,,-54,,,,
1#AC1_2B_1_1,865,8,7,1,3507,27,85,85,27,4693,49514,33031,,-53,10,,,
1#AC1_2B_1_2,864,8,7,1,3507,191,249,249,191,4693,49514,33031,,-53,,,,
1#AC1_2B_1_3,863,8,7,1,3507,355,413,413,355,4693,49514,33031,,-53,,,,
1#AC1_2B_1_4,862,8,7,1,3507,518,576,576,518,4693,49514,33031,,-53,,,,
1#AC1_2B_1_5,861,8,7,1,3507,682,740,740,682,4693,49514,33031,,-53,,,,
1#AC1_2B_1_6,860,8,7,1,3507,843,901,901,843,4693,49514,33031,,-53,,,,
1#AC1_2B_1_7,859,8,7,1,3507,1006,1064,1064,1006,4693,49514,33031,,-53,,,,
1#AC1_2B_1_8,858,8,7,1,3507,1177,1235,1235,1177,4693,49514,33031,,-53,,,,
1#AC1_2B_1_9,857,8,7,1,3507,1344,1402,1402,1344,4693,49514,33031,,-53,,,,
1#AC1_2B_1_10,856,8,7,1,3507,1508,1566,1566,1508,4693,49514,33031,,-53,,,,
1#AC1_2B_1_11,855,8,7,1,3507,1675,1733,1733,1675,4693,49514,33031,,-53,,,,
1#AC1_2B_1_12,854,8,7,1,3507,1839,1897,1897,1839,4693,49514,33031,,-53,,,,
1#AC1_2B_1_13,853,8,7,1,3507,1999,2057,2057,1999,4693,49514,33031,,-53,,,,
1#AC1_2B_1_14,852,8,7,1,3507,2163,2221,2221,2163,4693,49514,33031,,-53,,,,
1#AC1_2B_1_15,851,8,7,1,3507,2333,2391,2391,2333,4693,49514,33031,,-53,,,,
1#AC1_2B_1_16,850,8,7,1,3507,2497,2555,2555,2497,4693,49514,33031,,-53,,,,
1#AC1_2B_1_17,849,8,7,1,3507,2664,2722,2722,2664,4693,49514,33031,,-53,,,,
1#AC1_2B_1_18,848,8,7,1,3507,2831,2889,2889,2831,4693,49514,33031,,-53,,,,
1#AC1_2B_1_19,847,8,7,1,3507,2992,3050,3050,2992,4693,49514,33031,,-53,,,,
1#AC1_2B_1_20,846,8,7,1,3507,3155,3213,3213,3155,4693,49514,33031,,-53,,,,
1#AC1_2B_1_21,845,8,7,1,3507,3326,3384,3384,3326,4693,49514,33031,,-53,,,,
1#AC1_2B_2_1,844,8,7,1,3505,3471,3536,3536,3471,4693,49514,33031,,-65,,,,
1#AC1_2B_2_2,843,8,7,1,3505,3635,3700,3700,3635,4693,49514,33031,,-65,,,,
1#AC1_2B_2_3,842,8,7,1,3505,3802,3867,3867,3802,4693,49514,33031,,-65,,,,
1#AC1_2B_2_4,841,8,7,1,3505,3969,4034,4034,3969,4693,49514,33031,,-65,,,,
1#AC1_2B_2_5,840,8,7,1,3505,4126,4191,4191,4126,4693,49514,33031,,-65,,,,
1#AC1_2B_2_6,839,8,7,1,3505,4293,4358,4358,4293,4693,49514,33031,,-65,,,,
1#AC1_2B_2_7,838,8,7,1,3505,4464,4529,4529,4464,4693,49514,33031,,-65,,,,
1#AC1_2B_2_8,837,8,7,1,3505,4628,4693,4693,4628,4693,49514,33031,,-65,,,,
1#AC1_2B_2_9,836,8,7,1,3505,4794,4859,4859,4794,4693,49514,33031,,-65,,,,
1#AC1_2B_2_10,835,8,7,1,3505,4958,5023,5023,4958,4693,49514,33031,,-65,,,,
1#AC1_2B_2_11,834,8,7,1,3505,5122,5187,5187,5122,4693,49514,33031,,-65,,,,
1#AC1_2B_2_12,833,8,7,1,3505,5286,5351,5351,5286,4693,49514,33031,,-65,,,,
1#AC1_2B_2_13,832,8,7,1,3505,5450,5515,5515,5450,4693,49514,33031,,-65,,,,
1#AC1_2B_2_14,831,8,7,1,3505,5617,5682,5682,5617,4693,49514,33031,,-65,,,,
1#AC1_2B_2_15,830,8,7,1,3505,5780,5845,5845,5780,4693,49514,33031,,-65,,,,
1#AC1_2B_2_16,829,8,7,1,3505,5944,6009,6009,5944,4693,49514,33031,,-65,,,,
1#AC1_2B_2_17,828,8,7,1,3505,6114,6179,6179,6114,4693,49514,33031,,-65,,,,
1#AC1_2B_2_18,827,8,7,1,3505,6275,6340,6340,6275,4693,49514,33031,,-65,,,,
1#AC1_2B_2_19,826,8,7,1,3505,6439,6504,6504,6439,4693,49514,33031,,-65,,,,
1#AC1_2B_2_20,825,8,7,1,3505,6603,6668,6668,6603,4693,49514,33031,,-65,,,,
1#AC1_2B_2_21,824,8,7,1,3505,6767,6832,6832,6767,4693,49514,33031,,-65,,,,
1#AC1_2B_3_1,823,8,7,1,3505,6936,6990,6990,6936,4693,49514,33031,,-54,,,,
1#AC1_2B_3_2,822,8,7,1,3505,7100,7154,7154,7100,4693,49514,33031,,-54,,,,
1#AC1_2B_3_3,821,8,7,1,3505,7264,7318,7318,7264,4693,49514,33031,,-54,,,,
1#AC1_2B_3_4,820,8,7,1,3505,7431,7485,7485,7431,4693,49514,33031,,-54,,,,
1#AC1_2B_3_5,819,8,7,1,3505,7598,7652,7652,7598,4693,49514,33031,,-54,,,,
1#AC1_2B_3_6,818,8,7,1,3505,7765,7819,7819,7765,4693,49514,33031,,-54,,,,
1#AC1_2B_3_7,817,8,7,1,3505,7929,7983,7983,7929,4693,49514,33031,,-54,,,,
1#AC1_2B_3_8,816,8,7,1,3505,8096,8150,8150,8096,4693,49514,33031,,-54,,,,
1#AC1_2B_3_9,815,8,7,1,3505,8257,8311,8311,8257,4693,49514,33031,,-54,,,,
1#AC1_2B_3_10,814,8,7,1,3505,8420,8474,8474,8420,4693,49514,33031,,-54,,,,
1#AC1_2B_3_11,813,8,7,1,3505,8587,8641,8641,8587,4693,49514,33031,,-54,,,,
1#AC1_2B_3_12,812,8,7,1,3505,8755,8809,8809,8755,4693,49514,33031,,-54,,,,
1#AC1_2B_3_13,811,8,7,1,3505,8918,8972,8972,8918,4693,49514,33031,,-54,,,,
1#AC1_2B_3_14,810,8,7,1,3505,9079,9133,9133,9079,4693,49514,33031,,-54,,,,
1#AC1_2B_3_15,809,8,7,1,3505,9246,9300,9300,9246,4693,49514,33031,,-54,,,,
1#AC1_2B_3_16,808,8,7,1,3505,9406,9460,9460,9406,4693,49514,33031,,-54,,,,
1#AC1_2B_3_17,807,8,7,1,3505,9574,9628,9628,9574,4693,49514,33031,,-54,,,,
1#AC1_2B_3_18,806,8,7,1,3505,9740,9794,9794,9740,4693,49514,33031,,-54,,,,
1#AC1_2B_3_19,805,8,7,1,3505,9908,9962,9962,9908,4693,49514,33031,,-54,,,,
1#AC1_2B_3_20,804,8,7,1,3505,10071,10125,10125,10071,4693,49514,33031,,-54,,,,
1#AC1_2B_3_21,803,8,7,1,3505,10239,10293,10293,10239,4693,49514,33031,,-54,,,,
1#AC1_3A_1_1,802,8,7,1,4045,12,70,70,12,4693,49514,33031,,-58,,,,
1#AC1_3A_1_2,801,8,7,1,4045,176,234,234,176,4693,49514,33031,,-58,,,,
1#AC1_3A_1_3,800,8,7,1,4045,340,398,398,340,4693,49514,33031,,-58,,,,
1#AC1_3A_1_4,799,8,7,1,4045,504,562,562,504,4693,49514,33031,,-58,,,,
1#AC1_3A_1_5,798,8,7,1,4045,664,722,722,664,4693,49514,33031,,-58,,,,
1#AC1_3A_1_6,797,8,7,1,4045,838,896,896,838,4693,49514,33031,,-58,,,,
1#AC1_3A_1_7,796,8,7,1,4045,998,1056,1056,998,4693,49514,33031,,-58,,,,
1#AC1_3A_1_8,795,8,7,1,4045,1165,1223,1223,1165,4693,49514,33031,,-58,,,,
1#AC1_3A_1_9,794,8,7,1,4045,1332,1390,1390,1332,4693,49514,33031,,-58,,,,
1#AC1_3A_1_10,793,8,7,1,4045,1499,1557,1557,1499,4693,49514,33031,,-58,,,,
1#AC1_3A_1_11,792,8,7,1,4045,1663,1721,1721,1663,4693,49514,33031,,-58,,,,
1#AC1_3A_1_12,791,8,7,1,4045,1827,1885,1885,1827,4693,49514,33031,,-58,,,,
1#AC1_3A_1_13,790,8,7,1,4045,1991,2049,2049,1991,4693,49514,33031,,-58,,,,
1#AC1_3A_1_14,789,8,7,1,4045,2151,2209,2209,2151,4693,49514,33031,,-58,,,,
1#AC1_3A_1_15,788,8,7,1,4045,2319,2377,2377,2319,4693,49514,33031,,-58,,,,
1#AC1_3A_1_16,787,8,7,1,4045,2485,2543,2543,2485,4693,49514,33031,,-58,,,,
1#AC1_3A_1_17,786,8,7,1,4045,2649,2707,2707,2649,4693,49514,33031,,-58,,,,
1#AC1_3A_1_18,785,8,7,1,4045,2813,2871,2871,2813,4693,49514,33031,,-58,,,,
1#AC1_3A_1_19,784,8,7,1,4045,2980,3038,3038,2980,4693,49514,33031,,-58,,,,
1#AC1_3A_1_20,783,8,7,1,4045,3144,3202,3202,3144,4693,49514,33031,,-58,,,,
1#AC1_3A_1_21,782,8,7,1,4045,3314,3372,3372,3314,4693,49514,33031,,-58,,,,
1#AC1_3A_2_1,781,8,7,1,4045,3470,3533,3533,3470,4693,49514,33031,,-63,,,,
1#AC1_3A_2_2,780,8,7,1,4045,3634,3697,3697,3634,4693,49514,33031,,-63,,,,
1#AC1_3A_2_3,779,8,7,1,4045,3798,3861,3861,3798,4693,49514,33031,,-63,,,,
1#AC1_3A_2_4,778,8,7,1,4045,3965,4028,4028,3965,4693,49514,33031,,-63,,,,
1#AC1_3A_2_5,777,8,7,1,4045,4129,4192,4192,4129,4693,49514,33031,,-63,,,,
1#AC1_3A_2_6,776,8,7,1,4045,4286,4349,4349,4286,4693,49514,33031,,-63,,,,
1#AC1_3A_2_7,775,8,7,1,4045,4453,4516,4516,4453,4693,49514,33031,,-63,,,,
1#AC1_3A_2_8,774,8,7,1,4045,4620,4683,4683,4620,4693,49514,33031,,-63,,,,
1#AC1_3A_2_9,773,8,7,1,4045,4787,4850,4850,4787,4693,49514,33031,,-63,,,,
1#AC1_3A_2_10,772,8,7,1,4045,4951,5014,5014,4951,4693,49514,33031,,-63,,,,
1#AC1_3A_2_11,771,8,7,1,4045,5121,5184,5184,5121,4693,49514,33031,,-63,,,,
1#AC1_3A_2_12,770,8,7,1,4045,5282,5345,5345,5282,4693,49514,33031,,-63,,,,
1#AC1_3A_2_13,769,8,7,1,4045,5442,5505,5505,5442,4693,49514,33031,,-63,,,,
1#AC1_3A_2_14,768,8,7,1,4045,5613,5676,5676,5613,4693,49514,33031,,-63,,,,
1#AC1_3A_2_15,767,8,7,1,4045,5776,5839,5839,5776,4693,49514,33031,,-63,,,,
1#AC1_3A_2_16,766,8,7,1,4045,5940,6003,6003,5940,4693,49514,33031,,-63,,,,
1#AC1_3A_2_17,765,8,7,1,4045,6114,6177,6177,6114,4693,49514,33031,,-63,,,,
1#AC1_3A_2_18,764,8,7,1,4045,6268,6331,6331,6268,4693,49514,33031,,-63,,,,
1#AC1_3A_2_19,763,8,7,1,4045,6428,6491,6491,6428,4693,49514,33031,,-63,,,,
1#AC1_3A_2_20,762,8,7,1,4045,6599,6662,6662,6599,4693,49514,33031,,-63,,,,
1#AC1_3A_2_21,761,8,7,1,4045,6766,6829,6829,6766,4693,49514,33031,,-63,,,,
1#AC1_3A_3_1,760,8,7,1,4041,6932,6985,6985,6932,4693,49514,33031,,-53,,,,
1#AC1_3A_3_2,759,8,7,1,4041,7096,7149,7149,7096,4693,49514,33031,,-53,,,,
1#AC1_3A_3_3,758,8,7,1,4041,7263,7316,7316,7263,4693,49514,33031,,-53,,,,
1#AC1_3A_3_4,757,8,7,1,4041,7430,7483,7483,7430,4693,49514,33031,,-53,,,,
1#AC1_3A_3_5,756,8,7,1,4041,7591,7644,7644,7591,4693,49514,33031,,-53,,,,
1#AC1_3A_3_6,755,8,7,1,4041,7758,7811,7811,7758,4693,49514,33031,,-53,,,,
1#AC1_3A_3_7,754,8,7,1,4041,7922,7975,7975,7922,4693,49514,33031,,-53,,,,
1#AC1_3A_3_8,753,8,7,1,4041,8089,8142,8142,8089,4693,49514,33031,,-53,,,,
1#AC1_3A_3_9,752,8,7,1,4041,8252,8305,8305,8252,4693,49514,33031,,-53,,,,
1#AC1_3A_3_10,751,8,7,1,4041,8410,8463,8463,8410,4693,49514,33031,,-53,,,,
1#AC1_3A_3_11,750,8,7,1,4041,8580,8633,8633,8580,4693,49514,33031,,-53,,,,
1#AC1_3A_3_12,749,8,7,1,4041,8744,8797,8797,8744,4693,49514,33031,,-53,,,,
1#AC1_3A_3_13,748,8,7,1,4041,8907,8960,8960,8907,4693,49514,33031,,-53,,,,
1#AC1_3A_3_14,747,8,7,1,4041,9075,9128,9128,9075,4693,49514,33031,,-53,,,,
1#AC1_3A_3_15,746,8,7,1,4041,9242,9295,9295,9242,4693,49514,33031,,-53,,,,
1#AC1_3A_3_16,745,8,7,1,4041,9405,9458,9458,9405,4693,49514,33031,,-53,,,,
1#AC1_3A_3_17,744,8,7,1,4041,9563,9616,9616,9563,4693,49514,33031,,-53,,,,
1#AC1_3A_3_18,743,8,7,1,4041,9733,9786,9786,9733,4693,49514,33031,,-53,,,,
1#AC1_3A_3_19,742,8,7,1,4041,9900,9953,9953,9900,4693,49514,33031,,-53,,,,
1#AC1_3A_3_20,741,8,7,1,4041,10064,10117,10117,10064,4693,49514,33031,,-53,,,,
1#AC1_3A_3_21,740,8,7,1,4041,10224,10277,10277,10224,4693,49514,33031,,-53,,,,
1#AC1_3B_1_1,739,8,7,1,4500,12,70,70,12,4693,49514,33031,,-58,,,,
1#AC1_3B_1_2,738,8,7,1,4500,176,234,234,176,4693,49514,33031,,-58,,,,
1#AC1_3B_1_3,737,8,7,1,4500,340,398,398,340,4693,49514,33031,,-58,,,,
1#AC1_3B_1_4,736,8,7,1,4500,504,562,562,504,4693,49514,33031,,-58,,9,,
1#AC1_3B_1_5,735,8,7,1,4500,664,722,722,664,4693,49514,33031,,-58,,,,
1#AC1_3B_1_6,734,8,7,1,4500,838,896,896,838,4693,49514,33031,,-58,,,,
1#AC1_3B_1_7,733,8,7,1,4500,998,1056,1056,998,4693,49514,33031,,-58,,,,
1#AC1_3B_1_8,732,8,7,1,4500,1165,1223,1223,1165,4693,49514,33031,,-58,,,,
1#AC1_3B_1_9,731,8,7,1,4500,1332,1390,1390,1332,4693,49514,33031,,-58,,,,
1#AC1_3B_1_10,730,8,7,1,4500,1499,1557,1557,1499,4693,49514,33031,,-58,,,,
1#AC1_3B_1_11,729,8,7,1,4500,1663,1721,1721,1663,4693,49514,33031,,-58,,,,
1#AC1_3B_1_12,728,8,7,1,4500,1827,1885,1885,1827,4693,49514,33031,,-58,,,,
1#AC1_3B_1_13,727,8,7,1,4500,1991,2049,2049,1991,4693,49514,33031,,-58,,,,
1#AC1_3B_1_14,726,8,7,1,4500,2151,2209,2209,2151,4693,49514,33031,,-58,,,,
1#AC1_3B_1_15,725,8,7,1,4500,2319,2377,2377,2319,4693,49514,33031,,-58,,,,
1#AC1_3B_1_16,724,8,7,1,4500,2485,2543,2543,2485,4693,49514,33031,,-58,,,,
1#AC1_3B_1_17,723,8,7,1,4500,2649,2707,2707,2649,4693,49514,33031,,-58,,,,
1#AC1_3B_1_18,722,8,7,1,4500,2813,2871,2871,2813,4693,49514,33031,,-58,,,,
1#AC1_3B_1_19,721,8,7,1,4500,2980,3038,3038,2980,4693,49514,33031,,-58,,,,
1#AC1_3B_1_20,720,8,7,1,4500,3144,3202,3202,3144,4693,49514,33031,,-58,,,,
1#AC1_3B_1_21,719,8,7,1,4500,3314,3372,3372,3314,4693,49514,33031,,-58,,,,
1#AC1_3B_2_1,718,8,7,1,4500,3470,3533,3533,3470,4693,49514,33031,,-63,,,,
1#AC1_3B_2_2,717,8,7,1,4500,3634,3697,3697,3634,4693,49514,33031,,-63,,,,
1#AC1_3B_2_3,716,8,7,1,4500,3798,3861,3861,3798,4693,49514,33031,,-63,,,,
1#AC1_3B_2_4,715,8,7,1,4500,3965,4028,4028,3965,4693,49514,33031,,-63,,,,
1#AC1_3B_2_5,714,8,7,1,4500,4129,4192,4192,4129,4693,49514,33031,,-63,,,,
1#AC1_3B_2_6,713,8,7,1,4500,4286,4349,4349,4286,4693,49514,33031,,-63,,,,
1#AC1_3B_2_7,712,8,7,1,4500,4453,4516,4516,4453,4693,49514,33031,,-63,,,,
1#AC1_3B_2_8,711,8,7,1,4500,4620,4683,4683,4620,4693,49514,33031,,-63,,,,
1#AC1_3B_2_9,710,8,7,1,4500,4787,4850,4850,4787,4693,49514,33031,,-63,,,,
1#AC1_3B_2_10,709,8,7,1,4500,4951,5014,5014,4951,4693,49514,33031,,-63,,,,
1#AC1_3B_2_11,708,8,7,1,4500,5121,5184,5184,5121,4693,49514,33031,,-63,,,,
1#AC1_3B_2_12,707,8,7,1,4500,5282,5345,5345,5282,4693,49514,33031,,-63,,,,
1#AC1_3B_2_13,706,8,7,1,4500,5442,5505,5505,5442,4693,49514,33031,,-63,,,,
1#AC1_3B_2_14,705,8,7,1,4500,5613,5676,5676,5613,4693,49514,33031,,-63,,,,
1#AC1_3B_2_15,704,8,7,1,4500,5776,5839,5839,5776,4693,49514,33031,,-63,,,,
1#AC1_3B_2_16,703,8,7,1,4500,5940,6003,6003,5940,4693,49514,33031,,-63,,,,
1#AC1_3B_2_17,702,8,7,1,4500,6114,6177,6177,6114,4693,49514,33031,,-63,,,,
1#AC1_3B_2_18,701,8,7,1,4500,6268,6331,6331,6268,4693,49514,33031,,-63,,,,
1#AC1_3B_2_19,700,8,7,1,4500,6428,6491,6491,6428,4693,49514,33031,,-63,,,,
1#AC1_3B_2_20,699,8,7,1,4500,6599,6662,6662,6599,4693,49514,33031,,-63,,,,
1#AC1_3B_2_21,698,8,7,1,4500,6766,6829,6829,6766,4693,49514,33031,,-63,,,,
1#AC1_3B_3_1,697,8,7,1,4500,6932,6985,6985,6932,4693,49514,33031,,-53,,,,
1#AC1_3B_3_2,696,8,7,1,4500,7096,7149,7149,7096,4693,49514,33031,,-53,,,,
1#AC1_3B_3_3,695,8,7,1,4500,7263,7316,7316,7263,4693,49514,33031,,-53,,,,
1#AC1_3B_3_4,694,8,7,1,4500,7430,7483,7483,7430,4693,49514,33031,,-53,,,,
1#AC1_3B_3_5,693,8,7,1,4500,7591,7644,7644,7591,4693,49514,33031,,-53,,,,
1#AC1_3B_3_6,692,8,7,1,4500,7758,7811,7811,7758,4693,49514,33031,,-53,,,,
1#AC1_3B_3_7,691,8,7,1,4500,7922,7975,7975,7922,4693,49514,33031,,-53,,,,
1#AC1_3B_3_8,690,8,7,1,4500,8089,8142,8142,8089,4693,49514,33031,,-53,,,,
1#AC1_3B_3_9,689,8,7,1,4500,8252,8305,8305,8252,4693,49514,33031,,-53,,,,
1#AC1_3B_3_10,688,8,7,1,4500,8410,8463,8463,8410,4693,49514,33031,,-53,,,,
1#AC1_3B_3_11,687,8,7,1,4500,8580,8633,8633,8580,4693,49514,33031,,-53,,,,
1#AC1_3B_3_12,686,8,7,1,4500,8744,8797,8797,8744,4693,49514,33031,,-53,,,,
1#AC1_3B_3_13,685,8,7,1,4500,8907,8960,8960,8907,4693,49514,33031,,-53,,,,
1#AC1_3B_3_14,684,8,7,1,4500,9075,9128,9128,9075,4693,49514,33031,,-53,,,,
1#AC1_3B_3_15,683,8,7,1,4500,9242,9295,9295,9242,4693,49514,33031,,-53,,,,
1#AC1_3B_3_16,682,8,7,1,4500,9405,9458,9458,9405,4693,49514,33031,,-53,,,,
1#AC1_3B_3_17,681,8,7,1,4500,9563,9616,9616,9563,4693,49514,33031,,-53,,,,
1#AC1_3B_3_18,680,8,7,1,4500,9733,9786,9786,9733,4693,49514,33031,,-53,,,,
1#AC1_3B_3_19,679,8,7,1,4500,9900,9953,9953,9900,4693,49514,33031,,-53,,,,
1#AC1_3B_3_20,678,8,7,1,4500,10064,10117,10117,10064,4693,49514,33031,,-53,,,,
1#AC1_3B_3_21,677,8,7,1,4500,10224,10277,10277,10224,4693,49514,33031,,-53,,,,
1#AC1_4A_1_1,676,8,7,1,5040,-4,65,65,-4,4693,49514,33031,,-69,,,,
1#AC1_4A_1_2,675,8,7,1,5040,161,230,230,161,4693,49514,33031,,-69,,,,
1#AC1_4A_1_3,674,8,7,1,5040,324,393,393,324,4693,49514,33031,,-69,,6,,
1#AC1_4A_1_4,673,8,7,1,5040,488,557,557,488,4693,49514,33031,,-69,,,,
1#AC1_4A_1_5,672,8,7,1,5040,646,715,715,646,4693,49514,33031,,-69,,,,
1#AC1_4A_1_6,671,8,7,1,5040,813,882,882,813,4693,49514,33031,,-69,,,,
1#AC1_4A_1_7,670,8,7,1,5040,980,1049,1049,980,4693,49514,33031,,-69,,,,
1#AC1_4A_1_8,669,8,7,1,5040,1143,1212,1212,1143,4693,49514,33031,,-69,,,,
1#AC1_4A_1_9,668,8,7,1,5040,1314,1383,1383,1314,4693,49514,33031,,-69,,,,
1#AC1_4A_1_10,667,8,7,1,5040,1481,1550,1550,1481,4693,49514,33031,,-69,,,,
1#AC1_4A_1_11,666,8,7,1,5040,1645,1714,1714,1645,4693,49514,33031,,-69,,,,
1#AC1_4A_1_12,665,8,7,1,5040,1808,1877,1877,1808,4693,49514,33031,,-69,,,,
1#AC1_4A_1_13,664,8,7,1,5040,1979,2048,2048,1979,4693,49514,33031,,-69,,,,
1#AC1_4A_1_14,663,8,7,1,5040,2136,2205,2205,2136,4693,49514,33031,,-69,,,,
1#AC1_4A_1_15,662,8,7,1,5040,2300,2369,2369,2300,4693,49514,33031,,-69,,,,
1#AC1_4A_1_16,661,8,7,1,5040,2470,2539,2539,2470,4693,49514,33031,,-69,,,,
1#AC1_4A_1_17,660,8,7,1,5040,2634,2703,2703,2634,4693,49514,33031,,-69,,,,
1#AC1_4A_1_18,659,8,7,1,5040,2798,2867,2867,2798,4693,49514,33031,,-69,,,,
1#AC1_4A_1_19,658,8,7,1,5040,2961,3030,3030,2961,4693,49514,33031,,-69,,,,
1#AC1_4A_1_20,657,8,7,1,5040,3125,3194,3194,3125,4693,49514,33031,,-69,,,,
1#AC1_4A_1_21,656,8,7,1,5040,3292,3361,3361,3292,4693,49514,33031,,-69,,,,
1#AC1_4A_2_1,655,8,7,1,5040,3454,3523,3523,3454,4693,49514,33031,,-69,,,,
1#AC1_4A_2_2,654,8,7,1,5040,3618,3687,3687,3618,4693,49514,33031,,-69,,,,
1#AC1_4A_2_3,653,8,7,1,5040,3785,3854,3854,3785,4693,49514,33031,,-69,,,,
1#AC1_4A_2_4,652,8,7,1,5040,3949,4018,4018,3949,4693,49514,33031,,-69,,,,
1#AC1_4A_2_5,651,8,7,1,5040,4106,4175,4175,4106,4693,49514,33031,,-69,,,,
1#AC1_4A_2_6,650,8,7,1,5040,4270,4339,4339,4270,4693,49514,33031,,-69,,,,
1#AC1_4A_2_7,649,8,7,1,5040,4440,4509,4509,4440,4693,49514,33031,,-69,,,,
1#AC1_4A_2_8,648,8,7,1,5040,4607,4676,4676,4607,4693,49514,33031,,-69,,,,
1#AC1_4A_2_9,647,8,7,1,5040,4771,4840,4840,4771,4693,49514,33031,,-69,,,,
1#AC1_4A_2_10,646,8,7,1,5040,4935,5004,5004,4935,4693,49514,33031,,-69,,,,
1#AC1_4A_2_11,645,8,7,1,5040,5102,5171,5171,5102,4693,49514,33031,,-69,,,,
1#AC1_4A_2_12,644,8,7,1,5040,5269,5338,5338,5269,4693,49514,33031,,-69,,,,
1#AC1_4A_2_13,643,8,7,1,5040,5436,5505,5505,5436,4693,49514,33031,,-69,,,,
1#AC1_4A_2_14,642,8,7,1,5040,5597,5666,5666,5597,4693,49514,33031,,-69,,,,
1#AC1_4A_2_15,641,8,7,1,5040,5760,5829,5829,5760,4693,49514,33031,,-69,,,,
1#AC1_4A_2_16,640,8,7,1,5040,5924,5993,5993,5924,4693,49514,33031,,-69,,,,
1#AC1_4A_2_17,639,8,7,1,5040,6088,6157,6157,6088,4693,49514,33031,,-69,,,,
1#AC1_4A_2_18,638,8,7,1,5040,6258,6327,6327,6258,4693,49514,33031,,-69,,,,
1#AC1_4A_2_19,637,8,7,1,5040,6425,6494,6494,6425,4693,49514,33031,,-69,,,,
1#AC1_4A_2_20,636,8,7,1,5040,6583,6652,6652,6583,4693,49514,33031,,-69,,,,
1#AC1_4A_2_21,635,8,7,1,5040,6753,6822,6822,6753,4693,49514,33031,,-69,,,,
1#AC1_4A_3_1,634,8,7,1,5037,6910,6987,6987,6910,4693,49514,33031,,-77,,,,
1#AC1_4A_3_2,633,8,7,1,5037,7060,7137,7137,7060,4693,49514,33031,,-77,,,,
1#AC1_4A_3_3,632,8,7,1,5037,7237,7314,7314,7237,4693,49514,33031,,-77,,,,
1#AC1_4A_3_4,631,8,7,1,5037,7408,7485,7485,7408,4693,49514,33031,,-77,,,,
1#AC1_4A_3_5,630,8,7,1,5037,7568,7645,7645,7568,4693,49514,33031,,-77,,,,
1#AC1_4A_3_6,629,8,7,1,5037,7732,7809,7809,7732,4693,49514,33031,,-77,,,,
1#AC1_4A_3_7,628,8,7,1,5037,7895,7972,7972,7895,4693,49514,33031,,-77,,,,
1#AC1_4A_3_8,627,8,7,1,5037,8059,8136,8136,8059,4693,49514,33031,,-77,,,,
1#AC1_4A_3_9,626,8,7,1,5037,8226,8303,8303,8226,4693,49514,33031,,-77,,,,
1#AC1_4A_3_10,625,8,7,1,5037,8390,8467,8467,8390,4693,49514,33031,,-77,,,,
1#AC1_4A_3_11,624,8,7,1,5037,8557,8634,8634,8557,4693,49514,33031,,-77,,,,
1#AC1_4A_3_12,623,8,7,1,5037,8721,8798,8798,8721,4693,49514,33031,,-77,,,,
1#AC1_4A_3_13,622,8,7,1,5037,8881,8958,8958,8881,4693,49514,33031,,-77,,,,
1#AC1_4A_3_14,621,8,7,1,5037,9045,9122,9122,9045,4693,49514,33031,,-77,,,,
1#AC1_4A_3_15,620,8,7,1,5037,9216,9293,9293,9216,4693,49514,33031,,-77,,,,
1#AC1_4A_3_16,619,8,7,1,5037,9380,9457,9457,9380,4693,49514,33031,,-77,,,,
1#AC1_4A_3_17,618,8,7,1,5037,9547,9624,9624,9547,4693,49514,33031,,-77,,,,
1#AC1_4A_3_18,617,8,7,1,5037,9714,9791,9791,9714,4693,49514,33031,,-77,,,,
1#AC1_4A_3_19,616,8,7,1,5037,9874,9951,9951,9874,4693,49514,33031,,-77,,,,
1#AC1_4A_3_20,615,8,7,1,5037,10038,10115,10115,10038,4693,49514,33031,,-77,,,,
1#AC1_4A_3_21,614,8,7,1,5037,10202,10279,10279,10202,4693,49514,33031,,-77,,,,
1#AC1_4B_1_1,613,8,7,1,5501,-4,65,65,-4,4693,49514,33031,,-69,,,,
1#AC1_4B_1_2,612,8,7,1,5501,161,230,230,161,4693,49514,33031,,-69,,,,
1#AC1_4B_1_3,611,8,7,1,5501,324,393,393,324,4693,49514,33031,,-69,,,,
1#AC1_4B_1_4,610,8,7,1,5501,488,557,557,488,4693,49514,33031,,-69,,,,
1#AC1_4B_1_5,609,8,7,1,5501,646,715,715,646,4693,49514,33031,,-69,,,,
1#AC1_4B_1_6,608,8,7,1,5501,813,882,882,813,4693,49514,33031,,-69,,,,
1#AC1_4B_1_7,607,8,7,1,5501,980,1049,1049,980,4693,49514,33031,,-69,,,,
1#AC1_4B_1_8,606,8,7,1,5501,1143,1212,1212,1143,4693,49514,33031,,-69,,,,
1#AC1_4B_1_9,605,8,7,1,5501,1314,1383,1383,1314,4693,49514,33031,,-69,,,,
1#AC1_4B_1_10,604,8,7,1,5501,1481,1550,1550,1481,4693,49514,33031,,-69,,,,
1#AC1_4B_1_11,603,8,7,1,5501,1645,1714,1714,1645,4693,49514,33031,,-69,,,,
1#AC1_4B_1_12,602,8,7,1,5501,1808,1877,1877,1808,4693,49514,33031,,-69,,,,
1#AC1_4B_1_13,601,8,7,1,5501,1979,2048,2048,1979,4693,49514,33031,,-69,,,,
1#AC1_4B_1_14,600,8,7,1,5501,2136,2205,2205,2136,4693,49514,33031,,-69,,,,
1#AC1_4B_1_15,599,8,7,1,5501,2300,2369,2369,2300,4693,49514,33031,,-69,,,,
1#AC1_4B_1_16,598,8,7,1,5501,2470,2539,2539,2470,4693,49514,33031,,-69,,,,
1#AC1_4B_1_17,597,8,7,1,5501,2634,2703,2703,2634,4693,49514,33031,,-69,,,,
1#AC1_4B_1_18,596,8,7,1,5501,2798,2867,2867,2798,4693,49514,33031,,-69,,,,
1#AC1_4B_1_19,595,8,7,1,5501,2961,3030,3030,2961,4693,49514,33031,,-69,,,,
1#AC1_4B_1_20,594,8,7,1,5501,3125,3194,3194,3125,4693,49514,33031,,-69,,,,
1#AC1_4B_1_21,593,8,7,1,5501,3292,3361,3361,3292,4693,49514,33031,,-69,,,,
1#AC1_4B_2_1,592,8,7,1,5498,3454,3523,3523,3454,4693,49514,33031,,-69,,,,
1#AC1_4B_2_2,591,8,7,1,5498,3618,3687,3687,3618,4693,49514,33031,,-69,,,,
1#AC1_4B_2_3,590,8,7,1,5498,3785,3854,3854,3785,4693,49514,33031,,-69,,,,
1#AC1_4B_2_4,589,8,7,1,5498,3949,4018,4018,3949,4693,49514,33031,,-69,,,,
1#AC1_4B_2_5,588,8,7,1,5498,4106,4175,4175,4106,4693,49514,33031,,-69,,,,
1#AC1_4B_2_6,587,8,7,1,5498,4270,4339,4339,4270,4693,49514,33031,,-69,,,,
1#AC1_4B_2_7,586,8,7,1,5498,4440,4509,4509,4440,4693,49514,33031,,-69,,,,
1#AC1_4B_2_8,585,8,7,1,5498,4607,4676,4676,4607,4693,49514,33031,,-69,,,,
1#AC1_4B_2_9,584,8,7,1,5498,4771,4840,4840,4771,4693,49514,33031,,-69,,,,
1#AC1_4B_2_10,583,8,7,1,5498,4935,5004,5004,4935,4693,49514,33031,,-69,,,,
1#AC1_4B_2_11,582,8,7,1,5498,5102,5171,5171,5102,4693,49514,33031,,-69,,,,
1#AC1_4B_2_12,581,8,7,1,5498,5269,5338,5338,5269,4693,49514,33031,,-69,,,,
1#AC1_4B_2_13,580,8,7,1,5498,5436,5505,5505,5436,4693,49514,33031,,-69,,,,
1#AC1_4B_2_14,579,8,7,1,5498,5597,5666,5666,5597,4693,49514,33031,,-69,,,,
1#AC1_4B_2_15,578,8,7,1,5498,5760,5829,5829,5760,4693,49514,33031,,-69,,,,
1#AC1_4B_2_16,577,8,7,1,5498,5924,5993,5993,5924,4693,49514,33031,,-69,,,,
1#AC1_4B_2_17,576,8,7,1,5498,6088,6157,6157,6088,4693,49514,33031,,-69,,,,
1#AC1_4B_2_18,575,8,7,1,5498,6258,6327,6327,6258,4693,49514,33031,,-69,,,,
1#AC1_4B_2_19,574,8,7,1,5498,6425,6494,6494,6425,4693,49514,33031,,-69,,,,
1#AC1_4B_2_20,573,8,7,1,5498,6583,6652,6652,6583,4693,49514,33031,,-69,,,,
1#AC1_4B_2_21,572,8,7,1,5498,6753,6822,6822,6753,4693,49514,33031,,-69,,,,
1#AC1_4B_3_1,571,8,7,1,5496,6910,6987,6987,6910,4693,49514,33031,,-77,,,,
1#AC1_4B_3_2,570,8,7,1,5496,7060,7137,7137,7060,4693,49514,33031,,-77,,,,
1#AC1_4B_3_3,569,8,7,1,5496,7237,7314,7314,7237,4693,49514,33031,,-77,,,,
1#AC1_4B_3_4,568,8,7,1,5496,7408,7485,7485,7408,4693,49514,33031,,-77,,,,
1#AC1_4B_3_5,567,8,7,1,5496,7568,7645,7645,7568,4693,49514,33031,,-77,,,,
1#AC1_4B_3_6,566,8,7,1,5496,7732,7809,7809,7732,4693,49514,33031,,-77,,6,,
1#AC1_4B_3_7,565,8,7,1,5496,7895,7972,7972,7895,4693,49514,33031,,-77,,,,
1#AC1_4B_3_8,564,8,7,1,5496,8059,8136,8136,8059,4693,49514,33031,,-77,,,,
1#AC1_4B_3_9,563,8,7,1,5496,8226,8303,8303,8226,4693,49514,33031,,-77,,,,
1#AC1_4B_3_10,562,8,7,1,5496,8390,8467,8467,8390,4693,49514,33031,,-77,,,,
1#AC1_4B_3_11,561,8,7,1,5496,8557,8634,8634,8557,4693,49514,33031,,-77,,,,
1#AC1_4B_3_12,560,8,7,1,5496,8721,8798,8798,8721,4693,49514,33031,,-77,,,,
1#AC1_4B_3_13,559,8,7,1,5496,8881,8958,8958,8881,4693,49514,33031,,-77,,,,
1#AC1_4B_3_14,558,8,7,1,5496,9045,9122,9122,9045,4693,49514,33031,,-77,,,,
1#AC1_4B_3_15,557,8,7,1,5496,9216,9293,9293,9216,4693,49514,33031,,-77,,,,
1#AC1_4B_3_16,556,8,7,1,5496,9380,9457,9457,9380,4693,49514,33031,,-77,,,,
1#AC1_4B_3_17,555,8,7,1,5496,9547,9624,9624,9547,4693,49514,33031,,-77,,,,
1#AC1_4B_3_18,554,8,7,1,5496,9714,9791,9791,9714,4693,49514,33031,,-77,,,,
1#AC1_4B_3_19,553,8,7,1,5496,9874,9951,9951,9874,4693,49514,33031,,-77,,,,
1#AC1_4B_3_20,552,8,7,1,5496,10038,10115,10115,10038,4693,49514,33031,,-77,,,,
1#AC1_4B_3_21,551,8,7,1,5496,10202,10279,10279,10202,4693,49514,33031,,-77,,,,
1#AC1_5A_1_1,550,8,7,1,6036,12,76,76,12,4693,49514,33031,,-64,,,,
1#AC1_5A_1_2,549,8,7,1,6036,176,240,240,176,4693,49514,33031,,-64,,,,
1#AC1_5A_1_3,548,8,7,1,6036,336,400,400,336,4693,49514,33031,,-64,,,,
1#AC1_5A_1_4,547,8,7,1,6036,503,567,567,503,4693,49514,33031,,-64,,,,
1#AC1_5A_1_5,546,8,7,1,6036,664,728,728,664,4693,49514,33031,,-64,,,,
1#AC1_5A_1_6,545,8,7,1,6036,828,892,892,828,4693,49514,33031,,-64,,,,
1#AC1_5A_1_7,544,8,7,1,6036,998,1062,1062,998,4693,49514,33031,,-64,,,,
1#AC1_5A_1_8,543,8,7,1,6036,1162,1226,1226,1162,4693,49514,33031,,-64,,,,
1#AC1_5A_1_9,542,8,7,1,6036,1326,1390,1390,1326,4693,49514,33031,,-64,,,,
1#AC1_5A_1_10,541,8,7,1,6036,1486,1550,1550,1486,4693,49514,33031,,-64,,,,
1#AC1_5A_1_11,540,8,7,1,6036,1657,1721,1721,1657,4693,49514,33031,,-64,,,,
1#AC1_5A_1_12,539,8,7,1,6036,1820,1884,1884,1820,4693,49514,33031,,-64,,,,
1#AC1_5A_1_13,538,8,7,1,6036,1987,2051,2051,1987,4693,49514,33031,,-64,,,,
1#AC1_5A_1_14,537,8,7,1,6036,2151,2215,2215,2151,4693,49514,33031,,-64,,,,
1#AC1_5A_1_15,536,8,7,1,6036,2315,2379,2379,2315,4693,49514,33031,,-64,,,,
1#AC1_5A_1_16,535,8,7,1,6036,2479,2543,2543,2479,4693,49514,33031,,-64,,,,
1#AC1_5A_1_17,534,8,7,1,6036,2646,2710,2710,2646,4693,49514,33031,,-64,,,,
1#AC1_5A_1_18,533,8,7,1,6036,2806,2870,2870,2806,4693,49514,33031,,-64,,,,
1#AC1_5A_1_19,532,8,7,1,6036,2970,3034,3034,2970,4693,49514,33031,,-64,,,,
1#AC1_5A_1_20,531,8,7,1,6036,3140,3204,3204,3140,4693,49514,33031,,-64,,,,
1#AC1_5A_1_21,530,8,7,1,6036,3307,3371,3371,3307,4693,49514,33031,,-64,,,,
1#AC1_5A_2_1,529,8,7,1,6036,3462,3540,3540,3462,4693,49514,33031,,-78,,,,
1#AC1_5A_2_2,528,8,7,1,6036,3626,3704,3704,3626,4693,49514,33031,,-78,,,,
1#AC1_5A_2_3,527,8,7,1,6036,3793,3871,3871,3793,4693,49514,33031,,-78,,,,
1#AC1_5A_2_4,526,8,7,1,6036,3967,4045,4045,3967,4693,49514,33031,,-78,,,,
1#AC1_5A_2_5,525,8,7,1,6036,4124,4202,4202,4124,4693,49514,33031,,-78,,,,
1#AC1_5A_2_6,524,8,7,1,6036,4291,4369,4369,4291,4693,49514,33031,,-78,,,,
1#AC1_5A_2_7,523,8,7,1,6036,4455,4533,4533,4455,4693,49514,33031,,-78,,,,
1#AC1_5A_2_8,522,8,7,1,6036,4616,4694,4694,4616,4693,49514,33031,,-78,,,,
1#AC1_5A_2_9,521,8,7,1,6036,4782,4860,4860,4782,4693,49514,33031,,-78,,,,
1#AC1_5A_2_10,520,8,7,1,6036,4949,5027,5027,4949,4693,49514,33031,,-78,,,,
1#AC1_5A_2_11,519,8,7,1,6036,5113,5191,5191,5113,4693,49514,33031,,-78,,,,
1#AC1_5A_2_12,518,8,7,1,6036,5274,5352,5352,5274,4693,49514,33031,,-78,,,,
1#AC1_5A_2_13,517,8,7,1,6036,5441,5519,5519,5441,4693,49514,33031,,-78,,,,
1#AC1_5A_2_14,516,8,7,1,6036,5608,5686,5686,5608,4693,49514,33031,,-78,,,,
1#AC1_5A_2_15,515,8,7,1,6036,5775,5853,5853,5775,4693,49514,33031,,-78,,,,
1#AC1_5A_2_16,514,8,7,1,6036,5939,6017,6017,5939,4693,49514,33031,,-78,,,,
1#AC1_5A_2_17,513,8,7,1,6036,6099,6177,6177,6099,4693,49514,33031,,-78,,,,
1#AC1_5A_2_18,512,8,7,1,6036,6260,6338,6338,6260,4693,49514,33031,,-78,,,,
1#AC1_5A_2_19,511,8,7,1,6036,6430,6508,6508,6430,4693,49514,33031,,-78,,,,
1#AC1_5A_2_20,510,8,7,1,6036,6594,6672,6672,6594,4693,49514,33031,,-78,,,,
1#AC1_5A_2_21,509,8,7,1,6036,6764,6842,6842,6764,4693,49514,33031,,-78,,,,
1#AC1_5A_3_1,508,8,7,1,6036,6916,6980,6980,6916,4693,49514,33031,,-64,,,,
1#AC1_5A_3_2,507,8,7,1,6036,7083,7147,7147,7083,4693,49514,33031,,-64,,,,
1#AC1_5A_3_3,506,8,7,1,6036,7246,7310,7310,7246,4693,49514,33031,,-64,,,,
1#AC1_5A_3_4,505,8,7,1,6036,7410,7474,7474,7410,4693,49514,33031,,-64,,,,
1#AC1_5A_3_5,504,8,7,1,6036,7571,7635,7635,7571,4693,49514,33031,,-64,,,,
1#AC1_5A_3_6,503,8,7,1,6036,7735,7799,7799,7735,4693,49514,33031,,-64,,,,
1#AC1_5A_3_7,502,8,7,1,6036,7905,7969,7969,7905,4693,49514,33031,,-64,,,,
1#AC1_5A_3_8,501,8,7,1,6036,8072,8136,8136,8072,4693,49514,33031,,-64,,,,
1#AC1_5A_3_9,500,8,7,1,6036,8239,8303,8303,8239,4693,49514,33031,,-64,,,,
1#AC1_5A_3_10,499,8,7,1,6036,8406,8470,8470,8406,4693,49514,33031,,-64,,,,
1#AC1_5A_3_11,498,8,7,1,6036,8567,8631,8631,8567,4693,49514,33031,,-64,,,,
1#AC1_5A_3_12,497,8,7,1,6036,8731,8795,8795,8731,4693,49514,33031,,-64,,,,
1#AC1_5A_3_13,496,8,7,1,6036,8894,8958,8958,8894,4693,49514,33031,,-64,,,,
1#AC1_5A_3_14,495,8,7,1,6036,9058,9122,9122,9058,4693,49514,33031,,-64,,,,
1#AC1_5A_3_15,494,8,7,1,6036,9219,9283,9283,9219,4693,49514,33031,,-64,,,,
1#AC1_5A_3_16,493,8,7,1,6036,9392,9456,9456,9392,4693,49514,33031,,-64,,,,
1#AC1_5A_3_17,492,8,7,1,6036,9559,9623,9623,9559,4693,49514,33031,,-64,,,,
1#AC1_5A_3_18,491,8,7,1,6036,9723,9787,9787,9723,4693,49514,33031,,-64,,,,
1#AC1_5A_3_19,490,8,7,1,6036,9880,9944,9944,9880,4693,49514,33031,,-64,,,,
1#AC1_5A_3_20,489,8,7,1,6036,10051,10115,10115,10051,4693,49514,33031,,-64,,,,
1#AC1_5A_3_21,488,8,7,1,6036,10218,10282,10282,10218,4693,49514,33031,,-64,,,,
1#AC1_5B_1_1,487,8,7,1,6495,16,81,81,16,4693,49514,33031,,-65,,,,
1#AC1_5B_1_2,486,8,7,1,6495,180,245,245,180,4693,49514,33031,,-65,,,,
1#AC1_5B_1_3,485,8,7,1,6495,340,405,405,340,4693,49514,33031,,-65,,,,
1#AC1_5B_1_4,484,8,7,1,6495,507,572,572,507,4693,49514,33031,,-65,,,,
1#AC1_5B_1_5,483,8,7,1,6495,668,733,733,668,4693,49514,33031,,-65,,,,
1#AC1_5B_1_6,482,8,7,1,6495,832,897,897,832,4693,49514,33031,,-65,,,,
1#AC1_5B_1_7,481,8,7,1,6495,1002,1067,1067,1002,4693,49514,33031,,-65,,,,
1#AC1_5B_1_8,480,8,7,1,6495,1166,1231,1231,1166,4693,49514,33031,,-65,,,,
1#AC1_5B_1_9,479,8,7,1,6495,1330,1395,1395,1330,4693,49514,33031,,-65,,,,
1#AC1_5B_1_10,478,8,7,1,6495,1490,1555,1555,1490,4693,49514,33031,,-65,,,,
1#AC1_5B_1_11,477,8,7,1,6495,1661,1726,1726,1661,4693,49514,33031,,-65,,,,
1#AC1_5B_1_12,476,8,7,1,6495,1824,1889,1889,1824,4693,49514,33031,,-65,,,,
1#AC1_5B_1_13,475,8,7,1,6495,1991,2056,2056,1991,4693,49514,33031,,-65,,,,
1#AC1_5B_1_14,474,8,7,1,6495,2155,2220,2220,2155,4693,49514,33031,,-65,,,,
1#AC1_5B_1_15,473,8,7,1,6495,2319,2384,2384,2319,4693,49514,33031,,-65,,,,
1#AC1_5B_1_16,472,8,7,1,6495,2483,2548,2548,2483,4693,49514,33031,,-65,,,,
1#AC1_5B_1_17,471,8,7,1,6495,2650,2715,2715,2650,4693,49514,33031,,-65,,,,
1#AC1_5B_1_18,470,8,7,1,6495,2810,2875,2875,2810,4693,49514,33031,,-65,,,,
1#AC1_5B_1_19,469,8,7,1,6495,2974,3039,3039,2974,4693,49514,33031,,-65,,,,
1#AC1_5B_1_20,468,8,7,1,6495,3144,3209,3209,3144,4693,49514,33031,,-65,,,,
1#AC1_5B_1_21,467,8,7,1,6495,3311,3376,3376,3311,4693,49514,33031,,-65,,,,
1#AC1_5B_2_1,466,8,7,1,6493,3462,3545,3545,3462,4693,49514,33031,,-83,,,,
1#AC1_5B_2_2,465,8,7,1,6493,3626,3709,3709,3626,4693,49514,33031,,-83,,,,
1#AC1_5B_2_3,464,8,7,1,6490,3793,3876,3876,3793,4693,49514,33031,,-83,,,,
1#AC1_5B_2_4,463,8,7,1,6490,3967,4050,4050,3967,4693,49514,33031,,-83,,,,
1#AC1_5B_2_5,462,8,7,1,6490,4124,4207,4207,4124,4693,49514,33031,,-83,,,,
1#AC1_5B_2_6,461,8,7,1,6490,4291,4374,4374,4291,4693,49514,33031,,-83,,,,
1#AC1_5B_2_7,460,8,7,1,6490,4455,4538,4538,4455,4693,49514,33031,,-83,,,,
1#AC1_5B_2_8,459,8,7,1,6490,4616,4699,4699,4616,4693,49514,33031,,-83,,,,
1#AC1_5B_2_9,458,8,7,1,6490,4782,4865,4865,4782,4693,49514,33031,,-83,,,,
1#AC1_5B_2_10,457,8,7,1,6490,4949,5032,5032,4949,4693,49514,33031,,-83,,,,
1#AC1_5B_2_11,456,8,7,1,6490,5113,5196,5196,5113,4693,49514,33031,,-83,,,,
1#AC1_5B_2_12,455,8,7,1,6490,5274,5357,5357,5274,4693,49514,33031,,-83,,,,
1#AC1_5B_2_13,454,8,7,1,6490,5441,5524,5524,5441,4693,49514,33031,,-83,,,,
1#AC1_5B_2_14,453,8,7,1,6490,5608,5691,5691,5608,4693,49514,33031,,-83,,,,
1#AC1_5B_2_15,452,8,7,1,6490,5775,5858,5858,5775,4693,49514,33031,,-83,,,,
1#AC1_5B_2_16,451,8,7,1,6490,5939,6022,6022,5939,4693,49514,33031,,-83,,,,
1#AC1_5B_2_17,450,8,7,1,6490,6099,6182,6182,6099,4693,49514,33031,,-83,,,,
1#AC1_5B_2_18,449,8,7,1,6490,6260,6343,6343,6260,4693,49514,33031,,-83,,,,
1#AC1_5B_2_19,448,8,7,1,6490,6430,6513,6513,6430,4693,49514,33031,,-83,,,,
1#AC1_5B_2_20,447,8,7,1,6490,6594,6677,6677,6594,4693,49514,33031,,-83,,,,
1#AC1_5B_2_21,446,8,7,1,6490,6764,6847,6847,6764,4693,49514,33031,,-83,,,,
1#AC1_5B_3_1,445,8,7,1,6490,6912,6979,6979,6912,4693,49514,33031,,-67,,,,
1#AC1_5B_3_2,444,8,7,1,6490,7079,7146,7146,7079,4693,49514,33031,,-67,,,,
1#AC1_5B_3_3,443,8,7,1,6490,7242,7309,7309,7242,4693,49514,33031,,-67,,,,
1#AC1_5B_3_4,442,8,7,1,6490,7406,7473,7473,7406,4693,49514,33031,,-67,,,,
1#AC1_5B_3_5,441,8,7,1,6490,7567,7634,7634,7567,4693,49514,33031,,-67,,,,
1#AC1_5B_3_6,440,8,7,1,6490,7731,7798,7798,7731,4693,49514,33031,,-67,,,,
1#AC1_5B_3_7,439,8,7,1,6490,7901,7968,7968,7901,4693,49514,33031,,-67,,,,
1#AC1_5B_3_8,438,8,7,1,6490,8068,8135,8135,8068,4693,49514,33031,,-67,,,,
1#AC1_5B_3_9,437,8,7,1,6490,8235,8302,8302,8235,4693,49514,33031,,-67,,,,
1#AC1_5B_3_10,436,8,7,1,6490,8402,8469,8469,8402,4693,49514,33031,,-67,,,,
1#AC1_5B_3_11,435,8,7,1,6490,8563,8630,8630,8563,4693,49514,33031,,-67,,,,
1#AC1_5B_3_12,434,8,7,1,6490,8727,8794,8794,8727,4693,49514,33031,,-67,,,,
1#AC1_5B_3_13,433,8,7,1,6490,8890,8957,8957,8890,4693,49514,33031,,-67,,,,
1#AC1_5B_3_14,432,8,7,1,6490,9054,9121,9121,9054,4693,49514,33031,,-67,,,,
1#AC1_5B_3_15,431,8,7,1,6490,9215,9282,9282,9215,4693,49514,33031,,-67,,,,
1#AC1_5B_3_16,430,8,7,1,6490,9388,9455,9455,9388,4693,49514,33031,,-67,,,,
1#AC1_5B_3_17,429,8,7,1,6490,9555,9622,9622,9555,4693,49514,33031,,-67,,,,
1#AC1_5B_3_18,428,8,7,1,6490,9719,9786,9786,9719,4693,49514,33031,,-67,,,,
1#AC1_5B_3_19,427,8,7,1,6490,9876,9943,9943,9876,4693,49514,33031,,-67,,,,
1#AC1_5B_3_20,426,8,7,1,6490,10047,10114,10114,10047,4693,49514,33031,,-67,,,,
1#AC1_5B_3_21,425,8,7,1,6490,10214,10281,10281,10214,4693,49514,33031,,-67,,,,
1#AC1_6A_1_1,424,12,7,1,7040,27,97,97,27,4693,44615,31038,,-70,,,,
1#AC1_6A_1_2,423,12,7,1,7040,214,284,284,214,4693,44615,31038,,-70,7,,,
1#AC1_6A_1_3,422,12,7,1,7040,397,467,467,397,4693,44615,31038,,-70,,,,
1#AC1_6A_1_4,421,12,7,1,7040,588,658,658,588,4693,44615,31038,,-70,,,,
1#AC1_6A_1_5,420,12,7,1,7040,774,844,844,774,4693,44615,31038,,-70,,,,
1#AC1_6A_1_6,419,12,7,1,7040,964,1034,1034,964,4693,44615,31038,,-70,,,,
1#AC1_6A_1_7,418,12,7,1,7040,1154,1224,1224,1154,4693,44615,31038,,-70,,,,
1#AC1_6A_1_8,417,12,7,1,7040,1344,1414,1414,1344,4693,44615,31038,,-70,,,,
1#AC1_6A_1_9,416,12,7,1,7040,1524,1594,1594,1524,4693,44615,31038,,-70,,,,
1#AC1_6A_1_10,415,12,7,1,7040,1711,1781,1781,1711,4693,44615,31038,,-70,,,,
1#AC1_6A_1_11,414,12,7,1,7040,1894,1964,1964,1894,4693,44615,31038,,-70,,,,
1#AC1_6A_1_12,413,12,7,1,7040,2084,2154,2154,2084,4693,44615,31038,,-70,,,,
1#AC1_6A_1_13,412,12,7,1,7040,2271,2341,2341,2271,4693,44615,31038,,-70,,,,
1#AC1_6A_1_14,411,12,7,1,7040,2461,2531,2531,2461,4693,44615,31038,,-70,,,,
1#AC1_6A_1_15,410,12,7,1,7040,2651,2721,2721,2651,4693,44615,31038,,-70,,,,
1#AC1_6A_1_16,409,12,7,1,7040,2834,2904,2904,2834,4693,44615,31038,,-70,,,,
1#AC1_6A_1_17,408,12,7,1,7040,3018,3088,3088,3018,4693,44615,31038,,-70,,,,
1#AC1_6A_1_18,407,12,7,1,7040,3211,3281,3281,3211,4693,44615,31038,,-70,,,,
1#AC1_6A_2_1,406,12,7,1,7037,3392,3452,3452,3392,4693,44615,31038,,-60,,,,
1#AC1_6A_2_2,405,12,7,1,7037,3578,3638,3638,3578,4693,44615,31038,,-60,,,,
1#AC1_6A_2_3,404,12,7,1,7037,3762,3822,3822,3762,4693,44615,31038,,-60,,,,
1#AC1_6A_2_4,403,12,7,1,7037,3948,4008,4008,3948,4693,44615,31038,,-60,,,,
1#AC1_6A_2_5,402,12,7,1,7037,4138,4198,4198,4138,4693,44615,31038,,-60,,,,
1#AC1_6A_2_6,401,12,7,1,7037,4331,4391,4391,4331,4693,44615,31038,,-60,,,,
1#AC1_6A_2_7,400,12,7,1,7037,4515,4575,4575,4515,4693,44615,31038,,-60,,,,
1#AC1_6A_2_8,399,12,7,1,7037,4699,4759,4759,4699,4693,44615,31038,,-60,,,,
1#AC1_6A_2_9,398,12,7,1,7037,4892,4952,4952,4892,4693,44615,31038,,-60,,,,
1#AC1_6A_2_10,397,12,7,1,7037,5075,5135,5135,5075,4693,44615,31038,,-60,,,,
1#AC1_6A_2_11,396,12,7,1,7037,5268,5328,5328,5268,4693,44615,31038,,-60,,,,
1#AC1_6A_2_12,395,12,7,1,7037,5455,5515,5515,5455,4693,44615,31038,,-60,,,,
1#AC1_6A_2_13,394,12,7,1,7037,5645,5705,5705,5645,4693,44615,31038,,-60,,,,
1#AC1_6A_2_14,393,12,7,1,7037,5829,5889,5889,5829,4693,44615,31038,,-60,,,,
1#AC1_6A_2_15,392,12,7,1,7037,6012,6072,6072,6012,4693,44615,31038,,-60,,,,
1#AC1_6A_2_16,391,12,7,1,7037,6202,6262,6262,6202,4693,44615,31038,,-60,,,,
1#AC1_6A_2_17,390,12,7,1,7037,6392,6452,6452,6392,4693,44615,31038,,-60,,,,
1#AC1_6A_2_18,389,12,7,1,7037,6579,6639,6639,6579,4693,44615,31038,,-60,,,,
1#AC1_6A_3_1,388,12,7,1,7037,6752,6812,6812,6752,4693,44615,31038,,-60,,,,
1#AC1_6A_3_2,387,12,7,1,7037,6942,7002,7002,6942,4693,44615,31038,,-60,,,,
1#AC1_6A_3_3,386,12,7,1,7037,7136,7196,7196,7136,4693,44615,31038,,-60,,,,
1#AC1_6A_3_4,385,12,7,1,7037,7326,7386,7386,7326,4693,44615,31038,,-60,,,,
1#AC1_6A_3_5,384,12,7,1,7037,7509,7569,7569,7509,4693,44615,31038,,-60,,,,
1#AC1_6A_3_6,383,12,7,1,7037,7696,7756,7756,7696,4693,44615,31038,,-60,,,,
1#AC1_6A_3_7,382,12,7,1,7037,7882,7942,7942,7882,4693,44615,31038,,-60,,,,
1#AC1_6A_3_8,381,12,7,1,7037,8069,8129,8129,8069,4693,44615,31038,,-60,,,,
1#AC1_6A_3_9,380,12,7,1,7037,8259,8319,8319,8259,4693,44615,31038,,-60,,,,
1#AC1_6A_3_10,379,12,7,1,7037,8449,8509,8509,8449,4693,44615,31038,,-60,,,,
1#AC1_6A_3_11,378,12,7,1,7037,8636,8696,8696,8636,4693,44615,31038,,-60,,,,
1#AC1_6A_3_12,377,12,7,1,7037,8826,8886,8886,8826,4693,44615,31038,,-60,,,,
1#AC1_6A_3_13,376,12,7,1,7037,9009,9069,9069,9009,4693,44615,31038,,-60,,,,
1#AC1_6A_3_14,375,12,7,1,7037,9193,9253,9253,9193,4693,44615,31038,,-60,,,,
1#AC1_6A_3_15,374,12,7,1,7037,9383,9443,9443,9383,4693,44615,31038,,-60,,,,
1#AC1_6A_3_16,373,12,7,1,7037,9573,9633,9633,9573,4693,44615,31038,,-60,,,,
1#AC1_6A_3_17,372,12,7,1,7037,9759,9819,9819,9759,4693,44615,31038,,-60,,,,
1#AC1_6A_3_18,371,12,7,1,7037,9950,10010,10010,9950,4693,44615,31038,,-60,,,,
1#AC1_6A_3_19,370,12,7,1,7037,10130,10190,10190,10130,4693,44615,31038,,-60,,,,
1#AC1_6B_1_1,369,12,7,1,7498,27,97,97,27,4693,44615,31038,,-70,8,,,
1#AC1_6B_1_2,368,12,7,1,7498,214,284,284,214,4693,44615,31038,,-70,,,,
1#AC1_6B_1_3,367,12,7,1,7498,397,467,467,397,4693,44615,31038,,-70,,,,
1#AC1_6B_1_4,366,12,7,1,7498,588,658,658,588,4693,44615,31038,,-70,,,,
1#AC1_6B_1_5,365,12,7,1,7498,774,844,844,774,4693,44615,31038,,-70,,,,
1#AC1_6B_1_6,364,12,7,1,7498,964,1034,1034,964,4693,44615,31038,,-70,,,,
1#AC1_6B_1_7,363,12,7,1,7498,1154,1224,1224,1154,4693,44615,31038,,-70,,,,
1#AC1_6B_1_8,362,12,7,1,7498,1344,1414,1414,1344,4693,44615,31038,,-70,,,,
1#AC1_6B_1_9,361,12,7,1,7498,1524,1594,1594,1524,4693,44615,31038,,-70,,,,
1#AC1_6B_1_10,360,12,7,1,7498,1711,1781,1781,1711,4693,44615,31038,,-70,,,,
1#AC1_6B_1_11,359,12,7,1,7498,1894,1964,1964,1894,4693,44615,31038,,-70,,,,
1#AC1_6B_1_12,358,12,7,1,7498,2084,2154,2154,2084,4693,44615,31038,,-70,,,,
1#AC1_6B_1_13,357,12,7,1,7498,2271,2341,2341,2271,4693,44615,31038,,-70,,,,
1#AC1_6B_1_14,356,12,7,1,7498,2461,2531,2531,2461,4693,44615,31038,,-70,,,,
1#AC1_6B_1_15,355,12,7,1,7498,2651,2721,2721,2651,4693,44615,31038,,-70,,,,
1#AC1_6B_1_16,354,12,7,1,7498,2834,2904,2904,2834,4693,44615,31038,,-70,,,,
1#AC1_6B_1_17,353,12,7,1,7498,3018,3088,3088,3018,4693,44615,31038,,-70,,,,
1#AC1_6B_1_18,352,12,7,1,7498,3211,3281,3281,3211,4693,44615,31038,,-70,,,,
1#AC1_6B_2_1,351,12,7,1,7495,3392,3452,3452,3392,4693,44615,31038,,-60,,,,
1#AC1_6B_2_2,350,12,7,1,7495,3578,3638,3638,3578,4693,44615,31038,,-60,,,,
1#AC1_6B_2_3,349,12,7,1,7495,3762,3822,3822,3762,4693,44615,31038,,-60,,,,
1#AC1_6B_2_4,348,12,7,1,7495,3948,4008,4008,3948,4693,44615,31038,,-60,,,,
1#AC1_6B_2_5,347,12,7,1,7495,4138,4198,4198,4138,4693,44615,31038,,-60,,,,
1#AC1_6B_2_6,346,12,7,1,7495,4331,4391,4391,4331,4693,44615,31038,,-60,,,,
1#AC1_6B_2_7,345,12,7,1,7495,4515,4575,4575,4515,4693,44615,31038,,-60,,,,
1#AC1_6B_2_8,344,12,7,1,7495,4699,4759,4759,4699,4693,44615,31038,,-60,,,,
1#AC1_6B_2_9,343,12,7,1,7495,4892,4952,4952,4892,4693,44615,31038,,-60,,,,
1#AC1_6B_2_10,342,12,7,1,7495,5075,5135,5135,5075,4693,44615,31038,,-60,,,,
1#AC1_6B_2_11,341,12,7,1,7495,5268,5328,5328,5268,4693,44615,31038,,-60,,,,
1#AC1_6B_2_12,340,12,7,1,7495,5455,5515,5515,5455,4693,44615,31038,,-60,,,,
1#AC1_6B_2_13,339,12,7,1,7495,5645,5705,5705,5645,4693,44615,31038,,-60,,,,
1#AC1_6B_2_14,338,12,7,1,7495,5829,5889,5889,5829,4693,44615,31038,,-60,,,,
1#AC1_6B_2_15,337,12,7,1,7495,6012,6072,6072,6012,4693,44615,31038,,-60,,,,
1#AC1_6B_2_16,336,12,7,1,7495,6202,6262,6262,6202,4693,44615,31038,,-60,,,,
1#AC1_6B_2_17,335,12,7,1,7495,6392,6452,6452,6392,4693,44615,31038,,-60,,,,
1#AC1_6B_2_18,334,12,7,1,7495,6579,6639,6639,6579,4693,44615,31038,,-60,,,,
1#AC1_6B_3_1,333,12,7,1,7495,6752,6812,6812,6752,4693,44615,31038,,-60,,,,
1#AC1_6B_3_2,332,12,7,1,7495,6942,7002,7002,6942,4693,44615,31038,,-60,,,,
1#AC1_6B_3_3,331,12,7,1,7495,7136,7196,7196,7136,4693,44615,31038,,-60,,,,
1#AC1_6B_3_4,330,12,7,1,7495,7326,7386,7386,7326,4693,44615,31038,,-60,,,,
1#AC1_6B_3_5,329,12,7,1,7495,7509,7569,7569,7509,4693,44615,31038,,-60,,,,
1#AC1_6B_3_6,328,12,7,1,7495,7696,7756,7756,7696,4693,44615,31038,,-60,,,,
1#AC1_6B_3_7,327,12,7,1,7495,7882,7942,7942,7882,4693,44615,31038,,-60,,,,
1#AC1_6B_3_8,326,12,7,1,7495,8069,8129,8129,8069,4693,44615,31038,,-60,,,,
1#AC1_6B_3_9,325,12,7,1,7495,8259,8319,8319,8259,4693,44615,31038,,-60,,,,
1#AC1_6B_3_10,324,12,7,1,7495,8449,8509,8509,8449,4693,44615,31038,,-60,,,,
1#AC1_6B_3_11,323,12,7,1,7495,8636,8696,8696,8636,4693,44615,31038,,-60,,,,
1#AC1_6B_3_12,322,12,7,1,7495,8826,8886,8886,8826,4693,44615,31038,,-60,,,,
1#AC1_6B_3_13,321,12,7,1,7495,9009,9069,9069,9009,4693,44615,31038,,-60,,,,
1#AC1_6B_3_14,320,12,7,1,7495,9193,9253,9253,9193,4693,44615,31038,,-60,,,,
1#AC1_6B_3_15,319,12,7,1,7495,9383,9443,9443,9383,4693,44615,31038,,-60,,,,
1#AC1_6B_3_16,318,12,7,1,7495,9573,9633,9633,9573,4693,44615,31038,,-60,,,,
1#AC1_6B_3_17,317,12,7,1,7495,9759,9819,9819,9759,4693,44615,31038,,-60,,,,
1#AC1_6B_3_18,316,12,7,1,7495,9950,10010,10010,9950,4693,44615,31038,,-60,,,,
1#AC1_6B_3_19,315,12,7,1,7495,10130,10190,10190,10130,4693,44615,31038,,-60,,,,
1#AC1_7A_1_1,314,12,7,1,8041,34,97,97,34,4693,44615,31038,,-63,,,,
1#AC1_7A_1_2,313,12,7,1,8041,214,277,277,214,4693,44615,31038,,-63,,,,
1#AC1_7A_1_3,312,12,7,1,8041,404,467,467,404,4693,44615,31038,,-63,,,,
1#AC1_7A_1_4,311,12,7,1,8041,591,654,654,591,4693,44615,31038,,-63,,,,
1#AC1_7A_1_5,310,12,7,1,8041,778,841,841,778,4693,44615,31038,,-63,,,,
1#AC1_7A_1_6,309,12,7,1,8041,961,1024,1024,961,4693,44615,31038,,-63,,,,
1#AC1_7A_1_7,308,12,7,1,8041,1148,1211,1211,1148,4693,44615,31038,,-63,,,,
1#AC1_7A_1_8,307,12,7,1,8041,1338,1401,1401,1338,4693,44615,31038,,-63,,,,
1#AC1_7A_1_9,306,12,7,1,8041,1525,1588,1588,1525,4693,44615,31038,,-63,,,,
1#AC1_7A_1_10,305,12,7,1,8041,1715,1778,1778,1715,4693,44615,31038,,-63,,,,
1#AC1_7A_1_11,304,12,7,1,8041,1902,1965,1965,1902,4693,44615,31038,,-63,,,,
1#AC1_7A_1_12,303,12,7,1,8041,2091,2154,2154,2091,4693,44615,31038,,-63,,,,
1#AC1_7A_1_13,302,12,7,1,8041,2275,2338,2338,2275,4693,44615,31038,,-63,,,,
1#AC1_7A_1_14,301,12,7,1,8041,2462,2525,2525,2462,4693,44615,31038,,-63,,,,
1#AC1_7A_1_15,300,12,7,1,8041,2648,2711,2711,2648,4693,44615,31038,,-63,,,,
1#AC1_7A_1_16,299,12,7,1,8041,2835,2898,2898,2835,4693,44615,31038,,-63,,,,
1#AC1_7A_1_17,298,12,7,1,8041,3025,3088,3088,3025,4693,44615,31038,,-63,,,,
1#AC1_7A_1_18,297,12,7,1,8041,3218,3281,3281,3218,4693,44615,31038,,-63,,,,
1#AC1_7A_1_19,296,12,7,1,8041,3395,3458,3458,3395,4693,44615,31038,,-63,,,,
1#AC1_7A_1_20,295,12,7,1,8041,3585,3648,3648,3585,4693,44615,31038,,-63,,,,
1#AC1_7A_1_21,294,12,7,1,8041,3775,3838,3838,3775,4693,44615,31038,,-63,,,,
1#AC1_7A_1_22,293,12,7,1,8041,3965,4028,4028,3965,4693,44615,31038,,-63,,,,
1#AC1_7A_1_23,292,12,7,1,8041,4149,4212,4212,4149,4693,44615,31038,,-63,,,,
1#AC1_7A_1_24,291,12,7,1,8041,4335,4398,4398,4335,4693,44615,31038,,-63,,,,
1#AC1_7A_2_1,290,12,7,1,8041,6032,6095,6095,6032,4693,44615,31038,,-63,,,,
1#AC1_7A_2_2,289,12,7,1,8041,6219,6282,6282,6219,4693,44615,31038,,-63,,,,
1#AC1_7A_2_3,288,12,7,1,8041,6406,6469,6469,6406,4693,44615,31038,,-63,,,,
1#AC1_7A_2_4,287,12,7,1,8041,6593,6656,6656,6593,4693,44615,31038,,-63,,,,
1#AC1_7A_2_5,286,12,7,1,8041,6779,6842,6842,6779,4693,44615,31038,,-63,,,,
1#AC1_7A_2_6,285,12,7,1,8041,6969,7032,7032,6969,4693,44615,31038,,-63,,,,
1#AC1_7A_2_7,284,12,7,1,8041,7159,7222,7222,7159,4693,44615,31038,,-63,,,,
1#AC1_7A_2_8,283,12,7,1,8041,7349,7412,7412,7349,4693,44615,31038,,-63,,,,
1#AC1_7A_2_9,282,12,7,1,8041,7536,7599,7599,7536,4693,44615,31038,,-63,,,,
1#AC1_7A_2_10,281,12,7,1,8041,7719,7782,7782,7719,4693,44615,31038,,-63,,,,
1#AC1_7A_2_11,280,12,7,1,8041,7906,7969,7969,7906,4693,44615,31038,,-63,,,,
1#AC1_7A_2_12,279,12,7,1,8041,8093,8156,8156,8093,4693,44615,31038,,-63,,,,
1#AC1_7A_2_13,278,12,7,1,8041,8283,8346,8346,8283,4693,44615,31038,,-63,,,,
1#AC1_7A_2_14,277,12,7,1,8041,8473,8536,8536,8473,4693,44615,31038,,-63,,,,
1#AC1_7A_2_15,276,12,7,1,8041,8663,8726,8726,8663,4693,44615,31038,,-63,,,,
1#AC1_7A_2_16,275,12,7,1,8041,8846,8909,8909,8846,4693,44615,31038,,-63,,,,
1#AC1_7A_2_17,274,12,7,1,8041,9033,9096,9096,9033,4693,44615,31038,,-63,,,,
1#AC1_7A_2_18,273,12,7,1,8041,9220,9283,9283,9220,4693,44615,31038,,-63,,,,
1#AC1_7A_2_19,272,12,7,1,8041,9406,9469,9469,9406,4693,44615,31038,,-63,,,,
1#AC1_7A_2_20,271,12,7,1,8041,9596,9659,9659,9596,4693,44615,31038,,-63,,,,
1#AC1_7A_2_21,270,12,7,1,8041,9790,9853,9853,9790,4693,44615,31038,,-63,,,,
1#AC1_7A_2_22,269,12,7,1,8041,9970,10033,10033,9970,4693,44615,31038,,-63,,,,
1#AC1_7A_2_23,268,12,7,1,8041,10154,10217,10217,10154,4693,44615,31038,,-63,,,,
1#AC1_7B_1_1,267,12,7,1,8500,34,97,97,34,4693,44615,31038,,-63,12,,,
1#AC1_7B_1_2,266,12,7,1,8500,214,277,277,214,4693,44615,31038,,-63,,,,
1#AC1_7B_1_3,265,12,7,1,8500,404,467,467,404,4693,44615,31038,,-63,,,,
1#AC1_7B_1_4,264,12,7,1,8500,591,654,654,591,4693,44615,31038,,-63,,,,
1#AC1_7B_1_5,263,12,7,1,8500,778,841,841,778,4693,44615,31038,,-63,,,,
1#AC1_7B_1_6,262,12,7,1,8500,961,1024,1024,961,4693,44615,31038,,-63,18,,,
1#AC1_7B_1_7,261,12,7,1,8500,1148,1211,1211,1148,4693,44615,31038,,-63,,,,
1#AC1_7B_1_8,260,12,7,1,8500,1338,1401,1401,1338,4693,44615,31038,,-63,,,,
1#AC1_7B_1_9,259,12,7,1,8500,1525,1588,1588,1525,4693,44615,31038,,-63,,,,
1#AC1_7B_1_10,258,12,7,1,8500,1715,1778,1778,1715,4693,44615,31038,,-63,,,,
1#AC1_7B_1_11,257,12,7,1,8500,1902,1965,1965,1902,4693,44615,31038,,-63,,,,
1#AC1_7B_1_12,256,12,7,1,8500,2091,2154,2154,2091,4693,44615,31038,,-63,,,,
1#AC1_7B_1_13,255,12,7,1,8500,2275,2338,2338,2275,4693,44615,31038,,-63,,,,
1#AC1_7B_1_14,254,12,7,1,8500,2462,2525,2525,2462,4693,44615,31038,,-63,,,,
1#AC1_7B_1_15,253,12,7,1,8500,2648,2711,2711,2648,4693,44615,31038,,-63,,,,
1#AC1_7B_1_16,252,12,7,1,8500,2835,2898,2898,2835,4693,44615,31038,,-63,,,8497,
1#AC1_7B_1_17,251,12,7,1,8500,3025,3088,3088,3025,4693,44615,31038,,-63,,,,
1#AC1_7B_1_18,250,12,7,1,8500,3218,3281,3281,3218,4693,44615,31038,,-63,,,,
1#AC1_7B_1_19,249,12,7,1,8500,3395,3458,3458,3395,4693,44615,31038,,-63,,,,
1#AC1_7B_1_20,248,12,7,1,8500,3585,3648,3648,3585,4693,44615,31038,,-63,,,,
1#AC1_7B_1_21,247,12,7,1,8500,3775,3838,3838,3775,4693,44615,31038,,-63,,,,
1#AC1_7B_1_22,246,12,7,1,8500,3965,4028,4028,3965,4693,44615,31038,,-63,,,,
1#AC1_7B_1_23,245,12,7,1,8500,4149,4212,4212,4149,4693,44615,31038,,-63,,,,
1#AC1_7B_1_24,244,12,7,1,8500,4335,4398,4398,4335,4693,44615,31038,,-63,,,,
1#AC1_7B_2_1,243,12,7,1,8497,6032,6095,6095,6032,4693,44615,31038,,-63,,,,
1#AC1_7B_2_2,242,12,7,1,8497,6219,6282,6282,6219,4693,44615,31038,,-63,,,,
1#AC1_7B_2_3,241,12,7,1,8497,6406,6469,6469,6406,4693,44615,31038,,-63,,,,
1#AC1_7B_2_4,240,12,7,1,8497,6593,6656,6656,6593,4693,44615,31038,,-63,,,,
1#AC1_7B_2_5,239,12,7,1,8497,6779,6842,6842,6779,4693,44615,31038,,-63,,,,
1#AC1_7B_2_6,238,12,7,1,8497,6969,7032,7032,6969,4693,44615,31038,,-63,,,,
1#AC1_7B_2_7,237,12,7,1,8497,7159,7222,7222,7159,4693,44615,31038,,-63,,,,
1#AC1_7B_2_8,236,12,7,1,8497,7349,7412,7412,7349,4693,44615,31038,,-63,,,,
1#AC1_7B_2_9,235,12,7,1,8497,7536,7599,7599,7536,4693,44615,31038,,-63,,,,
1#AC1_7B_2_10,234,12,7,1,8497,7719,7782,7782,7719,4693,44615,31038,,-63,,,,
1#AC1_7B_2_11,233,12,7,1,8497,7906,7969,7969,7906,4693,44615,31038,,-63,,,,
1#AC1_7B_2_12,232,12,7,1,8497,8093,8156,8156,8093,4693,44615,31038,,-63,,,,
1#AC1_7B_2_13,231,12,7,1,8497,8283,8346,8346,8283,4693,44615,31038,,-63,,,,
1#AC1_7B_2_14,230,12,7,1,8497,8473,8536,8536,8473,4693,44615,31038,,-63,,,,
1#AC1_7B_2_15,229,12,7,1,8497,8663,8726,8726,8663,4693,44615,31038,,-63,,,,
1#AC1_7B_2_16,228,12,7,1,8497,8846,8909,8909,8846,4693,44615,31038,,-63,,,,
1#AC1_7B_2_17,227,12,7,1,8497,9033,9096,9096,9033,4693,44615,31038,,-63,,,,
1#AC1_7B_2_18,226,12,7,1,8497,9220,9283,9283,9220,4693,44615,31038,,-63,,,,
1#AC1_7B_2_19,225,12,7,1,8497,9406,9469,9469,9406,4693,44615,31038,,-63,,,,
1#AC1_7B_2_20,224,12,7,1,8497,9596,9659,9659,9596,4693,44615,31038,,-63,,,,
1#AC1_7B_2_21,223,12,7,1,8497,9790,9853,9853,9790,4693,44615,31038,,-63,,,,
1#AC1_7B_2_22,222,12,7,1,8497,9970,10033,10033,9970,4693,44615,31038,,-63,,,,
1#AC1_7B_2_23,221,12,7,1,8497,10154,10217,10217,10154,4693,44615,31038,,-63,,,,
1#AC1_8A_1_1,220,12,7,1,9047,28,91,91,28,4693,44615,31038,,-63,,21,,
1#AC1_8A_1_2,219,12,7,1,9047,212,275,275,212,4693,44615,31038,,-63,,,,
1#AC1_8A_1_3,218,12,7,1,9047,392,455,455,392,4693,44615,31038,,-63,,,,
1#AC1_8A_1_4,217,12,7,1,9047,585,648,648,585,4693,44615,31038,,-63,,,,
1#AC1_8A_1_5,216,12,7,1,9047,772,835,835,772,4693,44615,31038,,-63,,,,
1#AC1_8A_1_6,215,12,7,1,9047,962,1025,1025,962,4693,44615,31038,,-63,,,,
1#AC1_8A_1_7,214,12,7,1,9047,1152,1215,1215,1152,4693,44615,31038,,-63,,,,
1#AC1_8A_1_8,213,12,7,1,9045,1332,1395,1395,1332,4693,44615,31038,,-63,,,,
1#AC1_8A_1_9,212,12,7,1,9045,1522,1585,1585,1522,4693,44615,31038,,-63,,,,
1#AC1_8A_1_10,211,12,7,1,9045,1709,1772,1772,1709,4693,44615,31038,,-63,,,,
1#AC1_8A_1_11,210,12,7,1,9045,1902,1965,1965,1902,4693,44615,31038,,-63,,,,
1#AC1_8A_1_12,209,12,7,1,9045,2089,2152,2152,2089,4693,44615,31038,,-63,,,,
1#AC1_8A_1_13,208,12,7,1,9045,2272,2335,2335,2272,4693,44615,31038,,-63,,,,
1#AC1_8A_1_14,207,12,7,1,9045,2453,2516,2516,2453,4693,44615,31038,,-63,,,,
1#AC1_8A_1_15,206,12,7,1,9045,2642,2705,2705,2642,4693,44615,31038,,-63,,,,
1#AC1_8A_1_16,205,12,7,1,9045,2832,2895,2895,2832,4693,44615,31038,,-63,,,,
1#AC1_8A_1_17,204,12,7,1,9045,3026,3089,3089,3026,4693,44615,31038,,-63,,,,
1#AC1_8A_1_18,203,12,7,1,9045,3216,3279,3279,3216,4693,44615,31038,,-63,,,,
1#AC1_8A_2_1,202,12,7,1,9045,3396,3459,3459,3396,4693,44615,31038,,-63,,,,
1#AC1_8A_2_2,201,12,7,1,9045,3583,3646,3646,3583,4693,44615,31038,,-63,,,,
1#AC1_8A_2_3,200,12,7,1,9045,3769,3832,3832,3769,4693,44615,31038,,-63,,,,
1#AC1_8A_2_4,199,12,7,1,9045,3956,4019,4019,3956,4693,44615,31038,,-63,,,,
1#AC1_8A_2_5,198,12,7,1,9042,4149,4212,4212,4149,4693,44615,31038,,-63,,,,
1#AC1_8A_2_6,197,12,7,1,9042,4333,4396,4396,4333,4693,44615,31038,,-63,,,,
1#AC1_8A_2_7,196,12,7,1,9042,4523,4586,4586,4523,4693,44615,31038,,-63,,,,
1#AC1_8A_2_8,195,12,7,1,9042,4709,4772,4772,4709,4693,44615,31038,,-63,,,,
1#AC1_8A_2_9,194,12,7,1,9042,4896,4959,4959,4896,4693,44615,31038,,-63,,,,
1#AC1_8A_2_10,193,12,7,1,9042,5080,5143,5143,5080,4693,44615,31038,,-63,,,,
1#AC1_8A_2_11,192,12,7,1,9042,5269,5332,5332,5269,4693,44615,31038,,-63,,,,
1#AC1_8A_2_12,191,12,7,1,9042,5456,5519,5519,5456,4693,44615,31038,,-63,,,,
1#AC1_8A_2_13,190,12,7,1,9042,5640,5703,5703,5640,4693,44615,31038,,-63,,,,
1#AC1_8A_2_14,189,12,7,1,9042,5830,5893,5893,5830,4693,44615,31038,,-63,,,,
1#AC1_8A_2_15,188,12,7,1,9042,6020,6083,6083,6020,4693,44615,31038,,-63,,,,
1#AC1_8A_2_16,187,12,7,1,9042,6203,6266,6266,6203,4693,44615,31038,,-63,,,,
1#AC1_8A_2_17,186,12,7,1,9042,6393,6456,6456,6393,4693,44615,31038,,-63,,,,
1#AC1_8A_2_18,185,12,7,1,9042,6586,6649,6649,6586,4693,44615,31038,,-63,,,,
1#AC1_8A_3_1,184,12,7,1,9042,6760,6823,6823,6760,4693,44615,31038,,-63,,,,
1#AC1_8A_3_2,183,12,7,1,9042,6947,7010,7010,6947,4693,44615,31038,,-63,,,,
1#AC1_8A_3_3,182,12,7,1,9042,7140,7203,7203,7140,4693,44615,31038,,-63,,,,
1#AC1_8A_3_4,181,12,7,1,9042,7327,7390,7390,7327,4693,44615,31038,,-63,,,,
1#AC1_8A_3_5,180,12,7,1,9042,7517,7580,7580,7517,4693,44615,31038,,-63,,,,
1#AC1_8A_3_6,179,12,7,1,9042,7704,7767,7767,7704,4693,44615,31038,,-63,,,,
1#AC1_8A_3_7,178,12,7,1,9042,7887,7950,7950,7887,4693,44615,31038,,-63,,,,
1#AC1_8A_3_8,177,12,7,1,9042,8070,8133,8133,8070,4693,44615,31038,,-63,,,,
1#AC1_8A_3_9,176,12,7,1,9039,8260,8323,8323,8260,4693,44615,31038,,-63,,,,
1#AC1_8A_3_10,175,12,7,1,9039,8454,8517,8517,8454,4693,44615,31038,,-63,,,,
1#AC1_8A_3_11,174,12,7,1,9039,8640,8703,8703,8640,4693,44615,31038,,-63,,,,
1#AC1_8A_3_12,173,12,7,1,9039,8827,8890,8890,8827,4693,44615,31038,,-63,,,,
1#AC1_8A_3_13,172,12,7,1,9039,9014,9077,9077,9014,4693,44615,31038,,-63,,,,
1#AC1_8A_3_14,171,12,7,1,9039,9197,9260,9260,9197,4693,44615,31038,,-63,,,,
1#AC1_8A_3_15,170,12,7,1,9039,9384,9447,9447,9384,4693,44615,31038,,-63,,,,
1#AC1_8A_3_16,169,12,7,1,9039,9574,9637,9637,9574,4693,44615,31038,,-63,,,,
1#AC1_8A_3_17,168,12,7,1,9039,9764,9827,9827,9764,4693,44615,31038,,-63,,18,,
1#AC1_8A_3_18,167,12,7,1,9039,9954,10017,10017,9954,4693,44615,31038,,-63,,,,
1#AC1_8A_3_19,166,12,7,1,9039,10144,10207,10207,10144,4693,44615,31038,,-63,,,,
1#AC1_8B_1_1,165,12,7,1,9503,38,102,102,38,4693,44615,31038,,-64,,,,
1#AC1_8B_1_2,164,12,7,1,9503,222,286,286,222,4693,44615,31038,,-64,,,,
1#AC1_8B_1_3,163,12,7,1,9503,402,466,466,402,4693,44615,31038,,-64,,,,
1#AC1_8B_1_4,162,12,7,1,9503,595,659,659,595,4693,44615,31038,,-64,,,,
1#AC1_8B_1_5,161,12,7,1,9503,782,846,846,782,4693,44615,31038,,-64,,,,
1#AC1_8B_1_6,160,12,7,1,9503,972,1036,1036,972,4693,44615,31038,,-64,,,,
1#AC1_8B_1_7,159,12,7,1,9503,1162,1226,1226,1162,4693,44615,31038,,-64,,,,
1#AC1_8B_1_8,158,12,7,1,9503,1342,1406,1406,1342,4693,44615,31038,,-64,,,,
1#AC1_8B_1_9,157,12,7,1,9503,1532,1596,1596,1532,4693,44615,31038,,-64,,,,
1#AC1_8B_1_10,156,12,7,1,9503,1719,1783,1783,1719,4693,44615,31038,,-64,,,,
1#AC1_8B_1_11,155,12,7,1,9503,1912,1976,1976,1912,4693,44615,31038,,-64,,,,
1#AC1_8B_1_12,154,12,7,1,9503,2099,2163,2163,2099,4693,44615,31038,,-64,,,,
1#AC1_8B_1_13,153,12,7,1,9503,2282,2346,2346,2282,4693,44615,31038,,-64,,,,
1#AC1_8B_1_14,152,12,7,1,9503,2463,2527,2527,2463,4693,44615,31038,,-64,,,,
1#AC1_8B_1_15,151,12,7,1,9503,2652,2716,2716,2652,4693,44615,31038,,-64,,,,
1#AC1_8B_1_16,150,12,7,1,9503,2842,2906,2906,2842,4693,44615,31038,,-64,,,,
1#AC1_8B_1_17,149,12,7,1,9503,3036,3100,3100,3036,4693,44615,31038,,-64,,,,
1#AC1_8B_1_18,148,12,7,1,9503,3226,3290,3290,3226,4693,44615,31038,,-64,,,,
1#AC1_8B_2_1,147,12,7,1,9501,3406,3470,3470,3406,4693,44615,31038,,-64,,,,
1#AC1_8B_2_2,146,12,7,1,9501,3593,3657,3657,3593,4693,44615,31038,,-64,,,,
1#AC1_8B_2_3,145,12,7,1,9501,3779,3843,3843,3779,4693,44615,31038,,-64,,,,
1#AC1_8B_2_4,144,12,7,1,9501,3966,4030,4030,3966,4693,44615,31038,,-64,,,,
1#AC1_8B_2_5,143,12,7,1,9501,4159,4223,4223,4159,4693,44615,31038,,-64,,,,
1#AC1_8B_2_6,142,12,7,1,9501,4343,4407,4407,4343,4693,44615,31038,,-64,,,,
1#AC1_8B_2_7,141,12,7,1,9501,4533,4597,4597,4533,4693,44615,31038,,-64,,,,
1#AC1_8B_2_8,140,12,7,1,9501,4719,4783,4783,4719,4693,44615,31038,,-64,,,,
1#AC1_8B_2_9,139,12,7,1,9501,4906,4970,4970,4906,4693,44615,31038,,-64,,,,
1#AC1_8B_2_10,138,12,7,1,9497,5090,5154,5154,5090,4693,44615,31038,,-64,,,,
1#AC1_8B_2_11,137,12,7,1,9497,5279,5343,5343,5279,4693,44615,31038,,-64,,,,
1#AC1_8B_2_12,136,12,7,1,9497,5466,5530,5530,5466,4693,44615,31038,,-64,,,,
1#AC1_8B_2_13,135,12,7,1,9497,5650,5714,5714,5650,4693,44615,31038,,-64,,,,
1#AC1_8B_2_14,134,12,7,1,9497,5840,5904,5904,5840,4693,44615,31038,,-64,,,,
1#AC1_8B_2_15,133,12,7,1,9497,6030,6094,6094,6030,4693,44615,31038,,-64,,,,
1#AC1_8B_2_16,132,12,7,1,9497,6213,6277,6277,6213,4693,44615,31038,,-64,,,,
1#AC1_8B_2_17,131,12,7,1,9497,6403,6467,6467,6403,4693,44615,31038,,-64,,,,
1#AC1_8B_2_18,130,12,7,1,9497,6596,6660,6660,6596,4693,44615,31038,,-64,,,,
1#AC1_8B_3_1,129,12,7,1,9497,6770,6832,6832,6770,4693,44615,31038,,-62,,,,
1#AC1_8B_3_2,128,12,7,1,9497,6957,7019,7019,6957,4693,44615,31038,,-62,,,,
1#AC1_8B_3_3,127,12,7,1,9497,7150,7212,7212,7150,4693,44615,31038,,-62,,,,
1#AC1_8B_3_4,126,12,7,1,9497,7337,7399,7399,7337,4693,44615,31038,,-62,,,,
1#AC1_8B_3_5,125,12,7,1,9497,7527,7589,7589,7527,4693,44615,31038,,-62,,,,
1#AC1_8B_3_6,124,12,7,1,9497,7714,7776,7776,7714,4693,44615,31038,,-62,,,,
1#AC1_8B_3_7,123,12,7,1,9497,7897,7959,7959,7897,4693,44615,31038,,-62,,,,
1#AC1_8B_3_8,122,12,7,1,9497,8080,8142,8142,8080,4693,44615,31038,,-62,,,,
1#AC1_8B_3_9,121,12,7,1,9497,8270,8332,8332,8270,4693,44615,31038,,-62,,,,
1#AC1_8B_3_10,120,12,7,1,9493,8464,8526,8526,8464,4693,44615,31038,,-62,,,,
1#AC1_8B_3_11,119,12,7,1,9493,8650,8712,8712,8650,4693,44615,31038,,-62,,,,
1#AC1_8B_3_12,118,12,7,1,9493,8837,8899,8899,8837,4693,44615,31038,,-62,,,,
1#AC1_8B_3_13,117,12,7,1,9493,9024,9086,9086,9024,4693,44615,31038,,-62,,,,
1#AC1_8B_3_14,116,12,7,1,9493,9207,9269,9269,9207,4693,44615,31038,,-62,,,,
1#AC1_8B_3_15,115,12,7,1,9493,9394,9456,9456,9394,4693,44615,31038,,-62,,,,
1#AC1_8B_3_16,114,12,7,1,9493,9584,9646,9646,9584,4693,44615,31038,,-62,,,,
1#AC1_8B_3_17,113,12,7,1,9493,9774,9836,9836,9774,4693,44615,31038,,-62,,,,
1#AC1_8B_3_18,112,12,7,1,9493,9964,10026,10026,9964,4693,44615,31038,,-62,,,,
1#AC1_8B_3_19,111,12,7,1,9493,10154,10216,10216,10154,4693,44615,31038,,-62,,,,
1#AC1_9A_1_1,110,12,7,1,58,39,102,102,39,4693,44615,31038,,-63,7,,,
1#AC1_9A_1_2,109,12,7,1,58,222,285,285,222,4693,44615,31038,,-63,,,,
1#AC1_9A_1_3,108,12,7,1,58,409,472,472,409,4693,44615,31038,,-63,,,,
1#AC1_9A_1_4,107,12,7,1,58,592,655,655,592,4693,44615,31038,,-63,,,,
1#AC1_9A_1_5,106,12,7,1,58,779,842,842,779,4693,44615,31038,,-63,,,,
1#AC1_9A_1_6,105,12,7,1,58,969,1032,1032,969,4693,44615,31038,,-63,,,,
1#AC1_9A_1_7,104,12,7,1,58,1156,1219,1219,1156,4693,44615,31038,,-63,,,,
1#AC1_9A_1_8,103,12,7,1,58,1346,1409,1409,1346,4693,44615,31038,,-63,,,,
1#AC1_9A_1_9,102,12,7,1,58,1536,1599,1599,1536,4693,44615,31038,,-63,,,,
1#AC1_9A_1_10,101,12,7,1,56,1719,1782,1782,1719,4693,44615,31038,,-63,,,,
1#AC1_9A_1_11,100,12,7,1,56,1909,1972,1972,1909,4693,44615,31038,,-63,,,,
1#AC1_9A_1_12,99,12,7,1,56,2096,2159,2159,2096,4693,44615,31038,,-63,,,,
1#AC1_9A_1_13,98,12,7,1,56,2279,2342,2342,2279,4693,44615,31038,,-63,,,,
1#AC1_9A_1_14,97,12,7,1,56,2469,2532,2532,2469,4693,44615,31038,,-63,,,,
1#AC1_9A_1_15,96,12,7,1,56,2659,2722,2722,2659,4693,44615,31038,,-63,,,,
1#AC1_9A_1_16,95,12,7,1,56,2839,2902,2902,2839,4693,44615,31038,,-63,,,,
1#AC1_9A_1_17,94,12,7,1,56,3026,3089,3089,3026,4693,44615,31038,,-63,,,,
1#AC1_9A_1_18,93,12,7,1,56,3223,3286,3286,3223,4693,44615,31038,,-63,,,,
1#AC1_9A_2_1,92,12,7,1,52,3399,3462,3462,3399,4693,44615,31038,,-63,,,,
1#AC1_9A_2_2,91,12,7,1,52,3593,3656,3656,3593,4693,44615,31038,,-63,,,,
1#AC1_9A_2_3,90,12,7,1,52,3783,3846,3846,3783,4693,44615,31038,,-63,,,,
1#AC1_9A_2_4,89,12,7,1,52,3963,4026,4026,3963,4693,44615,31038,,-63,,,,
1#AC1_9A_2_5,88,12,7,1,52,4153,4216,4216,4153,4693,44615,31038,,-63,,,,
1#AC1_9A_2_6,87,12,7,1,52,4346,4409,4409,4346,4693,44615,31038,,-63,,,,
1#AC1_9A_2_7,86,12,7,1,52,4530,4593,4593,4530,4693,44615,31038,,-63,,,,
1#AC1_9A_2_8,85,12,7,1,52,4713,4776,4776,4713,4693,44615,31038,,-63,,,,
1#AC1_9A_2_9,84,12,7,1,52,4900,4963,4963,4900,4693,44615,31038,,-63,,,,
1#AC1_9A_2_10,83,12,7,1,52,5090,5153,5153,5090,4693,44615,31038,,-63,,,,
1#AC1_9A_2_11,82,12,7,1,52,5277,5340,5340,5277,4693,44615,31038,,-63,,,,
1#AC1_9A_2_12,81,12,7,1,52,5463,5526,5526,5463,4693,44615,31038,,-63,,,,
1#AC1_9A_2_13,80,12,7,1,52,5650,5713,5713,5650,4693,44615,31038,,-63,,,,
1#AC1_9A_2_14,79,12,7,1,52,5840,5903,5903,5840,4693,44615,31038,,-63,,,,
1#AC1_9A_2_15,78,12,7,1,52,6037,6100,6100,6037,4693,44615,31038,,-63,,,,
1#AC1_9A_2_16,77,12,7,1,52,6227,6290,6290,6227,4693,44615,31038,,-63,,,,
1#AC1_9A_2_17,76,12,7,1,52,6403,6466,6466,6403,4693,44615,31038,,-63,,,,
1#AC1_9A_2_18,75,12,7,1,52,6593,6656,6656,6593,4693,44615,31038,,-63,,,,
1#AC1_9A_3_1,74,12,7,1,52,6780,6843,6843,6780,4693,44615,31038,,-63,,,,
1#AC1_9A_3_2,73,12,7,1,52,6963,7026,7026,6963,4693,44615,31038,,-63,,,,
1#AC1_9A_3_3,72,12,7,1,52,7147,7210,7210,7147,4693,44615,31038,,-63,,,,
1#AC1_9A_3_4,71,12,7,1,52,7337,7400,7400,7337,4693,44615,31038,,-63,,,,
1#AC1_9A_3_5,70,12,7,1,52,7520,7583,7583,7520,4693,44615,31038,,-63,,,,
1#AC1_9A_3_6,69,12,7,1,52,7707,7770,7770,7707,4693,44615,31038,,-63,,,,
1#AC1_9A_3_7,68,12,7,1,52,7900,7963,7963,7900,4693,44615,31038,,-63,,,,
1#AC1_9A_3_8,67,12,7,1,52,8090,8153,8153,8090,4693,44615,31038,,-63,,,,
1#AC1_9A_3_9,66,12,7,1,52,8277,8340,8340,8277,4693,44615,31038,,-63,,,,
1#AC1_9A_3_10,65,12,7,1,52,8464,8527,8527,8464,4693,44615,31038,,-63,,,,
1#AC1_9A_3_11,64,12,7,1,52,8654,8717,8717,8654,4693,44615,31038,,-63,,,,
1#AC1_9A_3_12,63,12,7,1,52,8840,8903,8903,8840,4693,44615,31038,,-63,,,,
1#AC1_9A_3_13,62,12,7,1,52,9027,9090,9090,9027,4693,44615,31038,,-63,,,,
1#AC1_9A_3_14,61,12,7,1,52,9214,9277,9277,9214,4693,44615,31038,,-63,,,,
1#AC1_9A_3_15,60,12,7,1,52,9401,9464,9464,9401,4693,44615,31038,,-63,,,,
1#AC1_9A_3_16,59,12,7,1,52,9591,9654,9654,9591,4693,44615,31038,,-63,,,,
1#AC1_9A_3_17,58,12,7,1,52,9774,9837,9837,9774,4693,44615,31038,,-63,,,,
1#AC1_9A_3_18,57,12,7,1,52,9964,10027,10027,9964,4693,44615,31038,,-63,,,,
1#AC1_9A_3_19,56,12,7,1,52,10154,10217,10217,10154,4693,44615,31038,,-63,,,,
1#AC1_9B_1_1,55,12,7,1,513,39,108,108,39,4693,44615,31038,,-69,,,,
1#AC1_9B_1_2,54,12,7,1,513,222,291,291,222,4693,44615,31038,,-69,,,,
1#AC1_9B_1_3,53,12,7,1,513,409,478,478,409,4693,44615,31038,,-69,,8,,
1#AC1_9B_1_4,52,12,7,1,513,592,661,661,592,4693,44615,31038,,-69,,,,
1#AC1_9B_1_5,51,12,7,1,513,779,848,848,779,4693,44615,31038,,-69,,,,
1#AC1_9B_1_6,50,12,7,1,513,969,1038,1038,969,4693,44615,31038,,-69,,,,
1#AC1_9B_1_7,49,12,7,1,513,1156,1225,1225,1156,4693,44615,31038,,-69,,,,
1#AC1_9B_1_8,48,12,7,1,513,1346,1415,1415,1346,4693,44615,31038,,-69,,,,
1#AC1_9B_1_9,47,12,7,1,510,1536,1605,1605,1536,4693,44615,31038,,-69,,,,
1#AC1_9B_1_10,46,12,7,1,510,1719,1788,1788,1719,4693,44615,31038,,-69,,,,
1#AC1_9B_1_11,45,12,7,1,510,1909,1978,1978,1909,4693,44615,31038,,-69,,,,
1#AC1_9B_1_12,44,12,7,1,510,2096,2165,2165,2096,4693,44615,31038,,-69,,,,
1#AC1_9B_1_13,43,12,7,1,510,2279,2348,2348,2279,4693,44615,31038,,-69,,,,
1#AC1_9B_1_14,42,12,7,1,510,2469,2538,2538,2469,4693,44615,31038,,-69,,,,
1#AC1_9B_1_15,41,12,7,1,510,2659,2728,2728,2659,4693,44615,31038,,-69,,,,
1#AC1_9B_1_16,40,12,7,1,510,2839,2908,2908,2839,4693,44615,31038,,-69,,,,
1#AC1_9B_1_17,39,12,7,1,510,3026,3095,3095,3026,4693,44615,31038,,-69,,,,
1#AC1_9B_1_18,38,12,7,1,510,3223,3292,3292,3223,4693,44615,31038,,-69,,,,
1#AC1_9B_2_1,37,12,7,1,510,3399,3468,3468,3399,4693,44615,31038,,-69,,,,
1#AC1_9B_2_2,36,12,7,1,510,3593,3662,3662,3593,4693,44615,31038,,-69,,,,
1#AC1_9B_2_3,35,12,7,1,510,3783,3852,3852,3783,4693,44615,31038,,-69,,,,
1#AC1_9B_2_4,34,12,7,1,510,3963,4032,4032,3963,4693,44615,31038,,-69,,,,
1#AC1_9B_2_5,33,12,7,1,510,4153,4222,4222,4153,4693,44615,31038,,-69,,,,
1#AC1_9B_2_6,32,12,7,1,510,4346,4415,4415,4346,4693,44615,31038,,-69,,,,
1#AC1_9B_2_7,31,12,7,1,510,4530,4599,4599,4530,4693,44615,31038,,-69,,,,
1#AC1_9B_2_8,30,12,7,1,510,4713,4782,4782,4713,4693,44615,31038,,-69,,,,
1#AC1_9B_2_9,29,12,7,1,510,4900,4969,4969,4900,4693,44615,31038,,-69,,,,
1#AC1_9B_2_10,28,12,7,1,509,5090,5159,5159,5090,4693,44615,31038,,-69,,,,
1#AC1_9B_2_11,27,12,7,1,509,5277,5346,5346,5277,4693,44615,31038,,-69,,,,
1#AC1_9B_2_12,26,12,7,1,509,5463,5532,5532,5463,4693,44615,31038,,-69,,,,
1#AC1_9B_2_13,25,12,7,1,509,5650,5719,5719,5650,4693,44615,31038,,-69,,,,
1#AC1_9B_2_14,24,12,7,1,509,5840,5909,5909,5840,4693,44615,31038,,-69,,,,
1#AC1_9B_2_15,23,12,7,1,509,6037,6106,6106,6037,4693,44615,31038,,-69,,,,
1#AC1_9B_2_16,22,12,7,1,509,6227,6296,6296,6227,4693,44615,31038,,-69,,,,
1#AC1_9B_2_17,21,12,7,1,509,6403,6472,6472,6403,4693,44615,31038,,-69,,,,
1#AC1_9B_2_18,20,12,7,1,509,6593,6662,6662,6593,4693,44615,31038,,-69,,,,
1#AC1_9B_3_1,19,12,7,1,509,6780,6849,6849,6780,4693,44615,31038,,-69,,,,
1#AC1_9B_3_2,18,12,7,1,509,6963,7032,7032,6963,4693,44615,31038,,-69,,,,
1#AC1_9B_3_3,17,12,7,1,509,7147,7216,7216,7147,4693,44615,31038,,-69,,,,
1#AC1_9B_3_4,16,12,7,1,509,7337,7406,7406,7337,4693,44615,31038,,-69,,,,
1#AC1_9B_3_5,15,12,7,1,509,7520,7589,7589,7520,4693,44615,31038,,-69,,,,
1#AC1_9B_3_6,14,12,7,1,509,7707,7776,7776,7707,4693,44615,31038,,-69,,,,
1#AC1_9B_3_7,13,12,7,1,509,7900,7969,7969,7900,4693,44615,31038,,-69,,,,
1#AC1_9B_3_8,12,12,7,1,509,8090,8159,8159,8090,4693,44615,31038,,-69,,,,
1#AC1_9B_3_9,11,12,7,1,509,8277,8346,8346,8277,4693,44615,31038,,-69,,,,
1#AC1_9B_3_10,10,12,7,1,509,8464,8533,8533,8464,4693,44615,31038,,-69,,,,
1#AC1_9B_3_11,9,12,7,1,509,8654,8723,8723,8654,4693,44615,31038,,-69,,,,
1#AC1_9B_3_12,8,12,7,1,509,8840,8909,8909,8840,4693,44615,31038,,-69,,,,
1#AC1_9B_3_13,7,12,7,1,509,9027,9096,9096,9027,4693,44615,31038,,-69,,,,
1#AC1_9B_3_14,6,12,7,1,509,9214,9283,9283,9214,4693,44615,31038,,-69,,,,
1#AC1_9B_3_15,5,12,7,1,509,9401,9470,9470,9401,4693,44615,31038,,-69,,,,
1#AC1_9B_3_16,4,12,7,1,509,9591,9660,9660,9591,4693,44615,31038,,-69,,,,
1#AC1_9B_3_17,3,12,7,1,509,9774,9843,9843,9774,4693,44615,31038,,-69,,,,
1#AC1_9B_3_18,2,12,7,1,509,9964,10033,10033,9964,4693,44615,31038,,-69,,,,
1#AC1_9B_3_19,1,12,7,1,509,10154,10223,10223,10154,4693,44615,31038,,-69,,,,
,,,,,,,,,,,,,,0,,,,
位置,优先级,高度,宽度,料仓ID,旋转轴库位点P2,升降轴库位出料前点P5,升降轴库位出料缓冲点P6,升降轴库位入料前点P3,升降轴库位入料缓冲点P4,进出轴库位点取料点P3,压紧轴压紧点P2,压紧轴压紧前点P3 位置,优先级,高度,宽度,料仓ID,旋转轴库位点P2,升降轴库位出料前点P5,升降轴库位出料缓冲点P6,升降轴库位入料前点P3,升降轴库位入料缓冲点P4,进出轴库位点取料点P3,压紧轴压紧点P2,压紧轴压紧前点P3,,,,,,,,,,
1#AC1_0_1_1,1,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_1,1148,12,7,2,8790,20,87,87,20,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_2,2,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_2,1147,12,7,2,8790,203,270,270,203,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_3,3,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_3,1146,12,7,2,8790,393,460,460,393,4698,43639,30303,,,,,10411,,,,,
1#AC1_0_1_4,4,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_4,1145,12,7,2,8790,580,647,647,580,4698,43639,30303,,,4,,,,,,,
1#AC1_0_1_5,5,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_5,1144,12,7,2,8790,770,837,837,770,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_6,6,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_6,1143,12,7,2,8790,960,1027,1027,960,4698,43639,30303,,,9,,,,,,,
1#AC1_0_1_7,7,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_7,1142,12,7,2,8790,1144,1211,1211,1144,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_8,8,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_8,1141,12,7,2,8790,1333,1400,1400,1333,4698,43639,30303,,,,,3,,4,6601,,
1#AC1_0_1_9,9,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_9,1140,12,7,2,8790,1517,1584,1584,1517,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_10,10,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_10,1139,12,7,2,8790,1701,1768,1768,1701,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_11,11,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_11,1138,12,7,2,8790,1894,1961,1961,1894,4698,43639,30303,,,,,,,,2153,,
1#AC1_0_1_12,12,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_12,1137,12,7,2,8790,2080,2147,2147,2080,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_13,13,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_13,1136,12,7,2,8790,2270,2337,2337,2270,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_14,14,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_1_14,1135,12,7,2,8790,2457,2524,2524,2457,4698,43639,30303,,,,,,,,,,12
1#AC1_0_1_15,15,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_1,1134,12,7,2,8786,3673,3740,3740,3673,4698,43639,30303,,,,,,,,,,
1#AC1_0_1_16,16,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_2,1133,12,7,2,8786,3859,3926,3926,3859,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_1,17,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_3,1132,12,7,2,8786,4049,4116,4116,4049,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_2,18,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_4,1131,12,7,2,8786,4239,4306,4306,4239,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_3,19,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_5,1130,12,7,2,8786,4423,4490,4490,4423,4698,43639,30303,,,,,,,,2,,
1#AC1_0_2_4,20,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_6,1129,12,7,2,8786,4609,4676,4676,4609,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_5,21,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_7,1128,12,7,2,8786,4799,4866,4866,4799,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_6,22,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_8,1127,12,7,2,8786,4983,5050,5050,4983,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_7,23,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_9,1126,16,7,2,8786,5173,5240,5240,5173,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_8,24,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_10,1125,16,7,2,8786,5382,5449,5449,5382,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_9,25,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_11,1124,16,7,2,8786,5595,5662,5662,5595,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_10,26,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_12,1123,16,7,2,8786,5808,5875,5875,5808,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_11,27,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_13,1122,16,7,2,8786,6018,6085,6085,6018,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_12,28,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_14,1121,16,7,2,8786,6224,6291,6291,6224,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_13,29,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_15,1120,16,7,2,8786,6431,6498,6498,6431,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_14,30,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_16,1119,16,7,2,8786,6640,6707,6707,6640,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_15,31,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_2_17,1118,16,7,2,8786,6853,6920,6920,6853,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_16,32,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_1,1117,16,7,2,8790,7060,7127,7127,7060,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_17,33,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_2,1116,16,7,2,8790,7276,7343,7343,7276,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_18,34,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_3,1115,16,7,2,8790,7485,7552,7552,7485,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_19,35,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_4,1114,16,7,2,8790,7695,7762,7762,7695,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_20,36,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_5,1113,16,7,2,8790,7901,7968,7968,7901,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_21,37,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_6,1112,16,7,2,8790,8114,8181,8181,8114,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_22,38,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_7,1111,16,7,2,8790,8321,8388,8388,8321,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_23,39,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_8,1110,16,7,2,8790,8534,8601,8601,8534,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_24,40,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_9,1109,16,7,2,8790,8747,8814,8814,8747,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_25,41,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_10,1108,16,7,2,8790,8960,9027,9027,8960,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_26,42,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_11,1107,16,7,2,8790,9166,9233,9233,9166,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_27,43,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_12,1106,16,7,2,8793,9379,9446,9446,9379,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_28,44,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_13,1105,16,7,2,8793,9582,9649,9649,9582,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_29,45,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_14,1104,16,7,2,8793,9795,9862,9862,9795,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_30,46,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_15,1103,16,7,2,8793,10001,10068,10068,10001,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_31,47,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0A_3_16,1102,16,7,2,8793,10218,10285,10285,10218,4698,39239,26492,,,,,,,,,,
1#AC1_0_2_32,48,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_1,1101,12,7,2,8330,20,87,87,20,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_33,49,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_2,1100,12,7,2,8330,203,270,270,203,4698,43639,30303,,,,,,,,,,
1#AC1_0_2_34,50,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_3,1099,12,7,2,8330,393,460,460,393,4698,43639,30303,,,40,,,,,,,
1#AC1_0_2_35,51,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_4,1098,12,7,2,8330,580,647,647,580,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_1,52,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_5,1097,12,7,2,8330,770,837,837,770,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_2,53,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_6,1096,12,7,2,8330,960,1027,1027,960,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_3,54,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_7,1095,12,7,2,8330,1144,1211,1211,1144,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_4,55,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_8,1094,12,7,2,8330,1333,1400,1400,1333,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_5,56,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_9,1093,12,7,2,8330,1517,1584,1584,1517,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_6,57,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_10,1092,12,7,2,8330,1701,1768,1768,1701,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_7,58,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_11,1091,12,7,2,8330,1894,1961,1961,1894,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_8,59,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_12,1090,12,7,2,8330,2080,2147,2147,2080,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_9,60,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_13,1089,12,7,2,8330,2270,2337,2337,2270,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_10,61,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_1_14,1088,12,7,2,8330,2457,2524,2524,2457,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_11,62,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_2_1,1087,12,7,2,8329,3673,3740,3740,3673,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_12,63,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_2_2,1086,12,7,2,8329,3859,3926,3926,3859,4698,43639,30303,,,,,,,,,,
1#AC1_1_1_13,64,8,7,2,306200,1290614,1299614,1299614,1290614,110692,10,10 1#AC2_0B_2_3,1085,12,7,2,8329,4049,4116,4116,4049,4698,43639,30303,,,,,,,,,,
1#AC2_0B_2_4,1084,12,7,2,8329,4239,4306,4306,4239,4698,43639,30303,,,,,,,,,,
1#AC2_0B_2_5,1083,12,7,2,8329,4423,4490,4490,4423,4698,43639,30303,,,,,,,,,,
1#AC2_0B_2_6,1082,12,7,2,8329,4609,4676,4676,4609,4698,43639,30303,,,,,,,,,,
1#AC2_0B_2_7,1081,12,7,2,8329,4799,4866,4866,4799,4698,43639,30303,,,,,,,,,,
1#AC2_0B_2_8,1080,12,7,2,8329,4983,5050,5050,4983,4698,43639,30303,,,,,,,,,,
1#AC2_0B_2_9,1079,16,7,2,8329,5173,5240,5240,5173,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_10,1078,16,7,2,8329,5382,5449,5449,5382,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_11,1077,16,7,2,8329,5595,5662,5662,5595,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_12,1076,16,7,2,8329,5808,5875,5875,5808,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_13,1075,16,7,2,8329,6018,6085,6085,6018,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_14,1074,16,7,2,8329,6224,6291,6291,6224,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_15,1073,16,7,2,8329,6431,6498,6498,6431,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_16,1072,16,7,2,8329,6640,6707,6707,6640,4698,39239,23677,,,,,,,,,,
1#AC2_0B_2_17,1071,16,7,2,8329,6853,6920,6920,6853,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_1,1070,16,7,2,8332,7060,7127,7127,7060,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_2,1069,16,7,2,8332,7276,7343,7343,7276,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_3,1068,16,7,2,8332,7485,7552,7552,7485,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_4,1067,16,7,2,8332,7695,7762,7762,7695,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_5,1066,16,7,2,8332,7901,7968,7968,7901,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_6,1065,16,7,2,8335,8114,8181,8181,8114,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_7,1064,16,7,2,8335,8321,8388,8388,8321,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_8,1063,16,7,2,8335,8534,8601,8601,8534,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_9,1062,16,7,2,8335,8747,8814,8814,8747,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_10,1061,16,7,2,8335,8960,9027,9027,8960,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_11,1060,16,7,2,8335,9166,9233,9233,9166,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_12,1059,16,7,2,8335,9379,9446,9446,9379,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_13,1058,16,7,2,8338,9582,9649,9649,9582,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_14,1057,16,7,2,8338,9795,9862,9862,9795,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_15,1056,16,7,2,8338,10001,10068,10068,10001,4698,39239,23677,,,,,,,,,,
1#AC2_0B_3_16,1055,16,7,2,8338,10218,10285,10285,10218,4698,39239,23677,,,,,,,,,,
1#AC2_1A_1_1,1054,8,7,2,7787,9,77,77,9,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_2,1053,8,7,2,7787,173,241,241,173,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_3,1052,8,7,2,7787,340,408,408,340,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_4,1051,8,7,2,7787,507,575,575,507,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_5,1050,8,7,2,7787,674,742,742,674,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_6,1049,8,7,2,7787,838,906,906,838,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_7,1048,8,7,2,7787,1002,1070,1070,1002,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_8,1047,8,7,2,7787,1162,1230,1230,1162,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_9,1046,8,7,2,7787,1329,1397,1397,1329,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_10,1045,8,7,2,7787,1496,1564,1564,1496,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_11,1044,8,7,2,7787,1663,1731,1731,1663,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_12,1043,8,7,2,7787,1827,1895,1895,1827,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_13,1042,8,7,2,7787,1997,2065,2065,1997,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_14,1041,8,7,2,7787,2158,2226,2226,2158,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_15,1040,8,7,2,7787,2322,2390,2390,2322,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_16,1039,8,7,2,7787,2482,2550,2550,2482,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_17,1038,8,7,2,7787,2649,2717,2717,2649,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_18,1037,8,7,2,7787,2820,2888,2888,2820,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_19,1036,8,7,2,7787,2990,3058,3058,2990,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_20,1035,8,7,2,7787,3154,3222,3222,3154,4698,46534,33146,,,,,,,,,,
1#AC2_1A_1_21,1034,8,7,2,7787,3324,3392,3392,3324,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_1,1033,8,7,2,7793,3478,3552,3552,3478,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_2,1032,8,7,2,7793,3649,3723,3723,3649,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_3,1031,8,7,2,7793,3806,3880,3880,3806,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_4,1030,8,7,2,7793,3970,4044,4044,3970,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_5,1029,8,7,2,7793,4134,4208,4208,4134,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_6,1028,8,7,2,7793,4297,4371,4371,4297,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_7,1027,8,7,2,7793,4464,4538,4538,4464,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_8,1026,8,7,2,7793,4631,4705,4705,4631,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_9,1025,8,7,2,7793,4796,4870,4870,4796,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_10,1024,8,7,2,7793,4959,5033,5033,4959,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_11,1023,8,7,2,7793,5126,5200,5200,5126,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_12,1022,8,7,2,7793,5290,5364,5364,5290,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_13,1021,8,7,2,7793,5454,5528,5528,5454,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_14,1020,8,7,2,7793,5621,5695,5695,5621,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_15,1019,8,7,2,7793,5788,5862,5862,5788,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_16,1018,8,7,2,7793,5952,6026,6026,5952,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_17,1017,8,7,2,7793,6122,6196,6196,6122,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_18,1016,8,7,2,7793,6279,6353,6353,6279,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_19,1015,8,7,2,7793,6440,6514,6514,6440,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_20,1014,8,7,2,7793,6607,6681,6681,6607,4698,46534,33146,,,,,,,,,,
1#AC2_1A_2_21,1013,8,7,2,7793,6774,6848,6848,6774,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_1,1012,8,7,2,7799,6927,6995,6995,6927,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_2,1011,8,7,2,7799,7091,7159,7159,7091,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_3,1010,8,7,2,7799,7255,7323,7323,7255,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_4,1009,8,7,2,7799,7419,7487,7487,7419,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_5,1008,8,7,2,7799,7582,7650,7650,7582,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_6,1007,8,7,2,7799,7750,7818,7818,7750,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_7,1006,8,7,2,7799,7913,7981,7981,7913,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_8,1005,8,7,2,7799,8080,8148,8148,8080,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_9,1004,8,7,2,7799,8244,8312,8312,8244,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_10,1003,8,7,2,7799,8411,8479,8479,8411,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_11,1002,8,7,2,7799,8572,8640,8640,8572,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_12,1001,8,7,2,7799,8742,8810,8810,8742,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_13,1000,8,7,2,7799,8903,8971,8971,8903,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_14,999,8,7,2,7799,9066,9134,9134,9066,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_15,998,8,7,2,7799,9230,9298,9298,9230,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_16,997,8,7,2,7799,9400,9468,9468,9400,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_17,996,8,7,2,7799,9564,9632,9632,9564,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_18,995,8,7,2,7799,9731,9799,9799,9731,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_19,994,8,7,2,7799,9892,9960,9960,9892,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_20,993,8,7,2,7799,10052,10120,10120,10052,4698,46534,33146,,,,,,,,,,
1#AC2_1A_3_21,992,8,7,2,7799,10229,10297,10297,10229,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_1,991,8,7,2,7329,9,77,77,9,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_2,990,8,7,2,7329,173,241,241,173,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_3,989,8,7,2,7329,340,408,408,340,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_4,988,8,7,2,7329,507,575,575,507,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_5,987,8,7,2,7329,674,742,742,674,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_6,986,8,7,2,7329,838,906,906,838,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_7,985,8,7,2,7329,1002,1070,1070,1002,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_8,984,8,7,2,7329,1162,1230,1230,1162,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_9,983,8,7,2,7329,1329,1397,1397,1329,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_10,982,8,7,2,7329,1496,1564,1564,1496,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_11,981,8,7,2,7329,1663,1731,1731,1663,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_12,980,8,7,2,7329,1827,1895,1895,1827,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_13,979,8,7,2,7329,1997,2065,2065,1997,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_14,978,8,7,2,7329,2158,2226,2226,2158,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_15,977,8,7,2,7329,2322,2390,2390,2322,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_16,976,8,7,2,7329,2482,2550,2550,2482,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_17,975,8,7,2,7329,2649,2717,2717,2649,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_18,974,8,7,2,7329,2820,2888,2888,2820,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_19,973,8,7,2,7329,2990,3058,3058,2990,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_20,972,8,7,2,7329,3154,3222,3222,3154,4698,46534,33146,,,,,,,,,,
1#AC2_1B_1_21,971,8,7,2,7329,3324,3392,3392,3324,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_1,970,8,7,2,7335,3478,3552,3552,3478,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_2,969,8,7,2,7335,3649,3723,3723,3649,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_3,968,8,7,2,7335,3806,3880,3880,3806,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_4,967,8,7,2,7335,3970,4044,4044,3970,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_5,966,8,7,2,7335,4134,4208,4208,4134,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_6,965,8,7,2,7335,4297,4371,4371,4297,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_7,964,8,7,2,7335,4464,4538,4538,4464,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_8,963,8,7,2,7335,4631,4705,4705,4631,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_9,962,8,7,2,7335,4796,4870,4870,4796,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_10,961,8,7,2,7335,4959,5033,5033,4959,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_11,960,8,7,2,7335,5126,5200,5200,5126,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_12,959,8,7,2,7335,5290,5364,5364,5290,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_13,958,8,7,2,7335,5454,5528,5528,5454,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_14,957,8,7,2,7335,5621,5695,5695,5621,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_15,956,8,7,2,7335,5788,5862,5862,5788,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_16,955,8,7,2,7335,5952,6026,6026,5952,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_17,954,8,7,2,7335,6122,6196,6196,6122,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_18,953,8,7,2,7335,6279,6353,6353,6279,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_19,952,8,7,2,7335,6440,6514,6514,6440,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_20,951,8,7,2,7335,6607,6681,6681,6607,4698,46534,33146,,,,,,,,,,
1#AC2_1B_2_21,950,8,7,2,7335,6774,6848,6848,6774,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_1,949,8,7,2,7344,6927,6995,6995,6927,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_2,948,8,7,2,7344,7091,7159,7159,7091,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_3,947,8,7,2,7344,7255,7323,7323,7255,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_4,946,8,7,2,7344,7419,7487,7487,7419,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_5,945,8,7,2,7344,7582,7650,7650,7582,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_6,944,8,7,2,7344,7750,7818,7818,7750,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_7,943,8,7,2,7344,7913,7981,7981,7913,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_8,942,8,7,2,7344,8080,8148,8148,8080,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_9,941,8,7,2,7344,8244,8312,8312,8244,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_10,940,8,7,2,7344,8411,8479,8479,8411,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_11,939,8,7,2,7344,8572,8640,8640,8572,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_12,938,8,7,2,7344,8742,8810,8810,8742,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_13,937,8,7,2,7344,8903,8971,8971,8903,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_14,936,8,7,2,7344,9066,9134,9134,9066,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_15,935,8,7,2,7344,9230,9298,9298,9230,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_16,934,8,7,2,7344,9400,9468,9468,9400,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_17,933,8,7,2,7344,9564,9632,9632,9564,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_18,932,8,7,2,7344,9731,9799,9799,9731,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_19,931,8,7,2,7344,9892,9960,9960,9892,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_20,930,8,7,2,7344,10052,10120,10120,10052,4698,46534,33146,,,,,,,,,,
1#AC2_1B_3_21,929,8,7,2,7344,10229,10297,10297,10229,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_1,928,8,7,2,6790,18,82,82,18,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_2,927,8,7,2,6790,182,246,246,182,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_3,926,8,7,2,6790,346,410,410,346,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_4,925,8,7,2,6790,509,573,573,509,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_5,924,8,7,2,6790,673,737,737,673,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_6,923,8,7,2,6790,834,898,898,834,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_7,922,8,7,2,6790,997,1061,1061,997,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_8,921,8,7,2,6790,1168,1232,1232,1168,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_9,920,8,7,2,6786,1335,1399,1399,1335,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_10,919,8,7,2,6784,1499,1563,1563,1499,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_11,918,8,7,2,6784,1666,1730,1730,1666,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_12,917,8,7,2,6780,1830,1894,1894,1830,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_13,916,8,7,2,6780,1990,2054,2054,1990,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_14,915,8,7,2,6780,2154,2218,2218,2154,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_15,914,8,7,2,6780,2324,2388,2388,2324,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_16,913,8,7,2,6780,2488,2552,2552,2488,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_17,912,8,7,2,6780,2655,2719,2719,2655,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_18,911,8,7,2,6780,2822,2886,2886,2822,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_19,910,8,7,2,6780,2983,3047,3047,2983,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_20,909,8,7,2,6780,3146,3210,3210,3146,4698,46534,33146,,,,,,,,,,
1#AC2_2A_1_21,908,8,7,2,6780,3317,3381,3381,3317,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_1,907,8,7,2,6791,3470,3538,3538,3470,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_2,906,8,7,2,6791,3634,3702,3702,3634,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_3,905,8,7,2,6791,3801,3869,3869,3801,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_4,904,8,7,2,6791,3968,4036,4036,3968,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_5,903,8,7,2,6791,4125,4193,4193,4125,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_6,902,8,7,2,6791,4292,4360,4360,4292,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_7,901,8,7,2,6791,4463,4531,4531,4463,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_8,900,8,7,2,6791,4627,4695,4695,4627,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_9,899,8,7,2,6791,4793,4861,4861,4793,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_10,898,8,7,2,6791,4957,5025,5025,4957,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_11,897,8,7,2,6791,5121,5189,5189,5121,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_12,896,8,7,2,6791,5285,5353,5353,5285,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_13,895,8,7,2,6791,5449,5517,5517,5449,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_14,894,8,7,2,6791,5616,5684,5684,5616,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_15,893,8,7,2,6791,5779,5847,5847,5779,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_16,892,8,7,2,6791,5943,6011,6011,5943,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_17,891,8,7,2,6791,6113,6181,6181,6113,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_18,890,8,7,2,6791,6274,6342,6342,6274,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_19,889,8,7,2,6791,6438,6506,6506,6438,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_20,888,8,7,2,6791,6602,6670,6670,6602,4698,46534,33146,,,,,,,,,,
1#AC2_2A_2_21,887,8,7,2,6791,6766,6834,6834,6766,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_1,886,8,7,2,6800,6923,6987,6987,6923,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_2,885,8,7,2,6800,7087,7151,7151,7087,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_3,884,8,7,2,6800,7251,7315,7315,7251,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_4,883,8,7,2,6800,7418,7482,7482,7418,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_5,882,8,7,2,6800,7585,7649,7649,7585,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_6,881,8,7,2,6800,7752,7816,7816,7752,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_7,880,8,7,2,6800,7916,7980,7980,7916,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_8,879,8,7,2,6800,8083,8147,8147,8083,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_9,878,8,7,2,6800,8244,8308,8308,8244,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_10,877,8,7,2,6800,8407,8471,8471,8407,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_11,876,8,7,2,6800,8574,8638,8638,8574,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_12,875,8,7,2,6800,8742,8806,8806,8742,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_13,874,8,7,2,6800,8905,8969,8969,8905,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_14,873,8,7,2,6800,9066,9130,9130,9066,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_15,872,8,7,2,6800,9233,9297,9297,9233,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_16,871,8,7,2,6800,9393,9457,9457,9393,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_17,870,8,7,2,6800,9561,9625,9625,9561,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_18,869,8,7,2,6800,9727,9791,9791,9727,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_19,868,8,7,2,6800,9895,9959,9959,9895,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_20,867,8,7,2,6800,10058,10122,10122,10058,4698,46534,33146,,,,,,,,,,
1#AC2_2A_3_21,866,8,7,2,6800,10226,10290,10290,10226,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_1,865,8,7,2,6335,18,82,82,18,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_2,864,8,7,2,6335,182,246,246,182,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_3,863,8,7,2,6335,346,410,410,346,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_4,862,8,7,2,6335,509,573,573,509,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_5,861,8,7,2,6335,673,737,737,673,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_6,860,8,7,2,6335,834,898,898,834,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_7,859,8,7,2,6335,997,1061,1061,997,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_8,858,8,7,2,6335,1168,1232,1232,1168,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_9,857,8,7,2,6335,1335,1399,1399,1335,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_10,856,8,7,2,6335,1499,1563,1563,1499,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_11,855,8,7,2,6335,1666,1730,1730,1666,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_12,854,8,7,2,6335,1830,1894,1894,1830,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_13,853,8,7,2,6335,1990,2054,2054,1990,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_14,852,8,7,2,6335,2154,2218,2218,2154,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_15,851,8,7,2,6335,2324,2388,2388,2324,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_16,850,8,7,2,6335,2488,2552,2552,2488,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_17,849,8,7,2,6335,2655,2719,2719,2655,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_18,848,8,7,2,6335,2822,2886,2886,2822,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_19,847,8,7,2,6335,2983,3047,3047,2983,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_20,846,8,7,2,6335,3146,3210,3210,3146,4698,46534,33146,,,,,,,,,,
1#AC2_2B_1_21,845,8,7,2,6335,3317,3381,3381,3317,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_1,844,8,7,2,6338,3470,3538,3538,3470,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_2,843,8,7,2,6338,3634,3702,3702,3634,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_3,842,8,7,2,6338,3801,3869,3869,3801,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_4,841,8,7,2,6338,3968,4036,4036,3968,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_5,840,8,7,2,6338,4125,4193,4193,4125,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_6,839,8,7,2,6338,4292,4360,4360,4292,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_7,838,8,7,2,6338,4463,4531,4531,4463,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_8,837,8,7,2,6338,4627,4695,4695,4627,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_9,836,8,7,2,6338,4793,4861,4861,4793,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_10,835,8,7,2,6338,4957,5025,5025,4957,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_11,834,8,7,2,6338,5121,5189,5189,5121,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_12,833,8,7,2,6338,5285,5353,5353,5285,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_13,832,8,7,2,6338,5449,5517,5517,5449,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_14,831,8,7,2,6338,5616,5684,5684,5616,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_15,830,8,7,2,6338,5779,5847,5847,5779,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_16,829,8,7,2,6338,5943,6011,6011,5943,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_17,828,8,7,2,6338,6113,6181,6181,6113,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_18,827,8,7,2,6338,6274,6342,6342,6274,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_19,826,8,7,2,6338,6438,6506,6506,6438,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_20,825,8,7,2,6338,6602,6670,6670,6602,4698,46534,33146,,,,,,,,,,
1#AC2_2B_2_21,824,8,7,2,6338,6766,6834,6834,6766,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_1,823,8,7,2,6344,6923,6987,6987,6923,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_2,822,8,7,2,6344,7087,7151,7151,7087,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_3,821,8,7,2,6344,7251,7315,7315,7251,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_4,820,8,7,2,6344,7418,7482,7482,7418,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_5,819,8,7,2,6344,7585,7649,7649,7585,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_6,818,8,7,2,6344,7752,7816,7816,7752,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_7,817,8,7,2,6344,7916,7980,7980,7916,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_8,816,8,7,2,6344,8083,8147,8147,8083,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_9,815,8,7,2,6344,8244,8308,8308,8244,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_10,814,8,7,2,6344,8407,8471,8471,8407,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_11,813,8,7,2,6344,8574,8638,8638,8574,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_12,812,8,7,2,6344,8742,8806,8806,8742,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_13,811,8,7,2,6344,8905,8969,8969,8905,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_14,810,8,7,2,6344,9066,9130,9130,9066,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_15,809,8,7,2,6344,9233,9297,9297,9233,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_16,808,8,7,2,6344,9393,9457,9457,9393,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_17,807,8,7,2,6344,9561,9625,9625,9561,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_18,806,8,7,2,6344,9727,9791,9791,9727,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_19,805,8,7,2,6344,9895,9959,9959,9895,4698,46534,33146,,,,,,,,,,
1#AC2_2B_3_20,804,8,7,2,6344,10058,10122,10122,10058,4698,46534,33146,,,35,,,,,,,
1#AC2_2B_3_21,803,8,7,2,6344,10226,10290,10290,10226,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_1,802,8,7,2,5798,6,75,75,6,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_2,801,8,7,2,5798,170,239,239,170,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_3,800,8,7,2,5798,334,403,403,334,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_4,799,8,7,2,5798,498,567,567,498,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_5,798,8,7,2,5798,658,727,727,658,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_6,797,8,7,2,5798,832,901,901,832,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_7,796,8,7,2,5798,992,1061,1061,992,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_8,795,8,7,2,5798,1159,1228,1228,1159,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_9,794,8,7,2,5798,1326,1395,1395,1326,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_10,793,8,7,2,5798,1493,1562,1562,1493,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_11,792,8,7,2,5798,1657,1726,1726,1657,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_12,791,8,7,2,5798,1821,1890,1890,1821,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_13,790,8,7,2,5798,1985,2054,2054,1985,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_14,789,8,7,2,5798,2145,2214,2214,2145,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_15,788,8,7,2,5798,2313,2382,2382,2313,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_16,787,8,7,2,5798,2479,2548,2548,2479,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_17,786,8,7,2,5798,2643,2712,2712,2643,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_18,785,8,7,2,5798,2807,2876,2876,2807,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_19,784,8,7,2,5798,2974,3043,3043,2974,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_20,783,8,7,2,5798,3138,3207,3207,3138,4698,46534,33146,,,,,,,,,,
1#AC2_3A_1_21,782,8,7,2,5798,3308,3377,3377,3308,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_1,781,8,7,2,5798,3462,3531,3531,3462,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_2,780,8,7,2,5798,3626,3695,3695,3626,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_3,779,8,7,2,5798,3790,3859,3859,3790,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_4,778,8,7,2,5798,3957,4026,4026,3957,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_5,777,8,7,2,5798,4121,4190,4190,4121,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_6,776,8,7,2,5801,4278,4347,4347,4278,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_7,775,8,7,2,5801,4445,4514,4514,4445,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_8,774,8,7,2,5801,4612,4681,4681,4612,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_9,773,8,7,2,5801,4779,4848,4848,4779,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_10,772,8,7,2,5801,4943,5012,5012,4943,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_11,771,8,7,2,5801,5113,5182,5182,5113,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_12,770,8,7,2,5801,5274,5343,5343,5274,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_13,769,8,7,2,5801,5434,5503,5503,5434,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_14,768,8,7,2,5801,5605,5674,5674,5605,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_15,767,8,7,2,5801,5768,5837,5837,5768,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_16,766,8,7,2,5801,5932,6001,6001,5932,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_17,765,8,7,2,5801,6106,6175,6175,6106,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_18,764,8,7,2,5801,6260,6329,6329,6260,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_19,763,8,7,2,5801,6420,6489,6489,6420,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_20,762,8,7,2,5801,6591,6660,6660,6591,4698,46534,33146,,,,,,,,,,
1#AC2_3A_2_21,761,8,7,2,5801,6758,6827,6827,6758,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_1,760,8,7,2,5801,6920,6987,6987,6920,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_2,759,8,7,2,5801,7084,7151,7151,7084,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_3,758,8,7,2,5801,7251,7318,7318,7251,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_4,757,8,7,2,5801,7418,7485,7485,7418,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_5,756,8,7,2,5801,7579,7646,7646,7579,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_6,755,8,7,2,5801,7746,7813,7813,7746,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_7,754,8,7,2,5801,7910,7977,7977,7910,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_8,753,8,7,2,5801,8077,8144,8144,8077,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_9,752,8,7,2,5801,8240,8307,8307,8240,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_10,751,8,7,2,5801,8398,8465,8465,8398,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_11,750,8,7,2,5801,8568,8635,8635,8568,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_12,749,8,7,2,5801,8732,8799,8799,8732,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_13,748,8,7,2,5801,8895,8962,8962,8895,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_14,747,8,7,2,5801,9063,9130,9130,9063,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_15,746,8,7,2,5801,9230,9297,9297,9230,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_16,745,8,7,2,5801,9393,9460,9460,9393,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_17,744,8,7,2,5801,9551,9618,9618,9551,4698,46534,33146,,,38,,,,,,,
1#AC2_3A_3_18,743,8,7,2,5801,9721,9788,9788,9721,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_19,742,8,7,2,5801,9888,9955,9955,9888,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_20,741,8,7,2,5801,10052,10119,10119,10052,4698,46534,33146,,,,,,,,,,
1#AC2_3A_3_21,740,8,7,2,5801,10212,10279,10279,10212,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_1,739,8,7,2,5340,6,75,75,6,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_2,738,8,7,2,5340,170,239,239,170,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_3,737,8,7,2,5340,334,403,403,334,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_4,736,8,7,2,5340,498,567,567,498,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_5,735,8,7,2,5340,658,727,727,658,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_6,734,8,7,2,5340,832,901,901,832,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_7,733,8,7,2,5340,992,1061,1061,992,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_8,732,8,7,2,5340,1159,1228,1228,1159,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_9,731,8,7,2,5340,1326,1395,1395,1326,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_10,730,8,7,2,5340,1493,1562,1562,1493,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_11,729,8,7,2,5334,1657,1726,1726,1657,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_12,728,8,7,2,5334,1821,1890,1890,1821,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_13,727,8,7,2,5334,1985,2054,2054,1985,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_14,726,8,7,2,5334,2145,2214,2214,2145,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_15,725,8,7,2,5334,2313,2382,2382,2313,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_16,724,8,7,2,5334,2479,2548,2548,2479,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_17,723,8,7,2,5334,2643,2712,2712,2643,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_18,722,8,7,2,5334,2807,2876,2876,2807,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_19,721,8,7,2,5334,2974,3043,3043,2974,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_20,720,8,7,2,5334,3138,3207,3207,3138,4698,46534,33146,,,,,,,,,,
1#AC2_3B_1_21,719,8,7,2,5326,3308,3377,3377,3308,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_1,718,8,7,2,5344,3462,3531,3531,3462,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_2,717,8,7,2,5344,3626,3695,3695,3626,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_3,716,8,7,2,5344,3790,3859,3859,3790,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_4,715,8,7,2,5344,3957,4026,4026,3957,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_5,714,8,7,2,5344,4121,4190,4190,4121,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_6,713,8,7,2,5344,4278,4347,4347,4278,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_7,712,8,7,2,5344,4445,4514,4514,4445,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_8,711,8,7,2,5344,4612,4681,4681,4612,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_9,710,8,7,2,5344,4779,4848,4848,4779,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_10,709,8,7,2,5344,4943,5012,5012,4943,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_11,708,8,7,2,5344,5113,5182,5182,5113,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_12,707,8,7,2,5344,5274,5343,5343,5274,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_13,706,8,7,2,5344,5434,5503,5503,5434,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_14,705,8,7,2,5344,5605,5674,5674,5605,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_15,704,8,7,2,5344,5768,5837,5837,5768,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_16,703,8,7,2,5344,5932,6001,6001,5932,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_17,702,8,7,2,5344,6106,6175,6175,6106,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_18,701,8,7,2,5344,6260,6329,6329,6260,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_19,700,8,7,2,5344,6420,6489,6489,6420,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_20,699,8,7,2,5344,6591,6660,6660,6591,4698,46534,33146,,,,,,,,,,
1#AC2_3B_2_21,698,8,7,2,5344,6758,6827,6827,6758,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_1,697,8,7,2,5347,6920,6987,6987,6920,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_2,696,8,7,2,5347,7084,7151,7151,7084,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_3,695,8,7,2,5347,7251,7318,7318,7251,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_4,694,8,7,2,5347,7418,7485,7485,7418,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_5,693,8,7,2,5347,7579,7646,7646,7579,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_6,692,8,7,2,5350,7746,7813,7813,7746,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_7,691,8,7,2,5350,7910,7977,7977,7910,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_8,690,8,7,2,5350,8077,8144,8144,8077,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_9,689,8,7,2,5350,8240,8307,8307,8240,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_10,688,8,7,2,5350,8398,8465,8465,8398,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_11,687,8,7,2,5350,8568,8635,8635,8568,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_12,686,8,7,2,5350,8732,8799,8799,8732,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_13,685,8,7,2,5350,8895,8962,8962,8895,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_14,684,8,7,2,5350,9063,9130,9130,9063,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_15,683,8,7,2,5350,9230,9297,9297,9230,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_16,682,8,7,2,5353,9393,9460,9460,9393,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_17,681,8,7,2,5353,9551,9618,9618,9551,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_18,680,8,7,2,5353,9721,9788,9788,9721,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_19,679,8,7,2,5353,9888,9955,9955,9888,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_20,678,8,7,2,5353,10052,10119,10119,10052,4698,46534,33146,,,,,,,,,,
1#AC2_3B_3_21,677,8,7,2,5353,10212,10279,10279,10212,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_1,676,8,7,2,4802,9,107,107,9,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_2,675,8,7,2,4802,174,272,272,174,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_3,674,8,7,2,4802,337,435,435,337,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_4,673,8,7,2,4802,501,599,599,501,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_5,672,8,7,2,4802,659,757,757,659,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_6,671,8,7,2,4802,826,924,924,826,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_7,670,8,7,2,4802,993,1091,1091,993,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_8,669,8,7,2,4802,1156,1254,1254,1156,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_9,668,8,7,2,4802,1327,1425,1425,1327,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_10,667,8,7,2,4802,1494,1592,1592,1494,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_11,666,8,7,2,4802,1658,1756,1756,1658,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_12,665,8,7,2,4802,1821,1919,1919,1821,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_13,664,8,7,2,4802,1992,2090,2090,1992,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_14,663,8,7,2,4802,2149,2247,2247,2149,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_15,662,8,7,2,4802,2313,2411,2411,2313,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_16,661,8,7,2,4802,2483,2581,2581,2483,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_17,660,8,7,2,4802,2647,2745,2745,2647,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_18,659,8,7,2,4802,2884,2909,2909,2884,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_19,658,8,7,2,4802,2974,3072,3072,2974,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_20,657,8,7,2,4802,3138,3236,3236,3138,4698,46534,33146,,,,,,,,,,
1#AC2_4A_1_21,656,8,7,2,4802,3305,3403,3403,3305,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_1,655,8,7,2,4802,3475,3557,3557,3475,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_2,654,8,7,2,4802,3639,3721,3721,3639,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_3,653,8,7,2,4802,3806,3888,3888,3806,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_4,652,8,7,2,4802,3970,4052,4052,3970,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_5,651,8,7,2,4802,4127,4209,4209,4127,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_6,650,8,7,2,4802,4291,4373,4373,4291,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_7,649,8,7,2,4802,4461,4543,4543,4461,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_8,648,8,7,2,4802,4628,4710,4710,4628,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_9,647,8,7,2,4802,4792,4874,4874,4792,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_10,646,8,7,2,4802,4956,5038,5038,4956,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_11,645,8,7,2,4802,5123,5205,5205,5123,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_12,644,8,7,2,4802,5290,5372,5372,5290,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_13,643,8,7,2,4802,5457,5539,5539,5457,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_14,642,8,7,2,4802,5618,5700,5700,5618,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_15,641,8,7,2,4802,5781,5863,5863,5781,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_16,640,8,7,2,4802,5945,6027,6027,5945,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_17,639,8,7,2,4802,6109,6191,6191,6109,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_18,638,8,7,2,4802,6279,6361,6361,6279,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_19,637,8,7,2,4802,6446,6528,6528,6446,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_20,636,8,7,2,4802,6604,6686,6686,6604,4698,46534,33146,,,,,,,,,,
1#AC2_4A_2_21,635,8,7,2,4802,6774,6856,6856,6774,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_1,634,8,7,2,4810,6944,7017,7017,6944,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_2,633,8,7,2,4810,7094,7167,7167,7094,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_3,632,8,7,2,4810,7271,7344,7344,7271,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_4,631,8,7,2,4810,7442,7515,7515,7442,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_5,630,8,7,2,4810,7602,7675,7675,7602,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_6,629,8,7,2,4810,7766,7839,7839,7766,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_7,628,8,7,2,4810,7929,8002,8002,7929,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_8,627,8,7,2,4810,8093,8166,8166,8093,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_9,626,8,7,2,4810,8260,8333,8333,8260,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_10,625,8,7,2,4810,8424,8497,8497,8424,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_11,624,8,7,2,4810,8591,8664,8664,8591,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_12,623,8,7,2,4810,8755,8828,8828,8755,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_13,622,8,7,2,4810,8915,8988,8988,8915,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_14,621,8,7,2,4810,9079,9152,9152,9079,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_15,620,8,7,2,4810,9250,9323,9323,9250,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_16,619,8,7,2,4810,9414,9487,9487,9414,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_17,618,8,7,2,4810,9581,9654,9654,9581,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_18,617,8,7,2,4810,9748,9821,9821,9748,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_19,616,8,7,2,4810,9908,9981,9981,9908,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_20,615,8,7,2,4810,10072,10145,10145,10072,4698,46534,33146,,,,,,,,,,
1#AC2_4A_3_21,614,8,7,2,4810,10236,10309,10309,10236,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_1,613,8,7,2,4348,4,107,107,4,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_2,612,8,7,2,4348,169,272,272,169,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_3,611,8,7,2,4348,332,435,435,332,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_4,610,8,7,2,4348,496,599,599,496,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_5,609,8,7,2,4348,654,757,757,654,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_6,608,8,7,2,4348,821,924,924,821,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_7,607,8,7,2,4348,988,1091,1091,988,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_8,606,8,7,2,4348,1151,1254,1254,1151,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_9,605,8,7,2,4348,1322,1425,1425,1322,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_10,604,8,7,2,4348,1489,1592,1592,1489,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_11,603,8,7,2,4348,1653,1756,1756,1653,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_12,602,8,7,2,4348,1816,1919,1919,1816,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_13,601,8,7,2,4348,1987,2090,2090,1987,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_14,600,8,7,2,4348,2144,2247,2247,2144,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_15,599,8,7,2,4348,2308,2411,2411,2308,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_16,598,8,7,2,4348,2478,2581,2581,2478,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_17,597,8,7,2,4348,2642,2745,2745,2642,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_18,596,8,7,2,4348,2806,2909,2909,2806,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_19,595,8,7,2,4348,2969,3072,3072,2969,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_20,594,8,7,2,4348,3133,3236,3236,3133,4698,46534,33146,,,,,,,,,,
1#AC2_4B_1_21,593,8,7,2,4348,3300,3403,3403,3300,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_1,592,8,7,2,4342,3470,3557,3557,3470,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_2,591,8,7,2,4342,3634,3721,3721,3634,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_3,590,8,7,2,4342,3801,3888,3888,3801,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_4,589,8,7,2,4342,3965,4052,4052,3965,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_5,588,8,7,2,4342,4122,4209,4209,4122,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_6,587,8,7,2,4342,4286,4373,4373,4286,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_7,586,8,7,2,4342,4456,4543,4543,4456,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_8,585,8,7,2,4342,4623,4710,4710,4623,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_9,584,8,7,2,4342,4787,4874,4874,4787,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_10,583,8,7,2,4342,4951,5038,5038,4951,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_11,582,8,7,2,4342,5118,5205,5205,5118,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_12,581,8,7,2,4342,5285,5372,5372,5285,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_13,580,8,7,2,4342,5452,5539,5539,5452,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_14,579,8,7,2,4336,5613,5700,5700,5613,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_15,578,8,7,2,4336,5776,5863,5863,5776,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_16,577,8,7,2,4336,5940,6027,6027,5940,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_17,576,8,7,2,4336,6104,6191,6191,6104,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_18,575,8,7,2,4336,6274,6361,6361,6274,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_19,574,8,7,2,4336,6441,6528,6528,6441,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_20,573,8,7,2,4336,6599,6686,6686,6599,4698,46534,33146,,,,,,,,,,
1#AC2_4B_2_21,572,8,7,2,4336,6769,6856,6856,6769,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_1,571,8,7,2,4357,6914,7017,7017,6914,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_2,570,8,7,2,4357,7064,7167,7167,7064,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_3,569,8,7,2,4357,7241,7344,7344,7241,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_4,568,8,7,2,4357,7412,7515,7515,7412,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_5,567,8,7,2,4357,7572,7675,7675,7572,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_6,566,8,7,2,4357,7736,7839,7839,7736,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_7,565,8,7,2,4357,7899,8002,8002,7899,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_8,564,8,7,2,4357,8063,8166,8166,8063,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_9,563,8,7,2,4357,8230,8333,8333,8230,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_10,562,8,7,2,4357,8394,8497,8497,8394,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_11,561,8,7,2,4357,8561,8664,8664,8561,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_12,560,8,7,2,4357,8725,8828,8828,8725,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_13,559,8,7,2,4357,8885,8988,8988,8885,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_14,558,8,7,2,4357,9049,9152,9152,9049,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_15,557,8,7,2,4357,9220,9323,9323,9220,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_16,556,8,7,2,4357,9384,9487,9487,9384,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_17,555,8,7,2,4357,9551,9654,9654,9551,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_18,554,8,7,2,4357,9718,9821,9821,9718,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_19,553,8,7,2,4357,9878,9981,9981,9878,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_20,552,8,7,2,4357,10042,10145,10145,10042,4698,46534,33146,,,,,,,,,,
1#AC2_4B_3_21,551,8,7,2,4357,10206,10309,10309,10206,4698,46534,33146,,,,,,,,,,
1#AC2_5A_1_1,550,8,7,2,3805,41,115,115,41,4698,46534,33146,127,,,,,,,,,
1#AC2_5A_1_2,549,8,7,2,3805,205,279,279,205,4698,46534,33146,291,,,,,,,,,
1#AC2_5A_1_3,548,8,7,2,3805,365,439,439,365,4698,46534,33146,451,,,,,,,,,
1#AC2_5A_1_4,547,8,7,2,3805,532,606,606,532,4698,46534,33146,618,,,,,,,,,
1#AC2_5A_1_5,546,8,7,2,3805,693,767,767,693,4698,46534,33146,779,,,,,,,,,
1#AC2_5A_1_6,545,8,7,2,3805,857,931,931,857,4698,46534,33146,943,,,,,,,,,
1#AC2_5A_1_7,544,8,7,2,3805,1027,1101,1101,1027,4698,46534,33146,1113,,,,,,,,,
1#AC2_5A_1_8,543,8,7,2,3805,1191,1265,1265,1191,4698,46534,33146,1277,,,,,,,,,
1#AC2_5A_1_9,542,8,7,2,3805,1355,1429,1429,1355,4698,46534,33146,1441,,,,,,,,,
1#AC2_5A_1_10,541,8,7,2,3805,1515,1589,1589,1515,4698,46534,33146,1601,,,,,,,,,
1#AC2_5A_1_11,540,8,7,2,3805,1686,1760,1760,1686,4698,46534,33146,1772,,,,,,,,,
1#AC2_5A_1_12,539,8,7,2,3805,1849,1923,1923,1849,4698,46534,33146,1935,,,,,,,,,
1#AC2_5A_1_13,538,8,7,2,3805,2016,2090,2090,2016,4698,46534,33146,2102,,,,,,,,,
1#AC2_5A_1_14,537,8,7,2,3805,2180,2254,2254,2180,4698,46534,33146,2266,,,,,,,,,
1#AC2_5A_1_15,536,8,7,2,3805,2344,2418,2418,2344,4698,46534,33146,2430,,,,,,,,,
1#AC2_5A_1_16,535,8,7,2,3805,2508,2582,2582,2508,4698,46534,33146,2594,,,,,,,,,
1#AC2_5A_1_17,534,8,7,2,3805,2675,2749,2749,2675,4698,46534,33146,2761,,,,,,,,,
1#AC2_5A_1_18,533,8,7,2,3805,2835,2909,2909,2835,4698,46534,33146,2921,,,,,,,,,
1#AC2_5A_1_19,532,8,7,2,3805,2999,3073,3073,2999,4698,46534,33146,3085,,,,,,,,,
1#AC2_5A_1_20,531,8,7,2,3805,3169,3243,3243,3169,4698,46534,33146,3255,,,,,,,,,
1#AC2_5A_1_21,530,8,7,2,3805,3336,3410,3410,3336,4698,46534,33146,3422,,,,,,,,,
1#AC2_5A_2_1,529,8,7,2,3805,3487,3557,3557,3487,4698,46534,33146,3565,,,,,,,,,
1#AC2_5A_2_2,528,8,7,2,3805,3651,3721,3721,3651,4698,46534,33146,3729,,,,,,,,,
1#AC2_5A_2_3,527,8,7,2,3805,3818,3888,3888,3818,4698,46534,33146,3896,,,,,,,,,
1#AC2_5A_2_4,526,8,7,2,3805,3992,4062,4062,3992,4698,46534,33146,4070,,,,,,,,,
1#AC2_5A_2_5,525,8,7,2,3805,4149,4219,4219,4149,4698,46534,33146,4227,,,,,,,,,
1#AC2_5A_2_6,524,8,7,2,3805,4316,4386,4386,4316,4698,46534,33146,4394,,,,,,,,,
1#AC2_5A_2_7,523,8,7,2,3805,4480,4550,4550,4480,4698,46534,33146,4558,,,,,,,,,
1#AC2_5A_2_8,522,8,7,2,3805,4641,4711,4711,4641,4698,46534,33146,4719,,,,,,,,,
1#AC2_5A_2_9,521,8,7,2,3805,4807,4877,4877,4807,4698,46534,33146,4885,,,,,,,,,
1#AC2_5A_2_10,520,8,7,2,3805,4974,5044,5044,4974,4698,46534,33146,5052,,,,,,,,,
1#AC2_5A_2_11,519,8,7,2,3808,5138,5208,5208,5138,4698,46534,33146,5216,,,,,,,,,
1#AC2_5A_2_12,518,8,7,2,3808,5299,5369,5369,5299,4698,46534,33146,5377,,,,,,,,,
1#AC2_5A_2_13,517,8,7,2,3808,5466,5536,5536,5466,4698,46534,33146,5544,,,,,,,,,
1#AC2_5A_2_14,516,8,7,2,3808,5633,5703,5703,5633,4698,46534,33146,5711,,,,,,,,,
1#AC2_5A_2_15,515,8,7,2,3808,5800,5870,5870,5800,4698,46534,33146,5878,,,,,,,,,
1#AC2_5A_2_16,514,8,7,2,3808,5964,6034,6034,5964,4698,46534,33146,6042,,,,,,,,,
1#AC2_5A_2_17,513,8,7,2,3808,6124,6194,6194,6124,4698,46534,33146,6202,,,,,,,,,
1#AC2_5A_2_18,512,8,7,2,3808,6285,6355,6355,6285,4698,46534,33146,6363,,,,,,,,,
1#AC2_5A_2_19,511,8,7,2,3808,6455,6525,6525,6455,4698,46534,33146,6533,,,,,,,,,
1#AC2_5A_2_20,510,8,7,2,3808,6619,6689,6689,6619,4698,46534,33146,6697,,,,,,,,,
1#AC2_5A_2_21,509,8,7,2,3808,6789,6859,6859,6789,4698,46534,33146,6867,,,,,,,,,
1#AC2_5A_3_1,508,8,7,2,3812,6936,7007,7007,6936,4698,46534,33146,7015,,,,,,,,,
1#AC2_5A_3_2,507,8,7,2,3812,7103,7174,7174,7103,4698,46534,33146,7182,,,,,,,,,
1#AC2_5A_3_3,506,8,7,2,3812,7266,7337,7337,7266,4698,46534,33146,7345,,,,,,,,,
1#AC2_5A_3_4,505,8,7,2,3812,7430,7501,7501,7430,4698,46534,33146,7509,,,,,,,,,
1#AC2_5A_3_5,504,8,7,2,3812,7591,7662,7662,7591,4698,46534,33146,7670,,,,,,,,,
1#AC2_5A_3_6,503,8,7,2,3812,7755,7826,7826,7755,4698,46534,33146,7834,,,,,,,,,
1#AC2_5A_3_7,502,8,7,2,3812,7925,7996,7996,7925,4698,46534,33146,8004,,,,,,,,,
1#AC2_5A_3_8,501,8,7,2,3812,8092,8163,8163,8092,4698,46534,33146,8171,,,,,,,,,
1#AC2_5A_3_9,500,8,7,2,3812,8259,8330,8330,8259,4698,46534,33146,8338,,,,,,,,,
1#AC2_5A_3_10,499,8,7,2,3812,8426,8497,8497,8426,4698,46534,33146,8505,,,,,,,,,
1#AC2_5A_3_11,498,8,7,2,3812,8587,8658,8658,8587,4698,46534,33146,8666,,,,,,,,,
1#AC2_5A_3_12,497,8,7,2,3812,8751,8822,8822,8751,4698,46534,33146,8830,,,,,,,,,
1#AC2_5A_3_13,496,8,7,2,3812,8914,8985,8985,8914,4698,46534,33146,8993,,,,,,,,,
1#AC2_5A_3_14,495,8,7,2,3812,9078,9149,9149,9078,4698,46534,33146,9157,,,,,,,,,
1#AC2_5A_3_15,494,8,7,2,3812,9239,9310,9310,9239,4698,46534,33146,9318,,,,,,,,,
1#AC2_5A_3_16,493,8,7,2,3812,9412,9483,9483,9412,4698,46534,33146,9491,,,,,,,,,
1#AC2_5A_3_17,492,8,7,2,3812,9579,9650,9650,9579,4698,46534,33146,9658,,,,,,,,,
1#AC2_5A_3_18,491,8,7,2,3812,9743,9814,9814,9743,4698,46534,33146,9822,,,,,,,,,
1#AC2_5A_3_19,490,8,7,2,3812,9900,9971,9971,9900,4698,46534,33146,9979,,,,,,,,,
1#AC2_5A_3_20,489,8,7,2,3812,10071,10142,10142,10071,4698,46534,33146,10150,,,,,,,,,
1#AC2_5A_3_21,488,8,7,2,3812,10238,10309,10309,10238,4698,46534,33146,10317,,,,,,,,,
1#AC2_5B_1_1,487,8,7,2,3349,41,115,115,41,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_2,486,8,7,2,3349,205,279,279,205,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_3,485,8,7,2,3349,365,439,439,365,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_4,484,8,7,2,3349,532,606,606,532,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_5,483,8,7,2,3349,693,767,767,693,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_6,482,8,7,2,3349,857,931,931,857,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_7,481,8,7,2,3349,1027,1101,1101,1027,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_8,480,8,7,2,3349,1191,1265,1265,1191,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_9,479,8,7,2,3349,1355,1429,1429,1355,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_10,478,8,7,2,3349,1515,1589,1589,1515,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_11,477,8,7,2,3349,1686,1760,1760,1686,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_12,476,8,7,2,3349,1849,1923,1923,1849,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_13,475,8,7,2,3349,2016,2090,2090,2016,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_14,474,8,7,2,3349,2180,2254,2254,2180,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_15,473,8,7,2,3349,2344,2418,2418,2344,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_16,472,8,7,2,3349,2508,2582,2582,2508,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_17,471,8,7,2,3349,2675,2749,2749,2675,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_18,470,8,7,2,3349,2835,2909,2909,2835,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_19,469,8,7,2,3349,2999,3073,3073,2999,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_20,468,8,7,2,3349,3169,3243,3243,3169,4698,46534,33146,,,,,,,,,,
1#AC2_5B_1_21,467,8,7,2,3349,3336,3410,3410,3336,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_1,466,8,7,2,3349,3487,3557,3557,3487,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_2,465,8,7,2,3349,3651,3721,3721,3651,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_3,464,8,7,2,3349,3818,3888,3888,3818,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_4,463,8,7,2,3349,3992,4062,4062,3992,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_5,462,8,7,2,3349,4149,4219,4219,4149,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_6,461,8,7,2,3349,4316,4386,4386,4316,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_7,460,8,7,2,3349,4480,4550,4550,4480,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_8,459,8,7,2,3349,4641,4711,4711,4641,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_9,458,8,7,2,3349,4807,4877,4877,4807,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_10,457,8,7,2,3349,4974,5044,5044,4974,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_11,456,8,7,2,3349,5138,5208,5208,5138,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_12,455,8,7,2,3349,5299,5369,5369,5299,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_13,454,8,7,2,3349,5466,5536,5536,5466,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_14,453,8,7,2,3349,5633,5703,5703,5633,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_15,452,8,7,2,3349,5800,5870,5870,5800,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_16,451,8,7,2,3349,5964,6034,6034,5964,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_17,450,8,7,2,3349,6124,6194,6194,6124,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_18,449,8,7,2,3349,6285,6355,6355,6285,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_19,448,8,7,2,3349,6455,6525,6525,6455,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_20,447,8,7,2,3349,6619,6689,6689,6619,4698,46534,33146,,,,,,,,,,
1#AC2_5B_2_21,446,8,7,2,3349,6789,6859,6859,6789,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_1,445,8,7,2,3355,6936,7007,7007,6936,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_2,444,8,7,2,3355,7103,7174,7174,7103,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_3,443,8,7,2,3355,7266,7337,7337,7266,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_4,442,8,7,2,3355,7430,7501,7501,7430,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_5,441,8,7,2,3355,7591,7662,7662,7591,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_6,440,8,7,2,3355,7755,7826,7826,7755,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_7,439,8,7,2,3355,7925,7996,7996,7925,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_8,438,8,7,2,3355,8092,8163,8163,8092,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_9,437,8,7,2,3355,8259,8330,8330,8259,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_10,436,8,7,2,3355,8426,8497,8497,8426,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_11,435,8,7,2,3355,8587,8658,8658,8587,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_12,434,8,7,2,3355,8751,8822,8822,8751,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_13,433,8,7,2,3355,8914,8985,8985,8914,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_14,432,8,7,2,3355,9078,9149,9149,9078,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_15,431,8,7,2,3355,9239,9310,9310,9239,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_16,430,8,7,2,3355,9412,9483,9483,9412,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_17,429,8,7,2,3355,9579,9650,9650,9579,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_18,428,8,7,2,3355,9743,9814,9814,9743,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_19,427,8,7,2,3355,9900,9971,9971,9900,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_20,426,8,7,2,3355,10071,10142,10142,10071,4698,46534,33146,,,,,,,,,,
1#AC2_5B_3_21,425,8,7,2,3355,10238,10309,10309,10238,4698,46534,33146,,,,,,,,,,
1#AC2_6A_1_1,424,12,7,2,2809,26,89,89,26,4698,43639,30303,117,62,,,,,,,,
1#AC2_6A_1_2,423,12,7,2,2809,213,276,276,213,4698,43639,30303,304,249,,,,,,,,
1#AC2_6A_1_3,422,12,7,2,2809,396,459,459,396,4698,43639,30303,487,432,,,,,,,,
1#AC2_6A_1_4,421,12,7,2,2809,587,650,650,587,4698,43639,30303,678,623,,,,,,,,
1#AC2_6A_1_5,420,12,7,2,2809,773,836,836,773,4698,43639,30303,864,809,,,,,,,,
1#AC2_6A_1_6,419,12,7,2,2809,963,1026,1026,963,4698,43639,30303,1054,999,,,,,,,,
1#AC2_6A_1_7,418,12,7,2,2809,1153,1216,1216,1153,4698,43639,30303,1244,1189,,,,,,,,
1#AC2_6A_1_8,417,12,7,2,2809,1343,1406,1406,1343,4698,43639,30303,1434,1379,,,,,,,,
1#AC2_6A_1_9,416,12,7,2,2809,1523,1586,1586,1523,4698,43639,30303,1614,1559,,,,,,,,
1#AC2_6A_1_10,415,12,7,2,2809,1710,1773,1773,1710,4698,43639,30303,1801,1746,,,,,,,,
1#AC2_6A_1_11,414,12,7,2,2809,1893,1956,1956,1893,4698,43639,30303,1984,1929,,,,,,,,
1#AC2_6A_1_12,413,12,7,2,2809,2083,2146,2146,2083,4698,43639,30303,2174,2119,,,,,,,,
1#AC2_6A_1_13,412,12,7,2,2809,2270,2333,2333,2270,4698,43639,30303,2361,2306,,,,,,,,
1#AC2_6A_1_14,411,12,7,2,2809,2460,2523,2523,2460,4698,43639,30303,2551,2496,,,,,,,,
1#AC2_6A_1_15,410,12,7,2,2809,2650,2713,2713,2650,4698,43639,30303,2741,2686,,,,,,,,
1#AC2_6A_1_16,409,12,7,2,2809,2833,2896,2896,2833,4698,43639,30303,2924,2869,,,,,,,,
1#AC2_6A_1_17,408,12,7,2,2809,3017,3080,3080,3017,4698,43639,30303,3108,3053,,,,,,,,
1#AC2_6A_1_18,407,12,7,2,2809,3210,3273,3273,3210,4698,43639,30303,3301,3246,,,,,,,,
1#AC2_6A_2_1,406,12,7,2,2809,3387,3446,3446,3387,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_2,405,12,7,2,2809,3573,3632,3632,3573,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_3,404,12,7,2,2809,3757,3816,3816,3757,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_4,403,12,7,2,2809,3943,4002,4002,3943,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_5,402,12,7,2,2809,4133,4192,4192,4133,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_6,401,12,7,2,2809,4326,4385,4385,4326,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_7,400,12,7,2,2809,4510,4569,4569,4510,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_8,399,12,7,2,2809,4694,4753,4753,4694,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_9,398,12,7,2,2809,4887,4946,4946,4887,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_10,397,12,7,2,2809,5070,5129,5129,5070,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_11,396,12,7,2,2809,5263,5322,5322,5263,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_12,395,12,7,2,2809,5450,5509,5509,5450,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_13,394,12,7,2,2815,5640,5699,5699,5640,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_14,393,12,7,2,2815,5824,5883,5883,5824,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_15,392,12,7,2,2815,6007,6066,6066,6007,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_16,391,12,7,2,2815,6197,6256,6256,6197,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_17,390,12,7,2,2815,6387,6446,6446,6387,4698,43639,30303,,,,,,,,,,
1#AC2_6A_2_18,389,12,7,2,2815,6574,6633,6633,6574,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_1,388,12,7,2,2815,6739,6806,6806,6739,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_2,387,12,7,2,2815,6929,6996,6996,6929,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_3,386,12,7,2,2821,7123,7190,7190,7123,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_4,385,12,7,2,2821,7313,7380,7380,7313,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_5,384,12,7,2,2821,7496,7563,7563,7496,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_6,383,12,7,2,2821,7683,7750,7750,7683,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_7,382,12,7,2,2821,7869,7936,7936,7869,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_8,381,12,7,2,2821,8056,8123,8123,8056,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_9,380,12,7,2,2821,8246,8313,8313,8246,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_10,379,12,7,2,2821,8436,8503,8503,8436,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_11,378,12,7,2,2821,8623,8690,8690,8623,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_12,377,12,7,2,2821,8813,8880,8880,8813,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_13,376,12,7,2,2821,8996,9063,9063,8996,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_14,375,12,7,2,2821,9180,9247,9247,9180,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_15,374,12,7,2,2821,9370,9437,9437,9370,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_16,373,12,7,2,2821,9560,9627,9627,9560,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_17,372,12,7,2,2821,9746,9813,9813,9746,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_18,371,12,7,2,2821,9937,10004,10004,9937,4698,43639,30303,,,,,,,,,,
1#AC2_6A_3_19,370,12,7,2,2821,10117,10184,10184,10117,4698,43639,30303,,,,,,,,,,
1#AC2_6B_1_1,369,12,7,2,2352,10,81,81,10,4698,43639,30303,30,,,,,,,,,
1#AC2_6B_1_2,368,12,7,2,2352,197,268,268,197,4698,43639,30303,217,,,,,,,,,
1#AC2_6B_1_3,367,12,7,2,2352,380,451,451,380,4698,43639,30303,400,,,,,,,,,
1#AC2_6B_1_4,366,12,7,2,2352,571,642,642,571,4698,43639,30303,591,,,,,,,,,
1#AC2_6B_1_5,365,12,7,2,2352,757,828,828,757,4698,43639,30303,777,,,,,,,,,
1#AC2_6B_1_6,364,12,7,2,2352,947,1018,1018,947,4698,43639,30303,967,,,,,,,,,
1#AC2_6B_1_7,363,12,7,2,2352,1137,1208,1208,1137,4698,43639,30303,1157,,,,,,,,,
1#AC2_6B_1_8,362,12,7,2,2352,1327,1398,1398,1327,4698,43639,30303,1347,,,,,,,,,
1#AC2_6B_1_9,361,12,7,2,2352,1507,1578,1578,1507,4698,43639,30303,1527,,,,,,,,,
1#AC2_6B_1_10,360,12,7,2,2352,1694,1765,1765,1694,4698,43639,30303,1714,,,,,,,,,
1#AC2_6B_1_11,359,12,7,2,2352,1877,1948,1948,1877,4698,43639,30303,1897,,,,,,,,,
1#AC2_6B_1_12,358,12,7,2,2352,2067,2138,2138,2067,4698,43639,30303,2087,,,,,,,,,
1#AC2_6B_1_13,357,12,7,2,2352,2254,2325,2325,2254,4698,43639,30303,2274,,,,,,,,,
1#AC2_6B_1_14,356,12,7,2,2352,2444,2515,2515,2444,4698,43639,30303,2464,,,,,,,,,
1#AC2_6B_1_15,355,12,7,2,2352,2634,2705,2705,2634,4698,43639,30303,2654,,,,,,,,,
1#AC2_6B_1_16,354,12,7,2,2352,2817,2888,2888,2817,4698,43639,30303,2837,,,,,,,,,
1#AC2_6B_1_17,353,12,7,2,2352,3001,3072,3072,3001,4698,43639,30303,3021,,,,,,,,,
1#AC2_6B_1_18,352,12,7,2,2352,3194,3265,3265,3194,4698,43639,30303,3214,,,,,,,,,
1#AC2_6B_2_1,351,12,7,2,2357,3387,3446,3446,3387,4698,43639,30303,3419,,,,,,,,,
1#AC2_6B_2_2,350,12,7,2,2357,3573,3632,3632,3573,4698,43639,30303,3605,,,,,,,,,
1#AC2_6B_2_3,349,12,7,2,2357,3757,3816,3816,3757,4698,43639,30303,3789,,,,,,,,,
1#AC2_6B_2_4,348,12,7,2,2357,3943,4002,4002,3943,4698,43639,30303,3975,,,,,,,,,
1#AC2_6B_2_5,347,12,7,2,2357,4133,4192,4192,4133,4698,43639,30303,4165,,,,,,,,,
1#AC2_6B_2_6,346,12,7,2,2357,4326,4385,4385,4326,4698,43639,30303,4358,,,,,,,,,
1#AC2_6B_2_7,345,12,7,2,2357,4510,4569,4569,4510,4698,43639,30303,4542,,,,,,,,,
1#AC2_6B_2_8,344,12,7,2,2357,4694,4753,4753,4694,4698,43639,30303,4726,,,,,,,,,
1#AC2_6B_2_9,343,12,7,2,2357,4887,4946,4946,4887,4698,43639,30303,4919,,,,,,,,,
1#AC2_6B_2_10,342,12,7,2,2357,5070,5129,5129,5070,4698,43639,30303,5102,,,,,,,,,
1#AC2_6B_2_11,341,12,7,2,2357,5263,5322,5322,5263,4698,43639,30303,5295,,,,,,,,,
1#AC2_6B_2_12,340,12,7,2,2357,5450,5509,5509,5450,4698,43639,30303,5482,,,,,,,,,
1#AC2_6B_2_13,339,12,7,2,2357,5640,5699,5699,5640,4698,43639,30303,5672,,,,,,,,,
1#AC2_6B_2_14,338,12,7,2,2357,5824,5883,5883,5824,4698,43639,30303,5856,,,,,,,,,
1#AC2_6B_2_15,337,12,7,2,2357,6007,6066,6066,6007,4698,43639,30303,6039,,,,,,,,,
1#AC2_6B_2_16,336,12,7,2,2357,6197,6256,6256,6197,4698,43639,30303,6229,,,,,,,,,
1#AC2_6B_2_17,335,12,7,2,2357,6387,6446,6446,6387,4698,43639,30303,6419,,,,,,,,,
1#AC2_6B_2_18,334,12,7,2,2357,6574,6633,6633,6574,4698,43639,30303,6606,,,,,,,,,
1#AC2_6B_3_1,333,12,7,2,2365,6739,6806,6806,6739,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_2,332,12,7,2,2365,6929,6996,6996,6929,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_3,331,12,7,2,2365,7123,7190,7190,7123,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_4,330,12,7,2,2365,7313,7380,7380,7313,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_5,329,12,7,2,2365,7496,7563,7563,7496,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_6,328,12,7,2,2365,7683,7750,7750,7683,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_7,327,12,7,2,2365,7869,7936,7936,7869,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_8,326,12,7,2,2365,8056,8123,8123,8056,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_9,325,12,7,2,2365,8246,8313,8313,8246,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_10,324,12,7,2,2365,8436,8503,8503,8436,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_11,323,12,7,2,2365,8623,8690,8690,8623,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_12,322,12,7,2,2365,8813,8880,8880,8813,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_13,321,12,7,2,2365,8996,9063,9063,8996,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_14,320,12,7,2,2365,9180,9247,9247,9180,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_15,319,12,7,2,2365,9370,9437,9437,9370,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_16,318,12,7,2,2365,9560,9627,9627,9560,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_17,317,12,7,2,2365,9746,9813,9813,9746,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_18,316,12,7,2,2365,9937,10004,10004,9937,4698,43639,30303,,,,,,,,,,
1#AC2_6B_3_19,315,12,7,2,2365,10117,10184,10184,10117,4698,43639,30303,,,,,,,,,,
1#AC2_7A_1_1,314,12,7,2,1812,36,97,97,36,4698,43639,30303,76,,,,,,,,,
1#AC2_7A_1_2,313,12,7,2,1812,216,277,277,216,4698,43639,30303,256,,,,,,,,,
1#AC2_7A_1_3,312,12,7,2,1812,406,467,467,406,4698,43639,30303,446,,,,,,,,,
1#AC2_7A_1_4,311,12,7,2,1812,593,654,654,593,4698,43639,30303,633,,,,,,,,,
1#AC2_7A_1_5,310,12,7,2,1812,780,841,841,780,4698,43639,30303,820,,,,,,,,,
1#AC2_7A_1_6,309,12,7,2,1812,963,1024,1024,963,4698,43639,30303,1003,,,,,,,,,
1#AC2_7A_1_7,308,12,7,2,1812,1150,1211,1211,1150,4698,43639,30303,1190,,,,,,,,,
1#AC2_7A_1_8,307,12,7,2,1812,1340,1401,1401,1340,4698,43639,30303,1380,,,,,,,,,
1#AC2_7A_1_9,306,12,7,2,1812,1527,1588,1588,1527,4698,43639,30303,1567,,,,,,,,,
1#AC2_7A_1_10,305,12,7,2,1812,1717,1778,1778,1717,4698,43639,30303,1757,,,,,,,,,
1#AC2_7A_1_11,304,12,7,2,1812,1904,1965,1965,1904,4698,43639,30303,1944,,,,,,,,,
1#AC2_7A_1_12,303,12,7,2,1812,2093,2154,2154,2093,4698,43639,30303,2133,,,,,,,,,
1#AC2_7A_1_13,302,12,7,2,1812,2277,2338,2338,2277,4698,43639,30303,2317,,,,,,,,,
1#AC2_7A_1_14,301,12,7,2,1812,2464,2525,2525,2464,4698,43639,30303,2504,,,,,,,,,
1#AC2_7A_1_15,300,12,7,2,1812,2650,2711,2711,2650,4698,43639,30303,2690,,,,,,,,,
1#AC2_7A_1_16,299,12,7,2,1812,2837,2898,2898,2837,4698,43639,30303,2877,,,,,,,,,
1#AC2_7A_1_17,298,12,7,2,1812,3027,3088,3088,3027,4698,43639,30303,3067,,,,,,,,,
1#AC2_7A_1_18,297,12,7,2,1812,3220,3281,3281,3220,4698,43639,30303,3260,,,,,,,,,
1#AC2_7A_1_19,296,12,7,2,1812,3397,3458,3458,3397,4698,43639,30303,3437,,,,,,,,,
1#AC2_7A_1_20,295,12,7,2,1812,3587,3648,3648,3587,4698,43639,30303,3627,,,,,,,,,
1#AC2_7A_1_21,294,12,7,2,1812,3777,3838,3838,3777,4698,43639,30303,3817,,,,,,,,,
1#AC2_7A_1_22,293,12,7,2,1812,3967,4028,4028,3967,4698,43639,30303,4007,,,,,,,,,
1#AC2_7A_1_23,292,12,7,2,1812,4151,4212,4212,4151,4698,43639,30303,4191,,,,,,,,,
1#AC2_7A_1_24,291,12,7,2,1812,4337,4398,4398,4337,4698,43639,30303,4377,,,,,,,,,
1#AC2_7A_2_1,290,12,7,2,1817,6010,6072,6072,6010,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_2,289,12,7,2,1817,6197,6259,6259,6197,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_3,288,12,7,2,1817,6384,6446,6446,6384,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_4,287,12,7,2,1817,6571,6633,6633,6571,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_5,286,12,7,2,1817,6757,6819,6819,6757,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_6,285,12,7,2,1817,6947,7009,7009,6947,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_7,284,12,7,2,1817,7137,7199,7199,7137,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_8,283,12,7,2,1817,7327,7389,7389,7327,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_9,282,12,7,2,1817,7514,7576,7576,7514,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_10,281,12,7,2,1817,7697,7759,7759,7697,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_11,280,12,7,2,1817,7884,7946,7946,7884,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_12,279,12,7,2,1817,8071,8133,8133,8071,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_13,278,12,7,2,1817,8261,8323,8323,8261,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_14,277,12,7,2,1823,8451,8513,8513,8451,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_15,276,12,7,2,1823,8641,8703,8703,8641,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_16,275,12,7,2,1823,8824,8886,8886,8824,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_17,274,12,7,2,1823,9011,9073,9073,9011,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_18,273,12,7,2,1823,9198,9260,9260,9198,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_19,272,12,7,2,1823,9384,9446,9446,9384,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_20,271,12,7,2,1823,9574,9636,9636,9574,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_21,270,12,7,2,1823,9768,9830,9830,9768,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_22,269,12,7,2,1823,9948,10010,10010,9948,4698,43639,30303,,,,,,,,,,
1#AC2_7A_2_23,268,12,7,2,1823,10132,10194,10194,10132,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_1,267,12,7,2,1349,16,82,82,16,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_2,266,12,7,2,1349,196,262,262,196,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_3,265,12,7,2,1349,386,452,452,386,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_4,264,12,7,2,1349,573,639,639,573,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_5,263,12,7,2,1349,760,826,826,760,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_6,262,12,7,2,1349,943,1009,1009,943,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_7,261,12,7,2,1349,1130,1196,1196,1130,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_8,260,12,7,2,1349,1320,1386,1386,1320,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_9,259,12,7,2,1349,1507,1573,1573,1507,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_10,258,12,7,2,1349,1697,1763,1763,1697,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_11,257,12,7,2,1349,1884,1950,1950,1884,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_12,256,12,7,2,1349,2073,2139,2139,2073,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_13,255,12,7,2,1349,2257,2323,2323,2257,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_14,254,12,7,2,1349,2444,2510,2510,2444,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_15,253,12,7,2,1349,2630,2696,2696,2630,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_16,252,12,7,2,1349,2817,2883,2883,2817,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_17,251,12,7,2,1349,3007,3073,3073,3007,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_18,250,12,7,2,1349,3200,3266,3266,3200,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_19,249,12,7,2,1349,3377,3443,3443,3377,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_20,248,12,7,2,1349,3567,3633,3633,3567,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_21,247,12,7,2,1349,3757,3823,3823,3757,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_22,246,12,7,2,1349,3947,4013,4013,3947,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_23,245,12,7,2,1349,4131,4197,4197,4131,4698,43639,30303,,,,,,,,,,
1#AC2_7B_1_24,244,12,7,2,1349,4317,4383,4383,4317,4698,43639,30303,,,,,,,,,,
1#AC2_7B_2_1,243,12,7,2,1349,5990,6057,6057,5990,4698,43639,30303,6049,,,,,,,,,
1#AC2_7B_2_2,242,12,7,2,1349,6177,6244,6244,6177,4698,43639,30303,6236,,,,,,,,,
1#AC2_7B_2_3,241,12,7,2,1349,6364,6431,6431,6364,4698,43639,30303,6423,,,,,,,,,
1#AC2_7B_2_4,240,12,7,2,1349,6551,6618,6618,6551,4698,43639,30303,6610,,,,,,,,,
1#AC2_7B_2_5,239,12,7,2,1349,6737,6804,6804,6737,4698,43639,30303,6796,,,,,,,,,
1#AC2_7B_2_6,238,12,7,2,1349,6927,6994,6994,6927,4698,43639,30303,6986,,,,,,,,,
1#AC2_7B_2_7,237,12,7,2,1349,7117,7184,7184,7117,4698,43639,30303,7176,,,,,,,,,
1#AC2_7B_2_8,236,12,7,2,1356,7307,7374,7374,7307,4698,43639,30303,7366,,,,,,,,,
1#AC2_7B_2_9,235,12,7,2,1356,7494,7561,7561,7494,4698,43639,30303,7553,,,,,,,,,
1#AC2_7B_2_10,234,12,7,2,1356,7677,7744,7744,7677,4698,43639,30303,7736,,,,,,,,,
1#AC2_7B_2_11,233,12,7,2,1356,7864,7931,7931,7864,4698,43639,30303,7923,,,,,,,,,
1#AC2_7B_2_12,232,12,7,2,1356,8051,8118,8118,8051,4698,43639,30303,8110,,,,,,,,,
1#AC2_7B_2_13,231,12,7,2,1356,8241,8308,8308,8241,4698,43639,30303,8300,,,,,,,,,
1#AC2_7B_2_14,230,12,7,2,1356,8431,8498,8498,8431,4698,43639,30303,8490,,,,,,,,,
1#AC2_7B_2_15,229,12,7,2,1356,8621,8688,8688,8621,4698,43639,30303,8680,,,,,,,,,
1#AC2_7B_2_16,228,12,7,2,1356,8804,8871,8871,8804,4698,43639,30303,8863,,,,,,,,,
1#AC2_7B_2_17,227,12,7,2,1356,8991,9058,9058,8991,4698,43639,30303,9050,,,,,,,,,
1#AC2_7B_2_18,226,12,7,2,1356,9178,9245,9245,9178,4698,43639,30303,9237,,,,,,,,,
1#AC2_7B_2_19,225,12,7,2,1356,9364,9431,9431,9364,4698,43639,30303,9423,,,,,,,,,
1#AC2_7B_2_20,224,12,7,2,1356,9554,9621,9621,9554,4698,43639,30303,9613,,,,,,,,,
1#AC2_7B_2_21,223,12,7,2,1356,9748,9815,9815,9748,4698,43639,30303,9807,,,,,,,,,
1#AC2_7B_2_22,222,12,7,2,1356,9928,9995,9995,9928,4698,43639,30303,9987,,,,,,,,,
1#AC2_7B_2_23,221,12,7,2,1356,10112,10179,10179,10112,4698,43639,30303,10171,,,,,,,,,
1#AC2_8A_1_1,220,12,7,2,811,15,74,74,15,4698,43639,30303,131,,,,,,,,,
1#AC2_8A_1_2,219,12,7,2,811,199,258,258,199,4698,43639,30303,315,,,,,,,,,
1#AC2_8A_1_3,218,12,7,2,811,379,438,438,379,4698,43639,30303,495,,,,,,,,,
1#AC2_8A_1_4,217,12,7,2,811,572,631,631,572,4698,43639,30303,688,,,,,,,,,
1#AC2_8A_1_5,216,12,7,2,811,759,818,818,759,4698,43639,30303,875,,,,,,,,,
1#AC2_8A_1_6,215,12,7,2,811,949,1008,1008,949,4698,43639,30303,1065,,,,,,,,,
1#AC2_8A_1_7,214,12,7,2,811,1139,1198,1198,1139,4698,43639,30303,1255,,,,,,,,,
1#AC2_8A_1_8,213,12,7,2,811,1319,1378,1378,1319,4698,43639,30303,1435,,,,,,,,,
1#AC2_8A_1_9,212,12,7,2,811,1509,1568,1568,1509,4698,43639,30303,1625,,,,,,,,,
1#AC2_8A_1_10,211,12,7,2,811,1696,1755,1755,1696,4698,43639,30303,1812,,,,,,,,,
1#AC2_8A_1_11,210,12,7,2,811,1889,1948,1948,1889,4698,43639,30303,2005,,,,,,,,,
1#AC2_8A_1_12,209,12,7,2,811,2076,2135,2135,2076,4698,43639,30303,2192,,,,,,,,,
1#AC2_8A_1_13,208,12,7,2,811,2259,2318,2318,2259,4698,43639,30303,2375,,,,,,,,,
1#AC2_8A_1_14,207,12,7,2,811,2440,2499,2499,2440,4698,43639,30303,2556,,,,,,,,,
1#AC2_8A_1_15,206,12,7,2,811,2629,2688,2688,2629,4698,43639,30303,2745,,,,,,,,,
1#AC2_8A_1_16,205,12,7,2,811,2819,2878,2878,2819,4698,43639,30303,2935,,,,,,,,,
1#AC2_8A_1_17,204,12,7,2,811,3013,3072,3072,3013,4698,43639,30303,3129,,,,,,,,,
1#AC2_8A_1_18,203,12,7,2,811,3203,3262,3262,3203,4698,43639,30303,3319,,,,,,,,,
1#AC2_8A_2_1,202,12,7,2,811,3376,3442,3442,3376,4698,43639,30303,3499,,,,,,,,,
1#AC2_8A_2_2,201,12,7,2,811,3563,3629,3629,3563,4698,43639,30303,3686,,,,,,,,,
1#AC2_8A_2_3,200,12,7,2,811,3749,3815,3815,3749,4698,43639,30303,3872,,,,,,,,,
1#AC2_8A_2_4,199,12,7,2,811,3936,4002,4002,3936,4698,43639,30303,4059,,,,,,,,,
1#AC2_8A_2_5,198,12,7,2,811,4129,4195,4195,4129,4698,43639,30303,4252,,,,,,,,,
1#AC2_8A_2_6,197,12,7,2,811,4313,4379,4379,4313,4698,43639,30303,4436,,,,,,,,,
1#AC2_8A_2_7,196,12,7,2,811,4503,4569,4569,4503,4698,43639,30303,4626,,,,,,,,,
1#AC2_8A_2_8,195,12,7,2,811,4689,4755,4755,4689,4698,43639,30303,4812,,,,,,,,,
1#AC2_8A_2_9,194,12,7,2,811,4876,4942,4942,4876,4698,43639,30303,4999,,,,,,,,,
1#AC2_8A_2_10,193,12,7,2,811,5060,5126,5126,5060,4698,43639,30303,5183,,,,,,,,,
1#AC2_8A_2_11,192,12,7,2,811,5249,5315,5315,5249,4698,43639,30303,5372,,,,,,,,,
1#AC2_8A_2_12,191,12,7,2,811,5436,5502,5502,5436,4698,43639,30303,5559,,,,,,,,,
1#AC2_8A_2_13,190,12,7,2,811,5620,5686,5686,5620,4698,43639,30303,5743,,,,,,,,,
1#AC2_8A_2_14,189,12,7,2,811,5810,5876,5876,5810,4698,43639,30303,5933,,,,,,,,,
1#AC2_8A_2_15,188,12,7,2,811,6000,6066,6066,6000,4698,43639,30303,6123,,,,,,,,,
1#AC2_8A_2_16,187,12,7,2,811,6183,6249,6249,6183,4698,43639,30303,6306,,,,,,,,,
1#AC2_8A_2_17,186,12,7,2,811,6373,6439,6439,6373,4698,43639,30303,6496,,,,,,,,,
1#AC2_8A_2_18,185,12,7,2,811,6566,6632,6632,6566,4698,43639,30303,6689,,,,,,,,,
1#AC2_8A_3_1,184,12,7,2,815,6747,6810,6810,6747,4698,43639,30303,6871,,,,,,,,,
1#AC2_8A_3_2,183,12,7,2,815,6934,6997,6997,6934,4698,43639,30303,7058,,,,,,,,,
1#AC2_8A_3_3,182,12,7,2,815,7127,7190,7190,7127,4698,43639,30303,7251,,,,,,,,,
1#AC2_8A_3_4,181,12,7,2,815,7314,7377,7377,7314,4698,43639,30303,7438,,,,,,,,,
1#AC2_8A_3_5,180,12,7,2,815,7504,7567,7567,7504,4698,43639,30303,7628,,,,,,,,,
1#AC2_8A_3_6,179,12,7,2,815,7691,7754,7754,7691,4698,43639,30303,7815,,,,,,,,,
1#AC2_8A_3_7,178,12,7,2,815,7874,7937,7937,7874,4698,43639,30303,7998,,,,,,,,,
1#AC2_8A_3_8,177,12,7,2,815,8057,8120,8120,8057,4698,43639,30303,8181,,,,,,,,,
1#AC2_8A_3_9,176,12,7,2,815,8247,8310,8310,8247,4698,43639,30303,8371,,,,,,,,,
1#AC2_8A_3_10,175,12,7,2,815,8441,8504,8504,8441,4698,43639,30303,8565,,,,,,,,,
1#AC2_8A_3_11,174,12,7,2,815,8627,8690,8690,8627,4698,43639,30303,8751,,,,,,,,,
1#AC2_8A_3_12,173,12,7,2,815,8814,8877,8877,8814,4698,43639,30303,8938,,,,,,,,,
1#AC2_8A_3_13,172,12,7,2,815,9001,9064,9064,9001,4698,43639,30303,9125,,,,,,,,,
1#AC2_8A_3_14,171,12,7,2,815,9184,9247,9247,9184,4698,43639,30303,9308,,,,,,,,,
1#AC2_8A_3_15,170,12,7,2,815,9371,9434,9434,9371,4698,43639,30303,9495,,,,,,,,,
1#AC2_8A_3_16,169,12,7,2,815,9561,9624,9624,9561,4698,43639,30303,9685,,,,,,,,,
1#AC2_8A_3_17,168,12,7,2,815,9751,9814,9814,9751,4698,43639,30303,9875,,,,,,,,,
1#AC2_8A_3_18,167,12,7,2,815,9941,10004,10004,9941,4698,43639,30303,10065,,,,,,,,,
1#AC2_8A_3_19,166,12,7,2,815,10131,10194,10194,10131,4698,43639,30303,10255,,,,,,,,,
1#AC2_8B_1_1,165,12,7,2,354,15,74,74,15,4698,43639,30303,84,,,,,,,,,
1#AC2_8B_1_2,164,12,7,2,354,199,258,258,199,4698,43639,30303,268,,,,,,,,,
1#AC2_8B_1_3,163,12,7,2,354,379,438,438,379,4698,43639,30303,448,,,,,,,,,
1#AC2_8B_1_4,162,12,7,2,354,572,631,631,572,4698,43639,30303,641,,,,,,,,,
1#AC2_8B_1_5,161,12,7,2,354,759,818,818,759,4698,43639,30303,828,,,,,,,,,
1#AC2_8B_1_6,160,12,7,2,354,949,1008,1008,949,4698,43639,30303,1018,,,,,,,,,
1#AC2_8B_1_7,159,12,7,2,354,1139,1198,1198,1139,4698,43639,30303,1208,,,,,,,,,
1#AC2_8B_1_8,158,12,7,2,354,1319,1378,1378,1319,4698,43639,30303,1388,,,,,,,,,
1#AC2_8B_1_9,157,12,7,2,354,1509,1568,1568,1509,4698,43639,30303,1578,,,,,,,,,
1#AC2_8B_1_10,156,12,7,2,354,1696,1755,1755,1696,4698,43639,30303,1765,,,,,,,,,
1#AC2_8B_1_11,155,12,7,2,354,1889,1948,1948,1889,4698,43639,30303,1958,,,,,,,,,
1#AC2_8B_1_12,154,12,7,2,354,2076,2135,2135,2076,4698,43639,30303,2145,,,,,,,,,
1#AC2_8B_1_13,153,12,7,2,354,2259,2318,2318,2259,4698,43639,30303,2328,,,,,,,,,
1#AC2_8B_1_14,152,12,7,2,354,2440,2499,2499,2440,4698,43639,30303,2509,,,,,,,,,
1#AC2_8B_1_15,151,12,7,2,354,2629,2688,2688,2629,4698,43639,30303,2698,,,,,,,,,
1#AC2_8B_1_16,150,12,7,2,354,2819,2878,2878,2819,4698,43639,30303,2888,,,,,,,,,
1#AC2_8B_1_17,149,12,7,2,354,3013,3072,3072,3013,4698,43639,30303,3082,,,,,,,,,
1#AC2_8B_1_18,148,12,7,2,354,3203,3262,3262,3203,4698,43639,30303,3272,,,,,,,,,
1#AC2_8B_2_1,147,12,7,2,354,3376,3442,3442,3376,4698,43639,30303,3438,,,,,,,,,
1#AC2_8B_2_2,146,12,7,2,354,3563,3629,3629,3563,4698,43639,30303,3625,,,,,,,,,
1#AC2_8B_2_3,145,12,7,2,354,3749,3815,3815,3749,4698,43639,30303,3811,,,,,,,,,
1#AC2_8B_2_4,144,12,7,2,354,3936,4002,4002,3936,4698,43639,30303,3998,,,,,,,,,
1#AC2_8B_2_5,143,12,7,2,354,4129,4195,4195,4129,4698,43639,30303,4191,,,,,,,,,
1#AC2_8B_2_6,142,12,7,2,354,4313,4379,4379,4313,4698,43639,30303,4375,,,,,,,,,
1#AC2_8B_2_7,141,12,7,2,354,4503,4569,4569,4503,4698,43639,30303,4565,,,,,,,,,
1#AC2_8B_2_8,140,12,7,2,354,4689,4755,4755,4689,4698,43639,30303,4751,,,,,,,,,
1#AC2_8B_2_9,139,12,7,2,354,4876,4942,4942,4876,4698,43639,30303,4938,,,,,,,,,
1#AC2_8B_2_10,138,12,7,2,354,5060,5126,5126,5060,4698,43639,30303,5122,,,,,,,,,
1#AC2_8B_2_11,137,12,7,2,354,5249,5315,5315,5249,4698,43639,30303,5311,,,,,,,,,
1#AC2_8B_2_12,136,12,7,2,354,5436,5502,5502,5436,4698,43639,30303,5498,,,,,,,,,
1#AC2_8B_2_13,135,12,7,2,354,5620,5686,5686,5620,4698,43639,30303,5682,,,,,,,,,
1#AC2_8B_2_14,134,12,7,2,354,5810,5876,5876,5810,4698,43639,30303,5872,,,,,,,,,
1#AC2_8B_2_15,133,12,7,2,354,6000,6066,6066,6000,4698,43639,30303,6062,,,,,,,,,
1#AC2_8B_2_16,132,12,7,2,354,6183,6249,6249,6183,4698,43639,30303,6245,,,,,,,,,
1#AC2_8B_2_17,131,12,7,2,354,6373,6439,6439,6373,4698,43639,30303,6435,,,,,,,,,
1#AC2_8B_2_18,130,12,7,2,354,6566,6632,6632,6566,4698,43639,30303,6628,,,,,,,,,
1#AC2_8B_3_1,129,12,7,2,359,6747,6810,6810,6747,4698,43639,30303,6816,,,,,,,,,
1#AC2_8B_3_2,128,12,7,2,359,6934,6997,6997,6934,4698,43639,30303,7003,,,,,,,,,
1#AC2_8B_3_3,127,12,7,2,359,7127,7190,7190,7127,4698,43639,30303,7196,,,,,,,,,
1#AC2_8B_3_4,126,12,7,2,359,7314,7377,7377,7314,4698,43639,30303,7383,,,,,,,,,
1#AC2_8B_3_5,125,12,7,2,359,7504,7567,7567,7504,4698,43639,30303,7573,,,,,,,,,
1#AC2_8B_3_6,124,12,7,2,359,7691,7754,7754,7691,4698,43639,30303,7760,,,,,,,,,
1#AC2_8B_3_7,123,12,7,2,359,7874,7937,7937,7874,4698,43639,30303,7943,,,,,,,,,
1#AC2_8B_3_8,122,12,7,2,359,8057,8120,8120,8057,4698,43639,30303,8126,,,,,,,,,
1#AC2_8B_3_9,121,12,7,2,359,8247,8310,8310,8247,4698,43639,30303,8316,,,,,,,,,
1#AC2_8B_3_10,120,12,7,2,359,8441,8504,8504,8441,4698,43639,30303,8510,,,,,,,,,
1#AC2_8B_3_11,119,12,7,2,359,8627,8690,8690,8627,4698,43639,30303,8696,,,,,,,,,
1#AC2_8B_3_12,118,12,7,2,359,8814,8877,8877,8814,4698,43639,30303,8883,,,,,,,,,
1#AC2_8B_3_13,117,12,7,2,359,9001,9064,9064,9001,4698,43639,30303,9070,,,,,,,,,
1#AC2_8B_3_14,116,12,7,2,359,9184,9247,9247,9184,4698,43639,30303,9253,,,,,,,,,
1#AC2_8B_3_15,115,12,7,2,359,9371,9434,9434,9371,4698,43639,30303,9440,,,,,,,,,
1#AC2_8B_3_16,114,12,7,2,359,9561,9624,9624,9561,4698,43639,30303,9630,,,,,,,,,
1#AC2_8B_3_17,113,12,7,2,359,9751,9814,9814,9751,4698,43639,30303,9820,,,,,,,,,
1#AC2_8B_3_18,112,12,7,2,359,9941,10004,10004,9941,4698,43639,30303,10010,,,,,,,,,
1#AC2_8B_3_19,111,12,7,2,359,10131,10194,10194,10131,4698,43639,30303,10200,,,,,,,,,
1#AC2_9A_1_1,110,12,7,2,9791,26,85,85,26,4698,43639,30303,95,,,,,,,,,
1#AC2_9A_1_2,109,12,7,2,9791,209,268,268,209,4698,43639,30303,278,,,,,,,,,
1#AC2_9A_1_3,108,12,7,2,9791,396,455,455,396,4698,43639,30303,465,,,,,,,,,
1#AC2_9A_1_4,107,12,7,2,9791,579,638,638,579,4698,43639,30303,648,,,,,,,,,
1#AC2_9A_1_5,106,12,7,2,9791,766,825,825,766,4698,43639,30303,835,,,,,,,,,
1#AC2_9A_1_6,105,12,7,2,9791,956,1015,1015,956,4698,43639,30303,1025,,,,,,,,,
1#AC2_9A_1_7,104,12,7,2,9791,1143,1202,1202,1143,4698,43639,30303,1212,,,,,,,,,
1#AC2_9A_1_8,103,12,7,2,9791,1333,1392,1392,1333,4698,43639,30303,1402,,,,,,,,,
1#AC2_9A_1_9,102,12,7,2,9791,1523,1582,1582,1523,4698,43639,30303,1592,,,,,,,,,
1#AC2_9A_1_10,101,12,7,2,9791,1706,1765,1765,1706,4698,43639,30303,1775,,,,,,,,,
1#AC2_9A_1_11,100,12,7,2,9791,1896,1955,1955,1896,4698,43639,30303,1965,,,,,,,,,
1#AC2_9A_1_12,99,12,7,2,9791,2083,2142,2142,2083,4698,43639,30303,2152,,,,,,,,,
1#AC2_9A_1_13,98,12,7,2,9791,2266,2325,2325,2266,4698,43639,30303,2335,,,,,,,,,
1#AC2_9A_1_14,97,12,7,2,9791,2456,2515,2515,2456,4698,43639,30303,2525,,,,,,,,,
1#AC2_9A_1_15,96,12,7,2,9791,2646,2705,2705,2646,4698,43639,30303,2715,,,,,,,,,
1#AC2_9A_1_16,95,12,7,2,9791,2826,2885,2885,2826,4698,43639,30303,2895,,,,,,,,,
1#AC2_9A_1_17,94,12,7,2,9791,3013,3072,3072,3013,4698,43639,30303,3082,,,,,,,,,
1#AC2_9A_1_18,93,12,7,2,9791,3210,3269,3269,3210,4698,43639,30303,3279,,,,,,,,,
1#AC2_9A_2_1,92,12,7,2,9791,3386,3433,3433,3386,4698,43639,30303,3455,,,,,,,,,
1#AC2_9A_2_2,91,12,7,2,9791,3580,3627,3627,3580,4698,43639,30303,3649,,,,,,,,,
1#AC2_9A_2_3,90,12,7,2,9791,3770,3817,3817,3770,4698,43639,30303,3839,,,,,,,,,
1#AC2_9A_2_4,89,12,7,2,9791,3950,3997,3997,3950,4698,43639,30303,4019,,,,,,,,,
1#AC2_9A_2_5,88,12,7,2,9791,4140,4187,4187,4140,4698,43639,30303,4209,,,,,,,,,
1#AC2_9A_2_6,87,12,7,2,9791,4333,4380,4380,4333,4698,43639,30303,4402,,,,,,,,,
1#AC2_9A_2_7,86,12,7,2,9791,4517,4564,4564,4517,4698,43639,30303,4586,,,,,,,,,
1#AC2_9A_2_8,85,12,7,2,9791,4700,4747,4747,4700,4698,43639,30303,4769,,,,,,,,,
1#AC2_9A_2_9,84,12,7,2,9791,4887,4934,4934,4887,4698,43639,30303,4956,,,,,,,,,
1#AC2_9A_2_10,83,12,7,2,9791,5077,5124,5124,5077,4698,43639,30303,5146,,,,,,,,,
1#AC2_9A_2_11,82,12,7,2,9791,5264,5311,5311,5264,4698,43639,30303,5333,,,,,,,,,
1#AC2_9A_2_12,81,12,7,2,9791,5450,5497,5497,5450,4698,43639,30303,5519,,,,,,,,,
1#AC2_9A_2_13,80,12,7,2,9791,5637,5684,5684,5637,4698,43639,30303,5706,,,,,,,,,
1#AC2_9A_2_14,79,12,7,2,9791,5827,5874,5874,5827,4698,43639,30303,5896,,,,,,,,,
1#AC2_9A_2_15,78,12,7,2,9791,6024,6071,6071,6024,4698,43639,30303,6093,,,,,,,,,
1#AC2_9A_2_16,77,12,7,2,9791,6214,6261,6261,6214,4698,43639,30303,6283,,,,,,,,,
1#AC2_9A_2_17,76,12,7,2,9791,6390,6437,6437,6390,4698,43639,30303,6459,,,,,,,,,
1#AC2_9A_2_18,75,12,7,2,9791,6580,6627,6627,6580,4698,43639,30303,6649,,,,,,,,,
1#AC2_9A_3_1,74,12,7,2,9791,6759,6822,6822,6759,4698,43639,30303,6820,,,,,,,,,
1#AC2_9A_3_2,73,12,7,2,9791,6942,7005,7005,6942,4698,43639,30303,7003,,,,,,,,,
1#AC2_9A_3_3,72,12,7,2,9791,7126,7189,7189,7126,4698,43639,30303,7187,,,,,,,,,
1#AC2_9A_3_4,71,12,7,2,9791,7316,7379,7379,7316,4698,43639,30303,7377,,,,,,,,,
1#AC2_9A_3_5,70,12,7,2,9791,7499,7562,7562,7499,4698,43639,30303,7560,,,,,,,,,
1#AC2_9A_3_6,69,12,7,2,9791,7686,7749,7749,7686,4698,43639,30303,7747,,,,,,,,,
1#AC2_9A_3_7,68,12,7,2,9791,7879,7942,7942,7879,4698,43639,30303,7940,,,,,,,,,
1#AC2_9A_3_8,67,12,7,2,9791,8069,8132,8132,8069,4698,43639,30303,8130,,,,,,,,,
1#AC2_9A_3_9,66,12,7,2,9791,8256,8319,8319,8256,4698,43639,30303,8317,,,,,,,,,
1#AC2_9A_3_10,65,12,7,2,9791,8443,8506,8506,8443,4698,43639,30303,8504,,,,,,,,,
1#AC2_9A_3_11,64,12,7,2,9791,8633,8696,8696,8633,4698,43639,30303,8694,,,,,,,,,
1#AC2_9A_3_12,63,12,7,2,9791,8819,8882,8882,8819,4698,43639,30303,8880,,,,,,,,,
1#AC2_9A_3_13,62,12,7,2,9791,9006,9069,9069,9006,4698,43639,30303,9067,,,,,,,,,
1#AC2_9A_3_14,61,12,7,2,9791,9193,9256,9256,9193,4698,43639,30303,9254,,,,,,,,,
1#AC2_9A_3_15,60,12,7,2,9791,9380,9443,9443,9380,4698,43639,30303,9441,,,,,,,,,
1#AC2_9A_3_16,59,12,7,2,9791,9570,9633,9633,9570,4698,43639,30303,9631,,,,,,,,,
1#AC2_9A_3_17,58,12,7,2,9791,9753,9816,9816,9753,4698,43639,30303,9814,,,,,,,,,
1#AC2_9A_3_18,57,12,7,2,9791,9943,10006,10006,9943,4698,43639,30303,10004,,,,,,,,,
1#AC2_9A_3_19,56,12,7,2,9791,10133,10196,10196,10133,4698,43639,30303,10194,,,,,,,,,
1#AC2_9B_1_1,55,12,7,2,9334,17,85,85,17,4698,43639,30303,142,77,,,,,,,,
1#AC2_9B_1_2,54,12,7,2,9334,200,268,268,200,4698,43639,30303,325,260,,,,,,,,
1#AC2_9B_1_3,53,12,7,2,9334,387,455,455,387,4698,43639,30303,512,447,,,,,,,,
1#AC2_9B_1_4,52,12,7,2,9334,570,638,638,570,4698,43639,30303,695,630,,,,,,,,
1#AC2_9B_1_5,51,12,7,2,9334,757,825,825,757,4698,43639,30303,882,817,,,,,,,,
1#AC2_9B_1_6,50,12,7,2,9334,947,1015,1015,947,4698,43639,30303,1072,1007,,,,,,,,
1#AC2_9B_1_7,49,12,7,2,9334,1134,1202,1202,1134,4698,43639,30303,1259,1194,,,,,,,,
1#AC2_9B_1_8,48,12,7,2,9334,1324,1392,1392,1324,4698,43639,30303,1449,1384,,,,,,,,
1#AC2_9B_1_9,47,12,7,2,9334,1514,1582,1582,1514,4698,43639,30303,1639,1574,,,,,,,,
1#AC2_9B_1_10,46,12,7,2,9334,1697,1765,1765,1697,4698,43639,30303,1822,1757,,,,,,,,
1#AC2_9B_1_11,45,12,7,2,9334,1887,1955,1955,1887,4698,43639,30303,2012,1947,,,,,,,,
1#AC2_9B_1_12,44,12,7,2,9334,2074,2142,2142,2074,4698,43639,30303,2199,2134,,,,,,,,
1#AC2_9B_1_13,43,12,7,2,9334,2257,2325,2325,2257,4698,43639,30303,2382,2317,,,,,,,,
1#AC2_9B_1_14,42,12,7,2,9334,2447,2515,2515,2447,4698,43639,30303,2572,2507,,,,,,,,
1#AC2_9B_1_15,41,12,7,2,9334,2637,2705,2705,2637,4698,43639,30303,2762,2697,,,,,,,,
1#AC2_9B_1_16,40,12,7,2,9334,2817,2885,2885,2817,4698,43639,30303,2942,2877,,,,,,,,
1#AC2_9B_1_17,39,12,7,2,9334,3004,3072,3072,3004,4698,43639,30303,3129,3064,,,,,,,,
1#AC2_9B_1_18,38,12,7,2,9334,3201,3269,3269,3201,4698,43639,30303,3326,3261,,,,,,,,
1#AC2_9B_2_1,37,12,7,2,9334,3386,3433,3433,3386,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_2,36,12,7,2,9334,3580,3627,3627,3580,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_3,35,12,7,2,9334,3770,3817,3817,3770,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_4,34,12,7,2,9334,3950,3997,3997,3950,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_5,33,12,7,2,9334,4140,4187,4187,4140,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_6,32,12,7,2,9334,4333,4380,4380,4333,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_7,31,12,7,2,9334,4517,4564,4564,4517,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_8,30,12,7,2,9334,4700,4747,4747,4700,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_9,29,12,7,2,9334,4887,4934,4934,4887,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_10,28,12,7,2,9334,5077,5124,5124,5077,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_11,27,12,7,2,9334,5264,5311,5311,5264,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_12,26,12,7,2,9334,5450,5497,5497,5450,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_13,25,12,7,2,9334,5637,5684,5684,5637,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_14,24,12,7,2,9334,5827,5874,5874,5827,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_15,23,12,7,2,9334,6024,6071,6071,6024,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_16,22,12,7,2,9334,6214,6261,6261,6214,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_17,21,12,7,2,9334,6390,6437,6437,6390,4698,43639,30303,,,,,,,,,,
1#AC2_9B_2_18,20,12,7,2,9334,6580,6627,6627,6580,4698,43639,30303,,,,,,,,,,
1#AC2_9B_3_1,19,12,7,2,9337,6759,6822,6822,6759,4698,43639,30303,6875,,,,,,,,,
1#AC2_9B_3_2,18,12,7,2,9337,6942,7005,7005,6942,4698,43639,30303,7058,,,,,,,,,
1#AC2_9B_3_3,17,12,7,2,9337,7126,7189,7189,7126,4698,43639,30303,7242,,,,,,,,,
1#AC2_9B_3_4,16,12,7,2,9337,7316,7379,7379,7316,4698,43639,30303,7432,,,,,,,,,
1#AC2_9B_3_5,15,12,7,2,9337,7499,7562,7562,7499,4698,43639,30303,7615,,,,,,,,,
1#AC2_9B_3_6,14,12,7,2,9337,7686,7749,7749,7686,4698,43639,30303,7802,,,,,,,,,
1#AC2_9B_3_7,13,12,7,2,9337,7879,7942,7942,7879,4698,43639,30303,7995,,,,,,,,,
1#AC2_9B_3_8,12,12,7,2,9337,8069,8132,8132,8069,4698,43639,30303,8185,,,,,,,,,
1#AC2_9B_3_9,11,12,7,2,9337,8256,8319,8319,8256,4698,43639,30303,8372,,,,,,,,,
1#AC2_9B_3_10,10,12,7,2,9337,8443,8506,8506,8443,4698,43639,30303,8559,,,,,,,,,
1#AC2_9B_3_11,9,12,7,2,9337,8633,8696,8696,8633,4698,43639,30303,8749,,,,,,,,,
1#AC2_9B_3_12,8,12,7,2,9337,8819,8882,8882,8819,4698,43639,30303,8935,,,,,,,,,
1#AC2_9B_3_13,7,12,7,2,9337,9006,9069,9069,9006,4698,43639,30303,9122,,,,,,,,,
1#AC2_9B_3_14,6,12,7,2,9337,9193,9256,9256,9193,4698,43639,30303,9309,,,,,,,,,
1#AC2_9B_3_15,5,12,7,2,9337,9380,9443,9443,9380,4698,43639,30303,9496,,,,,,,,,
1#AC2_9B_3_16,4,12,7,2,9337,9570,9633,9633,9570,4698,43639,30303,9686,,,,,,,,,
1#AC2_9B_3_17,3,12,7,2,9337,9753,9816,9816,9753,4698,43639,30303,9869,,,,,,,,,
1#AC2_9B_3_18,2,12,7,2,9337,9943,10006,10006,9943,4698,43639,30303,10059,,,,,,,,,
1#AC2_9B_3_19,1,12,7,2,9337,10133,10196,10196,10133,4698,43639,30303,10249,,25,,,,,,,
...@@ -24,7 +24,7 @@ namespace OnlineStore.DeviceLibrary.IO ...@@ -24,7 +24,7 @@ namespace OnlineStore.DeviceLibrary.IO
{ {
if (dIODeviceNameList.Count > 0 && dIODeviceNameList.Contains("HC")) if (dIODeviceNameList.Count > 0 && dIODeviceNameList.Contains("HC"))
{ {
HCBoardManager.InitConfig(); HCBoardManager.InitConfig("", "", "HCBOARD");
if (!HCBoardManager.CardInitOk()) if (!HCBoardManager.CardInitOk())
{ {
HCBoardManager.OpenCard(); HCBoardManager.OpenCard();
......

using Asa.RFID;
using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace OnlineStore.DeviceLibrary
{
public class RFIDManager
{
private static int DefaultTrayNum = 0; //ConfigAppSettings.GetIntValue(Setting_Init.DefaultTrayNum);
public static ReadAll readAll = new ReadAll("TheRFID");
private static bool IsOpen = false;
private static ConcurrentDictionary<string, string> LastRfidMap = new ConcurrentDictionary<string, string>();
public static void Open()
{
if (IsOpen)
{
return;
}
try
{
int port = 0;
if (port <= 0)
{
port = 13000;
}
LogUtil.info("RFID Server Open,port=" + port);
readAll.Received += ReadAll_Received;
readAll.Start(port);
//GetTrayNum("123",0);
IsOpen = true;
}
catch (Exception ex)
{
LogUtil.error("Open 出错:" + ex.ToString());
}
}
private static void ReadAll_Received(string ip, string id)
{
LogUtil.info($"ip={ip},id={id}");
}
public static RFIDData GetShelfId(string deviceIp)
{
return ReadRFID(deviceIp, true);
}
public static RFIDData ReadRFID(string ip, bool isClear = false)
{
try
{
if (String.IsNullOrEmpty(ip).Equals(false))
{
string outValue = readAll.Read(ip);
if (isClear)
{
readAll.Clear(ip);
}
if (outValue.Equals("000"))
{
// LogUtil.error("ReadRFID[" + ip + "]=" + outValue);
}
RFIDData data = new RFIDData(outValue);
return data;
}
}
catch (Exception ex)
{
LogUtil.error("ReadRFID[" + ip + "] [" + isClear + "] 出错:" + ex.ToString());
}
return new RFIDData();
}
public static void Close()
{
try
{
if (IsOpen)
{
readAll.Stop();
IsOpen = false;
}
}
catch (Exception ex)
{
LogUtil.error("关闭RFID出错:" + ex.ToString());
}
}
}
public class RFIDData
{
public string StrData = "";
public char RFType
{
get
{
char[] charArray = StrData.ToCharArray();
if (charArray.Length > 0)
{
return charArray[0];
}
return '0';
}
}
public int Num
{
get
{
try
{
if (StrData.Length >= 2)
{
return Convert.ToInt32(StrData.Substring(1, StrData.Length - 1));
}
}
catch (Exception ex)
{
}
return 0;
}
}
public RFIDData(string data = "00")
{
if (String.IsNullOrEmpty(data))
{
data = "00";
}
this.StrData = data;
}
public string NumStr()
{
return StrData;
}
internal static bool IsRealRfid(string shelfRfid)
{
//判断料架号是否是真实的料架号
if (shelfRfid.StartsWith("A") || shelfRfid.StartsWith("B"))
{
int num = -1;
try
{
num = Convert.ToInt32(shelfRfid.Substring(1, shelfRfid.Length - 1));
}
catch (Exception ex)
{
}
if (num > 0)
{
return true;
}
}
return false;
}
}
}
...@@ -18,16 +18,33 @@ namespace OnlineStore.DeviceLibrary ...@@ -18,16 +18,33 @@ namespace OnlineStore.DeviceLibrary
public static List<string> codeTypeList = new List<string>(); public static List<string> codeTypeList = new List<string>();
//public static List<string> balserNameList = new List<string>(); //public static List<string> balserNameList = new List<string>();
public static List<string> hikNameList = new List<string>(); public static List<string> hikNameList = new List<string>();
public static List<int> Code_Block_Size_List = new List<int>();
private static char spiltChar = '#'; private static char spiltChar = '#';
/// <summary> /// <summary>
/// 初始化摄像机名称和二维码类型 /// 初始化摄像机名称和二维码类型
/// </summary> /// </summary>
public static void LoadConfig() public static void LoadConfig()
{ {
string codeStr = ConfigAppSettings.GetValue(Setting_Init.CodeType);
codeTypeList = new List<string>();
HDLogUtil.LogName = "RollingLogFileAppender"; HDLogUtil.LogName = "RollingLogFileAppender";
string code_block_size_list = ConfigAppSettings.GetValue(Setting_Init.code_block_size_list);
var cl = code_block_size_list.Split(',');
foreach (string s in cl)
{
int i;
if (int.TryParse(s, out i))
{
Code_Block_Size_List.Add(i);
}
}
if (Code_Block_Size_List.Count == 0)
Code_Block_Size_List.Add(19);
LogUtil.info("加载到配置二维码块尺寸:"+ string.Join(",",Code_Block_Size_List));
string codeStr = ConfigAppSettings.GetValue(Setting_Init.CodeType);
codeTypeList = new List<string>();
try try
{ {
string[] codeArray = codeStr.Split(spiltChar); string[] codeArray = codeStr.Split(spiltChar);
...@@ -42,6 +59,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -42,6 +59,9 @@ namespace OnlineStore.DeviceLibrary
codeTypeList.Add(str.Trim()); codeTypeList.Add(str.Trim());
} }
LoadCamera(false); LoadCamera(false);
CodeLibrary.HDCodeLearnHelper.LoadConfig("", codeStr); CodeLibrary.HDCodeLearnHelper.LoadConfig("", codeStr);
} }
...@@ -96,7 +116,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -96,7 +116,6 @@ namespace OnlineStore.DeviceLibrary
{ {
Camera._cam.CloseAll(); Camera._cam.CloseAll();
} }
private static int codeCount = ConfigAppSettings.GetIntValue(Setting_Init.CodeCount); private static int codeCount = ConfigAppSettings.GetIntValue(Setting_Init.CodeCount);
[HandleProcessCorruptedStateExceptions] [HandleProcessCorruptedStateExceptions]
...@@ -115,43 +134,40 @@ namespace OnlineStore.DeviceLibrary ...@@ -115,43 +134,40 @@ namespace OnlineStore.DeviceLibrary
try try
{ {
Task[] cameraTask = new Task[cameraList.Count()]; Task[] cameraTask = new Task[cameraList.Count()];
for (int i = 0; i < cameraList.Count(); i++) for (int i = 0; i < cameraList.Count(); i++)
{ {
var cameraName = cameraList[i]; var cameraName = cameraList[i];
if (cameraName.Trim().Equals(""))
//cameraTask[i] = Task.Run(() => {
//{ continue;
if (cameraName.Trim().Equals("")) }
DateTime startTime = DateTime.Now;
LogUtil.info(" 【" + cameraName + "】开始取图片");
HalconDotNet.HObject ho_Image = null;
LogUtil.info(" 【" + cameraName + "】开始取图片2");
Bitmap bmp = null;
try
{
bool nohalcon = false;
LogUtil.info(" 【" + cameraName + "】开始取图片3");
ho_Image = Camera._cam.CaptureOnImage(cameraName, out bmp, nohalcon);
if (ho_Image == null && !nohalcon)
{ {
LogUtil.error(" 【" + cameraName + "】取图片失败[" + Camera._cam.ErrInfo + "],关闭相机");
CloseCamera(cameraName);
continue; continue;
} }
DateTime startTime = DateTime.Now; LogUtil.info(" 【" + cameraName + "】取图片完成,开始扫码");
LogUtil.info(" 【" + cameraName + "】开始取图片"); string r = "";
HalconDotNet.HObject ho_Image = null;
LogUtil.info(" 【" + cameraName + "】开始取图片2");
Bitmap bmp = null;
try
{
bool nohalcon = true;
LogUtil.info(" 【" + cameraName + "】开始取图片3");
ho_Image = Camera._cam.CaptureOnImage(cameraName, out bmp, nohalcon);
if (ho_Image == null && !nohalcon)
{
LogUtil.error(" 【" + cameraName + "】取图片失败[" + Camera._cam.ErrInfo + "],关闭相机");
CloseCamera(cameraName);
continue;
}
LogUtil.info(" 【" + cameraName + "】取图片完成,开始扫码");
string r = "";
foreach (int codesize in Code_Block_Size_List)
List<CodeInfo> tlci = EyemDecode.Decoder(ref bmp,null,15); {
List<CodeInfo> tlci = EyemDecode.Decoder(ref bmp, null, codesize);
foreach (CodeInfo code in tlci) foreach (CodeInfo code in tlci)
{ {
LogUtil.info(" 【" + cameraName + "】[eyemDecode]" + code.CodeType + "(X: " + code.X + ",Y: " + code.Y + ") " + code.CodeStr); LogUtil.info(" 【" + cameraName + $"】[eyemDecode blocksize:{codesize}]" + code.CodeType + "(X: " + code.X + ",Y: " + code.Y + ") " + code.CodeStr);
string str = CodeManager.ReplaceCode(code.CodeStr); string str = CodeManager.ReplaceCode(code.CodeStr);
lock (codeList) lock (codeList)
{ {
...@@ -162,64 +178,61 @@ namespace OnlineStore.DeviceLibrary ...@@ -162,64 +178,61 @@ namespace OnlineStore.DeviceLibrary
} }
} }
} }
}
/*
* List<CodeInfo> cc = new List<CodeInfo>(); List<CodeInfo> cc = new List<CodeInfo>();
foreach (string codeType in codeTypeList) foreach (string codeType in codeTypeList)
{
//判断是否是一维码
if (codeType.ToLower().Equals("barcode"))
{ {
//判断是否是一维码 cc = HDCodeHelper.DecodeBarCode(ho_Image);
if (codeType.ToLower().Equals("barcode")) }
{ else
cc = HDCodeHelper.DecodeBarCode(ho_Image); {
} cc = HDCodeHelper.DecodeCode(ho_Image, codeType, GetCodeParamFilePath(codeType), codeCount, 2000);
else }
{ foreach (CodeInfo c in cc)
cc = HDCodeHelper.DecodeCode(ho_Image, codeType, GetCodeParamFilePath(codeType), codeCount, 2000); {
} string str = CodeManager.ReplaceCode(c.CodeStr);
foreach (CodeInfo c in cc) lock (codeList)
{ {
string str = CodeManager.ReplaceCode(c.CodeStr); if (!codeList.Contains(str))
lock (codeList)
{ {
if (!codeList.Contains(str)) codeList.Add(str);
{ r = r + "##" + str;
codeList.Add(str);
r = r + "##" + str;
}
} }
} }
} }
*/
if (codeList.Count() == 0)
{
SaveImageToFile("mimo", cameraName, bmp);
}
LogUtil.info(" 【" + cameraName + "】" + " 扫码完成【" + FormUtil.GetSpanStr(DateTime.Now - startTime) + "】 :" + r);
}
catch (AccessViolationException e)
{
LogUtil.error(" 扫码出现AccessViolationException异常,关闭相机【" + cameraName + "】:" + e.ToString());
Camera._cam.Close(cameraName);
// GC.Collect();
} }
catch (Exception ex)
if (codeList.Count() == 0)
{ {
LogUtil.error(" 扫码出错:" + ex.ToString()); SaveImageToFile("mimo", cameraName, bmp);
} }
finally LogUtil.info(" 【" + cameraName + "】" + " 扫码完成【" + FormUtil.GetSpanStr(DateTime.Now - startTime) + "】 :" + r);
}
catch (AccessViolationException e)
{
LogUtil.error(" 扫码出现AccessViolationException异常,关闭相机【" + cameraName + "】:" + e.ToString());
Camera._cam.Close(cameraName);
// GC.Collect();
}
catch (Exception ex)
{
LogUtil.error(" 扫码出错:" + ex.ToString());
}
finally
{
if (ho_Image != null)
{ {
if (ho_Image != null) ho_Image.Dispose();
{
ho_Image.Dispose();
}
if (bmp != null)
bmp.Dispose();
} }
if (bmp != null)
bmp.Dispose();
}
// });
// cameraTask[i].Wait();
} }
//Task.WaitAll(cameraTask);
} }
catch (AccessViolationException e) catch (AccessViolationException e)
{ {
......
...@@ -17,6 +17,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -17,6 +17,10 @@ namespace OnlineStore.DeviceLibrary
/// 正常工作过程中判断位置是否到达时使用 /// 正常工作过程中判断位置是否到达时使用
/// </summary> /// </summary>
public int LastPosition = 0; public int LastPosition = 0;
/// <summary>
/// 伺服反转误差值
/// </summary>
public int Reverse_Offset = 0;
public string AxisName; public string AxisName;
public AxisBean(ConfigMoveAxis axisConfig, string deviceName) public AxisBean(ConfigMoveAxis axisConfig, string deviceName)
...@@ -112,6 +116,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -112,6 +116,16 @@ namespace OnlineStore.DeviceLibrary
/// </summary> /// </summary>
public void AbsMove(StoreMoveInfo MoveInfo, int targetPosition, int targetSpeed) public void AbsMove(StoreMoveInfo MoveInfo, int targetPosition, int targetSpeed)
{ {
//if (Reverse_Offset != 0 && targetPosition < GetAclPosition())
//{
// LogUtil.info($"倒转点位补偿targetPosition={targetPosition}-Reverse_Offset={Reverse_Offset}={targetPosition - Reverse_Offset}");
// targetPosition = targetPosition - Reverse_Offset;
//
// }
if (MoveInfo == null) if (MoveInfo == null)
{ {
AbsMove(targetPosition, targetSpeed); AbsMove(targetPosition, targetSpeed);
......
...@@ -64,10 +64,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -64,10 +64,11 @@ namespace OnlineStore.DeviceLibrary
} }
InoutAxis = new AxisBean(config.InOut_Axis, Name); InoutAxis = new AxisBean(config.InOut_Axis, Name);
MiddleAxis = new AxisBean(config.Middle_Axis, Name); MiddleAxis = new AxisBean(config.Middle_Axis, Name);
MiddleAxis.Reverse_Offset = config.MiddleAxis_Reverse_Offset;
UpdownAxis = new AxisBean(config.UpDown_Axis, Name); UpdownAxis = new AxisBean(config.UpDown_Axis, Name);
ComAxis = new AxisBean(config.Comp_Axis, Name); ComAxis = new AxisBean(config.Comp_Axis, Name);
mainTimer.Enabled = false; mainTimer.Enabled = false;
LoadCameraConfig(config.Id.ToString());
} }
private void IoCheckTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) private void IoCheckTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
...@@ -261,6 +262,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -261,6 +262,7 @@ namespace OnlineStore.DeviceLibrary
ComAxis.AbsMove(MoveInfo, Config.CompAxis_P1, Config.CompAxis_P1_Speed); ComAxis.AbsMove(MoveInfo, Config.CompAxis_P1, Config.CompAxis_P1_Speed);
break; break;
case StoreMoveStep.BOX_H04_OtherAxisBack: case StoreMoveStep.BOX_H04_OtherAxisBack:
HuichuanLibrary.HCBoardManager.SetAxBacklash(MiddleAxis.Config.GetAxisValue(),Config.MiddleAxis_Reverse_Offset, MiddleAxis.Config.HomeLowSpeed,-1);
LogInfo(MoveInfo.MoveType + ": 完成"); LogInfo(MoveInfo.MoveType + ": 完成");
MoveEndP(); MoveEndP();
break; break;
...@@ -346,12 +348,26 @@ namespace OnlineStore.DeviceLibrary ...@@ -346,12 +348,26 @@ namespace OnlineStore.DeviceLibrary
OutDoorCloseCountDown = 5; OutDoorCloseCountDown = 5;
} }
} }
private void AutoResetProcess() private void AutoResetProcess()
{ {
try try
{ {
bool noInStore = MoveInfo.MoveType.Equals(MoveType.None) && alarmType.Equals(AlarmType.None); bool noInStore = MoveInfo.MoveType.Equals(MoveType.None) && alarmType.Equals(AlarmType.None);
bool middleinpos;
if (noInStore)
{
if (Config.Id == 1)
{
middleinpos = StoreManager.Store.T2_MiddleAxis.IsInPosition(StoreManager.Store.Config.MiddleAxis_P2);
}
else
{
middleinpos = StoreManager.Store.T2_MiddleAxis.IsInPosition(StoreManager.Store.Config.MiddleAxis_P3);
}
if (middleinpos)
noInStore = StoreManager.Store.T3_UpdownAxis.GetAclPosition() < (StoreManager.Store.Config.UpdownAxis_P3 - StoreManager.Store.Config.UpdownAxis_P4) / 2;
}
//LogInfo($"OutDoor_Check:{IOValue(IO_Type.OutDoor_Check)},InDoor_Check:{IOValue(IO_Type.InDoor_Check)},waitInStoreParam is null:{waitInStoreParam==null},waitOutStoreList.Count:{waitOutStoreList.Count},noInStore:{noInStore}");
if (AutoInout.CurrInOutACount >= StoreManager.Config.Box_ResetACount && noInStore) if (AutoInout.CurrInOutACount >= StoreManager.Config.Box_ResetACount && noInStore)
{ {
if (runStatus < StoreRunStatus.Runing || MoveInfo.MoveType == MoveType.InStore || MoveInfo.MoveType == MoveType.OutStore) if (runStatus < StoreRunStatus.Runing || MoveInfo.MoveType == MoveType.InStore || MoveInfo.MoveType == MoveType.OutStore)
...@@ -402,6 +418,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -402,6 +418,21 @@ namespace OnlineStore.DeviceLibrary
StartExecuctOut(param); StartExecuctOut(param);
} }
} }
else if (false && IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.HIGH) && noInStore && IsDebug.Equals(false))
{
LogInfo("发现入口有无信息料");
InOutParam inOutParam = new InOutParam(MoveType.InStore);
inOutParam.InStoreNg = true;
inOutParam.TargetPosition = 1;
inOutParam.moveType = MoveType.InStore;
inOutParam.PlateH = 56;
StoreManager.LoadInoutParam(inOutParam, MoveType.InStore, true, this);
runStatus = StoreRunStatus.Busy;
storeStatus = StoreStatus.InStoreExecute;
MoveInfo.NewMove(MoveType.InStore, inOutParam);
MoveInfo.NextMoveStep(StoreMoveStep.SI_01_InoutToP1);
}
} }
catch (Exception ex) catch (Exception ex)
{ {
......
using OnlineStore.Common;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace OnlineStore.DeviceLibrary
{
partial class BoxBean
{
Thread camerathread;
Asa.HIK.IPCamera camera;
public event EventHandler<Bitmap> camera_event;
void LoadCameraConfig(string id) {
string path = @".\StoreConfig\box_"+id+"_Camera.json";
if (!File.Exists(path))
{
LogUtil.error(Name + "找不到监控相机配置文件"+ path);
}
camera = new Asa.HIK.IPCamera(path);
bool rtn = camera.Load();
if (!rtn)
LogUtil.error(Name + "加载监控相机配置文件失败");
camerathread = new Thread(new ThreadStart(startCamera));
camerathread.Start();
//pictureBox1.Image = bmp;
}
void startCamera() {
var rtn = camera.Open(0);
if (!rtn)
LogUtil.error(Name + "打开监控相机失败");
while (camera.IsOpen[0])
{
rtn = camera.GrabOne(0, out Bitmap bmp);
if (rtn)
{
camera_event?.Invoke(this, bmp);
}
Thread.Sleep(1000/10);
}
camera.Close(0);
camera.Dispose();
}
}
}
...@@ -82,19 +82,43 @@ namespace OnlineStore.DeviceLibrary ...@@ -82,19 +82,43 @@ namespace OnlineStore.DeviceLibrary
LogUtil.error(Name + " 启动出库出错,忙碌或报警中 ,storeStatus=" + runStatus + ",MoveType=" + MoveInfo.MoveType + ",isInSuddenDown=" + isInSuddenDown + ",isNoAirCheck" + isNoAirCheck); LogUtil.error(Name + " 启动出库出错,忙碌或报警中 ,storeStatus=" + runStatus + ",MoveType=" + MoveInfo.MoveType + ",isInSuddenDown=" + isInSuddenDown + ",isNoAirCheck" + isNoAirCheck);
return false; return false;
} }
if (IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.LOW))
{
LogUtil.error(Name + " 启动出库出错,入口没有检测到料盘, 任务取消");
StoreManager.cancelPutInTask(Name, param.WareCode);
return true;
}
bool GetOut = false;
if (!StoreManager.LoadInoutParam(param, MoveType.InStore, true, this)) if (!StoreManager.LoadInoutParam(param, MoveType.InStore, true, this))
{ {
LogUtil.error(Name + " 启动入库【" + param.ToStr() + "】出错,找不到库位信息"); LogUtil.error(Name + " 启动入库【" + param.ToStr() + "】出错,找不到库位信息");
return false; GetOut = true;
} }
LogInfo(" 启动入库【" + param.ToStr() + "】 "); LogInfo(" 启动入库【" + param.ToStr() + "】 ");
if (!AutoInout.autoNext) LogInfo( "LoadInoutParam" + JsonHelper.SerializeObject(param.MoveP));
if (AutoInout.autoNext || param.WareCode == "#test#")
{ {
if (!param.InStoreNg && !ReviceInStoreCMD(param.PosID, param.PlateH, param.PlateW, param.WareCode)) LogInfo(" 循环测试入库, 不做入库验证. ");
return false; }
else
{
if (param.InStoreNg)
{
LogInfo(" NG料送出. ");
GetOut = true;
}
else if (!ReviceInStoreCMD(param.PosID, param.PlateH, param.PlateW, param.WareCode)) {
LogInfo(" 入库验证失败送出. ");
GetOut = true;
}
}
if (GetOut) {
param.TargetPosition = 1;
param.InStoreNg = true;
param.MoveP = null;
StoreManager.LoadInoutParam(param, MoveType.InStore, true, this);
} }
runStatus = StoreRunStatus.Busy; runStatus = StoreRunStatus.Busy;
if (param.TargetPosition.Equals(0)) if (param.TargetPosition.Equals(0))
{ {
...@@ -167,7 +191,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -167,7 +191,8 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SI_06_FixtureCheck); MoveInfo.NextMoveStep(StoreMoveStep.SI_06_FixtureCheck);
InOutStoreLog(outType + "等待料叉检测信号 "); InOutStoreLog(outType + "等待料叉检测信号 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Fixture_Check, IO_VALUE.HIGH)); if (Config.IsUse_Tray_Check.Equals(1))
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Fixture_Check, IO_VALUE.HIGH));
} }
else if (MoveInfo.IsStep(StoreMoveStep.SI_06_FixtureCheck)) else if (MoveInfo.IsStep(StoreMoveStep.SI_06_FixtureCheck))
{ {
...@@ -219,7 +244,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -219,7 +244,7 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SI_10_GoBack); MoveInfo.NextMoveStep(StoreMoveStep.SI_10_GoBack);
InOutStoreLog(outType + "升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P1[" + moveP.ComPress_P1 + "],"); InOutStoreLog(outType + "升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P1[" + moveP.ComPress_P1 + "],");
ComAxis.AbsMove(MoveInfo, moveP.ComPress_P1, Config.CompAxis_P1_Speed); //ComAxis.AbsMove(MoveInfo, moveP.ComPress_P1, Config.CompAxis_P1_Speed);
MiddleAxis.AbsMove(MoveInfo, moveP.Middle_P1, Config.MiddleAxis_P1_Speed); MiddleAxis.AbsMove(MoveInfo, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed); UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed);
} }
...@@ -268,6 +293,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -268,6 +293,7 @@ namespace OnlineStore.DeviceLibrary
OutDoorReelType = 1; OutDoorReelType = 1;
InOutStoreLog(outType + "打开出料口门 "); InOutStoreLog(outType + "打开出料口门 ");
CylinderMove(MoveInfo, IO_Type.OutDoor_Down, IO_Type.OutDoor_Up); CylinderMove(MoveInfo, IO_Type.OutDoor_Down, IO_Type.OutDoor_Up);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.OutDoor_Check, IO_VALUE.LOW));
} }
else if (MoveInfo.IsStep(StoreMoveStep.SI_25_InoutToP1)) else if (MoveInfo.IsStep(StoreMoveStep.SI_25_InoutToP1))
{ {
...@@ -276,7 +302,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -276,7 +302,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StoreMoveStep.SI_26_GoBack); MoveInfo.NextMoveStep(StoreMoveStep.SI_26_GoBack);
InOutStoreLog(outType + "升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P1[" + moveP.ComPress_P1 + "],关闭出料口门"); InOutStoreLog(outType + "升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P1[" + moveP.ComPress_P1 + "],关闭出料口门");
ComAxis.AbsMove(MoveInfo, moveP.ComPress_P1, Config.CompAxis_P1_Speed); //ComAxis.AbsMove(MoveInfo, moveP.ComPress_P1, Config.CompAxis_P1_Speed);
MiddleAxis.AbsMove(MoveInfo, moveP.Middle_P1, Config.MiddleAxis_P1_Speed); MiddleAxis.AbsMove(MoveInfo, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed); UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
...@@ -307,7 +333,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -307,7 +333,7 @@ namespace OnlineStore.DeviceLibrary
private void StartExecuctOut(InOutParam param) private void StartExecuctOut(InOutParam param)
{ {
bool result = false; bool result = false;
if (StoreManager.Store.CanOut(true)) if (StoreManager.Store.CanOut(true) || param.TargetPosition==1)
{ {
result = StartOutStoreMove(param); result = StartOutStoreMove(param);
} }
...@@ -329,20 +355,25 @@ namespace OnlineStore.DeviceLibrary ...@@ -329,20 +355,25 @@ namespace OnlineStore.DeviceLibrary
{ {
waitOutStoreList.Enqueue(param); waitOutStoreList.Enqueue(param);
} }
if (IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.HIGH)){
}
} }
} }
} }
public override bool StartOutStoreMove(InOutParam param) public override bool StartOutStoreMove(InOutParam param,bool Shelfisready=false)
{ {
startOutStoreTime = DateTime.Now; startOutStoreTime = DateTime.Now;
string posId = param != null ? param.PosID : ""; string posId = param != null ? param.PosID : "";
if (isInSuddenDown || isNoAirCheck || if (isInSuddenDown || isNoAirCheck
(!runStatus.Equals(StoreRunStatus.Runing)) || !runStatus.Equals(StoreRunStatus.Runing)
|| (!MoveInfo.MoveType.Equals(MoveType.None))) || !MoveInfo.MoveType.Equals(MoveType.None)
|| (IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.HIGH) && param.TargetPosition != 1)//出口有料, 但是排除是紧急出料
)
{ {
LogUtil.error(Name + " 启动出库【" + param.ToStr() + "】失败,忙碌或报警中 ,storeStatus:" + runStatus + ",MoveType:" + MoveInfo.MoveType + ",isInSuddenDown:" + isInSuddenDown + ",isNoAirCheck:" + isNoAirCheck); LogUtil.error(Name + " 启动出库【" + param.ToStr() + "】失败,忙碌或报警中 ,storeStatus:" + runStatus + ",MoveType:" + MoveInfo.MoveType + ",isInSuddenDown:" + isInSuddenDown + ",isNoAirCheck:" + isNoAirCheck+ ",IO_Type.InDoor_Check;"+ IOValue(IO_Type.InDoor_Check));
return false; return false;
} }
...@@ -351,12 +382,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -351,12 +382,16 @@ namespace OnlineStore.DeviceLibrary
LogUtil.error(Name + " 启动出库【" + param.ToStr() + "】出错,找不到库位信息"); LogUtil.error(Name + " 启动出库【" + param.ToStr() + "】出错,找不到库位信息");
return false; return false;
} }
param.TargetBox = ID; param.TargetBox = ID;
storeStatus = StoreStatus.OutStoreExecute; storeStatus = StoreStatus.OutStoreExecute;
runStatus = StoreRunStatus.Busy; runStatus = StoreRunStatus.Busy;
param.moveType = MoveType.OutStore; param.moveType = MoveType.OutStore;
MoveInfo.NewMove(MoveType.OutStore, param); MoveInfo.NewMove(MoveType.OutStore, param);
LogInfo("启动出库【" + param.ToStr() + "】 "); LogInfo("启动出库【" + param.ToStr() + "】 ");
LogInfo("LoadInoutParam" + JsonHelper.SerializeObject(param.MoveP));
//出库前shelfPosID需要固定,出库时根据rfid判断是否需要出入料架 //出库前shelfPosID需要固定,出库时根据rfid判断是否需要出入料架
MoveInfo.NextMoveStep(StoreMoveStep.SO_01_InoutBack); MoveInfo.NextMoveStep(StoreMoveStep.SO_01_InoutBack);
InOutStoreLog("出库 :进出轴到P1 开始"); InOutStoreLog("出库 :进出轴到P1 开始");
...@@ -455,7 +490,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -455,7 +490,7 @@ namespace OnlineStore.DeviceLibrary
fixMoveP.UpDown_P1 = Config.UpDownAxis_P1; fixMoveP.UpDown_P1 = Config.UpDownAxis_P1;
fixMoveP.UpDown_P2 = Config.UpDownAxis_P2; fixMoveP.UpDown_P2 = Config.UpDownAxis_P2;
fixMoveP.ComPress_P2 = fixposition.ComAxis_P2; fixMoveP.ComPress_P2 = Config.GetComP2(MoveInfo.MoveParam.PlateH);
fixMoveP.ComPress_P3 = fixposition.ComAxis_P3; fixMoveP.ComPress_P3 = fixposition.ComAxis_P3;
fixMoveP.InOut_P3 = fixposition.InoutAxis_P3; fixMoveP.InOut_P3 = fixposition.InoutAxis_P3;
fixMoveP.Middle_P2 = fixposition.MiddleAxis_P2; fixMoveP.Middle_P2 = fixposition.MiddleAxis_P2;
...@@ -466,29 +501,30 @@ namespace OnlineStore.DeviceLibrary ...@@ -466,29 +501,30 @@ namespace OnlineStore.DeviceLibrary
} }
InOutStoreLog(outType + "等待料叉检测信号 "); InOutStoreLog(outType + "等待料叉检测信号 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Fixture_Check, IO_VALUE.HIGH)); if (Config.IsUse_Tray_Check.Equals(1))
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Fixture_Check, IO_VALUE.HIGH));
} }
#region 修正料盘 #region 修正料盘
else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_01_FixDisk)) else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_01_FixDisk))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_06A_02_FixDisk); MoveInfo.NextMoveStep(StoreMoveStep.SO_06A_02_FixDisk);
InOutStoreLog(outType + "[修正]升降轴到P3[" + moveP.UpDown_P3 + "]"); InOutStoreLog(outType + "[修正]升降轴到P3[" + fixMoveP.UpDown_P3 + "]");
UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P3, Config.UpDownAxis_P4_Speed); UpdownAxis.AbsMove(MoveInfo, fixMoveP.UpDown_P3, Config.UpDownAxis_P4_Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_02_FixDisk)) else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_02_FixDisk))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_06A_03_FixDisk); MoveInfo.NextMoveStep(StoreMoveStep.SO_06A_03_FixDisk);
InOutStoreLog(outType + "[修正]进出轴到P3 [" + moveP.InOut_P3 + "] "); InOutStoreLog(outType + "[修正]进出轴到P3 [" + fixMoveP.InOut_P3 + "] ");
InoutAxis.AbsMove(MoveInfo, moveP.InOut_P3, Config.InOutAxis_P3_Speed); InoutAxis.AbsMove(MoveInfo, fixMoveP.InOut_P3, Config.InOutAxis_P3_Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_03_FixDisk)) else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_03_FixDisk))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_06A_04_FixDisk); MoveInfo.NextMoveStep(StoreMoveStep.SO_06A_04_FixDisk);
InOutStoreLog(outType + "[修正]升降轴到P4[" + moveP.UpDown_P4 + "],压紧轴到P3[" + moveP.ComPress_P3 + "]"); InOutStoreLog(outType + "[修正]升降轴到P4[" + fixMoveP.UpDown_P4 + "],压紧轴到P3[" + moveP.ComPress_P3 + "]");
ComAxis.AbsMove(MoveInfo, moveP.ComPress_P3, Config.CompAxis_P3_Speed); ComAxis.AbsMove(MoveInfo, fixMoveP.ComPress_P3, Config.CompAxis_P3_Speed);
UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P4, Config.UpDownAxis_P4_Speed); UpdownAxis.AbsMove(MoveInfo, fixMoveP.UpDown_P4, Config.UpDownAxis_P4_Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_04_FixDisk)) else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_04_FixDisk))
{ {
...@@ -506,18 +542,17 @@ namespace OnlineStore.DeviceLibrary ...@@ -506,18 +542,17 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_06_FixDisk)) else if (MoveInfo.IsStep(StoreMoveStep.SO_06A_06_FixDisk))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_07_FixtureCheck); MoveInfo.NextMoveStep(StoreMoveStep.SO_07_FixtureCheck);
InOutStoreLog(outType + "[修正]升降轴到P2[" + moveP.UpDown_P2 + "] "); InOutStoreLog(outType + "[修正]升降轴到P2[" + fixMoveP.UpDown_P2 + "] ");
UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P2, Config.UpDownAxis_P1_Speed); UpdownAxis.AbsMove(MoveInfo, fixMoveP.UpDown_P2, Config.UpDownAxis_P1_Speed);
} }
#endregion #endregion
else if (MoveInfo.IsStep(StoreMoveStep.SO_07_FixtureCheck)) else if (MoveInfo.IsStep(StoreMoveStep.SO_07_FixtureCheck))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_08_InoutToP2);
MoveInfo.NextMoveStep(StoreMoveStep.SO_08_InoutToP2); InOutStoreLog(outType + "进出轴到P2 [" + moveP.InOut_P2 + "]");
InOutStoreLog(outType + "进出轴到P2 [" + moveP.InOut_P2 + "]"); InoutAxis.AbsMove(MoveInfo, moveP.InOut_P2, Config.InOutAxis_P2_Speed);
InoutAxis.AbsMove(MoveInfo, moveP.InOut_P2, Config.InOutAxis_P2_Speed); ClearTimeoutAlarm("进出轴可以到P2");
ClearTimeoutAlarm("进出轴可以到P2");
} }
else if (MoveInfo.IsStep(StoreMoveStep.SO_08_InoutToP2)) else if (MoveInfo.IsStep(StoreMoveStep.SO_08_InoutToP2))
...@@ -538,7 +573,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -538,7 +573,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StoreMoveStep.SO_11_GoBack); MoveInfo.NextMoveStep(StoreMoveStep.SO_11_GoBack);
InOutStoreLog(outType + "升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P1[" + moveP.ComPress_P1 + "] "); InOutStoreLog(outType + "升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P1[" + moveP.ComPress_P1 + "] ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
ComAxis.AbsMove(MoveInfo, moveP.ComPress_P1, Config.CompAxis_P1_Speed); //ComAxis.AbsMove(MoveInfo, moveP.ComPress_P1, Config.CompAxis_P1_Speed);
MiddleAxis.AbsMove(MoveInfo, moveP.Middle_P1, Config.MiddleAxis_P1_Speed); MiddleAxis.AbsMove(MoveInfo, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed); UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed);
} }
...@@ -548,7 +583,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -548,7 +583,7 @@ namespace OnlineStore.DeviceLibrary
if (AutoInout.autoNext) if (AutoInout.autoNext)
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_12_WaitTrayGo); MoveInfo.NextMoveStep(StoreMoveStep.SO_12_WaitTrayGo);
InOutStoreLog(outType + "自动出入库,等待提升机构拿走料盘 或等待1000"); InOutStoreLog(outType + "自动出入库,等待提升机构拿走料盘 或等待1000毫秒");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.InDoor_Check, IO_VALUE.LOW)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.InDoor_Check, IO_VALUE.LOW));
MoveInfo.OneWaitCanEndStep = true; MoveInfo.OneWaitCanEndStep = true;
...@@ -563,21 +598,26 @@ namespace OnlineStore.DeviceLibrary ...@@ -563,21 +598,26 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StoreMoveStep.SO_12_WaitTrayGo); MoveInfo.NextMoveStep(StoreMoveStep.SO_12_WaitTrayGo);
InOutStoreLog(outType + "等待提升机构拿走料盘 "); InOutStoreLog(outType + "等待提升机构拿走料盘 ");
//MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); //MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.InDoor_Check, IO_VALUE.LOW));
ClearTimeoutAlarm("提升机构夹爪开始取料"); ClearTimeoutAlarm("提升机构夹爪开始取料");
ClearTimeoutAlarm("提升机构夹爪可以取料"); ClearTimeoutAlarm("提升机构可以取料");
} }
else if (MoveInfo.IsTimeOut(60)) else if (MoveInfo.IsTimeOut(60))
{ {
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveStep + "] 等待 提升机构夹爪开始取料 超时 [" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒"; WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveStep + "] 等待 提升机构夹爪开始取料 超时 [" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, ID * 1000 + 30); LogUtil.error(WarnMsg, ID * 1000 + 30);
Alarm(AlarmType.IoSingleTimeOut); Alarm(AlarmType.IoSingleTimeOut);
} }
} }
else if (MoveInfo.IsTimeOut(60)) else if (MoveInfo.IsTimeOut(60))
{ {
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveStep + "] 等待 提升机构夹爪可以取料 超时 [" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒"; if (StoreManager.Store.MoveInfo.MoveStep == StoreMoveStep.LI_17_SaveSize) {
InOutStoreLog(outType + " 线体开始入料, 将当前滞留盘送往紧急出料口");
MoveInfo.NextMoveStep(StoreMoveStep.SO_14_InoutToP1);
}
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveStep + "] 等待 提升机构可以取料 超时 [" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, ID * 1000 + 30); LogUtil.error(WarnMsg, ID * 1000 + 30);
Alarm(AlarmType.IoSingleTimeOut); Alarm(AlarmType.IoSingleTimeOut);
} }
...@@ -585,18 +625,28 @@ namespace OnlineStore.DeviceLibrary ...@@ -585,18 +625,28 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.IsStep(StoreMoveStep.SO_12_WaitTrayGo)) else if (MoveInfo.IsStep(StoreMoveStep.SO_12_WaitTrayGo))
{ {
TimeSpan span = DateTime.Now - startOutStoreTime; if (IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.HIGH) && MoveInfo.IsTimeOut(30) && !AutoInout.autoNext)
string posId = MoveInfo.MoveParam.PosID; {
LogUtil.info(Name + " 【" + posId + "】 出库结束,耗时【" + FormUtil.GetSpanStr(span) + "】!"); LogUtil.info(Name + " 等待夹爪取料超时,送至紧急出料口!");
MoveInfo.NextMoveStep(StoreMoveStep.SO_14_InoutToP1);
}
else if (IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.LOW)|| AutoInout.autoNext)
{
TimeSpan span = DateTime.Now - startOutStoreTime;
string posId = MoveInfo.MoveParam.PosID;
LogUtil.info(Name + " 【" + posId + "】 出库结束,耗时【" + FormUtil.GetSpanStr(span) + "】!");
MoveEndP(); MoveEndP();
AutoInout.InOutEndProcess(this, MoveType.OutStore); AutoInout.InOutEndProcess(this, MoveType.OutStore);
}
} }
#endregion #endregion
#region 出料移栽失败,送至紧急出料口 #region 出料移栽失败,送至紧急出料口
else if (MoveInfo.IsStep(StoreMoveStep.SO_14_InoutToP1)) else if (MoveInfo.IsStep(StoreMoveStep.SO_14_InoutToP1))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_15_AxisBack); MoveInfo.NextMoveStep(StoreMoveStep.SO_15_AxisBack);
MoveInfo.MoveParam.TargetPosition = 1;
InOutStoreLog(outType + " 升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P3[" + moveP.ComPress_P3 + "]"); InOutStoreLog(outType + " 升降轴到P1[" + moveP.UpDown_P1 + "],旋转轴到P1[" + moveP.Middle_P1 + "] ,压紧轴到P3[" + moveP.ComPress_P3 + "]");
ComAxis.AbsMove(MoveInfo, moveP.ComPress_P3, Config.CompAxis_P3_Speed); ComAxis.AbsMove(MoveInfo, moveP.ComPress_P3, Config.CompAxis_P3_Speed);
UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed); UpdownAxis.AbsMove(MoveInfo, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed);
...@@ -628,7 +678,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -628,7 +678,8 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(StoreMoveStep.SO_22_FixtureCheck); MoveInfo.NextMoveStep(StoreMoveStep.SO_22_FixtureCheck);
InOutStoreLog(outType + "等待料叉检测信号 "); InOutStoreLog(outType + "等待料叉检测信号 ");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Fixture_Check, IO_VALUE.HIGH)); if (Config.IsUse_Tray_Check.Equals(1))
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Fixture_Check, IO_VALUE.HIGH));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.OutDoor_Check, IO_VALUE.LOW)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.OutDoor_Check, IO_VALUE.LOW));
} }
else if (MoveInfo.IsStep(StoreMoveStep.SO_22_FixtureCheck)) else if (MoveInfo.IsStep(StoreMoveStep.SO_22_FixtureCheck))
......
...@@ -240,6 +240,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -240,6 +240,9 @@ namespace OnlineStore.DeviceLibrary
LogUtil.info(logName + " 成功"); LogUtil.info(logName + " 成功");
return true; return true;
} }
else {
LogUtil.info(logName + "服务器反馈 :" + JsonHelper.SerializeObject(resultOperation));
}
break; break;
} }
} }
...@@ -250,7 +253,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -250,7 +253,7 @@ namespace OnlineStore.DeviceLibrary
} }
return false; return false;
} }
public string LastVisualRfid = "";
private void ReviceOutStoreProcess(Operation resultOperation) private void ReviceOutStoreProcess(Operation resultOperation)
{ {
DateTime time = DateTime.Now; DateTime time = DateTime.Now;
...@@ -262,7 +265,15 @@ namespace OnlineStore.DeviceLibrary ...@@ -262,7 +265,15 @@ namespace OnlineStore.DeviceLibrary
string[] posIdArray = data[ParamDefine.posId].Split(splitChar); string[] posIdArray = data[ParamDefine.posId].Split(splitChar);
string[] plateWArray = data[ParamDefine.plateW].Split(splitChar); string[] plateWArray = data[ParamDefine.plateW].Split(splitChar);
string[] plateHArray = data[ParamDefine.plateH].Split(splitChar); string[] plateHArray = data[ParamDefine.plateH].Split(splitChar);
if (string.IsNullOrEmpty(LastVisualRfid))
{
LastVisualRfid = data[ParamDefine.rfid];
}
else if (LastVisualRfid != data[ParamDefine.rfid])
{
LogUtil.error(Name + $" 上一个工单还未结束LastVisualRfid={LastVisualRfid}, CurrentVisualRfid={data[ParamDefine.rfid]}");
return;
}
bool urgentReel = FormUtil.GetBoolData(data, ParamDefine.urgentReel); bool urgentReel = FormUtil.GetBoolData(data, ParamDefine.urgentReel);
//bool cutReel = FormUtil.GetBoolData(data, ParamDefine.cutReel); //bool cutReel = FormUtil.GetBoolData(data, ParamDefine.cutReel);
//bool smallReel = FormUtil.GetBoolData(data, ParamDefine.smallReel); //bool smallReel = FormUtil.GetBoolData(data, ParamDefine.smallReel);
...@@ -331,9 +342,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -331,9 +342,7 @@ namespace OnlineStore.DeviceLibrary
} }
} }
} }
#endregion #endregion
} }
} }
...@@ -102,20 +102,22 @@ namespace OnlineStore.DeviceLibrary ...@@ -102,20 +102,22 @@ namespace OnlineStore.DeviceLibrary
IOManager.Init(); IOManager.Init();
CodeManager.LoadConfig(); CodeManager.LoadConfig();
CurrShelfNum = ConfigAppSettings.GetIntValue(Setting_Init.CurrShelfNum); CurrShelfNum = ConfigAppSettings.GetValue(Setting_Init.CurrShelfNum);
CurrShelfType = ConfigAppSettings.GetIntValue(Setting_Init.CurrShelfType); CurrShelfType = ConfigAppSettings.GetIntValue(Setting_Init.CurrShelfType);
UpdateShelfNum(CurrShelfNum, CurrShelfType); UpdateShelfNum(CurrShelfNum, CurrShelfType);
HasT4Axis = Convert.ToBoolean(ConfigAppSettings.GetValue(Setting_Init.HasT4Axis)); HasT4Axis = Convert.ToBoolean(ConfigAppSettings.GetValue(Setting_Init.HasT4Axis));
Task.Factory.StartNew(delegate Task.Factory.StartNew(delegate
{ {
//RFIDManager.RfidReader.Open(rfidList.ToArray()); RFIDManager.Open();
IOManager.instance.ConnectionIOList(ioList); IOManager.instance.ConnectionIOList(ioList);
AxisManager.Init(); AxisManager.Init();
//AgvClient.Init(); //AgvClient.Init();
IOMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW); IOMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW);
IOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW); IOMove(IO_Type.AutoRun_HddLed, IO_VALUE.LOW);
IOMove(IO_Type.RunSign_HddLed, IO_VALUE.LOW); IOMove(IO_Type.RunSign_HddLed, IO_VALUE.LOW);
IOMove(IO_Type.Device_Led, IO_VALUE.HIGH);
mainTimer.Enabled = true; mainTimer.Enabled = true;
if (!electricClamp.OpenPort(Config.Clamp1Port)) if (!electricClamp.OpenPort(Config.Clamp1Port))
{ {
...@@ -183,6 +185,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -183,6 +185,7 @@ namespace OnlineStore.DeviceLibrary
return false; return false;
} }
LogUtil.info(Name + "开始启动 ,启动时间:" + StartTime.ToString()); LogUtil.info(Name + "开始启动 ,启动时间:" + StartTime.ToString());
IOMove(IO_Type.Device_Led, IO_VALUE.HIGH);
runStatus = StoreRunStatus.HomeMoving; runStatus = StoreRunStatus.HomeMoving;
StartTime = DateTime.Now; StartTime = DateTime.Now;
StartResetMove(); StartResetMove();
...@@ -277,6 +280,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -277,6 +280,8 @@ namespace OnlineStore.DeviceLibrary
LogUtil.info(Name + "复位 " + MoveInfo.MoveStep + " :流水线转动3秒"); LogUtil.info(Name + "复位 " + MoveInfo.MoveStep + " :流水线转动3秒");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
LineRun(MoveInfo); LineRun(MoveInfo);
IOMove(IO_Type.Line_Run, IO_VALUE.HIGH, false, 5000);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LR_02_LineRun)) else if (MoveInfo.IsStep(StoreMoveStep.LR_02_LineRun))
{ {
...@@ -287,11 +292,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -287,11 +292,14 @@ namespace OnlineStore.DeviceLibrary
T1_BatchAxis.HomeMove(MoveInfo); T1_BatchAxis.HomeMove(MoveInfo);
T3_UpdownAxis.HomeMove(MoveInfo); T3_UpdownAxis.HomeMove(MoveInfo);
LineStop(MoveInfo); // LineStop(MoveInfo);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LR_03_BatchAxisHome_wait)) else if (MoveInfo.IsStep(StoreMoveStep.LR_03_BatchAxisHome_wait))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LR_03_BatchAxisHome); MoveInfo.NextMoveStep(StoreMoveStep.LR_03_BatchAxisHome);
if (HasT4Axis)
T4_InOut_Axis.HomeMove(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
} }
else if (MoveInfo.IsStep(StoreMoveStep.LR_03_BatchAxisHome)) else if (MoveInfo.IsStep(StoreMoveStep.LR_03_BatchAxisHome))
...@@ -401,7 +409,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -401,7 +409,8 @@ namespace OnlineStore.DeviceLibrary
equip.StopRun(); equip.StopRun();
} }
runStatus = StoreRunStatus.Wait; runStatus = StoreRunStatus.Wait;
// RFIDManager.Close(); IOMove(IO_Type.Device_Led, IO_VALUE.LOW);
RFIDManager.Close();
TimeSpan span = DateTime.Now - StartTime; TimeSpan span = DateTime.Now - StartTime;
LogUtil.info(Name + ",停止运行,总运行时间:" + span.ToString()); LogUtil.info(Name + ",停止运行,总运行时间:" + span.ToString());
} }
...@@ -480,17 +489,28 @@ namespace OnlineStore.DeviceLibrary ...@@ -480,17 +489,28 @@ namespace OnlineStore.DeviceLibrary
{ {
if (IsDoValue(IO_Type.Alarm_HddLed, IO_VALUE.LOW)) if (IsDoValue(IO_Type.Alarm_HddLed, IO_VALUE.LOW))
{ {
IOMove(IO_Type.Alarm_HddLed, IO_VALUE.HIGH); CheckAndMove(IO_Type.Alarm_HddLed, IO_VALUE.HIGH);
} }
else else
{ {
IOMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW); CheckAndMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW);
} }
} }
else if (IsDoValue(IO_Type.Alarm_HddLed, IO_VALUE.HIGH)) else if (IsDoValue(IO_Type.Alarm_HddLed, IO_VALUE.HIGH))
{ {
IOMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW); CheckAndMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW);
}
if (isNeedAlarmLed && StoreManager.Store.UseBuzzer)
{
CheckAndMove(IO_Type.Alarm_Buzzer, IO_VALUE.HIGH);
} }
else
{
CheckAndMove(IO_Type.Alarm_Buzzer, IO_VALUE.LOW);
}
if (IOValue(IO_Type.Line_OutCheck).Equals(IO_VALUE.HIGH)) if (IOValue(IO_Type.Line_OutCheck).Equals(IO_VALUE.HIGH))
{ {
//IOMove(IO_Type.LineOut_Led, IO_VALUE.HIGH); //IOMove(IO_Type.LineOut_Led, IO_VALUE.HIGH);
...@@ -597,7 +617,18 @@ namespace OnlineStore.DeviceLibrary ...@@ -597,7 +617,18 @@ namespace OnlineStore.DeviceLibrary
//急停按钮 //急停按钮
if (IOValue(IO_Type.SuddenStop_BTN).Equals(IO_VALUE.LOW)) if (IOValue(IO_Type.SuddenStop_BTN).Equals(IO_VALUE.LOW))
{ {
return; if (IOManager.IOValue(IO_Type.SuddenStop_BTN, 0).Equals(IO_VALUE.LOW))
{
if (isInSuddenDown.Equals(false))
{
isInSuddenDown = true;
LogUtil.error(Name + "收到急停信号,报警急停");
WarnMsg = Name + "收到急停信号,报警急停";
//报警时会关闭所有轴
Alarm(AlarmType.SuddenStop, "1", WarnMsg, MoveType.None);
}
}
} }
else if (IOValue(IO_Type.Reset_BTN).Equals(IO_VALUE.HIGH)) else if (IOValue(IO_Type.Reset_BTN).Equals(IO_VALUE.HIGH))
{ {
...@@ -659,6 +690,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -659,6 +690,10 @@ namespace OnlineStore.DeviceLibrary
if (runStatus.Equals(StoreRunStatus.Runing) || runStatus.Equals(StoreRunStatus.Busy)) if (runStatus.Equals(StoreRunStatus.Runing) || runStatus.Equals(StoreRunStatus.Busy))
{ {
if (IOValue(IO_Type.Line_InCheck).Equals(IO_VALUE.HIGH) && IOValue(IO_Type.Line_WaitCheck).Equals(IO_VALUE.LOW) && (!InShelfInProcess))
{
ShelfEnterProcess();
}
ShelfOutProcess(); ShelfOutProcess();
IOMinoitor(); IOMinoitor();
ShowTimeLog("ShelfOutProcess"); ShowTimeLog("ShelfOutProcess");
...@@ -748,27 +783,54 @@ namespace OnlineStore.DeviceLibrary ...@@ -748,27 +783,54 @@ namespace OnlineStore.DeviceLibrary
#endregion #endregion
void IOMinoitor() { void IOMinoitor() {
if (IOValue(IO_Type.Line_WaitCheck).Equals(IO_VALUE.LOW) && AgvClient.GetAction(Config.AgvInName) == ClientAction.None) if (IOValue(IO_Type.Line_WaitCheck).Equals(IO_VALUE.LOW) && AgvClient.GetAction(Config.AgvInName) == Agv.ClientAction.None)
{ {
AgvClient.NeedEnter(Config.AgvInName); AgvClient.NeedEnter(Config.AgvInName,"");
} }
if (IOValue(IO_Type.Line_OutCheck).Equals(IO_VALUE.HIGH) && AgvClient.GetAction(Config.AgvOutName) == ClientAction.None) if (IOValue(IO_Type.Line_OutCheck).Equals(IO_VALUE.HIGH) && AgvClient.GetAction(Config.AgvOutName) == Agv.ClientAction.None)
{ {
AgvClient.NeedLeave(Config.AgvOutName); var rfiddevice = RFIDManager.GetShelfId(Config.Out_Rfid_IP);
var rfid = rfiddevice.NumStr();
AgvClient.NeedLeave(Config.AgvOutName, rfid);
} }
} }
public bool ReleaseShelf()
public int GetShelfNum()
{ {
int ShelfCheck1 = 0;// (int)IOValue(IO_Type.ShelfCheck1);
int ShelfCheck2 = 0;//(int)IOValue(IO_Type.ShelfCheck2); if (IOValue(IO_Type.Line_OutCheck).Equals(IO_VALUE.HIGH))
int ShelfCheck3 = 0;//(int)IOValue(IO_Type.ShelfCheck3); {
int ShelfCheck4 = 0;//(int)IOValue(IO_Type.ShelfCheck4); IOMove(IO_Type.Line_Run, IO_VALUE.HIGH, false, 4000);
IOMove(IO_Type.Line_Stop4_Out, IO_VALUE.HIGH, false, 1000);
string dStr = ShelfCheck4.ToString()+ShelfCheck3.ToString() + ShelfCheck2.ToString() + ShelfCheck1.ToString(); LogUtil.info(Name + "料串手动出库,放行区放行");
int num = Convert.ToInt32(dStr, 2); return true;
return num; }
//if (IOValue(IO_Type.RaiseStation_FrontCheck).Equals(IO_VALUE.LOW))
if (IOValue(IO_Type.Line_OutCheck).Equals(IO_VALUE.LOW)
&& IOValue(IO_Type.Line_BufferCheck).Equals(IO_VALUE.LOW)
&& IOValue(IO_Type.Line_WorkCheck).Equals(IO_VALUE.HIGH)
&& IOValue(IO_Type.TopCylinder_Down).Equals(IO_VALUE.HIGH)
)
{
IOMove(IO_Type.Line_Run, IO_VALUE.HIGH, false, 3000);
IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.HIGH, false, 2000);
LogUtil.info(Name + "料串手动出库, 工作区放行");
return true;
}
bool box1stay = BoxMap[1].runStatus == StoreRunStatus.Runing || BoxMap[1].runStatus == StoreRunStatus.Wait;
bool box2stay = BoxMap[2].runStatus == StoreRunStatus.Runing || BoxMap[2].runStatus == StoreRunStatus.Wait;
bool shelfstay = StoreManager.Store.MoveInfo.MoveStep.Equals(StoreMoveStep.LO_09_WaitOut);
if (box1stay && box2stay && shelfstay)
{
//OutstoreEndSendShelf = true;
LO_31_BatchAxisToP1();
LogUtil.info(Name + "料串手动出库,强制放行");
return true;
}
LogUtil.info(Name + "不符合料串放行条件");
return false;
} }
public void LineRun(StoreMoveInfo move=null ) public void LineRun(StoreMoveInfo move=null )
......
...@@ -15,7 +15,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -15,7 +15,7 @@ namespace OnlineStore.DeviceLibrary
public bool InstoreEndSendShelf = false; public bool InstoreEndSendShelf = false;
public bool OutstoreEndSendShelf = false; public bool OutstoreEndSendShelf = false;
public int CurrShelfNum = 0; public string CurrShelfNum = "0";
/// <summary> /// <summary>
/// 料架类型,0=空料架,1=入库料架,2=出库料架 /// 料架类型,0=空料架,1=入库料架,2=出库料架
/// </summary> /// </summary>
...@@ -25,7 +25,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -25,7 +25,7 @@ namespace OnlineStore.DeviceLibrary
/// </summary> /// </summary>
/// <param name="num">料架编号</param> /// <param name="num">料架编号</param>
/// <param name="type">料架类型,0=空料架,1=入库料架,2=出库料架</param> /// <param name="type">料架类型,0=空料架,1=入库料架,2=出库料架</param>
private void UpdateShelfNum(int num,int type) private void UpdateShelfNum(string num,int type)
{ {
CurrShelfNum = num; CurrShelfNum = num;
CurrShelfType = type; CurrShelfType = type;
...@@ -66,10 +66,15 @@ namespace OnlineStore.DeviceLibrary ...@@ -66,10 +66,15 @@ namespace OnlineStore.DeviceLibrary
} }
else if (wait.WaitType.Equals(WaitEnum.W009_ScanCode)) else if (wait.WaitType.Equals(WaitEnum.W009_ScanCode))
{ {
if (LastCodeList.Count > 0) if (scanTask == null)
{
return true; return true;
}
if (scanTask.IsCompleted)
return true;
//if (LastCodeList.Count > 0)
//{
// return true;
//}
} }
return false; return false;
} }
...@@ -99,7 +104,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -99,7 +104,7 @@ namespace OnlineStore.DeviceLibrary
{ {
if (IsStart) if (IsStart)
{ {
return StartOutStoreMove(new InOutParam(MoveType.OutStore)); return StartOutStoreMove(new InOutParam(MoveType.OutStore),false);
} }
else else
{ {
...@@ -111,17 +116,22 @@ namespace OnlineStore.DeviceLibrary ...@@ -111,17 +116,22 @@ namespace OnlineStore.DeviceLibrary
return false; return false;
} }
public override bool StartOutStoreMove(InOutParam param) public override bool StartOutStoreMove(InOutParam param,bool shelfisready=false)
{ {
if (IOValue(IO_Type.RaiseStation_BackendCheck).Equals(IO_VALUE.HIGH)) { if (IOValue(IO_Type.RaiseStation_BackendCheck).Equals(IO_VALUE.HIGH)) {
runStatus = StoreRunStatus.Busy; runStatus = StoreRunStatus.Busy;
storeStatus = StoreStatus.OutStoreExecute; storeStatus = StoreStatus.OutStoreExecute;
MoveInfo.NewMove(MoveType.OutStore, new InOutParam(MoveType.OutStore)); MoveInfo.NewMove(MoveType.OutStore, new InOutParam(MoveType.OutStore));
LogUtil.info(Name + " 检测到库位有料架"); if (shelfisready) {
//LogUtil.info(Name + " 当前料架[" + CurrShelfNum + "][" + CurrShelfType + "],开始出库"); LogUtil.info(Name + " 料架已就位");
//UpdateShelfNum(CurrShelfNum, 2);
//L_05_WaitTime(StoreMoveStep.LO_05_WaitTime); MoveInfo.NextMoveStep(StoreMoveStep.LO_08_AxisUpToP2);
MoveInfo.NextMoveStep(StoreMoveStep.LO_07_RaiseStationForward); }
else
{
LogUtil.info(Name + " 检测到库位有料架");
MoveInfo.NextMoveStep(StoreMoveStep.LO_07_RaiseStationForward);
}
return true; return true;
} }
//判断是哪个工位有料架 //判断是哪个工位有料架
...@@ -149,9 +159,15 @@ namespace OnlineStore.DeviceLibrary ...@@ -149,9 +159,15 @@ namespace OnlineStore.DeviceLibrary
LogUtil.error(outParam.ToStr()); LogUtil.error(outParam.ToStr());
return false; return false;
} }
bool rightTrayHas15 = false;
if (outParam.TargetBox==1 && IOManager.IOValue(IO_Type.InDoor_Check, 2).Equals(IO_VALUE.HIGH) && BoxMap[2].MoveInfo.MoveParam!=null && BoxMap[2].MoveInfo.MoveParam.PlateW==15)
{
rightTrayHas15 = true;
LogUtil.error(Name + "StartTrayOut 左侧出库,但右侧料架存在15村盘");
}
//MoveInfo.NextMoveStep(StoreMoveStep.LO_11_BatchAxisDown); //MoveInfo.NextMoveStep(StoreMoveStep.LO_11_BatchAxisDown);
//InOutStoreLog("取料:批量轴下降指定的高度"); //InOutStoreLog("取料:批量轴下降指定的高度");
if (MoveInfo.MoveType.Equals(MoveType.OutStore) && MoveInfo.MoveStep.Equals(StoreMoveStep.LO_09_WaitOut)) if (MoveInfo.MoveType.Equals(MoveType.OutStore) && MoveInfo.MoveStep.Equals(StoreMoveStep.LO_09_WaitOut) && !rightTrayHas15)
{ {
MoveInfo.NewMove(MoveType.OutStore, outParam); MoveInfo.NewMove(MoveType.OutStore, outParam);
//可以开始出库啦 //可以开始出库啦
...@@ -162,8 +178,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -162,8 +178,10 @@ namespace OnlineStore.DeviceLibrary
{ {
targetPosition = Config.BatchAxis_P1; targetPosition = Config.BatchAxis_P1;
} }
InOutStoreLog(" StartTrayOut 出库移栽:" + outParam.ToStr() +" 提升伺服下降" + height + "mm,目标:" + targetPosition); InOutStoreLog(" StartTrayOut 出库移栽:" + outParam.ToStr() + " 提升伺服下降" + height + "mm,目标:" + targetPosition);
T1_BatchAxis.AbsMove(null, targetPosition, Config.BatchAxis_P2Speed); T1_BatchAxis.AbsMove(null, targetPosition, Config.BatchAxis_P2Speed);
outStoreCount++;
StoreManager.putShelfFinished(outParam.PosID, CurrShelfNum, outStoreCount.ToString(), outParam.WareCode);
return true; return true;
} }
else else
...@@ -198,6 +216,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -198,6 +216,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StoreMoveStep.LO_07_RaiseStationForward); MoveInfo.NextMoveStep(StoreMoveStep.LO_07_RaiseStationForward);
InOutStoreLog("料架出库:横移机构前进"); InOutStoreLog("料架出库:横移机构前进");
InOutStation_GoIn(); InOutStation_GoIn();
LineStop(MoveInfo);
//hoisterCylinder.StartForward(MoveInfo); //hoisterCylinder.StartForward(MoveInfo);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_07_RaiseStationForward)) else if (MoveInfo.IsStep(StoreMoveStep.LO_07_RaiseStationForward))
...@@ -219,18 +238,28 @@ namespace OnlineStore.DeviceLibrary ...@@ -219,18 +238,28 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StoreMoveStep.LO_09_WaitOut); MoveInfo.NextMoveStep(StoreMoveStep.LO_09_WaitOut);
InOutStoreLog("料架出库:料架准备完成,等待料盘出库"); InOutStoreLog("料架出库:料架准备完成,等待料盘出库");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(5000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(5000));
T1_BatchAxis.AbsMove(MoveInfo, T1_BatchAxis.GetAclPosition() - Config.BatchAxis_ChangeValue * 10, Config.BatchAxis_P1Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_09_WaitOut)) else if (MoveInfo.IsStep(StoreMoveStep.LO_09_WaitOut))
{ {
if (OutstoreEndSendShelf && outStoreCount > 0) //if (OutstoreEndSendShelf && outStoreCount > 0)
{ //{
InOutStoreLog("料架出库:OutstoreEndSendShelf=true,已出库盘数["+outStoreCount+"],开始送出料架"); // InOutStoreLog("料架出库:OutstoreEndSendShelf=true,已出库盘数[" + outStoreCount + "],开始送出料架");
LO_31_BatchAxisToP1(); // LO_31_BatchAxisToP1();
} //}
else //else
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LO_09_WaitOut); if (StoreManager.unfinishedTaskCount(Name, CurrShelfNum) > 0)
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(5000)); {
MoveInfo.NextMoveStep(StoreMoveStep.LO_09_WaitOut);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(5000));
}
else {
InOutStoreLog("料架出库:工单已结束,已出库盘数[" + outStoreCount + "],开始送出料架");
StoreManager.Store.BoxMap[1].LastVisualRfid = "";
StoreManager.Store.BoxMap[2].LastVisualRfid = "";
LO_31_BatchAxisToP1();
}
//InOutStoreLog(" 等待料盘出库"); //InOutStoreLog(" 等待料盘出库");
} }
} }
...@@ -240,7 +269,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -240,7 +269,14 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(StoreMoveStep.LO_11_BatchAxisDown)) else if (MoveInfo.IsStep(StoreMoveStep.LO_11_BatchAxisDown))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LO_12_ToBoxDoor); MoveInfo.NextMoveStep(StoreMoveStep.LO_12a_ToBoxDoor);
/*
bool waitRightLeave = false;
if (HasT4Axis && MoveInfo.MoveParam.TargetBox.Equals(1) && IOManager.IOValue(IO_Type.InDoor_Check, 2).Equals(IO_VALUE.HIGH))
{
waitRightLeave = true;
}
*/
if (MoveInfo.MoveParam.TargetBox.Equals(1)) if (MoveInfo.MoveParam.TargetBox.Equals(1))
{ {
...@@ -248,7 +284,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -248,7 +284,7 @@ namespace OnlineStore.DeviceLibrary
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P4, Config.UpdownAxis_P4Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P4, Config.UpdownAxis_P4Speed);
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P2, Config.MiddleAxis_P2Speed); T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P2, Config.MiddleAxis_P2Speed);
if (HasT4Axis) if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P2, Config.InOutAxis_P2Speed); T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P2Speed);
} }
else else
{ {
...@@ -256,7 +292,23 @@ namespace OnlineStore.DeviceLibrary ...@@ -256,7 +292,23 @@ namespace OnlineStore.DeviceLibrary
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed);
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P3, Config.MiddleAxis_P3Speed); T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P3, Config.MiddleAxis_P3Speed);
if (HasT4Axis) if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P3, Config.InOutAxis_P3Speed); T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P3Speed);
}
}else if (MoveInfo.IsStep(StoreMoveStep.LO_12a_ToBoxDoor))
{
MoveInfo.NextMoveStep(StoreMoveStep.LO_12_ToBoxDoor);
if (HasT4Axis)
{
if (MoveInfo.MoveParam.TargetBox == 1)
{
InOutStoreLog("取料:进出轴回到待机点到P2 [" + Config.InOutAxis_P2 + "]");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P2, Config.InOutAxis_P1Speed);
}
else
{
InOutStoreLog("取料:进出轴回到取料前点到P3 [" + Config.InOutAxis_P3 + "]");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P3, Config.InOutAxis_P1Speed);
}
} }
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_12_ToBoxDoor)) else if (MoveInfo.IsStep(StoreMoveStep.LO_12_ToBoxDoor))
...@@ -277,11 +329,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -277,11 +329,11 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LO_14_CylinderTighten); MoveInfo.NextMoveStep(StoreMoveStep.LO_14_CylinderTighten);
InOutStoreLog("取料:夹爪气缸夹紧"); InOutStoreLog("取料:夹爪气缸夹紧");
electricClamp.Clamp(MoveInfo); electricClamp.Clamp(null, MoveInfo.MoveParam.PlateW);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_14_CylinderTighten)) else if (MoveInfo.IsStep(StoreMoveStep.LO_14_CylinderTighten))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LO_15_UpdownUp); MoveInfo.NextMoveStep(StoreMoveStep.LO_15a_UpdownUp);
if (MoveInfo.MoveParam.TargetBox.Equals(1)) if (MoveInfo.MoveParam.TargetBox.Equals(1))
{ {
InOutStoreLog("取料:BOX1 升降轴上升到料门口高点P4 [" + Config.UpdownAxis_P4 + "]"); InOutStoreLog("取料:BOX1 升降轴上升到料门口高点P4 [" + Config.UpdownAxis_P4 + "]");
...@@ -293,29 +345,47 @@ namespace OnlineStore.DeviceLibrary ...@@ -293,29 +345,47 @@ namespace OnlineStore.DeviceLibrary
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed);
} }
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_15a_UpdownUp))
{
MoveInfo.NextMoveStep(StoreMoveStep.LO_15_UpdownUp);
if (HasT4Axis)
{
if (MoveInfo.MoveParam.TargetBox.Equals(1))
{
InOutStoreLog("取料:进出轴回到待机点到P6 [" + Config.InOutAxis_P6 + "]");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P6, Config.InOutAxis_P1Speed);
}
else
{
InOutStoreLog("取料:进出轴回到取料前点到P1 [" + Config.InOutAxis_P1 + "]");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed);
}
}
}
else if (MoveInfo.IsStep(StoreMoveStep.LO_15_UpdownUp)) else if (MoveInfo.IsStep(StoreMoveStep.LO_15_UpdownUp))
{ {
if (BoxMap[MoveInfo.MoveParam.TargetBox].IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.LOW)) if (BoxMap[MoveInfo.MoveParam.TargetBox].IOValue(IO_Type.InDoor_Check).Equals(IO_VALUE.LOW))
{ {
BoxMap[MoveInfo.MoveParam.TargetBox].MoveInfo.MoveParam.TargetPosition = 1; //BoxMap[MoveInfo.MoveParam.TargetBox].MoveInfo.MoveParam.TargetPosition = 1;
BoxMap[MoveInfo.MoveParam.TargetBox].MoveInfo.NextMoveStep(StoreMoveStep.SO_14_InoutToP1); //BoxMap[MoveInfo.MoveParam.TargetBox].MoveInfo.NextMoveStep(StoreMoveStep.SO_14_InoutToP1);
} }
MoveInfo.NextMoveStep(StoreMoveStep.LO_16_MiddleToP1); MoveInfo.NextMoveStep(StoreMoveStep.LO_16_MiddleToP1);
InOutStoreLog("取料:旋转轴到料串位置P1 ["+Config.MiddleAxis_P1+"]"); InOutStoreLog("取料:旋转轴到料串位置P4 [" + Config.MiddleAxis_P4 + "]");
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P1, Config.MiddleAxis_P1Speed); T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P4, Config.MiddleAxis_P1Speed);
if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P4, Config.InOutAxis_P4Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_16_MiddleToP1)) else if (MoveInfo.IsStep(StoreMoveStep.LO_16_MiddleToP1))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LO_17_UpdownToP2); MoveInfo.NextMoveStep(StoreMoveStep.LO_17_UpdownToP2);
InOutStoreLog("取料:升降轴到料串高点P2 ["+ Config.UpdownAxis_P2 + "]"); if (HasT4Axis)
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed); T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P4, Config.InOutAxis_P4Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_17_UpdownToP2)) else if (MoveInfo.IsStep(StoreMoveStep.LO_17_UpdownToP2))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LO_18_UpdownDown); MoveInfo.NextMoveStep(StoreMoveStep.LO_18_UpdownDown);
InOutStoreLog("取料:升降轴到料串放料低点P1 ["+ Config.UpdownAxis_P1 + "]"); InOutStoreLog("取料:升降轴到料串放料低点P1 [" + Config.UpdownAxis_P1 + "]");
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P1, Config.UpdownAxis_P1Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P1, Config.UpdownAxis_P1Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LO_18_UpdownDown)) else if (MoveInfo.IsStep(StoreMoveStep.LO_18_UpdownDown))
...@@ -329,8 +399,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -329,8 +399,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StoreMoveStep.LO_20_UpdownUp); MoveInfo.NextMoveStep(StoreMoveStep.LO_20_UpdownUp);
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed);
if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed);
//只有提升轴位置过低时才需要到P3 //只有提升轴位置过低时才需要到P3
int currPosition = T1_BatchAxis.GetAclPosition(); int currPosition = T1_BatchAxis.GetAclPosition();
if (currPosition <= (Config.BatchAxis_P1 + Config.BatchAxis_ChangeValue * 40)) if (currPosition <= (Config.BatchAxis_P1 + Config.BatchAxis_ChangeValue * 40))
...@@ -349,6 +418,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -349,6 +418,8 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
InOutStoreLog("料盘移栽:判断是否送出料架"); InOutStoreLog("料盘移栽:判断是否送出料架");
if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed);
int currPositon = T1_BatchAxis.GetAclPosition(); int currPositon = T1_BatchAxis.GetAclPosition();
int tp = currPositon - Config.BatchAxis_ChangeValue * 40; int tp = currPositon - Config.BatchAxis_ChangeValue * 40;
...@@ -401,7 +472,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -401,7 +472,7 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LO_34_WorkStopDown); MoveInfo.NextMoveStep(StoreMoveStep.LO_34_WorkStopDown);
InOutStoreLog("送出料架:上料阻挡下降1秒,流水线开始转动"); InOutStoreLog("送出料架:上料阻挡下降1秒,流水线开始转动");
UpdateShelfNum(-1, -1); UpdateShelfNum(CurrShelfNum, -1);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1500));
LineRun(MoveInfo); LineRun(MoveInfo);
IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.HIGH, false, 1500); IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.HIGH, false, 1500);
...@@ -466,7 +537,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -466,7 +537,7 @@ namespace OnlineStore.DeviceLibrary
{ {
if (IOValue(IO_Type.Line_InCheck).Equals(IO_VALUE.HIGH) && IOValue(IO_Type.Line_WaitCheck).Equals(IO_VALUE.LOW) && (!InShelfInProcess)) if (IOValue(IO_Type.Line_InCheck).Equals(IO_VALUE.HIGH) && IOValue(IO_Type.Line_WaitCheck).Equals(IO_VALUE.LOW) && (!InShelfInProcess))
{ {
ShelfEnterProcess(); // ShelfEnterProcess();
} }
if (!MoveInfo.MoveType.Equals(MoveType.None)) if (!MoveInfo.MoveType.Equals(MoveType.None))
{ {
...@@ -486,7 +557,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -486,7 +557,7 @@ namespace OnlineStore.DeviceLibrary
public async Task AgvSendShelfIn() { public async Task AgvSendShelfIn() {
bool result = await ShelfEnterProcess(); bool result = await ShelfEnterProcess();
if (result) { if (result) {
AgvClient.SetStatus(StoreManager.Config.AgvInName, "", Asa.ClientAction.FinishEnter); AgvClient.SetStatus(StoreManager.Config.AgvInName, "", Agv.ClientAction.FinishEnter);
} }
} }
private Task<bool> ShelfEnterProcess() private Task<bool> ShelfEnterProcess()
...@@ -526,13 +597,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -526,13 +597,13 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.Line_Stop1_Wait, IO_VALUE.LOW); IOMove(IO_Type.Line_Stop1_Wait, IO_VALUE.LOW);
IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.LOW); IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.LOW);
LineRun(MoveInfo); LineRun(MoveInfo);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Line_WorkCheck, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Line_WorkCheck, IO_VALUE.HIGH));
} }
private void LI_04_LineStart() private void LI_04_LineStart()
{ {
UpdateShelfNum(GetShelfNum(), 1); //UpdateShelfNum(GetShelfNum(), 1);
if (IOValue(IO_Type.Line_WorkCheck).Equals(IO_VALUE.HIGH)) if (IOValue(IO_Type.Line_WorkCheck).Equals(IO_VALUE.HIGH))
{ {
L_05_WaitTime(StoreMoveStep.LI_05_WaitTime); L_05_WaitTime(StoreMoveStep.LI_05_WaitTime);
...@@ -546,7 +617,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -546,7 +617,7 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.LOW);//缓冲阻挡前进1000 IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.LOW);//缓冲阻挡前进1000
LineRun(MoveInfo); LineRun(MoveInfo);
//等待指定时间 //等待指定时间
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2500));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Line_WorkCheck, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Line_WorkCheck, IO_VALUE.HIGH));
} }
else else
...@@ -593,6 +664,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -593,6 +664,11 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NewMove(MoveType.InStore, new InOutParam(MoveType.InStore)); MoveInfo.NewMove(MoveType.InStore, new InOutParam(MoveType.InStore));
//先将当前料架送出 //先将当前料架送出
LI_31_BatchAxisToP1(); LI_31_BatchAxisToP1();
} else if (IOValue(IO_Type.RaiseStation_BackendCheck).Equals(IO_VALUE.HIGH)){
runStatus = StoreRunStatus.Busy;
storeStatus = StoreStatus.InStoreExecute;
MoveInfo.NewMove(MoveType.InStore, new InOutParam(MoveType.InStore));
LI_31_BatchAxisToP1();
} }
} }
...@@ -644,7 +720,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -644,7 +720,7 @@ namespace OnlineStore.DeviceLibrary
InOutStation_RasieDown(); InOutStation_RasieDown();
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_03_LocationDown)) else if (MoveInfo.IsStep(StoreMoveStep.LI_03_LocationDown))
{ {
LI_04_LineStart(); LI_04_LineStart();
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_04_LineStart)) else if (MoveInfo.IsStep(StoreMoveStep.LI_04_LineStart))
...@@ -657,19 +733,24 @@ namespace OnlineStore.DeviceLibrary ...@@ -657,19 +733,24 @@ namespace OnlineStore.DeviceLibrary
InOutStoreLog("入料检测:链条停止转动, 进出机构上升"); InOutStoreLog("入料检测:链条停止转动, 进出机构上升");
LineStop(MoveInfo); LineStop(MoveInfo);
InOutStation_RasieUp(); InOutStation_RasieUp();
CurrShelfNum = ConfigAppSettings.GetIntValue(Setting_Init.CurrShelfNum); CurrShelfNum = ConfigAppSettings.GetValue(Setting_Init.CurrShelfNum);
CurrShelfType = ConfigAppSettings.GetIntValue(Setting_Init.CurrShelfType); CurrShelfType = ConfigAppSettings.GetIntValue(Setting_Init.CurrShelfType);
if (GetShelfNum() == CurrShelfNum && CurrShelfType == 2) var rfiddevice = RFIDManager.GetShelfId(Config.In_Rfid_IP);
var rfid = rfiddevice.NumStr();
InOutStoreLog($"入料检测:读取到rfid: {rfid}");
if (rfid == "000")
{
rfid =CurrShelfNum;
}
if (rfid == CurrShelfNum && CurrShelfType == 2)
{ {
UpdateShelfNum(GetShelfNum(), CurrShelfType);
MoveEndP(); MoveEndP();
} }
else else
{ {
CurrShelfType = 1; CurrShelfType = 1;
UpdateShelfNum(GetShelfNum(), CurrShelfType);
} }
UpdateShelfNum(GetShelfNum(), CurrShelfType); UpdateShelfNum(rfid, CurrShelfType);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_06_TopUp)) else if (MoveInfo.IsStep(StoreMoveStep.LI_06_TopUp))
{ {
...@@ -700,31 +781,42 @@ namespace OnlineStore.DeviceLibrary ...@@ -700,31 +781,42 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_11_AxisToTray); MoveInfo.NextMoveStep(StoreMoveStep.LI_11_AxisToTray);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
InOutStoreLog("入料检测:有料盘:升降轴到料串高点P2["+ Config.UpdownAxis_P2 + "],旋转轴到料串位置P4["+ Config.MiddleAxis_P4 + "]"); InOutStoreLog("入料检测:有料盘:升降轴到料串高点P2[" + Config.UpdownAxis_P2 + "],旋转轴到料串位置P4[" + Config.MiddleAxis_P4 + "]进出轴回p1");
if (HasT4Axis) if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P4, Config.InOutAxis_P1Speed); T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed);
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed);
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P4, Config.MiddleAxis_P4Speed); T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P4, Config.MiddleAxis_P4Speed);
} }
#endregion #endregion
#region 取放料处理 #region 取放料处理
else if (MoveInfo.IsStep(StoreMoveStep.LI_11_AxisToTray)) else if (MoveInfo.IsStep(StoreMoveStep.LI_11_AxisToTray))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_11a_AxisToTray);
if (HasT4Axis)
{
InOutStoreLog("取料:进出轴到P4");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P4, Config.InOutAxis_P4Speed);
}
}
else if (MoveInfo.IsStep(StoreMoveStep.LI_11a_AxisToTray))
{
MoveInfo.NextMoveStep(StoreMoveStep.LI_12_UpdownAxisToP3); MoveInfo.NextMoveStep(StoreMoveStep.LI_12_UpdownAxisToP3);
InOutStoreLog("取料:升降轴到料串低点P1["+ Config.UpdownAxis_P1 + "]"); InOutStoreLog("取料:升降轴到料串低点P1[" + Config.UpdownAxis_P1 + "]");
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P1, Config.UpdownAxis_P1Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P1, Config.UpdownAxis_P1Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_12_UpdownAxisToP3)) else if (MoveInfo.IsStep(StoreMoveStep.LI_12_UpdownAxisToP3))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_13_CylinderTighten); MoveInfo.NextMoveStep(StoreMoveStep.LI_13_CylinderTighten);
InOutStoreLog("取料:夹爪气缸夹紧"); InOutStoreLog("取料:夹爪气缸夹紧");
electricClamp.Clamp(MoveInfo); electricClamp.Clamp(null);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_13_CylinderTighten)) else if (MoveInfo.IsStep(StoreMoveStep.LI_13_CylinderTighten))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_14_UpdownToP1); MoveInfo.NextMoveStep(StoreMoveStep.LI_14_UpdownToP1);
InOutStoreLog("取料:升降轴到料串高点P2["+ Config.UpdownAxis_P2 + "]"); InOutStoreLog("取料:升降轴到料串高点P2[" + Config.UpdownAxis_P2 + "]");
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_14_UpdownToP1)) else if (MoveInfo.IsStep(StoreMoveStep.LI_14_UpdownToP1))
...@@ -733,13 +825,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -733,13 +825,13 @@ namespace OnlineStore.DeviceLibrary
InOutStoreLog("取料:等待没有提升机构料盘检测"); InOutStoreLog("取料:等待没有提升机构料盘检测");
if (Math.Abs(T1_BatchAxis.GetAclPosition() - Config.BatchAxis_P2) > T1_BatchAxis.Config.CanErrorCountMin) if (Math.Abs(T1_BatchAxis.GetAclPosition() - Config.BatchAxis_P2) > T1_BatchAxis.Config.CanErrorCountMin)
{ {
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.BatchAxis_Check, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.BatchAxis_Check, IO_VALUE.LOW));
} }
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_15_WaitNoCheck)) else if (MoveInfo.IsStep(StoreMoveStep.LI_15_WaitNoCheck))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_16_BatchAxisToP2); MoveInfo.NextMoveStep(StoreMoveStep.LI_16_BatchAxisToP2);
InOutStoreLog("取料:批量轴到P2 ["+Config.BatchAxis_P2+"],计算高度,"); InOutStoreLog("取料:批量轴到P2 [" + Config.BatchAxis_P2 + "],计算高度,");
BatchAxisToP2(false); BatchAxisToP2(false);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_16_BatchAxisToP2)) else if (MoveInfo.IsStep(StoreMoveStep.LI_16_BatchAxisToP2))
...@@ -747,10 +839,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -747,10 +839,9 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(StoreMoveStep.LI_17_SaveSize); MoveInfo.NextMoveStep(StoreMoveStep.LI_17_SaveSize);
LastWidth = GetWidth(); LastWidth = GetWidth();
LastHeight = GetHeight(); LastHeight = GetHeight();
InOutStoreLog($"取料:记录高度尺寸 LastWidth:{LastWidth}, LastHeight{LastHeight}"); //if (LastWidth == 13)
InOutStoreLog("取料:进出轴回到待机点到P1 [" + Config.InOutAxis_P1 + "],计算高度,"); // electricClamp.Clamp(null,15);
if (HasT4Axis) InOutStoreLog($"取料:记录高度尺寸 LastWidth:{LastWidth}, LastHeight{LastHeight},计算高度");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_17_SaveSize)) else if (MoveInfo.IsStep(StoreMoveStep.LI_17_SaveSize))
{ {
...@@ -780,6 +871,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -780,6 +871,10 @@ namespace OnlineStore.DeviceLibrary
if (LastPosParam.InStoreNg) if (LastPosParam.InStoreNg)
{ {
int box = GetInstoreNgBox(); int box = GetInstoreNgBox();
if (HasT4Axis) {
if (LastWidth >= 13)
box = 2;
}
LastPosParam.TargetBox = box; LastPosParam.TargetBox = box;
LastPosParam.TargetPosition = 1; LastPosParam.TargetPosition = 1;
MoveInfo.MoveParam = LastPosParam; MoveInfo.MoveParam = LastPosParam;
...@@ -796,8 +891,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -796,8 +891,21 @@ namespace OnlineStore.DeviceLibrary
LastPosParam.TargetBox = 2; LastPosParam.TargetBox = 2;
} }
} }
if (HasT4Axis)
{
if (LastPosParam.TargetBox == 2)
{
InOutStoreLog("取料:进出轴回到待机点到P1 [" + Config.InOutAxis_P1 + "]");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed);
}
else
{
InOutStoreLog("取料:进出轴回到取料前点到P6 [" + Config.InOutAxis_P6 + "]");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P6, Config.InOutAxis_P1Speed);
}
}
MoveInfo.NextMoveStep(StoreMoveStep.LI_21_WaitToBox); MoveInfo.NextMoveStep(StoreMoveStep.LI_21_WaitToBox);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); //MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
InOutStoreLog("料盘移栽:" + LastPosParam.ToStr() + " 等待料仓门口无信号"); InOutStoreLog("料盘移栽:" + LastPosParam.ToStr() + " 等待料仓门口无信号");
ClearTimeoutAlarm("获取库位号超时"); ClearTimeoutAlarm("获取库位号超时");
} }
...@@ -813,22 +921,24 @@ namespace OnlineStore.DeviceLibrary ...@@ -813,22 +921,24 @@ namespace OnlineStore.DeviceLibrary
int storeId = LastPosParam.GetStoreId(); int storeId = LastPosParam.GetStoreId();
if (storeId == -1) if (storeId == -1)
storeId = LastPosParam.TargetBox; storeId = LastPosParam.TargetBox;
InOutStoreLog($"料盘移栽:storeId :{storeId}"); // InOutStoreLog($"料盘移栽:storeId :{storeId}");
BoxBean box = BoxMap[storeId]; //BoxBean box = BoxMap[storeId];
bool waitRightLeave = false; bool waitRightLeave = false;
if (HasT4Axis&&storeId == 1 && IOManager.IOValue(IO_Type.InDoor_Check, storeId).Equals(IO_VALUE.HIGH)) { if (HasT4Axis && storeId == 1 && (IOManager.IOValue(IO_Type.InDoor_Check, 2).Equals(IO_VALUE.HIGH) || (BoxMap[2].MoveInfo.MoveStep< StoreMoveStep.SI_05_InoutToP1 && BoxMap[2].MoveInfo.MoveStep > StoreMoveStep.SI_03_InoutToP2)))
{
waitRightLeave = true; waitRightLeave = true;
} }
if (IOManager.IOValue(IO_Type.InDoor_Check, storeId).Equals(IO_VALUE.LOW) && box.waitInStoreParam == null && !waitRightLeave) bool boxdoorready = BoxMap[storeId].InoutAxis.GetAclPosition() < (BoxMap[storeId].Config.InOutAxis_P2 - BoxMap[storeId].Config.InOutAxis_P1) / 2;
if (IOManager.IOValue(IO_Type.InDoor_Check, storeId).Equals(IO_VALUE.LOW) && boxdoorready && !waitRightLeave)// && box.waitInStoreParam == null
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_22_ToBoxDoor); MoveInfo.NextMoveStep(StoreMoveStep.LI_22a_ToBoxDoor);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); //MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
//判断是左侧还是右侧 //判断是左侧还是右侧
if (LastPosParam.TargetBox.Equals(1)) if (LastPosParam.TargetBox.Equals(1))
{ {
InOutStoreLog("料盘移栽:获取库位号完成, BOX " + storeId + " 升降轴到料门口高点P4[" + Config.UpdownAxis_P4 + "],旋转轴到料仓门口 P2[" + Config.MiddleAxis_P2 + "]"); InOutStoreLog("料盘移栽:获取库位号完成, BOX " + storeId + " 升降轴到料门口高点P4[" + Config.UpdownAxis_P4 + "],旋转轴到料仓门口 P2[" + Config.MiddleAxis_P2 + "]");
if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P2, Config.InOutAxis_P2Speed);
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P4, Config.UpdownAxis_P4Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P4, Config.UpdownAxis_P4Speed);
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P2, Config.MiddleAxis_P2Speed); T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P2, Config.MiddleAxis_P2Speed);
...@@ -836,8 +946,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -836,8 +946,6 @@ namespace OnlineStore.DeviceLibrary
else else
{ {
InOutStoreLog("料盘移栽:获取库位号完成, BOX " + storeId + " 升降轴到料门口高点P6[" + Config.UpdownAxis_P6 + "],旋转轴到料仓门口 P3[" + Config.MiddleAxis_P3 + "]"); InOutStoreLog("料盘移栽:获取库位号完成, BOX " + storeId + " 升降轴到料门口高点P6[" + Config.UpdownAxis_P6 + "],旋转轴到料仓门口 P3[" + Config.MiddleAxis_P3 + "]");
if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P3, Config.InOutAxis_P3Speed);
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed);
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P3, Config.MiddleAxis_P3Speed); T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P3, Config.MiddleAxis_P3Speed);
...@@ -852,22 +960,37 @@ namespace OnlineStore.DeviceLibrary ...@@ -852,22 +960,37 @@ namespace OnlineStore.DeviceLibrary
Alarm(AlarmType.IoSingleTimeOut); Alarm(AlarmType.IoSingleTimeOut);
} }
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_22a_ToBoxDoor))
{
MoveInfo.NextMoveStep(StoreMoveStep.LI_22_ToBoxDoor);
//MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
//判断是左侧还是右侧
if (HasT4Axis)
{
if (LastPosParam.TargetBox.Equals(1))
{
InOutStoreLog($"料盘移栽:左侧,进出轴到P2:{Config.InOutAxis_P2}");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P2, Config.InOutAxis_P2Speed);
}
else
{
InOutStoreLog($"料盘移栽:右侧,进出轴到P3:{Config.InOutAxis_P3}");
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P3, Config.InOutAxis_P3Speed);
}
}
}
else if (MoveInfo.IsStep(StoreMoveStep.LI_22_ToBoxDoor)) else if (MoveInfo.IsStep(StoreMoveStep.LI_22_ToBoxDoor))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_23_UpdownDown); MoveInfo.NextMoveStep(StoreMoveStep.LI_23_UpdownDown);
int storeId = LastPosParam.GetStoreId();
BoxBean box;
if (storeId == -1)
storeId = LastPosParam.TargetBox;
box = BoxMap[storeId];
InOutStoreLog($"料盘移栽:storeId={storeId},targetpos={LastPosParam.TargetPosition}");
box.waitInStoreParam = LastPosParam.clone();
YuScanCode(); YuScanCode();
if (LastPosParam.TargetBox.Equals(1)) if (LastPosParam.TargetBox.Equals(1))
{ {
InOutStoreLog($"料盘移栽: 升降轴到料门口低点P3[{Config.UpdownAxis_P3},补偿:{(LastHeight - 8) * Config.UpdownAxis_ChangeValue}],开始预扫码"); InOutStoreLog($"料盘移栽: 升降轴到料门口低点P3[{Config.UpdownAxis_P3},补偿:{(LastHeight - 8) * Config.UpdownAxis_ChangeValue}],开始预扫码");
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P3-(LastHeight-8)*Config.UpdownAxis_ChangeValue, Config.UpdownAxis_P3Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P3 - (LastHeight - 8) * Config.UpdownAxis_ChangeValue, Config.UpdownAxis_P3Speed);
} }
else else
{ {
...@@ -894,13 +1017,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -894,13 +1017,21 @@ namespace OnlineStore.DeviceLibrary
InOutStoreLog("料盘移栽: 升降轴到料门口高点P6[" + Config.UpdownAxis_P6 + "]"); InOutStoreLog("料盘移栽: 升降轴到料门口高点P6[" + Config.UpdownAxis_P6 + "]");
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P6, Config.UpdownAxis_P6Speed);
} }
int storeId = LastPosParam.GetStoreId();
BoxBean box;
if (storeId == -1)
storeId = LastPosParam.TargetBox;
box = BoxMap[storeId];
InOutStoreLog($"料盘移栽:storeId={storeId},targetpos={LastPosParam.TargetPosition},isNG={LastPosParam.InStoreNg}");
box.waitInStoreParam = LastPosParam.clone();
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_25_UpdownUp)) else if (MoveInfo.IsStep(StoreMoveStep.LI_25_UpdownUp))
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_26_AxisToWait); MoveInfo.NextMoveStep(StoreMoveStep.LI_26_AxisToWait);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
InOutStoreLog("料盘移栽:旋转轴返回待机点P1["+ Config.MiddleAxis_P1 + "],升降轴到料串高点P2["+ Config.UpdownAxis_P2 + "]"); InOutStoreLog("料盘移栽:旋转轴返回待机点P1[" + Config.MiddleAxis_P1 + "],升降轴到料串高点P2[" + Config.UpdownAxis_P2 + "]进出轴回P1");
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P1, Config.MiddleAxis_P1Speed); //T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P1, Config.MiddleAxis_P1Speed);
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed);
if (HasT4Axis) if (HasT4Axis)
T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed); T4_InOut_Axis.AbsMove(MoveInfo, Config.InOutAxis_P1, Config.InOutAxis_P1Speed);
...@@ -941,14 +1072,28 @@ namespace OnlineStore.DeviceLibrary ...@@ -941,14 +1072,28 @@ namespace OnlineStore.DeviceLibrary
InOutStation_RasieDown(); InOutStation_RasieDown();
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_33_TopCylinderDown_3)) else if (MoveInfo.IsStep(StoreMoveStep.LI_33_TopCylinderDown_3))
{ {
InOutStation_Stop(1000); InOutStation_Stop(1000);
InOutStoreLog($"送出料架:BoxMap[1]={BoxMap[1].storeStatus},BoxMap[2]={BoxMap[2].storeStatus}");
//如果有等待出库的料先出库
if (BoxMap[1].storeStatus == StoreStatus.OutStoreExecute || BoxMap[1].storeStatus == StoreStatus.OutStoreBoxEnd
|| BoxMap[2].storeStatus == StoreStatus.OutStoreExecute || BoxMap[2].storeStatus == StoreStatus.OutStoreBoxEnd)
{
InOutStoreLog("送出料架:检测到有待出库料盘,立刻开始出库");
LineStop(MoveInfo);
if (!StartOutStoreMove(new InOutParam(MoveType.OutStore),false))
{
InOutStoreLog("送出料架:转换出库失败.");
//MoveEndP();
}
}
//判断是否需要送出料架,如果入口和等待区无料架,暂不送出 //判断是否需要送出料架,如果入口和等待区无料架,暂不送出
if (IOValue(IO_Type.Line_InCheck).Equals(IO_VALUE.HIGH) || IOValue(IO_Type.Line_WaitCheck).Equals(IO_VALUE.HIGH) || InstoreEndSendShelf) else if (IOValue(IO_Type.Line_InCheck).Equals(IO_VALUE.HIGH) || IOValue(IO_Type.Line_WaitCheck).Equals(IO_VALUE.HIGH) || InstoreEndSendShelf)
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_34_WorkStopDown); MoveInfo.NextMoveStep(StoreMoveStep.LI_34_WorkStopDown);
InOutStoreLog("送出料架[" + InstoreEndSendShelf + "]:上料阻挡下降1秒,流水线开始转动"); InOutStoreLog("送出料架[" + InstoreEndSendShelf + "]:上料阻挡下降1秒,流水线开始转动");
UpdateShelfNum(-1, -1); UpdateShelfNum(CurrShelfNum, -1);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
LineRun(MoveInfo); LineRun(MoveInfo);
IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.HIGH, false, 2000); IOMove(IO_Type.Line_Stop2_Work, IO_VALUE.HIGH, false, 2000);
...@@ -957,6 +1102,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -957,6 +1102,7 @@ namespace OnlineStore.DeviceLibrary
else else
{ {
InOutStoreLog("送出料架:入口和等待区暂无料架,不需要送出料架"); InOutStoreLog("送出料架:入口和等待区暂无料架,不需要送出料架");
LineStop(MoveInfo);
MoveEndP(); MoveEndP();
} }
} }
...@@ -971,7 +1117,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -971,7 +1117,7 @@ namespace OnlineStore.DeviceLibrary
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_36_LineRun); MoveInfo.NextMoveStep(StoreMoveStep.LI_36_LineRun);
InOutStoreLog("送出料架:流水线再转动3秒"); InOutStoreLog("送出料架:流水线再转动3秒");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(4000));
LineRun(MoveInfo); LineRun(MoveInfo);
} }
else if (MoveInfo.IsStep(StoreMoveStep.LI_36_LineRun)) else if (MoveInfo.IsStep(StoreMoveStep.LI_36_LineRun))
...@@ -1065,7 +1211,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -1065,7 +1211,7 @@ namespace OnlineStore.DeviceLibrary
T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed); T3_UpdownAxis.AbsMove(MoveInfo, Config.UpdownAxis_P2, Config.UpdownAxis_P2Speed);
T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P4, Config.MiddleAxis_P4Speed); T2_MiddleAxis.AbsMove(MoveInfo, Config.MiddleAxis_P4, Config.MiddleAxis_P4Speed);
} }
Task<List<string>> scanTask;
private void LI_09_ScanCode() private void LI_09_ScanCode()
{ {
MoveInfo.NextMoveStep(StoreMoveStep.LI_09_ScanCode); MoveInfo.NextMoveStep(StoreMoveStep.LI_09_ScanCode);
...@@ -1087,7 +1233,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -1087,7 +1233,7 @@ namespace OnlineStore.DeviceLibrary
//MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(7000)); //MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(7000));
try try
{ {
Task<List<string>> scanTask = Task.Factory.StartNew(delegate scanTask = Task.Factory.StartNew(delegate
{ {
IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH); IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH);
Task.Delay(10).Wait(); Task.Delay(10).Wait();
...@@ -1181,7 +1327,23 @@ namespace OnlineStore.DeviceLibrary ...@@ -1181,7 +1327,23 @@ namespace OnlineStore.DeviceLibrary
} }
//无料盘 //无料盘
ShelfNoTray = true; ShelfNoTray = true;
LI_31_BatchAxisToP1(); UpdateShelfNum(CurrShelfNum, 0);
InOutStoreLog($"检测料架为空:BoxMap[1]={BoxMap[1].storeStatus},BoxMap[2]={BoxMap[2].storeStatus}");
//如果有等待出库的料先出库
if (BoxMap[1].waitOutStoreList.Count>0 || BoxMap[2].waitOutStoreList.Count > 0)
{
InOutStoreLog("检测料架为空:检测到有待出库料盘,立刻开始出库");
if (!StartOutStoreMove(new InOutParam(MoveType.OutStore), true))
{
InOutStoreLog("检测料架为空:转换出库失败.");
//MoveEndP();
}
}
else
{
LI_31_BatchAxisToP1();
}
} }
} }
...@@ -1240,29 +1402,38 @@ namespace OnlineStore.DeviceLibrary ...@@ -1240,29 +1402,38 @@ namespace OnlineStore.DeviceLibrary
string buchongStr = ""; string buchongStr = "";
if (isLast) if (isLast)
{ {
buchongStr = "(最后一盘料已补充5)"; buchongStr = $"(最后一盘料已补充{Config.LastTrayAddHeight})";
height += 5; height += Config.LastTrayAddHeight;
}
if (LastWidth == 15) {
height -= 2;
}else if (LastWidth == 13)
{
//height -= 3;
} }
//如果检测出<=15,都按照8计算 //如果检测出<=15,都按照8计算
if (height <= 15) if (height < 12)
{ {
LastHeight = 8; LastHeight = 8;
} }
else else
{ {
List<int> heightList = new List<int> { 8, 12, 16, 20 }; List<int> heightList = new List<int> { 8, 12, 16, 24, 32, 44, 56 };
heightList = (from m in heightList orderby m descending select m).ToList<int>(); //heightList = (from m in heightList orderby m descending select m).ToList<int>();
float minCha = height; //float minCha = height;
foreach (int h in heightList) foreach (int h in heightList)
{ {
if (height > h)
{
LastHeight = h;
}/*
//取差值最小的接近值 //取差值最小的接近值
float cha = Math.Abs(h - (height - 4)); float cha = Math.Abs(h - (height - 4));
if (cha < minCha) if (cha < minCha)
{ {
LastHeight = h; LastHeight = h;
minCha = cha; minCha = cha;
} }*/
} }
} }
if (LastHeight <= 8) { LastHeight = 8; } if (LastHeight <= 8) { LastHeight = 8; }
...@@ -1274,7 +1445,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -1274,7 +1445,9 @@ namespace OnlineStore.DeviceLibrary
public int GetWidth() public int GetWidth()
{ {
if (IOManager.IOValue(IO_Type.TrayCheck_11to15, 0).Equals(IO_VALUE.HIGH)) if (IOManager.IOValue(IO_Type.TrayCheck_15, 0).Equals(IO_VALUE.HIGH))
return 15;
if (IOManager.IOValue(IO_Type.TrayCheck_11to13, 0).Equals(IO_VALUE.HIGH))
return 13; return 13;
return 7; return 7;
......
...@@ -22,12 +22,20 @@ namespace OnlineStore.DeviceLibrary ...@@ -22,12 +22,20 @@ namespace OnlineStore.DeviceLibrary
public void ClosePort() { public void ClosePort() {
axis.ClosePort(); axis.ClosePort();
} }
public void Clamp(StoreMoveInfo moveInfo = null) public void Clamp(StoreMoveInfo moveInfo = null,int plateW=7)
{ {
GripperType = GripperTypeE.Gripper; GripperType = GripperTypeE.Gripper;
if (!IsBusy) if (!IsBusy)
{ {
axis.Push(30, 7, 500); //if (plateW > 7)
if (true)
{
axis.Push(99, 7, 500);
}
else
{
axis.Push(50, 7, 500);
}
if (moveInfo!=null) if (moveInfo!=null)
moveInfo.WaitList.Add(WaitResultInfo.WaitTime(100)); moveInfo.WaitList.Add(WaitResultInfo.WaitTime(100));
} }
...@@ -63,12 +71,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -63,12 +71,14 @@ namespace OnlineStore.DeviceLibrary
} }
public bool IsBusy { public bool IsBusy {
get { get {
axis.GetPosition();
return !axis.IsReached; return !axis.IsReached;
} }
} }
public bool IsClamp { public bool IsClamp {
get get
{ {
return !axis.IsPushEmpty; return !axis.IsPushEmpty;
} }
} }
......
...@@ -157,6 +157,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -157,6 +157,7 @@ namespace OnlineStore.DeviceLibrary
if (value == 1) if (value == 1)
{ {
WarnMsg = Name + " 运动轴" + axisInfo.Config.Explain + "报警"; WarnMsg = Name + " 运动轴" + axisInfo.Config.Explain + "报警";
LogUtil.error(WarnMsg);
Alarm(AlarmType.AxisAlarm, GetAlarmCodeByAxis(axisInfo.Config).ToString(), WarnMsg, MoveType.None); Alarm(AlarmType.AxisAlarm, GetAlarmCodeByAxis(axisInfo.Config).ToString(), WarnMsg, MoveType.None);
isInAlarm = true; isInAlarm = true;
} }
...@@ -168,6 +169,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -168,6 +169,14 @@ namespace OnlineStore.DeviceLibrary
{ {
return IOValue(ioType).Equals(ioValue); return IOValue(ioType).Equals(ioValue);
} }
public void CheckAndMove(string IoType, IO_VALUE value)
{
if (!IOValue(IoType).Equals(value))
{
IOMove(IoType, value);
}
}
internal void MoveEndP() internal void MoveEndP()
{ {
MoveInfo.EndMove(); MoveInfo.EndMove();
......
...@@ -201,43 +201,40 @@ namespace OnlineStore.DeviceLibrary ...@@ -201,43 +201,40 @@ namespace OnlineStore.DeviceLibrary
p.UpDown_P2 = box.Config.UpDownAxis_P2; p.UpDown_P2 = box.Config.UpDownAxis_P2;
// p.UpDown_P7 = box.Config.UpDownAxis_DoorOBPosition_P7; // p.UpDown_P7 = box.Config.UpDownAxis_DoorOBPosition_P7;
if (param.TargetPosition == 1)
{ p.ComPress_P2 = box.Config.GetComP2(param.PlateH);
p.ComPress_P2 = box.Config.GetComP2(param.PlateH); p.ComPress_P3 = box.Config.CompAxis_P1;
p.ComPress_P3 = box.Config.CompAxis_P1;
} ACBoxPosition position = CSVPositionReader<ACBoxPosition>.GetPositon(param.PosID);
else if (position == null)
{ {
ACBoxPosition position = CSVPositionReader<ACBoxPosition>.GetPositon(param.PosID); if (movetype.Equals(MoveType.InStore) && param.TargetPosition.Equals(1))
if (position == null)
{
if (movetype.Equals(MoveType.InStore) && param.TargetPosition.Equals(1))
{
return true;
}
LogUtil.error(box.Name + "GetPositon[" + param.PosID + "]=null,没有库位不能执行出入库");
return false;
}
if (param.PlateH <= 0)
{
param.PlateH = position.BagHigh;
}
if (param.PlateW <= 0)
{ {
param.PlateW = position.BagWidth; param.MoveP = p;
return true;
} }
//p.ComPress_P2 = box.Config.GetComP2(position.BagHigh); LogUtil.error(box.Name + "GetPositon[" + param.PosID + "]=null,没有库位不能执行出入库");
//p.ComPress_P3 = box.Config.CompAxis_P3; return false;
p.ComPress_P2 = position.ComAxis_P2;
p.ComPress_P3 = position.ComAxis_P3;
p.InOut_P3 = position.InoutAxis_P3;
p.Middle_P2 = position.MiddleAxis_P2;
p.UpDown_P3 = position.UpdownAxis_IH_P3;
p.UpDown_P4 = position.UpdownAxis_IL_P4;
p.UpDown_P5 = position.UpdownAxis_OH_P5;
p.UpDown_P6 = position.UpdownAxis_OL_P6;
} }
if (param.PlateH <= 0)
{
param.PlateH = position.BagHigh;
}
if (param.PlateW <= 0)
{
param.PlateW = position.BagWidth;
}
//p.ComPress_P2 = box.Config.GetComP2(position.BagHigh);
//p.ComPress_P3 = box.Config.CompAxis_P3;
p.ComPress_P3 = position.ComAxis_P3;
p.InOut_P3 = position.InoutAxis_P3;
p.Middle_P2 = position.MiddleAxis_P2;
p.UpDown_P3 = position.UpdownAxis_IH_P3;
p.UpDown_P4 = position.UpdownAxis_IL_P4;
p.UpDown_P5 = position.UpdownAxis_OH_P5;
p.UpDown_P6 = position.UpdownAxis_OL_P6;
param.MoveP = p; param.MoveP = p;
...@@ -307,7 +304,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -307,7 +304,7 @@ namespace OnlineStore.DeviceLibrary
// 取消任务地址: /cancelPutInTask //参数: barcode // 取消任务地址: /cancelPutInTask //参数: barcode
private static string Addr_cancelPutInTask = "/rest/api/qisda/device/cancelPutInTask"; private static string Addr_cancelPutInTask = "/service/store/cancelPutInTask";
public static string cancelPutInTask(string deviceName, string barcode) public static string cancelPutInTask(string deviceName, string barcode)
{ {
string msg = ""; string msg = "";
...@@ -343,7 +340,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -343,7 +340,7 @@ namespace OnlineStore.DeviceLibrary
} }
private static string spiltStr = "##"; private static string spiltStr = "##";
private static string Addr_PosForPutin = "/service/store/emptyPosForPutin"; private static string Addr_PosForPutin = "/service/store/emptyPosForPutin";
public static GetPosResult GetPosId(string deviceName, List<string> codeList, int height, int width, int shelfNum) public static GetPosResult GetPosId(string deviceName, List<string> codeList, int height, int width, string shelfNum)
{ {
GetPosResult result = new GetPosResult(); GetPosResult result = new GetPosResult();
try try
...@@ -377,7 +374,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -377,7 +374,7 @@ namespace OnlineStore.DeviceLibrary
paramMap.Add("cids", cids); paramMap.Add("cids", cids);
paramMap.Add("code", codeStr); paramMap.Add("code", codeStr);
paramMap.Add(ParamDefine.rfid, shelfNum.ToString()); paramMap.Add(ParamDefine.rfid, shelfNum);
string server = GetAddr(Addr_PosForPutin, paramMap); string server = GetAddr(Addr_PosForPutin, paramMap);
DateTime startTime = DateTime.Now; DateTime startTime = DateTime.Now;
...@@ -440,6 +437,85 @@ namespace OnlineStore.DeviceLibrary ...@@ -440,6 +437,85 @@ namespace OnlineStore.DeviceLibrary
} }
return result; return result;
} }
private static readonly string Addr_putShelfFinished = "/rest/api/dcs/device/putShelfFinished";
public static string putShelfFinished(string deviceName,string shelfNum, string rfidLoc, string barcode)
{
string msg = "";
try
{
Dictionary<string, string> paramMap = new Dictionary<string, string>();
paramMap.Add("rfid", shelfNum);
paramMap.Add("rfidLoc", rfidLoc);
paramMap.Add("barcode", barcode);
string server = GetAddr(Addr_putShelfFinished, paramMap);
DateTime startTime = DateTime.Now;
string resultStr = HttpHelper.Post(server, "");
LogUtil.info(deviceName + "putShelfFinished" + FormUtil.GetSpanStr(DateTime.Now - startTime) + " 【" + server + "】【" + resultStr + "】");
var data = JsonHelper.DeserializeJsonToObject<CommData<string>>(resultStr);
if (data == null)
{
return msg = deviceName + " putShelfFinished【 " + barcode + "】 没有收到服务器反馈";
}
else if (data.code.Equals(0).Equals(false))
{
return msg = deviceName + " putShelfFinished【 " + barcode + "】 :" + data.msg;
}
return "";
}
catch (Exception ex)
{
LogUtil.error(deviceName + " " + ex.ToString());
}
return msg;
}
private static readonly string Addr_unfinishedTaskCount = "/rest/api/dcs/device/unfinishedTaskCount";
public static int unfinishedTaskCount(string deviceName, string shelfNum)
{
try
{
string cids = "";
foreach (int k in Store.BoxMap.Keys)
{
cids += Store.BoxMap[k].CID + ",";
}
cids = cids.TrimEnd(',');
Dictionary<string, string> paramMap = new Dictionary<string, string>();
paramMap.Add("rfid", shelfNum);
paramMap.Add("cids", cids);
string server = GetAddr(Addr_unfinishedTaskCount, paramMap);
DateTime startTime = DateTime.Now;
string resultStr = HttpHelper.Post(server, "");
LogUtil.info(deviceName + "unfinishedTaskCount" + FormUtil.GetSpanStr(DateTime.Now - startTime) + " 【" + server + "】【" + resultStr + "】");
var data = JsonHelper.DeserializeJsonToObject<CommData<int>>(resultStr);
if (data == null)
{
LogUtil.info(deviceName + "unfinishedTaskCount 没有收到服务器反馈");
return 99999;
}
else if (data.code.Equals(0).Equals(false))
{
LogUtil.info(deviceName + " unfinishedTaskCount【 " + shelfNum + cids + "】 :" + data.msg);
return 99999;
}
return data.data;
}
catch (Exception ex)
{
LogUtil.error(deviceName + " " + ex.ToString());
}
return 99999;
}
//public static void SendPosToStoreCheck(string deviceName, InOutParam param) //public static void SendPosToStoreCheck(string deviceName, InOutParam param)
//{ //{
// if (param == null || param.InStoreNg) // if (param == null || param.InStoreNg)
...@@ -509,7 +585,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -509,7 +585,16 @@ namespace OnlineStore.DeviceLibrary
public string msg { get; set; } public string msg { get; set; }
public Dictionary<string, string> data { get; set; } public Dictionary<string, string> data { get; set; }
} }
public class CommData<T>
{
//{"code":0,"msg":"ok","data":"7"}
public int code { get; set; }
public string msg { get; set; }
public T data { get; set; }
}
public class LineOperation public class LineOperation
{ {
// //{"result":"0","msg":"","pos":"11#AC1_18_4_28","barcode":"R506072019102200414","cid":"line-ac-11"} // //{"result":"0","msg":"","pos":"11#AC1_18_4_28","barcode":"R506072019102200414","cid":"line-ac-11"}
......
...@@ -19,7 +19,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -19,7 +19,7 @@ namespace OnlineStore.DeviceLibrary
private int Jiange = 3; private int Jiange = 3;
private int positionIndex = 0; private int positionIndex = 0;
public string autoMsg = ""; public string autoMsg = "";
private int startIndex = -1; private int startIndex = -1;
#region 出入库参数 #region 出入库参数
/// <summary> /// <summary>
/// 当前出入库的次数,超过配置的数量时,需要自动重置一下,再进行出入库 /// 当前出入库的次数,超过配置的数量时,需要自动重置一下,再进行出入库
...@@ -30,12 +30,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -30,12 +30,12 @@ namespace OnlineStore.DeviceLibrary
public void StartAuto(int jiange, int currIndex ) public void StartAuto(int jiange, int currIndex)
{ {
autoNext = true; autoNext = true;
Jiange = jiange; Jiange = jiange;
positionIndex = currIndex; positionIndex = currIndex;
startIndex = currIndex; startIndex = currIndex;
} }
public void StopAuto() public void StopAuto()
{ {
...@@ -55,7 +55,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -55,7 +55,7 @@ namespace OnlineStore.DeviceLibrary
} }
if (storeMoveType.Equals(MoveType.InStore)) if (storeMoveType.Equals(MoveType.InStore))
{ {
int newIndex = positionIndex - Jiange; int newIndex = positionIndex - 1;
if (newIndex < 0) if (newIndex < 0)
{ {
if (startIndex >= 0 && startIndex < boxBean.PositionNumList.Count) if (startIndex >= 0 && startIndex < boxBean.PositionNumList.Count)
...@@ -92,7 +92,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -92,7 +92,7 @@ namespace OnlineStore.DeviceLibrary
} }
else if (storeMoveType.Equals(MoveType.OutStore)) else if (storeMoveType.Equals(MoveType.OutStore))
{ {
int newIndex = positionIndex; int newIndex = positionIndex - Jiange;
if (newIndex < 0) if (newIndex < 0)
{ {
if (startIndex >= 0 && startIndex < boxBean.PositionNumList.Count) if (startIndex >= 0 && startIndex < boxBean.PositionNumList.Count)
...@@ -108,13 +108,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -108,13 +108,13 @@ namespace OnlineStore.DeviceLibrary
return; return;
} }
} }
positionIndex = newIndex; //positionIndex = newIndex;
string posid = boxBean.PositionNumList[positionIndex]; string posid = boxBean.PositionNumList[newIndex];
InOutParam param = new InOutParam(MoveType.InStore, "AutoIn", posid); InOutParam param = new InOutParam(MoveType.InStore, "AutoIn", posid);
boxBean.LogInfo("自动进入下一个入库:posid=" + posid); boxBean.LogInfo("自动进入下一个入库:posid=" + posid);
autoMsg = "自动入库:" + posid; autoMsg = "自动入库:" + posid;
boxBean.StartInStoreMove(param); boxBean.StartInStoreMove(param);
} }
} }
catch (Exception ex) catch (Exception ex)
......
...@@ -24,7 +24,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -24,7 +24,7 @@ namespace OnlineStore.DeviceLibrary
/// <param name="shefNum">料架编号</param> /// <param name="shefNum">料架编号</param>
/// <param name="IsNg">是否是入库NG料</param> /// <param name="IsNg">是否是入库NG料</param>
/// <param name="ngMsg">NG消息</param> /// <param name="ngMsg">NG消息</param>
public InOutParam(MoveType type, string wareNo = "", string posId = "", int platew = 0, int plateh = 0, int targetP = 0, int shefNum=0, bool IsNg = false, string ngMsg = "") public InOutParam(MoveType type, string wareNo = "", string posId = "", int platew = 0, int plateh = 0, int targetP = 0, string shefNum="0", bool IsNg = false, string ngMsg = "")
{ {
WareCode = wareNo; WareCode = wareNo;
PosID = posId; PosID = posId;
...@@ -78,7 +78,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -78,7 +78,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 料架编号 /// 料架编号
/// </summary> /// </summary>
public int shelfNum = 0; public string shelfNum = "0";
/// <summary> /// <summary>
/// 出入库目标位置, /// 出入库目标位置,
...@@ -110,11 +110,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -110,11 +110,11 @@ namespace OnlineStore.DeviceLibrary
string[] arr = posId.Split('#'); string[] arr = posId.Split('#');
if (arr.Length >= 2) if (arr.Length >= 2)
{ {
return int.Parse(arr[0]); return int.Parse(arr[1].Substring(2, 1));
} }
else else
{ {
return int.Parse(posId.Substring(2, 2)); return int.Parse(posId.Substring(2, 1));
} }
} }
catch (Exception ex) catch (Exception ex)
...@@ -128,23 +128,23 @@ namespace OnlineStore.DeviceLibrary ...@@ -128,23 +128,23 @@ namespace OnlineStore.DeviceLibrary
{ {
if (InStoreNg) if (InStoreNg)
{ {
return " 入库失败[BOX_" + TargetBox + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] "; return " 入库失败[BOX_" + TargetBox + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] [" + TargetPosition + "] [isNG:" + InStoreNg + "]";
} }
else else
{ {
if (moveType.Equals(MoveType.InStore)) if (moveType.Equals(MoveType.InStore))
{ {
return " 入库 [" + PosID + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] "; return " 入库 [" + PosID + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] [" + TargetPosition + "] [isNG:" + InStoreNg + "]";
} }
else else
{ {
if (TargetPosition.Equals(1)) if (TargetPosition.Equals(1))
{ {
return " 批量出库 [" + PosID + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] "; return " 批量出库 [" + PosID + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] [" + TargetPosition + "] [isNG:" + InStoreNg + "]";
} }
else else
{ {
return " 单盘出库 [" + PosID + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] "; return " 单盘出库 [" + PosID + "] [" + WareCode + "], [" + PlateW + "x" + PlateH + "] [" + TargetPosition + "] [isNG:" + InStoreNg + "]";
} }
} }
} }
......
...@@ -250,7 +250,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -250,7 +250,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 开始出库运动 /// 开始出库运动
/// </summary> /// </summary>
public abstract bool StartOutStoreMove(InOutParam param); public abstract bool StartOutStoreMove(InOutParam param,bool shelfisready=false);
protected abstract void OutStoreProcess(); protected abstract void OutStoreProcess();
#endregion #endregion
......
...@@ -394,7 +394,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -394,7 +394,7 @@ namespace OnlineStore.DeviceLibrary
/// 入料检测:扫码 /// 入料检测:扫码
/// </summary> /// </summary>
LI_09_ScanCode, LI_09_ScanCode,
LI_11a_AxisToTray,
/// <summary> /// <summary>
/// 入料检测:有料盘:升降轴到料串高点P2,旋转轴到料串位置P4 /// 入料检测:有料盘:升降轴到料串高点P2,旋转轴到料串位置P4
/// </summary> /// </summary>
...@@ -433,7 +433,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -433,7 +433,7 @@ namespace OnlineStore.DeviceLibrary
/// 料盘移栽:等待料仓门口无料盘信号 /// 料盘移栽:等待料仓门口无料盘信号
/// </summary> /// </summary>
LI_21_WaitToBox, LI_21_WaitToBox,
LI_22a_ToBoxDoor,
/// <summary> /// <summary>
/// 料盘移栽:获取库位号完成,升降轴到料门口高点,旋转轴到料仓门口 /// 料盘移栽:获取库位号完成,升降轴到料门口高点,旋转轴到料仓门口
/// </summary> /// </summary>
...@@ -541,10 +541,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -541,10 +541,11 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 取放料:批量轴下降指定的高度 /// 取放料:批量轴下降指定的高度
/// </summary> /// </summary>
LO_11_BatchAxisDown, LO_11_BatchAxisDown,
/// <summary> /// <summary>
/// 取放料:旋转轴到料仓门口,升降轴到入料低点 /// 取放料:旋转轴到料仓门口,升降轴到入料低点
/// </summary> /// </summary>
LO_12a_ToBoxDoor,
LO_12_ToBoxDoor, LO_12_ToBoxDoor,
/// <summary> /// <summary>
/// 取放料:升降轴下降到料门口低点 /// 取放料:升降轴下降到料门口低点
...@@ -557,6 +558,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -557,6 +558,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 取放料:升降轴上升到料门口高点 /// 取放料:升降轴上升到料门口高点
/// </summary> /// </summary>
LO_15a_UpdownUp,
LO_15_UpdownUp, LO_15_UpdownUp,
/// <summary> /// <summary>
/// 取放料:旋转轴到料仓位置P1 /// 取放料:旋转轴到料仓位置P1
......
...@@ -210,6 +210,16 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -210,6 +210,16 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary> /// </summary>
[ConfigProAttribute("IsInDebug")] [ConfigProAttribute("IsInDebug")]
public int IsInDebug { get; set; } public int IsInDebug { get; set; }
/// <summary>
/// PRO 是否使用料盘检测信号 IsUse_Tray_Check
/// </summary>
[ConfigProAttribute("IsUse_Tray_Check")]
public int IsUse_Tray_Check { get; set; }
/// <summary>
/// PRO 旋转轴伺服反转误差 MiddleAxis_Reverse_Offset
/// </summary>
[ConfigProAttribute("MiddleAxis_Reverse_Offset")]
public int MiddleAxis_Reverse_Offset { get; set; }
private Dictionary<int, int> ComP2Map = null; private Dictionary<int, int> ComP2Map = null;
public int GetComP2(int plateh) public int GetComP2(int plateh)
......
...@@ -229,9 +229,9 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -229,9 +229,9 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary> /// </summary>
public static string TrayCheck_7 = "TrayCheck_7"; public static string TrayCheck_7 = "TrayCheck_7";
/// <summary> /// <summary>
///DI 0 11/13/15寸料盘宽度检测 X28 ///DI 0 11/13寸料盘宽度检测 X28
/// </summary> /// </summary>
public static string TrayCheck_11to15 = "TrayCheck_11to15"; public static string TrayCheck_11to13 = "TrayCheck_11to13";
/// <summary> /// <summary>
///DI 0 提升工位前端料串检测 X29 ///DI 0 提升工位前端料串检测 X29
/// </summary> /// </summary>
...@@ -256,6 +256,10 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -256,6 +256,10 @@ namespace OnlineStore.LoadCSVLibrary
///DI 0 提升工位定位2下降端 X34 ///DI 0 提升工位定位2下降端 X34
/// </summary> /// </summary>
public static string RaiseStation_DownLocation2 = "RaiseStation_DownLocation2"; public static string RaiseStation_DownLocation2 = "RaiseStation_DownLocation2";
/// <summary>
///DI 0 15寸料盘宽度检测 X39
/// </summary>
public static string TrayCheck_15 = "TrayCheck_15";
/* /*
/// <summary> /// <summary>
///DI 0 卡爪到位确认 X39 ///DI 0 卡爪到位确认 X39
......
...@@ -282,6 +282,11 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -282,6 +282,11 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary> /// </summary>
[ConfigProAttribute("InOutAxis_P4")] [ConfigProAttribute("InOutAxis_P4")]
public int InOutAxis_P4 { get; set; } public int InOutAxis_P4 { get; set; }
/// <summary>
/// T4_进出轴13寸取料点进入前点P6
/// </summary>
[ConfigProAttribute("InOutAxis_P6")]
public int InOutAxis_P6 { get; set; }
[ConfigProAttribute("InOutAxis_P1Speed")] [ConfigProAttribute("InOutAxis_P1Speed")]
public int InOutAxis_P1Speed { get; set; } public int InOutAxis_P1Speed { get; set; }
...@@ -298,6 +303,16 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -298,6 +303,16 @@ namespace OnlineStore.LoadCSVLibrary
public string AgvOutName { get; set; } public string AgvOutName { get; set; }
[ConfigProAttribute("Clamp1Port")] [ConfigProAttribute("Clamp1Port")]
public string Clamp1Port { get; set; } public string Clamp1Port { get; set; }
/// <summary>
/// PRO,最后一盘料需要补充的高度,LastTrayAddHeight,10,,,,,,,,,
/// </summary>
[ConfigProAttribute("LastTrayAddHeight")]
public int LastTrayAddHeight { get; set; }
[ConfigProAttribute("In_Rfid_IP")]
public string In_Rfid_IP { get; set; }
[ConfigProAttribute("Out_Rfid_IP")]
public string Out_Rfid_IP { get; set; }
private List<string> CameraList = null; private List<string> CameraList = null;
public List<string> GetCameraList() public List<string> GetCameraList()
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!