Multiple Cyton Veta manipulators

21 views
Skip to first unread message

Gert Kanter

unread,
Feb 9, 2012, 4:00:39 AM2/9/12
to Cyton Robots
Hello everyone,

Our PeopleBot platform has been modified to allow two identical Cyton
Veta
manipulators to be installed on the sides of the platform and I can
start
controlling both arms, but I haven't been successful in initializing
both
manipulators.
Using the HardwareInterface function availablePorts() shows me that I
have
two ports available: "A800d10a" and "A800d10z". availablePorts()
works
after using init() because using it before says controller is NULL
and
returns 0 ports, which means it already initialized one port/
manipulator
before even letting me realize that I have two ports available. I
have
tried to do shutdown(), followed by setPort("A800d10z") and init()
again,
but this didn't work - it re-initialized the same port and moving the
arm
moved the same arm as before (tried using setPort("A800d10a") as
well,
which didn't change anything either). Do I have to change the
configuration file (.xml) somehow? (I saw there was something like
<ftdi_port>any</ftdi_port>) or what am I missing here?

Thank you in advance!


best regards,
Gert Kanter

lenti...@energid.com

unread,
Feb 9, 2012, 5:15:49 AM2/9/12
to cyton-...@googlegroups.com
Hi Gert Kanter

In Cytonconfig.xml file <ftdi_port>any</ftdi_port> is used to specify
the ftdi device port of cyton ."any" means ,it can take any port as per
the availabilty .If you work with two cyton simultaneously ,you can try
the following method

1)Make a copy of cytonCOnfig.xml say cytonConfig1.xml and cytonConfig2.xml .

2)Change <ftdi_port>any</ftdi_port> of cytonConfig1.xml as one port
number and cytonConfig2.xml as next port number .
3)Load 2 xml files and cyton plugin as follows

1)For cytonConfig1.xml


const EcString pluginName = prefixName + "Plugin.ecp";
const EcString pluginConfig = prefixName + "Config1.xml";

cyton::hardwareInterface hardware1(pluginName, pluginConfig);

2)
const EcString pluginName = prefixName + "Plugin.ecp";
const EcString pluginConfig = prefixName + "Config2.xml";

cyton::hardwareInterface hardware2(pluginName, pluginConfig);

3)Try to send values to each cyton .

Actually there is another model of cyton called Bi-arm cyton .It has 2
cyton veta in a single piece and controlling through single ftdi device .

This method is an alternative for making bi-arm cyton with 2 separate
cyton veta .

Hope you understand this logic ,Let me know if u have any problems


Regards
Lentin

Reply all
Reply to author
Forward
0 new messages