KUKA UserTech3.3(8.3的系统)和KUKA UserTech4.0(8.6的系统)差别还是比较大的,此前文章“KUKA 机器人UserTech 联机表格--自定义指令”所使用的是KUKA UserTech3.3版本。
自定指令主要的两个文件:
KUKA UserTech3.3:
KFD文件
SmartHMI.User.Config
KUKA UserTech4.0:
KFDx文件
SmartHMI.exe.UserTech.InlineForms.config
KUKA UserTech3.3的KFD文件如何转换成KFDx文件呢?
1、将8.3系统中的,此前文章“KUKA 机器人UserTech 联机表格--自定义指令”Logic.KFD文件拷贝到8.6系统C:\KRC\TP\UserTech\TEMPLATE文件夹中。
2、使用:KukaRoboter.UserTech.KfdConverter.exe软件,双击运行即可将Logic.kfd转换成Logic.kfdx文件。路径:C:\KRC\TP\UserTech\SmartHMI
3、工艺集成于 KUKA smartHMI的文件:SmartHMI.exe.UserTech.InlineForms.config路径:C:\KRC\TP\UserTech\SmartHMI
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="KukaRoboter.SmartHMI.Menu" type="Ade.Internal.ConfigurationSectionHandler, Ade.ComponentsImpl" allowExeDefinition="MachineToLocalUser"/>
<section name="KukaRoboter.TechHandler2.IlfProviders" type="Ade.Internal.ConfigurationSectionHandler, Ade.ComponentsImpl" allowExeDefinition="MachineToLocalUser"/>
<section name="KukaRoboter.TechHandler2.IlfParamsParsers" type="Ade.Internal.ConfigurationSectionHandler, Ade.ComponentsImpl" allowExeDefinition="MachineToLocalUser"/>
</configSections>
<KukaRoboter.SmartHMI.Menu type="KukaRoboter.SmartHMI.UIFramework.Menu.MenuRootImpl, SmartHMI">
<!-- Menue tree of UserTech InlineForms -->
<MenuRoot SystemName="CommandMenu">
<MenuFolder DisplayName="UserTechILFs#UserTech" MergeOrder="902">
<MenuItem DisplayName="UserTechILFs#MyCmd" MergeOrder="110">
<CommandCall Target="LegacyLoader.InvokeModuleProc">
<Argument Name="PlugInName">INLINEFORM</Argument>
<Argument Name="ProcID">2011</Argument>
<Argument Name="ParamList">Kuka.UserTech;MYTECH;MyCmd</Argument>
</CommandCall>
</MenuItem>
<MenuItem DisplayName="UserTechILFs#Ilf_With_ParamList" MergeOrder="120">
<CommandCall Target="LegacyLoader.InvokeModuleProc">
<Argument Name="PlugInName">INLINEFORM</Argument>
<Argument Name="ProcID">2011</Argument>
<Argument Name="ParamList">Kuka.UserTech;MYTECH;ILF_With_ParamList</Argument>
</CommandCall>
</MenuItem>
<MenuItem DisplayName="UserTechILFs#AREA_REQ" MergeOrder="130">
<CommandCall Target="LegacyLoader.InvokeModuleProc">
<Argument Name="PlugInName">INLINEFORM</Argument>
<Argument Name="ProcID">2011</Argument>
<Argument Name="ParamList">Kuka.UserTech;Logic;AREA_REQ</Argument>
</CommandCall>
</MenuItem>
<MenuItem DisplayName="UserTechILFs#AREA_REL" MergeOrder="140">
<CommandCall Target="LegacyLoader.InvokeModuleProc">
<Argument Name="PlugInName">INLINEFORM</Argument>
<Argument Name="ProcID">2011</Argument>
<Argument Name="ParamList">Kuka.UserTech;Logic;AREA_REL</Argument>
</CommandCall>
</MenuItem>
</MenuFolder>
</MenuRoot>
</KukaRoboter.SmartHMI.Menu>
<KukaRoboter.TechHandler2.IlfProviders type="KukaRoboter.Common.Technology.TechHandler2.IlfProviderConfiguration, KukaRoboter.Common.Technology">
<IlfProvider Name="Kuka.UserTech" Type="KukaRoboter.KukaUserTech.InlineForms.UserTech" Assembly="KukaRoboter.UserTech.InlineForms" OptionPackageName="UserTech" SplineType="BLOCK_TYPE_ALL" />
</KukaRoboter.TechHandler2.IlfProviders>
<KukaRoboter.TechHandler2.IlfParamsParsers type="KukaRoboter.Common.Technology.TechHandler2.IlfParamsParserConfiguration, KukaRoboter.Common.Technology">
<IlfParamsParser ParsesOldParams="false" Id="FoldParamsParser" Impl="KukaRoboter.Common.Technology.TechHandler2.FoldParamsParser, KukaRoboter.Common.Technology" />
<IlfParamsParser ParsesOldParams="false" Id="UserTechParamsParser" Impl="KukaRoboter.KukaUserTech.InlineForms.UserTechParamsParser, KukaRoboter.UserTech.InlineForms" />
</KukaRoboter.TechHandler2.IlfParamsParsers>
</configuration>