Encoder Card with Orocos

Hello.

I am doing a project with Orocos, and I need an analog output card and a encoder card. The analog output works successfully integrated into Orocos, using the class "ComediDevice" (and the card PCI-1720 by Advantech) but I can't integrate the encoder card.

I've looked at the list of "Supported Hardware" (http://www.comedi.org/hardware) and any two encoder cards appear in the list. The cards I have are:

-PCI-1784 (Advantech) -PCI-QUAD4 (Measurement Computing)

Is there any way to use these cards with Orocos?

What encoder card can be used with Orocos?

Help!

Thanks.

Jose

Encoder Card with Orocos

On Tue, 15 Feb 2011, jocamo5 [..] ... wrote:

> Hello.
>
> I am doing a project with Orocos, and I need an analog output card and a encoder card. The analog output works successfully integrated into Orocos, using the class "ComediDevice" (and the card PCI-1720 by Advantech) but I can't integrate the encoder card.
>
> I've looked at the list of "Supported Hardware" (http://www.comedi.org/hardware) and any two encoder cards appear in the list. The cards I have are:
>
> -PCI-1784 (Advantech)
> -PCI-QUAD4 (Measurement Computing)
>
> Is there any way to use these cards with Orocos?
>
> What encoder card can be used with Orocos?
>
> Help!

Orocos is not about interfacing hardware, and we should keep it that way.
Other projects (such as Comedi) focus on the hardware interfacing, and
that's a perfect match: let each project do its own thing, and do it well;
and make sure the different projects are interoperable. But it is our
policy not to start our own library of hardware drivers; that would lead to
unmaintainable pieces of code. We have defined some generic "HAL
interfaces", but we do not want to focus on providing drivers. There are
exceptions, such as Comedi, Can and EtherCat, but that's because these are
such large scale projects, where one single Orocos effort provides access
to thousands of devices.

If you have already a driver for your encoder, just wrap it in the generic
"EncoderInterface" API
<http://people.mech.kuleuven.be/~orocos/pub/stable/documentation/rtt/v2.x/api/html/classRTT_1_1dev_1_1EncoderInterface.html>,
or contribute it to Comedi as a new encoder driver.

Herman

Encoder Card with Orocos

Fine, but then, how I can make a real time controller for robots without a encoder driver (not supported by Comedi) in your software? Would I have to implement the interface "EncoderInterface" to use?

Encoder Card with Orocos

On Wed, 16 Feb 2011, jocamo5 [..] ... wrote:

> Fine, but then, how I can make a real time controller for robots without a encoder driver (not supported by Comedi) in your software? Would I have to implement the interface "EncoderInterface" to use?

Indeed, as I mentioned in my first answer.

The best long-term solution for the community would be that you write a
driver for Comedi, since the Comedi-Orocos integration exists already.

Herman

Encoder Card with Orocos

On Feb 15, 2011, at 13:55 , Herman Bruyninckx wrote:

> On Tue, 15 Feb 2011, jocamo5 [..] ... wrote:
>
>> Hello.
>>
>> I am doing a project with Orocos, and I need an analog output card and a encoder card. The analog output works successfully integrated into Orocos, using the class "ComediDevice" (and the card PCI-1720 by Advantech) but I can't integrate the encoder card.
>>
>> I've looked at the list of "Supported Hardware" (http://www.comedi.org/hardware) and any two encoder cards appear in the list. The cards I have are:
>>
>> -PCI-1784 (Advantech)
>> -PCI-QUAD4 (Measurement Computing)
>>
>> Is there any way to use these cards with Orocos?

We have used the Comedi support in Orocos along with IIRC the AnalogIn/Out classes, to read devices using Comedi-supported DAQ cards. It was a little bit of work, but not too bad.

>> What encoder card can be used with Orocos?
>>
>> Help!
>
> Orocos is not about interfacing hardware, and we should keep it that way.
> Other projects (such as Comedi) focus on the hardware interfacing, and
> that's a perfect match: let each project do its own thing, and do it well;
> and make sure the different projects are interoperable. But it is our
> policy not to start our own library of hardware drivers; that would lead to
> unmaintainable pieces of code. We have defined some generic "HAL
> interfaces", but we do not want to focus on providing drivers. There are
> exceptions, such as Comedi, Can and EtherCat, but that's because these are
> such large scale projects, where one single Orocos effort provides access
> to thousands of devices.
>
> If you have already a driver for your encoder, just wrap it in the generic
> "EncoderInterface" API
> <http://people.mech.kuleuven.be/~orocos/pub/stable/documentation/rtt/v2.x/api/html/classRTT_1_1dev_1_1EncoderInterface.html>,
> or contribute it to Comedi as a new encoder driver.

