跳转至

脚本示例:集成 Schneider Modsoft 组件的编辑器

该脚本解决方案可优化施耐德 Modsoft 组件的处理。

该脚本功能所需的文件

文件名 描述 功能性
ScriptBeforeEdit.exe 已在脚本包中提供 根据组件类型 ID 的不同,可通过编辑器链接项目文件
ScriptBeforeEdit.ini 可使用文本编辑器进行编辑 为特定组件类型 ID 定义 BeforeEdit 脚本
SchneiderModsoft.script 可使用文本编辑器进行编辑 脚本解释器处理的脚本
ModsoftCaller.bat 可使用文本编辑器进行编辑 调用 Modsoft 编辑器或其他编辑器的批处理文件

脚本解决方案的前提条件

  • 必须在所有相关计算机上安装并授权 Schneider Modsoft 编辑器,这些计算机要与 UserClient一起设置编辑器集成。
  • 建议在所有计算机上将 Modsoft 安装在相同的目录中(例如 C:\Modsoft\editor)。

设置脚本

激活 ScriptBeforeEdit.exe

将应用程序复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。

编辑 ScriptBeforeEdit.ini

我们建议您添加服务器脚本目录中任何现有的ScriptBeforeEdit.ini 文件,以便自动更新客户端更新。如果(尚未)存在此文件,请使用脚本包中的模板。

  1. 在[常规]部分输入组件类型到脚本的连接,激活施耐德 Modsoft 脚本。
  2. 如果要链接多个不同的组件类型到脚本,则必须为每个组件类型 ID 创建一个新的条目。
  3. 保存该文件。
  4. 将文件复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。

例如:

[General]
// Mapping for CoDeSys editor component types
{ComponentTypeID}=SchneiderModsoft

具体例子:

[General]
5A527AA2D4A846208BB8648EED1146BD=SchneiderModsoft

编辑 SchneiderModsoft.script

  1. 在文本编辑器中打开 SchneiderModsoft.script 文件。
  2. 如有必要,请根据下表进行调整。
  3. 保存该文件。
  4. 将文件复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。

脚本

Function ScriptBeforeEdit
{
$def::var1 = C:\Modsoft\Editor
$def::var2 = $func::getfilename($vdog::specific->SelectedFile)
$def::var3 = $func::getshortdir($vdog::specific->WorkingDir)

// Create UPF file:
file.create $def::var1\$def::var2.upf
{
write.line rt_directory $def::var1\RUNTIME
write.line tmp_directory $def::var1\TMP
write.line files_directory $def::var3
write.line names_directory $def::var
}

// Customize ENV:
file.replace $def::var3\$def::var2.env
{
row.1 $def::var3\
row.2 $def::var3\
row.3 $def::var3\
row.4 $def::var3\
row.5 $def::var3\
}

// Update Modsoftcaller:
file.copy
{
source $vdog::myrundir\ModsoftCaller.bat
dest $def::var1\ModsoftCaller.bat
}

// Execute Modsoft batch:
call $def::var1\ModsoftCaller.bat
{
arg $def::var2.upf
arg $def::var2.env
wait 0
}

done
}

自定义

第 3 行:

在此处调整 Modsoft 编辑器的绝对路径。

第 37 行:

在本例中,只有文件名作为参数传递。如果要绝对指定 UPF 文件,这一行应为:arg $def::var1\$def::var2.upf。

第 38 行:

在本例中,只有文件名作为参数传递。如果要绝对指定 ENV 文件,这一行应为:arg $def::var3\$def::var2.upf。

第 39 行:

如果您要等待到编辑器关闭,请删除此行。

编辑 ModsoftCaller.bat

  1. 在文本编辑器中打开 ModsoftCaller.bat 文件。

    // Change to the Modsoft directory
    c:
    cd \Modsoft\editor\
    C:\Modsoft\editor\Modsoft.exe /f%1 %2
    Delete REM upf file
    del %1
    
  2. 如果有必要,请调整 Modsoft 编辑器的目录。

  3. 您也可以在此调用另一个应用程序(如 Modbusplus 耦合器的 USB 驱动程序)。
  4. 保存该文件。
  5. 将文件复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。

相关主题