Title: Special Topics in Computer Science Computational Modeling for Snake-Based Robots Introduction to Assembly Modeling Week 2, Lecture 1
1Special Topics in Computer ScienceComputational
Modeling for Snake-Based RobotsIntroduction to
Assembly ModelingWeek 2, Lecture 1
- William Regli
- Geometric and Intelligent Computing Laboratory
- Department of Computer Science
- Drexel University
- http//gicl.cs.drexel.edu
2Building Multidisciplinary Model
- Class Goal create multidisciplinary engineering
models - Challenge Learn enough about each discipline to
create integrated models! - Last week modeling parts
- Today putting parts together!
- i.e. creating assemblies
3Where we stand
- You have a physical design you prototyped with
Legos - You have your individual 3D models for the
elements of the design - How to put them together?
4Transformations to Change Coordinate Systems
- Issue the world has many different relative
frames of reference - How do we transform among them?
- Example CAD Assemblies Animation Models
5(No Transcript)
6Example A Scanner Head Assembly
7(No Transcript)
8(No Transcript)
9(No Transcript)
10Goal of Assembly Modeling
- Products are rarely individual parts
- Typically, products are designed top down as
assembly models - For this class, we are interested in the data
structures for assemblies
11Assembly Modeling
- Parts can be defined with mating features on
them. - Features can be mated directly.
- An assembly database builds up automatically.
- Assembly knowledge can be accessed.
- Information in assembly models
- What parts mate to what parts
- What features define the mates and where they are
on the parts - What interfaces must be controlled, plus a formal
way of describing them - Constraints and rule-checking
- about assembly in the small
- about assembly intent in terms of features
- about assembly in the large, including alternate
parts - It is a completely abstract and general model
based on connectivity - Geometry is an attribute of the parts
12Degrees of Freedom
- An objects location in space is completely
specified when three translations (X, Y, Z) and
three rotations ( ) are specified - How many DOFs are constrained?
- cube on table (x-y plane)
- cube at floor-wall interface
- cube at floor-two walls interface
- ball on table
- ball at floor-wall interface
- round peg in blind round hole
13Constraints
- Proper constraints provide a single value for
each of a bodys 6 degrees of freedom - This is done by establishing surface contacts
with surfaces on another part or parts - If less than 6 dof have definite values, the body
is under-constrained - If an attempt is made to provide 2 or more values
for a dof, then the body is over-constrained
because rigid bodies have only 6 dof
14Constraints (examples)
15Constraints (examples)
16Creating an Assembly
- Parts join at places called assembly features
- Different features constrain different numbers
and kinds of degrees of freedom of the respective
parts (symmetrically) - Parts may join by
- one pair of features
- multiple features
- several parts working together, each with its own
features - When parts mate to fixtures, dofs are constrained
17Assembly Features
- Examples
- Fixed
- Revolute
- Planar
- Screw
- Spherical
- Prismatic
18Example Phillips screw
19Example Feature
20Relating Features to Assembly Models
Depends on parts
Does not depend on parts
21Data Structures for Assemblies
- Typically an attributed graph or tree
- Vertices parts
- Edges
- Part-to-part contacts
- Usually represented as joints
- Attributes
- Kinematic specifications and constraints on the
joints
22Contact Graph
23Data Structures for AssembliesExample
- Part
- Name motor
- URL motor.sat
- Transform Identity
- Part
- Name scanner
- URL scanner.sat
- Transform Identity
- List of joints between parts
- Joint Fixed
- Name potentiometer_sleeve_screw_potentiometer_to
_frame - BasePart potentiometer_sleeve
- AttachedPart screw_potentiometer_to_frame
- JointFeatures
- Point potentiometer_sleeve 0 0 0
- Point screw_potentiometer_to_frame 0 0 0
- Joint Revolute
24Assignment!
- Oct 6
- Mock up v1 of your Lego design
- Photos on Wiki
- Oct 10
- 3D model(s) for your Lego design
- Oct 13
- An assembly of your Lego design
25Introduction to Kinematics
- Kinematics study of motion independent of
underlying forces - Degrees of freedom (DoF) the number of
independent position variables needed to specify
motions - State Vector vector space of all possible
configurations of an articulated figure. In
general, the dimensions of state vector is equal
to the DoF of the articulated figure.
26Manipulator Joint Types
- 1 DOF Joint types
- Revolute
- Prismatic
27More Joint Types
- Many higher order joint types can be represented
by combining 1-DOF joints by making axes intersect
28Forward vs. Inverse Kinematics
- Forward kinematics motion of all joints is
explicitly specified - Inverse kinematics given the position of the
end effector, find the position and orientation
of all joints in a hierarchy of linkages also
called goal-directed motion.
29END
30What CAD Systems do
- CAD systems analyze constraints
- But CAD systems, developers, and researchers do
not mean mechanical constraint, they mean
geometric location consistency - Many designs called properly constrained by CAD
systems are actually over-constrained - Different CAD systems do this analysis different
ways and can disagree about the same assembly
31What CAD Systems do
- How CAD Systems Test Constraints
- A closed chain of frames is set up
- A numerical test is done to see if the chain
closes - If, so, the assembly is called fully
constrained - Detailed tests for constraint/consistency
problems are done by making small shifts and
testing for interference - Tolerance studies are done the same way
- Analysis requires detailed geometry
- Results depend on how the model was built
32(No Transcript)
33Mathematical Model
- Basic Math
- Uses 4x4 matrices to relate adjacent frames
- Permits chaining together of parts
- same math is used to describe robots
- The matrix contains a rotational part and a
translational part - The matrix is designed to translate first and
then rotate so that rotation does not change
position of new frame - This matrix is a subset of a more general
projection matrix that includes perspective
- History
- Basic to Kinematics (Denavit Hartenberg)
- Used to model assemblies in 1970s
- S N Simunovic Masters Thesis, MIT, 1972
- Edinburgh University AI Lab robot assembly 1976
- Used by CAD researchers
- Steve Coons, 1960s
- Gossard and others, 1980s
- Used by CAD systems to locate surfaces wrt each
other