Orocos/Ros Ethercat support

On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> Hi,
>
> I followed the instructions posted here
> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO to
> set up
> an Ethercat connection. Some links seem to be a outdated, but most
> instructions are still relevant and worked for me. I was able to install
> Orocos and establish a connection with a Robotiq gripper, but I was not
> able
> to create Ros topics, which should be done by the last two lines in
> test.ops
> provided in these notes:
>
> # This command remaps OROCOS topics to ROS topics
> stream("Master.Slave_1002.bits", ros.topic("DI"))
> stream("Master.Slave_1003.bits", ros.topic("DO"))
>
> The error I get from this is "Parse error at line 25: Service or Task
> "Deployer" has no Peer or Service ros (or Deployer was not found at all)"
> (line 25 is the first of the above two lines and the script works fine for
> the rest when I comment these lines out).
> I suspect that some imports and the parts relevant for integrating
> Orocos/Ros
> are missing (perhaps a package from the from rtt_ros_integration stack?),
> but
> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
> exactly how I should fix this.
>
> My question is, how do I remap Orocos topics to Ros topics for this
> particular case? I already downloaded the rtt_ros_integration stack which
> compiles fine. However, if I look in the source code of soem_master I don't
> see much usage of the rtt_ros_integration packages, which is what I believe
> needed to connect Orocos to Ros. Is something missing here to integrate
> Orocos with Ros? Also, I'm not sure whether the following could have caused
> some problems:
>
>
This should still be working, but, which versions of ROS and Orocos are you
using? Did you follow the documentation on
https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
?

R.

