Categories
Uncategorized

2D to 3D to 2D

Parts

There comes a time when every designer who designs things in two dimensions that get assembled into something that has three dimensions wants to have a diagram with some… dimensions.

Above is a dimensional illustration of the parts of the mount for the shaft for the machine I am building.

If I were to provide assembly instructions I’d probably want such a drawing. Here are some notes on the process, so I can do it again next time.

Parts in Inkscape

In Inkscape, each piece must be an object. The ‘holes’ cannot be separate objects, but must be cut out (differenced) from the main object. (This is the same method needed when bringing a 2D drawing into OpenSCAD, so nothing new there.)

Sadly, Rhino cannot import SVG files. (Mini-rant: I’m always surprised at the number of applications that do not support SVG. The SVG specification has been an open standard from the WC3 since 1999!) Rhino can import PDF files, so export your Inkscape file as a PDF. Your PDF should be a vector PDF, by default. Inkscape should do the right thing unless you’ve done something silly to your file. (Which is possible, I’ve done it.)

Parts in Rhino

Our vector file is now in Rhino! Double-check to make sure each line/object did not get doubled-up. I’ve had it happen a few times but could not conclusively determine what causes it. It may be the width of the stoke of the objects in Inkscape.

You can now extrude your object(s) in Rhino. I make them the height of the material I am using. Oh, I’ll be laser cutting these pieces with 4.45mm acrylic. YMMV.

Solids in Rhino

Change the view in Rhino from wireframe to solid and you’ll see your new 3D object(s)…

Extruded in Rhino

Make sure the holes are really holes! If not, re-read the part above about objects and holes and such. You need to difference any cut out things!

Make2D in Rhino

Now you can move your new object(s) because the original vector lines we imported in are probably sitting right underneath them. Swing your object(s) into the view you want… get that angle just right, and then choose “Make 2-D Drawing” from the “Dimension” menu.

2D from 3D

