An Introduction to SphinxPC

by J. Michael McCarthy

March 19, 1997

An Overview

The goal of a linkage project in SphinxPC is the design of 4R linkage that guides a body either through four planar positions or through four spatial orientations. Each project consists of a "task" phase in which the positions are specified, and a "design" phase in which linkages are selected and examined.

A planar task is defined by specifying the four positions in the Planar Task dialog box, using x and y coordinates of a reference point and an angle of rotation in degrees. Similarly, a spherical task is specified by identifying the four orientations in the Spherical Task dialog box, using longitude and latitude angles to position the z-axis of the moving frame and a rotation angle about this axis, all in degrees.

Once a task is specified SphinxPC identifies all the linkages that satisfy this task within the boundaries of the workspace and up to a specified resolution. These linkages are displayed in the Type Map. A linkage design is selected in the Type Map and displayed on the workspace. The animate command will display its movement.

The software is intended to support the exploration of many linkage designs for a given task, as well as the exploration of various task specifications.

Starting SphinxPC

SphinxPC is set to start-up with a spherical linkage design project and a default task. Therefore the Spherical Workspace and Type Map windows are displayed immediately.

The SphinxPC menu bar is shown in Figure 1 and consists of seven menus: File, Task, Design, Animate, View, Window, and About.

Figure 1. The main menu of SphinxPC.

Figure 2 shows the workspace and type map associated with the default task. This is the opening screen of SphinxPC.

Figure 2. The Spherical workspace and Type Map.

Manipulating the Workspace

SphinxPC displays a three dimensional workspace for both planar and spherical linkages. This workspace can be rotated about the vertical axis by holding the left mouse button down while moving the cursor left and right in the workspace window. The workspace is rotated about the horizontal axis by moving the cursor up and down, again holding the left mouse button down. Double clicking the left button will reset the workspace to its original orientation.

The right mouse button controls a zoom feature in the planar workspace. Moving the mouse left and right moves the workspace closer and farther away. Double click of this button resets its location.

In the spherical workspace the right mouse button rolls the sphere about the axis perpendicular to the screen. Again, a double click of this right button resets the workspace.

Designing a Spherical Linkage

The design process continues by selecting Edit Task in the Task menu, Figure 3. This brings up the Spherical Task dialog box, Figure 4.

Figure 3. The Task menu.

Specify a Task.

Edit the entries in the Spherical task dialog box to define a new set of desired orientations for the moving frame. The iteration counter is also available for the center axis cone which defines the number of available linkages, for each design. Increasing this number increases the computation time. The Near Folding tolerance controls what the Type Map considers to be a folding linkage.

Select Update to display the specified positions in the workspace, and to compute a new center axis cone and Type Map.

Figure 4. The Spherical Task dialog box.

Choose a Design.

The Type Map displays all the linkage designs computed for a specific task which are obtained from pairs of points of the center axis cone shown in the workspace window. Selecting a point in the Type Map identifies a specific pair of fixed pivots and therefore a linkage.

Each linkage has a gold "driving" link and a blue "driven" link connected by the coupler which also supports the moving frame. The driving pivots are displayed along the horizontal axis of the Type Map, and the driven pivots along the vertical axis. Thus, a linkage (i,j) has i as its driving link and j as its driven link. Linkages that are symmetric relative to the diagonal on the Type Map, (i,j) and (j,i), have the driving and driven links interchanged.

Each linkage is color coded based on its type. Shades of blue represents Non-Grashof linkages, while the other colors are Grashof or folding linkages. See the Type Map Guide under the Design menu, Figure 5.

Figure 5. The Design menu.

The information describing a specific linkage design is presented in the Design Info dialog box, Figure 6.

Figure 6. The Design Information dialog box.

The Design Info dialog box provides the dimensions of the linkage in degrees, as well as the latitude and longitude locating the fixed and moving pivots. It also identifies the type of linkage. The type map coordinates (i,j) can be edited to move to a specific linkage on the type map.

