Margaret Hamilton Takes Software Engineering To The Moon And Beyond

If you were to create a short list of women who influenced software engineering, one of the first picks would be Margaret Hamilton. The Apollo 11 source code lists her title as “PROGRAMMING LEADER”. Today that title would probably be something along the line of “Lead software engineer”

Margaret Hamilton was born in rural Indiana in 1936. Her father was a philosopher and poet, who, along with grandfather, encouraged her love of math and sciences. She studied mathematics with a minor in philosophy, earning her BA from Earlham College in 1956. While at Earlham, her plan to continue on to grad school was delayed as she supported her husband working on his own degree from Harvard. Margaret took a job at MIT, working under Professor Edward Norton Lorenz on a computer program to predict the weather. Margaret cut her teeth on the desk-sized LGP-30 computer in Norton’s office.

Hamilton soon moved on to the SAGE program, writing software which would monitor radar data for incoming Russian bombers. Her work on SAGE put Margaret in the perfect position to jump to the new Apollo navigation software team.

The Apollo guidance computer software team was designed at MIT, with manufacturing done at Raytheon. To say this was a huge software project for the time would be an understatement. By 1968, over 350 engineers were working on software. 1400 man-years of software engineering were logged before Apollo 11 touched down on the lunar surface, and the project was lead by Margaret Hamilton.
Continue reading “Margaret Hamilton Takes Software Engineering To The Moon And Beyond”

New App Note Day: Internet Of Pillows

The Internet of Things is a cancer that consumes all reasonable expectations of technology, opens vast security holes we’ve never had to deal with before, and complicates life in the pursuit of quarterly gains from whatever technology startup is hot right now. We are getting some interesting tech out of it, though. The latest in the current round of ‘I can’t believe someone would build that’ is the Internet of Pillows. No, it’s not a product, it’s just an application note, but it does allow us to laugh at the Internet of Things while simultaneously learning about some really cool chips.

The idea behind this ‘smart’ pillow is to serve as a snoring sensor. When the smart pillow detects the user is snoring, a small vibration motor turns on to wake up the user. There’s no connectivity in this smart pillow, so the design is relatively straightforward. You need a microphone or some sort of audio sensor, you should probably have a force-sensitive resistor so you know the pillow is actually being used, and you need a vibration motor. Throw in a battery for good measure. Aside from that, you’re also going to need a microcontroller, and that’s where things get interesting.

This application note was written as a demonstration of what Dialog’s GreenPAC devices can do. We’ve seen these things before, and the idea behind these devices is something like a ‘modern-day PAL’ or ‘a really, really limited FPGA’. It’s a bit more than that, though, because the GreenPAC devices are mixed-signal, there are some counters and latches in there, and all the programming is done through a graphical IDE. If you need a small, low-power chip that only does one thing, the GreenPAC is right up your alley.

So, how does this device detect snoring? The code pulls data from the sound sensor every 30 ms, with a 5 ms time window. If this sound repeats again within six seconds, it’s assumed the user is snoring. The logic then turns on the vibration motor, greatly annoying whoever is sleeping. All of this is done through a graphical IDE, which I’m sure will draw the ire of some, but there really aren’t that many pins or that many LUTs on GreenPAC devices, so it’s never going to get too out of hand.

The GreenPAC is a very interesting family of parts that we don’t see too much of around here. That’s a shame, because for low-power applications that don’t need a lot of horsepower, the GreenPAC seems like it would be very useful. Slightly more useful than an Internet of Things pillow, at least.

Zen And The Art Of Japanese Tea Robots

In Japan, tea ceremony (cha-dou) is revered as a way to a gain deeper insights into life and philosophy. Traditional Japanese tea ceremony practitioners put in long hours to master the intricacies and details of pouring tea. The road to becoming a tea master is crucial as it develops the practitioner’s mental state as well as physical technique.

However if you don’t have time to master the “way of tea”, then you can build a bot and automate your zen experience. That’s exactly what the people at Ano Labs did when they built their Japanese Tea Ceremony Robot #151A.

Continue reading “Zen And The Art Of Japanese Tea Robots”