> - Instead of using the link http://www.ros.org/wiki/orocos_toolchain_ros,
> I
> followed the instructions at http://wiki.ros.org/orocos_toolchain to build
> orocos.
>
> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I believe
> that it
> moved to here: https://github.com/orocos/rtt_soem. I got all the code for
> Soem from here.
>
> For now I will try to find out more about Orocos and the
> rtt_ros_integration_stack to fix this, but the documentation I found so far
> is scarce. Also, if you know of alternatives for controlling a Robotiq
> Gripper through Ethercat in Ros I also consider that as a solution. I
> believe
> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
> moment. Please let me know what you think, thanks in advance.
>
> Best,
> Wilson Ko
> --
> Orocos-Users mailing list
> Orocos-Users [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>

Orocos/Ros Ethercat support

Hi Ruben,

Thanks for your fast reply. I use ROS indigo and installed version 2.7 of
the orocos_toolchain from source (http://wiki.ros.org/orocos_toolchain_ros).
I was not aware of the documentation you provided, it helped me getting a
bit further, thanks! As I suspected, an import was missing in the test.ops
file which is the import from rtt_roscomm. Now the error is fixed, but now
I get the following errors:

0.201 [ Warning][Master] Could not create driver for netX
0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
looking for port 'Master.Slave_1002.bits'
0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
looking for port 'Master.Slave_1003.bits'
Switched to : Deployer

I suspect that I need to add these services in the C++ code in soem_master,
is that correct? Please correct me if I am wrong as I am new to Orocos. I'm
not too sure about the warning though and what to do about it.

Best,
Wilson

On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
wrote:

>
>
> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>
>> Hi,
>>
>> I followed the instructions posted here
>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO to
>> set up
>> an Ethercat connection. Some links seem to be a outdated, but most
>> instructions are still relevant and worked for me. I was able to install
>> Orocos and establish a connection with a Robotiq gripper, but I was not
>> able
>> to create Ros topics, which should be done by the last two lines in
>> test.ops
>> provided in these notes:
>>
>> # This command remaps OROCOS topics to ROS topics
>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>
>> The error I get from this is "Parse error at line 25: Service or Task
>> "Deployer" has no Peer or Service ros (or Deployer was not found at all)"
>> (line 25 is the first of the above two lines and the script works fine for
>> the rest when I comment these lines out).
>> I suspect that some imports and the parts relevant for integrating
>> Orocos/Ros
>> are missing (perhaps a package from the from rtt_ros_integration stack?),
>> but
>> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
>> exactly how I should fix this.
>>
>> My question is, how do I remap Orocos topics to Ros topics for this
>> particular case? I already downloaded the rtt_ros_integration stack which
>> compiles fine. However, if I look in the source code of soem_master I
>> don't
>> see much usage of the rtt_ros_integration packages, which is what I
>> believe
>> needed to connect Orocos to Ros. Is something missing here to integrate
>> Orocos with Ros? Also, I'm not sure whether the following could have
>> caused
>> some problems:
>>
>>
> This should still be working, but, which versions of ROS and Orocos are
> you using? Did you follow the documentation on
> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
> ?
>
> R.
>
>
>> - Instead of using the link http://www.ros.org/wiki/orocos_toolchain_ros,
>> I
>> followed the instructions at http://wiki.ros.org/orocos_toolchain to
>> build
>> orocos.
>>
>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I believe
>> that it
>> moved to here: https://github.com/orocos/rtt_soem. I got all the code for
>> Soem from here.
>>
>> For now I will try to find out more about Orocos and the
>> rtt_ros_integration_stack to fix this, but the documentation I found so
>> far
>> is scarce. Also, if you know of alternatives for controlling a Robotiq
>> Gripper through Ethercat in Ros I also consider that as a solution. I
>> believe
>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
>> moment. Please let me know what you think, thanks in advance.
>>
>> Best,
>> Wilson Ko
>> --
>> Orocos-Users mailing list
>> Orocos-Users [..] ...
>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>
>
>
>
> --
> Ruben Smits, Roboticist - Founder
> +32 479 511 786
> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
> www.intermodalics.eu
>

Ruben Smits's picture

Orocos/Ros Ethercat support

On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> Hi Ruben,
>
> Thanks for your fast reply. I use ROS indigo and installed version 2.7 of
> the orocos_toolchain from source (http://wiki.ros.org/orocos_toolchain_ros).
> I was not aware of the documentation you provided, it helped me getting a
> bit further, thanks! As I suspected, an import was missing in the test.ops
> file which is the import from rtt_roscomm. Now the error is fixed, but now
> I get the following errors:
>
> 0.201 [ Warning][Master] Could not create driver for netX
> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
> looking for port 'Master.Slave_1002.bits'
> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
> looking for port 'Master.Slave_1003.bits'
> Switched to : Deployer
>
>
These services are automatically added when you configure the master, it
will go over the attached modules and check if it has a driver registered
for it, if so it will automatically create a service with the name
Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.

We currently only provide drivers for some of the standard Beckhoff
modules, so if you want to use it to support a Robotiq hand you will need
to add a driver yourself for it. You can look into
https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
for examples on how to do that.

R.

> I suspect that I need to add these services in the C++ code in
> soem_master, is that correct? Please correct me if I am wrong as I am new
> to Orocos. I'm not too sure about the warning though and what to do about
> it.
>
> Best,
> Wilson
>
> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
> wrote:
>
>>
>>
>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>
>>> Hi,
>>>
>>> I followed the instructions posted here
>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO to
>>> set up
>>> an Ethercat connection. Some links seem to be a outdated, but most
>>> instructions are still relevant and worked for me. I was able to install
>>> Orocos and establish a connection with a Robotiq gripper, but I was not
>>> able
>>> to create Ros topics, which should be done by the last two lines in
>>> test.ops
>>> provided in these notes:
>>>
>>> # This command remaps OROCOS topics to ROS topics
>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>
>>> The error I get from this is "Parse error at line 25: Service or Task
>>> "Deployer" has no Peer or Service ros (or Deployer was not found at all)"
>>> (line 25 is the first of the above two lines and the script works fine
>>> for
>>> the rest when I comment these lines out).
>>> I suspect that some imports and the parts relevant for integrating
>>> Orocos/Ros
>>> are missing (perhaps a package from the from rtt_ros_integration
>>> stack?), but
>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
>>> exactly how I should fix this.
>>>
>>> My question is, how do I remap Orocos topics to Ros topics for this
>>> particular case? I already downloaded the rtt_ros_integration stack which
>>> compiles fine. However, if I look in the source code of soem_master I
>>> don't
>>> see much usage of the rtt_ros_integration packages, which is what I
>>> believe
>>> needed to connect Orocos to Ros. Is something missing here to integrate
>>> Orocos with Ros? Also, I'm not sure whether the following could have
>>> caused
>>> some problems:
>>>
>>>
>> This should still be working, but, which versions of ROS and Orocos are
>> you using? Did you follow the documentation on
>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>> ?
>>
>> R.
>>
>>
>>> - Instead of using the link http://www.ros.org/wiki/orocos_toolchain_ros,
>>> I
>>> followed the instructions at http://wiki.ros.org/orocos_toolchain to
>>> build
>>> orocos.
>>>
>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I believe
>>> that it
>>> moved to here: https://github.com/orocos/rtt_soem. I got all the code
>>> for
>>> Soem from here.
>>>
>>> For now I will try to find out more about Orocos and the
>>> rtt_ros_integration_stack to fix this, but the documentation I found so
>>> far
>>> is scarce. Also, if you know of alternatives for controlling a Robotiq
>>> Gripper through Ethercat in Ros I also consider that as a solution. I
>>> believe
>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
>>> moment. Please let me know what you think, thanks in advance.
>>>
>>> Best,
>>> Wilson Ko
>>> --
>>> Orocos-Users mailing list
>>> Orocos-Users [..] ...
>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>
>>
>>
>>
>> --
>> Ruben Smits, Roboticist - Founder
>> +32 479 511 786
>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>> www.intermodalics.eu
>>
>

Orocos/Ros Ethercat support

I see, then I will try to do that. Thanks for your help!

On Wed, 3 Jun 2015 at 16:08 Ruben Smits <ruben [dot] smits [..] ...>
wrote:

> On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>
>> Hi Ruben,
>>
>> Thanks for your fast reply. I use ROS indigo and installed version 2.7 of
>> the orocos_toolchain from source (
>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>> documentation you provided, it helped me getting a bit further, thanks! As
>> I suspected, an import was missing in the test.ops file which is the import
>> from rtt_roscomm. Now the error is fixed, but now I get the following
>> errors:
>>
>> 0.201 [ Warning][Master] Could not create driver for netX
>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
>> looking for port 'Master.Slave_1002.bits'
>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
>> looking for port 'Master.Slave_1003.bits'
>> Switched to : Deployer
>>
>>
> These services are automatically added when you configure the master, it
> will go over the attached modules and check if it has a driver registered
> for it, if so it will automatically create a service with the name
> Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.
>
> We currently only provide drivers for some of the standard Beckhoff
> modules, so if you want to use it to support a Robotiq hand you will need
> to add a driver yourself for it. You can look into
> https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
> for examples on how to do that.
>
> R.
>
>
>> I suspect that I need to add these services in the C++ code in
>> soem_master, is that correct? Please correct me if I am wrong as I am new
>> to Orocos. I'm not too sure about the warning though and what to do about
>> it.
>>
>> Best,
>> Wilson
>>
>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
>> wrote:
>>
>>>
>>>
>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>
>>>> Hi,
>>>>
>>>> I followed the instructions posted here
>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO to
>>>> set up
>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>> instructions are still relevant and worked for me. I was able to install
>>>> Orocos and establish a connection with a Robotiq gripper, but I was not
>>>> able
>>>> to create Ros topics, which should be done by the last two lines in
>>>> test.ops
>>>> provided in these notes:
>>>>
>>>> # This command remaps OROCOS topics to ROS topics
>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>
>>>> The error I get from this is "Parse error at line 25: Service or Task
>>>> "Deployer" has no Peer or Service ros (or Deployer was not found at
>>>> all)"
>>>> (line 25 is the first of the above two lines and the script works fine
>>>> for
>>>> the rest when I comment these lines out).
>>>> I suspect that some imports and the parts relevant for integrating
>>>> Orocos/Ros
>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>> stack?), but
>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
>>>> exactly how I should fix this.
>>>>
>>>> My question is, how do I remap Orocos topics to Ros topics for this
>>>> particular case? I already downloaded the rtt_ros_integration stack
>>>> which
>>>> compiles fine. However, if I look in the source code of soem_master I
>>>> don't
>>>> see much usage of the rtt_ros_integration packages, which is what I
>>>> believe
>>>> needed to connect Orocos to Ros. Is something missing here to integrate
>>>> Orocos with Ros? Also, I'm not sure whether the following could have
>>>> caused
>>>> some problems:
>>>>
>>>>
>>> This should still be working, but, which versions of ROS and Orocos are
>>> you using? Did you follow the documentation on
>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>> ?
>>>
>>> R.
>>>
>>>
>>>> - Instead of using the link
>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain to
>>>> build
>>>> orocos.
>>>>
>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I believe
>>>> that it
>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the code
>>>> for
>>>> Soem from here.
>>>>
>>>> For now I will try to find out more about Orocos and the
>>>> rtt_ros_integration_stack to fix this, but the documentation I found so
>>>> far
>>>> is scarce. Also, if you know of alternatives for controlling a Robotiq
>>>> Gripper through Ethercat in Ros I also consider that as a solution. I
>>>> believe
>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
>>>> moment. Please let me know what you think, thanks in advance.
>>>>
>>>> Best,
>>>> Wilson Ko
>>>> --
>>>> Orocos-Users mailing list
>>>> Orocos-Users [..] ...
>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>
>>>
>>>
>>>
>>> --
>>> Ruben Smits, Roboticist - Founder
>>> +32 479 511 786
>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>> www.intermodalics.eu
>>>
>>
>
>
> --
> Ruben Smits, Roboticist - Founder
> +32 479 511 786
> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
> www.intermodalics.eu
>

Ruben Smits's picture

Orocos/Ros Ethercat support

We've located some old code that could serve as a good starting point, it's
known to be working but is still using the old rosbuild, so I invite you to
update it to the newer catkin system and orocos macros ;)

I've pushed it here: https://github.com/orocos/rtt_soem_robotiq

R.

On Wed, Jun 3, 2015 at 10:34 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> I see, then I will try to do that. Thanks for your help!
>
> On Wed, 3 Jun 2015 at 16:08 Ruben Smits <ruben [dot] smits [..] ...>
> wrote:
>
>> On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>
>>> Hi Ruben,
>>>
>>> Thanks for your fast reply. I use ROS indigo and installed version 2.7
>>> of the orocos_toolchain from source (
>>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>>> documentation you provided, it helped me getting a bit further, thanks! As
>>> I suspected, an import was missing in the test.ops file which is the import
>>> from rtt_roscomm. Now the error is fixed, but now I get the following
>>> errors:
>>>
>>> 0.201 [ Warning][Master] Could not create driver for netX
>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
>>> looking for port 'Master.Slave_1002.bits'
>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
>>> looking for port 'Master.Slave_1003.bits'
>>> Switched to : Deployer
>>>
>>>
>> These services are automatically added when you configure the master, it
>> will go over the attached modules and check if it has a driver registered
>> for it, if so it will automatically create a service with the name
>> Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.
>>
>> We currently only provide drivers for some of the standard Beckhoff
>> modules, so if you want to use it to support a Robotiq hand you will need
>> to add a driver yourself for it. You can look into
>> https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
>> for examples on how to do that.
>>
>> R.
>>
>>
>>> I suspect that I need to add these services in the C++ code in
>>> soem_master, is that correct? Please correct me if I am wrong as I am new
>>> to Orocos. I'm not too sure about the warning though and what to do about
>>> it.
>>>
>>> Best,
>>> Wilson
>>>
>>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I followed the instructions posted here
>>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO
>>>>> to set up
>>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>>> instructions are still relevant and worked for me. I was able to
>>>>> install
>>>>> Orocos and establish a connection with a Robotiq gripper, but I was
>>>>> not able
>>>>> to create Ros topics, which should be done by the last two lines in
>>>>> test.ops
>>>>> provided in these notes:
>>>>>
>>>>> # This command remaps OROCOS topics to ROS topics
>>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>>
>>>>> The error I get from this is "Parse error at line 25: Service or Task
>>>>> "Deployer" has no Peer or Service ros (or Deployer was not found at
>>>>> all)"
>>>>> (line 25 is the first of the above two lines and the script works fine
>>>>> for
>>>>> the rest when I comment these lines out).
>>>>> I suspect that some imports and the parts relevant for integrating
>>>>> Orocos/Ros
>>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>>> stack?), but
>>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
>>>>> exactly how I should fix this.
>>>>>
>>>>> My question is, how do I remap Orocos topics to Ros topics for this
>>>>> particular case? I already downloaded the rtt_ros_integration stack
>>>>> which
>>>>> compiles fine. However, if I look in the source code of soem_master I
>>>>> don't
>>>>> see much usage of the rtt_ros_integration packages, which is what I
>>>>> believe
>>>>> needed to connect Orocos to Ros. Is something missing here to integrate
>>>>> Orocos with Ros? Also, I'm not sure whether the following could have
>>>>> caused
>>>>> some problems:
>>>>>
>>>>>
>>>> This should still be working, but, which versions of ROS and Orocos are
>>>> you using? Did you follow the documentation on
>>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>>> ?
>>>>
>>>> R.
>>>>
>>>>
>>>>> - Instead of using the link
>>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain to
>>>>> build
>>>>> orocos.
>>>>>
>>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I believe
>>>>> that it
>>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the code
>>>>> for
>>>>> Soem from here.
>>>>>
>>>>> For now I will try to find out more about Orocos and the
>>>>> rtt_ros_integration_stack to fix this, but the documentation I found
>>>>> so far
>>>>> is scarce. Also, if you know of alternatives for controlling a Robotiq
>>>>> Gripper through Ethercat in Ros I also consider that as a solution. I
>>>>> believe
>>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
>>>>> moment. Please let me know what you think, thanks in advance.
>>>>>
>>>>> Best,
>>>>> Wilson Ko
>>>>> --
>>>>> Orocos-Users mailing list
>>>>> Orocos-Users [..] ...
>>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Ruben Smits, Roboticist - Founder
>>>> +32 479 511 786
>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>> www.intermodalics.eu
>>>>
>>>
>>
>>
>> --
>> Ruben Smits, Roboticist - Founder
>> +32 479 511 786
>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>> www.intermodalics.eu
>>
>

Orocos/Ros Ethercat support

Alright thanks! Definitely helpful. I will give it a try and let you know :)

On Wed, 3 Jun 2015 at 17:39 Ruben Smits <ruben [dot] smits [..] ...>
wrote:

> We've located some old code that could serve as a good starting point,
> it's known to be working but is still using the old rosbuild, so I invite
> you to update it to the newer catkin system and orocos macros ;)
>
> I've pushed it here: https://github.com/orocos/rtt_soem_robotiq
>
> R.
>
> On Wed, Jun 3, 2015 at 10:34 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>
>> I see, then I will try to do that. Thanks for your help!
>>
>> On Wed, 3 Jun 2015 at 16:08 Ruben Smits <ruben [dot] smits [..] ...>
>> wrote:
>>
>>> On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>
>>>> Hi Ruben,
>>>>
>>>> Thanks for your fast reply. I use ROS indigo and installed version 2.7
>>>> of the orocos_toolchain from source (
>>>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>>>> documentation you provided, it helped me getting a bit further, thanks! As
>>>> I suspected, an import was missing in the test.ops file which is the import
>>>> from rtt_roscomm. Now the error is fixed, but now I get the following
>>>> errors:
>>>>
>>>> 0.201 [ Warning][Master] Could not create driver for netX
>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
>>>> looking for port 'Master.Slave_1002.bits'
>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
>>>> looking for port 'Master.Slave_1003.bits'
>>>> Switched to : Deployer
>>>>
>>>>
>>> These services are automatically added when you configure the master, it
>>> will go over the attached modules and check if it has a driver registered
>>> for it, if so it will automatically create a service with the name
>>> Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.
>>>
>>> We currently only provide drivers for some of the standard Beckhoff
>>> modules, so if you want to use it to support a Robotiq hand you will need
>>> to add a driver yourself for it. You can look into
>>> https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
>>> for examples on how to do that.
>>>
>>> R.
>>>
>>>
>>>> I suspect that I need to add these services in the C++ code in
>>>> soem_master, is that correct? Please correct me if I am wrong as I am new
>>>> to Orocos. I'm not too sure about the warning though and what to do about
>>>> it.
>>>>
>>>> Best,
>>>> Wilson
>>>>
>>>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
>>>> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I followed the instructions posted here
>>>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO
>>>>>> to set up
>>>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>>>> instructions are still relevant and worked for me. I was able to
>>>>>> install
>>>>>> Orocos and establish a connection with a Robotiq gripper, but I was
>>>>>> not able
>>>>>> to create Ros topics, which should be done by the last two lines in
>>>>>> test.ops
>>>>>> provided in these notes:
>>>>>>
>>>>>> # This command remaps OROCOS topics to ROS topics
>>>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>>>
>>>>>> The error I get from this is "Parse error at line 25: Service or Task
>>>>>> "Deployer" has no Peer or Service ros (or Deployer was not found at
>>>>>> all)"
>>>>>> (line 25 is the first of the above two lines and the script works
>>>>>> fine for
>>>>>> the rest when I comment these lines out).
>>>>>> I suspect that some imports and the parts relevant for integrating
>>>>>> Orocos/Ros
>>>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>>>> stack?), but
>>>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
>>>>>> exactly how I should fix this.
>>>>>>
>>>>>> My question is, how do I remap Orocos topics to Ros topics for this
>>>>>> particular case? I already downloaded the rtt_ros_integration stack
>>>>>> which
>>>>>> compiles fine. However, if I look in the source code of soem_master I
>>>>>> don't
>>>>>> see much usage of the rtt_ros_integration packages, which is what I
>>>>>> believe
>>>>>> needed to connect Orocos to Ros. Is something missing here to
>>>>>> integrate
>>>>>> Orocos with Ros? Also, I'm not sure whether the following could have
>>>>>> caused
>>>>>> some problems:
>>>>>>
>>>>>>
>>>>> This should still be working, but, which versions of ROS and Orocos
>>>>> are you using? Did you follow the documentation on
>>>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>>>> ?
>>>>>
>>>>> R.
>>>>>
>>>>>
>>>>>> - Instead of using the link
>>>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain to
>>>>>> build
>>>>>> orocos.
>>>>>>
>>>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I
>>>>>> believe that it
>>>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the
>>>>>> code for
>>>>>> Soem from here.
>>>>>>
>>>>>> For now I will try to find out more about Orocos and the
>>>>>> rtt_ros_integration_stack to fix this, but the documentation I found
>>>>>> so far
>>>>>> is scarce. Also, if you know of alternatives for controlling a Robotiq
>>>>>> Gripper through Ethercat in Ros I also consider that as a solution. I
>>>>>> believe
>>>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
>>>>>> moment. Please let me know what you think, thanks in advance.
>>>>>>
>>>>>> Best,
>>>>>> Wilson Ko
>>>>>> --
>>>>>> Orocos-Users mailing list
>>>>>> Orocos-Users [..] ...
>>>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ruben Smits, Roboticist - Founder
>>>>> +32 479 511 786
>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>> www.intermodalics.eu
>>>>>
>>>>
>>>
>>>
>>> --
>>> Ruben Smits, Roboticist - Founder
>>> +32 479 511 786
>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>> www.intermodalics.eu
>>>
>>
>
>
> --
> Ruben Smits, Roboticist - Founder
> +32 479 511 786
> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
> www.intermodalics.eu
>

