Polymythic

Tag: technoPHILE

3-D Printing: Thought to Thing at Lightspeed

by on Oct.07, 2012, under technoPHILE


Intro

Imagine a world where anytime you needed an item, you would just download a drawing of the thing from the web, or draw it yourself, feed it into a machine, and you’d have it.  Well, we’re just about there (within reason of complexity and materials).

For several years a revolution in prototyping/manufacturing has been going on through various techniques of 3-D Printing. That name is often confusing to people who quickly envision printing 3-D images (needing 3-D glasses) with a 2-D printer.  While that may be cool, this is way cooler.  Way, way, cooler.  This is 3-D building.  I will continue to call it printing, but it’s actually building up the object so you finish with a tangible REAL item.

The machines needed in years prior required big dollars and were relegated to corporations and individuals like Tony Stark (that’s Iron Man, for those whose fingers may be off the pulse of contemporary films).  Hobbyists had also been hacking away to bring this technology into their garages.

A while back, some of my friends and I attended a build session at HacDC for a machine called a RepRap.  <tangent>This is a 3-D Printer whose intent is to eventually print itself.  Collect the pieces of your brain off the floor and walls and come back to me </tangent>.  It seemed that the 3-D hobby space was coming a long way…and fast.

Disclaimer: I am going to try to keep this whole deal simple for beginners.  I am not going to talk about support material and overhangs,  talk about stepper motors, etc.

Simple Concept: This is not like starting with a block of something like wood and carving, filing, or drilling it out to shape it.  That is a subtractive process.  This is an ADDITIVE process: building up.  The 3-D printer I will be discussing heats up a string of ABS plastic (stuff LEGOs are made of) and pushes it through a little nozzle (fancy name: extruder).  3 motors put the nozzle in the right place (one motor per axis: X, Y, and that glorious new Z).  Now, how the hell does it do that?  I am going to take a liberty that some people will flag me on, but this is for beginners.  You know when you hold a relaxed slinky and it is a cylinder?  If it had a base under it then you would have a leaky cup, right?  BUT, when you uncoil it, it’s a long string of plastic.  That’s kind of how it works.  (Note: the 3-D printed cups don’t leak though)

When MakerBot industries released their 3rd generation 3-D printer the Replicator, it was go time for this hacker.  By the way, this was funded by some of the proceeds of the HALO project (thanks again Humana and Instructables.com!!!)

Making a 3D Model:

I am going to take you through the process of making a scale staircase for my model cities I have put in previous posts.  Making them through other means was a major pain!

Actual completed stair model

3-D Printed Stairs - All Views

Just like virtually every other aspect of this stuff, 3D Modelling is a topic in and of itself.  There are many tool alternatives out there.  I use SketchUp (used it to model my basement, logos, and of course stuff to print).  It consists of creating a series of lines, called “edges”.  Once these edges create a closed shape, you’ve created a “face”.  Point A->B is a line (edge).  Point B->C is now an angle (or a line with a hinge)  Point C->back to A.  TRIANGLE…et voila! A close shape also known as a “Face.”

Edges being drawn for the stairs

Face has been created

Once you have a “face”, you can push or pull it in the tool to make an object of depth.  Like if I took a circle and it left a trail in the air, if I lifted it straight up, it would make a cylinder.  You can then export the 3D model into a file format called a .STL file (note: using an external plugin you will have to install).  I see your eyes closing…  Look, all those points we made to describe edges and faces are captured into a file as x,y,z positions.

Push/Pull of Face to create depth

3-D Model into Tool Commands:

The tool software for my machine (ReplicatorG) takes the 3-D STL model and starts generating the way the extruder should move to make that object (starting from the bottom up).

STL model in ReplicatorG software tool

It “slices” that model up into thousands of 2-D cross-sections.  Like if I were to take a cross-section of an orange at the base, it would be a small circle.  In the midpoint, a large circle, and as I approach the top, smaller and smaller circles.  This is what is going to be printed.  These concentric circles in our orange case are what the extruder is going to lay down in plastic through a “go from here to there” language called G-Code.

