Week 10: Machine End Effectors


<br> #### Friday Machine This week, we were assigned with building a "sidewalk plotter", a 2 degree of freedom drawing machine. We were split into two teams, and I joined the Friday team! Within the team, we split up tasks into a Hardware and Software Team, and I was part of the Software Team with Bella and David Garcia. Please see <a href="https://bellatarantino.com/ps70/assignments/drawbot.html">Bella's</a> page for additional documentation for the software team. As Bella mentions, unfortunately teamwork and team integration wasn't the best on all fronts. Unfortunately, by the time the hardware was complete, there were only a couple of days to test software, and an end-effector was not ready until the night before. Once able to test, the software team poured a lot of energy into trying to use a software FluidNC in order to convert images and SVG files into gcode instructions for any custon CNC machine, such as our drawing machine. However, after countless hours of running into issues, reflashing firmware, and more, we realized it was a huge risk to keep trying this method. Thus, we decided to go back to the given example code and go from there. At some point, we realized that our machine could draw a circle if the wheels on our end effector spun in opposite directions - effectively, we could operate in polar coordinates to draw a circle. Thus, we modified our software to have functions for drawing circles, lines, and spirals (different compinations of spinning the machine and moving the end effector linearly), and to have buttons on the web browser to initiate these functions. The software team also installed a limit switch to one end of the machine, in order to try and home the machine. However, we found that whenever the home() function was called in our Arduino sketch, the program would not work. Short on time, we were not able to figure out how to resolve this issue. I think the whole team realized a lot about teamwork, and in particular, integration of different sub-parts of a big project like our drawing machine. It was a mistake to partition the work so clearly, and even schedule different work hours. It would have been nice to have the hardware prepared a bit earlier, but in hindsight I could have helped on hardware as well or begun testing concurrently on the example machine Nathan built. Overall, we saw how important team communication is, and how long and difficult integrating different parts of a project can be, so this was a great learning experience. Please find a demo of the circular motion below: (If the video doesn't play, please navigate to this <a href="https://youtu.be/ve-TaIXkrPA">Youtube Link</a>.) <iframe width="1019" height="573" src="https://youtu.be/ve-TaIXkrPA" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen> </iframe> #### Code: Download .ino file <a download="/ps70/fri_machine.ino">here</a>