Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 839 → Rev 840

/Servo-Controlled IR-Transmitter/Doku.txt
1,81 → 1,80
Servo controlled infrared transmitter
Based on the nice IR decoder/encoder routines (IRMP/IRSND) from Frank Meyer => http://www.mikrocontroller.net/articles/IRMP
Servo gesteuerter Infrarotsender
 
Application examples:
- Remote control for a camera on a RC-model through normal servo channels.
- Control for a TV at home. Doorbell connected to one input - switches the TV to a surveillance cam.
- Control for a stereo at home. Motion sensor connected to one input - pump up the volume to scare a housebreaker.
Anwendungsbeispiele:
- Fernsteuerung einer (Video-)Kamera auf einem Ferngesteuerten Modell über normale Servo-Kanäle
- Steuerung für einen Fernseher zu Hause: Die Türklingel an einen Eingang angeschlossen, schaltet den Fernseher um, z.B. auf eine Überwachungskamera
- Steuerung für die Stereoanlage: Ein Bewegungsmelder an einen Eingang angeschlossen fährt die Lautstärke hoch um Einbrecher zu verschrecken.
 
The idea for this project came up, to control a HD-camcorder on a Mikrokopter with a second radio-transmitter.
Gas-Stick: Zooming Camera
3-way Switch: Stop/Picture/Movie record
Nick-Stick: Cameraholder-Nick
Roll-Stick: Cameraholder-Roll
Die Idee zu diesem Projekt entstand, um einen HD-Camcorder auf einem Mikrokopter über eine zweite Fernsteuerung zu bedienen:
Gas-Stick: Kamera Zoom
3-stufiger Schalter: Stop/Bild-/Film-Aufnahme
Nick-Stick: Kamerahalter-Nick
Roll-Stick: Kamerahalter-Roll
 
 
Inputs:
2 channels for servo-signals, switches or other TTL signals
1 IR-Receiver to learn new codes (36 - 40 kHz)
Eingänge:
2 Kanäle für Servo-Signale, Schalter oder andere TTL-Signale
1 IR-Empfänger um neue Codes anzulernen (36 - 40 kHz)
 
Output:
Modulated infrared signal at 950 nm
Ausgänge:
Modulierte Infrarotstrahlung von 950 nm Wellenlänge
 
Controls:
1 LED to indicate several operating modes
1 button to enter/leave the learning mode and switch between single and multi mode
Bedienelemente:
1 LED um verschiedene Zustände anzuzeigen
1 Taster um den Anlernmodus zu starten/beenden, und um zwischen Einzel- und Dauer- Modus umzuschalten
 
Supply voltage:
Versorgungsspannung:
5V DC @ 50 mA
(Attention when using RC-Receivers with higher voltage)
(Achtung wenn der Empfänger mit mehr Spannung betrieben wird)
 
 
Theory of operation:
Funktionsprinzip:
Jeder Kanal wird in 5 Stufen unterteilt, je nach positiver Impulslänge:
 
Each channel is seperated into 5 states, depending on the positive pulse width:
0,00 - 0,74 ms => 0 (switch to GND)
0,75 - 1,24 ms => 1 (stick down)
1,25 - 1,74 ms => 2 (stick middle)
1,75 - 2,24 ms => 3 (stick up)
2,25 - more ms => 4 (switch to VCC or open input)
0,00 - 0,74 ms => 0 (Schalter zu GND)
0,75 - 1,24 ms => 1 (Stick unten)
1,25 - 1,74 ms => 2 (Stick in der Mitte)
1,75 - 2,24 ms => 3 (Stick oben)
2,25 - mehr ms => 4 (Schalter zu VCC oder offener Eingang)
 
Together with the second input, you get theoretically 25 different combinations, which all can be populated with learned IR-code.
Zusammen mit dem zweiten Eingang erhält man theoretisch 25 verschiedene Kombinationen, die alle mit IR-Codes angelernt werden können.
 
When using servo signals only, you have 3 states per channel, so 9 combinations.
When using switch signals only, you have 2 states per channel, so 4 combinations.
When mixing both signals, you have 2 states for the switch and 3 states for the servo, so 6 combinations.
When using only one channel, you get 2 (switch) or 3 (servo) states.
Wenn man zwei Servo-Signale benutzt, hat man 3 Stufen pro Kanal, also 9 Kombinationen.
Wenn man Schalter an den Eingängen benutzt, hat man 2 Stufen pro Kanal, also 4 Kombinationen.
Wenn man beides verwendet, hat man 2 Zustände für den Schalter und 3 Zustände für den Servo, also 6 Kombinationen.
Wenn man nur einen Kanal verwendet, erhält man 2 (Schalter) oder 3 (Servo) Zustände.
 