Orocos/Ros Ethercat support

Hi,

I managed to make it compile with catkin and it works, thanks! I created a
pull request so you can merge it if you think it's useful.

About the package name and location, I named it soem_robotiq_drivers for
now as the code assumes that's the package name rather than
rtt_soem_robotiq. Also, that name is more consistent with the
soem_beckhoff_drivers package name. I put this package in the rtt_soem
stack (next to the soem_beckhoff_driver package) as that location makes the
most sense, so if you think it's useful you could put it there as well. Another
option is to make a generic package that contains both the
soem_robotiq_drivers and soem_beckhoff_drivers, to remove redundancies such
as the duplicated COE_config.h file, but then there's the danger of getting
a huge package where al drivers are mashed together if future drivers are
to be added.. Maybe there's another possibility where COE_config.h is moved
to a generic package that is accessible for all driver packages that need
it. Anyways, these are just suggestions and I don't know what would be best
in this case but that's up to you :) My next step would be to create ros
topics or services so that I can send commands to the gripper from ROS,
something which is not possibe yet I believe (or at least, I didn't find
out about that part yet). I will let you know if I get something new,
thanks again for your help!

Wilson

On Wed, 3 Jun 2015 at 18:17 Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> Alright thanks! Definitely helpful. I will give it a try and let you know
> :)
>
>
> On Wed, 3 Jun 2015 at 17:39 Ruben Smits <ruben [dot] smits [..] ...>
> wrote:
>
>> We've located some old code that could serve as a good starting point,
>> it's known to be working but is still using the old rosbuild, so I invite
>> you to update it to the newer catkin system and orocos macros ;)
>>
>> I've pushed it here: https://github.com/orocos/rtt_soem_robotiq
>>
>> R.
>>
>> On Wed, Jun 3, 2015 at 10:34 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>
>>> I see, then I will try to do that. Thanks for your help!
>>>
>>> On Wed, 3 Jun 2015 at 16:08 Ruben Smits <ruben [dot] smits [..] ...>
>>> wrote:
>>>
>>>> On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>>
>>>>> Hi Ruben,
>>>>>
>>>>> Thanks for your fast reply. I use ROS indigo and installed version 2.7
>>>>> of the orocos_toolchain from source (
>>>>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>>>>> documentation you provided, it helped me getting a bit further, thanks! As
>>>>> I suspected, an import was missing in the test.ops file which is the import
>>>>> from rtt_roscomm. Now the error is fixed, but now I get the following
>>>>> errors:
>>>>>
>>>>> 0.201 [ Warning][Master] Could not create driver for netX
>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
>>>>> looking for port 'Master.Slave_1002.bits'
>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
>>>>> looking for port 'Master.Slave_1003.bits'
>>>>> Switched to : Deployer
>>>>>
>>>>>
>>>> These services are automatically added when you configure the master,
>>>> it will go over the attached modules and check if it has a driver
>>>> registered for it, if so it will automatically create a service with the
>>>> name Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.
>>>>
>>>> We currently only provide drivers for some of the standard Beckhoff
>>>> modules, so if you want to use it to support a Robotiq hand you will need
>>>> to add a driver yourself for it. You can look into
>>>> https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
>>>> for examples on how to do that.
>>>>
>>>> R.
>>>>
>>>>
>>>>> I suspect that I need to add these services in the C++ code in
>>>>> soem_master, is that correct? Please correct me if I am wrong as I am new
>>>>> to Orocos. I'm not too sure about the warning though and what to do about
>>>>> it.
>>>>>
>>>>> Best,
>>>>> Wilson
>>>>>
>>>>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I followed the instructions posted here
>>>>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO
>>>>>>> to set up
>>>>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>>>>> instructions are still relevant and worked for me. I was able to
>>>>>>> install
>>>>>>> Orocos and establish a connection with a Robotiq gripper, but I was
>>>>>>> not able
>>>>>>> to create Ros topics, which should be done by the last two lines in
>>>>>>> test.ops
>>>>>>> provided in these notes:
>>>>>>>
>>>>>>> # This command remaps OROCOS topics to ROS topics
>>>>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>>>>
>>>>>>> The error I get from this is "Parse error at line 25: Service or Task
>>>>>>> "Deployer" has no Peer or Service ros (or Deployer was not found at
>>>>>>> all)"
>>>>>>> (line 25 is the first of the above two lines and the script works
>>>>>>> fine for
>>>>>>> the rest when I comment these lines out).
>>>>>>> I suspect that some imports and the parts relevant for integrating
>>>>>>> Orocos/Ros
>>>>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>>>>> stack?), but
>>>>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't
>>>>>>> know
>>>>>>> exactly how I should fix this.
>>>>>>>
>>>>>>> My question is, how do I remap Orocos topics to Ros topics for this
>>>>>>> particular case? I already downloaded the rtt_ros_integration stack
>>>>>>> which
>>>>>>> compiles fine. However, if I look in the source code of soem_master
>>>>>>> I don't
>>>>>>> see much usage of the rtt_ros_integration packages, which is what I
>>>>>>> believe
>>>>>>> needed to connect Orocos to Ros. Is something missing here to
>>>>>>> integrate
>>>>>>> Orocos with Ros? Also, I'm not sure whether the following could have
>>>>>>> caused
>>>>>>> some problems:
>>>>>>>
>>>>>>>
>>>>>> This should still be working, but, which versions of ROS and Orocos
>>>>>> are you using? Did you follow the documentation on
>>>>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>>>>> ?
>>>>>>
>>>>>> R.
>>>>>>
>>>>>>
>>>>>>> - Instead of using the link
>>>>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain
>>>>>>> to build
>>>>>>> orocos.
>>>>>>>
>>>>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I
>>>>>>> believe that it
>>>>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the
>>>>>>> code for
>>>>>>> Soem from here.
>>>>>>>
>>>>>>> For now I will try to find out more about Orocos and the
>>>>>>> rtt_ros_integration_stack to fix this, but the documentation I found
>>>>>>> so far
>>>>>>> is scarce. Also, if you know of alternatives for controlling a
>>>>>>> Robotiq
>>>>>>> Gripper through Ethercat in Ros I also consider that as a solution.
>>>>>>> I believe
>>>>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at
>>>>>>> the
>>>>>>> moment. Please let me know what you think, thanks in advance.
>>>>>>>
>>>>>>> Best,
>>>>>>> Wilson Ko
>>>>>>> --
>>>>>>> Orocos-Users mailing list
>>>>>>> Orocos-Users [..] ...
>>>>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Ruben Smits, Roboticist - Founder
>>>>>> +32 479 511 786
>>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>>> www.intermodalics.eu
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Ruben Smits, Roboticist - Founder
>>>> +32 479 511 786
>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>> www.intermodalics.eu
>>>>
>>>
>>
>>
>> --
>> Ruben Smits, Roboticist - Founder
>> +32 479 511 786
>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>> www.intermodalics.eu
>>
>