Example of this somewhat cryptic stuff:

 M103 (disable RPM)
 M73 P0 (enable build progress)
 G21 (set units to mm)
 G90 (set positioning to absolute)
 G10 P1 X0 Y0 Z0 (Designate T0 Offset)
 G10 P2 X33 Y0 Z0 (Designate T1 Offset)
 M109 S110 T1 (set HBP temperature)
 M104 S220 T1 (set extruder temperature) (temp updated by printOMatic)
 G55 (Recall offset cooridinate system)
 G1 X-2.0 Y13.65 Z0.14 F3360.0
 G1 F1200.0
 G1 E11.53
 G1 F3360.0
 M101
 G1 X-2.0 Y27.82 Z0.14 F2214.0 E12.145
 G1 X-1.6 Y28.22 Z0.14 F2214.0 E12.17

G-Code to Object

The Replicator heats up to the prescribed temperature based on the material to be used (again, its ABS LEGO-stuff plastic).  Following the G-Code “go from here to there” instructions, it lays down the plastic on the build platform creating the bottom of the object.  Once the first layer is done, the machine drops the platform down just a teensy bit, and does the next layer…and again..and again.. and we’re building up an OBJECT IN 3-D!!!!!!

Object

The machine does not necessarily fill in the whole object.  You can configure it to just lay in a honeycomb pattern so you still get rigidity and use less material.

Note honeycombing to right of stair edge

Once the build is complete, you can pop it off the build platform, and you’re holding a REAL, 3-D durable plastic object.  There is a website called Thingiverse where tons and tons of items are free for download and where you can contribute your models back to the world.

Some of my other custom models I have made/modified

Summary:

The awesomeness of this fabrication technology cannot be overstated.  For a prototyper/tinkerer like me, it’s like having access to splitting an atom.  It’s a game changer.  It’s the future in all of its promise and peril.  As you let your mind run out to future states you can envision custom-fabricated limb-replacements on demand, or armies of printing robots reproducing and taking over the globe.  We’ll see where we end up, but either way, this is some fascinating technology.  Now, time to go install that coat hook by the door.  Oh wait, I have to print it first…

Stairs all built up and ready for use

Leave a Comment :, , , more...

HALO – Haptic Feedback System for Blind/Visually Impaired

by on Dec.12, 2010, under technoPHILE

Mols takes the Halo for a spin.

Complete Build Instructions:

Please visit www.instructables.com for the complete build instructions and story.

Highlights/Features

– Approximate 4 feet of range

– Variable haptic sensation (frequency and intensity of vibrations increase as range decreases)

– Just over 180 degree field of view from 5 Parallax Ping))) Ultrasonic Rangefinders

Background

I have recently been introduced to some new and interesting people with passions for ideas and a belief that our power to be creative with technologies can really make a difference in the world.  I used this as a springboard to create the H.A.L.O. This stands for Haptic (meaning touch) Assisted Location of Obstacles.  I had watched an episode of “Superhumans” which featured a blind man who used a series of clicks, like a bat, to echo locate his surroundings. I got to thinking about other blind people and their ability to navigate freely – perhaps without the use of a guide dog or cane.

The solution uses a series of rangefinders that take input from sensors and output feedback to pulse vibration motors placed on a person’s head. As a person gets closer to an object the intensity and frequency of the vibration increases – it’s directly proportional to the distance of an object. If a region was lacking feedback, then it is safe to proceed in that direction.

Perhaps this can be useful for the visually impaired to have the freedom to possibly move about hands-free without the assistance of a cane or seeing eye dog, or serve as a complementary enhancement to those solutions. Technology has undoubtedly made our daily lives better. By using a few inexpensive components and sensors, I’ve made a device that will allow the blind to navigate their surroundings and avoid collisions.

Great posts and comments over at:

http://hackaday.com/2010/12/17/haptic-feedback-for-the-blind/#comments

http://walyou.com/haptic-assistance-for-the-blind/

http://blog.makezine.com/archive/2010/12/project_halo_helps_you_navigate_wit.html

Photos

HALO and Haptic Headband, with the control package displayed

Wearing the HALO without the Haptic Headband

Wearing the Haptic Headband without the HALO

Arduino Mega 2560, breadboard, LED field, power section, and wiring

The lab in full swing. HALO, microcontroller, and a rats nest of wires.

7 Comments :, , , , more...

Motion Feedback MP3 Trigger

by on Apr.07, 2010, under technoPHILE

I posted over at Instructables a project that uses the Parallax PIR Motion Sensor (yes, it IS that same I used in the Halloween Hack, ye of the clan Observant) to encourage me to be working out. If I am, then I am rewarded with some tunes to keep moving along. However, if I am lazy and take a breather…well….. “No Snoop For You!”

