Skip to content

Commit

Permalink
marble tree demo documented
Browse files Browse the repository at this point in the history
  • Loading branch information
prjemian committed May 17, 2015
1 parent 2df0f86 commit 8bd403c
Show file tree
Hide file tree
Showing 5 changed files with 148 additions and 1 deletion.
9 changes: 9 additions & 0 deletions docs/source/clients/cssboy.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,12 @@
==============
CSS BOY client
==============

.. figure:: ../graphics/boy-control.png
:width: 12cm

CSS BOY control screen

Basic controls of the robot axes and LED are provided
by buttons on the CSS BOY screen. Each action will happen
as long as the button is held down.
128 changes: 127 additions & 1 deletion docs/source/examples/marble-tree.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,130 @@
Get the ball rolling: The Marble Tree
=====================================

.. photo essay
The robot arm can lift small objects and move them
under visual control. Using a joystick and some
practice, the control can become intuitive.

A great example of the robot would be to place a ball
in a maze, pick it up at the end and repeat. With that
in mind, a marble tree (wooden musical instrument and
coffee table amusement) is ideal. The marble tree shown
in the pictures was purchased in Berea, KY.

Example
-------

This system uses the robot arm, a Raspberry Pi to run the IOC,
and a joystick that runs in the IOC. No GUI is necessary.
It is useful to place the robot on a plinth so that it
can reach top of the marble tree, as well as pick up
the marble from the bin at the bottom.

.. figure:: ../graphics/20150513_164853.jpg
:width: 12cm

System for marble tree example

Controls
++++++++

.. figure:: ../graphics/joystick-controls.png
:width: 12cm

This is the joystick we will use.
It is right-handed and has a twist action (vertical axis).
We'll use that for the base rotation.


======== ================================================================
button action
======== ================================================================
trigger close grip
thumb open grip
twist rotate base in same direction
lever turns on/off base rotation (useful when trying to grasp objects)
joystick shoulder axis: forward=down, back=up
elbow two buttons, forward and back
wrist knob, forward=down, back=up
======== ================================================================

The joystick buttons are described in file:
``edgeRoboArmIOC/support/usb-1-0/usbApp/Db/LogitechExtreme3DPro.in``
The actions are mapped to buttons in file:
``edgeRoboArmIOC/support/xxx-5-6/xxxApp/Db/roboArm.db``

Pulse the LED button to ensure the IOC is operating.

Step 1
++++++

.. figure:: ../graphics/SANY0004.JPG
:width: 12cm

Move arm into place to pick up marble.
Be sure to clear all the wooden leaves!

.. figure:: ../graphics/SANY0005.JPG
:width: 12cm

Move arm into place to pick up marble.
Be sure to clear all the wooden leaves!

Step 2
++++++

.. figure:: ../graphics/SANY0007.JPG
:width: 12cm

Approach the ball with the grips open.
It may help to turn on the LED to verify alignment.

.. figure:: ../graphics/SANY0008.JPG
:width: 12cm

It may be needed to nudge the ball to using the base
to pick it up with the grips.

Step 3
++++++

.. figure:: ../graphics/SANY0009.JPG
:width: 12cm

Grip the ball until the motor stops.

Step 4
++++++

.. figure:: ../graphics/SANY0010.JPG
:width: 12cm

Carefully, raise the shoulder a bit, without banging the wooden leaves.
Don't knock the ball out of the grips.

Move back until the arm can clear all the leaves.

Step 5
++++++

.. figure:: ../graphics/SANY0011.JPG
:width: 12cm

Raise and lengthen the arm to position the ball
at the top of the marble tree.

Step 6
++++++

.. figure:: ../graphics/SANY0012.JPG
:width: 12cm

Open the grips to release the ball.
Listen as the ball moves downward.



-------------------

.. [#] marble tree: http://www.berea.com/appalachian-fireside-gallery/
12 changes: 12 additions & 0 deletions docs/source/examples/sequence.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,18 @@ https://vimeo.com/128020522
Database, sequence, and GUI support are provided in this IOC project
under the ``ip-2-13`` subdirectory.

Schematic
---------

.. figure:: ../graphics/arm-IOC-LAN-OPI.png
:width: 8cm

schematic of automated sequence equipment

The sequence is run from a SNL program on the Raspberry Pi.
The parameters for the sequence are entered from the
EPICS OPI client ICSS BOY GUI on the laptop).

-----------

.. [#] 2012 ANL Energy Showcase:
Expand Down
Binary file modified docs/source/graphics/SANY0001.JPG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/source/graphics/joystick-controls.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 8bd403c

Please sign in to comment.