After power-up, the device checks the inputs the whole time. When a combination was learned with an IR-Code before, this code is sent out through the IR-Diode. Depending on which mode this combination was learned, it is sent out only once (single-mode), or as long as the combination stays active (multi-mode).
When the device sends out IR-Code, the red LED lights up.
Nach dem Einschalten überwacht die Schaltung ständig beide Eingänge. Wenn die aktuelle Kombination schon einmal mit einem IR-Code angelernt wurde, wird dieser Code über die IR-Diode ausgesendet. Je nachdem in welchem Modus man diese Kombination eingelernt hat, wird der Code nur einmal ausgesendet (Single-Modus), oder solange wie die Kombination der Eingänge aktiv bleibt (Multi-Modus).
Während Infrarotsignale gesendet werden, leuchtet auch die rote LED.
 
 
Theory of learning:
When you press the button on the device, it goes to learning-mode.
In this mode, the LED flashes 1 or 2 times (depending of the actual mode) every half second, indicating that the device is waiting for IR-codes.
When pressing the button again, you can choose between single- or multi-mode.
Anlernmodus:
Wenn man den Taster drückt, geht die Schaltung in den Anlern-Modus.
In diesem Modus blinkt die LED ein oder zwei mal jede halbe Sekunde (je nachdem ob man im Single- oder Multi-Modus ist), und zeigt so an, das auf neue IR-Codes gewartet wird.
Wenn man den Taster nochmal drückt, wechselt man zwischen Single- und Multi-Modus hin und her.
 
When an IR-code is sent to the device, it looks at which state-combination the inputs are, and saves the IR-code for this combination.
Saving is confirmed with fast flashing of the LED.
You can now learn multiple combinations with different (or same) IR-codes, you can even mix up different IR-protocols and use different modes on different combinations.
When you have learned enough, press the button for 2 seconds, to permanently save the data to the EEPROM. This is confirmed with fast LED-flashing.
The device goes back to normal operation and is ready for orders.
Wird nun ein IR-Code empfangen, wird er automatisch dem aktuellen Zustand an den Eingängen zugewiesen. Dabei blinkt die LED kurz etwas schneller.
So kann man nun mehrere Codes anlernen, sogar von verschiedenen IR-Systemen und auch gemischt (Single/Multi).
 
Wenn alle gewünschten Kombinationen an den Eingängen mit IR-Code belegt sind, drückt man den Taster für 2 Sekunden fest, bis die LED schneller blinkt - Die Daten werden dann im EEPROM abgelegt.
Nun geht die Schaltung wieder in den normalen Betrieb über, und ist bereit zum Arbeiten.
 
Currently supported IR-Protocols
Protocol: Used by
 
Momentan unterstützte IR-Protokolle
Protokoll: Benutzt von
===================
GRUNDIG Grundig
JVC JVC
KASEIKYO Panasonic, Technics, Denon and more japanese manufacturer, which are member in "Japan's Association for Electric Home Application"
NEC NEC, Yamaha, Canon, Tevion, Harman/Kardon, Hitachi, JVC, Pioneer, Toshiba, Xoro, Orion, NoName and much more japanese manufacturer
NIKON Nikon
NOKIA Nokia, e.g. D-Box
RC5 Philips and more european manufacturer
RECS80 Philips, Nokia, Thomson, Nordmende, Telefunken, Saba, Technisat
SAMSUNG Samsung
SIRCS Sony
GRUNDIG: Grundig
JVC: JVC
KASEIKYO: Panasonic, Technics, Denon und mehr Japanische Hersteller, die Mitglied im "Japan's Association for Electric Home Application" sind
NEC: NEC, Yamaha, Canon, Tevion, Harman/Kardon, Hitachi, JVC, Pioneer, Toshiba, Xoro, Orion, NoName and mehr Japanische Hersteller
NIKON: Nikon
NOKIA: Nokia, z.B. D-Box
RC5: Philips und mehr Europäische Hersteller
RECS80: Philips, Nokia, Thomson, Nordmende, Telefunken, Saba, Technisat
SAMSUNG: Samsung
SIRCS: Sony
 
 
The code was compiled using WinAVR-20081205. Other versions generate much bigger code which don't fit in the ATMega8 anymore. To avoid this, use another WinAVR version or disable some IR-protocols in irmpconfig.h and irsndconfig.h
Der Code wurde mit WinAVR-20081205 kompiliert. Andere Versionen generieren sehr viel größeren Code, der nicht mehr in den ATMega8 hineinpasst. Um das zu vermeiden sollte man eine andere WinAVR-Version verwenden, oder einige IR-Protokolle in der irmpconfig.h und irsndconfig.h abschalten.
 
