Project 10
This machine was made in collaboration with David Ettel and Andrew Chen. We made a vertical plotter, building on the setup started by Bobby.
As you can see in the video below, the movement is anything but refined. We will discuss the performance and issues and depth below but here is the top level workflow. We draw something on our interface, and the plotter tries to replicate it. The pen ran out of in so sorry about that but you can see the general movement. It does pretty well for lines but struggles to move in closed figures.
Bobby already had the pulley system designed and assembled when we started. So the first several hours for use were spent tangling and untangling the strings and understanding the system.
Constraining the system : The first real problem we ran into was figuring out how to constrain the system. In its current form, the pulleys and the motor mounts were not constrained with regards to size in any way as visible in picture 1.1 For this, we decided to buy small cylindrical levels things and designed small caps for them to constrain right angles and constant dimensions (see picture 1.2). We made the stupid mistake of not designing the caps for the vertical version so the angles are only impactful horizontally. But this gave us a reliable parallelogram (same size constrained through string size) and we eyeballed the "rectangleness". This was really helpful in callibration.
Pen Stand : We went through 3 iterations of the pen stand (2 of them are visible in 2.2 and 2.5). The latter did not work because here in the writing position, the pen was in the air held by a servo motor. The servo unfortunately was not strong enough to stop the pen from just vibrating a lot. This is visible in some of the more jagged lines on the wall. We swapped it out for the system in 2.2 because that way the pen rests on the stand while writing, giving more support. Further, it is connected by a ring that uses M2 and M3 screws to connect to the servo and the pen. Definitely does hurt the pen lol but it is solid and easy to swap!
Friction and Counter Balancing: The pen stand was very slow in adjusting to slack in the system when the bottom motor released string. This was because of friction with the string in the free moving loop at the top. Further, the system struggled to go to the bottom due to the considerable weight on the edges. To counter these, we did 2 things respectively. We did 2 things to counter this, first we added extra weight to the pen stand making it easier for the pen to move down. For upwards movement, we redesigned the loop on the pen stand to be more circular, to reduce friction. This is visible in 2.4. These steps generally made the motion much smoother.
Wires and more Wires: Functioning out of a breadboard for the longest time, we gave up on Kassia's great advice at 6am on the day of presentations. What followed was some very sleepy soldering but it worked! Didn't have to worry about wires once after that so that was great. The sleep deprivation did lead to some shabby solders though.
We built out a simple draw here, convert to x,y setup for out drawin process. It is visible in the videos above. We added plenty of debugging systems including a set/move to home to make out lives easier. This interacts by directly communicating with the board using the laptop ports, we appreciated the convenience of this.
For the mapping from x,y coordinates to this space, We first realized the each stepper motor eseentially has its own circular (or more like a segment of a circle) area that it can move to. So essentially, we need to make these 2 radial movements into euclidian space. Since the distance between them is constrained this was pretty simple. Outside of dimension, the only real factor we had to tune was the mapping between steps and distance covered. Further, because of this physics, our system was auto balancing and homing. When disconnected, it would make into the same middle of center space which was great.
Limit Switches: We planned to add limit switches but did not because we wanted to focus on tuning the system. We weren't confident on what we wanted our starting point to be. This took enough time that we never really got here. Also because this was a lower priority given a nature of our system. We had a huge canvas size and we were only using a portion of it at once. With the move and set/move home features in our interface, it was pretty easy to get the system back in place. Plus auto-home on turning the system off was also a neat benefit.
The physics of the current system are quite complicated for multiple reasons. The upper rope can not glide tensionlessly which means that the marker module is usually not in the required equilibrium state necessary for smooth operations. Furthermore, minor imbalances in the system can release the tension on one of the threads connecting the motors with the marker module. But tension is necessary for the motor step based coordinate system. Finally, the forces applied on the marker module by the two outside weights are in a nontrivial relationshipp. with the marker's position on the canvas.
A better alternative would have been a classical V-plotter where the motors are both attached on top of the canvas and the marker module is only attached to these two motors and no additional weights. The reason why this is easier is that the equilibirum position is actuallly achieved reliably and none of the nontrivial additional forces come into play. Gravity guarantees that both threads connecting the marker module to the motors are always in full tension and that Pythagoras is the only thing we need to calculate the marker's position.
The reason why Bobby had developed the system in its current configuration is that he wanted to develop a super fast wall plotter with four motors, one in each corner. The current state was just supposed to be a step on the road to the four motor system which comes with additional challenges due to its inherent overconstrainment (three thread lengths arlready determine a position uniquely, thus the forth one has to be exactly of a specific length). Bobby became frustrated by this challenge and (naturally, given his exorbital competence superiority) so are we.
Loading code...
Loading code...