The Parts List:

  • SparkFun MP3 Trigger
  • IO-204 Control Module
  • Parallax PIR Motion Sensor
  • PC Speakers
  • Coffee Tin
  • Drill
  • 6xMachine Screws, and 12xNuts

  • Key objectives here:

  • Try out the SparkFun MP3 Trigger
  • Finally get a project into an enclosure that I think will be good for other people’s projects (this could be the next Altoids contender?)
  • Delve into “Onboard Rules” functions of the IO-204 while offline
  • Assembled parts used in Motion Feedback MP3 project

    Assembled parts used in Motion Feedback MP3 project

    If you want more details, head over to the Instructables post.

    Here is the project enclosure. Admit it, you love you some Maker’s Notebook, too, don’t you? The MP3 Trigger sits snug as a bug in a rug with the machine screws and nuts anchoring it in place. 2 additional ones hold the PIR Motion Sensor to the front of the tin. Getting the larger hole in the front and back was tricky because I did not have a great pair of snips around. I’ll know for next time! I did manage to wear through several Dremmel bit tips in my stubbornness of using the wrong tool for the job.

    New project enclosure idea

    New project enclosure idea

    Here she be all wired up. Note, she AIN’T wired to the LAN, so this is using the “Onboard Rules” feature. If I did want to datalog the session, I would have to plug in to my router (which in this case really is not more than 10 feet away).

    Top View of MP3 Motion Feedback MP3 Player

    Top View of MP3 Motion Feedback MP3 Player

    5 Comments :, , , , , more...

    Half Hour Halloween Hack

    by on Oct.30, 2009, under technoPHILE

    Skull furious you have entered his space

    Skull furious you have entered his space

    Halloween came out of nowhere this year for me. I have not had the time to do much of anything having just moved into a new house, so I took it upon myself to quickly whip up something to get into the Halloween mood. I was at a local store and saw these little foam skulls for $1.50 and grabbed a couple.  Its fun to see what can be made quickly, and now I have something to put outside when the trick-or-treaters arrive.

    The materials:

    Parallax Infrared Motion Sensor #555-28027

    ioBridge Control Module + Servo Smart Board (or arduino + motor shield, if preferred)

    Hobbyist Servo

    Resistor

    Glue Gun

    Mini-breadboard (I used my arduino protoshield from adafruit)

    Some wire

    2 Red Leds

    Sharpie

    Foam Skull

    1 Sock (yeah, the hood is a black sock)

    The object here was to simply make the skull do something when someone approached. I know this is FAR from original, but hey, I was pressed for time (and want to show that simple projects are really accessible to ANYONE) and didn’t want to do much planning. So, the project was born.  I know I am not breaking any new ground here, but it didn’t detract from my bliss at annoying any co-worker who stepped in my office for the last 2 days.  It did make the meetings more fun when the skull open his mouth to speak whenever a colleague would adjust their chair!

    Steps:

    Foam skull purchased for $1.50.

    Foam skull purchased for $1.50.

    1- Took a saw to the lower jaw of the foam skull to detach it.

    Lower jaw has been sawn off so it can be hinged

    Lower jaw has been sawn off so it can be hinged

    2- Bored 2 holes through the eye sockets out the back of the skull to run the LEDs and wires through

    Bored 2 eyes into sockets to run LEDs into.

    Bored 2 eyes into sockets to run LEDs into.

    Testing that the LEDs are working and solder joints didn't break when inserting into skull.

    Testing that the LEDs are working and solder joints didn't break when inserting into skull.

    3- Attached 2 long wires to the LED leads (drop of solder on each lead)

    4- Whipped up a little rig for the servo and skull to sit on

    5- Glue gunned lower jaw onto servo rig

    Used glue gun to affix lower jaw.

    Used glue gun to affix lower jaw.

    6- Used sharpie to color in jaw (previously white because of styrofoam) and teeth.

    7- Ran wires appropriately: (Digital Output – Eyes, Motion Sensor – Digital In, Servo Smartboard -Channel 1)

    ioBridge wired up.

    ioBridge wired up.

    Parallax Infrared Motion Sensor #555-28027

    Parallax Infrared Motion Sensor #555-28027 on a protoshield from adafruit.

    8- Set up messaging and triggers on ioBridge (or read digital input and write outputs if using arduino)

    Note: I was actually unaware that the messaging and triggers for ioBridge were there, and they are easy to use (basically following the mantra of the platform).  For an arduino, a simple read from the digitalIO and write to a PWM output using the servo library would do the trick, no problem!

    Mouth closed.

    Mouth closed.

    Mouth opened.

    Mouth opened.

    9- Put sock over the skull

    Skull with hood (not a gold-toe).

    Skull with hood (not a gold-toe).

    10- Annoy co-workers or greet tricker treaters.

    HAPPY HALLOWEEN!

    3 Comments :, , , , , more...

    Solar-Powered Temperature Sensor

    by on May.18, 2009, under technoPHILE

    Solar Powered Temperature Sensor

    In case you’ve not heard, there is a Green Revolution in progress.  To quote a popular commercial, “The way we use energy now can’t be the way we use it in the future.  It’s not conservation, or wind, or solar.  It’s all of it.”  I have long kept a solar-energy project in the back of my mind, so I ordered a 12v/.2A solar panel power supply from a vendor (note: I erred while filming and said it is a 2A panel.  It is a .2A panel).  As a first step project, I figured I would power up my Arduino, use my shiny new XBee modules, and relay some sort of meaningful data back from this wireless solar-powered microprocessor.

    How is the weather outside today?  If I am getting data, its sunny!  And 65 degrees on my deck according to my newly built solar temperature probe.

    XBee Communications

    I did some first-steps using 2 Arduinos communicating over the default broadcast configurations over a span of about 2 feet.

    The Salt and Pepa of the Arduino world.

    The Salt and Pepa of the Arduino world.

    Arduino 1:  “Yo.  How you doing?”

    Arduino 2:  “Fine thanks.  Wow, we are talking wirelessly.”

    Arduino 1:” These are great days we’re living in, man.”

    Arduino 2: “Now, if only I could unhook from this power cable.”

    I settled down Arduino 2 after his diatribe likening himself to Pinnochio, and told him that I would take care of it.

    Detail of an XBee wireless communication module

    Detail of an XBee wireless communication module

    XBee Modem off of the adapter board

    XBee Modem off of the adapter board

    Serial Communications

    After getting the Arduino twins talking (and hey, its all serial!) I grabbed my ioBridge and slapped on the Serial Communications smartboard.  In about 1 minute, I had my ioBridge chatting with my Arduino.  Sweet….  Now, on to untethering my Arduino.  “I got no wires…to hold me down… la-la-la-la”

    The Wireless Temperature Probe


    I ran out to Radio Shack and picked up the right barrel plug adapter, and added some wires to run into the Arduino.  Note: the jumper must be set on the Arduino to take power from external.  My Solar Panel provides 12v, and the Arduino can take power up to 12v.

    XBee hooked up to temperature sensor

    XBee hooked up to temperature sensor

    Temperature sensor

    Temperature sensor

    I used the temperature probe that I had from my ioBridge, crafted a quick sketch (see below) on the arduino (the analog scaling factor may be off since its not precisely linear, but c’est la vie) and waited for the sun.  As soon as I plugged it in, the Arduino woke up, lights blinking, and was soon processing and wirelessly communicating!  All this achieved because of energy provided by that flaming ball in the sky.  Now that’s cool.

    A quick run upstairs onto the ioBridge dashboard and guess what?  The serial monitor widget was telling me what the temperature is outside.  65.31 degrees Farenheight.  Wirelessly and without another power source…

    ioBridge and Serial Smartboard hooked up to XBee module

    ioBridge and Serial Smartboard hooked up to XBee module

    A nice springlike 65 degrees outside at the moment.

    A nice springlike 65 degrees outside at the moment.

    Conclusion

    Now that I have a solar powered wireless microprocessor at my disposal, I am thinking of giving it some legs, and onboarding some Artifical Intelligence.  Its top priority could be to take over the world.  Take some solace in the fact that the processor is 1KB of RAM, 512 bytes of EEPROM, and runs at a “blazing” 16 MHz.  If that’s not enough, then know that all you need to do to shut down its diabolical scheme is stand over it and block the sun.  Hmm.  Perhaps its better served as  a temperature probe….. for now…

    Sketch for Arduino

    #include <NewSoftSerial.h>
    
    NewSoftSerial xBeeSerial =  NewSoftSerial(2, 3);
    
    void setup()  {
    
      // Initialize the on-board LED
    
      pinMode(13, OUTPUT);
    
      //Initialize the HW serial port
    
      Serial.begin(9600);
    
      Serial.println("Ready to send data:");
    
      // set the data rate for the SoftwareSerial port
    
      xBeeSerial.begin(9600);
    
    }
    
    void loop()                     // run over and over again
    
    {
    
      //Read from the analog input from analog pin 0
    
      int tempValue = analogRead(0);
    
      // Send the message to the XBEE Transmitter
    
      xBeeSerial.print("Time: ");
    
      xBeeSerial.print(millis());
    
      xBeeSerial.print(" Value:");
    
      // Do scaling ~6.875
    
      float scaledValue = tempValue / 6.875;
    
      xBeeSerial.print(scaledValue);
    
      xBeeSerial.print("\n");
    
     // Update every 2 seconds
    
     delay(2000);
    
    }
    14 Comments :, , , , , , more...

    Arduino/ioBridge Airsoft Target Range

    by on Jan.20, 2009, under technoPHILE

    Indoor Airsoft Shooting Range

    httpv://www.youtube.com/watch?v=CL8V2lk75G4

    A friend of mine who is something of an avid shooter had mentioned the lack of affordable “action” type targets.  After some discussion, we determined it would be fun to build such a contraption for some indoor airsoft practice.  The Arduino Diecimilia was a great choice for the “programming side” of things (I have 2 of them, he has one as well).  

    As a shooter, you would want to be up-range from the targets, so having something portable with a web interface was a great solution so nobody would have to be “in the line of fire”.  The iPod Touch and the ioBridge module I used in another recent project.  Of course, why build a custom target enclosure when I could snap one together with my Construx.  

    Victory!  Let the fun start!

    Victory! Let the fun start!

    I used 3 of my hobby servos to turn the target faces. I am tightening the Construx frame to the hobby servo mount.

    Building the target faces

    Building the target faces

    Arduino Pin-Outs:

    • Pin 13 – Debug LED
    • Pin 12- Ready for Command
    • Pin 11 – PWM for Servo 1
    • Pin 10 – PWM for Servo 2
    • Pin 9- PWM for Servo 3
    • Pin 8- Incoming Command Pin (PWM from IOBridge)
    • Pin 7- Command Waiting from IOBridge
    • Pin 2- Peizo Speaker Control

    Not to mention the ioBridge wiring, and the Servo wiring. Yeah I have a diagram or I would STILL be working on it. 

    A rats nest of wires for the first pass

    A rats nest of wires for the first pass

    Debugging the system 

    Debugging the system

    It looks a monstrosity, but once the target face is on it, I cut up some cloth as the Airsoft BB trap, it will look just fine. 

    All done, ready to rock!

    All done, ready to rock!

    System debugged, targets turning!  Now I can call out the programs remotely using the web browser in the iTouch and let the IOBrige tell the Arduino to do my bidding.

     

    How the Airsoft Target Range Was Built


     

    Arduino Source Code: Arduino-ioBridge-Airsoft-Source-Code.txt

    I would say this was a fun, interesting, and rewarding project.  I have also made it future-proof enough to scale up the number of targets for even more options.  For those of you airsofters who don’t want your skills to dull over the winter, turn your basement into a range!  

    Now, should I put hay-bales on a servo platform for an indoor archery range?

    Happy tinkering!

     

    Full Video Version (Combined Demo + Instructions)

    40 Comments :, , , , , more...

    Serv O’Beer

    by on Dec.31, 2008, under technoPHILE

    With New Years fast approaching, I wanted to make a project that allows for the perfect pour and take out all of that physical work. Using Construx as the mechanical platform, a servo driving the action, and ioBridge controlling the system, I was to achieve “the perfect pour” controlled with the turning of my iPhone (using the accelerometer feedback determing the screen orientation). We’ve all seen the iBeer application on the iPhone, and now I can actually enjoy the IPA rather than just virtually pouring!

    UPDATE:

    The information about this project can be found at Instructables.com including steps to make it. Also, you will see the project was picked up at Gizmodo, Engadget, ioBridge Projects, and the fine folks over at MAKE.

    15 Comments :, , , , , more...

    Looking for something?

    Use the form below to search the site:

    Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

    Visit our friends!

    A few highly recommended friends...