First, I defined my input parameters. For this problem, I assumed that the crank was rotating at 1 revolution per second (CW) at a constant angular velocity. Additionally, theta starts at 0 degrees. I tracked the motion of the penguin for one second (i.e., one full revolution). Figure 8 shows the input parameters.
Figure 8: Input parameters (i.e., angular acceleration, angular velocity, and angular position of the input crank) for the “Ready to Fly” penguin mechanism.
For each orientation of theta, to find the height of the penguin, I used equation 2 to determine the position of the cam. Then, I used the max function in Matlab to determine the highest point on the cam. I made two assumptions: The penguin stays in contact with the cam the entire time. The penguin’s lowest height is h=0. The following video shows a schematic of the rod (connected to the penguin) moving with the cam for one full revolution:
To determine the velocity of the penguin body, I used the gradient function in Matlab to determine the derivative of the position vector. To determine the acceleration of the penguin body, I again used the gradient function on the velocity vector. Figure 9 shows my results.
Figure 9: Penguin body position (cm), velocity (cm/s), and acceleration (cm/s^2) versus time (s).