- 1. project description
1.1. Project description:
For my final project I made a knife and a cutting board. Through a front and a rear accelerometer, the knife senses the cutting motion and sends input through serial. This input is visualized in Processing and projected back to the cutting board. The user can also toggle between different visualizations by using a button on the knife. These three "modes" are also indicated by the color of an RGB LED which is also embedded in the knife. For this project I had the opportunity to use a lot of the topics that we covered throughout the semester: molding and casting (for the knife handle); computer controlled machining (for the cutting board); embedded programming (for the LED and the Button); Input devices (for the accelerometers); interfaces and applications (for the visualization).
Figure 1: The setup and components of my final project
In order to design the knife handle I needed information about the design blade. I used an old knife, which John DiFrancesco drilled open for me. I reproduced the design of the blade in Rhino using a photograph of the blade and reference dimensions. The blade was a little rusty, but it was nothing that some Coca Cola (!) could not resolve!
Figure 2: The knife blade
Once I had information about the blade I proceeded to the design of the handle. Because of the z-axis direction of the accelerometer that I was using, the circuit board had to be horizontal. This posed an interesting design constraint which I really enjoyed resolving. Initially I also designed a top for the knife so that the board would be invisible. However, after many iterations in the process, because of its very thin dimensions, I could not resolve it succesfully and had problems when casting it. I therefore decided to leave the circuitboard exposed. Consecutively, I designed the board so that the knife "sits" exactly in it.
Figure 3: Designing the knife handle and the cutting board
1.3. Making the molds for the handle:
Using my Rhino OS 3d model, I created the molds for the knife. I milled them in pink 2" thick Foam using a 0.25" Endmill in the CBA ShopBot. After smoothening the surface of the molds with a heatgun, I made the flexivle molds with ooMoo. In retrospect I think that I should have taken the time to use a smaller endmill or a smaller stepover (I used 40%)given the size and detail of my mold. For example, even the small spheres that I used to align the two part molds, were dimensioned differently in the milled foam mold probably because of the resolution of my settings.
Figure 4: Milling the molds for the knife handle in the CBA Shopbot
Figure 5: Samples from Reynolds advanced materials in Boston - I selected Smoothcast 326
After making the ooMoo flexible molds I cast them with a clear plastic that I chose after a very educational visit at Reynold's advanced materials, with Sarah Hovsepian. The plastic could be pigmented and cured quite fast (1 hour) which made it a good choice for what I was planning to do. I cast the mold with the knife blade inside. The first attempts using the two part mold so as to create an inset at the top of the knife for the circuitboard were unsuccessful - there were a lot of airbubles that I could not take out and the material was very weak at the lid. I therefore had to melt the plastic away using a heatgun so as to be able to reuse the knife blade. After using the bottom mold only and not having the lid, the result was much better.
Figure 6: Casting with Smoothcast 326
1.4. Milling the cutting board in the ShopBot:
I milled the cutting board on 3/4" Plywood that I borrowed from Robert Hemsley(thanks!). I used Partworks 3D for the knife inset toolpaths and Partworks 2D for the cutout and pocket. The process was a little troublesome, because of a problem with slight changes in Z across the cutting bed. After three unsuccesful attempts I finally got my board milled.
Figure 7: Milling the cutting board in the Shopbot
The main component that I used was the MMA1270KEG Z-axis accelerometer. I also used an RGB and a Button. I connected them to an ATTiny 44 microcontroller. The design of the electronics was a challenging but very rewarding process in many ways. These were:
a. Designing the accelerometer in Eagle using the datasheet.
Figure 8: Designing a custom eagle part
b. Making the circuitboard schematic in Eagle using the proposed pcb diagram from the datasheet. In this schematic I also included an LED and a button.
Figure 9: The circuirboard schematic in Eagle
c. Routing the board so that it is as thin and long as possible. This took numberless attempts of routing and ripping up traces, as well as three 0 ohm resistors until I got all the connections that I needed. Moritz' help was invaluable in this step. After having the traces I adjusted the outline of my board so that it fits exactly on the knife handle that I had designed.
Figure 10: The board with all the traces (finally!) routed
Figure 11: The board cut-out at the shape of the knife-handle top
I milled and stuffed the board without trouble (... the second time). The first time after I had completed the process the board was not working - with the oscilloscope we saw that there was not enough resistance in some of the traces. After checking the datasheet again I realized to my horror that I had reversed the VCC and GROUND pins when designing the custom bit. Frustrating but nothing that an afternoon of work could not fix.
Figure 12: Milling the board in Roland Modela; The outline fit perfectly in the mold
And here is the final result! A knife communicating to the computer through an FTDI cable.
Figure 9: Schematic in Eagle PCB software, based on the connections of the given sound sensor board
Moritz helped program the microcontroller using C. The code included some modifications of Neil's existing examples. The microcontroller listens to the two accelerometer pins and outputs them in Serial. Also, according to the state of the LED which is controlled by the user through the button on the board, the microcontroller also saves a "Mode" in serial, which I then use to decide which visualization to display.
I used processing in order to write the application and enjoyed it a lot. I designed a series of icons which are displayed on the board and are related to the kind of food that one would be expected to chop in a specific way. The mode 0 (red) only displays my name and project data, mode 1 (blue) provides the user with graphs of the sensor readings and the number of chops, while mode 3 allows for distinguishing between different cut motions based on the discrepancies between the front and rear accelerometers. One thing that remains to be corrected is the speed. Serial reads at 38400 baud to be sensitive enough to the accelerometer data but this causes problems in the speed of my visualization. I hope to resolve this small bug by tonight or tomorrow.
2.1. Tutorial at the CBA:
On Tuesday morning John Difrancesco and Tom Lutz showed us how to use the Konica Minolta 3D Digitizer, with the Geomagic software. I brought a wooden mannequin for testing. We decided to scan only its legs for demonstration. The result was very good besides the initial anxiety about the model moving while the table was rotating during the multi-shot scan. Tom also showed us the NextEngine 3d Laser Scanner, which he used to scan a matchbox. Compared to the Minolta, the scanner is slower with relatively worse software support (ScanStudio HD). Below are some snapshots from the tutorial.
Figure 9: Left - testing the Konica Minolta Digitizer with a mannequin; Right - testing the Next Engine 3d Laser Scanner with a matchbox
2.2. Artist's mannequin with Hand Held Z-Corp 3d Scanner:
After having tried the mannequin at the Konica Minolta with John, I decided to use the Architecture Shop Hand Held Z-Corp 3d Scanner, which comes with the ZScan 3d Digitizing Software. The Scanner requires the following steps:
1. sensor calibration with an image that comes with the scanner package
2. sensor configuration with the object which is being scanned
3. positioning features scanning; these are the white stickers that you see in the image below. They are used to create a coordinate system for the scanner in relation to the geometry of the object
4. object scanning
Figure 10: The mannequin covered with stickers which operate as positioining features
Figure 10: Snapshots from the ZScan Environment - Left: scanning the positioning features; Right: Scanning the object
Figure 11: The .stl model from the mannequin scan with the ZCorp hand-held 3d scanner
I tried two times but the result that I got was not satisfactory for the entire figure. Some parts of it were scanner smoothly and accurately but other parts were left open although I persistently tried to fill them in while scanning. One problem was the metal rod that was holding the mannequin which was occasionally shooting off reflections causing noise in the scan.
2.3. Artist's mannequin with Konica Minolta Digitizer (take 2):
In my second attempt at the Konica Minolta, the attachement of the mannequin to the vertical metal rod had become even looser, causing the object to move while the plate was rotating. Although the indvidual scans were very good, the stiching between them became very problematic.
Figure 12: An .stl model from the Konica Minolta Digitizer; the motion of the model during the scanning caused problems in the stitching of the pieces
2.4. Artist's mannequin with Konica Minolta Digitizer (take 3):
This time I made sure to change the position of the mannequin so that it is more stable and to put some hot glue at the point where the supporting metal rod meets the mannequin. The result was much better.
Figure 13: The .stl model from the mannequin scan with the Konica Minolta Digitizer
1.5. Russian Doll with Konica Minolta:
After having scanned the mannequin I scanned a Russian Doll thatn I have had since I can remember myself. I used 90 degrees multishot scan, which came out good. I used geomagic to patch some minor holes.
Figure 14: Scanning and using the Geomagic Software at the CBA shop
Figure 15: The .stl model from the russian doll scan with the Konica Minolta Digitizer
On Wednesday morning John and Tom gave us a tutorial on how to use the laser cutter. Here is a transcript of the notes that I kept along with some tips from personal experience.
3.1. Safety first:
It is quite usual to see a small flame when the laser is cutting the material. If a small flame worries you then you can open the lid and cover the flame with a piece of acrylic. If the flame is big or the material catches on fire then you open the lid, close the air valve and call 100.
3.2. How to put the material on the laser bed:
The origin point is the top left corner. Make sure your material is the right size; in the Universal Laser Cutter at the CBA shop the bed is 32*18". You might need to use some tape to attach the material to the edges of the bed if it is not completely flat (this is for example very usual with cardboard)
3.3. How to adjust the height of the laser bed:
Use the marked metal rod to measure the height between the cutting tool and the material you have placed on the laser cutter board. Press Z and use the Up and Down arrows to bring the cutting material to the edge of the metal rod. You will know that the height is right when the pin does not let the board to go any further up.
The check button moves to smaller digit precision for height refinements with the up and down arrows. Once you have found the right height press Z again to exit.
3.4. How to send your files:
3.4.1. If you are using Inkscape:
1. Prepare your file and export it in 300dpi. Keep in mind that the white part is the one cut with precision so your offsets are "eating" off the black part.
2. Go to fab > run in terminal
3. Select the Universal laser cutter and define power and speed. Make sure that you set the pulses per inch (ppi) to be less than 500 if you are cutting cardboard. If you are cutting acrylic you can do almost 300.
4. Specify xmin and ymin. This is how far from the top left corner (origin) the machine will start cutting the file.
Hit make .uni
3.4.2. If you are using CorelDraw (Windows):
1. Import your file
2. Make sure all your lines are Hairline (No thickness)
3. Optional step: You might want to offset your lines for precision. Go to Effects>Contour and do an Outside offset of 0.005 (or around that) Then do Arrange and break contour group apart.
4. Go to File>Print>Properties and set Power and Speed per color
Press Set to register your changes
3.4.3. If you are using Rhino or AutoCAD (Windows) you can set the speed and power per layer through the print menu. Make sure you SKIP all the layers you do not want to cut and that you select the area you want to cut with a print window and that all your lines are 0 thickness or hairlines. In Rhino you can set the size of the print window and then Move it in the correct spot in the screen. You send your file by hitting print.
3.5 How to cut your files:
Find the right file! If you send multiple files you can navigate through them with the >> and << buttons.
2. Do a test run. It is recommended that you do a test run to confirm that the path is right. Just press the green button <|> while the lid is open.
3. Cut! If all looks fine close the lid and press <|> to cut.