Four-Bar Deployed Intake Mechanism Developed with a Mechanism Synthesis Tool in Altair Inspire
With the widespread use of linkages ranging from the heavy industry to aerospace and robotics competitions, a method of automatically synthesizing linkages can expedite the design process. There are three major categories of mechanism synthesis:
This article focuses on a path generation tool for four-bar linkages which is integrated into Altair’s Inspire. The tool enables engineers to take design requirements and generate functional linkage geometry in seconds to minutes.
Setting up Mechanism Synthesis
This provides an overview of the features of the mechanism synthesis tool and brief information about how they are enabled by the user. A more detailed tutorial for using the tool is included at the end of the article.
Step #1: Developing a Target Path (User-Defined)
The first step is to develop a path for the mechanism’s coupler to follow. In Inspire, this is done by creating a set of hard points. The tool will generate a mechanism which aims to pass through each of the points in a user-specified order.
Step #2: Mechanism Design Variable Bounds (User-Defined or Automatic)
To synthesize a four-bar linkage, the mechanism is defined by a set of design variables including link lengths and pivot positions. An optimizer explores the design variables to determine the set which best moves the coupler through the target path while meeting additional constraints. The design variables are bounded with a lower and upper limit. The path generation tool automatically computes reasonable design variable bounds based on the provided target path. Users can choose to modify the bounds in a configuration file to further control the synthesis process.
Step #3: Mechanism Type (User-Defined)
Fully-Rotatable Four-Bar Synthesis (Top)
Standard Four-Bar Synthesis (Bottom)
After running the synthesis tool, users can specify if they want the driven link to be continuously rotatable. If not, the synthesis tool will generate any mechanism (crank-crank, crank-rocker, rocker-rocker) which moves the coupler through the target path.
Step #4: Additional Constraints (Optional & User-Defined)
Users may optionally specify additional constraints to guide the synthesis process. There are two major options:
Mechanism Boundary Constraints
Users may create a bounding polygon which acts as a boundary the mechanism cannot leave during motion. The polygon is defined by a set of hard points at the vertices. During the synthesis process, the four pivots and the coupler point are not allowed to leave the mechanism boundary at any point in the mechanism’s range of motion.
Fixed Pivot Constraints
The fixed pivots of the driven link and follower link can be controlled with additional constraints. For each pivot, the user may specify a point for the pivot to be positioned at, a line for the pivot to be placed along, or a box the pivot must fall in during the synthesis process.
Mechanism Synthesis Results
One place a linkage synthesis tool is beneficial is the FIRST Robotics Competition (FRC). Teams often use four-bar deployed mechanisms like intakes. Altair Inspire can be used to automatically determine suitable four-bar linkage geometry. An intake mechanism for coral, a game piece, will be used as an example.
In the figure below, basic geometry for the robot, like bumpers, are imported into Inspire. The intake mechanism consists of the rollers in green and black which must be deployed into the shown position. Then the mechanism must be retracted to a position within the robot’s frame perimeter, above the blue bumpers. The goal is to design the four-bar mechanism responsible for deploying and retracting the rollers.
Model of a FRC Intake Mechanism Prepared for Mechanism Synthesis
First, the lower roller in black is selected to guide the mechanism through a desired path. A path with three points is used to guide the roller back into the robot’s frame perimeter. Then, the goal is to have the fixed pivots for the four-bar mechanism to be positioned above the frame rails. Two points are created to define a line the pivots are allowed to be created on. Finally, a bounding box consisting of six points is defined to prevent the mechanism from passing through the bumpers or into other undesirable locations like other mechanisms.
Next, the user can run a script to perform the synthesis process. After synthesis is complete, the tool shows a plot of the mechanism. If the user determines the mechanism meets all requirements and is acceptable, a simple mechanism can be automatically built in Inspire.
Four-Bar Linkage Depicted Upon Synthesis Completion
Automatically Created Four-Bar Linkage in Inspire
The automatically created geometry is ready for motion, allowing users to visualize the linkage’s motion immediately. Real components can be designed using known geometric information like pivot locations determined through the synthesis process. Then the automatically generated components can be replaced with real components as shown below to create a complete mechanism.
Benefits of Synthesis in Inspire
- CAD import is supported for accurate and quick set up for mechanism synthesis.
- A synthesized, motion-ready mechanism is automatically created in Inspire.
- Users can design components around the pivot locations defined by the synthesis process.
- Motor torques and joint forces throughout the mechanism range of motion can be analyzed immediately using Inspire Motion.
- Inspire supports topology optimization. This enables users to move directly into component design via optimization using loads developed from the motion-ready model.
Mechanism Synthesis Tool
Mechanism Synthesis Instructions
Initial Set Up
- Download Mechanism_Synthesis.zip.
- Extract the files to a known location.
- Open synthesis.py in a text editor.
- Modify the path, shown in the figure below, to the location of synthesis.py on your machine.
Running the Synthesis Tool in Inspire
- Enable the python window in Inspire.
- Use the python terminal to navigate to the location of synthesis.py. The change directory command (cd “path”) can be used to change directories into the folder containing synthesis.py.
- Run exec(open(r"synthesis.py").read()) in the python terminal to run the synthesis program.
- Follow the instructions provided in the python terminal:
- Select a plane for mechanism synthesis and input the plane into the terminal.
- Create hard points using the Motion Analyst toolbox which define the path for the mechanism to follow.
- Input the hard points into the python terminal in the order they must be followed. Use the variable name of the point when typing in the point names.
- Determine whether the driven link must be fully rotatable. Input the answer into the terminal as requested.
- Optionally add additional constraints as indicated by the python terminal.
- Once all steps in the python terminal are complete, the user will be unable to interact with the Inspire environment until the synthesis is completed.
- After completion, the user will be presented with a plot of the mechanism. The user can select in the Python terminal whether the mechanism is to be built in Inspire or discarded.
Synthesis Overview
Author
John Dagg, MBSE Intern
Questions?
Contact: jtdagg@mtu.edu