Difference between revisions of "RobotCub"

From Wiki for iCub and Friends
Jump to: navigation, search
(Devices)
(Windows)
 
(100 intermediate revisions by 10 users not shown)
Line 1: Line 1:
 
[[Image:Photo7.jpg|right|128px]]
 
[[Image:Photo7.jpg|right|128px]]
  
Information about the iCub robot. The iCub robot uses YARP.
+
=.svn iCub hardware repository=
  
== Setting up ==
+
To access the documentation there are two options:
Here are setup instructions for working with iCub:
+
* download all files using a Subversion client (see below)
* [[Calling yarp from Matlab]]
+
* navigate the repository using a web browsers. Just click [https://svn.robotology.eu/repos/iCubHardware-pub/trunk/mechanics/ here].
* The Yarp home page: [http://yarp0.sf.net Yarp here!]
 
* [[Getting Started]] and [[Getting YARPed]] and [[Getting RobotCub]]
 
  
== 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]]
 
* [[On the Clusters]]: tips and tricks for setting the cluster
 
  
== 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]
 
  
[[Image:controller_dc.jpg|right|178px]]
+
* add: to add files and directories to the repository
[[Image:controller_bll.jpg|right|178px]]
+
* 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
  
== Wiring up the robot ==
+
{| style="color:green;background-color:#ffffcc;" cellpadding="20" cellspacing="0" border="1"
Here are details of the electronics and wiring of the robot (ongoing work). Certain documents are unfortunately in Italian. They'll be translated in English as soon as possible.
+
|'''Important - '''Before committing any data to the repository (both Software or Hardware), make sure you setup properly the [[Subversion client flags | subversion client flags]].
* DC control boards
+
|}
** Technical manual: [[Media:DC4.doc | MSWord document]]
+
* Brushless control boards
 
** Technical manual: [[Media:BLL.doc | MSWord document]]
 
** More details, recommendations: [[Media:BLL.pdf | Pdf document]]
 
* JTag, serial adapter cards
 
** Jtag: [[Media:jtag.pdf | pdf file]]
 
** Serial: [[Media:serial.pdf | pdf file]]
 
** Schematics of the MC4 power board: [[Media:mc4power.pdf | pdf file]]
 
** Schematics of the MC4 controller board: [[Media:mc4controller.pdf | pdf file]]
 
* MPH, ADC and CAN bus card
 
** Technical manual: [[Media:MPH.doc | MSWord document]]
 
** Multiplexer data sheet: [[Media:multiplex.pdf | pdf file]]
 
* Gerber, here you find the pdf files obtained from the Gerber as reference
 
** Brushless: [[Media:bll_gerber.pdf | pdf file]]
 
* External capacitors
 
** Brushless: Panasonic part number ECOS1JP222B: [[Media:bl_cap.pdf | data sheet]]
 
** Brushed
 
* Connectors
 
** Molex: See [[Media:molex.pdf | data sheet]]
 
* Head wiring: See [[Media:Cablaggio_Testa_I-CUB.doc | doc file]]
 
* Absolute Encoder Adapter (AEA) [[Media:AEA_V1_0_datasheet.doc | doc file]]
 
  
== Release controller docs ==
+
== How to download the documentation ==
* Brushless: [[Media:bll.zip | zip file]]
 
* DC: [[Media:dc4.zip | zip file]]
 
  
== Wiki help ==
+
Before you download:
  
Consult the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User's Guide] for information on using the wiki software.
+
* 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 12: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.