RoMA: Robotic modeling assistant

3D Printing And Modelling With A Robot Assistant

[Huaishu Peng] and a group of other researchers have come up with a system that allows them to use virtual reality (VR) to model an object in a space in front of them while a robot simultaneously 3D prints that object in that same space, a truly collaborative effort they call the RoMA: Robotic Modelling Assistant. This is a step toward fixing the problem of designing something and then having to wait for the prototype to be made before knowing how well it fits the design goals.

The parts: designer, AR headset, AR controller, rotating platform, robotic printer
The parts

How does the designer/robot collaboration work? The designer wears an Oculus Rift VR headset with a camera mounted to the front, turning it into an AR (Augmented Reality) headset. In front of the designer is a rotating platform on which the object will be 3D printed. And on the other side of the platform is the 3D printing robot. In the AR headset, the designer views the platform, the object, and the robot as seen by the camera but with the model he’s working on overlayed onto the object. An AR hand controller allows him to work on the model. Meanwhile, the robot 3D prints the model. See it in action in the video below.

Continue reading “3D Printing And Modelling With A Robot Assistant”

You Don’t Need To Be Tony Stark To Afford This Hand Controller

Proving that duct tape really can do anything, [StudentBuilds] uses it to make a workable controller out of a glove. To be fair, there are a few more bits too, including paper coated with pencil graphite and tin foil, which forms a variable resistor you can read with an Arduino analog input. You can see the entire thing in the video below.

The source code is simple at this point — eventually, he plans to control a robotic hand with the controller, but that’s later. However, there’s no promised link to the code in the description, so you’ll have to freeze frame and type. However, it is pretty simple — just read the analog pin values to determine the specific values for each finger.

Continue reading “You Don’t Need To Be Tony Stark To Afford This Hand Controller”

Wah-Wah-Won’t, To Wah-Wah-Will

This is the tale of [Chris], who discovered he was no [Jimi Hendrix] in his youth, and shelved his trusty wah-wah pedal as a result. Many years later as a bassist with more modest aims he brought it out of retirement and built a blend pedal kit to allow him to bring in a bit of wah to the mix when he wanted it, but as more of a Voodoo Grown-Up than the full Voodoo Chile.

The kit worked and he should have been happy with it, but for one thing. As he increased the mix on the loop box instead of getting more wah he simply got less volume. A bit of detective work reached the conclusion that the old pedal was inverting everything, and that he needed to put in a circuit to correct that when needed. A single op-amp and a switch, with the op-amp circuit dead-bug-style on the back of the switch, completed the modification.

Wah pedals seem to be a recurring feature here. We’ve brought you one made of Lego among many others, as well as one repurposed as a synth controller.

A Two Tapes Turing Machine

Though as with so many independent inventors the origins of computing can be said to have been arrived at through the work of many people, Alan Turing is certainly one of the foundational figures in computer science. His Turing machine was a thought-experiment computing device in which a program performs operations upon symbols printed on an infinite strip of tape, and can in theory calculate anything that any computer can.

In practice, we do not use Turing machines as our everyday computing platforms. A machine designed as an academic abstract exercise is not designed for efficiency. But that won’t stop Hackaday, and to prove that point [Olivier Bailleux] has done just that using readily available electronic components. His twin-tape Turing machine is presented on a large PCB, and is shown in the video below the break computing the first few numbers of the Fibonacci sequence.

The schematic is available as a PDF, and mostly comprises of 74-series logic chips with the tape contents being displayed as two rows of LEDs. The program is expressed as a pluggable diode matrix, but in a particularly neat manner he has used LEDs instead of traditional diodes, allowing us to see each instruction as it is accessed. The whole is a fascinating item for anyone wishing to learn about Turing machines, though we wish [Olivier] had given  us a little more information in his write-up.

That fascination with Turing machines has manifested itself in numerous builds here over the years. Just a small selection are one using 3D printing, another using Lego, and a third using ball bearings. And of course, if you’d like instant gratification, take a look at the one Google put in one of their doodles for Turing’s 100th anniversary.

Continue reading “A Two Tapes Turing Machine”