Ruben Smits's picture

Orocos/Ros Ethercat support

On Thu, Jun 4, 2015 at 5:17 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> Hi,
>
> I managed to make it compile with catkin and it works, thanks! I created a
> pull request so you can merge it if you think it's useful.
>

I took a pass on the pull request, looks good, but I had some small
comments. We might want to do a full review of the original code once in
the future ;)

>
> About the package name and location, I named it soem_robotiq_drivers for
> now as the code assumes that's the package name rather than
> rtt_soem_robotiq. Also, that name is more consistent with the
> soem_beckhoff_drivers package name. I put this package in the rtt_soem
> stack (next to the soem_beckhoff_driver package) as that location makes the
> most sense, so if you think it's useful you could put it there as well. Another
> option is to make a generic package that contains both the
> soem_robotiq_drivers and soem_beckhoff_drivers, to remove redundancies such
> as the duplicated COE_config.h file, but then there's the danger of getting
> a huge package where al drivers are mashed together if future drivers are
> to be added.. Maybe there's another possibility where COE_config.h is moved
> to a generic package that is accessible for all driver packages that need
> it. Anyways, these are just suggestions and I don't know what would be
> best in this case but that's up to you :)
>

There are indeed pro's and con's for each approach, I don't know myself
either what would be best. Regarding the COE_config.h you are right, if
more package have it/need it, it should be moved to something like the
soem_master package.