This project is based on the nice IR decoder/encoder routines (IRMP/IRSND) from Frank Meyer => http://www.mikrocontroller.net/articles/IRMP
Dieses Projekt basiert auf den genialen IR decoder/encoder Routinen (IRMP/IRSND) von Frank Meyer => http://www.mikrocontroller.net/articles/IRMP
/Servo-Controlled IR-Transmitter/Docu.txt
New file
0,0 → 1,80
Servo controlled infrared transmitter
 
Application examples:
- Remote control for a camera on a RC-model through normal servo channels.
- Control for a TV at home. Doorbell connected to one input - switches the TV to a surveillance cam.
- Control for a stereo at home. Motion sensor connected to one input - pump up the volume to scare a housebreaker.
 
The idea for this project came up, to control a HD-camcorder on a Mikrokopter with a second radio-transmitter.
Gas-Stick: Zooming Camera
3-way Switch: Stop/Picture/Movie record
Nick-Stick: Cameraholder-Nick
Roll-Stick: Cameraholder-Roll
 
 
Inputs:
2 channels for servo-signals, switches or other TTL signals
1 IR-Receiver to learn new codes (36 - 40 kHz)
 
Output:
Modulated infrared signal at 950 nm
 
Controls:
1 LED to indicate several operating modes
1 button to enter/leave the learning mode and switch between single and multi mode
 
Supply voltage:
5V DC @ 50 mA
(Attention when using RC-Receivers with higher voltage)
 
 
Theory of operation:
 
Each channel is seperated into 5 states, depending on the positive pulse width:
0,00 - 0,74 ms => 0 (switch to GND)
0,75 - 1,24 ms => 1 (stick down)
1,25 - 1,74 ms => 2 (stick middle)
1,75 - 2,24 ms => 3 (stick up)
2,25 - more ms => 4 (switch to VCC or open input)
 
Together with the second input, you get theoretically 25 different combinations, which all can be populated with learned IR-code.
 
When using servo signals only, you have 3 states per channel, so 9 combinations.
When using switch signals only, you have 2 states per channel, so 4 combinations.
When mixing both signals, you have 2 states for the switch and 3 states for the servo, so 6 combinations.
When using only one channel, you get 2 (switch) or 3 (servo) states.
 
After power-up, the device checks the inputs the whole time. When a combination was learned with an IR-Code before, this code is sent out through the IR-Diode. Depending on which mode this combination was learned, it is sent out only once (single-mode), or as long as the combination stays active (multi-mode).
When the device sends out IR-Code, the red LED lights up.
 
 
Theory of learning:
When you press the button on the device, it goes to learning-mode.
In this mode, the LED flashes 1 or 2 times (depending of the actual mode) every half second, indicating that the device is waiting for IR-codes.
When pressing the button again, you can choose between single- or multi-mode.
 
When an IR-code is sent to the device, it looks at which state-combination the inputs are, and saves the IR-code for this combination.
Saving is confirmed with fast flashing of the LED.
You can now learn multiple combinations with different (or same) IR-codes, you can even mix up different IR-protocols and use different modes on different combinations.
When you have learned enough, press the button for 2 seconds, to permanently save the data to the EEPROM. This is confirmed with fast LED-flashing.
The device goes back to normal operation and is ready for orders.
 
 
Currently supported IR-Protocols
Protocol: Used by
===================
GRUNDIG Grundig
JVC JVC
KASEIKYO Panasonic, Technics, Denon and more japanese manufacturer, which are member in "Japan's Association for Electric Home Application"
NEC NEC, Yamaha, Canon, Tevion, Harman/Kardon, Hitachi, JVC, Pioneer, Toshiba, Xoro, Orion, NoName and much more japanese manufacturer
NIKON Nikon
NOKIA Nokia, e.g. D-Box
RC5 Philips and more european manufacturer
RECS80 Philips, Nokia, Thomson, Nordmende, Telefunken, Saba, Technisat
SAMSUNG Samsung
SIRCS Sony
 
 
The code was compiled using WinAVR-20081205. Other versions generate much bigger code which don't fit in the ATMega8 anymore. To avoid this, use another WinAVR version or disable some IR-protocols in irmpconfig.h and irsndconfig.h
 
This project is based on the nice IR decoder/encoder routines (IRMP/IRSND) from Frank Meyer => http://www.mikrocontroller.net/articles/IRMP