CC280: Analog Communications and Calibration

Are you an analog aficionado? You’re in luck. Two articles, in particular, focus on the November issue’s analog techniques theme. (Look for the issue shortly after mid-October, when it will be available on our website.)

Block Diagram

Data from the base adapter is sent by level shifting the RS-232 or CMOS serial data between 9 and 12 V. A voltage comparator at the remote adapter slices the signal to generate a 0-to-5-V logic signal. The voltage on the signal wire never goes low enough for the 5-V regulator to go out of regulation.

These adapters use a combination of tricks. A single pair of wires carries full-duplex serial data and a small amount of power to a remote device for tasks (e.g., continuous remote data collection and control). The digital signals can be simple on/off signals or more complex signals (e.g., RS-232).

These adapters use a combination of tricks. A single pair of wires carries full-duplex serial data and a small amount of power to a remote device for tasks (e.g., continuous remote data collection and control). The digital signals can be simple on/off signals or more complex signals (e.g., RS-232).

Dick Cappels, a consultant who tinkers with analog and mixed-signal projects, presents a design using a pair of cable adapters and simple analog circuits to enable full-duplex, bidirectional communications and power over more than 100 m of paired wires. Why bother when Power Over Ethernet  (PoE), Bluetooth, and Wi-Fi approaches are available?

“In some applications, using Ethernet is a disadvantage because of the higher costs and greater interface complexity,” Cappels says. “You can use a microcontroller that costs less than a dollar and a few analog parts described in this article to perform remote data gathering and control.”

The base unit including the 5-to-15-V power supply is simple for its functionality. The two eight-pin DIP ICs are a voltage comparator and the switching regulator.

The base unit including the 5-to-15-V power supply is simple for its functionality. The two eight-pin DIP ICs are a voltage comparator and the switching regulator.

Cappels’s need for data channels to monitor his inground water tank inspired his design. Because his local municipality did not always keep the tank filled, he needed to know when it was dry so his pumps wouldn’t run without water and possibly become damaged.
“Besides the mundane application of monitoring a water tank, the system would be excellent for other communication uses,” Cappels says, including computer connection to a home weather station and intrusion-detection systems. Bit rates up to 250 kHz also enable the system to be used in two-way voice communication such as intercoms, he says.

Retired engineer David Cass Tyler became interested in writing his series about calibration while working on a consulting project. “I came to realize that some people don’t really know how to approach the issue of taking an analog-to-digital value to actual engineering units, nor how to correct calibration factors after the fact,” Tyler says

In Part 1 of his article series, Tyler notes: “Digital inputs and digital outputs are pretty simple. They are either on or off. However, for ADCs and DACs to be accurate, they must first be calibrated. This article addresses linear ADCs and DACs.” Part 2, appearing in the December issue, will discuss using polynomial curve fitting to convert nonlinear data to real-world engineering values.

In addition to its analog-themed articles, the November issue includes topics ranging from a DIY solar array tracker’s software to power-capped computer systems.

Editor’s Note: Learn more about Circuit Cellar contributors Dick Cappels and David Cass Tyler by reading their posts about their workspaces and favorite DIY tools.