You should now have a 2D version of your 3D object. Rhino should also select it by default, so you can use the “Export Selection” menu to save it out as… A DXF file. :( Sadly, Rhino cannot export as an SVG or vector PDF, or even an EPS file. Rhino can export as an Illustrator file (.ai) but Inkscape cannot open those. The AI file it exports starts with “%!PS-Adobe-3.0” which is probably a format from that was popular in the 1990s.

3D/2D in Inkscape

Anyway, we can certainly import that DXF file back into Inkscape and work with it, and make it look like a nice vector drawing. Mostly. Sort of. I mean, if you want to just fill it with a color or change the stroke, it’s not quite that easy. If you just want a line drawing that isn’t too fancy, mission accomplished!

Oh, and not that I want to turn Inkscape in a 3D application, but I could see great value in being able to extrude and change the view angle of a vector drawing… maybe through an extension?

Note: Lots of comments about this post are on Facebook.

Categories
Uncategorized

Just a Gear

Imperial Gear

I find it interesting the way we address problems. Take for instance, this simple gear. For the Prusa i3 printers we are building at school we realized we didn’t have 8mm bolts, so we got a bunch of 5/16″ bolts, and then we realized we needed to print new gears…

Calvin started to edit the STL file we had, and I asked if he looked around for an existing 5/16″ compatible gear on Thingiverse. He said he didn’t even think of doing that, and got right to modeling. Sadly, Calvin’s new gear was slightly too small. The next day I mentioned it to Fred, and Fred decided to fix the gear. I told Fred that it might be helpful to just model the new bolt-head part and print it to see if it would fit. This has the advantage of printing much faster than the entire model. He took that advice, but it still didn’t fit.

Meanwhile, I found a gear generator library for OpenSCAD and tried to model a new gear, but that failed as it wasn’t fully parametric in regards to the number of teeth.

After all that, Fons came along and said “I’ll just put the hex head of the bolt on the grinder until it fits the gear that Calvin made.” Duh! A great hack to make it work!

While I loved the hack, I also wanted to make sure that others could easily have a gear that worked with a 5/16″ bolt and did not require grinding down the head. I’m also preparing for the future when a part fails, and someone needs to replace it, and doesn’t realize the bolt was altered, or heated with a torch to get it into place.

So I followed my own rapid-rapid prototyping advice, printed a few versions of just the hex head part until it fit perfectly, then dropped it onto the model of the gear, and printed a few. And they worked.

And then I uploaded the gear to Thingiverse and Youmagine in the hope that someone else who has the same problem in the future can just grab the one I created and get on with their day.

Sharing, it’s a thing.

Categories
Uncategorized

It’s a QWERTY Keyboard

QWERTY Keyboard Rendering

I’ve always been fascinated by typewriters. I find them to be curious machines, and their history is no less interesting. (Go on, take a look!) Of course I’m also fascinated by digital technology, and how it empowers people to creating things. Above is a rendering of a QWERTY keyboard, and below is an actual QWERTY keyboard I created using digital fabrication and a tiny computer called a microcontroller functioning as the “brain”.

QWERTY Keyboard

The keyboard is fully-functional. Plug it into the USB port of your laptop or desktop computer and you can start typing. Of course you can only type the letters Q, W, E, R, T and Y… but it does work. Like all of the things we use, it has limitations. Like all of our technology, it doesn’t do quite all of what we’d like it to do.

QWERTY Keyboard

The QWERTY Keyboard is made from wood. (Just like the early prototype of the Sholes, Glidden & Soule typewriter seen below.) My father was good at working with wood, and his father before him was probably even better at it. I am not that good at working with wood, but I am good at creating things digitally. There is perhaps an inverse skill scale at work here. Are we losing the ability to craft real-world objects in exchange for creating digital objects? Maybe digital fabrication is the answer, bridging the gap between the two.

Sholes, Glidden & Soule typewriter

The Sholes, Glidden & Soule typewriter is a weird looking device, as is my QWERTY keyboard. I think there’s a place in the world for both of them, and perhaps a place where the two can meet.

QWERTY Keyboard

For more information on this piece, visit the QWERTY Keyboard project page. There are more thoughts and more photos, and as always, I welcome your comments.

Categories
Uncategorized

Turntable Lathe(ing!)

Lathe

Just a quick follow-up to the previous shaft post… I cut the shaft to length on the horizontal band saw, and then chucked it in the lathe (and had Frankie do a quick check before I started) and then cut down the other end so the bearing would fit. It’s not perfect, but close enough. I’ve still got some of the shaft left if I need to make another one. The main thing is, I got some good experience using the lathe, which will come in handy if I end up turning my own knobs to fit on the potentiometers.

Shaft

One bad thing… we had thought the shaft was steel and would work well for the magnets I plan to use, but… it’s not magnetic! I’ll probably end up drilling (er, lathing) a hole in the shaft to thread a steel bolt into so I’ve got some material I can stick the magnet to.

Categories
Uncategorized

Turntable Electronics

Electronics

I finally got the electronics for my Turntable Drawing Machine working. It wasn’t easy…

I decided to use a DC gearmotor controlled by an Arduino and potentiometer for the speed. I did a quick test of this with a Leonardo and a DRV8835 Dual Motor Driver Shield for Arduino. It worked fine for controlling the speed of the motor, but I didn’t really want to use the shield, so I used a DRV8835 Dual Motor Driver Carrier I had on hand. (Since I’m only using one DC motor, I probably could have used a DRV8838 Single Brushed DC Motor Driver Carrier.)

Pololu has an easy-to-use Arduino library for the DRV8835 Dual Motor Driver Shield which worked fine for the shield, but doesn’t (I mean didn’t) work with the DRV8835 Dual Motor Driver Carrier. I ended up hacking the library a bit to make it work. All was well until I added a servo. Since the Arduino library for the shield is hard-coded to use pins 7, 8, 9 and 10 there’s an issue because the default Arduino servo library disables PWM control on pins 9 and 10. I then changed the library to not use pins 9 and 10, but that still didn’t quite work… Seems that the servo library and the motor control library both need to use timers, so there’s some weirdness there…

I ended up digging through the forums and eventually found some useful posts and a link to ServoTimer2.zip. (It’s worth noting that there are a number of ServoTimer2 libraries, but I tried this one and it worked.)

Once I had the ServoTimer2 library in place, getting it to work with the my hacked ‘DRV8835DualDriver’ library was simple. (I’m saying “simple” but it took a few hours of screwing around with things that should have worked but didn’t) If I had used one of the Arduino Megas I had lying around, I probably could have avoided some of the issues the Servo library causes.

Alright, well… electronics seem good! Next step is to build things, and get the turntable portion constructed to test if the DC gearbox will work out. I think it will, as it’s got plenty of torque, and there shouldn’t be much resistance.