Browsing Category: "electronics"

Solder Paste Stenciling Tutorial

April 6th, 2011

When it’s time to mass produce your PCBs, you’ll no doubt want to start working with SMCs — surface mount components — as a replacement for the through-hole components you’ve been using. The most effective way to solder SMCs to your PCB is through the use of a reflow oven.

Before any of that happens, though, you gotta get the solder paste on those tiny pads! Bob from SparkFun Electronics shows you how in this short tutorial video.

Arduino-Processing Serial Communication

April 6th, 2011

Over the last few weeks I’ve been messing around quite a bit with the Processing programming language. I was drawn to it initially because it is a close cousin to the Arduino language and programming environment (which is based on Processing), so naturally I wanted to find a way to combine the two in a project.

Background

What I had in mind, of course, was an outlandishly-complicated, full-screen Processing user interface, with dials and button and knobs and sliders and big maps and graphs of data readouts and a little videoport showing the view from the Kinect-based eyes of some hardy Arduino-powered robot as it trundled bravely into the caldera of a smoking volcano.

Rip and Burn Checklist — Already know your way around Processing and Arduino? Here you go.
  1. Download and install controlP5 GUI Library for Processing.
  2. Download SliderSerial_Arduino.
  3. Download SliderSerial_Processing.

But alas, I thought it would be better to start small — with one little graphical slider control, one Arduino, and one LED. The slider would command a brightness level for the LED, serial communication would do the talking, and pulse-width modulation (PWM) would do the legwork. In my quest for the ultimate ready-made user interface, however, I did stumble across the awesome-looking and fully-featured controlP5 GUI library for Processing.

Read more »

The New Industrial Revolution

January 31st, 2010

Make Magazine

For the past few days, I’ve been jumping-out-of-my-shoes excited from reading the cover story of the February 2010 issue of Wired magazine entitled “The New Industrial Revolution,” by long-tail theorist Chris Anderson, and the related issue of Make magazine, the theme of which is “Desktop Manufacturing.”

Read more »

Building Boarduino

April 26th, 2008

I recently soldered up a Boarduino from Adafruit Industries. Boarduino is simply an Arduino clone with a smaller form factor, designed to plug directly into a breadboard rather than giving you the female headers of the original. I thought I’d post a few photos of the process.

Adafruit Boarduino

I really like the idea of the Boarduino, because I found I was doing almost all of my prototyping on a breadboard, and it seemed like I was always trying to figure out new and different ways to anchor the big Arduino down.

Read more »

Soldering Tutorials

April 14th, 2008

My Weller WES51 arrived today (w00t!), and in celebration, I thought I’d compile a list of my favorite soldering tutorials around the web.

How to Solder Correctly: An excellent starting point, thanks to a detailed seven-minute video and lots of close-up images.

Soldering Tips (PDF, 284K): Ten pages of required reading by Tom Hammond, with advice on tool selection, tip tinning, component positioning, and solder types. Lots of great diagrams for all of us right-brained learners.

Basic Soldering Guide: From Everyday Practical Electronics magazine, discusses tool selection, soldering methods, and — perhaps more importantly — de-soldering!

Soldering Basics: This detailed tutorial from SparkFun.com includes several short videos and lots of pictures, then lets you really get your hands dirty with step-by-step instructions on soldering up a basic RS232 shifter board kit.

Surface-Mount Soldering: More and more components and ICs are shrinking in size and doing away with through-hole pinouts. Just go easy on the coffee and you too can solder SMDs!

Basic SMD Soldering: A whopping 8-part solder-a-thon from SparkFun. Starts with tools, moves into surface-mount soldering techniques, then takes it up a notch with hot-air rework — for when you mess up.

Read more »

Arduino-Python 4-Axis Servo Control

April 8th, 2008

Although the Arduino platform is ideal for standalone applications, it really comes to life when interfaced with a PC. Connect Arduino to a personal computer and you instantly add a ton of versatility and processing power to your project.

