16.2 Kinematic Analysis

16.2 Kinematic Analysis

Overview


Our objective is to create a Morse Code encoder machine that can utilize distinct motion profiles to stamp a dot, a dash, and a space onto a piece of paper. To accomplish this, we evaluate the gait profiles of two candidate walking mechanisms: the Klann and the 8-Bar.

Both mechanisms take a full rotational crank input and produce a smooth gait profile featuring a flat segment along the lower portion of their path. This flat region can be used to inscribe Morse code symbols by adjusting its length and orientation. While other gait mechanisms were briefly considered, these two were ultimately selected for their use of three ground joints – providing multiple joint to reposition to alter the motion profile – and their ease of implementation.

The two motion profiles are shown below:

klann_motiongen.gif
Motion Profile for Klann Mechanism
8_bar_motiongen.gif
Motion Profile for 8-Bar Mechanism

Based on these motion profiles, the goal of this analysis is to identify specific configurations that can reliably produce distinct “dot” and “dash” characters, i.e. short and long flat segments, while maintaining minimal variation in height and lateral displacement for symbol printing.

Positional Analysis


To evaluate the motion profiles of the Klann and 8-bar mechanisms, we conducted a vector loop positional analysis. Initial diagrams were sketched by hand, then calculations were translated into Python scripts for flexible simulation of link lengths and joint positions.

Preliminary testing and literature review showed that adjusting the ground joint positions, in relation to each other, was the most effective and practical way to modify the motion profile. Unlike changing link lengths – which would require complex slotted mechanisms – this approach is easier to implement. Once again, this was a key reason for selecting the Klann and 8-Bar systems, as both offer three manipulable ground joints.

Klann Mechanism

The Klann mechanism is a 6-bar linkage with 7 joints – three grounded and one ternary. It can be decomposed into two 4-bar vector loops, highlighted in the diagram, along with the adjustable ground positions.

Screen Shot 2025-04-02 at 1.42.12 AM.png
Klann Mechanism Diagram

Vector Analysis

The vector loops were solved using basic kinematic equations while preserving vector directionality. Joint positions B and C were computed first to solve the second loop, forming the basis of our code for analyzing its motion profile.

Vector Loop 1:

[Deprecated] Latex | Mosaic

Dynamic Link:

[Deprecated] Latex | Mosaic

Vector Loop 2:

[Deprecated] Latex | Mosaic

End-Effector Trajectory:

[Deprecated] Latex | Mosaic

Preliminary Prototype Configuration

Preliminary analysis showed that varying link lengths was not only impractical but often resulted in “broken” configurations that couldn’t complete full crank rotations (Non-Grashof linkage). Therefore, to efficiently explore gait patterns, link lengths were kept constant. Note however, for added design flexibility, links 3 and 6 were divided into two pieces with adjustable angles, though they will function as continuous links in the final design.

After manual testing, the following parameters were selected, resulting in the motion profile shown below:

Link

Length (cm)

Link

Length (cm)

LA

7.0

LC

6.3

L2

3.0

L3

6.6

L3b

5.8

L4

3.6

L5

6.0

L6a

10.0

L6

20.0

Screen Shot 2025-04-02 at 1.43.38 AM.png
Motion Profile for Preliminary Klann Mechanism

8-bar Mechanism

The 8-bar mechanism is an 8-bar linkage with 7 joints – three grounded and on ternary. It can be decomposed into three distinct 4-bar vector loops, highlighter in the diagram, along with the adjustable ground positions.

Screen Shot 2025-04-02 at 1.49.55 AM.png
8-bar Mechanism Diagram

Vector Analysis

The vector loops were once again solved using basic kinematic equations while preserving vector directionality. This time around however, three vector loops were needed, requiring additional calculations.

Vector Loop 1:

[Deprecated] Latex | Mosaic

Vector Loop 2:

[Deprecated] Latex | Mosaic

Dynamic Link:

[Deprecated] Latex | Mosaic

Vector Loop 3:

[Deprecated] Latex | Mosaic

End-Effector Trajectory:

Preliminary Configuration

Once again, preliminary analysis showed that changing link lengths often resulted in “broken” configurations. Therefore, link lengths were kept constant. Similarly, link 7 was temporarily divided into two pieces with adjustable angles, for added design flexibility.

After manual testing, the following parameters were selected, resulting in the motion profile shown below:

Link

Length (cm)

Link

Length (cm)

LA

7.5

LC

5.0

L2

2.0

L3

7.0

L4

4.5

L5

5.5

L6

4.0

L7a

7.0

L7b

3.0

L8

5.5

Figure_1.png
Motion Profile for Preliminary 8-Bar Mechanism

In-Depth Analysis and Optimization


Tor further refine our analysis, configurations were selected to meet key criteria:

  • clear distinction between long and short gait patterns

  • relatively flat bottom profile

  • minimal vertical displacement (y-axis)

To begin this process, final linkage lengths were chosen to ensure manufacturability and enable symbol encodings at a practical scale, with a 3cm crank link (L2) used as the design reference.