> My next step would be to create ros topics or services so that I can send
> commands to the gripper from ROS, something which is not possibe yet I
> believe (or at least, I didn't find out about that part yet). I will let
> you know if I get something new, thanks again for your help!
>

You could take a look at rtt_ros_integration on how you could create
services for the existing operations and topics for the existing ports:
https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm

R.

>
> Wilson
>
> On Wed, 3 Jun 2015 at 18:17 Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>
>> Alright thanks! Definitely helpful. I will give it a try and let you know
>> :)
>>
>>
>> On Wed, 3 Jun 2015 at 17:39 Ruben Smits <ruben [dot] smits [..] ...>
>> wrote:
>>
>>> We've located some old code that could serve as a good starting point,
>>> it's known to be working but is still using the old rosbuild, so I invite
>>> you to update it to the newer catkin system and orocos macros ;)
>>>
>>> I've pushed it here: https://github.com/orocos/rtt_soem_robotiq
>>>
>>> R.
>>>
>>> On Wed, Jun 3, 2015 at 10:34 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>
>>>> I see, then I will try to do that. Thanks for your help!
>>>>
>>>> On Wed, 3 Jun 2015 at 16:08 Ruben Smits <ruben [dot] smits [..] ...>
>>>> wrote:
>>>>
>>>>> On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...>
>>>>> wrote:
>>>>>
>>>>>> Hi Ruben,
>>>>>>
>>>>>> Thanks for your fast reply. I use ROS indigo and installed version
>>>>>> 2.7 of the orocos_toolchain from source (
>>>>>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>>>>>> documentation you provided, it helped me getting a bit further, thanks! As
>>>>>> I suspected, an import was missing in the test.ops file which is the import
>>>>>> from rtt_roscomm. Now the error is fixed, but now I get the following
>>>>>> errors:
>>>>>>
>>>>>> 0.201 [ Warning][Master] Could not create driver for netX
>>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002'
>>>>>> while looking for port 'Master.Slave_1002.bits'
>>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003'
>>>>>> while looking for port 'Master.Slave_1003.bits'
>>>>>> Switched to : Deployer
>>>>>>
>>>>>>
>>>>> These services are automatically added when you configure the master,
>>>>> it will go over the attached modules and check if it has a driver
>>>>> registered for it, if so it will automatically create a service with the
>>>>> name Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.
>>>>>
>>>>> We currently only provide drivers for some of the standard Beckhoff
>>>>> modules, so if you want to use it to support a Robotiq hand you will need
>>>>> to add a driver yourself for it. You can look into
>>>>> https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
>>>>> for examples on how to do that.
>>>>>
>>>>> R.
>>>>>
>>>>>
>>>>>> I suspect that I need to add these services in the C++ code in
>>>>>> soem_master, is that correct? Please correct me if I am wrong as I am new
>>>>>> to Orocos. I'm not too sure about the warning though and what to do about
>>>>>> it.
>>>>>>
>>>>>> Best,
>>>>>> Wilson
>>>>>>
>>>>>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
>>>>>> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I followed the instructions posted here
>>>>>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO
>>>>>>>> to set up
>>>>>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>>>>>> instructions are still relevant and worked for me. I was able to
>>>>>>>> install
>>>>>>>> Orocos and establish a connection with a Robotiq gripper, but I was
>>>>>>>> not able
>>>>>>>> to create Ros topics, which should be done by the last two lines in
>>>>>>>> test.ops
>>>>>>>> provided in these notes:
>>>>>>>>
>>>>>>>> # This command remaps OROCOS topics to ROS topics
>>>>>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>>>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>>>>>
>>>>>>>> The error I get from this is "Parse error at line 25: Service or
>>>>>>>> Task
>>>>>>>> "Deployer" has no Peer or Service ros (or Deployer was not found at
>>>>>>>> all)"
>>>>>>>> (line 25 is the first of the above two lines and the script works
>>>>>>>> fine for
>>>>>>>> the rest when I comment these lines out).
>>>>>>>> I suspect that some imports and the parts relevant for integrating
>>>>>>>> Orocos/Ros
>>>>>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>>>>>> stack?), but
>>>>>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't
>>>>>>>> know
>>>>>>>> exactly how I should fix this.
>>>>>>>>
>>>>>>>> My question is, how do I remap Orocos topics to Ros topics for this
>>>>>>>> particular case? I already downloaded the rtt_ros_integration stack
>>>>>>>> which
>>>>>>>> compiles fine. However, if I look in the source code of soem_master
>>>>>>>> I don't
>>>>>>>> see much usage of the rtt_ros_integration packages, which is what I
>>>>>>>> believe
>>>>>>>> needed to connect Orocos to Ros. Is something missing here to
>>>>>>>> integrate
>>>>>>>> Orocos with Ros? Also, I'm not sure whether the following could
>>>>>>>> have caused
>>>>>>>> some problems:
>>>>>>>>
>>>>>>>>
>>>>>>> This should still be working, but, which versions of ROS and Orocos
>>>>>>> are you using? Did you follow the documentation on
>>>>>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>>>>>> ?
>>>>>>>
>>>>>>> R.
>>>>>>>
>>>>>>>
>>>>>>>> - Instead of using the link
>>>>>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>>>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain
>>>>>>>> to build
>>>>>>>> orocos.
>>>>>>>>
>>>>>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I
>>>>>>>> believe that it
>>>>>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the
>>>>>>>> code for
>>>>>>>> Soem from here.
>>>>>>>>
>>>>>>>> For now I will try to find out more about Orocos and the
>>>>>>>> rtt_ros_integration_stack to fix this, but the documentation I
>>>>>>>> found so far
>>>>>>>> is scarce. Also, if you know of alternatives for controlling a
>>>>>>>> Robotiq
>>>>>>>> Gripper through Ethercat in Ros I also consider that as a solution.
>>>>>>>> I believe
>>>>>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at
>>>>>>>> the
>>>>>>>> moment. Please let me know what you think, thanks in advance.
>>>>>>>>
>>>>>>>> Best,
>>>>>>>> Wilson Ko
>>>>>>>> --
>>>>>>>> Orocos-Users mailing list
>>>>>>>> Orocos-Users [..] ...
>>>>>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Ruben Smits, Roboticist - Founder
>>>>>>> +32 479 511 786
>>>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>>>> www.intermodalics.eu
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ruben Smits, Roboticist - Founder
>>>>> +32 479 511 786
>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>> www.intermodalics.eu
>>>>>
>>>>
>>>
>>>
>>> --
>>> Ruben Smits, Roboticist - Founder
>>> +32 479 511 786
>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>> www.intermodalics.eu
>>>
>>

Orocos/Ros Ethercat support

Ah right, I applied your corrections, thanks for pointing out! About the
author, I don't know who the author is, so I just left that open. If you
don't mind, could you add that one yourself? You probably know who to give
credits to better than I do.

I just found another (very recent) package for ethercat control on
robotiq_grippers, so I'm thinking of giving that one a try as well. If I
end up using rtt_soem after all I will add the bindings between ports and
ros topics/services and update you again. Thanks again for your help!

Wilson

On Thu, 4 Jun 2015 at 15:12 Ruben Smits <ruben [dot] smits [..] ...>
wrote:

> On Thu, Jun 4, 2015 at 5:17 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>
>> Hi,
>>
>> I managed to make it compile with catkin and it works, thanks! I created
>> a pull request so you can merge it if you think it's useful.
>>
>
> I took a pass on the pull request, looks good, but I had some small
> comments. We might want to do a full review of the original code once in
> the future ;)
>
>
>>
>> About the package name and location, I named it soem_robotiq_drivers for
>> now as the code assumes that's the package name rather than
>> rtt_soem_robotiq. Also, that name is more consistent with the
>> soem_beckhoff_drivers package name. I put this package in the rtt_soem
>> stack (next to the soem_beckhoff_driver package) as that location makes the
>> most sense, so if you think it's useful you could put it there as well. Another
>> option is to make a generic package that contains both the
>> soem_robotiq_drivers and soem_beckhoff_drivers, to remove redundancies such
>> as the duplicated COE_config.h file, but then there's the danger of getting
>> a huge package where al drivers are mashed together if future drivers are
>> to be added.. Maybe there's another possibility where COE_config.h is moved
>> to a generic package that is accessible for all driver packages that need
>> it. Anyways, these are just suggestions and I don't know what would be
>> best in this case but that's up to you :)
>>
>
> There are indeed pro's and con's for each approach, I don't know myself
> either what would be best. Regarding the COE_config.h you are right, if
> more package have it/need it, it should be moved to something like the
> soem_master package.
>
>
>
>> My next step would be to create ros topics or services so that I can send
>> commands to the gripper from ROS, something which is not possibe yet I
>> believe (or at least, I didn't find out about that part yet). I will let
>> you know if I get something new, thanks again for your help!
>>
>
> You could take a look at rtt_ros_integration on how you could create
> services for the existing operations and topics for the existing ports:
> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>
> R.
>
>
>>
>> Wilson
>>
>> On Wed, 3 Jun 2015 at 18:17 Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>
>>> Alright thanks! Definitely helpful. I will give it a try and let you
>>> know :)
>>>
>>>
>>> On Wed, 3 Jun 2015 at 17:39 Ruben Smits <ruben [dot] smits [..] ...>
>>> wrote:
>>>
>>>> We've located some old code that could serve as a good starting point,
>>>> it's known to be working but is still using the old rosbuild, so I invite
>>>> you to update it to the newer catkin system and orocos macros ;)
>>>>
>>>> I've pushed it here: https://github.com/orocos/rtt_soem_robotiq
>>>>
>>>> R.
>>>>
>>>> On Wed, Jun 3, 2015 at 10:34 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...>
>>>> wrote:
>>>>
>>>>> I see, then I will try to do that. Thanks for your help!
>>>>>
>>>>> On Wed, 3 Jun 2015 at 16:08 Ruben Smits <ruben [dot] smits [..] ...>
>>>>> wrote:
>>>>>
>>>>>> On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...>
>>>>>> wrote:
>>>>>>
>>>>>>> Hi Ruben,
>>>>>>>
>>>>>>> Thanks for your fast reply. I use ROS indigo and installed version
>>>>>>> 2.7 of the orocos_toolchain from source (
>>>>>>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>>>>>>> documentation you provided, it helped me getting a bit further, thanks! As
>>>>>>> I suspected, an import was missing in the test.ops file which is the import
>>>>>>> from rtt_roscomm. Now the error is fixed, but now I get the following
>>>>>>> errors:
>>>>>>>
>>>>>>> 0.201 [ Warning][Master] Could not create driver for netX
>>>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002'
>>>>>>> while looking for port 'Master.Slave_1002.bits'
>>>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003'
>>>>>>> while looking for port 'Master.Slave_1003.bits'
>>>>>>> Switched to : Deployer
>>>>>>>
>>>>>>>
>>>>>> These services are automatically added when you configure the master,
>>>>>> it will go over the attached modules and check if it has a driver
>>>>>> registered for it, if so it will automatically create a service with the
>>>>>> name Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.
>>>>>>
>>>>>> We currently only provide drivers for some of the standard Beckhoff
>>>>>> modules, so if you want to use it to support a Robotiq hand you will need
>>>>>> to add a driver yourself for it. You can look into
>>>>>> https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
>>>>>> for examples on how to do that.
>>>>>>
>>>>>> R.
>>>>>>
>>>>>>
>>>>>>> I suspect that I need to add these services in the C++ code in
>>>>>>> soem_master, is that correct? Please correct me if I am wrong as I am new
>>>>>>> to Orocos. I'm not too sure about the warning though and what to do about
>>>>>>> it.
>>>>>>>
>>>>>>> Best,
>>>>>>> Wilson
>>>>>>>
>>>>>>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <
>>>>>>> ruben [dot] smits [..] ...> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> I followed the instructions posted here
>>>>>>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO
>>>>>>>>> to set up
>>>>>>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>>>>>>> instructions are still relevant and worked for me. I was able to
>>>>>>>>> install
>>>>>>>>> Orocos and establish a connection with a Robotiq gripper, but I
>>>>>>>>> was not able
>>>>>>>>> to create Ros topics, which should be done by the last two lines
>>>>>>>>> in test.ops
>>>>>>>>> provided in these notes:
>>>>>>>>>
>>>>>>>>> # This command remaps OROCOS topics to ROS topics
>>>>>>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>>>>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>>>>>>
>>>>>>>>> The error I get from this is "Parse error at line 25: Service or
>>>>>>>>> Task
>>>>>>>>> "Deployer" has no Peer or Service ros (or Deployer was not found
>>>>>>>>> at all)"
>>>>>>>>> (line 25 is the first of the above two lines and the script works
>>>>>>>>> fine for
>>>>>>>>> the rest when I comment these lines out).
>>>>>>>>> I suspect that some imports and the parts relevant for integrating
>>>>>>>>> Orocos/Ros
>>>>>>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>>>>>>> stack?), but
>>>>>>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't
>>>>>>>>> know
>>>>>>>>> exactly how I should fix this.
>>>>>>>>>
>>>>>>>>> My question is, how do I remap Orocos topics to Ros topics for this
>>>>>>>>> particular case? I already downloaded the rtt_ros_integration
>>>>>>>>> stack which
>>>>>>>>> compiles fine. However, if I look in the source code of
>>>>>>>>> soem_master I don't
>>>>>>>>> see much usage of the rtt_ros_integration packages, which is what
>>>>>>>>> I believe
>>>>>>>>> needed to connect Orocos to Ros. Is something missing here to
>>>>>>>>> integrate
>>>>>>>>> Orocos with Ros? Also, I'm not sure whether the following could
>>>>>>>>> have caused
>>>>>>>>> some problems:
>>>>>>>>>
>>>>>>>>>
>>>>>>>> This should still be working, but, which versions of ROS and Orocos
>>>>>>>> are you using? Did you follow the documentation on
>>>>>>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>>>>>>> ?
>>>>>>>>
>>>>>>>> R.
>>>>>>>>
>>>>>>>>
>>>>>>>>> - Instead of using the link
>>>>>>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>>>>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain
>>>>>>>>> to build
>>>>>>>>> orocos.
>>>>>>>>>
>>>>>>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I
>>>>>>>>> believe that it
>>>>>>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the
>>>>>>>>> code for
>>>>>>>>> Soem from here.
>>>>>>>>>
>>>>>>>>> For now I will try to find out more about Orocos and the
>>>>>>>>> rtt_ros_integration_stack to fix this, but the documentation I
>>>>>>>>> found so far
>>>>>>>>> is scarce. Also, if you know of alternatives for controlling a
>>>>>>>>> Robotiq
>>>>>>>>> Gripper through Ethercat in Ros I also consider that as a
>>>>>>>>> solution. I believe
>>>>>>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at
>>>>>>>>> the
>>>>>>>>> moment. Please let me know what you think, thanks in advance.
>>>>>>>>>
>>>>>>>>> Best,
>>>>>>>>> Wilson Ko
>>>>>>>>> --
>>>>>>>>> Orocos-Users mailing list
>>>>>>>>> Orocos-Users [..] ...
>>>>>>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Ruben Smits, Roboticist - Founder
>>>>>>>> +32 479 511 786
>>>>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>>>>> www.intermodalics.eu
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Ruben Smits, Roboticist - Founder
>>>>>> +32 479 511 786
>>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>>> www.intermodalics.eu
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Ruben Smits, Roboticist - Founder
>>>> +32 479 511 786
>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>> www.intermodalics.eu
>>>>
>>>
>
>
> --
> Ruben Smits, Roboticist - Founder
> +32 479 511 786
> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
> www.intermodalics.eu
>

Ruben Smits's picture

Orocos/Ros Ethercat support

AFAIR Bert Willaert is the author and he is stated in the license comments
on the top of most of the code.

R.

