Page 1 of 1
Connecting Aseba to Argos
Posted: Wed Oct 09, 2013 11:08 pm
by fairread
Hi Carlo,
I'm interested to connect Aseba to Argos for the purpose of monitoring the sensor reading and not for behaviour programming purpose. I found a document written by you and other 2 authors which provides a tutorial to connect both softwares at
http://iridia.ulb.ac.be/~cpinciroli/ext ... manual.pdf. It is however for Aseba and Argos2. Thus could you suggest how to do so achieve the first step to launch Argos3. In the tutorial, for Argos2 the code is as below
Code: Select all
user@user:~$ launch_argos -nc your_file.xml
. Thanks.
Re: Connecting Aseba to Argos
Posted: Thu Oct 10, 2013 3:03 pm
by pincy
Hi Farid,
I can give you the code I made to interface ARGoS2 and Aseba, and you could adapt it for ARGoS3. It is actually pretty simple. If that suits you, I will give you the source code.
Cheers,
Carlo
Re: Connecting Aseba to Argos
Posted: Thu Oct 10, 2013 3:38 pm
by fairread
Thanks Carlo, I'm glad to welcome your codes! May I know what it is?
Re: Connecting Aseba to Argos
Posted: Thu Oct 10, 2013 3:42 pm
by pincy
Hi Farid,
here is the source code I was talking about. There is a script called 'make_distribution.sh' at the base directory of the archive that does the work of fetching the necessary dependencies and compile everything.
Let me know how it goes.
Cheers,
Carlo
Re: Connecting Aseba to Argos
Posted: Thu Oct 10, 2013 3:52 pm
by fairread
Carlo, I tried to run the script using bash command, but I got this message afterwards:
Code: Select all
Usage: make_distribution.sh [slack|debian|plain]
If I use sh command, the error is
Code: Select all
make_distribution.sh: 9: make_distribution.sh: Syntax error: "(" unexpected
[slack|debian|plain]
Any thought?
Re: Connecting Aseba to Argos
Posted: Thu Oct 10, 2013 4:09 pm
by pincy
Try and read the script, to see what it does
In short, the script fetches all the dependencies, compiles the code, and creates an archive for public distribution.
The command line parameter that the output expects selects whether you want to create a slackware package, a debian package, or a tar.bz2 package. You must add it.
The code in the argos2/ directory contains the controller that embeds Aseba and the loop functions that realize the connection with Aseba studio.
This is the code you need to modify to get it working with ARGoS3.
Cheers,
Carlo
Re: Connecting Aseba to Argos
Posted: Thu Oct 10, 2013 5:03 pm
by fairread
Hi Carlo,
I managed to install dashel and aseba, but then when I tried to build Argos+Epuck code, I got this error:
Code: Select all
Building ARGoS+EPuck code... A fatal error occurred. Check the log file /home/mfma/Downloads/argos2-h414-extras/argos2-h414-extras.log.
in which I checked the log it contains:
Code: Select all
CMake Error at CMakeLists.txt:5 (find_package):
By not providing "FindARGoS.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "ARGoS", but
CMake did not find one.
Could not find a package configuration file provided by "ARGoS" with any of
the following names:
ARGoSConfig.cmake
argos-config.cmake
Add the installation prefix of "ARGoS" to CMAKE_PREFIX_PATH or set
"ARGoS_DIR" to a directory containing one of the above files. If "ARGoS"
provides a separate development package or SDK, be sure it has been
installed.
Hope you can help me again. Thanks.
Re: Connecting Aseba to Argos
Posted: Thu Oct 10, 2013 5:13 pm
by pincy
You need to install argos2 from the packages provided on the website.
Re: Connecting Aseba to Argos
Posted: Fri Oct 11, 2013 10:58 pm
by fairread
Hi Carlo, after doing
, I got a few errors which I managed to troubleshoot, but now I'm stuck with this fpic error as below
Code: Select all
/usr/bin/ld: /usr/local/lib/libasebavm.a(vm.c.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libasebavm.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [libepuck_aseba_loop_functions.so] Error 1
make[1]: *** [CMakeFiles/epuck_aseba_loop_functions.dir/all] Error 2
make: *** [all] Error 2
Hope you can guide me again. Thanks.
Re: Connecting Aseba to Argos
Posted: Sat Oct 12, 2013 12:05 am
by pincy
Hi Farid,
Most likely you are compiling the code on a 64 bit system.
You need to add the switch -fPIC to be able to compile libraries on 64 bit systems.
Cheers,
Carlo