Robot Eksperimentarium

From ImageWiki

(Difference between revisions)
Jump to: navigation, search
(OpenCV)
(Tips and Tricks:)
 
(38 intermediate revisions not shown)
Line 1: Line 1:
-
These pages comprises the WIKI for the course Robot Eksperimentarium. The knowledge described here are of generel use for students following this course.
+
These pages comprises the WIKI for the course Robot Experimentarium. The knowledge described here are of generel use for students following this course.
Link to old course specific [[Robot_Eksperimentarium_2008|2008]] home page.
Link to old course specific [[Robot_Eksperimentarium_2008|2008]] home page.
-
= Tips and Tricks: Share your hard earned knowledge =
+
= Tips and Tricks: =
-
* [[Robot Eksperimentarium: Tips_Network_Problems|Tips & Tricks : Network Problems on Robot Laptops]]
+
* [[Robot Eksperimentarium: Tips_Network_Problems|Tips & Tricks : Network Problems on Scorpion Robot Laptops]]
* [[Robot Eksperimentarium: Tips_Compilation_Problems|Tips & Tricks : Compilation Problems]]<br>
* [[Robot Eksperimentarium: Tips_Compilation_Problems|Tips & Tricks : Compilation Problems]]<br>
-
* [[Robot Eksperimentarium: Tips_Player_Installation|Tips & Tricks : Installation of Player / Stage]]<br>
+
* [[Robot Eksperimentarium: Tips_Player_Installation|Tips & Tricks : Installation of Player / Stage on your own machine]]<br>
 +
* [[Robot Eksperimentarium: Tips_ERSP_Player_Driver_Compilation|Tips & Tricks : Compilation of the ERSP-Player driver]]<br>
* [[Robot Eksperimentarium: Tips_ERSP_Player|Tips & Tricks : ERSP and Player mini-FAQ]]<br>
* [[Robot Eksperimentarium: Tips_ERSP_Player|Tips & Tricks : ERSP and Player mini-FAQ]]<br>
-
* [[Robot Eksperimentarium: Tips_Exercise_2|Tips & Tricks : Exercise 2]]<br>
+
* [[Robot Eksperimentarium: Tips_Exercise_2|Tips & Tricks : OLD Exercise 2]]<br>
-
* [[Robot Eksperimentarium: Tips_Exercise_3|Tips & Tricks : Exercise 3]]<br>
+
* [[Robot Eksperimentarium: Tips_Exercise_3|Tips & Tricks : OLD Exercise 3]]<br>
-
* [[Robot Eksperimentarium: Tips_Exercise_4_&_5|Tips & Tricks : Exercise 4 & 5]]
+
* [[Robot Eksperimentarium: Tips_Exercise_4_&_5|Tips & Tricks : OLD Exercise 4 & 5]]
* [[Robot Eksperimentarium: Tips_Exercise_FCL|Tips & Tricks : Visualizing FCL files]]
* [[Robot Eksperimentarium: Tips_Exercise_FCL|Tips & Tricks : Visualizing FCL files]]
-
 