On Thu, Jun 4, 2015 at 9:39 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> Ah right, I applied your corrections, thanks for pointing out! About the
> author, I don't know who the author is, so I just left that open. If you
> don't mind, could you add that one yourself? You probably know who to give
> credits to better than I do.
>
> I just found another (very recent) package for ethercat control on
> robotiq_grippers, so I'm thinking of giving that one a try as well. If I
> end up using rtt_soem after all I will add the bindings between ports and
> ros topics/services and update you again. Thanks again for your help!
>
> Wilson
>
> On Thu, 4 Jun 2015 at 15:12 Ruben Smits <ruben [dot] smits [..] ...>
> wrote:
>
>> On Thu, Jun 4, 2015 at 5:17 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>
>>> Hi,
>>>
>>> I managed to make it compile with catkin and it works, thanks! I created
>>> a pull request so you can merge it if you think it's useful.
>>>
>>
>> I took a pass on the pull request, looks good, but I had some small
>> comments. We might want to do a full review of the original code once in
>> the future ;)
>>
>>
>>>
>>> About the package name and location, I named it soem_robotiq_drivers for
>>> now as the code assumes that's the package name rather than
>>> rtt_soem_robotiq. Also, that name is more consistent with the
>>> soem_beckhoff_drivers package name. I put this package in the rtt_soem
>>> stack (next to the soem_beckhoff_driver package) as that location makes the
>>> most sense, so if you think it's useful you could put it there as well. Another
>>> option is to make a generic package that contains both the
>>> soem_robotiq_drivers and soem_beckhoff_drivers, to remove redundancies such
>>> as the duplicated COE_config.h file, but then there's the danger of getting
>>> a huge package where al drivers are mashed together if future drivers are
>>> to be added.. Maybe there's another possibility where COE_config.h is moved
>>> to a generic package that is accessible for all driver packages that need
>>> it. Anyways, these are just suggestions and I don't know what would be
>>> best in this case but that's up to you :)
>>>
>>
>> There are indeed pro's and con's for each approach, I don't know myself
>> either what would be best. Regarding the COE_config.h you are right, if
>> more package have it/need it, it should be moved to something like the
>> soem_master package.
>>
>>
>>
>>> My next step would be to create ros topics or services so that I can
>>> send commands to the gripper from ROS, something which is not possibe yet I
>>> believe (or at least, I didn't find out about that part yet). I will let
>>> you know if I get something new, thanks again for your help!
>>>
>>
>> You could take a look at rtt_ros_integration on how you could create
>> services for the existing operations and topics for the existing ports:
>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>
>> R.
>>
>>
>>>
>>> Wilson
>>>
>>> On Wed, 3 Jun 2015 at 18:17 Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>
>>>> Alright thanks! Definitely helpful. I will give it a try and let you
>>>> know :)
>>>>
>>>>
>>>> On Wed, 3 Jun 2015 at 17:39 Ruben Smits <ruben [dot] smits [..] ...>
>>>> wrote:
>>>>
>>>>> We've located some old code that could serve as a good starting point,
>>>>> it's known to be working but is still using the old rosbuild, so I invite
>>>>> you to update it to the newer catkin system and orocos macros ;)
>>>>>
>>>>> I've pushed it here: https://github.com/orocos/rtt_soem_robotiq
>>>>>
>>>>> R.
>>>>>
>>>>> On Wed, Jun 3, 2015 at 10:34 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...>
>>>>> wrote:
>>>>>
>>>>>> I see, then I will try to do that. Thanks for your help!
>>>>>>
>>>>>> On Wed, 3 Jun 2015 at 16:08 Ruben Smits <ruben [dot] smits [..] ...>
>>>>>> wrote:
>>>>>>
>>>>>>> On Wed, Jun 3, 2015 at 9:11 AM, Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hi Ruben,
>>>>>>>>
>>>>>>>> Thanks for your fast reply. I use ROS indigo and installed version
>>>>>>>> 2.7 of the orocos_toolchain from source (
>>>>>>>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>>>>>>>> documentation you provided, it helped me getting a bit further, thanks! As
>>>>>>>> I suspected, an import was missing in the test.ops file which is the import
>>>>>>>> from rtt_roscomm. Now the error is fixed, but now I get the following
>>>>>>>> errors:
>>>>>>>>
>>>>>>>> 0.201 [ Warning][Master] Could not create driver for netX
>>>>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002'
>>>>>>>> while looking for port 'Master.Slave_1002.bits'
>>>>>>>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003'
>>>>>>>> while looking for port 'Master.Slave_1003.bits'
>>>>>>>> Switched to : Deployer
>>>>>>>>
>>>>>>>>
>>>>>>> These services are automatically added when you configure the
>>>>>>> master, it will go over the attached modules and check if it has a driver
>>>>>>> registered for it, if so it will automatically create a service with the
>>>>>>> name Slave_xxxx, with xxxx the EtherCAT slave nr for your setup.
>>>>>>>
>>>>>>> We currently only provide drivers for some of the standard Beckhoff
>>>>>>> modules, so if you want to use it to support a Robotiq hand you will need
>>>>>>> to add a driver yourself for it. You can look into
>>>>>>> https://github.com/orocos/rtt_soem/tree/master/soem_beckhoff_drivers/src
>>>>>>> for examples on how to do that.
>>>>>>>
>>>>>>> R.
>>>>>>>
>>>>>>>
>>>>>>>> I suspect that I need to add these services in the C++ code in
>>>>>>>> soem_master, is that correct? Please correct me if I am wrong as I am new
>>>>>>>> to Orocos. I'm not too sure about the warning though and what to do about
>>>>>>>> it.
>>>>>>>>
>>>>>>>> Best,
>>>>>>>> Wilson
>>>>>>>>
>>>>>>>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <
>>>>>>>> ruben [dot] smits [..] ...> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> I followed the instructions posted here
>>>>>>>>>>
>>>>>>>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO
>>>>>>>>>> to set up
>>>>>>>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>>>>>>>> instructions are still relevant and worked for me. I was able to
>>>>>>>>>> install
>>>>>>>>>> Orocos and establish a connection with a Robotiq gripper, but I
>>>>>>>>>> was not able
>>>>>>>>>> to create Ros topics, which should be done by the last two lines
>>>>>>>>>> in test.ops
>>>>>>>>>> provided in these notes:
>>>>>>>>>>
>>>>>>>>>> # This command remaps OROCOS topics to ROS topics
>>>>>>>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>>>>>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>>>>>>>
>>>>>>>>>> The error I get from this is "Parse error at line 25: Service or
>>>>>>>>>> Task
>>>>>>>>>> "Deployer" has no Peer or Service ros (or Deployer was not found
>>>>>>>>>> at all)"
>>>>>>>>>> (line 25 is the first of the above two lines and the script works
>>>>>>>>>> fine for
>>>>>>>>>> the rest when I comment these lines out).
>>>>>>>>>> I suspect that some imports and the parts relevant for
>>>>>>>>>> integrating Orocos/Ros
>>>>>>>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>>>>>>>> stack?), but
>>>>>>>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't
>>>>>>>>>> know
>>>>>>>>>> exactly how I should fix this.
>>>>>>>>>>
>>>>>>>>>> My question is, how do I remap Orocos topics to Ros topics for
>>>>>>>>>> this
>>>>>>>>>> particular case? I already downloaded the rtt_ros_integration
>>>>>>>>>> stack which
>>>>>>>>>> compiles fine. However, if I look in the source code of
>>>>>>>>>> soem_master I don't
>>>>>>>>>> see much usage of the rtt_ros_integration packages, which is what
>>>>>>>>>> I believe
>>>>>>>>>> needed to connect Orocos to Ros. Is something missing here to
>>>>>>>>>> integrate
>>>>>>>>>> Orocos with Ros? Also, I'm not sure whether the following could
>>>>>>>>>> have caused
>>>>>>>>>> some problems:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> This should still be working, but, which versions of ROS and
>>>>>>>>> Orocos are you using? Did you follow the documentation on
>>>>>>>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>>>>>>>> ?
>>>>>>>>>
>>>>>>>>> R.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> - Instead of using the link
>>>>>>>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>>>>>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain
>>>>>>>>>> to build
>>>>>>>>>> orocos.
>>>>>>>>>>
>>>>>>>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I
>>>>>>>>>> believe that it
>>>>>>>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the
>>>>>>>>>> code for
>>>>>>>>>> Soem from here.
>>>>>>>>>>
>>>>>>>>>> For now I will try to find out more about Orocos and the
>>>>>>>>>> rtt_ros_integration_stack to fix this, but the documentation I
>>>>>>>>>> found so far
>>>>>>>>>> is scarce. Also, if you know of alternatives for controlling a
>>>>>>>>>> Robotiq
>>>>>>>>>> Gripper through Ethercat in Ros I also consider that as a
>>>>>>>>>> solution. I believe
>>>>>>>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions
>>>>>>>>>> at the
>>>>>>>>>> moment. Please let me know what you think, thanks in advance.
>>>>>>>>>>
>>>>>>>>>> Best,
>>>>>>>>>> Wilson Ko
>>>>>>>>>> --
>>>>>>>>>> Orocos-Users mailing list
>>>>>>>>>> Orocos-Users [..] ...
>>>>>>>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Ruben Smits, Roboticist - Founder
>>>>>>>>> +32 479 511 786
>>>>>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>>>>>> www.intermodalics.eu
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Ruben Smits, Roboticist - Founder
>>>>>>> +32 479 511 786
>>>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>>>> www.intermodalics.eu
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ruben Smits, Roboticist - Founder
>>>>> +32 479 511 786
>>>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>>>> www.intermodalics.eu
>>>>>
>>>>
>>
>>
>> --
>> Ruben Smits, Roboticist - Founder
>> +32 479 511 786
>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>> www.intermodalics.eu
>>
>

Orocos/Ros Ethercat support

