Monday, June 27, 2011

Second Head

You may remember my previous effort to have a head track you using PIR sensors.

Well, it turns out the PIR sensors are great for detecting someone - at first. Then they are useless for 10 seconds. Which doesn't make them great for tracking. So I ended up giving up.

Then I was reading somewhere on the Interwebzors about someone trying to use a Bluetooth-enabled solid state gyro board for controlling a halloween head. I started thinking, there has to be an easier way. Then I thought about Synn Labs augmented reality work, and hit upon the idea: stick a fiduciary mark on your head:



The concept is simple: use ARToolkit to track the pan angle of a fiduciary mark, convert to serial data, send to Arduino, have the Arduino set the servo angle of the Robotzone DDP155 pan table.

Here is my tweak to ARToolkit's simpleLite.c example, a few lines I added to the "if (gPatt_found)" block of the "Display" function:

FILE *head=fopen("/dev/cu.usbserial-A4000QBg","w");
char head_turn=90-50*gPatt_trans[2][0];
fprintf(head,
"%c",head_turn);
printf(
"%d:%c:\n",head_turn,head_turn);
fclose(head);

And here is the short Arduino program:

#include <Servo.h>

Servo myservo;

void setup() {
myservo.attach(
9);
Serial.begin(
9600);
}

void loop() {
int value=40;
if (Serial.available() > 0)
{
value
= Serial.read(); //reads the incoming byte
myservo.write(value);
}
}



Wednesday, June 22, 2011

VIC-20 of the Modern Era: Maximite

If you miss the VIC-20, here comes the Maximite. BASIC programming, uses PS2 keyboard, VGA out, and based on a PIC32. Prices look aorund $60-$70.

In a way it reminds my of my old RVHE boards (which are no longer produced). They were incredibly simple to program in BASIC with a very fast interpreter. They didn't have a keyboard/VGA connection, but did have Ethernet you could telnet into! The Ethernet did not DHCP very well though, so they were not as useful as I was hoping.

Thursday, June 09, 2011

Arduino Frequency measurement

I've been thinking about ways audio output from an iPhone could communicate with an Arduino.

Oh yes, you could use DTMF with an external DTMF detector chip, but what about doing frequency detection without any active external devices?

Here is a Frequency Measurement Library for Arduino w. Atmega168/328 that needs some external resistors and capacitors, no active devices needed. A 1:1 audio transformer might be wise as well.

Supposedly this works up to 20 kHz!

Wednesday, June 08, 2011

Geiger Counter

I recently built a geiger counter kit (Chaney Electronics C6981). It can measure the number of times particles of ionizing radiation pass through the tube per minute. So does it work?

First, let's try it on wood:




Now, let's try it on granite:



So indeed, the granite is more than twice as radioactive as the wood!

Saturday, June 04, 2011

EthernetDHCP for Arduino

I have often expressed my sadness about the cheap Ethernet shields for Arduino not having working DHCP.

Well, it appears there is now an EthernetDHCP Library for the Wiznet-based shield and apparently it actually works.

But the Wiznet-based shield is still $40. On the horizon, for $46, is the new Microchip-based chipKIT Max32 Arduino-Compatible that has Ethernet on board - but the PHY/magnetics might require a shield that is not yet released.

Some day we will have an easy-to-program microcontroller for an affordable price that can do DHCP!