Link

Length (cm)

Link

Length (cm)

L2

3.0

L3

6.6

L3b

5.8

L4

3.6

L5

6.0

L6

10.0

L6b

20.0

Final Link Lengths for Klann Mechanism

Link

Length (cm)

Link

Length (cm)

L2

3.0

L3

9.0

L4

7.2

L5

9.0

L6

9.0

L7

9.0

L7b

4.5

L8

9.0

Final Link Lengths for 8-Bar Mechanism

The analysis process followed a multi-faceted approach focused on examining the end-effector trajectory. The initial kinematic analysis code was extended to compute the key metrics that guided the selection of suitable ground joint configurations.

Analysis Parameters

The first step was to extract a region of interest from the trajectory path that aligns with the “bottom” of the gait profile – the portion in contact with the page. This was done through visual inspection, identifying the crank angle range corresponding to the desired curve segment. Sample selected regions are shown below:

Klann End Effector Trajectory.png
Region of Interest for Klann Mechanism
Figure_2.png
Region of Interest for 8-Bar Mechanism

With that defined, we proceed to calculate the dash length by normalizing the curve, aligning it to the global x-axis, and summing its x-coordinates.

Next, the dash flatness is computed by finding the slopes between consecutive coordinates of the original curve and calculating their standard deviation – ideally close to 0 for a flat line.

The dash height is determined as the mean of the y-coordinates of the normalized curve, which is required to align the paper feeder mechanism to the end-effector of the linkage.

Additionally, for unorthodox dot configurations, which don’t require a long flat dash, the region of interest can be refined to include only short dips in the minimum y-coordinate (dot height), which could be used to create a short dot length for potential markings.

Analysis Procedure

To understand the behavior of both mechanisms, the positions of the A and C ground joints were varied within buffer regions, and the resulting scores were visualized using heat maps. Note that appropriate search limits were set to exclude configurations that would cause linkage breakage, ensuring the relevance of the graphs.

Based on the simulation results, an effective “dash” configuration is found in regions with high dash length and flatness, while a suitable “dot” configuration corresponds to regions with low dot/dash length and a matching height.

To effectively analyze the two distinct gait profiles we needed, we defined certain key trends that would lead us to two optimized configurations. To achieve the ideal “dot” and “dash” configurations, we needed a significant difference between the lengths of the two configurations, this can be symbolized through a change in color from the two points we choose for the ground links. Secondly, we wanted to see minimal change in flatness, this can be identified as no, or low, change in color. In addition, we also wanted a minimal change in dash height so that the gait profile was able to mark on the paper between both configurations. These trends are represented as white arcs which has endpoints at the two configurations we chose for both the 8 bar and the Klann on the heatmaps, and can be seen under the two final configurations for both.

Results for Klann Mechanism

Variation of Ground Joint A (broad search)

klann_trajectories_A_broad.png
Trajectories for Klann Mechanism (Broad)
klann_dash_flatness_A_broad.png
Dash Flatness for Klann Mechanism (Broad)
klann_dot_length_A_broad.png
Dot Length for Klann Mechanism (Broad)
klann_dash_length_A_broad.png
Dash Length for Klann Mechanism (Broad)
klann_dash_height_A_broad.png
Dash Height for Klann Mechanism (Broad)
klann_dot_height_A_broad.png
Dot Height for Klann Mechanism (Broad)

Variation of Ground Joint C (broad search)

klann_trajectories_C_broad.png
Trajectories for Klann Mechanism (Broad)
klann_dash_flatness_C_broad.png
Dash flatness for Klann Mechanism (Broad)
klann_dot_length_C_broad.png
Dot Length for Klann Mechanism (Broad)
klann_dash_length_C_broad.png
Dash Length for Klann Mechanism (Broad)
klann_dash_height_C_broad.png
Dash Height for Klann Mechanism (Broad)
klann_dot_height_C_broad.png
Dot Height for Klann Mechanism (Broad)

Based on these broad results, ground joint C was selected as the configurable position, and a finer search was conducted in the regions corresponding to potential dot and dash profiles.

Variation of Ground Joint C (dot search)

klann_trajectories_C_fine_0.png
Trajectories for Klann Mechanism (Dot)
klann_dash_flatness_C_fine_0.png
Dash Flatness for Klann Mechanism (Dot)
klann_dot_length_C_fine_0.png
Dot Length for Klann Mechanism (Dot)

 

 

klann_dash_length_C_fine_0.png
Dash Length for Klann Mechanism (Dot)
klann_dash_height_C_fine_0.png
Dash Height for Klann Mechanism (Dot)
klann_dot_height_C_fine_0.png
Dot Height for Klann Mechanism (Dot)

Variation of Ground Joint C (dash search)

klann_trajectories_C_fine_1.png
Trajectories for Klann Mechanism (Dash)
klann_dash_flatness_C_fine_1.png
Dash Flatness for Klann Mechanism (Dash)
klann_dot_length_C_fine_1.png
Dot Length for Klann Mechanism (Dash)

 

 