On Wed, 3 Jun 2015 at 15:11 Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> Hi Ruben,
>
> Thanks for your fast reply. I use ROS indigo and installed version 2.7 of
> the orocos_toolchain from source (http://wiki.ros.org/orocos_toolchain_ros).
> I was not aware of the documentation you provided, it helped me getting a
> bit further, thanks! As I suspected, an import was missing in the test.ops
> file which is the import from rtt_roscomm. Now the error is fixed, but now
> I get the following errors:
>
> 0.201 [ Warning][Master] Could not create driver for netX
> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
> looking for port 'Master.Slave_1002.bits'
> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
> looking for port 'Master.Slave_1003.bits'
> Switched to : Deployer
>
> I suspect that I need to add these services in the C++ code in
> soem_master, is that correct? Please correct me if I am wrong as I am new
> to Orocos. I'm not too sure about the warning though and what to do about
> it.
>
> Best,
> Wilson
>
> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
> wrote:
>
>>
>>
>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>
>>> Hi,
>>>
>>> I followed the instructions posted here
>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO to
>>> set up
>>> an Ethercat connection. Some links seem to be a outdated, but most
>>> instructions are still relevant and worked for me. I was able to install
>>> Orocos and establish a connection with a Robotiq gripper, but I was not
>>> able
>>> to create Ros topics, which should be done by the last two lines in
>>> test.ops
>>> provided in these notes:
>>>
>>> # This command remaps OROCOS topics to ROS topics
>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>
>>> The error I get from this is "Parse error at line 25: Service or Task
>>> "Deployer" has no Peer or Service ros (or Deployer was not found at all)"
>>> (line 25 is the first of the above two lines and the script works fine
>>> for
>>> the rest when I comment these lines out).
>>> I suspect that some imports and the parts relevant for integrating
>>> Orocos/Ros
>>> are missing (perhaps a package from the from rtt_ros_integration
>>> stack?), but
>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
>>> exactly how I should fix this.
>>>
>>> My question is, how do I remap Orocos topics to Ros topics for this
>>> particular case? I already downloaded the rtt_ros_integration stack which
>>> compiles fine. However, if I look in the source code of soem_master I
>>> don't
>>> see much usage of the rtt_ros_integration packages, which is what I
>>> believe
>>> needed to connect Orocos to Ros. Is something missing here to integrate
>>> Orocos with Ros? Also, I'm not sure whether the following could have
>>> caused
>>> some problems:
>>>
>>>
>> This should still be working, but, which versions of ROS and Orocos are
>> you using? Did you follow the documentation on
>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>> ?
>>
>> R.
>>
>>
>>> - Instead of using the link http://www.ros.org/wiki/orocos_toolchain_ros,
>>> I
>>> followed the instructions at http://wiki.ros.org/orocos_toolchain to
>>> build
>>> orocos.
>>>
>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I believe
>>> that it
>>> moved to here: https://github.com/orocos/rtt_soem. I got all the code
>>> for
>>> Soem from here.
>>>
>>> For now I will try to find out more about Orocos and the
>>> rtt_ros_integration_stack to fix this, but the documentation I found so
>>> far
>>> is scarce. Also, if you know of alternatives for controlling a Robotiq
>>> Gripper through Ethercat in Ros I also consider that as a solution. I
>>> believe
>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
>>> moment. Please let me know what you think, thanks in advance.
>>>
>>> Best,
>>> Wilson Ko
>>> --
>>> Orocos-Users mailing list
>>> Orocos-Users [..] ...
>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>
>>
>>
>>
>> --
>> Ruben Smits, Roboticist - Founder
>> +32 479 511 786
>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>> www.intermodalics.eu
>>
>
By the way this is how my ops file looks like at the moment, could it be
that I am just missing some more imports?

Orocos/Ros Ethercat support

On Wed, 3 Jun 2015 at 15:15 Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:

> On Wed, 3 Jun 2015 at 15:11 Wilson Ko <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>
>> Hi Ruben,
>>
>> Thanks for your fast reply. I use ROS indigo and installed version 2.7 of
>> the orocos_toolchain from source (
>> http://wiki.ros.org/orocos_toolchain_ros). I was not aware of the
>> documentation you provided, it helped me getting a bit further, thanks! As
>> I suspected, an import was missing in the test.ops file which is the import
>> from rtt_roscomm. Now the error is fixed, but now I get the following
>> errors:
>>
>> 0.201 [ Warning][Master] Could not create driver for netX
>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1002' while
>> looking for port 'Master.Slave_1002.bits'
>> 0.240 [ ERROR ][ScriptingService] No such service: 'Slave_1003' while
>> looking for port 'Master.Slave_1003.bits'
>> Switched to : Deployer
>>
>> I suspect that I need to add these services in the C++ code in
>> soem_master, is that correct? Please correct me if I am wrong as I am new
>> to Orocos. I'm not too sure about the warning though and what to do about
>> it.
>>
>> Best,
>> Wilson
>>
>> On Wed, 3 Jun 2015 at 14:53 Ruben Smits <ruben [dot] smits [..] ...>
>> wrote:
>>
>>>
>>>
>>> On Wed, Jun 3, 2015 at 8:39 AM, <w [dot] k [dot] h [dot] ko91 [..] ...> wrote:
>>>
>>>> Hi,
>>>>
>>>> I followed the instructions posted here
>>>> http://wiki.ros.org/Industrial/Tutorials/Simple_EtherCAT_Network_IO to
>>>> set up
>>>> an Ethercat connection. Some links seem to be a outdated, but most
>>>> instructions are still relevant and worked for me. I was able to install
>>>> Orocos and establish a connection with a Robotiq gripper, but I was not
>>>> able
>>>> to create Ros topics, which should be done by the last two lines in
>>>> test.ops
>>>> provided in these notes:
>>>>
>>>> # This command remaps OROCOS topics to ROS topics
>>>> stream("Master.Slave_1002.bits", ros.topic("DI"))
>>>> stream("Master.Slave_1003.bits", ros.topic("DO"))
>>>>
>>>> The error I get from this is "Parse error at line 25: Service or Task
>>>> "Deployer" has no Peer or Service ros (or Deployer was not found at
>>>> all)"
>>>> (line 25 is the first of the above two lines and the script works fine
>>>> for
>>>> the rest when I comment these lines out).
>>>> I suspect that some imports and the parts relevant for integrating
>>>> Orocos/Ros
>>>> are missing (perhaps a package from the from rtt_ros_integration
>>>> stack?), but
>>>> as I am new to Orocos and thus the connection Orocos/Ros, I don't know
>>>> exactly how I should fix this.
>>>>
>>>> My question is, how do I remap Orocos topics to Ros topics for this
>>>> particular case? I already downloaded the rtt_ros_integration stack
>>>> which
>>>> compiles fine. However, if I look in the source code of soem_master I
>>>> don't
>>>> see much usage of the rtt_ros_integration packages, which is what I
>>>> believe
>>>> needed to connect Orocos to Ros. Is something missing here to integrate
>>>> Orocos with Ros? Also, I'm not sure whether the following could have
>>>> caused
>>>> some problems:
>>>>
>>>>
>>> This should still be working, but, which versions of ROS and Orocos are
>>> you using? Did you follow the documentation on
>>> https://github.com/orocos/rtt_ros_integration/tree/indigo-devel/rtt_roscomm
>>> ?
>>>
>>> R.
>>>
>>>
>>>> - Instead of using the link
>>>> http://www.ros.org/wiki/orocos_toolchain_ros, I
>>>> followed the instructions at http://wiki.ros.org/orocos_toolchain to
>>>> build
>>>> orocos.
>>>>
>>>> - http://git.mech.kuleuven.be/robotics/soem.git is offline, I believe
>>>> that it
>>>> moved to here: https://github.com/orocos/rtt_soem. I got all the code
>>>> for
>>>> Soem from here.
>>>>
>>>> For now I will try to find out more about Orocos and the
>>>> rtt_ros_integration_stack to fix this, but the documentation I found so
>>>> far
>>>> is scarce. Also, if you know of alternatives for controlling a Robotiq
>>>> Gripper through Ethercat in Ros I also consider that as a solution. I
>>>> believe
>>>> that Ros-I only supports the TCP/Modbus and RTU/Modbus versions at the
>>>> moment. Please let me know what you think, thanks in advance.
>>>>
>>>> Best,
>>>> Wilson Ko
>>>> --
>>>> Orocos-Users mailing list
>>>> Orocos-Users [..] ...
>>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>>>
>>>
>>>
>>>
>>> --
>>> Ruben Smits, Roboticist - Founder
>>> +32 479 511 786
>>> Intermodalics - Kapeldreef 60, 3001 Heverlee - BELGIUM
>>> www.intermodalics.eu
>>>
>>
> By the way this is how my ops file looks like at the moment, could it be
that I am just missing some more imports?