The objective here is for different robots to seek each other out and to recognise their response. For the sensors we use an infrared transmitter and receiver. A ring of eight bi-colour LEDs functions as the visible 'memory' of our 'Firefly' and indicates in which direction it has recognised a counterpart. The Firefly looks around with the aid of the servo on which it sits. All this is driven by a simple-to-program microcontroller type ATmega88.
Resistors
R1,R3,R5,R11 = 22kOhm
R2,R14,R15,R16,R17 = 4.7kOhm
R4 = LDR, e.g. type A9060, Conrad Electronics #. 145475
R6 = 47Ohm
R7,R8,R9,R10,R12 = 220Ohm
R13 = 470Ohm
Capacitors
C1,C6 = 10µF 16V radial
C2,C3 = 22pF
C4 = 4.7nF
C5,C7 = 100nF
Semiconductors
D1,D2,D3,D4,D5,D6,D7,D8 = bicolour LED, 5mm
D9 = IR LED, 5 mm
T1,T2,T3,T4 = BC547
IC1 = ATmega88, programmed
Miscellaneous
X1 = 12MHz quartz crystal
BZ1 = AC buzzer
S1 = SPNO pushbutton, Tyco Electronics type FSM4JH
S2 = SPDT miniature switch, C&K type ET01MD1CBE
K1 = 6-pin (2x3) pinheader
PCB, order # 100014-1
Servo motor
Ping-Pong ball