One of the benefits of Orocos is that there _are_ existing integrations with CORBA and Comedi (amongst others). Such integrations demonstrate maturity and usefulness of a product, and prevent users reinventing the same thing again and again. These should be part of the Orocos _ecosystem_ (as should reference integrations with GUI toolkits). These are critical items needed when using Orocos within a system.

We can certainly discuss/argue whether such things go in RTT or in some other part of Orocos, but I am definitely against removing them.
S

Encoder Card with Orocos

On Wed, 16 Feb 2011, S Roderick wrote:

> On Feb 15, 2011, at 13:55 , Herman Bruyninckx wrote:
>
>> On Tue, 15 Feb 2011, jocamo5 [..] ... wrote:
>>
>>> Hello.
>>>
>>> I am doing a project with Orocos, and I need an analog output card and a encoder card. The analog output works successfully integrated into Orocos, using the class "ComediDevice" (and the card PCI-1720 by Advantech) but I can't integrate the encoder card.
>>>
>>> I've looked at the list of "Supported Hardware" (http://www.comedi.org/hardware) and any two encoder cards appear in the list. The cards I have are:
>>>
>>> -PCI-1784 (Advantech)
>>> -PCI-QUAD4 (Measurement Computing)
>>>
>>> Is there any way to use these cards with Orocos?
>
> We have used the Comedi support in Orocos along with IIRC the AnalogIn/Out classes, to read devices using Comedi-supported DAQ cards. It was a little bit of work, but not too bad.
>
>>> What encoder card can be used with Orocos?
>>>
>>> Help!
>>
>> Orocos is not about interfacing hardware, and we should keep it that way.
>> Other projects (such as Comedi) focus on the hardware interfacing, and
>> that's a perfect match: let each project do its own thing, and do it well;
>> and make sure the different projects are interoperable. But it is our
>> policy not to start our own library of hardware drivers; that would lead to
>> unmaintainable pieces of code. We have defined some generic "HAL
>> interfaces", but we do not want to focus on providing drivers. There are
>> exceptions, such as Comedi, Can and EtherCat, but that's because these are
>> such large scale projects, where one single Orocos effort provides access
>> to thousands of devices.
>>
>> If you have already a driver for your encoder, just wrap it in the generic
>> "EncoderInterface" API
>> <http://people.mech.kuleuven.be/~orocos/pub/stable/documentation/rtt/v2.x/api/html/classRTT_1_1dev_1_1EncoderInterface.html>,
>> or contribute it to Comedi as a new encoder driver.
>
> One of the benefits of Orocos is that there _are_ existing integrations with CORBA and Comedi (amongst others). Such integrations demonstrate maturity and usefulness of a product, and prevent users reinventing the same thing again and again. These should be part of the Orocos _ecosystem_ (as should reference integrations with GUI toolkits). These are critical items needed when using Orocos within a system.
>
> We can certainly discuss/argue whether such things go in RTT or in some other part of Orocos, but I am definitely against removing them.

Who suggested to _remove_ these CORBA and Comedi bridges...? :-) I
definitely not. For the same reasons as you mention: being interoperable
with other large and healthy eco-systems is a plus, and new contributions
should preferably being done in one of the ecosystems, and not in a ad hoc
way in one of them.

> S

Herman

Encoder card with orocos

[...]
>>> I am doing a project with Orocos, and I need an analog output card and a encoder card. The analog output works successfully integrated into Orocos, using the class "ComediDevice" (and the card PCI-1720 by Advantech) but I can't integrate the encoder card.
>>>
>>> I've looked at the list of "Supported Hardware" (http://www.comedi.org/hardware) and any two encoder cards appear in the list. The cards I have are:
>>>
>>> -PCI-1784 (Advantech)
>>> -PCI-QUAD4 (Measurement Computing)

The NI660x series are also encoder cards, which have been (partially)
tested using orocos.

See <http://people.mech.kuleuven.be/~orocos/pub/stable/documentation/ocl/v1.10.x/api/html/classOCL_1_1ComediEncoder.html>

Klaas