Sixteen Type Maps

A spherical linkage is defined by four axes through the center of a sphere. SphinxPC biases these axes so they point in the positive z direction, (z>0). However, useful linkages can be constructed with any or all of the axes negated so they point in the negative z direction, (z<0). there are sixteen different ways these axes can be directed to form a linkage.

sphinxpc provides type maps for each of the sixteen equivalent spherical linkages in the type map submenu of design, figure 7.

Figure 7. Sixteen type maps for spherical linkages.

There is only one type map for planar linkages therefore these entries are grayed out when a planar task has been specified.

Designing a Planar Linkage

The design process for a planar linkage is identical to that for a spherical linkage. Select Planar Task in the New Task submenu, Figure 3. The default planar task will be displaced with the workspace and type map windows, Figure 8.

Figure 8. The Planar workspace and Type Map.

Edit the entries in the Planar Task dialog box to specify new locations for the moving frame. The Update button will compute the new centerpoint curve in the workspace window, and generate the associated type map.

The resolution of the type map is increased using the centerpoint curve iteration counter in the task dialog box. Because the type map is a bit-mapped display, higher resolution can result in a figure physically smaller because of a reduction in pixel count per linkage. Simply turn off the workspace in the View window to devote the screen to the type map. Selections can then be viewed by turning the workspace window on again.

Select a linkage in the type map window and view it on the workspace. The animate menu commands provide a display of the movement of the linkage.

Figure 9. The Planar Task dialog box.

The Planar Workspace

While the design routines for the plane and sphere are essentially identical, one important difference is represented by the presence of the workspace boundary in the planar case. This boundary is a square constructed around a reference point in the fixed frame. A default "reference point" and "size" of the workspace are shown in the Planar Task dialog box, Figure 9., and can be edited as desired. Only fixed pivots within the workspace are computed by SphinxPC. The locations of associated moving pivot, however, are not limited by the workspace boundary.

Figure 10. The Animation menu.


The animation routines rotate the driving crank of the selected linkage to display its motion. Select Window under the Animation menu (Figure 10) to bring up the animation control box, Figure 11.

Figure 11. The Animation control dialog box.

Select Play to begin the movement of the linkage. The coupler curve is a useful cue for understanding the different ways a linkage can move. In general, the coupler curve will consist of two parts, one colored green and the other red. The Change Mode and Change Assembly switches reconfigure the linkage so it can reach various parts of the coupler curve.

If the driving link can fully rotate, then the coupler curve consists of two separate closed portions. The Change Assembly switch reconfigures the linkage so it reaches one or the other portion of the curve. In this case the each portion of the curve is associated with a single mode, so the Change Mode switch performs the same operation.

If the driving link cannot fully rotate then it oscillates either through one range or two separate ranges. In the case of a single range, there is a single coupler curve, one region of which will be green and the other red. The animation begins in the region that contains the first position. When the driving crank reaches the end of the range of oscillation, it reverses direction and coupler point remains in the same region of the coupler curve. Select Change Mode in order to reconfigure the linkage so the reference frame lies on the other part of the curve.

If the driving link has two ranges of oscillation, there are two closed portions of the coupler curves each with green and red regions. The Change Assembly switch moves from one portion to the other, while the Change Mode switch moves between regions on the same closed curve.

The View Menu

The View menu provides switches that control the display in the main window of SphinxPC. In particular, rather than display both the workspace and type map, one can be selected and the other turned off. Also, various elements displayed in the workspace window can be switched on and off.

Turning off various display options will often speed up the animation of a linkage design.

Figure 12. The View menu.

Saving a Design

A linkage design and its associated task are saved by selecting either Save Project or Save As under the File menu. Files saved by SphinxPC are given the extension ".spx".

A saved design is accessed by selecting Open Project.

Quit will exit SphinxPC.

Figure 13. The File menu.