This tutorial will describe how to use Arduino to control a bank of four independent RC servos with your PC (or Mac, or *nix Box), using a USB cable and a modular Arduino-Python software stack.

The following discussion builds upon concepts presented in two previous articles, “Arduino Serial Servo Control” and “Joystick Control of a Servo.” As always, comments, critiques, or suggestions for improving or adapting this code are welcome and appreciated.

Project Outline

The primary goal for this project was to create a software stack that allows simple and flexible control of multiple servos from any type of Python script.

The solution has two basic components: (1) an Arduino sketch that waits for serial input from a connected PC, then moves each servo to its commanded position, and; (2) a Python module on the PC that opens the serial connection and formats the data packets expected by the Arduino.

Any other Python program written to sit on top of these two layers need not worry about the messy details of serial communication, but rather can just say something like, “Move servo #2 to 90 degrees.” Or, more precisely:

servo.move(2,90)

Easy, right? Let’s get started.

Read more »

Joystick Control of a Servo

December 27th, 2007

UPDATE: Please read Arduino-Python 4-Axis Servo Control for the most current and
detailed information on using a USB joystick to control one or more RC servos.

Inspired by Armadillo Aerospace and their laptop-controlled Pixel rocket, I decided to figure out how to use an Arduino module to achieve wireless remote control of a flight vehicle.

Along the path to development, an achievable intermediate goal would be something like a wireless RC rover with a video camera, monitored and controlled with a laptop and joystick on a WiFi network.

Step one in the process is simple joystick control of a servo over a USB connection. This project builds upon the process documented in “Arduino Serial Servo Control.” I welcome any comments or suggestions for improving or adapting this code.

Read more »

Behind the Scenes at UGOBE Labs

December 15th, 2007

UGOBE is a small California robotics company that develops life-like animatronic creatures which they call “Life Forms.”

Their first creation is a cute, foot-long, green dinosaur-bot named Pleo. Pleo is an autonomous robot pet which incorporates a range of environment sensors, fluid mechanical movements, and a custom made “Life OS” AI operating system which allows all these elements to work together to simulate a living creature, reacting to and learning from its environment. Far out.

I really enjoyed these short videos, in which Caleb Chung, the toy-creation guru and UGOBE co-founder, gives a short tour of UGOBE Labs and talks about the development of Pleo. Looks like an awesome place to work!

Learn more about UGOBE at http://www.ugobe.com/.

Arduino Serial Servo Control

December 9th, 2007

New: Check out the Arduino-Python 4-Axis Servo Control tutorial

One of the cool features of the Arduino platform is its ability to talk to other electronic devices using standard protocols. The big draw of physical computing, in my opinion, is the power it gives you to affect a limitless range of real-world objects with your PC, rather than just boring old monitors and printers.

This short tutorial will demonstrate one way to use Arduino to control a servo motor with a PC, using a USB cable and the Arduino’s serial library. It will in no way attempt to be an introduction to asynchronous serial communication, since such topics are better addressed elsewhere.

RC servos are comprised of a DC motor mechanically linked to a potentiometer. Pulse-width modulation (PWM) signals sent to the servo are translated into position commands by electronics inside the servo. When the servo is commanded to rotate, the DC motor is powered until the potentiometer reaches the value corresponding to the commanded position.

Read more »

Arduino Pulse Width Modulation

December 8th, 2007

The digital pins on the Arduino board can be set (with code) to output either HIGH (5V) or LOW (0V) — essentially ON or OFF. This is great for applications like blinking LEDs or activating relays.

But what if we wanted an output voltage somewhere in between 0V and 5V? This might be useful in applications like controlling the speed of a DC motor, or “dimming” an LED.

Well, the digital pins cannot directly produce an analog voltage; as we’ve said, they’re either HIGH or LOW. But it turns out we can simulate these “in-between” voltages using a technique called Pulse Width Modulation, or PWM.

Read more »