I was recently looking to set up an environment for Python development on a (new) Windows PC. Historically, when using Python I’ve either used Eclipse with PyDev or just used Linux. But, was this was a Windows PC, and I didn’t want to run Linux in a VM, I wanted a solution that would run native in Windows. However, I didn’t want to install something as “heavy” as Eclipse. After some investigation and some trial and error, I came up with a solution that is centered around the Atom.io editor.
The following is a guide on how to set up Atom.io for Python development:
A few months ago I entered a prototyping competition, The ProtoHype Challenge, with some coworkers. This competition is being sponsored by both TechShop and the University of Pittsburgh’s Clinical and Translational Science Institute. The goal of the competition was to pair people with good prototyping skills (TechShop Members) with ideas for a medical device or biomedical research tool. Ten groups from Pitt provided challenges from which the prototyping teams could submit proposals. Our team was lucky enough to be chosen to prototype our favorite challenge: calibration of commercial motion capture IMUs (Inertial Measurement Units).
A few days ago I tried to update the mass of an off the shelf component in Fusion 360, something I do often in SolidWorks and Inventor, and found that I couldn’t. One of my most often used features in CAD packages (especially when the weight of a design is important) didn’t exist.
The final CAD program we will be looking at in this series is Autodesk Fusion 360. At first glance, Onshape and Fusion 360 are rather similar. Both are a sketch/feature based modeler where you define a 2D profile and then convert that into a 3D shape. Both also offer the ability to create an assembly (or collection of parts) without drawing a hard distinction between a part or assembly file. So what sets Fusion 360 apart from Onshape?
Onshape is the first sketch/feature based modeler we are looking at in this series. To create a part, you create a 2D sketch to define a feature. Subsequent features are then built on top of one another. This is the same modeling paradigm that is used by many professional CAD programs (Solidworks, Inventor). The thing that really sets Onshape apart from these programs is the fact that it is completely web-based.
OpenSCAD is not what most would consider a conventional CAD package. In most CAD programs to create a shape you have to in some form draw or sculpt the desired shape; this is not the case in OpenSCAD. In OpenSCAD shapes are defined by functions and you don’t draw shapes but program them. Each 3D model is defined by a script that is then compiled into a 3D shape. It is after all called The Programmers Solid 3D CAD Modeler.
Before starting the demo for my review of CAD for Hobbyists I had never used PTC Creo Elements/Direct before. Years ago (about 10) I used PTC Pro/Engineer for a short while. PTC Creo Elements/Direct is a decedent of Pro/E. A few years ago Pro/E was renamed Wildfire, later to be again renamed Creo. The standard version of Creo is a parametric feature based modeling program. I had initially assumed that Creo Elements/Direct was a stripped down version of Creo, I was wrong.
In this CAD for Hobbyists series I am going to be comparing four CAD packages that are available for hobbyists: Creo Elements, Fusion 360, Onshape, and OpenSCAD. In order to compare these four packages I am going to use an example project where I create the same simple CAD model in each.
In my previous post in the series I talked about my experience with CAD and some platforms that are available for Hobbyists. What I did not discuss was the history of CAD software and some of the key concepts that may differentiate one platform from another. However, I am not going to write the unabridged history of CAD, if you want to read that, I highly recommend going to Wikipedia and falling down the rabbit hole.
First, what do I mean when I say CAD? CAD, or Computer Aided Design, is a rather broad topic. It encompasses pretty much any software that can be used to aid in the process of designing something. This could range from PCB layout software (such as EAGLE or KiCAD) to a 2D drafting package (LibreCAD, AutoCAD, etc) to a full 3D modeling suite (Inventor, Solidworks, Fusion360, etc). I prefer to think of each of these as ECAD, 2D CAD, and 3D CAD respectively. Based on the content of the first post in the series it should be no surprise that when I say CAD I am referring to 3D CAD, or more specifically a 3D CAD modeling package. It should also be noted that there is an entire other world of CAE, or Computer Aided Engineering, software out there. This consists of specialty automated design and simulation software. While CAD software can be classified under the CAE umbrella, I am not going to talk about much about CAE software in this series.
During the course of my average day at work I’m constantly doing little calculations for some aspect of a design. Most recently I was selecting Pneumatic cylinders for a project and had to constantly calculate the cross sectional area for each cylinder so I could determine the force it would output at a given pressure. I did what any self-respecting engineer would do and fired up excel and made a spreadsheet. In this spreadsheet I made a column of cylinder diameters and another of pressure and from there was able to calculate the force each cylinder would produce. Instead of recreating this spreadsheet every time I was going to need to select a pneumatic cylinder, I decided to create a cylinder calculator.