Webcam

 

Als Mini-Spion in einer Dedektei wohl eher nicht zu gebrauchen, obwohl die Kamera alleine schon recht klein ist...
Aber immerhin eine nette Erweiterung zum AVR-Webserver...

 

Übersicht

 

 

Das Projekt kommt von Simon Schulz.
Es geht darum, eine Handy-Kamera an den Webserver anzuschliessen. Das ganze bekommt dann wahlweise auch noch einen Servo zum Schwenken...


Auf dieser Basis haben wir die notwendigen Änderungen am Quellcode gemacht, damit die Software auch kompatibel zu unserer Webserver-Platine ist...

(zum Projekt von Simon)

 


Software findet ihr im Download-Bereich...

 

Hier ein Beispiel-Bild der WebCam:

(Original-Größe hier 640x480 Pixel)

 

Als Kamera kommt eine MCA25 zum Einsatz.
Diese ist bei eBay günstig zu bekommen (1-3 EUR):

Suche bei eBay... nach der Kamera

 

Die Kamera wird einfach seriell an den Mikrocontroller angeschlossen.

Die Versorgung beträgt etwa 3,3- 3,6V. (5V über 2 Dioden). Da dies bereits für die SD-Karte vorhanden ist, gestaltet sich der Anschluss also recht simpel.

 

Verbesserung der Bildqualität

Wie sich herausgestellt hat, kann man mit 2 Bauteilen die Qualität wesendlich erhöhen:

Ein 4,7kOhm Widerstand muss zwischen TX vom AVR und RX der WebCam geschaltet werden.
Weiterhin muss dann eine Diode von RX der WebCam zur 3,6V-Versorgung geschaltet werden.
(Kathode an Versorgung)

 

 

Ich habe einfach zusätzlich einen kleinen Stecker bestückt und die notwendigen Leitung angeschlossen.

(Praktischerweise ist auf der ISA-CTRL-Platine ja noch ein kleiner Bereich frei)

Hier mal ein Bild:

 

 

Weiterhin kann man (wie bereits erwähnt) einen Servo anschliessen, um eine schwenkbare WebCam zu realisieren....

 

 

Kamera öffnen

 

Damit man die Kamera an den Webserver anschliessen kann, bringt man am besten ein Flachbandkabel an die Kamera an.

Zum Öffnen entfernt man die vordere Abdeckung (mit der Sony Ericsson Beschriftung). (Einfach vorsichtig nach oben hebeln).

Das sieht dann so aus:


Jetzt die vier kleinen Schrauben entfernen und ....

 

Okay - soweit so gut. Jetzt muss der Handy-Stecker raus.
Am einfachsten - einfach solange nach oben und unten biegen, bis er abbricht:

 

...zum Schluss noch die Steckerreste mit dem Lötkolben entfernen und fertig !

 

Jetzt nur noch ein Kabel dranlöten und los....

Wer will, kann die Kamera dann wieder zusammen setzen....

 

Anschluss an den Webserver

 

Die Belegung der Leiste an der Kamera ist wie folgt:

 

Anschluss-Übersicht (Kamera)

Kamera

Controller

Vcc

MMC/SD_4_Vcc

GND

GND

Reset

S1-5 (PD.6)

Kamera Rx

S1-11 (TxD)

Kamera Tx

S1-13 (RxD)

 

Man kann die Leitungen entweder direkt an den Controller anschliessen, oder (so wie oben gezeigt) einen Stecker dazwischen setzen...

 

Zu Debug-Zwecken kann man noch 3 LEDs anschliessen:

Anschluss-Übersicht (Debug-LEDs)

LED

Controller

Status

S1-4 (PD.5)

Clock

S1-3 (PD.4)

Error

S1-2 (PD.3)

Die Belegung kann man natürlich leicht im Quellcode per #define anpassen, bzw. die LEDs völlig deaktivieren...

 

Anschluss-Übersicht (Servo)

Servo

Controller

Vcc

S1-10 (+5V)

GND

GND

Signal

S1-6 (PD.7)

 

 

Änderungen an der ISA-Ctrl

 

Die Kamera arbeitet mit einer Baudrate von 460kB. Aus diesem Grund muss ein passender Quarz verwendet werden.
Ich habe einen 14.7456 MHz eingelötet. Es geht auch 11.0592 MHz oder 7.3728 MHz.

Da die Kamera parallel zum MAX232 arbeitet, habe ich den Widerstand R12 (470R), der in Reihe zum Ausgang des MAX232 liegt, auf 10k erhöht.
Jetzt lassen sich beide (MAX232 und Kamera) problemlos parallel betreiben...

 

Ein kleiner Elko (z.B. 47uF) zwischen Vcc und GND der Kamera kann auch nicht schaden...

 

Hinweise zur Software

 

Als erstes sollte man den Webserver ohne WebCam mit unserer Webserver-Software V1.38 testen (oder den Quellen von Ulrich Radig)

Wenn alles klappt, kommt die WebCam dran...

 

Die Links zu einer vorcompilierten WebCam-Version und zu den Original-Quellcodes findet man im Download-Bereich.

Per Default läuft der Webserver auf Adresse 192.168.0.101 auf Port 3333 kann also mit http://192.168.0.101:3333 aufgerufen werden.

Wichtig: Der PC muss im gleichen Subnet sein, z.B. 192.168.0.99

 

In den jeweiligen *.h Dateien (z.B. servo.h , ...) können die Funktionen aktiviert/deaktivert werden.

Man sollte in der main.h die Quarzfrequenz überprüfen und ggf. korrigieren.

Weiterhin muss das #define ISA_CTRL in der main.h vorhanden sein !