System Mechanics
This device is a combination of a four bar linkage as well as a geared platter which runs off the same input as the crank for the linkage. To analyze this system these features will be first described separately before synthesizing their relative motions to describe the full output. Because they work simultaneously however the full position of the pen relative to the paper cannot be sufficiently described with just one or the other. The goal was to first break them into manageable sub systems based on our knowledge of both, and then utilize out understanding of the physics that connect the two to develop the math that can coherently describe the full motion taking place.
...
Figure 7. Drawing Machine Demonstration
Figure 78. Matlab Partial Simulation Still Frame
Multimedia | ||
---|---|---|
|
Figure 9. Movie of Matlab Simulation in Action
In the clip above you can see the functionality of the Matlab script which does a partial simulation of the trajectory. The plan was to manipulate the point plot data by using a transformation matrix that could account for both the linear offset in X and Y of the platter from the crank pivot, which was my origin. And then it would also apply a rotational adjustment with a angle indexed to the crank by via the gear ratio. However those plans did not materialize and I was only able to plot the four bar curve by itself. In theory this is acheivable by simply multiplying the 2x1 position vector by the following for the appropriate translation and angle values.
cos Φ | -sin Φ | 11.5" |
sinΦ | cos Φ | 2.75" |
0 | 0 | 1 |
Where 11.5" and 2.75" are the translations in x and y respectively. And in this case phi would be a function of the crank angle and would therefore need to be updated for each point. In conclusion, while there is still more work to do on this project to get it to where it would have been had all my goals been reached, I was abled to yet still get a functional mechanism out of my efforts that somewhat reliably produce spirograph like curves. It is a disappointment to not have been able to predict the curves generated though, and I believe with more effort it can still be achieved. However I ran out of time and this is where it will be left for now.
View file | ||||
---|---|---|---|---|
|
Matlab code for simulation presented. Completed in R2018a