Scary forest eagle-owl
Eagle-owl model with quickly lightning and slowly fading out yellow eyes. Standalone power, wireless control.
Arduino Duemilanove with Atmega168 microcontroller onboard is used as controlling device. Eyes are controlled
by TV remote. Eyes are assembled from smd 5050 LEDs from strip. Resistors are also taken from LED strip.
Each LED contains three crystals, all of them are connected in series with resistor, so eyes power voltage is 12 V.
Arduino PWM outs are connected to LEDs via 4-channel key. Eac eye contains cental single LED, and three radial rings. LEDs are placed
in hex grid. This allows to increase fade effect. LEDs are fading out from center.
Lowered power source voltage (10 V) allows to connect Arduino board without 7805 regulator.
Keys are made of TIP132 transistors. In case of extremal operation conditions, such as high environment
temperature, transistors should be mounted on heat sinks.
MCU, keys and LEDs are placed in single case inside model. IR receiver are placed on side,
looking to TV remote operator. Eyes are mounted on two-sided PCB, LEDs on one side and resistors
on other side. Sides are connected by jumpers, which are made of tinned wire.
Sypplying LEDs from 10 V instead of 12 causes acceptable brightness degrade, still allowing normal
operation. Further increasing of power supply voltage causes too heavy heating of 7805 on Arduino board.
Power cells and control circuit are placed inside model case. Power cable have Neda 6F22 battery
plug, which allow to connect 6F22 instead of NiMH cells battery. Preferable are AA NiMH cells
since they have much higher capacity.
Assembled without errors, the device should working without any tuning. In case of using another
TV remote, it can be adapted by altering control codes. Codes can be found out via Serial, use
IRRecvDemo sketch from IRRemote library for it.
Algorithm and Arduino sketch
After power on, device polls IR receiver and on appropriate IR code does action: LEDs animation or
LEDs blinking according to power source voltage. The voltage is put on Arduino ADC through resistive divider.
There are two animation codes - Up and OK buttons of remote. This makes usage in black out easier.
Animation includes fast fading in (for all LEDs), two seconds of maximum brightness, and slow fading out
from center to peripheral rings. Each ring fades out twice slower than previous. Delay time of fading can
be changed in the sketch.
Brightness to PWM level translation happens in logarithmic law, placed in array. This array was taken from
Arduino - Physical Computing für Bustler, Designer & Geeks
Odendahl, Julian Finn, Alex Wengler).
Power check code is assigned to Power TV remote key. By this code, Arduino maps voltage on ADC to 1-10,
according to difference between min and max voltage of power supply. Then this value is used as n, and
central LEDs of eyes are blinking n times. This means n*10% battery charge.
The sketch requires IRRemote
IR receiver should look to TV remote operator. Otherwise, this degrade device sensitivity.