Difference between revisions of "RobotCub"

From Wiki for iCub and Friends
Jump to: navigation, search
(Devices)
(Windows)
 
(132 intermediate revisions by 12 users not shown)
Line 1: Line 1:
Information about the iCub robot.  The iCub robot uses YARP.
+
[[Image:Photo7.jpg|right|128px]]
  
== Setting up ==
+
=.svn iCub hardware repository=
  
* Task 0: [[Getting Started]] and [[Getting YARPed]] and [[Getting RobotCub]]
+
To access the documentation there are two options:
 +
* download all files using a Subversion client (see below)
 +
* navigate the repository using a web browsers. Just click [https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/ here].
  
== Devices ==
+
Browsing the repository with a browser is not convenient; users are suggested to adopt the first method.
  
* [[Motor control]] Documentation and classes and a [[Media:motorcontrol.pdf | short tutorial]].
+
The repository is open for anonymous reading. To obtain writing permits e-mail the project administrator ([mailto:giorgio.metta@iit.it giorgio.metta@iit.it]).
* [[Inertial Sensor]]
 
* [http://people.csail.mit.edu/paulfitz/vvv/html/note_devices.html YARP Devices]
 
* [[New ports on iCub]].  [[Output your target]] in this format.
 
* [[Images from the Robot]] and how to do something with them [[image_sink example]]
 
  
== Class documentation ==
+
== .svn 101 ==
* Image class: [http://yarp0.sourceforge.net/specs/dox/user/html/classyarp_1_1sig_1_1ImageOf.html ImageOf] [http://yarp0.sourceforge.net/specs/dox/user/html/namespaceyarp_1_1sig_1_1draw.html very basic drawing] [http://yarp0.sourceforge.net/specs/dox/user/html/namespaceyarp_1_1sig_1_1file.html very basic image file read/write]
+
The basic commands available to .svn for manipulating the repository are:
* Class documentation: [http://yarp0.sourceforge.net/specs/dox/user/html/classyarp_1_1os_1_1Port.html Port]  [http://yarp0.sourceforge.net/specs/dox/user/html/classyarp_1_1os_1_1Bottle.html Bottle] [http://yarp0.sourceforge.net/specs/dox/user/html/classyarp_1_1os_1_1Thread.html Thread] [http://yarp0.sourceforge.net/specs/dox/user/html/classyarp_1_1os_1_1Thread.html Semaphore] [http://yarp0.sourceforge.net/specs/dox/user/html/classyarp_1_1os_1_1BufferedPort.html BufferedPort]
 
* [http://yarp0.sourceforge.net/specs/dox/user/html/yarp.html The "yarp" command documentation]
 
* [[Integrating external libraries]] -- gives tips for OpenCV integration
 
* [[Adding your project to iCub]]
 
* [[Notes on CVS: RobotCub repository]]
 
* [[cvs/wincvs tricks]], how to get new directories
 
* There are many examples in your YARP source directory, subdirectory example/os
 
* [http://yarp0.sourceforge.net YARP home page]
 
* Notes shown on Monday: [http://people.csail.mit.edu/paulfitz/vvv/html/ YARP Ports]
 
* Common [[CMake problems]]
 
* [http://yarp0.sourceforge.net/specs/dox/user/html/yarp_code_example_pair.html simple sender and receiver example code] from Monday
 
  
== Wiki help ==
+
* add: to add files and directories to the repository
 +
* update: to get an up-to-date version of the code from the repository
 +
* checkout: to get the first-time copy (or a new one) of the repository
 +
* commit: to upload changes to any file into the repository
  
Consult the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User's Guide] for information on using the wiki software.
+
{| style="color:green;background-color:#ffffcc;" cellpadding="20" cellspacing="0" border="1"
 +
|'''Important - '''Before committing any data to the repository (both Software or Hardware), make sure you setup properly the [[Subversion client flags | subversion client flags]].
 +
|}
 +
 +
 
 +
== How to download the documentation ==
 +
 
 +
Before you download:
 +
 
 +
* you need a Subversion (svn) client and perhaps a Sourceforge account. Follow instructions  [[Getting_Subversion | here]].
 +
 
 +
=== Linux ===
 +
 
 +
Assuming you have an svn client, type at the console:
 +
 
 +
  svn co  https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/
 +
 
 +
this will create in the local directory a new directory containing the iCub project mechanics documentation.
 +
 
 +
=== Windows ===
 +
 
 +
These instructions assume you have the [http://tortoisesvn.net/ tortoise SVN client]. It is trivial to adapt these instructions to other clients.
 +
 
 +
* Use file manager to browse to the location where you would like to download the documentation
 +
* Right click on an empty region of the window
 +
* Select "SVN checkout" from the contextual menu.
 +
 
 +
Type (or copy/paste) the following string in the entry "URL of repository":
 +
 
 +
    https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/
 +
 
 +
this will create in the local directory a new directory containing the iCub project mechanics documentation.
 +
 
 +
== Repository structure ==
 +
Accessing the iCubHardware repository with the TortoiseSVN client the directory structure is as follows:
 +
 
 +
* [[Image:Image00.png]]mechanics
 +
** [[Image:Image00.png]]output_dir
 +
** [[Image:Image00.png]]public
 +
*** [[Image:Image00.png]]commercial
 +
*** [[Image:Image00.png]]config
 +
*** [[Image:Image00.png]]doc
 +
*** [[Image:Image00.png]]eltr
 +
*** [[Image:Image00.png]]gadgets
 +
*** [[Image:Image00.png]]icub1_icub2
 +
*** [[Image:Image00.png]]ikart
 +
*** [[Image:Image00.png]]release
 +
*** [[Image:Image00.png]]scrapyard
 +
*** [[Image:Image20.png]]config.pro
 +
*** [[Image:Image20.png]]config.win.1
 +
*** [[Image:Image20.png]]creo_parametric_customization.ui
 +
** [[Image:Image00.png]]trail
 +
 
 +
The config.pro file has been configured for the Creo Parametric assemblies to regenerate correctly with this directory structure.
 +
Users are warmly suggested to maintain the current directory structure to avoid potential file conflicts and regeneration issues.
 +
 
 +
=== Where are the documentation files ===
 +
The iCub main assembly is '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/icub1_icub2/icub.asm.1 ./mechanics/public/icub1_icub2/icub.asm.1]'''.
 +
 
 +
The iCub2 main assembly is '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/icub1_icub2/icub2.asm.1 ./mechanics/public/icub1_icub2/icub2.asm.1]'''.
 +
 
 +
All the iCub and iCub2 production documentation (.dxf drawings and .stp and .stl 3D files) is stored in a subfolder of the main iCub and iCub2 folder.
 +
Its location is '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/icub1_icub2/prodoc ./mechanics/public/icub1_icub2/prodoc]'''
 +
 
 +
The iKart main assembly is '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/ikart/rc_tlr_013_a_001_ikart.asm.1 ./mechanics/public/ikart/rc_tlr_013_a_001_ikart.asm.1]'''.
 +
The folder “.mechanics/prodoc” contains the robots’ production documents.
 +
 
 +
All the iKart production documentation (.dxf drawings and .stp and .stl 3D files) is stored in a subfolder of the main iKart folder.
 +
Its location is '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/ikart/prodoc ./mechanics/public/ikart/prodoc]'''
 +
 
 +
=== If I develop where should I put my files? ===
 +
All custom part, assembly, and drawing files of iCub and iCub2 shall be stored in the '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/icub1_icub2 ./mechanics/public/icub1_icub2]''' folder.
 +
 
 +
All commercial parts shall be stored in the '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/commercial ./mechanics/public/commercial]''' folder.
 +
 
 +
All 3D models of electronic boards, components, etc. parts shall be stored in the '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/eltr ./mechanics/public/eltr]''' folder.
 +
 
 +
The folder '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/gadgets ./mechanics/public/gadgets]''' contains the documentation and CAD files of tools, and ancillary equipment for the operation, and maintenance of the robot.
 +
 
 +
=== What are the other folders for? ===
 +
The folder '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/config ./mechanics/public/config]''' contains the PTC Creo Parametric custom configuration files.
 +
 
 +
The folder '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/doc ./mechanics/public/doc]''' contains relevant iCub project documentation files.
 +
 
 +
The folder '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/public/scrapyard ./mechanics/public/scrapyard]''' contains old and obsolete iCub project files.
 +
 
 +
The folder '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/output_dir ./mechanics/output_dir]''' is used as a temporary storage folder for the scripts that automatically generate the project documentation.
 +
 
 +
The folder '''[https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/trail ./mechanics/trail]''' is used to store the trail files automatically generated by Creo Parametric.

Latest revision as of 11:29, 30 July 2014

Photo7.jpg

.svn iCub hardware repository

To access the documentation there are two options:

  • download all files using a Subversion client (see below)
  • navigate the repository using a web browsers. Just click here.

Browsing the repository with a browser is not convenient; users are suggested to adopt the first method.

The repository is open for anonymous reading. To obtain writing permits e-mail the project administrator (giorgio.metta@iit.it).

.svn 101

The basic commands available to .svn for manipulating the repository are:

  • add: to add files and directories to the repository
  • update: to get an up-to-date version of the code from the repository
  • checkout: to get the first-time copy (or a new one) of the repository
  • commit: to upload changes to any file into the repository
Important - Before committing any data to the repository (both Software or Hardware), make sure you setup properly the subversion client flags.


How to download the documentation

Before you download:

  • you need a Subversion (svn) client and perhaps a Sourceforge account. Follow instructions here.

Linux

Assuming you have an svn client, type at the console:

  svn co  https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/ 

this will create in the local directory a new directory containing the iCub project mechanics documentation.

Windows

These instructions assume you have the tortoise SVN client. It is trivial to adapt these instructions to other clients.

  • Use file manager to browse to the location where you would like to download the documentation
  • Right click on an empty region of the window
  • Select "SVN checkout" from the contextual menu.

Type (or copy/paste) the following string in the entry "URL of repository":

   https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/ 

this will create in the local directory a new directory containing the iCub project mechanics documentation.

Repository structure

Accessing the iCubHardware repository with the TortoiseSVN client the directory structure is as follows:

  • Image00.pngmechanics
    • Image00.pngoutput_dir
    • Image00.pngpublic
      • Image00.pngcommercial
      • Image00.pngconfig
      • Image00.pngdoc
      • Image00.pngeltr
      • Image00.pnggadgets
      • Image00.pngicub1_icub2
      • Image00.pngikart
      • Image00.pngrelease
      • Image00.pngscrapyard
      • Image20.pngconfig.pro
      • Image20.pngconfig.win.1
      • Image20.pngcreo_parametric_customization.ui
    • Image00.pngtrail

The config.pro file has been configured for the Creo Parametric assemblies to regenerate correctly with this directory structure. Users are warmly suggested to maintain the current directory structure to avoid potential file conflicts and regeneration issues.

Where are the documentation files

The iCub main assembly is ./mechanics/public/icub1_icub2/icub.asm.1.

The iCub2 main assembly is ./mechanics/public/icub1_icub2/icub2.asm.1.

All the iCub and iCub2 production documentation (.dxf drawings and .stp and .stl 3D files) is stored in a subfolder of the main iCub and iCub2 folder. Its location is ./mechanics/public/icub1_icub2/prodoc

The iKart main assembly is ./mechanics/public/ikart/rc_tlr_013_a_001_ikart.asm.1. The folder “.mechanics/prodoc” contains the robots’ production documents.

All the iKart production documentation (.dxf drawings and .stp and .stl 3D files) is stored in a subfolder of the main iKart folder. Its location is ./mechanics/public/ikart/prodoc

If I develop where should I put my files?

All custom part, assembly, and drawing files of iCub and iCub2 shall be stored in the ./mechanics/public/icub1_icub2 folder.

All commercial parts shall be stored in the ./mechanics/public/commercial folder.

All 3D models of electronic boards, components, etc. parts shall be stored in the ./mechanics/public/eltr folder.

The folder ./mechanics/public/gadgets contains the documentation and CAD files of tools, and ancillary equipment for the operation, and maintenance of the robot.

What are the other folders for?

The folder ./mechanics/public/config contains the PTC Creo Parametric custom configuration files.

The folder ./mechanics/public/doc contains relevant iCub project documentation files.

The folder ./mechanics/public/scrapyard contains old and obsolete iCub project files.

The folder ./mechanics/output_dir is used as a temporary storage folder for the scripts that automatically generate the project documentation.

The folder ./mechanics/trail is used to store the trail files automatically generated by Creo Parametric.