FET Drivers (EE Tip #105)

Modern microprocessors can deliver respectable currents from their I/O pins. Usually, they can source (i.e., deliver from the power supply) or sink (i.e., conduct to ground) up to 20 mA without any problems. This allows the direct drive of LEDs and even power FETs. It is sufficient to connect the gate to the output of the microprocessor (see Figure 1).

Elektor, 060036-1, 6/2009

Elektor, 060036-1, 6/2009

Driving a FET from a weaker driver (such as the standard 4000 series) is not recommended. The FET would switch very slowly. That is because power FETs have several nanofarads of input capacitance, and this input capacitance has to be charged or discharged by the microprocessor output. To get an idea of what we’re talking about: the charge or discharge time is roughly equal to V × C/I or 5 V × 2 × 10-9/(20 × 10-3) = 0.5 ms.

Not all that fast, but still an acceptable switching time for a FET. However, not every FET is suitable for this. Most FETs can switch only a few amps with a voltage of only 5 V at their gate. The so-called logic FETs do better. They operate well at lower gate voltages.

So take note of this when selecting a FET. To make matters worse, many modern microprocessor systems run at 3.3 V and even a logic FET doesn’t really work properly any more. The solution is obviously to apply a higher gate voltage.

This requires a little bit of external hardware, as is shown in Figure 2, for example. The microprocessor drives T1 via a resistor, which limits the base current. T1 will conduct and forms via D1 a very low impedance path to ground that quickly discharges the gate.

Elektor, 060036-1, 6/2009

Elektor, 060036-1, 6/2009

When T1 is off, the collector voltage will rise quickly to 12 V, because D1 is blocking and the capacitance of the gate does not affect this process. However, the gate is connected to this point via emitter follower T2. T2 ensures that the gate is connected quickly and through a low impedance to (nearly) 12 V.

In the example, a voltage of 12 V is used, but this could easily be different. Note that if you’re intending to use the circuit with 24 V, for example, most FETs can tolerate only 15 or 20 V of gate voltage at most. It is therefore better not to use the driver with voltages above 15 V. We briefly mentioned the 4000 series a little earlier on. There are two exceptions. The 4049 and 4050 from this series are so-called buffers, which are able to deliver a higher current (source about 4 mA and sink about 16 mA). In addition this series can operate from voltages up to 18 V. This is the reason that a few of these gates connected in parallel will also form an excellent FET drive (see Figure 3). When you connect all six gates (from the same IC!) in parallel, you can easily obtain 20 mA of driving current.

Elektor, 060036-1, 6/2009

Elektor, 060036-1, 6/2009

This looks like an ideal solution, but unfortunately there is a catch. Ideally, these gates require a voltage of two thirds of the power supply voltage at the input to recognize a logic one. In practice, it is not quite that bad. A 5-V microprocessor system will certainly be able to drive a 4049 at 9 V. But at 12 V, things become a bit marginal!

—Elektor, 060036-1, 6/2009

Solar Array Tracker (Part 1): SunSeeker Hardware

Figure 1: These are the H-bridge motor drivers and sensor input conditioning circuits. Most of the discrete components are required for transient voltage protection from nearby lightning strikes and inductive kickback from the motors.

Figure 1: These are the H-bridge motor drivers and sensor input conditioning circuits. Most of the discrete components are required for transient voltage protection from nearby lightning strikes and inductive kickback from the motors.

Graig Pearen, semi-retired and living in Prince George, BC, Canada, spent his career in the telecommunications industry where he provided equipment maintenance and engineering services. Pearen, who now works part time as a solar energy technician, designed the SunSeeker Solar Array tracker, which won third place in the 2012 DesignSpark chipKit challenge.

He writes about his design, as well as changes he has made in prototypes since his first entry, in Circuit Cellar’s October issue. It is the first part of a two-part series on the SunSeeker, which presents the system’s software and commissioning tests in the final installment.

In the opening of Part 1, Pearen describes his objectives for the solar array tracker:

When I was designing my solar photovoltaic (PV) system, I wanted my array to track the sun in both axes. After looking at the available commercial equipment specifications and designs published online, I decided to design my own array tracker, the SunSeeker (see Photo 1 and Figure 1).

I had wanted to work with a Microchip Technology PIC processor for a while, so this was my opportunity to have some fun. I based my first prototype on a PIC16F870 microcontroller but when the microcontroller maxed out, I switched to its big brother, the PIC16F877. Although both prototypes worked well, I wanted to add more features and

The SunSeeker board, at top, contains all the circuits required to control the solar array’s motion. This board plugs into the Microsoft Technology chipKIT MAX32 processor board. The bottom side of the SunSeeker board (green) with the MAX32 board (red) plugged into it is shown at bottom.

The SunSeeker board, at top, contains all the circuits required to control the solar array’s motion. This board plugs into the Microchip Technology chipKIT MAX32 processor board. The bottom side of the SunSeeker board (green) with the MAX32 board (red) plugged into it is shown at bottom.

capabilities. I particularly wanted to add Ethernet access so I could use my home network to communicate with all my systems. I was considering Microchip’s chipKIT Max32 board for the next prototype when Circuit Cellar’s DesignSpark chipKIT contest was announced.

I knew the contest would be challenging. In addition to learning about a new processor and prototyping hardware, the contest rules required me to learn a new IDE (MPIDE), programming language (C++), schematic capture, and PCB design software (DesignSpark PCB). I also decided to make this my first surface-mount component design.

My objective for the contest was to replicate the functionality of the previous Assembly language software. I wanted the new design to be a test platform to develop new features and tracking algorithms. Over the next two to three years of development and field testing, I plan for it to evolve into a full-featured “bells-and-whistles” solar array tracker. I added a few enhancements as the software evolved, but I will develop most of the additional features later.

The system tracks, monitors, and adjusts solar photovoltaic (PV) arrays based on weather and atmospheric conditions. It compiles statistics on these conditions and communicates with a local server that enables software algorithm refinement. The SunSeeker logs a broad variety of data.

The SunSeeker measures, displays, and records the duration of the daily sunny, hazy, and cloudy periods; the array temperature; the ambient temperature; daily minimum and maximum temperatures; incident light intensity; and the drive motor current. The data log is indexed by the day number (1–366). Index–0 is the annual data and 1–366 store the data for each day of the year. Each record is 18 bytes long for a total of 6,588 bytes per year.

At midnight each day, the daily statistics are recorded and added to the cumulative totals. The data logs can be downloaded in comma-separated values (CSV) format for permanent record keeping and for use in spreadsheet or database programs.

The SunSeeker has two main parts, a control module and a separate light sensor module, plus the temperature and snow sensors.

The control module is mounted behind the array where it is protected from the heat of direct sunlight exposure. The sensor module is potted in clear UV-proof epoxy and mounted a few centimeters away on the edge of, and in the same plane as, the array. To select an appropriate potting compound, I contacted Epoxies, Etc. and asked for a recommendation. Following the company’s advice, I obtained a small quantity of urethane resin (20-2621RCL) and urethane catalyst (20-2621CCL).

When controlling mechanical devices, monitoring for proper operation, and detecting malfunctions it is necessary to prevent hardware damage. For example, if the solar array were to become frozen in place during an ice storm, it would need to be sensed and acted upon. Diagnostic software watches the motors to detect any hardware fault that may occur. Fault detection is accomplished in several ways. The H-bridges have internal fault detection for over temperature, under voltage, and shorted circuit. The current drawn by the motors is monitored for abnormally high or low current and the motor drive assemblies’ pulses are counted to show movement and position.

To read more about the DIY SunSeeker solar array tracker, and Pearen’s plans for further refinements, check out the October issue.

 

Q&A: Krystal Horton, the Raspberry Pi Kid

Eben Upton and Krystal met in October at the Broadcom MASTERS

Krystal Horton is the clever kid behind the blog Raspberry Pi Kid: An 11-Year-Old’s Adventures with Raspberry Pi.  Since starting her blog in January 2013, her entries have covered everything from unpacking her first Pi, to projects she has created with the SBC, to her recent dinner with Eben Upton, founder and trustee of the Raspberry Pi Foundation, and his wife, Liz Upton, who oversees the foundation website.

Krystal met the couple in October 2013 in Washington, D.C., as one of 30 finalists competing in the 2013 Broadcom MASTERS, a national science, technology, engineering, and math competition for middle school students.  (At the competition, Krystal was named one of two Rising Stars students who will represent Broadcom MASTERS at the 2014 International Science and Engineering Fair, the world’s largest international high school science fair competition.)

“They also gave each of the finalists their own Raspberry Pi,” Krystal says in her October 2 blog entry from Washington, D.C.  “I’m hoping to have each of the finalists guest post on my blog after they’ve had a chance to try out the RPi.”

Liz Upton describes Krystal as “brilliant.” Recently, Circuit Cellar Managing Editor Mary Wilson asked the seventh-grader several questions about her interest in the Raspberry Pi and the blog she created to complement it.

Krystal and her oak borer beetle infestation science project.

Krystal and her oak borer beetle infestation science project.

MARY: Tell us a little bit about yourself and why you became interested in working with the Raspberry Pi.

KRYSTAL: I am an 11-year-old seventh-grader in Southern California. I have been interested in science and technology ever since I can remember. My cousin got a Raspberry Pi for Christmas and my uncle saw how curious I was. So, he gave me one for New Year’s. He gave me some basic lessons on how to hook it up, turn it on, and type into Vim. That and some YouTube videos, tutorials, and eBooks and I was off and running. I now blog at http://raspberrypikid.wordpress.com and sometimes I tweet through @kid_pi.

MARY: Why did you decide to start your blog Raspberry Pi Kid? What type of feedback/comments have you gotten from visitors to your site? Will you rename the blog and keep posting when you’re 12?

KRYSTAL: I’ve learned so much from other people’s blogs, but they’re written for adults and are very hard for a kid to understand. So, I thought that I could put things in kid language and in simple steps so that other kids would be inspired and learn from what I’ve done. I want to give back to the Raspberry Pi and blogging communities.

On my blog, I’m often talking about problems that I’m having (I still haven’t figured out analog to digital conversion) and a lot of people offer to help me out. Others congratulate me and wish that they’d had an RPi when they were my age. I’ve also heard from other kids my age who are learning to code. I put my dad’s email address on the account and he gets invitations for me to Skype with CoderDojos and to guest blog for people. I have over 52,000 views to my blog right now. I hadn’t even thought about whether the name would change when I turn 12, but I’ll definitely keep blogging.

MARY:  Was the SBC difficult to set up? What was the first project you worked on with it?

KRYSTAL: The only hard thing about setting it up is all of the accessories that you need. It doesn’t even come with a power supply, keyboard, or mouse. My uncle gave me some of the stuff (power supply, wireless keyboard/mouse, breadboard), I had some stuff at home (memory card, network cable), and I bought some stuff from Adafruit’s very useful website (wireless adapter, ADC chip, breadboard accessories).

I really like the idea of programming the computer to do things. So, the first thing I did was start programming in Python through Vim and IDLE. I got a book from the library, read tutorials online, and emailed my uncle questions.

MARY: Can you tell me about some other Pi-based projects you have finished or are working on? Do you have something you would like to do next? Where do you get your ideas? Where do you go for guidance?

Krystal and her robot

Krystal and her robot

KRYSTAL: I love playing Minecraft, so when I saw that there’s a Pi version, I installed it and blogged about it. I’ve also used the Scratch programming language to create games and blink LEDs. I’ve used RPi as a Linux computer with the Wheezy version. I just wish that Midori would play YouTube videos so that I could watch Pi tutorials on my Pi. I have also installed OpenELEC (Open Embedded Linux Entertainment Center) so that I can stream HD video to my TV. I’ve also used PuTTY to control the Pi with a laptop (my uncle showed me that one).

In the future, I want to keep working with Scratch, a free visual programming language for kids from MIT (where I want to go to college). I want to figure out analog to digital so that I can connect sensors. And I want to use the RPi to do a science fair project. I really, really want to get a 3-D printer and connect it to the Pi.  I’m planning to order a MakiBOX soon, but it’ll take six-10 weeks to arrive and then I have to build it and learn how to use it.

When I don’t know how to do something, my dad helps me find answers on YouTube or other people’s blogs. He’s a scientist, not a programmer, so he learns with me sometimes. If he can’t help me, I email my uncle who does know how to program. He has automated his house with a RasPi. If I can’t get in touch with him, then I post a question on a forum and wait for answers.

Close up view of the credit-card sized Pi

Close up view of the credit-card sized Pi

MARY: What were some of the challenges you had to overcome with the Pi? What, if anything, would you change about it?

KRYSTAL: One of the problems I’ve had is when things don’t work for me as the blogs say they should. I had a really hard time getting Wi-Fi to work even though I followed the instructions exactly.

If I could change anything, I’d label the GPIO pins right on the board. I’ve had to look up that diagram soooo many times. There are several versions now, so I’d recommend marking them to make it easier to tell which one it is when getting a case for it. I’ve read stories about people breaking off the connector where the memory card goes. That’s scary, I hope they fix that if they can.

MARY: What do you think are the SBC’s best features?

KRYSTAL: Everyone says that the price and size are the Pi’s best features and I agree. But I also like that it’s so open to let me put any kind of Linux I want on it. Some people have even put the Android Operating System on it. Not me… yet.

MARY: What new skills/tools have you learned about through your Pi?

KRYSTAL: Some of the things I’ve learned through using my Pi are: coding in Python and Scratch, basic electronics (how to use a breadboard, multimeter, LEDs, etc.), and using Linux and all of the absolutely free software for it. These are very valuable skills for anyone to learn. I’ve learned about IP addresses and using a computer without the graphical interface at times also.

MARY: What advice would you give to another kid (or adult tinkerer) who is interested in getting started with the Raspberry Pi?

KRYSTAL: The advice that I’d give is to work on fun projects. This shouldn’t feel like boring work. Also, don’t get frustrated if things don’t work right the first time. That’s just part of coding. Most big cities also have groups of computer users. Find one and connect with them.

MARY: How many other 11-year-old girls do you know who are drawn to the Raspberry Pi? Any thoughts about that?

KRYSTAL: I’ve met online several kids who are using Pi. I spoke through Skype with a group in Washington, D.C., one Saturday morning. There were probably 15 kids and many were girls. I watched a video of a girl who tests all of the Raspberry Pis that get sent back as broken.

I think that computers and technology are going to be incredibly important to my generation. It is very scary that so few (girls or boys) are learning how technology works and how to code. Coders are going to rule the future, and I want be a part of that. All kids should. And their parents need to encourage it.  Websites like code.org and adafruit.com and devices like Raspberry Pi are helping.

Programmable Logic Video Lessons

Interested in learning more about programmable logic? You’re in luck. Colin O’Flynn’s first article in his “Programmable Logic in Practice” column appears in Circuit Cellar’s October 2013 issue. To accompany his work, Colin is producing informative videos for you to view after reading his articles.

In the first video, Colin covers the topic of adding the Xilinx ChipScope ILA/VIO core using automatic and manual insertion with ISE.

 

Since 2002, Circuit Cellar has published several of O’Flynn’s articles. O’Flynn  is an engineer and lecturer at Dalhousie University in Halifax, Nova Scotia. He earned a Master’s in applied science from Dalhousie and pursued further graduate studies in cryptographic systems. Over the years, he has developed a wide variety of skills ranging from electronic assembly (including SMDs) to FPGA design in Verilog and VHDL to high-speed PCB design.

OEM Host Adapter Flash Memory

Total Phase Aaardvark USB-to-I2C Host Adapter

Total Phase Aardvark USB-to-I2C Host Adapter

The Aardvark OEM Adapter is based on Total Phase’s Aardvark I2C/SPI USB-to-I2C adapter, which is a flexible tool for system design and testing. The new adapter is available in an I2C or SPI configuration and includes the Total Phase API, which enables you to create custom application GUIs.

The Aardvark OEM Adapter and API are cross-platform compatible with various OSes, including Windows, Linux, and Mac OS X. In a production environment, you can use the API for automated testing or device programming.

Contact Total Phase for pricing.

Total Phase, Inc.
www.totalphase.com

3-D Printed Robotics Innovation: A Low-Cost Solution for Prosthetic Hands

Gibbardholding DextrusUK-based inventor and robotist Joel Gibbard used a 3-D printer to design and build a prosthetic robotic hand. He founded the Open Hand Project with the goal of making the prosthetic hands available for amputees.

 

 NAN: Give us some background. Where do you live? Where did you go to school? What did you study?

 JOEL: I was born in Bristol, UK, and grew up in that area. Bristol is a fantastic place for robotics in the UK, so I couldn’t have had a better place to start from. There’s a lot to engage children here, like the highly popular @Bristol science museum. I studied for a degree in Robotics at the University of Plymouth, which encourages a very practical approach to engineering. Right from the first year we were working with electronics, robotics, and writing code.

 NAN: When did you first start working with robotics?

 JOEL: The first robots I ever made were using the Lego MINDSTORMS NXT robotics kits. I was very lucky because these were just starting to come out when I was about 6 or 7 years old. I think from ages three to 15 every single birthday or Christmas present was a new Lego set. To this day, I still think Lego is the best tool for rapid prototyping in the early stages of an idea.

 NAN: Tell us about your first design/some of your early projects. Do you have any photos or diagrams?

 JOEL: The earliest project I remember working on with my father was a full-scale model of the space shuttle complete with robotic arm and fully motorized launch pad. When on the launch pad it was almost my height. I think my father took having kids as an opportunity to get back into making things. We also made a Saturn 5 rocket, Sydney Harbour Bridge and Concorde. One of my first robots was a Lego Technic creation. It had tracks, a double-barreled gun on one arm, a pincer on the other, and a submarine on the back, just in case. I think I was about eight years old when I made it.

 NAN: You originally developed the Dextrus robotic hand while you were at the University of Plymouth. Why did you design the system? How has its development progressed since the original concept?

Gibbarddesignprocess

Joel keeps an ongoing design sketchbook.

JOEL: I have a sketchbook of around 10 to 20 inventions that are options for the next thing I want to make. This grows faster than it shrinks. One day I was thinking about what to make next and the thought occurred to me that if I were to lose my hand, I wouldn’t be able to make anything. So it made the most sense to design a hand to have just in case. Once I have that, heaven forbid I need to; I could use it to then make a better hand, and so forth, until I have a robot hand that is as good as a human hand. It sounds ridiculous, but that was enough motivation for me to make the first one.

GibbardEarlyDextrus

This is an early version of the Dextrus hand.

After posting the project on YouTube, I received comments from people asking to have the designs to make their own, which wasn’t really possible, since it was such a one-off prototype. But I thought it was a good idea. Why not make an open-source hand? After that, I looked more into prostheses and discovered that this is really necessary and people want it.

 NAN: The Dextrus incorporates 3-D printed parts. How does the 3-D printing factor in your design? Does it make each hand customizable?

 JOEL: 3-D printing is essential to the design. Many of the parts have cavities inside them, which wouldn’t be possible to make using injection molding. One would have to make the parts in two halves then glue them together, which creates weak points. With 3-D printing, each part is one solid piece with cavities for the tendons to slide through.

Customization is a great area to explore in the future. It’s quite easy to modify things like the length and shape of the fingers while maintaining the functionality of the hand. In the not-too-distant future, I could envisage an amputee 3-D scanning their remaining hand and sending the scan to me. I could then reverse it and match their Dextrus hand (approximately) to the dimensions of their other hand.

Gibbard3DprintedDextrushand

The 3-D printed Dextrus hand.

 NAN: There are three types of Dextrus robotic hands: The Dextrus, the Dextrus EMG, and the Dextrus Research. Can you describe the differences?

 JOEL: They have the same basic design and components. The Dextrus and Dextrus EMG are exactly the same, but the EMG comes with all of the extras that enable someone to use it as a myoelectric prosthesis. The Dextrus Research has a number of differences that result in a more robust (but more expensive and heavier) hand. It has steel ball bearings instead of nylon bushes and is printed with denser plastic. It also comes with everything you need to use it straight out of the box (e.g., a power supply).

 NAN: You founded the Open Hand Project as a result of your work on the Dextrus robotic hand. Describe the project and its purpose.

 JOEL: The aim of the Open Hand Project is to make advanced prosthetic hands more accessible to amputees. It has the potential to revolutionize the prosthetics industry by trivializing the cost of prosthetics (to insurance companies). I also hope that it will help to advance prosthetic hands. If the hardware is much less expensive, we can start to focus on the human robot interface. At the moment, it uses electromyographical signals, which sound advanced but are actually 50-year-old technology and don’t give complex functionality like individual finger movement. If the hardware is inexpensive, then money can instead be spent on operations to tap into the nervous system and then the hand can literally be a direct replacement for the human hand. You’ll think about moving your hand and the robotic hand will do exactly what you’re thinking. If done correctly, you’ll also be able to feel with it. We’re talking Luke Skywalker Star Wars tech. It exists now, but is not yet fully tested and proven.

 NAN: Prior to venturing out on your own, you were an Applications Engineer at National Instruments (NI). Although you are no longer working for the company, it is backing the Open Hand Project by providing test and measurement equipment. How did NI become involved in the project?

 JOEL: National Instruments has been great since I’ve left the company. I explained what I wanted to do, and it was fully supportive. To get the equipment, all I had to do was ask! It really does live up to its reputation of being one of the best places to work. I hope that I’ll be able to repay them with business in the future. If I’m successful, then I’ll be able to buy equipment for future projects.

 NAN: Why did you decide to use crowdfunding for this project?

 JOEL: I wanted to keep everything open source for this project. Investors don’t want to fund an open-source project. You have no leverage to make money and your ideas will be taken and used by other people (which is encouraged). For this reason, only people who are genuinely interested in the vision of the project will want to invest, and that’s just not something that will make a company money. Crowdfunding is perfect, because people appreciate how this can help people and they’re willing to contribute to that.

I believe that everyone should have access to public health care and that your level of care should not be dependent on the size of your wallet. Making prosthetics open source will be a step in the right direction, but this model does not have to be limited to prosthetics. Take the drugs industry for example. Drugs companies work off patents, they have to patent their drugs in order to make back the millions of dollars they spend developing them and end up charging $1,000 for a pill that costs them $0.01 to make in order to cover all of their costs. If the research was publicly funded and open source, the innovations in this industry would be dramatically accelerated and once drugs were developed, they could be sold more cheaply, if sale of the drugs was government regulated, the price could be controlled and the money could go back into funding more developments.

 NAN: What’s next for the Dextrus?

 JOEL: There are a few directions I’d like this project to go in. First and foremost is the development of low-cost robotic prostheses for adults. After this, I’d like to look into partial amputations and finger prostheses. I’d also like to try and miniaturize the hand so that children can use it as well. Before any of this can happen I’ll need to reach my crowdfunding goal on indiegogo!

 

Carol Willing Wins the CC Code Challenge (Week 17)

We have a winner of last week’s CC Weekly Code Challenge, sponsored by IAR Systems! We posted a code snippet with an error and challenged the engineering community to find the mistake!

Congratulations to Carol Willing of Encinitas, California, USA for winning the CC Weekly Code Challenge for Week 17! Carol will receive an Elektor 2012 & 2011 Archive DVD.

Carol’s correct answer was randomly selected from the pool of responses that correctly identified an error in the code. Carol answered:

Line 6: cons will incorrectly create a list of lists; use append instead for correct recursive reversal of list

2013_code_challenge_17_answer

You can see the complete list of weekly winners and code challenges here.

What is the CC Weekly Code Challenge?
Each week, Circuit Cellar’s technical editors purposely insert an error in a snippet of code. It could be a semantic error, a syntax error, a design error, a spelling error, or another bug the editors slip in. You are challenged to find the error.Once the submission deadline passes, Circuit Cellar will randomly select one winner from the group of respondents who submit the correct answer.

Inspired? Want to try this week’s challenge? Get started!

Submission Deadline: The deadline for each week’s challenge is Sunday, 12 PM EST. Refer to the Rules, Terms & Conditions for information about eligibility and prizes.

D. Cappels’s “Stimulating Mess”

Dick Cappels enjoys tinkering with and writing about analog circuits and microcontrollers. He says the projects he designs at his workbench in his Mueang Udon Thani, Thailand, home are analog and RF microcontrollers. Many are tools for electrical measurement (e.g., a function/sweep generator, a field strength meter, and an HF/VHF/UHF variable frequency oscillator).

Cappels has submitted articles to Circuit Cellar about projects he designed on the workbench shown in Photo 1. He designed many other projects—from battery checkers to spread-spectrum demodulators—on the bench. Cappels said except for a few things, such as a Tektronix oscilloscope and some digital voltmeters (DVMs), he made most of his equipment on this bench.

Photo 2 workbench

Photo 1: “What was originally the dining table in our one-room apartment overlooking a train became a workbench as soon as we moved into a house,” Cappels said. “It turns out that it doesn’t matter how large the workbench is because I always end up doing all the work on a cleared space size about the size of a book.”

Cappels says he spends most of his project-related time in his home’s 4-m × 4-m office/lab. The office has three small desks (see Photo 2). Two of the desks keep project materials and completed projects off the floor. There are also three shelves to hold books, parts, finished projects, and test equipment. Many of cardboard boxes and plastic storage bins hold bulky items for projects (e.g., circuit board material, heatsinks, and packages of unused components). “Family rules dictate that the door must be closed when guests are over. You can see why from the photographs,” Cappels says.

Photo2

Photo 2: This is “the desk where things sometimes happen,” Cappels explains. “Most preliminary work takes place on the clipboard with pencil and paper.”

Cappels described his workspace via e-mail:

At the working desk besides the Mac Mini that runs Mac OS and Windows and a couple of calculators are some projects in various phases, parts for projects I have started or am about to start, and lots of other things I have not put away because seeing them may spark an idea.

To the right of the desk, beyond the printer, is a small wire frame shelf that holds 20 stationary boxes plus a few smaller ones that are packed with (mostly) unused electronic parts. When new parts come in, I record them in a notebook with the part number, source, quantity received, where the parts are to be stored, and sometimes the cost. The boxes have writing and often schematic symbols on the exposed side so I know which box to pull out to search for a given type of part.

A small 70-cm × 70-cm table with a shelf holds some test equipment and serves as a workbench. On the shelf above the workbench is an old Tektronix TDS2002 (the most reliable oscilloscope I ever used), a dual-output variable power supply based on the LM317 and LM337 regulators, and a function/sweep generator based on the discontinued Maxim Integrated MAX038 IC.

I have an old Fluke 75 multimeter on the bench and I keep four newer Uni-Trend DVMs on one of the desks, ready for power supply work. Also on the bench are two soldering stations; a 1980s Weller soldering station that I brought from the US and converted to 240-VAC, which I use for heavy soldering jobs; and a Yugo soldering station that I completely rebuilt within two years of purchase. It now sports a $3 soldering iron connected to its rebuilt triac power control. I use it for light soldering jobs.

Toward the right side of the photo are boxes of stuff—mostly new components waiting to be used for a project or a repair. Some of the cardboard boxes contain finished projects. After a while, I ran out of places to put my finished projects. A HF/VHF/UHF variable frequency oscillator, a field strength meter, small power supplies, dummy loads, and so forth litter the top of the shelf to the right of the workbench.

Cappels said one of the workspace’s main goals is to have as much storage as possible. As for organization, “Most of the parts for projects are cataloged and stored in marked receptacles. For everything else, I rely on memory,” he said. “Some people need to have things around them all the time to stimulate them. As you can see from the 10-cm thick layer on the bench, I am well stimulated.”

A list of 105 completed projects is available at Cappels’s website. Cappels wrote an article about a full-duplex signaling path, which will be featured in Circuit Cellar’s November issue.

Q&A: Alenka Zajić, Communications Specialist

From building RF components for cell phones to teaching signal processing and electromagnetics at Georgia Institute of Technology’s School of Electrical and Computer Engineering, Alenka Zajić has always been interested in engineering and communications. Alenka and I discussed her fascination with a variety of communication technologies including mobile-to-mobile, computer system, energy-efficient, and wireless. She also described her current research, which focuses on improving computer communication.

Alenka Zajić

Alenka Zajić

NAN: Give us some background information. Where are you located? Where and what did you study?

ALENKA: I am originally from Belgrade, Serbia, where I got my BS and MS degrees at the School of Electrical Engineering, University of Belgrade.

After graduating with a BS degree, I was offered a design engineer job at Skyworks Solutions in Fremont, CA, where my job was to create passive RF components (e.g., antennas, filters, diplexers, baluns, etc.) for cell phones.

I was very excited to move to California, but was not sure if I would like to pursue an engineering career or a research/academic career. Since it took about six months to get an H1B visa, I decided to take all the required MS courses in Belgrade while waiting for the visa and all I had to do was finish the thesis while working in California. It was a bigger challenge than I expected, but it worked out well in the end.

While I enjoyed working in the industry, I was always more drawn to research than commercialization of products/innovations. I also enjoy “trying something new,” so it became clear to me that I should go back to school to complete my doctoral studies. Hence, I moved to Atlanta, GA, and got my PhD at the School of Electrical and Computer Engineering, Georgia Institute of Technology.

After graduation, I worked as a researcher in the Naval Research Laboratory (Washington, DC) and as a visiting assistant professor in the School of Computer Science, Georgia Tech, until last year, when I became the assistant professor at the School of Electrical and Computer Engineering, Georgia Tech.

NAN: How long have you been teaching at Georgia Tech? What courses do you currently teach and what do you enjoy most about teaching?

ALENKA: This is my second year at the School of Electrical and Computer Engineering. Last year, I taught introduction to signal processing and electromagnetics for undergraduates. This year, I am teaching electromagnetics for graduate students. One of the most rewarding aspects of university teaching is the opportunity to interact with students inside and outside of the classroom.

NAN: As an engineering professor, you have some insight into what interests future engineers. What are some “hot topics” that intrigue your students?

ALENKA: Over the years, I have seen different areas of electrical and computer engineering being “hot topics.” Currently, embedded programming is definitely popular because of the cell phone applications. Optical communications and bioengineering are also very popular.

NAN: You have contributed to several publications and industry journals, written papers for symposiums, and authored a book, Mobile-to-Mobile Wireless Channels. A central theme is mobile-to-mobile applications. Tell us what fascinates you about this topic.

ALENKA: Mobile communications are rapidly becoming the communications in most people’s minds because they provide the ability to connect people anywhere and at any time, even on the move. While present-day mobile communications systems can be classified as “fixed-to-mobile” because they enable mobility only on one end (e.g., the mobile phone) while the other end (e.g., the base station) is immobile, emerging mobile-to-mobile (M-to-M) communications systems enable mobile users or vehicles to directly communicate with each other.

The driving force behind M-to-M communications is consumer demand for better coverage and quality of service (e.g., in rural areas where base stations or access points are sparse or not present or in disaster-struck areas where the fixed infrastructure is absent), as well as increased mobility support, location-based services, and energy-efficient communication (e.g., for cars moving in opposite directions on a highway that exchange information about traffic conditions ahead, or when mobile devices “gang together” to reach a far-away base station without each of them expending a lot of power).

Although M-to-M is still a relatively young technology, it is already finding its way into wireless standards (e.g., IEEE 802.22 for cognitive radio, IEEE 802.11p for intelligent transportation systems, IEEE 802.16 for WiMAX systems, etc.).

Propagation in M-to-M wireless channels is different from traditional fixed-to-mobile channels. The quality of service, energy efficiency, mobility support, and other advantages of M-to-M communication all depend on having good models of the M-to-M propagation channels.

My research is focused on studying propagation and enabling communication in challenging environments (e.g., vehicle-to-vehicle wireless radio communications, underwater vehicle-to-underwater vehicle acoustic communications, and inside a processor chip). In each of these projects, my work aims not only to improve existing functionality, but also to provide highly useful functionality that has not existed before. Examples of such functionality include navigating people in a direction that will restore (or improve) their connection, voice, or even video between submerged vehicles (e.g., for underwater well-service operations), and use of on-chip transmission lines and antennas to achieve broadcast-type communication that is no longer feasible using traditional wires.

NAN: Your research interests include electromagnetics and computer system and wireless communications. How have your interests evolved?

ALENKA: My research was mostly focused on electromagnetics and its impact on wireless communications until I joined the School of Computer Science at Georgia Tech. Talking to my Computer Science colleagues, I have realized that some of the techniques developed for telecommunications can be modified to improve communication among processors, memory, racks in data centers, and so forth. Hence, I started investigating the problem of improving communication among computers.

NAN: What types of projects are you currently working on?

 

Two of Alenka Zajić's currrent projects are energy-efficient underwater acoustic communications and electromagnetic side channels in high-performance processors and systems.

Two of Alenka Zajićs currrent projects are energy-efficient underwater acoustic communications and electromagnetic side channels in high-performance processors and systems.

ALENKA: I have several projects and they all include theoretical and experimental work. Two of my current projects are energy-efficient underwater acoustic communications and electromagnetic side channels in high-performance processors and systems. I will provide a brief explanation of each project.

Energy-efficient underwater acoustic communications: Many scientific, defense, and safety endeavors require communications between untethered submerged devices and/or vehicles.

Examples include sensor networks for seismic monitoring, analysis of resource deposits, oceanographic and environmental studies, tactical surveillance, and so forth, as well as communications between unmanned or autonomous underwater vehicles (UUVs, AUVs) for deep-water construction, repairs, scientific or resource exploration, defense applications, and so forth. Such underwater sensing and vehicular applications will require energy-efficient underwater communications, because underwater sensor networks and AUVs are highly energy-constrained. They are typically powered by batteries that are very difficult to replace or recharge deep underwater. At the same time, existing wireless communication approaches still provide extremely low data rates, work over very limited distances, and have low energy efficiency. Radio signals and wireless optics have a very limited range underwater, so underwater wireless communications mostly rely on acoustic signals that can travel long distances in water.

Some of Alenka’s research focuses on electromagnetic side channels in high-performance processors and systems. This is a measurement setup.

Some of Alenka’s research focuses on electromagnetic side channels in high-performance processors and systems. This is a measurement setup.

Unfortunately, acoustic underwater communications have a narrow available spectrum—propagation delays that are orders-of-magnitude longer than in radio communications—and many sources of signal distortion that further reduce data rates and increase the required transmitted power when using simple modulations and coding. Hence, we are working on characterization of underwater acoustic channels and their implications for underwater-vehicle-to-underwater-vehicle communications and networking.

Electromagnetic side channels in high-performance processors and systems: Security of many computer systems relies on the basic assumption that data theft through unauthorized physical tampering with the system is difficult and easily detected, even when attackers are in physical proximity to systems (e.g., desktops in cubicles, laptops and smartphones used in public spaces, remote data centers used for cloud computing, remotely operated robotic vehicles, aircraft, etc.).

On the other hand, the motivation for attackers keeps expanding. Increasing use of electronic banking provides monetary incentives for successful attacks, while the trend toward computer-controlled everything (e.g., power plants, robotic weapons, etc.) can motivate terrorists and/or rogue states.

Although simple physical attacks (e.g., stealing the system or taking it apart to insert snooping devices) are relatively hard to carry out without significant risk of detection, more sophisticated physical attacks are likely to be explored by attackers as incentives for such attacks grow. Side-channel attacks are especially worrisome, because they circumvent traditional protection measures.

Most side-channel attacks (e.g., power analysis, timing analysis, or cache-based attacks) still require some degree of direct access (i.e., to attach probes, run processes, etc.) that exposes attackers to a significant risk of detection. However, attacks that exploit electromagnetic emanations from the system only require physical proximity. So, increasingly motivated attackers may be able to carry out numerous attacks completely undetected, and several other side channels (e.g., power, timing, memory use, etc.) can “spill over” into the electromagnetic side channel, turning electromagnetic emanations into a very information-rich side channel.

My work in this domain focuses on carrying out a systematic investigation of electromagnetic side channel data leakage, quantifying the extent of the threat, and providing useful insights for computer designers to minimize such leakage.

NAN: Is there a particular electronics engineer or academic who has inspired the type of work you do today?

ALENKA: I have been fortunate to have great mentors (Dr. Antonije Djordjević and Dr. Gordon Stüber) who taught me the importance of critical thinking, asking the right questions in problem-solving, and clearly and concisely stating my ideas and results.

CC279: Working with RobotBasic

In Circuit Cellar’s October issue, columnist Jeff Bachiochi introduces readers to RobotBasic, a free robot control programming language that you can use to control real or simulated robots, and provides a detailed explanation on how to use it.

Photo 1: This army of robots all use the RobotBASIC Robot Operating System (RROS). Note the large robot has an arm located just above the wheels that is controlled by a second RROS. It uses an on-board laptop running a RobotBASIC (RB) application. The small robots are all controlled via a Bluetooth link from an external PC running an RB application.

Photo 1: This army of robots all use the RobotBASIC Robot Operating System (RROS). Note the large robot has an arm located just above the wheels that is controlled by a second RROS. It uses an on-board laptop running a RobotBASIC (RB) application. The small robots are all controlled via a Bluetooth link from an external PC running an RB application.

“About five years ago, John Blankenship and Samuel Mishal coauthored Robot Programmer’s Bonanza, a book explaining the freely available RobotBASIC IDE they offer. RobotBASIC (RB) is a powerful language that enables you to use standard BASIC syntax (or a modified C-style syntax ( i.e., ++, +=, !=, and &&) to quickly write a program to control and simulate a robot with many types of sensors,” Bachiochi says. “This is a great tool to teach programming.”

RB, with more than 800 commands and functions, can also be a tool for non-robotic applications such as tackling tough engineering problems or creating animated simulations, Bachiochi says.

It’s likely that anyone who starts out simulating with RobotBasic will eventually want to control real robot hardware.

“There is no need to worry,” Bachiochi says. “RB was written to make use of a PC’s I/O. The parallel port is a good source for digital I/O and the serial port is well suited for external communication. The same commands used for robot movement in the simulator can alternatively be sent to a serial port establishing a sort of serial robot command protocol. But, tethered robots aren’t so cool, and many robots are too small to tote around a PC as their “great and powerful Oz.”

“Luckily, much has changed since RB’s original concepts were put into practice,” he adds. “We all know what has happened to these PC ports. They’ve fallen under the USB’s mighty power. RB doesn’t care whether it is talking with a serial port or a USB virtual serial port. USB offers inexpensive Bluetooth dongles and can create wireless serial communication to external devices.”

Bachiochi also discusses the RobotBASIC Robot Operating System (RROS), created to support RB’s serial robot command protocol. The module is available from RB’s website.

“The RROS is a preprogrammed module that can receive communication from RB, interpret commands, and directly interface to hardware,” Bachiochi says. “The module is a Pololu Baby Orangutan robot controller, consisting of an Atmel ATmega328P microcontroller and a Pololu TB6612 dual motor driver carrier in a DIP24 form factor. You can use the module (which comes preprogrammed with the RROS) to build robots like those shown in Photo 1.”

Bachiochi’s look at RB and RROS is a two-part series. In Part 2, appearing in Circuit Cellar’s November issue, Bachiochi will explain how to translate between RROS and the iRobot Create Open Interface.

So, if you want explore a programming language that can take you from simulated to real-world robotics control, check out the October and November issues.

 

Website Maintenance Progress

We’d like to thank our members and readers around the globe for their patience while our sites were down for maintenance. During the past few days, our team has been working on building a better site to deliver you the quality informative content you’ve come to expect. Today, we’re happy to announce most of the site is up and the article materials are available. Please bare with us as we complete the final steps in the process.

Are you social? Connect with us!

Thank you!

Regards,

The CC Team