Commit 4ec025a9 LN

增加升降轴调位置功能

1 个父辈 c47fe5e0
此文件类型无法预览
此文件类型无法预览
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ACServoDriveTest</RootNamespace> <RootNamespace>ACServoDriveTest</RootNamespace>
<AssemblyName>ACServoDriveTest</AssemblyName> <AssemblyName>ACServoDriveTest</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
<DefineConstants>DEBUG;TRACE</DefineConstants> <DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
...@@ -31,6 +32,7 @@ ...@@ -31,6 +32,7 @@
<DefineConstants>TRACE</DefineConstants> <DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="System" /> <Reference Include="System" />
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<configuration> <configuration>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1"/>
</startup> </startup>
</configuration> </configuration>
...@@ -593,7 +593,7 @@ ...@@ -593,7 +593,7 @@
this.txtAddr.Name = "txtAddr"; this.txtAddr.Name = "txtAddr";
this.txtAddr.Size = new System.Drawing.Size(103, 21); this.txtAddr.Size = new System.Drawing.Size(103, 21);
this.txtAddr.TabIndex = 95; this.txtAddr.TabIndex = 95;
this.txtAddr.Text = "1"; this.txtAddr.Text = "4";
// //
// label18 // label18
// //
......
...@@ -47,7 +47,7 @@ namespace ACServoDriveTest.Properties { ...@@ -47,7 +47,7 @@ namespace ACServoDriveTest.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)]
......
...@@ -12,7 +12,7 @@ namespace ACServoDriveTest.Properties { ...@@ -12,7 +12,7 @@ namespace ACServoDriveTest.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.6.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.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,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<DebugType>full</DebugType> <DebugType>full</DebugType>
<Optimize>false</Optimize> <Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath> <OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants> <DefineConstants>TRACE;DEBUG;PositionTool</DefineConstants>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit> <Prefer32Bit>false</Prefer32Bit>
...@@ -92,6 +92,12 @@ ...@@ -92,6 +92,12 @@
<DependentUpon>FrmStoreBox.cs</DependentUpon> <DependentUpon>FrmStoreBox.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="ManagerUtil.cs" /> <Compile Include="ManagerUtil.cs" />
<Compile Include="positionTool\FrmPositionTool.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="positionTool\FrmPositionTool.Designer.cs">
<DependentUpon>FrmPositionTool.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" /> <Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ResourceCulture.cs" /> <Compile Include="ResourceCulture.cs" />
...@@ -110,6 +116,9 @@ ...@@ -110,6 +116,9 @@
<EmbeddedResource Include="FrmStoreBox.resx"> <EmbeddedResource Include="FrmStoreBox.resx">
<DependentUpon>FrmStoreBox.cs</DependentUpon> <DependentUpon>FrmStoreBox.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="positionTool\FrmPositionTool.resx">
<DependentUpon>FrmPositionTool.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resource.en-US.resx"> <EmbeddedResource Include="Properties\Resource.en-US.resx">
<SubType>Designer</SubType> <SubType>Designer</SubType>
</EmbeddedResource> </EmbeddedResource>
......
...@@ -96,8 +96,22 @@ namespace OnlineStore.AutoInOutStore ...@@ -96,8 +96,22 @@ namespace OnlineStore.AutoInOutStore
XmlConfigurator.Configure(); XmlConfigurator.Configure();
Application.EnableVisualStyles(); Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false); Application.SetCompatibleTextRenderingDefault(false);
#if PositionTool
{
string PortName = "COM3";
int slvAddr = 4;
string ioIP = "192.168.200.13";
int ioIndex = 0;
Application.Run(new FrmPositionTool(PortName,slvAddr,ioIP,ioIndex));
}
#else
{
Application.Run(new FrmStoreBox()); Application.Run(new FrmStoreBox());
} }
#endif
}
} }
static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{ {
......
 
using OnlineStore.Common; using OnlineStore.Common;
using OnlineStore.DeviceLibrary; using OnlineStore.DeviceLibrary;
using OnlineStore.LoadCSVLibrary;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel; using System.ComponentModel;
using System.Data; using System.Data;
using System.Drawing; using System.Drawing;
using System.IO;
using System.IO.Ports; using System.IO.Ports;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
...@@ -13,14 +15,16 @@ using System.Threading; ...@@ -13,14 +15,16 @@ using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
namespace OnlineStore.ACSingleStore namespace OnlineStore.AutoInOutStore
{ {
public partial class FrmPositionTool : Form public partial class FrmPositionTool : FrmBase
{ {
private string LogName = "升降轴位置调试:";
private string PortName = ""; private string PortName = "";
private int SlvAddr = 0; private int SlvAddr = 0;
private string IoIp = ""; private string IoIp = "";
private int IoIndex = 0; private int IoIndex = 0;
public string Axis_Brake = IO_Type.Axis_Brake;
private System.Timers.Timer toolTimer = new System.Timers.Timer(); private System.Timers.Timer toolTimer = new System.Timers.Timer();
public FrmPositionTool(string protName, int slvAddr,string ioIp, int ioIndex) public FrmPositionTool(string protName, int slvAddr,string ioIp, int ioIndex)
{ {
...@@ -34,11 +38,13 @@ namespace OnlineStore.ACSingleStore ...@@ -34,11 +38,13 @@ namespace OnlineStore.ACSingleStore
toolTimer.Interval = 300; toolTimer.Interval = 300;
toolTimer.AutoReset = true; toolTimer.AutoReset = true;
toolTimer.Elapsed += ToolTimer_Elapsed; toolTimer.Elapsed += ToolTimer_Elapsed;
FrmPositionTool.CheckForIllegalCrossThreadCalls = false;
} }
private void Form1_Load(object sender, EventArgs e) private void Form1_Load(object sender, EventArgs e)
{ {
ACServerManager.IsShowMsg = true; ACServerManager.IsShowMsg = false;
LogUtil.logBox = this.richTextBox1; LogUtil.logBox = this.richTextBox1;
//ACServerManager.richeBox = this.richTextBox1; //ACServerManager.richeBox = this.richTextBox1;
formStatus(false); formStatus(false);
...@@ -48,7 +54,12 @@ namespace OnlineStore.ACSingleStore ...@@ -48,7 +54,12 @@ namespace OnlineStore.ACSingleStore
txtIOIndex .Text= IoIndex.ToString(); txtIOIndex .Text= IoIndex.ToString();
txtIoIp.Text = IoIp.ToString(); txtIoIp.Text = IoIp.ToString();
if (IOManager.instance == null)
{
IOManager.Init();
}
IOManager.instance.ConnectionIOList(new List<string> { IoIp });
timer1.Start();
} }
private void btnServoOn_Click(object sender, EventArgs e) private void btnServoOn_Click(object sender, EventArgs e)
{ {
...@@ -66,14 +77,34 @@ namespace OnlineStore.ACSingleStore ...@@ -66,14 +77,34 @@ namespace OnlineStore.ACSingleStore
Thread.Sleep(100); Thread.Sleep(100);
ACServerManager.AlarmClear(PortName, SlvAddr); ACServerManager.AlarmClear(PortName, SlvAddr);
ACServerManager.ServoOn(PortName, SlvAddr); ACServerManager.ServoOn(PortName, SlvAddr);
try
{
IOManager.IOMove(Axis_Brake, IO_VALUE.HIGH);
}catch(Exception ex)
{
}
} }
private void btnServoOff_Click(object sender, EventArgs e) private void btnServoOff_Click(object sender, EventArgs e)
{ {
toolTimer.Stop(); StopTimer();
// toolTimer.Stop();
ACServerManager.SuddenStop(PortName, SlvAddr); ACServerManager.SuddenStop(PortName, SlvAddr);
Thread.Sleep(100); Thread.Sleep(100);
try
{
IOManager.IOMove(Axis_Brake, IO_VALUE.LOW);
}
catch (Exception ex)
{
}
ACServerManager.ServoOff(PortName, SlvAddr); ACServerManager.ServoOff(PortName, SlvAddr);
formStatus(false );
} }
private void formStatus(bool p) private void formStatus(bool p)
...@@ -81,7 +112,7 @@ namespace OnlineStore.ACSingleStore ...@@ -81,7 +112,7 @@ namespace OnlineStore.ACSingleStore
txtPortName.Enabled = !p; txtPortName.Enabled = !p;
txtAddr.Enabled = !p; txtAddr.Enabled = !p;
txtIOIndex.Enabled = !p; txtIOIndex.Enabled = !p;
txtIoIp.Enabled = !p; // txtIoIp.Enabled = !p;
btnAbsMove.Enabled = p; btnAbsMove.Enabled = p;
btnSdStop.Enabled = p; btnSdStop.Enabled = p;
...@@ -112,7 +143,14 @@ namespace OnlineStore.ACSingleStore ...@@ -112,7 +143,14 @@ namespace OnlineStore.ACSingleStore
int speed = Convert.ToInt32(txtSpeed.Text); int speed = Convert.ToInt32(txtSpeed.Text);
ACServerManager.SpeedMove(PortName, SlvAddr, speed); ACServerManager.SpeedMove(PortName, SlvAddr, speed);
} }
private int TargetPostion = 0; private void btnGetActualPosition_Click(object sender, EventArgs e)
{
int value = ACServerManager.GetTargetPosition(PortName, SlvAddr);
txtTargetPosition.Text = value.ToString();
value = ACServerManager.GetActualtPosition(PortName, SlvAddr);
txtActualPosition.Text = value.ToString();
}
private void btnAbsMove_Click(object sender, EventArgs e) private void btnAbsMove_Click(object sender, EventArgs e)
{ {
int speed = Convert.ToInt32(txtSpeed.Text); int speed = Convert.ToInt32(txtSpeed.Text);
...@@ -125,8 +163,21 @@ namespace OnlineStore.ACSingleStore ...@@ -125,8 +163,21 @@ namespace OnlineStore.ACSingleStore
txtSpeed.Focus(); txtSpeed.Focus();
return; return;
} }
LastValue = IO_VALUE.LOW;
string fileName = txtFileName.Text;
string filePath = Application.StartupPath + @"\" + fileName;
if (File.Exists(filePath))
{
DialogResult result = MessageBox.Show("文件【"+filePath+"】已存在,是否确定覆盖?","", MessageBoxButtons.OKCancel,MessageBoxIcon.Question);
if (!result.Equals(DialogResult.OK))
{
return;
}
}
PositionList = new List<int>();
LogUtil.info(LogName + "伺服开始运动,速度【"+speed+"】位置【"+position+"】启动定时器 ");
ACServerManager.AbsMove(PortName, SlvAddr, position,speed);
toolTimer.Start(); toolTimer.Start();
ACServerManager.AbsMove(PortName, SlvAddr, position);
} }
private void btnSdStop_Click(object sender, EventArgs e) private void btnSdStop_Click(object sender, EventArgs e)
...@@ -135,42 +186,123 @@ namespace OnlineStore.ACSingleStore ...@@ -135,42 +186,123 @@ namespace OnlineStore.ACSingleStore
ACServerManager.SuddenStop(PortName, SlvAddr); ACServerManager.SuddenStop(PortName, SlvAddr);
} }
private IO_VALUE GetSingleValue()
{
return IOManager.instance.GetDIValue(IoIp, 0, (ushort)IoIndex);
}
private void btnGetActualPosition_Click(object sender, EventArgs e)
private int TargetPostion = 0;
private bool isInProcesss = false;
private DateTime LastTime = DateTime.Now;
private List<int> PositionList = new List<int>();
private IO_VALUE LastValue = IO_VALUE.LOW;
private void ToolTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{ {
int value = ACServerManager.GetTargetPosition(PortName, SlvAddr); TimeSpan span = DateTime.Now - LastTime;
txtTargetPosition.Text = value.ToString(); if (isInProcesss && span.TotalSeconds < 1)
value = ACServerManager.GetActualtPosition(PortName, SlvAddr); {
txtActualPosition.Text = value.ToString(); return;
}
isInProcesss = true;
try
{
int moveS = ACServerManager.GetBusyStatus(PortName, SlvAddr);
if (moveS.Equals(1))
{
IO_VALUE currValue = GetSingleValue();
if (LastValue.Equals(IO_VALUE.LOW) && currValue.Equals(IO_VALUE.HIGH))
{
int currPos = ACServerManager.GetActualtPosition(PortName, SlvAddr);
txtActualPosition.Text = currPos.ToString();
PositionList.Add(currPos);
int num = PositionList.Count;
LogUtil.info(LogName + "收到信号,【"+ num + "】【" + currPos+"】");
LastValue = IO_VALUE.HIGH;
} }
private bool isInProcesss = false;
private void ToolTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) LastValue = currValue;
}
else
{
StopTimer();
}
}catch(Exception ex)
{ {
LogUtil.error(LogName+"ToolTimer_Elapsed" + ex.ToString());
}
isInProcesss = false;
} }
private int getDataIndex = 0; private void StopTimer()
private void timer1_Tick(object sender, EventArgs e) {
toolTimer.Stop();
if (PositionList.Count <= 0)
{ {
return;
}
LogUtil.info(LogName + "伺服已停止运动,停止定时器,记录数据");
string resultstr = "";
int index = 1;
foreach (int p in PositionList)
{
resultstr += index + "," + p + "\r\n";
index++;
}
string fileName = txtFileName.Text;
string filePath = Application.StartupPath + @"\" + fileName;
try try
{ {
getDataIndex++; // Clipboard.SetDataObject(resultstr);
File.WriteAllText(filePath, resultstr);
LogUtil.error(LogName + "保存位置到文件【" + filePath + "】成功");
} }
catch (Exception ex) catch (Exception ex)
{ {
LogUtil.error(LogName + "保存位置到文件【" + filePath + "】出错:" + ex.ToString());
}
} }
private int getDataIndex = 0;
private void timer1_Tick(object sender, EventArgs e)
{
try try
{ {
ioStatusControl1.IOValue = (int)GetSingleValue();
ioStatusControl1.ShowData();
} }
catch (Exception ex) catch (Exception ex)
{ {
} }
} }
private void FrmPositionTool_FormClosing(object sender, FormClosingEventArgs e)
{
timer1.Stop();
if (btnServoOff.Enabled)
{
btnServoOff_Click(null, null);
}
ACServerManager.CloseAllPort();
IOManager.instance.CloseAllConnection();
}
private void btnOpenFolder_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("Explorer.exe", Application.StartupPath);
}
private void btnExit_Click(object sender, EventArgs e)
{
this.Close();
}
} }
} }
...@@ -19,7 +19,7 @@ namespace OnlineStore.Common ...@@ -19,7 +19,7 @@ namespace OnlineStore.Common
public static System.Windows.Forms.RichTextBox logBox = null; public static System.Windows.Forms.RichTextBox logBox = null;
public static int showCount = 20; public static int showCount = 100;
public static bool debug_opened = false; public static bool debug_opened = false;
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
<DebugType>full</DebugType> <DebugType>full</DebugType>
<Optimize>false</Optimize> <Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath> <OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants> <DefineConstants>TRACE;DEBUG;PositionTool</DefineConstants>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks> <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
...@@ -36,6 +36,9 @@ ...@@ -36,6 +36,9 @@
<Prefer32Bit>false</Prefer32Bit> <Prefer32Bit>false</Prefer32Bit>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Asa.IOModule.AIOBOX">
<HintPath>..\..\dll\Asa.IOModule.AIOBOX.dll</HintPath>
</Reference>
<Reference Include="CodeLibrary"> <Reference Include="CodeLibrary">
<HintPath>..\..\dll\CodeLibrary.dll</HintPath> <HintPath>..\..\dll\CodeLibrary.dll</HintPath>
</Reference> </Reference>
...@@ -61,11 +64,8 @@ ...@@ -61,11 +64,8 @@
<Compile Include="acSingleStore\AutomaticBaiting_Partial.cs" /> <Compile Include="acSingleStore\AutomaticBaiting_Partial.cs" />
<Compile Include="acSingleStore\StoreManager.cs" /> <Compile Include="acSingleStore\StoreManager.cs" />
<Compile Include="acSingleStore\AutomaticBaiting.cs" /> <Compile Include="acSingleStore\AutomaticBaiting.cs" />
<Compile Include="DeviceLibrary\IO\AIOBOX\BLL2.cs" />
<Compile Include="DeviceLibrary\halcon\CodeManager.cs" /> <Compile Include="DeviceLibrary\halcon\CodeManager.cs" />
<Compile Include="DeviceLibrary\IO\AIOBOX\AIOBOXManager.cs" /> <Compile Include="DeviceLibrary\IO\AIOBOX\AIOBOXManager.cs" />
<Compile Include="DeviceLibrary\IO\AIOBOX\BLL.cs" />
<Compile Include="DeviceLibrary\IO\AIOBOX\Common.cs" />
<Compile Include="DeviceLibrary\IO\IOManager.cs" /> <Compile Include="DeviceLibrary\IO\IOManager.cs" />
<Compile Include="DeviceLibrary\IO\KangNaiDe\KNDManager.cs" /> <Compile Include="DeviceLibrary\IO\KangNaiDe\KNDManager.cs" />
<Compile Include="DeviceLibrary\IO\KangNaiDe\MasterTcpClient.cs" /> <Compile Include="DeviceLibrary\IO\KangNaiDe\MasterTcpClient.cs" />
......
...@@ -11,7 +11,31 @@ namespace OnlineStore.DeviceLibrary ...@@ -11,7 +11,31 @@ namespace OnlineStore.DeviceLibrary
public abstract class IOManager public abstract class IOManager
{ {
public static IOManager instance = null; public static IOManager instance = null;
protected static ushort GetDILength(string ioIp)
{
try
{
return StoreManager.Config.GetDILength(ioIp);
}
catch (Exception ex)
{
}
return 16;
}
protected static ushort GetDOLength(string ioIp)
{
try
{
return StoreManager.Config.GetDOLength(ioIp);
}
catch (Exception ex)
{
}
return 16;
}
public abstract void ConnectionIOList(List<string> dIODeviceNameList); public abstract void ConnectionIOList(List<string> dIODeviceNameList);
......
...@@ -125,7 +125,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -125,7 +125,7 @@ namespace OnlineStore.DeviceLibrary
Thread.Sleep(10); Thread.Sleep(10);
//读取所有的DO //读取所有的DO
ReadMultipleDO(ioIp, DefualtSlaveID, DoStartAddress, StoreManager.Config.GetDOLength(ioIp)); ReadMultipleDO(ioIp, DefualtSlaveID, DoStartAddress, GetDOLength(ioIp));
} }
catch (Exception error) catch (Exception error)
...@@ -245,7 +245,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -245,7 +245,7 @@ namespace OnlineStore.DeviceLibrary
foreach (string key in mastMap.Keys) foreach (string key in mastMap.Keys)
{ {
byte[] data = new byte[] { 0, 0 }; byte[] data = new byte[] { 0, 0 };
WriteMultipleDO(key, DefualtSlaveID, DoStartAddress, StoreManager.Config.GetDOLength(key), data); WriteMultipleDO(key, DefualtSlaveID, DoStartAddress, GetDOLength(key), data);
} }
} }
...@@ -263,7 +263,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -263,7 +263,7 @@ namespace OnlineStore.DeviceLibrary
} }
public static void CloseAllDO(string ioIp, byte slaveId) public static void CloseAllDO(string ioIp, byte slaveId)
{ {
ushort length = StoreManager.Config.GetDOLength(ioIp); ushort length = GetDOLength(ioIp);
byte[] bytes = new byte[length]; byte[] bytes = new byte[length];
for (int i = 0; i < length; i++) for (int i = 0; i < length; i++)
{ {
...@@ -448,7 +448,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -448,7 +448,7 @@ namespace OnlineStore.DeviceLibrary
{ {
try try
{ {
ushort DILength = StoreManager.Config.GetDILength(ioIp); ushort DILength =GetDILength(ioIp);
string finalData = ""; string finalData = "";
if (values.Length == 2 && DILength.Equals(16)) if (values.Length == 2 && DILength.Equals(16))
{ {
...@@ -496,9 +496,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -496,9 +496,10 @@ namespace OnlineStore.DeviceLibrary
} }
} }
private static void SaveDOData(string ioIp, ushort ID, byte[] values) private static void SaveDOData(string ioIp, ushort ID, byte[] values)
{ {
ushort DoLength = StoreManager.Config.GetDOLength(ioIp); ushort DoLength = GetDOLength(ioIp);
string finalData = ""; string finalData = "";
if (values.Length == 2 && DoLength.Equals(16)) if (values.Length == 2 && DoLength.Equals(16))
{ {
......
...@@ -83,7 +83,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -83,7 +83,7 @@ namespace OnlineStore.DeviceLibrary
int ACBaudRate = ConfigAppSettings.GetIntValue(Setting_Init.ACBaudRate); int ACBaudRate = ConfigAppSettings.GetIntValue(Setting_Init.ACBaudRate);
if (ACBaudRate <= 0) if (ACBaudRate <= 0)
{ {
ACBaudRate = 9600; ACBaudRate = 115200;
} }
AcSerialBean bean = new AcSerialBean(portName, ACBaudRate, Parity.Even, 8, StopBits.One); AcSerialBean bean = new AcSerialBean(portName, ACBaudRate, Parity.Even, 8, StopBits.One);
bool result = bean.openPort(); bool result = bean.openPort();
......
...@@ -1624,13 +1624,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -1624,13 +1624,13 @@ namespace OnlineStore.DeviceLibrary
boxStatus.SetMsg(obj.WarnMsg, obj.MsgCode, obj.MsgParam); boxStatus.SetMsg(obj.WarnMsg, obj.MsgCode, obj.MsgParam);
lineOperation.SetMsg(obj.WarnMsg, obj.MsgCode, obj.MsgParam); lineOperation.SetMsg(obj.WarnMsg, obj.MsgCode, obj.MsgParam);
} }
if (lineOperation.msg.Equals("")) if (lineOperation.msg.Equals("") && (!AutomaticBaiting.CodeMsg.Equals("")))
{ {
boxStatus.SetMsg(AutomaticBaiting.CodeMsg, ResourceControl.NoCodeMsg ); boxStatus.SetMsg(AutomaticBaiting.CodeMsg, ResourceControl.NoCodeMsg);
lineOperation.SetMsg(AutomaticBaiting.CodeMsg, ResourceControl.NoCodeMsg); lineOperation.SetMsg(AutomaticBaiting.CodeMsg, ResourceControl.NoCodeMsg);
AutomaticBaiting.CodeMsg = ""; AutomaticBaiting.CodeMsg = "";
} }
if (lineOperation.msg.Equals("")) if (lineOperation.msg.Equals("") && (!CodeOrInoutMsg.Equals("")))
{ {
boxStatus.SetMsg(CodeOrInoutMsg, ResourceControl.InStoreNoCode); boxStatus.SetMsg(CodeOrInoutMsg, ResourceControl.InStoreNoCode);
lineOperation.SetMsg(CodeOrInoutMsg, ResourceControl.InStoreNoCode); lineOperation.SetMsg(CodeOrInoutMsg, ResourceControl.InStoreNoCode);
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!