Make a machine, including the end effector, build the passive parts and operate it manually.
Well For Machine Design We Thought on Following Two Ideas
1) first ideas was to replicate the 'machine' known as TARS / CASE as seen in the hollywood movie Interstellar.
2) second ideas was to make A XYZ Machine Which could be basically a 3D printer with some mode.
Me been having an interest in Light Painting As a Hobby Decided to Play with it.
Thus We came Up With This Idea Of Making a Machine Which will do Light Painting .
The Project Was Named
The Project is Documented in on The LAB Website
In out Case what we needed to do is Slice a 3D Object into its outline for each layer and then draw each layer
so What we end up is like a xy plotter which Moves to Z direction after every drawing until all frames are completed.
My contributions for machine design
So To make this project happen we following are the Task that needed to be done
1) the Mechanical Design of the XY Z system
2) Figuring out how to Generate Gcode what will Draw in XY and then move to Z
( we waned only the outline of the shape and only a single path.)
3) The Electronics and Programming this this the part I was suppose to Take care of Individually considering which was a complex Task Then i earlier thought.
First and Formost i did was to understand what is Gcode and how it works
Me alone With Arpi Maheshwari were exploring Options to do so using Rhino Software.
We got The Plugin called Slikworm which this this task very well.
Next i opened following site http://nraynaud.github.io/webgcode/
and Explored what each line of Gcode do and what is the Command What can be incuded in Gcode that will make the LED on and Off on Before Moving To Z axis
We chose to use RAMPS Shield V1.4 along with Arduino Mega.
Following was our Decision Flow with selection of Hardware and Software Architecture:
Initially we wanted to use Grbl
1) Identifying Hardware we can Make or We have at lab already
Decision: As we had RAMPS v1.4 Shield available easily at a shop, we decide to first try it and start experimenting as soon as possible.
Firmware: As we Understand Firmware is the Mediator of the Control Circuit for any such project. Firmware takes the G-Code instruction in Text form Via Serial Communication and control the Stepper Motors accordingly.
Attached is the list of existing options with firmware:
On doing a quick search online we realize that following Three
are the most famous and feature Rich firmware.
Grbl is a no-compromise, high performance, low cost alternative to parallel-port-based motion control for CNC milling. Does not control extruders.
Grbl was our first choice as it fits our requirements. We loaded it on the RAMPs
It's a nearly complete rewrite (80%) of the well known Sprinter firmware. While rewriting it to simplify it for future improvements and to improve the speed, I added tons of remarks and documentation, helping everyone, who wants to change it a bit.
Marlin is firmware for RepRap single-processor electronics, supporting RAMPS, RAMBo, Ultimaker, BQ, and several other Arduino-based 3D printers. It supports printing over USB or from SD cards with folders, and uses lookahead trajectory planning. Marlin is licensed under the GNU GPL v3 or later. It is based on Sprinter firmware, licensed under GPL v2 or later. The most active developers of Marlin are currently (January 2016) thinkyhead, AnHardt, ErikZalm, daid, boelle, Wackerbarth, bkubicek, and Wurstnase, with many others contributing patches.
We Chose the firmware first and then chose the Host software (Gcode Sender) accordingly.
Serial communication is used for all long-haul communication and most computer networks, where the cost of cable and synchronization difficulties make parallel communication impractical. Serial computer buses are becoming more common even at shorter distances, as improved signal integrity and transmission speeds in newer serial technologies have begun to outweigh the parallel bus's advantage of simplicity (no need for serializer and deserializer, or SerDes) and to outstrip its disadvantages (clock skew, interconnect density). The migration from PCI to PCI Express is an example.
The baud rate is the rate at which information is transferred in a communication channel. In the serial port context, "9600 baud" means that the serial port is capable of transferring a maximum of 9600 bits per second.
Relevant terminology for this week project:
In the picture above we are trying to solve the Problem with the belt and the pulley .
The Groves of the Gear Were not getting properly aligned with the belt this was because the belt was very stiff then the sample we planed for.
Solution was to Change the Diameter of the Pulley and the Grove Width as well.
Following is the summary of the issues we faced during this project:
1. The threaded screw mechanism that we had chosen did not give us desired speed. But we required the LED to move very quickly for Light printing , so we decided to combine threaded rod system with belt-pulley system so that atleast we have speed in vertical plane.
2. Motor is hanging and Gravity is causing vibration on it, hence we need to work out a better positioning of our motor.
3. We had a hard time figuring out way to get on of Control out of the Grbl board.