前些天一個公眾號的朋友留言...................
新版本的UserTech的可編程按鍵,不得不說KUKA是真的有點(diǎn)煩呀,確實(shí)與之前的版本不太一樣,之前也有三篇文章介紹說明過:KUKA 機(jī)器人UserTech 聯(lián)機(jī)表格--自定義指令、KUKA機(jī)器人自定義4個工藝按鍵、KUKA機(jī)器人自定義按鍵輸出信號置位復(fù)位(按鍵狀態(tài)切換),大家可以參考看看。相比較大體上邏輯出入不太大,但是還是花了點(diǎn)時間,試了一下KUKA機(jī)器人自定義按鍵輸出信號置位復(fù)位(按鍵狀態(tài)切換)這個新版本的功能。直接修改自帶的TestStat.kfdx文件,代碼如下,修改完成后,以重新讀入文件的方式重啟。
<?xml version="1.0" encoding="utf-8"?>
<!--For an example how to add menu entries for UserTech StatkeyBars see file C:\KRC\TP\UserTech\SmartHMI\SmartHMI.exe.UserTech.KeyBar.config-->
<KukaTechDescription xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Application Name="StatkeyTest" SOT="TRUE" SOC="TRUE">
<Param Name="BildNr" ShortName="" ShortCut="" Unit="" Var="" Enable="">
<Value Type="Number" Default="1" Min="0" Max="2" Step="" Autolimit="" />
</Param>
<Param Name="StatKeyNr" ShortName="" ShortCut="" Unit="" Var="" Enable="">
<Value Type="Number" Default="1" Min="0" Max="3" Step="" Autolimit="" />
</Param>
<StatKey Name="Stat1" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild11.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="ST1" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</StatKey>
<StatKey Name="Stat2" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild21.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="ST2" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</StatKey>
<StatKey Name="Stat3" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild31.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="ST3" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</StatKey>
<StatKey Name="Stat4" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild41.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="CHGStatkey" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</StatKey>
<Script Name="StatKeyTrue">
<Message Text="$OUT %StatkeyNr = ON" />
</Script>
<Script Name="StatKeyFlase">
<Message Text="$OUT %StatkeyNr = OFF" />
</Script>
<Script Name="StatKeyBool">
<Switch Dialog="FALSE" Condition="%BildNr">
<Case Value="1" Do="StatKeyTrue" />
<Case Value="2" Do="StatKeyFlase" />
</Switch>
</Script>
<Script Name="OUT1TRUE">
<SetVar Fullpath="$OUT[1]" Value="True" />
</Script>
<Script Name="OUT1FALSE">
<SetVar Fullpath="$OUT[1]" Value="FALSE" />
</Script>
<Script Name="OUT2TRUE">
<SetVar Fullpath="$OUT[2]" Value="True" />
</Script>
<Script Name="OUT2FALSE">
<SetVar Fullpath="$OUT[2]" Value="FALSE" />
</Script>
<Script Name="OUT3TRUE">
<SetVar Fullpath="$OUT[3]" Value="True" />
</Script>
<Script Name="OUT3FALSE">
<SetVar Fullpath="$OUT[3]" Value="FALSE" />
</Script>
<Script Name="ST1">
<ShowVar Fullpath="1" Param="StatKeyNr" />
<Switch Dialog="FALSE" Condition="%BildNr">
<Case Value="1" Do="OUT1TRUE" />
<Case Value="2" Do="OUT1FALSE" />
</Switch>
<Do Script="StatKeyBool" />
</Script>
<Script Name="ST2">
<ShowVar Fullpath="2" Param="StatKeyNr" />
<Switch Dialog="FALSE" Condition="%BildNr">
<Case Value="1" Do="OUT2TRUE" />
<Case Value="2" Do="OUT2FALSE" />
</Switch>
<Do Script="StatKeyBool" />
</Script>
<Script Name="ST3">
<ShowVar Fullpath="3" Param="StatKeyNr" />
<Switch Dialog="FALSE" Condition="%BildNr">
<Case Value="1" Do="OUT3TRUE" />
<Case Value="2" Do="OUT3FALSE" />
</Switch>
<Do Script="StatKeyBool" />
</Script>
<Script Name="SKB1">
<ShowVar Fullpath="1" Param="BildNr" />
<Set Name="Stat1" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild11.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="ON" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</Set>
<Set Name="Stat2" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild21.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="ON" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</Set>
<Set Name="Stat3" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild31.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="ON" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</Set>
</Script>
<Script Name="SKB2">
<ShowVar Fullpath="2" Param="BildNr" />
<Set Name="Stat1" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild12.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="OFF" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</Set>
<Set Name="Stat2" Enable="" UserMode="" Style="" Next="">
<Picture Default="C:\KRC\TP\UserTech\Template\Bild22.ICO" KeyDown="" KeyDownMinus="" />
<Text Top="" Center="OFF" Bottom="" />
<Needs SafetySwitch="" DrivesOk="" Prostate0="" Prostate="" ModeOp="" />
<Scripts OnKeyDown="" OnKeyUp="" OnKeyShow="" OnKeyDownMinus="" OnKeyUpMinus="" OnKeyRepeat="" OnKeyRepeatMinus="" />
</Set>