variable name is RET and you need to click on Update to get current value.
in my experience RSI is an advanced topic and should only be attempted by those that are already proficient with KUKA robots.
variable name is RET and you need to click on Update to get current value.
in my experience RSI is an advanced topic and should only be attempted by those that are already proficient with KUKA robots.
Thanks for the help I was not knowing that. Yes! I am getting 27 in ret and if I am trying $ret then also I am getting some data screenshot attached. Thanks
and for $ret
$RET is a system variable (hence the $) that has nothing to do with the topic at hand. We are concerned with RET, from the line in your program:
RET=RSI_CREATE(....)
RSI_CREATE is a function that returns an Integer value indicating how the function passed or failed. That value is passed back into RET by the function. You can see how this works by examining the source code of RSI_CREATE in the file RSI.SRC, in the robot.
The RSI manual contains a list of these response codes and what they mean. Start there.
Hello SkyeFire,
I have checked the full RSI pdf but did not get about this issue and response code. So according to you, I have to change the code of RSI.SRC, but when I check the code of this file I get confused about what to do and how to make my Kuka robot arm working with ROS. I am posting code that may give an idea of you what's wrong with the code.
http://vip.gatech.edu/wiki/images/3/…orInterface.pdf
<?xml version="1.0" encoding="utf-8"?>
<rSIModel dslVersion="1.0.0.0" name="" xmlns="http://schemas.microsoft.com/dsltools/RSIVisual">
<rSIObjects>
<rSIElement name="AXISCORR1" objType="AXISCORR" objTypeID="33" maxInputs="0" maxOutputs="0">
<rSIInPorts>
<rSIInPort name="CorrA1" mandatory="false">
<source>
<rSIOutPortMoniker name="//ETHERNET1/Out1" />
</source>
</rSIInPort>
<rSIInPort name="CorrA2" mandatory="false">
<source>
<rSIOutPortMoniker name="//ETHERNET1/Out2" />
</source>
</rSIInPort>
<rSIInPort name="CorrA3" mandatory="false">
<source>
<rSIOutPortMoniker name="//ETHERNET1/Out3" />
</source>
</rSIInPort>
<rSIInPort name="CorrA4" mandatory="false">
<source>
<rSIOutPortMoniker name="//ETHERNET1/Out4" />
</source>
</rSIInPort>
<rSIInPort name="CorrA5" mandatory="false">
<source>
<rSIOutPortMoniker name="//ETHERNET1/Out5" />
</source>
</rSIInPort>
<rSIInPort name="CorrA6" mandatory="false">
<source>
<rSIOutPortMoniker name="//ETHERNET1/Out6" />
</source>
</rSIInPort>
</rSIInPorts>
<rSIOutPorts>
<rSIOutPort name="Stat" signalType="Int" />
<rSIOutPort name="A1" />
<rSIOutPort name="A2" />
<rSIOutPort name="A3" />
<rSIOutPort name="A4" />
<rSIOutPort name="A5" />
<rSIOutPort name="A6" />
</rSIOutPorts>
<rSIParameters>
<rSIParameter name="LowerLimA1" value="-90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="1" />
<rSIParameter name="LowerLimA2" value="-90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="2" />
<rSIParameter name="LowerLimA3" value="-90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="3" />
<rSIParameter name="LowerLimA4" value="-90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="4" />
<rSIParameter name="LowerLimA5" value="-90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="5" />
<rSIParameter name="LowerLimA6" value="-90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="6" />
<rSIParameter name="UpperLimA1" value="90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="13" />
<rSIParameter name="UpperLimA2" value="90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="14" />
<rSIParameter name="UpperLimA3" value="90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="15" />
<rSIParameter name="UpperLimA4" value="90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="16" />
<rSIParameter name="UpperLimA5" value="90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="17" />
<rSIParameter name="UpperLimA6" value="90.0" paramType="System.Double" minVal="-2147483648" maxVal="2147483647" isEnum="false" index="18" />
</rSIParameters>
</rSIElement>
<rSIElement name="ETHERNET1" objType="ETHERNET" objTypeID="64" maxInputs="64" maxOutputs="64">
<rSIInPorts>
<rSIInPort name="In1" mandatory="false" />
</rSIInPorts>
<rSIOutPorts>
<rSIOutPort name="Out1" />
<rSIOutPort name="Out2" />
<rSIOutPort name="Out3" />
<rSIOutPort name="Out4" />
<rSIOutPort name="Out5" />
<rSIOutPort name="Out6" />
<rSIOutPort name="Out7" />
</rSIOutPorts>
<rSIParameters>
<rSIParameter name="ConfigFile" value="ros_rsi_ethernet.xml" paramType="System.FileName" minVal="-2147483648" maxVal="2147483647" isEnum="false" isRuntime="false" index="1" />
<rSIParameter name="Timeout" value="100" paramType="System.Int32" minVal="0" maxVal="2147483647" isEnum="false" index="1" />
<rSIParameter name="Flag" value="1" paramType="System.Int32" minVal="-1" maxVal="999" isEnum="false" index="4" />
<rSIParameter name="Precision" value="4" paramType="System.Int32" minVal="1" maxVal="32" isEnum="false" index="8" />
</rSIParameters>
</rSIElement>
<rSIElement name="AXISCORRMON1" objType="AXISCORRMON" objTypeID="82" maxInputs="0" maxOutputs="0">
<rSIOutPorts>
<rSIOutPort name="A1" />
<rSIOutPort name="A2" />
<rSIOutPort name="A3" />
<rSIOutPort name="A4" />
<rSIOutPort name="A5" />
<rSIOutPort name="A6" />
<rSIOutPort name="E1" />
<rSIOutPort name="E2" />
<rSIOutPort name="E3" />
<rSIOutPort name="E4" />
<rSIOutPort name="E5" />
<rSIOutPort name="E6" />
</rSIOutPorts>
<rSIParameters>
<rSIParameter name="MaxA1" value="90.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="1" />
<rSIParameter name="MaxA2" value="90.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="2" />
<rSIParameter name="MaxA3" value="90.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="3" />
<rSIParameter name="MaxA4" value="90.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="4" />
<rSIParameter name="MaxA5" value="90.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="5" />
<rSIParameter name="MaxA6" value="90.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="6" />
<rSIParameter name="MaxE1" value="6.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="7" />
<rSIParameter name="MaxE2" value="6.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="8" />
<rSIParameter name="MaxE3" value="6.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="9" />
<rSIParameter name="MaxE4" value="6.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="10" />
<rSIParameter name="MaxE5" value="6.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="11" />
<rSIParameter name="MaxE6" value="6.0" paramType="System.Double" minVal="0" maxVal="2147483647" isEnum="false" index="12" />
</rSIParameters>
</rSIElement>
</rSIObjects>
</rSIModel>
Display More
Taken from the RSI 3.1 documentation.
Hello Roboformer,
Thanks for the reply. I am getting 27 from ret. What is the meaning of that from your screenshot can you please help me with that?
Thanks
So according to you, I have to change the code of RSI.SRC,
NO.
You do NOT modify RSI.SRC. You examine it to understand what it's doing.
In this case, the associated data file, RSI.DAT, contains the complete list of integer variables permanently declared to various values to make troubleshooting RSI's error codes easier. Which you would have found, if you were making a serious effort.
As you can see from the list copied out of RSI.DAT below, 27 is RSIFileNotFound. You'll need to look up this error, but this strongly suggests that RSI_CREATE cannot find your RSI container file.
GLOBAL CONST INT RSIOK=0
GLOBAL CONST INT RSIBAD=1
GLOBAL CONST INT RSIINVARG=2
GLOBAL CONST INT RSINOTIMPL=3
GLOBAL CONST INT RSINOMEMORY=4
GLOBAL CONST INT RSIINVCONT=5
GLOBAL CONST INT RSIINVFILE=6
GLOBAL CONST INT RSIINVPARAMID=7
GLOBAL CONST INT RSIINVPARAM=8
GLOBAL CONST INT RSIINVOBJID=9
GLOBAL CONST INT RSIINVINPIDX=10
GLOBAL CONST INT RSIINVOUTIDX=11
GLOBAL CONST INT RSIHASSUCC=12
GLOBAL CONST INT RSILNKINPOBJID=13
GLOBAL CONST INT RSILNKOUTOBJID=14
GLOBAL CONST INT RSILNKINPIDX=15
GLOBAL CONST INT RSILNKOUTIDX=16
GLOBAL CONST INT RSILNKOCCUP=17
GLOBAL CONST INT RSILNKSIGNAL=18
GLOBAL CONST INT RSINOLNKOBJ=19
GLOBAL CONST INT RSILNKCIRCLE=20
GLOBAL CONST INT RSILNKMAXDEP=21
GLOBAL CONST INT RSINOTLINKED=22
GLOBAL CONST INT RSILNKNEEDED=23
GLOBAL CONST INT RSILNKOUTDISABLED=24
GLOBAL CONST INT RSIDISPREDECESSOR=25
GLOBAL CONST INT RSIMAXENAOBJ=26
GLOBAL CONST INT RSIFILENOTFOUND=27
GLOBAL CONST INT RSIENASUCCESSOR=28
GLOBAL CONST INT RSIBADCAST=29
GLOBAL CONST INT RSIALREADYON=30
GLOBAL CONST INT RSINOTRUNNING=31
GLOBAL CONST INT RSIEXTLIBNOTFOUND=32
GLOBAL CONST INT RSINOCONNECT=33
GLOBAL CONST INT RSITIMEOUT=34
GLOBAL CONST INT RSIUSERERR=100
GLOBAL CONST INT RSITSYS=998
GLOBAL CONST INT RSISPOC=999
Display More
Your RSI files must be stored in this folder:
C:\KRC\ROBOTER\Config\User\Common\SensorInterface
Are they there?
Hello Roboformer and @SkyeFire,
Yes! I have checked the file is there and the location is also the same: C:\KRC\ROBOTER\Config\User\Common\SensorInterface
ROS_RSI.RSI, not ROS_RSI.RSI.XML. Two different files.
The correct file is visible three files up from the XML file, so I don't know why RSI_CREATE would throw a File Not Found error.
Have you tried opening the ROS_RSI.RSI file in RSIVisual to see if it compiles properly?
Hey,
Yes! I tried but when I double-click on that file from work visual it open in another text editor. And how can I compile this file?
it would be easier to help you if you would followed instructions and answered questions.
you still did not answer what is the exact KSS version, or RSI version.
it also looks like you never read the manual or completed installation, as outlined in the manual.
in fact you are trying to brute force this to work without following proper steps to learn about the system,
for example how to use the smartPad, monitor variables, display (and read) messages, etc
i am not trying to scold you, this is meant to remind you that there are some really important steps that you are neglecting. you don't want to be a danger to yourself and others.
please read pinned topic READ FIRST,
read key manuals, such as programming for system integrators, RSI manual for your version of RSI
perform proper installation and integration of packages
read all responses you got here and answer all questions, etc.
judging by evidence shared so far, this seem to be one of KSS8.5.x versions.
that means your RSI version is likely one of 4.x.x versions
on previous RSI versions (3,x or so) one had to install RSIVisual separately
on newer versions, this is done through integration of KOP file into WoV.