klann_dash_length_C_fine_1.png
Dash Length for Klann Mechanism (Dash)
klann_dash_height_C_fine_1.png
Dash Height for Klann Mechanism (Dash)
klann_dot_height_C_fine_1.png
Dot Height for Klann Mechanism (Dash)

The final selected configurations were:

Ground Joint A = (6.0, -3.4)

Ground Joint C = (1.5, 4.5) - Dot

Ground Joint C = (5.7, 2.5) - Dot

klann_trajectories_final.png
Dot / Dash Profiles for Klann Mechanism
Screen Shot 2025-04-30 at 10.18.17 PM.png
Length with Change between Configurations
Screen Shot 2025-04-30 at 10.17.52 PM.png
Flatness with Change between Configurations
Screen Shot 2025-04-30 at 10.18.37 PM.png
Height with Change between Configurations

Results for 8-Bar Mechanism

Variation of Ground Joint A (broad search)

eight_trajectories_A_broad.png
Trajectories for 8-Bar Mechanism (Broad)
eight_dash_flatness_A_broad.png
Dash Flatness for 8-Bar Mechanism (Broad)
eight_dot_length_A_broad.png
Dot Length for 8-Bar Mechanism (Broad)
eight_dash_length_A_broad.png
Dash Length for 8-Bar Mechanism (Broad)
eight_dash_height_A_broad.png
Dash Height for 8-Bar Mechanism (Broad)
eight_dot_height_A_broad.png
Dot Height for 8-Bar Mechanism (Broad)

Variation of Ground Joint C (broad search)

eight_trajectories_C_broad.png
Trajectories for 8-Bar Mechanism (Broad)
eight_dash_flatness_C_broad.png
Dash Flatness for 8-Bar Mechanism (Broad)
eight_dot_length_C_broad.png
Dot Length for 8-Bar Mechanism
eight_dash_length_C_broad.png
Dash Length for 8-Bar Mechanism (Broad)
eight_dash_height_C_broad.png
Dash Height for 8-Bar Mechanism (Broad)
eight_dot_height_C_broad.png
Dot Height for 8-Bar Mechanism (Broad)

Based on these broad results, ground joint C was selected as the configurable position, and a finer search was conducted in the regions corresponding to potential dot and dash profiles.

Variation of Ground Joint C (dot search)

eight_trajectories_C_fine_1.png
Trajectories for 8-Bar Mechanism (Dot)
eight_dash_flatness_C_fine_1.png
Dash Flatness for 8-Bar Mechanism (Dot)
eight_dot_length_C_fine_1.png
Dot Length for 8-Bar Mechanism (Dot)

 

 

eight_dash_length_C_fine_1.png
Dash Length for 8-Bar Mechanism (Dot)
eight_dash_height_C_fine_1.png
Dash Height for 8-Bar Mechanism (Dot)
eight_dot_height_C_fine_1.png
Dot Height for 8-Bar Mechanism (Dot)

Variation of Ground Joint C (dash search)

eight_trajectories_C_fine_0.png
Trajectories for 8-Bar Mechanism (Dash)
eight_dash_flatness_C_fine_0.png
Dash Flatness for 8-Bar Mechanism (Dash)
eight_dot_length_C_fine_0.png
Dot Length for 8-Bar Mechanism (Dash)
eight_dash_length_C_fine_0.png
Dash Length for 8-Bar Mechanism (Dash)
eight_dash_height_C_fine_0.png
Dash Height for 8-Bar Mechanism (Dash)
eight_dot_height_C_fine_0.png
Dot Height for 8-Bar Mechanism (Dash)

The final selected configurations were:

Ground Joint A = (6.3, 0)

Ground Joint C = (5.0, -2.25) - Dot

Ground Joint C = (4.5, -7.75) - Dot

eight_trajectories_final.png
Dot / Dash Profiles for 8-Bar Mechanism

 

Screen Shot 2025-04-30 at 9.50.47 PM.png
Length with Change between Configurations
Screen Shot 2025-04-30 at 9.50.29 PM.png
Flatness with Change between Configurations
Screen Shot 2025-04-30 at 9.50.57 PM.png
Height with Change between Configurations

Analysis Conclusions


After the above thorough and detailed analysis, we used the optimal gait profiles from both the Klann and the 8-bar linkages to choose a mechanism for our final product. Based on the trends analyzed from our key parameters, we saw that although the Klann mechanism had a more profound change in length between the “dash” and “dot” configurations, the 8-bar linkage had a more constant flatness and height. These can be seen through the two final configurations for each. The primary deterrent against the Klann mechanism was the significant difference in y location of the gait profiles. This needs to be minimized as the paper we are writing on will be at a fixed position in the y-axis. The only way to bypass this drastic difference could be through making the marker more compliant with springs or different tips, but after some research, we decided that implementation of this would be difficult. Ultimately, we concluded that the 8-Bar mechanism, along with the two configurations shown above, would be the most suitable choice to move forward with our design.