如何从控制台/C# 程序启动/关闭 TwinCAT 系统?
How to startup / shutdown TwinCAT System from console / C# program?
如何从控制台或 C# 应用程序 start/restart/shutdoown TwinCAT 系统运行时?我需要一个与右下角的 TwinCAT 工具栏按钮 System Start/Restart 等效的功能。
谢谢。
您可以在 C#/.NET 程序中使用 TwinCAT automation interface, which is accessible by linking the automation interface DLL。
具体来说,对于 start/restart TwinCAT,您使用 ITcSysManager::StartRestartTwinCAT - 方法
这可以通过使用 C# .net ADS 库来完成。要在 Config 和 运行 之间更改 TwinCAT 运行时,请连接到系统服务 ADS 端口(端口 10000)并将状态设置为 AdsState.Run
或 AdsState.Config
.
可以找到所有有效状态值 here. All the port values can be found here。
static void Main(string[] args)
{
//Create a new instance of class TcAdsClient
TcAdsClient tcClient = new TcAdsClient();
try
{
// Connect to TwinCAT System Service port 10000
tcClient.Connect(AmsPort.SystemService);
// Send desired state
tcClient.WriteControl(new StateInfo(AdsState.Config, tcClient.ReadState().DeviceState));
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.ReadKey();
}
finally
{
tcClient.Dispose();
}
}
TcXaeMgmt 需要安装到 PS v4.0+
https://www.powershellgallery.com/packages/TcXaeMgmt/3.2.21
比在 Powershell 中输入:
Set-AdsState 停止
要么
Set-AdsState开始
如何从控制台或 C# 应用程序 start/restart/shutdoown TwinCAT 系统运行时?我需要一个与右下角的 TwinCAT 工具栏按钮 System Start/Restart 等效的功能。 谢谢。
您可以在 C#/.NET 程序中使用 TwinCAT automation interface, which is accessible by linking the automation interface DLL。
具体来说,对于 start/restart TwinCAT,您使用 ITcSysManager::StartRestartTwinCAT - 方法
这可以通过使用 C# .net ADS 库来完成。要在 Config 和 运行 之间更改 TwinCAT 运行时,请连接到系统服务 ADS 端口(端口 10000)并将状态设置为 AdsState.Run
或 AdsState.Config
.
可以找到所有有效状态值 here. All the port values can be found here。
static void Main(string[] args)
{
//Create a new instance of class TcAdsClient
TcAdsClient tcClient = new TcAdsClient();
try
{
// Connect to TwinCAT System Service port 10000
tcClient.Connect(AmsPort.SystemService);
// Send desired state
tcClient.WriteControl(new StateInfo(AdsState.Config, tcClient.ReadState().DeviceState));
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.ReadKey();
}
finally
{
tcClient.Dispose();
}
}
TcXaeMgmt 需要安装到 PS v4.0+ https://www.powershellgallery.com/packages/TcXaeMgmt/3.2.21
比在 Powershell 中输入: Set-AdsState 停止 要么 Set-AdsState开始