I’ve been working for a while to design a relief from a photo of one of our chickens. Over the break, I managed to get the first modest success! Not done yet, but happy with making progress towards a vision.
The process is a mix of analog and digital. Starting from a photo, using Affinity Designer, I manually created a depth map: first I traced hard edges as a vector layer, wrote down rough heights at various points on a paper, then roughing out a strongly quantized depth image in Affinity Designer, and finally adding some finishing filters to blend the layers together. Here’s the original photo:
After several failed attempts, I finally managed to get a complete run of the dovetail program on the CNC. While Camotics and the stable version of Universal-G-Code-Sender both choked due to the large size of the GCode program, a nightly build of Universal-G-Code-Sender was able to cut it.
Here’s how it came out after the program completed:
The CNC didn’t quite get all the way through the board, due to some basic operation mistakes on my part. It also took somewhere in the area of 5 hours to cut — way too long. Some optimization in the cutting paths would be a clear win.
I was happy to see the stair-stepping on the pin board seems to have worked alright. Now that I see the result, I’m interested to see how the finish might come out moving the two axes together, to get a line segment instead of stair stepping.
After the CNC finished, I used a chisel and small saw to chop out the main pieces from the frame.
I accidentally broke off two out of six of the dovetails, when I chiseled in the wrong order. The correct way, I found, is to first chisel the angle at the cross-grain, and second with the grain. Chiseling with the grain first resulted in the detached dovetails. (edit: the real correct solution, of course, is to orient the grain the other way, so it extends out with the dovetail, which is so obvious now in hindsight!)
After I broke the dovetails off, I wasn’t motivated to keep working to get a perfect fit. I tested the fit here between the dovetail and pin slot on which I got furthest. Still needs more work, but at this point I’ve learned a lot of lessons and got what I want out of the project. I’ll try cutting again in the future and hopefully won’t repeat my mistakes.
Converted to Gcode, and rendered in CAMotics:
Unfortunately my GRBL controller seems to not be responding properly. It somewhat works in Carbide Motion, but can’t run the program for these, and responds with gibberish on connect instead of the usual Grbl version information as prompt. I think a reflash might be in order.
Just finished assembling the Shapeoko 3 CNC. Here’s the very first test run:
The web has changed the way people interact in a profound way. Here are some ideas for web apps, which focus on interfaces for data management and metadata creation.
The great news is that many multimedia functions are now standardized to the point where they work almost anywhere.
While images have long been shareable in a standard format, video and audio have now almost reached a similar point. Most of the major browsers have support for h264 and mp3 in their most recent versions.
This is empowering in many ways. The ability to apply commentary not only to media objects themselves, but to subdivisions of them in space-time is great. Link content to a particular region of a photo, or a specific time range in an audio recording, and the way is opened for more refined research.
The modern state of the web enables better networking than heretofore available, in a more universally accessible medium. The possibilities opened by the ease of writing networked apps with persistent storage and active updates are full of promise.
The figures shown were made using the Paper app for the iPad. It is very pleasant to diagram concepts with.
Figure 1. A geographic view useful for pinpointing specific locations, such as the site of a photograph recorded with GPS. Other content may have no geographic coordinate, but references to it imply a ‘floating’ location.
Figure 2. A grid-and-pin system provides an elegant and readable media index. Pinning an item preserves its location and scale in the grid, while the other items swap into view based on search directives.
Figure 3. Masking regions in a zoomable image interface extends to multiple users in realtime. Avatars provide communicative information about intent and activity.
Figure 4. A graph network in which items are sized based on a cluster identifier, such as a hashtag. Relations between two clusters allows traversing through large datasets while keeping performance manageable for clients.
Figure 5. Users watch the same video concurrently, but not necessarily synchronized to each other. A text-chat like interface enables leaving notes containing not just the content of the text, but the point in the video at which the text began to be entered, the author, and the date stamp of when the entry took place.
Had a chance to nerd some this weekend, building on some code I’ve had sitting around for a second. It’s been a while.
The result looks like:
I don’t intend to take this much further; rather, I endeavored to keep the code simple and small, so that it could be taken in multiple directions quickly. Made using the usual suspects: ODE, SDL (pygame), and OpenGL.
Playing around with processing. These little things are fun to draw. Obviously there is some bug with the white-centered circles, but first iteration.