= The Robots =
= The Robots =
-
This year we'll be using the [[The Scorpion robots|Evolution Scorpion Robots]]. For controlling the robot hardware we'll be using [[ERSP]] or [http://playerstage.sourceforge.net/ Player / Stage], and for image processesing we'll be using [[OpenCV]]. If you want to use Player you have to use our newly developed Player / Stage driver. The documentation can be found [[ERSP_Player_Driver_Documentation|here]] and notes on further development maybe found [[ERSP_Player_Driver|here]].
+
This year we'll be using the [[The Scorpion robots|Evolution Scorpion Robots]]. For controlling the robot hardware we'll be using [[ERSP]] and [http://playerstage.sourceforge.net/ Player / Stage], and for image processesing we'll be using [[OpenCV]]. When using Player you have to use our in-house developed Player / Stage driver. The documentation can be found [[ERSP_Player_Driver_Documentation|here]] and notes on further development may be found [[ERSP_Player_Driver|here]].
-
To use the robot you'll need access to a computer with [[ERSP]] installed. We have 6 such laptops that you need to share. Laptops will be handed out to groups and the group members will have to figure out how to share. We will most likely be using the rule 6 people for 1 laptop or two groups of 3 persons each.
+
To use the robot you will need access to a computer with Player and [[ERSP]] installed. We have 6 such laptops that you need to share. Laptops will be handed out to groups and the group members will have to figure out how to share.  
-
 
+
-
If you're having any problems with the laptops for the robots, please contact [[User:Kimstp|Kim Steenstrup Pedersen]]. You can also report you problems at the bottom of [[Firstrun|this page]] (please write your name and the date of report on the page as well).
+
 +
If you're having any problems with the laptops for the robots, please contact [[User:Kimstp|Kim Steenstrup Pedersen]]. You can also report you problems at our Absalon page in the discussion forum.
= Tutorials =
= Tutorials =
-
== The SVN Repository ==
+
== Player Server Running in VMware ==
-
There is a subversion repository for the course. Since you can't be garantied to work on the same laptop twice it is recommended to use the SVN repository to keep track of your code.
+
-
To use the repository you need an account on ''image.diku.dk'', which can be acquired by contacting [[User:Kimstp|Kim Steenstrup Pedersen]].
+
=== Connecting to Player Server Running in VMware from the Same Machine ===
 +
For the Lenovo laptops you have to run the Player server inside a VMware virtual machine. Assuming the guest OS (the virtual machine running the Player server) has IP address 192.168.240.129 then you can connect a Player client program running on the host OS by using the following initialization code in your program
 +
  using namespace PlayerCc;
 +
  PlayerClient robot("192.168.240.129");
 +
Alternatively, you can make an SSH tunnel from the host OS to the guest OS, similarly to that explain in the next section.
-
To work with the code, the first time only you must make a local copy on your local account via the checkout command:
+
=== Connecting to Player Server Running in VMware from another Machine ===
-
  <code>svn checkout svn+ssh://yourLogin@image.diku.dk/home/robot/svn/trunk/ Robot-GROUP_NUMBER/</code>
+
If you wish to connect to this Player server from a different computer, you can create a SSH tunnel and connect your Player client to it. Specifically, assume the host OS of the machine running VMware has IP address 192.168.15.43, and the guest OS on the same machine has IP address 192.168.240.129. On the machine where your client runs, perform the following:
-
Where ''GROUP_NUMBER'' is the number of your group. You might need to enter your password several times.
+
  ssh -L 6665:192.168.240.129:6665 192.168.15.43 -l diku -N
-
Please note that you need external access, so from the DIKU UNIX system, you need to work on tyr, ask, etc..
+
and provide the well-known password for the 'diku' user. Then you will be able to connect your Player client to localhost port 6665. Remember to start the Player server inside the guest OS.
-
This should create a local directory called ''Robot-GROUP_NUMBER/'' on your local account containing the trunk of the repository. Later revisions can be obtained by,
+
== ERSP ==
-
<code>cd Robot-GROUP_NUMBER/</code>
+
The robotics platform used at the core of our robots is called ERSP (Evolution Robotics Software Platform). You can find a short tutorial on how the platform works [[ERSP|here]].
-
<code>svn update</code>
+
-
Your group code should go into
+
== Player/Stage ==
-
<code>Robot-GROUP_NUMBER/Robot-GROUP_NUMBER/</code>
+
The robotics platform actually used for the Scorpion robots on this course is called Player/Stage. We are due to compatibility issues forced to use Player version 2.0.4 and 2.0.5 on the laptops, and if you want to install Player on your own machine we recommend you install on of these versions. We also recommend that you install Stage version 2.0.3 instead of the latest version. Documentation for Player/Stage can be found [http://playerstage.sourceforge.net/ here] and documentation of the DIKU ERSP Player driver can be found [[ERSP_Player_Driver_Documentation|here]].
-
To write to the repository simply use
+
You find some tips and tricks for installation of Player on your own machines in [[Robot Eksperimentarium: Tips_Player_Installation|Tips & Tricks : Installation of Player / Stage on your own machine]].
-
<code>svn commit -m "My short description of what I did for the record"</code>
+
-
The work recommended workprocess is:
+
Furthermore, you find some tips and tricks on compilation of the ERSP-player driver in [[Robot Eksperimentarium: Tips_ERSP_Player_Driver_Compilation|Tips & Tricks : Compilation of the ERSP-Player driver]].
-
Before you start the days work do:
+
-
  <code>cd Robot-GROUP_NUMBER/</code>
+
-
  <code>svn update</code>
+
-
Make your editing and once in a while and definitely when your are done do:
+
-
  <code>svn update</code>
+
-
  <code>svn commit -m "My short description of what I did for the record"</code>
+
-
If you want to add a new file, say <code>myfile</code>, you have to do the following after creating and editing <code>myfile</code>
+
== OpenCV ==
-
  <code>svn add myfile</code>
+
For image processesing we use the [http://sourceforge.net/projects/opencvlibrary/ OpenCV library] by [http://opencv.org OpenCV.org].  The main website [http://opencv.org OpenCV.org] is the place to find help and it includes online reference manuals. You might also find additional information on the [http://answers.opencv.org/questions/ OpenCV answers page]. We also have a short [[OpenCV|tutorial on OpenCV]].
-
If you want to copy example and utility code already in the repository into your group directory, the easiest way to also get it into
+
On the Scorpion laptops we have the old version 1.0.0 installed.
-
svn is by the following:
+
-
  <code>svn copy src dst</code>
+
-
where <code>src</code> is the the source files or directory, and <code>dst</code> is the destination, probably <code>Robot-1/</code> (if you are in group 1).
+
-
If you need access to your files, but don't have a SVN client installed, you can use the web frontend at [http://image.diku.dk/svn/robot/ http://image.diku.dk/svn/robot/].
+
== The Scorpion Robot Camera ==
-
 
+
The Scorpion robots use a Logitech Quickcam Pro 3000 webcam to acquire images. The internal parameters of this camera can be changed since it uses the [[Philips webcam|''pwc'' driver]].
-
More information on subversion may be found on [http://svnbook.red-bean.com/ http://svnbook.red-bean.com/] and [http://subversion.tigris.org http://subversion.tigris.org].
+
-
 
+
-
== ERSP ==
+
-
The robotics platform used on the course is called ERSP (Evolution Robotics Software Platform, I think). You can find a short tutorial on how the platform works [[ERSP|here]].
+
-
 
+
-
== Player/Stage ==
+
-
Documentation for Player/Stage can be found [http://playerstage.sourceforge.net/ here] and documentation of the DIKU ERSP Player driver can be found [[ERSP_Player_Driver_Documentation|here]].
+
-
 
+
-
== OpenCV ==
+
-
For image processesing we use the [http://sourceforge.net/projects/opencvlibrary/ OpenCV library] (currently version 1.0.0). The [http://opencvlibrary.sourceforge.net/ OpenCV wiki] is the place to find help and it includes online reference manuals. We also have a short Danish [[OpenCV|tutorial on OpenCV]].
+
-
 
+
-
== The Robot Camera ==
+
-
The robots use a Logitech Quickcam Pro 3000 webcam to acquire images. The internal parameters of this camera can be changed since it uses the [[Philips webcam|''pwc'' driver]].
+
The camera has been calibrated to compensate for the Barrel distortion. See [[Kalibrering af Scorpion robotternes kamera]] (in Danish).
The camera has been calibrated to compensate for the Barrel distortion. See [[Kalibrering af Scorpion robotternes kamera]] (in Danish).
Line 82: Line 60:
== Object tracking ==
== Object tracking ==
If you need to track an objects position in an image sequence, you can use the [[Two Stage Hybrid Tracker]].
If you need to track an objects position in an image sequence, you can use the [[Two Stage Hybrid Tracker]].
 +
 +
== The SVN Repository (Not used this year) ==
 +
[[Robot Eksperimentarium: SVN| The SVN Repository (Not used this year)]]

Latest revision as of 19:07, 25 August 2015

These pages comprises the WIKI for the course Robot Experimentarium. The knowledge described here are of generel use for students following this course.

Link to old course specific 2008 home page.


Contents

Tips and Tricks:

The Robots

This year we'll be using the Evolution Scorpion Robots. For controlling the robot hardware we'll be using ERSP and Player / Stage, and for image processesing we'll be using OpenCV. When using Player you have to use our in-house developed Player / Stage driver. The documentation can be found here and notes on further development may be found here.

To use the robot you will need access to a computer with Player and ERSP installed. We have 6 such laptops that you need to share. Laptops will be handed out to groups and the group members will have to figure out how to share.

If you're having any problems with the laptops for the robots, please contact Kim Steenstrup Pedersen. You can also report you problems at our Absalon page in the discussion forum.

Tutorials

Player Server Running in VMware

Connecting to Player Server Running in VMware from the Same Machine

For the Lenovo laptops you have to run the Player server inside a VMware virtual machine. Assuming the guest OS (the virtual machine running the Player server) has IP address 192.168.240.129 then you can connect a Player client program running on the host OS by using the following initialization code in your program

 using namespace PlayerCc;
 PlayerClient robot("192.168.240.129");

Alternatively, you can make an SSH tunnel from the host OS to the guest OS, similarly to that explain in the next section.

Connecting to Player Server Running in VMware from another Machine

If you wish to connect to this Player server from a different computer, you can create a SSH tunnel and connect your Player client to it. Specifically, assume the host OS of the machine running VMware has IP address 192.168.15.43, and the guest OS on the same machine has IP address 192.168.240.129. On the machine where your client runs, perform the following:

ssh -L 6665:192.168.240.129:6665 192.168.15.43 -l diku -N

and provide the well-known password for the 'diku' user. Then you will be able to connect your Player client to localhost port 6665. Remember to start the Player server inside the guest OS.

ERSP

The robotics platform used at the core of our robots is called ERSP (Evolution Robotics Software Platform). You can find a short tutorial on how the platform works here.

Player/Stage

The robotics platform actually used for the Scorpion robots on this course is called Player/Stage. We are due to compatibility issues forced to use Player version 2.0.4 and 2.0.5 on the laptops, and if you want to install Player on your own machine we recommend you install on of these versions. We also recommend that you install Stage version 2.0.3 instead of the latest version. Documentation for Player/Stage can be found here and documentation of the DIKU ERSP Player driver can be found here.

You find some tips and tricks for installation of Player on your own machines in Tips & Tricks : Installation of Player / Stage on your own machine.

Furthermore, you find some tips and tricks on compilation of the ERSP-player driver in Tips & Tricks : Compilation of the ERSP-Player driver.

OpenCV

For image processesing we use the OpenCV library by OpenCV.org. The main website OpenCV.org is the place to find help and it includes online reference manuals. You might also find additional information on the OpenCV answers page. We also have a short tutorial on OpenCV.

On the Scorpion laptops we have the old version 1.0.0 installed.

The Scorpion Robot Camera

The Scorpion robots use a Logitech Quickcam Pro 3000 webcam to acquire images. The internal parameters of this camera can be changed since it uses the pwc driver.

The camera has been calibrated to compensate for the Barrel distortion. See Kalibrering af Scorpion robotternes kamera (in Danish).

Object tracking

If you need to track an objects position in an image sequence, you can use the Two Stage Hybrid Tracker.

The SVN Repository (Not used this year)

The SVN Repository (Not used this year)

Personal tools