https://rn-wissen.de/wiki/api.php?action=feedcontributions&user=Manf&feedformat=atomRN-Wissen.de - Benutzerbeiträge [de]2024-03-29T12:22:12ZBenutzerbeiträgeMediaWiki 1.25.1https://rn-wissen.de/wiki/index.php?title=Datei:Kleinsignalverst%C3%A4rker_Bild3.jpg&diff=26903Datei:Kleinsignalverstärker Bild3.jpg2015-08-21T19:25:43Z<p>Manf: Manf lud eine neue Version von Datei:Kleinsignalverstärker Bild3.jpg hoch</p>
<hr />
<div>Abstimmung der Resonanzfrequenz</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Datei:Kleinsignalverst%C3%A4rker_Bild2.jpg&diff=26902Datei:Kleinsignalverstärker Bild2.jpg2015-08-21T19:24:27Z<p>Manf: Manf lud eine neue Version von Datei:Kleinsignalverstärker Bild2.jpg hoch</p>
<hr />
<div>Resonanzkurve</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Datei:Kleinsignalverst%C3%A4rker_Bild1.jpg&diff=26901Datei:Kleinsignalverstärker Bild1.jpg2015-08-21T19:22:11Z<p>Manf: Manf lud eine neue Version von Datei:Kleinsignalverstärker Bild1.jpg hoch</p>
<hr />
<div>Schaltung</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=18765Sensorarten2011-11-16T18:04:24Z<p>Manf: /* GPD120 Messkurve */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
Es ist auch möglich Informationen für die Steuerung des Roboters nicht nur aus eigens dafür gebaute Sensoren zu gewinnen. Durch Ausnutzung der Eigenschaften von schon vorhandenen Bauteilen können dadurch eventuell separate Sensoren eingespart werden. Beispiel ist im verlinkten Forumbeitrag unter den Weblinks zu finden.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
<br />
===austriamicrosystems AS5040===<br />
<br/><br />
[[Bild:AMS-general_200x200.jpg|right]]<br />
[[Bild:AMS-chip_109x104.jpg|left]]<br />
<br />
Der AS5040 kann absolute Winkelpositionen an einer Achse messen. Die Messung wird indirekt über ein Magnetfeld mittels Hallsensoren durchgeführt. Aufgrund der Anordnung der Hallsensoren und der Integration der Sensoren direkt in Silizium wird eine sehr hohe Genauigkeit bei der Messung erreicht. Das Messprinzip kompensiert ausserdem Störgrössen, wie externes Magnetfeld, Alterungseinflüsse, Temperaturschwankungen und mechanische Toleranzen. <br />
<br />
<br/><br/><br/><br />
Die komplette Auswertung der Sensorsignale geschieht auf dem Chip. <br/><br/><br/><br />
<br />
<br />
[[Bild:AMS-block_700x242.jpg|center]]<br />
<br />
<br />
[[Bild:AMS-pcb_200x152.jpg|right]]<br />
<br/><br/><br/><br />
Durch die hohe Integration reduziert sich die zusätzliche Beschaltung des Chips auf wenige Bauteile, beispielsweise ein paar Filterkondensatoren. <br />
<br/><br/><br/><br/><br/><br/><br />
Die Winkelencoderfamilie von austriamicrosystems besitzt vielfältige Schnittstellen, um den Winkelwert zu übertragen<br />
<br />
{| {{Blauetabelle}}<br />
|Seriell SSI<br />
|Standard Schnittstelle für Winkelencoder in der Industrie<br />
|-<br />
|PWM<br />
|erzeugt abhängig vom Winkel eine entsprechende Pulslänge, läßt sich sehr schön mit der Capturefunktion eines Controllers messen und braucht nur eine Leitung<br />
|-<br />
|I2C<br />
|direkte Schnittstelle zum Microcontroller<br />
|-<br />
|Analog<br />
|kompatible Schnittstelle um beispielsweise Potiapplikationen zu ersetzen<br />
|-<br />
<br />
|Inkremental<br />
|klassische Schnittstelle um relative Bewegungen zu messen, keine Absolutmessung möglich<br />
|-<br />
|BLDC<br />
|erzeugt direkt die Kommutierung für einen bürstenlosen Motor. Durch die höhere Auflösung gegenüber einer 3-Hall-Schalterlösung kann der BLDC mit einem wesentlich höheren Drehmoment gestartet werden<br />
|}<br />
<br />
[[Bild:AMS-magnet_354x421.jpg|left]]<br />
<br/><br/><br/><br/><br />
Bei der Auswahl des Magnets ist darauf zu achten, dass sogenannte Selten-Erde-Magnete verwendet werden. http://de.wikipedia.org/wiki/Seltene_Erden Diese erzeugen ein besonders starkes Magnetfeld, das im 1-Tesla-Bereich liegt. Im Zentrum des Magnetfelds ist ein linearer Bereich, der für die Genauigkeit der Messung ausschlaggebend ist. Solange die Hallsensoren in diesem Bereich liegen, kann eine unkalibrierte Genauigkeit von +/- 0.5 Grad gewährleistet werden. Weiterhin ist zu beachten, dass der Magnet nicht direkt auf eine Eisenwelle montiert wird. Die Eisenwelle verursacht quasi einen magnetischen 'Kurzschluss' und entzieht damit den Hallsensoren das Magnetfeld. Idealerweise sollte eine NE-Welle verwendet werden, oder wenn nicht anders machbar muss eine Isolation aus NE-Material zwischen Eisenwelle und Magnet eingefügt werden.<br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br />
<br/><br/><br/><br/><br/><br/><br />
Ein einfacher erfolgreicher Test des Sensors ist hier beschrieben: http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=322373#322373<br />
<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil, dass die Signale bereits TTL-kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Überlegungen zur Drehgeber-Auswertung]]<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
* [[Beispiel Drehzahlmessung mit Drehgeber]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung, wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Fotodiode|Photodioden]] bzw. [[Fototransistor|Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
Der CNY70 ist ein Foto-Reflex-Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot-LED als Sender und ein Infrarot-Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden.<br />
<br />
Er wird häufig als Sensoren bei einem Linienfolger-Roboter verwendet. Die Reichweite ist jedoch sehr gering, sodass der Abstand zur abgetasteten Fläche klein sein muss. Die maximale Empfindlichkeit ist bei einem Abstand von 0,3mm. Bei etwa 7mm ist die Empfindlichkeit nur noch 10% vom Maximalwert.<br />
<br />
siehe [[CNY70]]<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfache und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muss im Wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernisses. In der Regel reicht sie jedoch einige cm, so dass langsame Roboter durchaus sehr gut damit zurechtkommen. Durch besonders helle Infrarot-LEDs und durch zusätzliche LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht, mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt, da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann, wenn sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen des engen Winkels nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
{{FarbigerRahmen|<br />
Wenn man diese Sensoren an Robotern einsetzt, will man meist Hindernisse mit senkrecht stehenden Kanten erkennen. Montiert man den Sensor jedoch in waagrechter Lage, können sich Fehlmessungen ergeben, wenn sich ein Objekt am Sensor vorbeibewegt (z.B. wenn sich der Roboter dreht). Es wird an der Kante kurzzeitig eine Entfernung gemessen, die geringer als die tatsächliche Entfernung zum Hindernis ist (oder auch größer als die Entfernung zu einem zweiten Hindernis hinter dem ersten, je nach Bewegungsrichtung!). Man löst dieses Problem, indem man den Sensor in senkrechter Position montiert, also so, dass die beiden Linsen übereinander statt nebeneinander liegen. Dies wird auch im Datenblatt des Sensors empfohlen: der Sensor sollte immer senkrecht zur Bewegungsrichtung des Hindernisses montiert werden.<br />
<br />
Sehr deutlich erkennt man diese Messfehler, wenn man den Sensor als eine Art 3D-Scanner einsetzt: http://www.team-iwan.de/technik/sharp1.php<br />
}}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
Die Gehäuse dieser Sensoren sehen wie ganz gewöhnlicher Kunststoff aus. Sie bestehen jedoch aus leitfähigem Material! (Kaum zu glauben, aber einfach nachprüfbar: zwischen den beiden Befestigungslöchern misst man einen Widerstand von etwa 250 bis 300 Ohm). Außerdem ist das Gehäuse mit dem Masseanschluss verbunden. Dies ist normalerweise nicht weiter wichtig, da die Sensoren meist entweder isoliert (zB auf Kunststoffteilen) oder auf einem geerdeten/mit Masse verbundenen Metallchassis montiert werden. Wenn man aber die Sensoren abschalten will, um Strom zu sparen (die Sensoren verbrauchen etwa 30 bis 40mA), muss man bei nicht isolierter Montage unbedingt die Plusleitung schalten! Wenn man die Masse-Zuleitung unterbricht, ist der Sensor sonst trotzdem noch über das Gehäuse und das Chassis mit Masse verbunden und wird nicht deaktiviert!<br />
|}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
[[Bild:Sharp_filter.png|thumb|Filter für einen analogen SHARP-Sensor zur Vermeidung von Störungen auf der +5V Versorgung und dem Ausgang.]]<br />
Die Stromaufnahme des Sensors von 30-40mA kann täuschen. Mit einer Wiederholrate von etwa 1kHz benötigt der Sensor kurzzeitig eine Stromaufnahme von ca. 1 Ampere! Diese Stromstärke braucht der Sharp-Sensor, um damit seine Infrarot-Sende-LED zu treiben. Durch die hohe Stromaufnahme kann der Sensor infrarotes Licht kurzzeitig mit hoher Intensität aussenden.<br />
Die Verwendung eines oder sogar mehrerer IR-Distanzsensoren dieser Sorte kann zu erheblichen Spannungseinbrüchen auf der 5V-Versorgungsleitung führen. Am Analogausgang des Sensors können ebenso noch Störungen vorhanden sein. Um Rückwirkungen auf die Versorgung zu vermeiden und die Störungen auf der Ausgangsleitung (für einen Sensor mit analogem Ausgang!) zu verringern, soll hier auf den nebenstehenden Schaltplan verwiesen werden. Der Elko vor dem Sensor sollte die angegebene Kapazität haben, da der Sharp-Sensor seine Stromspitzen hauptsächlich aus diesem bezieht. Dieser Elko wird über den 3,3-Ohm-Widerstand aufgeladen. Der Widerstand kann auch durch eine Induktivität ersetzt werden, Berechnung über thomsonsche Schwingungsformel f=1/(2*Pi*Wurzel(L*C)), wobei die Grenzfrequenz f deutlich kleiner als die 1kHz gewählt werden sollten, um die gewünschte Filterwirkung (Dämpfung) zu erreichen.<br />
Weitere Informationen:<br />
[http://www.roboternetz.de/community/threads/33656-GP2D120-mit-St%C3%B6rung-oder-oder-ist-das-Normalbetrieb Thema im Roboternetz]<br />
[http://www.segor.de/L1Bausaetze/gp2d12.shtml Untersuchung von Segor Electronics]<br />
|}<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
Dies ist der am häufigsten eingesetzte Sharp-Typ bei mobilen Robotern.<br />
Dieser Sensor wird seit 2010 nicht mehr produziert. Der Nachfolger ist der GP2Y0A21YK0F.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
<br />
====Sharp GP2Y0A21YK0F (Nachfolger des GP2D12)==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
[[Bild:GP2Y0A21YK0F.jpg|center]]<br />
<br />
[[Bild:GP2Y0A21YK0F_diagram.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
====Sharp GP2D120====<br />
Distanz 4-30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20-150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10-80 cm - Entfernung wird durch 8-Bit-Digitalausgang übermittelt.<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang. <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetzes, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannungen der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D)<br />
<br />
Mehrere Messungen ergeben ein besseres Ergebnis:<br />
Dazu werden für jeweils zwei Messungen die Konstanten A und B errechnet (s. o.) und in ein Plotprogramm als Graph dargestellt.<br />
Plotprogramm (OpenSource): [http://www.padowan.dk Graph]<br />
<br />
Funktion: <br />
f(x)=A/(x-B)<br />
<br />
Man kann dann durch Verändern von A und B einen Graphen erstellen, der die meisten Eigenschaften der anderen Graphen enthällt. Diese Konstanten entsprechen dann ziemlich genau dem Realwert.<br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
<br />
<br />
Messfleckgröße des SHARP GP2Y0A41SK0F <br />
<br />
siehe <br />
<br />
http://www.roboternetz.de/community/threads/55555-Messfleckgröße-des-SHARP-GP2Y0A41SK0F?p=530710&viewfull=1#post530710<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3 cm bis 3 m gut geeignet. Der SRF04 kann einen 3 cm dicken Besenstiel in 2 m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neue SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3 cm bis 6 m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand (LDR), dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich, auch bis zu 16 Mehrfachechos von weiter hinten gelegenen Gegenständen auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in Zentimeter, Zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
<br />
[[SRF08 mit avr-gcc|SRF08 Programmbeispiel mit AVR-GCC]]<br />
<br />
SFR08 Programmbeispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegebenen Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. Allerdings bietet er im Gegensatz zum SRF08 weder einen Lichtsensor noch die Möglichkeit, die Mehrfachechos auszulesen.<br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe, der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vor allem die Tatsache, dass sowohl RS232- und I2C-Bus-Schnittstelle vorhanden ist, dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40kHz <br />
* Reichweite 15 cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom-Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum Vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompass-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürfnisse von Robotern gestaltet worden. Es misst seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompass, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen (Motoren)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kunststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muss am Pin 6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Messpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
===CMPS09===<br />
Inzwischen ist der Nachfolger des CMPS03, nämlich der CMPS09 erhältlich.<br />
<br />
Das Kompassmodul verfügt nun über eine Tilt-Kompensierung und ist im Vergleich zum CMPS03 deutlich kleiner. Die Auswertung geschieht, wie beim CMPS03 auch, über einen PWM-Ausgang oder den I2C-Bus, zudem ist hier noch eine serielle Schnittstelle (UART) mit 9600N2 vorhanden. Das Kompassmodul läuft bereits ab 3,3V.<br />
<br />
Das Modul kann z.B. über robotikhardware.de bezogen werden.<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
[[Bild:beschleunigungssensor_rh.gif|center]]<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkeiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
siehe auch: [[Sensoren - Beschleunigung]]<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioliskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in Kfz verwendet, stößt jedoch an ihre Grenzen, wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedrigen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
Siehe auch unter [[Sensoren für die Geschwindigkeitsmessung]]<br />
<br />
==Temperatur== <br />
===NTCs und PTCs===<br />
<br />
siehe [[PTC/NTC]]<br />
<br />
<br />
=== KTY: Silizium Temperatursensoren ===<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies kann schaltungstechnisch oder in Software erfolgen.<br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm als Spannungsteiler. Bei 5 V führt dies aber schon zu einer merklichen Eigenerwärmung. Im Vergleich zu, PT1000 ist der Temperaturkoeffizient beim KTY etwa doppelt so hoch - man bekommt also etwa das doppelte Signal.<br />
http://www.roboternetz.de/phpBB2/viewtopic.php?p=342164&sid=ad63fd51eb08bcf225389af5bbc4fcfd#342164<br />
<br />
=== Diode als Temperatursensor ===<br />
Die Flußspannung von Dioden ist temperaturabhängig. Für Siliziumdioden verringert sich die Spannung um etwa 2 mV pro Grad Temperaturerhöhung. Der Absolutwert der Flußspannung hängt etwas vom Strom ab und variiert auch zwischen verschiedenen Chargen. Es ist also fast immer wenigstens ein Abgleich nötig. Es kann auch eine Diodenstrecke eines Transistors genutzt werden, für eine ggf. besser geeignete Gehäuseform (z.B. BD135 im TO126 Gehäuse mit Bohrung).<br />
<br />
===LM335 und LM35===<br />
<br />
[[Bild:LM335.JPG|center]]<br />
<br />
Der Temperatursensor LM335 funktioniert wie eine Z-Diode, die ihre Durchbruchspannung proportional zur Temperatur ändert. Beim Sensor LM335 beträgt diese Änderung 10mV/K, beim Sensor LM35 beträgt die Änderung 10mV/<sup>o</sup>C. <br />
<br />
Der größte Unterschied zwischen den Sensoren ist der, dass am Ausgang des LM335 bei 0<sup>o</sup>C etwa 2,73V anliegen (273K = 0<sup>o</sup>C) und beim LM35 0V. Sollen negative Temperaturen gemessen werden, so muss man für den LM35 das Bezugspotential GND anheben (z.B. mit zwei Si-Dioden).<br />
<br />
Von den Sensoren LM335 und LM35 gibt es auch noch genauere Ausführungen, welche einen geringeren Temperatur-Fehler ab Werk haben. Diese Versionen heißen LM15/LM25 bzw. LM135/LM235 und sind entsprechend teurer als die 3er Version (zum Vergleich: LM335 kostet bei Reichelt 0,89€, der LM135 jedoch 7,75€). <br />
<br />
Der LM335 und LM35 messen nach einer einfachen Kalibrierung mit einem Poti, bis auf 1<sup>o</sup>C genau. Dazu muss man mit dem Poti die Ausgangsspannung bei 25<sup>o</sup>C auf 2,98V einstellen (2,98V / 0,01V/K = 298K = 25<sup>o</sup>C). Da der Sensor über seinen Messbereich sehr linear ist, braucht man nur bei einer Temperatur kalibrieren. Durch den Einsatz mehrerer in Reihe geschalteter Sensoren kann man das Ausgangssignal verstärken (bei drei LM335 erhält man dann 30mV/K anstatt 10mV/K) oder, wenn die Sensoren im Raum verteilt sind, einen einfachen Mittelwert bilden.<br />
<br />
====Beschaltung und Dimensionierung eines LM335====<br />
[[Bild:lm335schaltung.jpg|center]]<br />
Da sich der Sensor wie eine Z-Diode verhält, muss der Strom durch diese begrenzt werden, um eine Verfälschung des Signals oder gar eine Zerstörung zu verhindern. Fließt jedoch zu wenig Strom durch die Diode, so treten Störungen auf und die Genauigkeit sinkt.<br />
<br />
Der Strom wird auf einfache Weise wie bei einer LED durch einen Widerstand (hier R1) begrenzt. Der Strom sollte zwischen mindestens 450µA und maximal 5mA liegen. Bei einer Betriebsspannung von 5V kann also für 2mA ein Widerstand von etwa 2,5kOhm benutzt werden (R = U/I). <br />
<br />
Die max. Betriebsspannung sollte 30V nicht überschreiten!<br />
<br />
Zur Kalibrierung schließt man an ein 10kOhm Potentiometer zwischen V+ und V- (GND) des Sensors an und legt dessen Schleifer auf den ADJ-Pin. Nun stellt man die Ausgangsspannung in Abhängigkeit von der Raumtemperatur (welche bekannt sein sollte) ein (1<sup>o</sup>C = 1K, 273K = 0<sup>o</sup>C). Kalibriert man den LM335 nicht, so kann dieser um bis zu 9K falsch gehen!<br />
<br />
Im letzten Bild (ganz rechts) ist die schon angesprochene Reihenschaltung aufgezeichnet. Um ein größeres Ausgangssignal zu erhalten, kann man das Signal auch mit einem [[Operationsverstärker#Verstärker|Operationsverstärker]] verstärken. Das ist günstiger und man hat die Möglichkeit, das Signal um ein Vielfaches zu verstärken ohne einige Dutzend Sensoren einzusetzen!<br />
<br />
Pin-Belegungen und weitere Daten finden sich im Datenblatt (kann man z.B. bei Reichelt herunterladen).<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Auflösung von 0.5<sup>o</sup> Grad Celsius messen und wird über einen I2C Bus angesprochen. <br />
<br />
Der Messbereich: <br />
*−25<sup>o</sup>C bis 100<sup>o</sup>C bei ±2<sup>o</sup>C(max)Genauigkeit.<br />
*−55<sup>o</sup>C bis 125<sup>o</sup>C bei ±3<sup>o</sup>C(max)Genauigkeit. <br />
<br />
Der LM75 bietet:<br />
* Einen Schaltausgang (invertierbar) - z.B. für Ventilator, Heizung etc.<br />
* Programmierbarer oberer und unterer Schaltpunkt.<br />
* Schaltausgang alternativ auch als Interrupt verwendbar.<br />
* Über von außen einstellbare I2C-Adresse. Bit 0 = R/W, Bits 1-3 einstellbar, Bit 4-7 fixe Adresse 0x9n <br />
* Maximal 8 Stück LM75 an einem I2C Bus. <br />
<br />
Durch I2C-Lesebefehle kann man die Temperatur (2x8Bit)auslesen.<br />
<br />
Das erste Byte ist der Temperatur-Vorkommawert in ganzen Grad, als normales signed char. Das Bit 7 vom zweiten Byte bestimmt den Nachkommawert. Wenn Bit 7 gleich 1 so ist der Nachkommawert + 0.5<sup>o</sup>C. Auch dann + 0.5 <sup>o</sup>C wenn Vorkommawert negativ. Wenn Bit 7 gleich 0 so ist der Nachkommawert = 0. Bit 0-6 vom zweiten Byte sind ohne Bedeutung.<br />
<br />
====Programm-Beispiel für LM75====<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen.<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
Man erhält als Ergebnis die Temperatur in 0,5 Grad Schritten (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
Ein weiteres Beispiel [http://www.darc-coburg.de/modules/wiwimod/index.php?page=LM75]<br />
<br />
==Resistive Sensoren==<br />
Resistive Sensoren bzw. Linearpotentiometer arbeiten als Spannungsteiler über einer Hybridleitplastik- schicht und sind in unterschiedlichen Bauformen erhältlich; z.B. für Zylindereinbau, Klemmbock- u. Gelenkaugenbefestigung oder Taster.<br />
Deren Einsatzgebiete sind vorwiegend in der Industrie.<br />
<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
Induktiver Näherungsschalter enthalten schon eine Elektronik zur Auswertung und liefern meist ein digitales Signal. Die Funktion ist ähnlich den einfachen Metallsuchgeräten: Der Sensor spricht an, wenn im Abstand von weniger als z.B. 2 cm Metall vor dem Sensor ist.<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
== Infrarot Thermopiles ==<br />
Bei den Infrarotsensoren gibt es neben den oben beschrieben PIR Sensoren aus Bewegungsmeldern auch solche auf Basis von Thermopiles. Diese können nicht nur auf Änderungen reagieren, sondern auch eine konstante Strahlung messen. Beispiele ist der TPS334. Der Sensor gibt eine relativ kleine Spannung (oft < 0,1 mV) aus, die in der Regel erst verstärkt werden muss. Neben dem eigentlichen Strahlungssensor gibt es noch eine Möglichkeit die Temperatur des Sensors selbst zu messen, um die Abstrahlung des Sensor zu kompensieren. <br />
<br />
Zu finden sind solche Sensoren z.B. in Infrarotthermometern.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* [[Benutzer:BASTIUniversal|BASTIUniversal]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.roboternetz.de/community/showthread.php?51885-Drehzahlmessung-mit-B%FCrstenimpulsen-an-kleinem-DC-Motor Forumbeitrag: Drehzahlmessung bei Gleichstrommotoren über Bürstenimpulsauswertung]<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=18764Sensorarten2011-11-16T18:02:49Z<p>Manf: /* Sharp GP2YA21YK */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
Es ist auch möglich Informationen für die Steuerung des Roboters nicht nur aus eigens dafür gebaute Sensoren zu gewinnen. Durch Ausnutzung der Eigenschaften von schon vorhandenen Bauteilen können dadurch eventuell separate Sensoren eingespart werden. Beispiel ist im verlinkten Forumbeitrag unter den Weblinks zu finden.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
<br />
===austriamicrosystems AS5040===<br />
<br/><br />
[[Bild:AMS-general_200x200.jpg|right]]<br />
[[Bild:AMS-chip_109x104.jpg|left]]<br />
<br />
Der AS5040 kann absolute Winkelpositionen an einer Achse messen. Die Messung wird indirekt über ein Magnetfeld mittels Hallsensoren durchgeführt. Aufgrund der Anordnung der Hallsensoren und der Integration der Sensoren direkt in Silizium wird eine sehr hohe Genauigkeit bei der Messung erreicht. Das Messprinzip kompensiert ausserdem Störgrössen, wie externes Magnetfeld, Alterungseinflüsse, Temperaturschwankungen und mechanische Toleranzen. <br />
<br />
<br/><br/><br/><br />
Die komplette Auswertung der Sensorsignale geschieht auf dem Chip. <br/><br/><br/><br />
<br />
<br />
[[Bild:AMS-block_700x242.jpg|center]]<br />
<br />
<br />
[[Bild:AMS-pcb_200x152.jpg|right]]<br />
<br/><br/><br/><br />
Durch die hohe Integration reduziert sich die zusätzliche Beschaltung des Chips auf wenige Bauteile, beispielsweise ein paar Filterkondensatoren. <br />
<br/><br/><br/><br/><br/><br/><br />
Die Winkelencoderfamilie von austriamicrosystems besitzt vielfältige Schnittstellen, um den Winkelwert zu übertragen<br />
<br />
{| {{Blauetabelle}}<br />
|Seriell SSI<br />
|Standard Schnittstelle für Winkelencoder in der Industrie<br />
|-<br />
|PWM<br />
|erzeugt abhängig vom Winkel eine entsprechende Pulslänge, läßt sich sehr schön mit der Capturefunktion eines Controllers messen und braucht nur eine Leitung<br />
|-<br />
|I2C<br />
|direkte Schnittstelle zum Microcontroller<br />
|-<br />
|Analog<br />
|kompatible Schnittstelle um beispielsweise Potiapplikationen zu ersetzen<br />
|-<br />
<br />
|Inkremental<br />
|klassische Schnittstelle um relative Bewegungen zu messen, keine Absolutmessung möglich<br />
|-<br />
|BLDC<br />
|erzeugt direkt die Kommutierung für einen bürstenlosen Motor. Durch die höhere Auflösung gegenüber einer 3-Hall-Schalterlösung kann der BLDC mit einem wesentlich höheren Drehmoment gestartet werden<br />
|}<br />
<br />
[[Bild:AMS-magnet_354x421.jpg|left]]<br />
<br/><br/><br/><br/><br />
Bei der Auswahl des Magnets ist darauf zu achten, dass sogenannte Selten-Erde-Magnete verwendet werden. http://de.wikipedia.org/wiki/Seltene_Erden Diese erzeugen ein besonders starkes Magnetfeld, das im 1-Tesla-Bereich liegt. Im Zentrum des Magnetfelds ist ein linearer Bereich, der für die Genauigkeit der Messung ausschlaggebend ist. Solange die Hallsensoren in diesem Bereich liegen, kann eine unkalibrierte Genauigkeit von +/- 0.5 Grad gewährleistet werden. Weiterhin ist zu beachten, dass der Magnet nicht direkt auf eine Eisenwelle montiert wird. Die Eisenwelle verursacht quasi einen magnetischen 'Kurzschluss' und entzieht damit den Hallsensoren das Magnetfeld. Idealerweise sollte eine NE-Welle verwendet werden, oder wenn nicht anders machbar muss eine Isolation aus NE-Material zwischen Eisenwelle und Magnet eingefügt werden.<br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br />
<br/><br/><br/><br/><br/><br/><br />
Ein einfacher erfolgreicher Test des Sensors ist hier beschrieben: http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=322373#322373<br />
<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil, dass die Signale bereits TTL-kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Überlegungen zur Drehgeber-Auswertung]]<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
* [[Beispiel Drehzahlmessung mit Drehgeber]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung, wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Fotodiode|Photodioden]] bzw. [[Fototransistor|Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
Der CNY70 ist ein Foto-Reflex-Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot-LED als Sender und ein Infrarot-Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden.<br />
<br />
Er wird häufig als Sensoren bei einem Linienfolger-Roboter verwendet. Die Reichweite ist jedoch sehr gering, sodass der Abstand zur abgetasteten Fläche klein sein muss. Die maximale Empfindlichkeit ist bei einem Abstand von 0,3mm. Bei etwa 7mm ist die Empfindlichkeit nur noch 10% vom Maximalwert.<br />
<br />
siehe [[CNY70]]<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfache und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muss im Wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernisses. In der Regel reicht sie jedoch einige cm, so dass langsame Roboter durchaus sehr gut damit zurechtkommen. Durch besonders helle Infrarot-LEDs und durch zusätzliche LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht, mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt, da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann, wenn sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen des engen Winkels nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
{{FarbigerRahmen|<br />
Wenn man diese Sensoren an Robotern einsetzt, will man meist Hindernisse mit senkrecht stehenden Kanten erkennen. Montiert man den Sensor jedoch in waagrechter Lage, können sich Fehlmessungen ergeben, wenn sich ein Objekt am Sensor vorbeibewegt (z.B. wenn sich der Roboter dreht). Es wird an der Kante kurzzeitig eine Entfernung gemessen, die geringer als die tatsächliche Entfernung zum Hindernis ist (oder auch größer als die Entfernung zu einem zweiten Hindernis hinter dem ersten, je nach Bewegungsrichtung!). Man löst dieses Problem, indem man den Sensor in senkrechter Position montiert, also so, dass die beiden Linsen übereinander statt nebeneinander liegen. Dies wird auch im Datenblatt des Sensors empfohlen: der Sensor sollte immer senkrecht zur Bewegungsrichtung des Hindernisses montiert werden.<br />
<br />
Sehr deutlich erkennt man diese Messfehler, wenn man den Sensor als eine Art 3D-Scanner einsetzt: http://www.team-iwan.de/technik/sharp1.php<br />
}}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
Die Gehäuse dieser Sensoren sehen wie ganz gewöhnlicher Kunststoff aus. Sie bestehen jedoch aus leitfähigem Material! (Kaum zu glauben, aber einfach nachprüfbar: zwischen den beiden Befestigungslöchern misst man einen Widerstand von etwa 250 bis 300 Ohm). Außerdem ist das Gehäuse mit dem Masseanschluss verbunden. Dies ist normalerweise nicht weiter wichtig, da die Sensoren meist entweder isoliert (zB auf Kunststoffteilen) oder auf einem geerdeten/mit Masse verbundenen Metallchassis montiert werden. Wenn man aber die Sensoren abschalten will, um Strom zu sparen (die Sensoren verbrauchen etwa 30 bis 40mA), muss man bei nicht isolierter Montage unbedingt die Plusleitung schalten! Wenn man die Masse-Zuleitung unterbricht, ist der Sensor sonst trotzdem noch über das Gehäuse und das Chassis mit Masse verbunden und wird nicht deaktiviert!<br />
|}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
[[Bild:Sharp_filter.png|thumb|Filter für einen analogen SHARP-Sensor zur Vermeidung von Störungen auf der +5V Versorgung und dem Ausgang.]]<br />
Die Stromaufnahme des Sensors von 30-40mA kann täuschen. Mit einer Wiederholrate von etwa 1kHz benötigt der Sensor kurzzeitig eine Stromaufnahme von ca. 1 Ampere! Diese Stromstärke braucht der Sharp-Sensor, um damit seine Infrarot-Sende-LED zu treiben. Durch die hohe Stromaufnahme kann der Sensor infrarotes Licht kurzzeitig mit hoher Intensität aussenden.<br />
Die Verwendung eines oder sogar mehrerer IR-Distanzsensoren dieser Sorte kann zu erheblichen Spannungseinbrüchen auf der 5V-Versorgungsleitung führen. Am Analogausgang des Sensors können ebenso noch Störungen vorhanden sein. Um Rückwirkungen auf die Versorgung zu vermeiden und die Störungen auf der Ausgangsleitung (für einen Sensor mit analogem Ausgang!) zu verringern, soll hier auf den nebenstehenden Schaltplan verwiesen werden. Der Elko vor dem Sensor sollte die angegebene Kapazität haben, da der Sharp-Sensor seine Stromspitzen hauptsächlich aus diesem bezieht. Dieser Elko wird über den 3,3-Ohm-Widerstand aufgeladen. Der Widerstand kann auch durch eine Induktivität ersetzt werden, Berechnung über thomsonsche Schwingungsformel f=1/(2*Pi*Wurzel(L*C)), wobei die Grenzfrequenz f deutlich kleiner als die 1kHz gewählt werden sollten, um die gewünschte Filterwirkung (Dämpfung) zu erreichen.<br />
Weitere Informationen:<br />
[http://www.roboternetz.de/community/threads/33656-GP2D120-mit-St%C3%B6rung-oder-oder-ist-das-Normalbetrieb Thema im Roboternetz]<br />
[http://www.segor.de/L1Bausaetze/gp2d12.shtml Untersuchung von Segor Electronics]<br />
|}<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
Dies ist der am häufigsten eingesetzte Sharp-Typ bei mobilen Robotern.<br />
Dieser Sensor wird seit 2010 nicht mehr produziert. Der Nachfolger ist der GP2Y0A21YK0F.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
<br />
====Sharp GP2Y0A21YK0F (Nachfolger des GP2D12)==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
[[Bild:GP2Y0A21YK0F.jpg|center]]<br />
<br />
[[Bild:GP2Y0A21YK0F_diagram.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
====Sharp GP2D120====<br />
Distanz 4-30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20-150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10-80 cm - Entfernung wird durch 8-Bit-Digitalausgang übermittelt.<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang. <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetzes, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannungen der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D)<br />
<br />
Mehrere Messungen ergeben ein besseres Ergebnis:<br />
Dazu werden für jeweils zwei Messungen die Konstanten A und B errechnet (s. o.) und in ein Plotprogramm als Graph dargestellt.<br />
Plotprogramm (OpenSource): [http://www.padowan.dk Graph]<br />
<br />
Funktion: <br />
f(x)=A/(x-B)<br />
<br />
Man kann dann durch Verändern von A und B einen Graphen erstellen, der die meisten Eigenschaften der anderen Graphen enthällt. Diese Konstanten entsprechen dann ziemlich genau dem Realwert.<br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3 cm bis 3 m gut geeignet. Der SRF04 kann einen 3 cm dicken Besenstiel in 2 m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neue SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3 cm bis 6 m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand (LDR), dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich, auch bis zu 16 Mehrfachechos von weiter hinten gelegenen Gegenständen auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in Zentimeter, Zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
<br />
[[SRF08 mit avr-gcc|SRF08 Programmbeispiel mit AVR-GCC]]<br />
<br />
SFR08 Programmbeispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegebenen Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. Allerdings bietet er im Gegensatz zum SRF08 weder einen Lichtsensor noch die Möglichkeit, die Mehrfachechos auszulesen.<br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe, der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vor allem die Tatsache, dass sowohl RS232- und I2C-Bus-Schnittstelle vorhanden ist, dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40kHz <br />
* Reichweite 15 cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom-Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum Vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompass-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürfnisse von Robotern gestaltet worden. Es misst seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompass, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen (Motoren)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kunststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muss am Pin 6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Messpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
===CMPS09===<br />
Inzwischen ist der Nachfolger des CMPS03, nämlich der CMPS09 erhältlich.<br />
<br />
Das Kompassmodul verfügt nun über eine Tilt-Kompensierung und ist im Vergleich zum CMPS03 deutlich kleiner. Die Auswertung geschieht, wie beim CMPS03 auch, über einen PWM-Ausgang oder den I2C-Bus, zudem ist hier noch eine serielle Schnittstelle (UART) mit 9600N2 vorhanden. Das Kompassmodul läuft bereits ab 3,3V.<br />
<br />
Das Modul kann z.B. über robotikhardware.de bezogen werden.<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
[[Bild:beschleunigungssensor_rh.gif|center]]<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkeiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
siehe auch: [[Sensoren - Beschleunigung]]<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioliskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in Kfz verwendet, stößt jedoch an ihre Grenzen, wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedrigen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
Siehe auch unter [[Sensoren für die Geschwindigkeitsmessung]]<br />
<br />
==Temperatur== <br />
===NTCs und PTCs===<br />
<br />
siehe [[PTC/NTC]]<br />
<br />
<br />
=== KTY: Silizium Temperatursensoren ===<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies kann schaltungstechnisch oder in Software erfolgen.<br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm als Spannungsteiler. Bei 5 V führt dies aber schon zu einer merklichen Eigenerwärmung. Im Vergleich zu, PT1000 ist der Temperaturkoeffizient beim KTY etwa doppelt so hoch - man bekommt also etwa das doppelte Signal.<br />
http://www.roboternetz.de/phpBB2/viewtopic.php?p=342164&sid=ad63fd51eb08bcf225389af5bbc4fcfd#342164<br />
<br />
=== Diode als Temperatursensor ===<br />
Die Flußspannung von Dioden ist temperaturabhängig. Für Siliziumdioden verringert sich die Spannung um etwa 2 mV pro Grad Temperaturerhöhung. Der Absolutwert der Flußspannung hängt etwas vom Strom ab und variiert auch zwischen verschiedenen Chargen. Es ist also fast immer wenigstens ein Abgleich nötig. Es kann auch eine Diodenstrecke eines Transistors genutzt werden, für eine ggf. besser geeignete Gehäuseform (z.B. BD135 im TO126 Gehäuse mit Bohrung).<br />
<br />
===LM335 und LM35===<br />
<br />
[[Bild:LM335.JPG|center]]<br />
<br />
Der Temperatursensor LM335 funktioniert wie eine Z-Diode, die ihre Durchbruchspannung proportional zur Temperatur ändert. Beim Sensor LM335 beträgt diese Änderung 10mV/K, beim Sensor LM35 beträgt die Änderung 10mV/<sup>o</sup>C. <br />
<br />
Der größte Unterschied zwischen den Sensoren ist der, dass am Ausgang des LM335 bei 0<sup>o</sup>C etwa 2,73V anliegen (273K = 0<sup>o</sup>C) und beim LM35 0V. Sollen negative Temperaturen gemessen werden, so muss man für den LM35 das Bezugspotential GND anheben (z.B. mit zwei Si-Dioden).<br />
<br />
Von den Sensoren LM335 und LM35 gibt es auch noch genauere Ausführungen, welche einen geringeren Temperatur-Fehler ab Werk haben. Diese Versionen heißen LM15/LM25 bzw. LM135/LM235 und sind entsprechend teurer als die 3er Version (zum Vergleich: LM335 kostet bei Reichelt 0,89€, der LM135 jedoch 7,75€). <br />
<br />
Der LM335 und LM35 messen nach einer einfachen Kalibrierung mit einem Poti, bis auf 1<sup>o</sup>C genau. Dazu muss man mit dem Poti die Ausgangsspannung bei 25<sup>o</sup>C auf 2,98V einstellen (2,98V / 0,01V/K = 298K = 25<sup>o</sup>C). Da der Sensor über seinen Messbereich sehr linear ist, braucht man nur bei einer Temperatur kalibrieren. Durch den Einsatz mehrerer in Reihe geschalteter Sensoren kann man das Ausgangssignal verstärken (bei drei LM335 erhält man dann 30mV/K anstatt 10mV/K) oder, wenn die Sensoren im Raum verteilt sind, einen einfachen Mittelwert bilden.<br />
<br />
====Beschaltung und Dimensionierung eines LM335====<br />
[[Bild:lm335schaltung.jpg|center]]<br />
Da sich der Sensor wie eine Z-Diode verhält, muss der Strom durch diese begrenzt werden, um eine Verfälschung des Signals oder gar eine Zerstörung zu verhindern. Fließt jedoch zu wenig Strom durch die Diode, so treten Störungen auf und die Genauigkeit sinkt.<br />
<br />
Der Strom wird auf einfache Weise wie bei einer LED durch einen Widerstand (hier R1) begrenzt. Der Strom sollte zwischen mindestens 450µA und maximal 5mA liegen. Bei einer Betriebsspannung von 5V kann also für 2mA ein Widerstand von etwa 2,5kOhm benutzt werden (R = U/I). <br />
<br />
Die max. Betriebsspannung sollte 30V nicht überschreiten!<br />
<br />
Zur Kalibrierung schließt man an ein 10kOhm Potentiometer zwischen V+ und V- (GND) des Sensors an und legt dessen Schleifer auf den ADJ-Pin. Nun stellt man die Ausgangsspannung in Abhängigkeit von der Raumtemperatur (welche bekannt sein sollte) ein (1<sup>o</sup>C = 1K, 273K = 0<sup>o</sup>C). Kalibriert man den LM335 nicht, so kann dieser um bis zu 9K falsch gehen!<br />
<br />
Im letzten Bild (ganz rechts) ist die schon angesprochene Reihenschaltung aufgezeichnet. Um ein größeres Ausgangssignal zu erhalten, kann man das Signal auch mit einem [[Operationsverstärker#Verstärker|Operationsverstärker]] verstärken. Das ist günstiger und man hat die Möglichkeit, das Signal um ein Vielfaches zu verstärken ohne einige Dutzend Sensoren einzusetzen!<br />
<br />
Pin-Belegungen und weitere Daten finden sich im Datenblatt (kann man z.B. bei Reichelt herunterladen).<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Auflösung von 0.5<sup>o</sup> Grad Celsius messen und wird über einen I2C Bus angesprochen. <br />
<br />
Der Messbereich: <br />
*−25<sup>o</sup>C bis 100<sup>o</sup>C bei ±2<sup>o</sup>C(max)Genauigkeit.<br />
*−55<sup>o</sup>C bis 125<sup>o</sup>C bei ±3<sup>o</sup>C(max)Genauigkeit. <br />
<br />
Der LM75 bietet:<br />
* Einen Schaltausgang (invertierbar) - z.B. für Ventilator, Heizung etc.<br />
* Programmierbarer oberer und unterer Schaltpunkt.<br />
* Schaltausgang alternativ auch als Interrupt verwendbar.<br />
* Über von außen einstellbare I2C-Adresse. Bit 0 = R/W, Bits 1-3 einstellbar, Bit 4-7 fixe Adresse 0x9n <br />
* Maximal 8 Stück LM75 an einem I2C Bus. <br />
<br />
Durch I2C-Lesebefehle kann man die Temperatur (2x8Bit)auslesen.<br />
<br />
Das erste Byte ist der Temperatur-Vorkommawert in ganzen Grad, als normales signed char. Das Bit 7 vom zweiten Byte bestimmt den Nachkommawert. Wenn Bit 7 gleich 1 so ist der Nachkommawert + 0.5<sup>o</sup>C. Auch dann + 0.5 <sup>o</sup>C wenn Vorkommawert negativ. Wenn Bit 7 gleich 0 so ist der Nachkommawert = 0. Bit 0-6 vom zweiten Byte sind ohne Bedeutung.<br />
<br />
====Programm-Beispiel für LM75====<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen.<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
Man erhält als Ergebnis die Temperatur in 0,5 Grad Schritten (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
Ein weiteres Beispiel [http://www.darc-coburg.de/modules/wiwimod/index.php?page=LM75]<br />
<br />
==Resistive Sensoren==<br />
Resistive Sensoren bzw. Linearpotentiometer arbeiten als Spannungsteiler über einer Hybridleitplastik- schicht und sind in unterschiedlichen Bauformen erhältlich; z.B. für Zylindereinbau, Klemmbock- u. Gelenkaugenbefestigung oder Taster.<br />
Deren Einsatzgebiete sind vorwiegend in der Industrie.<br />
<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
Induktiver Näherungsschalter enthalten schon eine Elektronik zur Auswertung und liefern meist ein digitales Signal. Die Funktion ist ähnlich den einfachen Metallsuchgeräten: Der Sensor spricht an, wenn im Abstand von weniger als z.B. 2 cm Metall vor dem Sensor ist.<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
== Infrarot Thermopiles ==<br />
Bei den Infrarotsensoren gibt es neben den oben beschrieben PIR Sensoren aus Bewegungsmeldern auch solche auf Basis von Thermopiles. Diese können nicht nur auf Änderungen reagieren, sondern auch eine konstante Strahlung messen. Beispiele ist der TPS334. Der Sensor gibt eine relativ kleine Spannung (oft < 0,1 mV) aus, die in der Regel erst verstärkt werden muss. Neben dem eigentlichen Strahlungssensor gibt es noch eine Möglichkeit die Temperatur des Sensors selbst zu messen, um die Abstrahlung des Sensor zu kompensieren. <br />
<br />
Zu finden sind solche Sensoren z.B. in Infrarotthermometern.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* [[Benutzer:BASTIUniversal|BASTIUniversal]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.roboternetz.de/community/showthread.php?51885-Drehzahlmessung-mit-B%FCrstenimpulsen-an-kleinem-DC-Motor Forumbeitrag: Drehzahlmessung bei Gleichstrommotoren über Bürstenimpulsauswertung]<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=18763Sensorarten2011-11-16T18:01:35Z<p>Manf: /* Sharp GP2YA21YK */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
Es ist auch möglich Informationen für die Steuerung des Roboters nicht nur aus eigens dafür gebaute Sensoren zu gewinnen. Durch Ausnutzung der Eigenschaften von schon vorhandenen Bauteilen können dadurch eventuell separate Sensoren eingespart werden. Beispiel ist im verlinkten Forumbeitrag unter den Weblinks zu finden.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
<br />
===austriamicrosystems AS5040===<br />
<br/><br />
[[Bild:AMS-general_200x200.jpg|right]]<br />
[[Bild:AMS-chip_109x104.jpg|left]]<br />
<br />
Der AS5040 kann absolute Winkelpositionen an einer Achse messen. Die Messung wird indirekt über ein Magnetfeld mittels Hallsensoren durchgeführt. Aufgrund der Anordnung der Hallsensoren und der Integration der Sensoren direkt in Silizium wird eine sehr hohe Genauigkeit bei der Messung erreicht. Das Messprinzip kompensiert ausserdem Störgrössen, wie externes Magnetfeld, Alterungseinflüsse, Temperaturschwankungen und mechanische Toleranzen. <br />
<br />
<br/><br/><br/><br />
Die komplette Auswertung der Sensorsignale geschieht auf dem Chip. <br/><br/><br/><br />
<br />
<br />
[[Bild:AMS-block_700x242.jpg|center]]<br />
<br />
<br />
[[Bild:AMS-pcb_200x152.jpg|right]]<br />
<br/><br/><br/><br />
Durch die hohe Integration reduziert sich die zusätzliche Beschaltung des Chips auf wenige Bauteile, beispielsweise ein paar Filterkondensatoren. <br />
<br/><br/><br/><br/><br/><br/><br />
Die Winkelencoderfamilie von austriamicrosystems besitzt vielfältige Schnittstellen, um den Winkelwert zu übertragen<br />
<br />
{| {{Blauetabelle}}<br />
|Seriell SSI<br />
|Standard Schnittstelle für Winkelencoder in der Industrie<br />
|-<br />
|PWM<br />
|erzeugt abhängig vom Winkel eine entsprechende Pulslänge, läßt sich sehr schön mit der Capturefunktion eines Controllers messen und braucht nur eine Leitung<br />
|-<br />
|I2C<br />
|direkte Schnittstelle zum Microcontroller<br />
|-<br />
|Analog<br />
|kompatible Schnittstelle um beispielsweise Potiapplikationen zu ersetzen<br />
|-<br />
<br />
|Inkremental<br />
|klassische Schnittstelle um relative Bewegungen zu messen, keine Absolutmessung möglich<br />
|-<br />
|BLDC<br />
|erzeugt direkt die Kommutierung für einen bürstenlosen Motor. Durch die höhere Auflösung gegenüber einer 3-Hall-Schalterlösung kann der BLDC mit einem wesentlich höheren Drehmoment gestartet werden<br />
|}<br />
<br />
[[Bild:AMS-magnet_354x421.jpg|left]]<br />
<br/><br/><br/><br/><br />
Bei der Auswahl des Magnets ist darauf zu achten, dass sogenannte Selten-Erde-Magnete verwendet werden. http://de.wikipedia.org/wiki/Seltene_Erden Diese erzeugen ein besonders starkes Magnetfeld, das im 1-Tesla-Bereich liegt. Im Zentrum des Magnetfelds ist ein linearer Bereich, der für die Genauigkeit der Messung ausschlaggebend ist. Solange die Hallsensoren in diesem Bereich liegen, kann eine unkalibrierte Genauigkeit von +/- 0.5 Grad gewährleistet werden. Weiterhin ist zu beachten, dass der Magnet nicht direkt auf eine Eisenwelle montiert wird. Die Eisenwelle verursacht quasi einen magnetischen 'Kurzschluss' und entzieht damit den Hallsensoren das Magnetfeld. Idealerweise sollte eine NE-Welle verwendet werden, oder wenn nicht anders machbar muss eine Isolation aus NE-Material zwischen Eisenwelle und Magnet eingefügt werden.<br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br />
<br/><br/><br/><br/><br/><br/><br />
Ein einfacher erfolgreicher Test des Sensors ist hier beschrieben: http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=322373#322373<br />
<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil, dass die Signale bereits TTL-kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Überlegungen zur Drehgeber-Auswertung]]<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
* [[Beispiel Drehzahlmessung mit Drehgeber]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung, wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Fotodiode|Photodioden]] bzw. [[Fototransistor|Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
Der CNY70 ist ein Foto-Reflex-Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot-LED als Sender und ein Infrarot-Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden.<br />
<br />
Er wird häufig als Sensoren bei einem Linienfolger-Roboter verwendet. Die Reichweite ist jedoch sehr gering, sodass der Abstand zur abgetasteten Fläche klein sein muss. Die maximale Empfindlichkeit ist bei einem Abstand von 0,3mm. Bei etwa 7mm ist die Empfindlichkeit nur noch 10% vom Maximalwert.<br />
<br />
siehe [[CNY70]]<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfache und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muss im Wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernisses. In der Regel reicht sie jedoch einige cm, so dass langsame Roboter durchaus sehr gut damit zurechtkommen. Durch besonders helle Infrarot-LEDs und durch zusätzliche LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht, mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt, da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann, wenn sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen des engen Winkels nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
{{FarbigerRahmen|<br />
Wenn man diese Sensoren an Robotern einsetzt, will man meist Hindernisse mit senkrecht stehenden Kanten erkennen. Montiert man den Sensor jedoch in waagrechter Lage, können sich Fehlmessungen ergeben, wenn sich ein Objekt am Sensor vorbeibewegt (z.B. wenn sich der Roboter dreht). Es wird an der Kante kurzzeitig eine Entfernung gemessen, die geringer als die tatsächliche Entfernung zum Hindernis ist (oder auch größer als die Entfernung zu einem zweiten Hindernis hinter dem ersten, je nach Bewegungsrichtung!). Man löst dieses Problem, indem man den Sensor in senkrechter Position montiert, also so, dass die beiden Linsen übereinander statt nebeneinander liegen. Dies wird auch im Datenblatt des Sensors empfohlen: der Sensor sollte immer senkrecht zur Bewegungsrichtung des Hindernisses montiert werden.<br />
<br />
Sehr deutlich erkennt man diese Messfehler, wenn man den Sensor als eine Art 3D-Scanner einsetzt: http://www.team-iwan.de/technik/sharp1.php<br />
}}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
Die Gehäuse dieser Sensoren sehen wie ganz gewöhnlicher Kunststoff aus. Sie bestehen jedoch aus leitfähigem Material! (Kaum zu glauben, aber einfach nachprüfbar: zwischen den beiden Befestigungslöchern misst man einen Widerstand von etwa 250 bis 300 Ohm). Außerdem ist das Gehäuse mit dem Masseanschluss verbunden. Dies ist normalerweise nicht weiter wichtig, da die Sensoren meist entweder isoliert (zB auf Kunststoffteilen) oder auf einem geerdeten/mit Masse verbundenen Metallchassis montiert werden. Wenn man aber die Sensoren abschalten will, um Strom zu sparen (die Sensoren verbrauchen etwa 30 bis 40mA), muss man bei nicht isolierter Montage unbedingt die Plusleitung schalten! Wenn man die Masse-Zuleitung unterbricht, ist der Sensor sonst trotzdem noch über das Gehäuse und das Chassis mit Masse verbunden und wird nicht deaktiviert!<br />
|}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
[[Bild:Sharp_filter.png|thumb|Filter für einen analogen SHARP-Sensor zur Vermeidung von Störungen auf der +5V Versorgung und dem Ausgang.]]<br />
Die Stromaufnahme des Sensors von 30-40mA kann täuschen. Mit einer Wiederholrate von etwa 1kHz benötigt der Sensor kurzzeitig eine Stromaufnahme von ca. 1 Ampere! Diese Stromstärke braucht der Sharp-Sensor, um damit seine Infrarot-Sende-LED zu treiben. Durch die hohe Stromaufnahme kann der Sensor infrarotes Licht kurzzeitig mit hoher Intensität aussenden.<br />
Die Verwendung eines oder sogar mehrerer IR-Distanzsensoren dieser Sorte kann zu erheblichen Spannungseinbrüchen auf der 5V-Versorgungsleitung führen. Am Analogausgang des Sensors können ebenso noch Störungen vorhanden sein. Um Rückwirkungen auf die Versorgung zu vermeiden und die Störungen auf der Ausgangsleitung (für einen Sensor mit analogem Ausgang!) zu verringern, soll hier auf den nebenstehenden Schaltplan verwiesen werden. Der Elko vor dem Sensor sollte die angegebene Kapazität haben, da der Sharp-Sensor seine Stromspitzen hauptsächlich aus diesem bezieht. Dieser Elko wird über den 3,3-Ohm-Widerstand aufgeladen. Der Widerstand kann auch durch eine Induktivität ersetzt werden, Berechnung über thomsonsche Schwingungsformel f=1/(2*Pi*Wurzel(L*C)), wobei die Grenzfrequenz f deutlich kleiner als die 1kHz gewählt werden sollten, um die gewünschte Filterwirkung (Dämpfung) zu erreichen.<br />
Weitere Informationen:<br />
[http://www.roboternetz.de/community/threads/33656-GP2D120-mit-St%C3%B6rung-oder-oder-ist-das-Normalbetrieb Thema im Roboternetz]<br />
[http://www.segor.de/L1Bausaetze/gp2d12.shtml Untersuchung von Segor Electronics]<br />
|}<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
Dies ist der am häufigsten eingesetzte Sharp-Typ bei mobilen Robotern.<br />
Dieser Sensor wird seit 2010 nicht mehr produziert. Der Nachfolger ist der GP2Y0A21YK0F.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
<br />
====Sharp GP2Y0A21YK0F (Nachfolger des GP2D12)==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
[[Bild:GP2Y0A21YK0F.jpg|center]]<br />
<br />
[[Bild:GP2Y0A21YK0F_diagram.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
Messfleckgröße des SHARP GP2Y0A41SK0F <br />
siehe <br />
http://www.roboternetz.de/community/threads/55555-Messfleckgröße-des-SHARP-GP2Y0A41SK0F?p=530710&viewfull=1#post530710<br />
<br />
====Sharp GP2D120====<br />
Distanz 4-30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20-150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10-80 cm - Entfernung wird durch 8-Bit-Digitalausgang übermittelt.<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang. <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetzes, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannungen der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D)<br />
<br />
Mehrere Messungen ergeben ein besseres Ergebnis:<br />
Dazu werden für jeweils zwei Messungen die Konstanten A und B errechnet (s. o.) und in ein Plotprogramm als Graph dargestellt.<br />
Plotprogramm (OpenSource): [http://www.padowan.dk Graph]<br />
<br />
Funktion: <br />
f(x)=A/(x-B)<br />
<br />
Man kann dann durch Verändern von A und B einen Graphen erstellen, der die meisten Eigenschaften der anderen Graphen enthällt. Diese Konstanten entsprechen dann ziemlich genau dem Realwert.<br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3 cm bis 3 m gut geeignet. Der SRF04 kann einen 3 cm dicken Besenstiel in 2 m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neue SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3 cm bis 6 m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand (LDR), dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich, auch bis zu 16 Mehrfachechos von weiter hinten gelegenen Gegenständen auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in Zentimeter, Zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
<br />
[[SRF08 mit avr-gcc|SRF08 Programmbeispiel mit AVR-GCC]]<br />
<br />
SFR08 Programmbeispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegebenen Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. Allerdings bietet er im Gegensatz zum SRF08 weder einen Lichtsensor noch die Möglichkeit, die Mehrfachechos auszulesen.<br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe, der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vor allem die Tatsache, dass sowohl RS232- und I2C-Bus-Schnittstelle vorhanden ist, dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40kHz <br />
* Reichweite 15 cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom-Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum Vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompass-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürfnisse von Robotern gestaltet worden. Es misst seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompass, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen (Motoren)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kunststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muss am Pin 6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Messpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
===CMPS09===<br />
Inzwischen ist der Nachfolger des CMPS03, nämlich der CMPS09 erhältlich.<br />
<br />
Das Kompassmodul verfügt nun über eine Tilt-Kompensierung und ist im Vergleich zum CMPS03 deutlich kleiner. Die Auswertung geschieht, wie beim CMPS03 auch, über einen PWM-Ausgang oder den I2C-Bus, zudem ist hier noch eine serielle Schnittstelle (UART) mit 9600N2 vorhanden. Das Kompassmodul läuft bereits ab 3,3V.<br />
<br />
Das Modul kann z.B. über robotikhardware.de bezogen werden.<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
[[Bild:beschleunigungssensor_rh.gif|center]]<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkeiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
siehe auch: [[Sensoren - Beschleunigung]]<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioliskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in Kfz verwendet, stößt jedoch an ihre Grenzen, wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedrigen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
Siehe auch unter [[Sensoren für die Geschwindigkeitsmessung]]<br />
<br />
==Temperatur== <br />
===NTCs und PTCs===<br />
<br />
siehe [[PTC/NTC]]<br />
<br />
<br />
=== KTY: Silizium Temperatursensoren ===<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies kann schaltungstechnisch oder in Software erfolgen.<br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm als Spannungsteiler. Bei 5 V führt dies aber schon zu einer merklichen Eigenerwärmung. Im Vergleich zu, PT1000 ist der Temperaturkoeffizient beim KTY etwa doppelt so hoch - man bekommt also etwa das doppelte Signal.<br />
http://www.roboternetz.de/phpBB2/viewtopic.php?p=342164&sid=ad63fd51eb08bcf225389af5bbc4fcfd#342164<br />
<br />
=== Diode als Temperatursensor ===<br />
Die Flußspannung von Dioden ist temperaturabhängig. Für Siliziumdioden verringert sich die Spannung um etwa 2 mV pro Grad Temperaturerhöhung. Der Absolutwert der Flußspannung hängt etwas vom Strom ab und variiert auch zwischen verschiedenen Chargen. Es ist also fast immer wenigstens ein Abgleich nötig. Es kann auch eine Diodenstrecke eines Transistors genutzt werden, für eine ggf. besser geeignete Gehäuseform (z.B. BD135 im TO126 Gehäuse mit Bohrung).<br />
<br />
===LM335 und LM35===<br />
<br />
[[Bild:LM335.JPG|center]]<br />
<br />
Der Temperatursensor LM335 funktioniert wie eine Z-Diode, die ihre Durchbruchspannung proportional zur Temperatur ändert. Beim Sensor LM335 beträgt diese Änderung 10mV/K, beim Sensor LM35 beträgt die Änderung 10mV/<sup>o</sup>C. <br />
<br />
Der größte Unterschied zwischen den Sensoren ist der, dass am Ausgang des LM335 bei 0<sup>o</sup>C etwa 2,73V anliegen (273K = 0<sup>o</sup>C) und beim LM35 0V. Sollen negative Temperaturen gemessen werden, so muss man für den LM35 das Bezugspotential GND anheben (z.B. mit zwei Si-Dioden).<br />
<br />
Von den Sensoren LM335 und LM35 gibt es auch noch genauere Ausführungen, welche einen geringeren Temperatur-Fehler ab Werk haben. Diese Versionen heißen LM15/LM25 bzw. LM135/LM235 und sind entsprechend teurer als die 3er Version (zum Vergleich: LM335 kostet bei Reichelt 0,89€, der LM135 jedoch 7,75€). <br />
<br />
Der LM335 und LM35 messen nach einer einfachen Kalibrierung mit einem Poti, bis auf 1<sup>o</sup>C genau. Dazu muss man mit dem Poti die Ausgangsspannung bei 25<sup>o</sup>C auf 2,98V einstellen (2,98V / 0,01V/K = 298K = 25<sup>o</sup>C). Da der Sensor über seinen Messbereich sehr linear ist, braucht man nur bei einer Temperatur kalibrieren. Durch den Einsatz mehrerer in Reihe geschalteter Sensoren kann man das Ausgangssignal verstärken (bei drei LM335 erhält man dann 30mV/K anstatt 10mV/K) oder, wenn die Sensoren im Raum verteilt sind, einen einfachen Mittelwert bilden.<br />
<br />
====Beschaltung und Dimensionierung eines LM335====<br />
[[Bild:lm335schaltung.jpg|center]]<br />
Da sich der Sensor wie eine Z-Diode verhält, muss der Strom durch diese begrenzt werden, um eine Verfälschung des Signals oder gar eine Zerstörung zu verhindern. Fließt jedoch zu wenig Strom durch die Diode, so treten Störungen auf und die Genauigkeit sinkt.<br />
<br />
Der Strom wird auf einfache Weise wie bei einer LED durch einen Widerstand (hier R1) begrenzt. Der Strom sollte zwischen mindestens 450µA und maximal 5mA liegen. Bei einer Betriebsspannung von 5V kann also für 2mA ein Widerstand von etwa 2,5kOhm benutzt werden (R = U/I). <br />
<br />
Die max. Betriebsspannung sollte 30V nicht überschreiten!<br />
<br />
Zur Kalibrierung schließt man an ein 10kOhm Potentiometer zwischen V+ und V- (GND) des Sensors an und legt dessen Schleifer auf den ADJ-Pin. Nun stellt man die Ausgangsspannung in Abhängigkeit von der Raumtemperatur (welche bekannt sein sollte) ein (1<sup>o</sup>C = 1K, 273K = 0<sup>o</sup>C). Kalibriert man den LM335 nicht, so kann dieser um bis zu 9K falsch gehen!<br />
<br />
Im letzten Bild (ganz rechts) ist die schon angesprochene Reihenschaltung aufgezeichnet. Um ein größeres Ausgangssignal zu erhalten, kann man das Signal auch mit einem [[Operationsverstärker#Verstärker|Operationsverstärker]] verstärken. Das ist günstiger und man hat die Möglichkeit, das Signal um ein Vielfaches zu verstärken ohne einige Dutzend Sensoren einzusetzen!<br />
<br />
Pin-Belegungen und weitere Daten finden sich im Datenblatt (kann man z.B. bei Reichelt herunterladen).<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Auflösung von 0.5<sup>o</sup> Grad Celsius messen und wird über einen I2C Bus angesprochen. <br />
<br />
Der Messbereich: <br />
*−25<sup>o</sup>C bis 100<sup>o</sup>C bei ±2<sup>o</sup>C(max)Genauigkeit.<br />
*−55<sup>o</sup>C bis 125<sup>o</sup>C bei ±3<sup>o</sup>C(max)Genauigkeit. <br />
<br />
Der LM75 bietet:<br />
* Einen Schaltausgang (invertierbar) - z.B. für Ventilator, Heizung etc.<br />
* Programmierbarer oberer und unterer Schaltpunkt.<br />
* Schaltausgang alternativ auch als Interrupt verwendbar.<br />
* Über von außen einstellbare I2C-Adresse. Bit 0 = R/W, Bits 1-3 einstellbar, Bit 4-7 fixe Adresse 0x9n <br />
* Maximal 8 Stück LM75 an einem I2C Bus. <br />
<br />
Durch I2C-Lesebefehle kann man die Temperatur (2x8Bit)auslesen.<br />
<br />
Das erste Byte ist der Temperatur-Vorkommawert in ganzen Grad, als normales signed char. Das Bit 7 vom zweiten Byte bestimmt den Nachkommawert. Wenn Bit 7 gleich 1 so ist der Nachkommawert + 0.5<sup>o</sup>C. Auch dann + 0.5 <sup>o</sup>C wenn Vorkommawert negativ. Wenn Bit 7 gleich 0 so ist der Nachkommawert = 0. Bit 0-6 vom zweiten Byte sind ohne Bedeutung.<br />
<br />
====Programm-Beispiel für LM75====<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen.<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
Man erhält als Ergebnis die Temperatur in 0,5 Grad Schritten (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
Ein weiteres Beispiel [http://www.darc-coburg.de/modules/wiwimod/index.php?page=LM75]<br />
<br />
==Resistive Sensoren==<br />
Resistive Sensoren bzw. Linearpotentiometer arbeiten als Spannungsteiler über einer Hybridleitplastik- schicht und sind in unterschiedlichen Bauformen erhältlich; z.B. für Zylindereinbau, Klemmbock- u. Gelenkaugenbefestigung oder Taster.<br />
Deren Einsatzgebiete sind vorwiegend in der Industrie.<br />
<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
Induktiver Näherungsschalter enthalten schon eine Elektronik zur Auswertung und liefern meist ein digitales Signal. Die Funktion ist ähnlich den einfachen Metallsuchgeräten: Der Sensor spricht an, wenn im Abstand von weniger als z.B. 2 cm Metall vor dem Sensor ist.<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
== Infrarot Thermopiles ==<br />
Bei den Infrarotsensoren gibt es neben den oben beschrieben PIR Sensoren aus Bewegungsmeldern auch solche auf Basis von Thermopiles. Diese können nicht nur auf Änderungen reagieren, sondern auch eine konstante Strahlung messen. Beispiele ist der TPS334. Der Sensor gibt eine relativ kleine Spannung (oft < 0,1 mV) aus, die in der Regel erst verstärkt werden muss. Neben dem eigentlichen Strahlungssensor gibt es noch eine Möglichkeit die Temperatur des Sensors selbst zu messen, um die Abstrahlung des Sensor zu kompensieren. <br />
<br />
Zu finden sind solche Sensoren z.B. in Infrarotthermometern.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* [[Benutzer:BASTIUniversal|BASTIUniversal]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.roboternetz.de/community/showthread.php?51885-Drehzahlmessung-mit-B%FCrstenimpulsen-an-kleinem-DC-Motor Forumbeitrag: Drehzahlmessung bei Gleichstrommotoren über Bürstenimpulsauswertung]<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=18762Sensorarten2011-11-16T18:00:22Z<p>Manf: /* Sharp GP2YA21YK */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
Es ist auch möglich Informationen für die Steuerung des Roboters nicht nur aus eigens dafür gebaute Sensoren zu gewinnen. Durch Ausnutzung der Eigenschaften von schon vorhandenen Bauteilen können dadurch eventuell separate Sensoren eingespart werden. Beispiel ist im verlinkten Forumbeitrag unter den Weblinks zu finden.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
<br />
===austriamicrosystems AS5040===<br />
<br/><br />
[[Bild:AMS-general_200x200.jpg|right]]<br />
[[Bild:AMS-chip_109x104.jpg|left]]<br />
<br />
Der AS5040 kann absolute Winkelpositionen an einer Achse messen. Die Messung wird indirekt über ein Magnetfeld mittels Hallsensoren durchgeführt. Aufgrund der Anordnung der Hallsensoren und der Integration der Sensoren direkt in Silizium wird eine sehr hohe Genauigkeit bei der Messung erreicht. Das Messprinzip kompensiert ausserdem Störgrössen, wie externes Magnetfeld, Alterungseinflüsse, Temperaturschwankungen und mechanische Toleranzen. <br />
<br />
<br/><br/><br/><br />
Die komplette Auswertung der Sensorsignale geschieht auf dem Chip. <br/><br/><br/><br />
<br />
<br />
[[Bild:AMS-block_700x242.jpg|center]]<br />
<br />
<br />
[[Bild:AMS-pcb_200x152.jpg|right]]<br />
<br/><br/><br/><br />
Durch die hohe Integration reduziert sich die zusätzliche Beschaltung des Chips auf wenige Bauteile, beispielsweise ein paar Filterkondensatoren. <br />
<br/><br/><br/><br/><br/><br/><br />
Die Winkelencoderfamilie von austriamicrosystems besitzt vielfältige Schnittstellen, um den Winkelwert zu übertragen<br />
<br />
{| {{Blauetabelle}}<br />
|Seriell SSI<br />
|Standard Schnittstelle für Winkelencoder in der Industrie<br />
|-<br />
|PWM<br />
|erzeugt abhängig vom Winkel eine entsprechende Pulslänge, läßt sich sehr schön mit der Capturefunktion eines Controllers messen und braucht nur eine Leitung<br />
|-<br />
|I2C<br />
|direkte Schnittstelle zum Microcontroller<br />
|-<br />
|Analog<br />
|kompatible Schnittstelle um beispielsweise Potiapplikationen zu ersetzen<br />
|-<br />
<br />
|Inkremental<br />
|klassische Schnittstelle um relative Bewegungen zu messen, keine Absolutmessung möglich<br />
|-<br />
|BLDC<br />
|erzeugt direkt die Kommutierung für einen bürstenlosen Motor. Durch die höhere Auflösung gegenüber einer 3-Hall-Schalterlösung kann der BLDC mit einem wesentlich höheren Drehmoment gestartet werden<br />
|}<br />
<br />
[[Bild:AMS-magnet_354x421.jpg|left]]<br />
<br/><br/><br/><br/><br />
Bei der Auswahl des Magnets ist darauf zu achten, dass sogenannte Selten-Erde-Magnete verwendet werden. http://de.wikipedia.org/wiki/Seltene_Erden Diese erzeugen ein besonders starkes Magnetfeld, das im 1-Tesla-Bereich liegt. Im Zentrum des Magnetfelds ist ein linearer Bereich, der für die Genauigkeit der Messung ausschlaggebend ist. Solange die Hallsensoren in diesem Bereich liegen, kann eine unkalibrierte Genauigkeit von +/- 0.5 Grad gewährleistet werden. Weiterhin ist zu beachten, dass der Magnet nicht direkt auf eine Eisenwelle montiert wird. Die Eisenwelle verursacht quasi einen magnetischen 'Kurzschluss' und entzieht damit den Hallsensoren das Magnetfeld. Idealerweise sollte eine NE-Welle verwendet werden, oder wenn nicht anders machbar muss eine Isolation aus NE-Material zwischen Eisenwelle und Magnet eingefügt werden.<br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br />
<br/><br/><br/><br/><br/><br/><br />
Ein einfacher erfolgreicher Test des Sensors ist hier beschrieben: http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=322373#322373<br />
<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil, dass die Signale bereits TTL-kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Überlegungen zur Drehgeber-Auswertung]]<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
* [[Beispiel Drehzahlmessung mit Drehgeber]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung, wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Fotodiode|Photodioden]] bzw. [[Fototransistor|Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
Der CNY70 ist ein Foto-Reflex-Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot-LED als Sender und ein Infrarot-Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden.<br />
<br />
Er wird häufig als Sensoren bei einem Linienfolger-Roboter verwendet. Die Reichweite ist jedoch sehr gering, sodass der Abstand zur abgetasteten Fläche klein sein muss. Die maximale Empfindlichkeit ist bei einem Abstand von 0,3mm. Bei etwa 7mm ist die Empfindlichkeit nur noch 10% vom Maximalwert.<br />
<br />
siehe [[CNY70]]<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfache und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muss im Wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernisses. In der Regel reicht sie jedoch einige cm, so dass langsame Roboter durchaus sehr gut damit zurechtkommen. Durch besonders helle Infrarot-LEDs und durch zusätzliche LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht, mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt, da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann, wenn sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen des engen Winkels nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
{{FarbigerRahmen|<br />
Wenn man diese Sensoren an Robotern einsetzt, will man meist Hindernisse mit senkrecht stehenden Kanten erkennen. Montiert man den Sensor jedoch in waagrechter Lage, können sich Fehlmessungen ergeben, wenn sich ein Objekt am Sensor vorbeibewegt (z.B. wenn sich der Roboter dreht). Es wird an der Kante kurzzeitig eine Entfernung gemessen, die geringer als die tatsächliche Entfernung zum Hindernis ist (oder auch größer als die Entfernung zu einem zweiten Hindernis hinter dem ersten, je nach Bewegungsrichtung!). Man löst dieses Problem, indem man den Sensor in senkrechter Position montiert, also so, dass die beiden Linsen übereinander statt nebeneinander liegen. Dies wird auch im Datenblatt des Sensors empfohlen: der Sensor sollte immer senkrecht zur Bewegungsrichtung des Hindernisses montiert werden.<br />
<br />
Sehr deutlich erkennt man diese Messfehler, wenn man den Sensor als eine Art 3D-Scanner einsetzt: http://www.team-iwan.de/technik/sharp1.php<br />
}}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
Die Gehäuse dieser Sensoren sehen wie ganz gewöhnlicher Kunststoff aus. Sie bestehen jedoch aus leitfähigem Material! (Kaum zu glauben, aber einfach nachprüfbar: zwischen den beiden Befestigungslöchern misst man einen Widerstand von etwa 250 bis 300 Ohm). Außerdem ist das Gehäuse mit dem Masseanschluss verbunden. Dies ist normalerweise nicht weiter wichtig, da die Sensoren meist entweder isoliert (zB auf Kunststoffteilen) oder auf einem geerdeten/mit Masse verbundenen Metallchassis montiert werden. Wenn man aber die Sensoren abschalten will, um Strom zu sparen (die Sensoren verbrauchen etwa 30 bis 40mA), muss man bei nicht isolierter Montage unbedingt die Plusleitung schalten! Wenn man die Masse-Zuleitung unterbricht, ist der Sensor sonst trotzdem noch über das Gehäuse und das Chassis mit Masse verbunden und wird nicht deaktiviert!<br />
|}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
[[Bild:Sharp_filter.png|thumb|Filter für einen analogen SHARP-Sensor zur Vermeidung von Störungen auf der +5V Versorgung und dem Ausgang.]]<br />
Die Stromaufnahme des Sensors von 30-40mA kann täuschen. Mit einer Wiederholrate von etwa 1kHz benötigt der Sensor kurzzeitig eine Stromaufnahme von ca. 1 Ampere! Diese Stromstärke braucht der Sharp-Sensor, um damit seine Infrarot-Sende-LED zu treiben. Durch die hohe Stromaufnahme kann der Sensor infrarotes Licht kurzzeitig mit hoher Intensität aussenden.<br />
Die Verwendung eines oder sogar mehrerer IR-Distanzsensoren dieser Sorte kann zu erheblichen Spannungseinbrüchen auf der 5V-Versorgungsleitung führen. Am Analogausgang des Sensors können ebenso noch Störungen vorhanden sein. Um Rückwirkungen auf die Versorgung zu vermeiden und die Störungen auf der Ausgangsleitung (für einen Sensor mit analogem Ausgang!) zu verringern, soll hier auf den nebenstehenden Schaltplan verwiesen werden. Der Elko vor dem Sensor sollte die angegebene Kapazität haben, da der Sharp-Sensor seine Stromspitzen hauptsächlich aus diesem bezieht. Dieser Elko wird über den 3,3-Ohm-Widerstand aufgeladen. Der Widerstand kann auch durch eine Induktivität ersetzt werden, Berechnung über thomsonsche Schwingungsformel f=1/(2*Pi*Wurzel(L*C)), wobei die Grenzfrequenz f deutlich kleiner als die 1kHz gewählt werden sollten, um die gewünschte Filterwirkung (Dämpfung) zu erreichen.<br />
Weitere Informationen:<br />
[http://www.roboternetz.de/community/threads/33656-GP2D120-mit-St%C3%B6rung-oder-oder-ist-das-Normalbetrieb Thema im Roboternetz]<br />
[http://www.segor.de/L1Bausaetze/gp2d12.shtml Untersuchung von Segor Electronics]<br />
|}<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
Dies ist der am häufigsten eingesetzte Sharp-Typ bei mobilen Robotern.<br />
Dieser Sensor wird seit 2010 nicht mehr produziert. Der Nachfolger ist der GP2Y0A21YK0F.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
<br />
====Sharp GP2Y0A21YK0F (Nachfolger des GP2D12)==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
[[Bild:GP2Y0A21YK0F.jpg|center]]<br />
<br />
[[Bild:GP2Y0A21YK0F_diagram.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10-80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
Messfleckgröße des SHARP GP2Y0A41SK0F <br />
http://www.roboternetz.de/community/threads/55555-Messfleckgröße-des-SHARP-GP2Y0A41SK0F?p=530710&viewfull=1#post530710<br />
<br />
====Sharp GP2D120====<br />
Distanz 4-30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20-150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt.<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10-80 cm - Entfernung wird durch 8-Bit-Digitalausgang übermittelt.<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang. <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetzes, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannungen der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D)<br />
<br />
Mehrere Messungen ergeben ein besseres Ergebnis:<br />
Dazu werden für jeweils zwei Messungen die Konstanten A und B errechnet (s. o.) und in ein Plotprogramm als Graph dargestellt.<br />
Plotprogramm (OpenSource): [http://www.padowan.dk Graph]<br />
<br />
Funktion: <br />
f(x)=A/(x-B)<br />
<br />
Man kann dann durch Verändern von A und B einen Graphen erstellen, der die meisten Eigenschaften der anderen Graphen enthällt. Diese Konstanten entsprechen dann ziemlich genau dem Realwert.<br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3 cm bis 3 m gut geeignet. Der SRF04 kann einen 3 cm dicken Besenstiel in 2 m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neue SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3 cm bis 6 m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand (LDR), dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich, auch bis zu 16 Mehrfachechos von weiter hinten gelegenen Gegenständen auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in Zentimeter, Zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
<br />
[[SRF08 mit avr-gcc|SRF08 Programmbeispiel mit AVR-GCC]]<br />
<br />
SFR08 Programmbeispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegebenen Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. Allerdings bietet er im Gegensatz zum SRF08 weder einen Lichtsensor noch die Möglichkeit, die Mehrfachechos auszulesen.<br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe, der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vor allem die Tatsache, dass sowohl RS232- und I2C-Bus-Schnittstelle vorhanden ist, dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40kHz <br />
* Reichweite 15 cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom-Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum Vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompass-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürfnisse von Robotern gestaltet worden. Es misst seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompass, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen (Motoren)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kunststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muss am Pin 6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Messpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
===CMPS09===<br />
Inzwischen ist der Nachfolger des CMPS03, nämlich der CMPS09 erhältlich.<br />
<br />
Das Kompassmodul verfügt nun über eine Tilt-Kompensierung und ist im Vergleich zum CMPS03 deutlich kleiner. Die Auswertung geschieht, wie beim CMPS03 auch, über einen PWM-Ausgang oder den I2C-Bus, zudem ist hier noch eine serielle Schnittstelle (UART) mit 9600N2 vorhanden. Das Kompassmodul läuft bereits ab 3,3V.<br />
<br />
Das Modul kann z.B. über robotikhardware.de bezogen werden.<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
[[Bild:beschleunigungssensor_rh.gif|center]]<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkeiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
siehe auch: [[Sensoren - Beschleunigung]]<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioliskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in Kfz verwendet, stößt jedoch an ihre Grenzen, wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedrigen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
Siehe auch unter [[Sensoren für die Geschwindigkeitsmessung]]<br />
<br />
==Temperatur== <br />
===NTCs und PTCs===<br />
<br />
siehe [[PTC/NTC]]<br />
<br />
<br />
=== KTY: Silizium Temperatursensoren ===<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies kann schaltungstechnisch oder in Software erfolgen.<br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm als Spannungsteiler. Bei 5 V führt dies aber schon zu einer merklichen Eigenerwärmung. Im Vergleich zu, PT1000 ist der Temperaturkoeffizient beim KTY etwa doppelt so hoch - man bekommt also etwa das doppelte Signal.<br />
http://www.roboternetz.de/phpBB2/viewtopic.php?p=342164&sid=ad63fd51eb08bcf225389af5bbc4fcfd#342164<br />
<br />
=== Diode als Temperatursensor ===<br />
Die Flußspannung von Dioden ist temperaturabhängig. Für Siliziumdioden verringert sich die Spannung um etwa 2 mV pro Grad Temperaturerhöhung. Der Absolutwert der Flußspannung hängt etwas vom Strom ab und variiert auch zwischen verschiedenen Chargen. Es ist also fast immer wenigstens ein Abgleich nötig. Es kann auch eine Diodenstrecke eines Transistors genutzt werden, für eine ggf. besser geeignete Gehäuseform (z.B. BD135 im TO126 Gehäuse mit Bohrung).<br />
<br />
===LM335 und LM35===<br />
<br />
[[Bild:LM335.JPG|center]]<br />
<br />
Der Temperatursensor LM335 funktioniert wie eine Z-Diode, die ihre Durchbruchspannung proportional zur Temperatur ändert. Beim Sensor LM335 beträgt diese Änderung 10mV/K, beim Sensor LM35 beträgt die Änderung 10mV/<sup>o</sup>C. <br />
<br />
Der größte Unterschied zwischen den Sensoren ist der, dass am Ausgang des LM335 bei 0<sup>o</sup>C etwa 2,73V anliegen (273K = 0<sup>o</sup>C) und beim LM35 0V. Sollen negative Temperaturen gemessen werden, so muss man für den LM35 das Bezugspotential GND anheben (z.B. mit zwei Si-Dioden).<br />
<br />
Von den Sensoren LM335 und LM35 gibt es auch noch genauere Ausführungen, welche einen geringeren Temperatur-Fehler ab Werk haben. Diese Versionen heißen LM15/LM25 bzw. LM135/LM235 und sind entsprechend teurer als die 3er Version (zum Vergleich: LM335 kostet bei Reichelt 0,89€, der LM135 jedoch 7,75€). <br />
<br />
Der LM335 und LM35 messen nach einer einfachen Kalibrierung mit einem Poti, bis auf 1<sup>o</sup>C genau. Dazu muss man mit dem Poti die Ausgangsspannung bei 25<sup>o</sup>C auf 2,98V einstellen (2,98V / 0,01V/K = 298K = 25<sup>o</sup>C). Da der Sensor über seinen Messbereich sehr linear ist, braucht man nur bei einer Temperatur kalibrieren. Durch den Einsatz mehrerer in Reihe geschalteter Sensoren kann man das Ausgangssignal verstärken (bei drei LM335 erhält man dann 30mV/K anstatt 10mV/K) oder, wenn die Sensoren im Raum verteilt sind, einen einfachen Mittelwert bilden.<br />
<br />
====Beschaltung und Dimensionierung eines LM335====<br />
[[Bild:lm335schaltung.jpg|center]]<br />
Da sich der Sensor wie eine Z-Diode verhält, muss der Strom durch diese begrenzt werden, um eine Verfälschung des Signals oder gar eine Zerstörung zu verhindern. Fließt jedoch zu wenig Strom durch die Diode, so treten Störungen auf und die Genauigkeit sinkt.<br />
<br />
Der Strom wird auf einfache Weise wie bei einer LED durch einen Widerstand (hier R1) begrenzt. Der Strom sollte zwischen mindestens 450µA und maximal 5mA liegen. Bei einer Betriebsspannung von 5V kann also für 2mA ein Widerstand von etwa 2,5kOhm benutzt werden (R = U/I). <br />
<br />
Die max. Betriebsspannung sollte 30V nicht überschreiten!<br />
<br />
Zur Kalibrierung schließt man an ein 10kOhm Potentiometer zwischen V+ und V- (GND) des Sensors an und legt dessen Schleifer auf den ADJ-Pin. Nun stellt man die Ausgangsspannung in Abhängigkeit von der Raumtemperatur (welche bekannt sein sollte) ein (1<sup>o</sup>C = 1K, 273K = 0<sup>o</sup>C). Kalibriert man den LM335 nicht, so kann dieser um bis zu 9K falsch gehen!<br />
<br />
Im letzten Bild (ganz rechts) ist die schon angesprochene Reihenschaltung aufgezeichnet. Um ein größeres Ausgangssignal zu erhalten, kann man das Signal auch mit einem [[Operationsverstärker#Verstärker|Operationsverstärker]] verstärken. Das ist günstiger und man hat die Möglichkeit, das Signal um ein Vielfaches zu verstärken ohne einige Dutzend Sensoren einzusetzen!<br />
<br />
Pin-Belegungen und weitere Daten finden sich im Datenblatt (kann man z.B. bei Reichelt herunterladen).<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Auflösung von 0.5<sup>o</sup> Grad Celsius messen und wird über einen I2C Bus angesprochen. <br />
<br />
Der Messbereich: <br />
*−25<sup>o</sup>C bis 100<sup>o</sup>C bei ±2<sup>o</sup>C(max)Genauigkeit.<br />
*−55<sup>o</sup>C bis 125<sup>o</sup>C bei ±3<sup>o</sup>C(max)Genauigkeit. <br />
<br />
Der LM75 bietet:<br />
* Einen Schaltausgang (invertierbar) - z.B. für Ventilator, Heizung etc.<br />
* Programmierbarer oberer und unterer Schaltpunkt.<br />
* Schaltausgang alternativ auch als Interrupt verwendbar.<br />
* Über von außen einstellbare I2C-Adresse. Bit 0 = R/W, Bits 1-3 einstellbar, Bit 4-7 fixe Adresse 0x9n <br />
* Maximal 8 Stück LM75 an einem I2C Bus. <br />
<br />
Durch I2C-Lesebefehle kann man die Temperatur (2x8Bit)auslesen.<br />
<br />
Das erste Byte ist der Temperatur-Vorkommawert in ganzen Grad, als normales signed char. Das Bit 7 vom zweiten Byte bestimmt den Nachkommawert. Wenn Bit 7 gleich 1 so ist der Nachkommawert + 0.5<sup>o</sup>C. Auch dann + 0.5 <sup>o</sup>C wenn Vorkommawert negativ. Wenn Bit 7 gleich 0 so ist der Nachkommawert = 0. Bit 0-6 vom zweiten Byte sind ohne Bedeutung.<br />
<br />
====Programm-Beispiel für LM75====<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen.<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
Man erhält als Ergebnis die Temperatur in 0,5 Grad Schritten (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
Ein weiteres Beispiel [http://www.darc-coburg.de/modules/wiwimod/index.php?page=LM75]<br />
<br />
==Resistive Sensoren==<br />
Resistive Sensoren bzw. Linearpotentiometer arbeiten als Spannungsteiler über einer Hybridleitplastik- schicht und sind in unterschiedlichen Bauformen erhältlich; z.B. für Zylindereinbau, Klemmbock- u. Gelenkaugenbefestigung oder Taster.<br />
Deren Einsatzgebiete sind vorwiegend in der Industrie.<br />
<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
Induktiver Näherungsschalter enthalten schon eine Elektronik zur Auswertung und liefern meist ein digitales Signal. Die Funktion ist ähnlich den einfachen Metallsuchgeräten: Der Sensor spricht an, wenn im Abstand von weniger als z.B. 2 cm Metall vor dem Sensor ist.<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
== Infrarot Thermopiles ==<br />
Bei den Infrarotsensoren gibt es neben den oben beschrieben PIR Sensoren aus Bewegungsmeldern auch solche auf Basis von Thermopiles. Diese können nicht nur auf Änderungen reagieren, sondern auch eine konstante Strahlung messen. Beispiele ist der TPS334. Der Sensor gibt eine relativ kleine Spannung (oft < 0,1 mV) aus, die in der Regel erst verstärkt werden muss. Neben dem eigentlichen Strahlungssensor gibt es noch eine Möglichkeit die Temperatur des Sensors selbst zu messen, um die Abstrahlung des Sensor zu kompensieren. <br />
<br />
Zu finden sind solche Sensoren z.B. in Infrarotthermometern.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* [[Benutzer:BASTIUniversal|BASTIUniversal]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.roboternetz.de/community/showthread.php?51885-Drehzahlmessung-mit-B%FCrstenimpulsen-an-kleinem-DC-Motor Forumbeitrag: Drehzahlmessung bei Gleichstrommotoren über Bürstenimpulsauswertung]<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=14887Operationsverstärker2009-05-02T12:01:55Z<p>Manf: /* Differenzverstärker */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen ==<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang wird in beiden Fällen für die Ausgangsspannung Ua, der in Gleichung 2 angegebene Wert, erreicht. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker.<br />
<br />
Allgemein:<br />
<br />
Ua = U1 ( 1 + R2 / R1 ) - U2 R2 / R1 <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am +Eingang (wie auch am -Eingang) ist Ue.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue + (Ue - U2) * R2 / R1<br />
<br />
Ua = Ue * (R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
mit Ue = U1 * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2 / R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
Die Schaltung nach Bild 8 hat zusätzlich den Verteil, einer verbesserten Gleichtaktunterdrückung, auch ohne die Verwendung extra präziser Widerstände. Die erste Verstärkungstufe verstärkt nämlich nur das Differenzsignal und nicht den Mittelwert (Gleichtaktsignal).<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können.<br />
<br />
== Stabilität in OP Schaltungen ==<br />
<br />
Eine der Schwierigkeiten bei Schaltungen mit Operationsverstärkern ist es sicherzustellen, dass der <br />
Verstärker nicht schwingt. Hier soll keine ausführliche Darstellung der Stabilitätsanlyse folgen, sondern nur eine kurze, vereinfachte und eher praxisorientierte Form.<br />
<br />
Der Operationsverstärker kann zu schwingen anfangen, wenn aus der gewollten Gegenkopplung eine Mitkopplung wird. 180 Grad Phasenverschiebung entspechen einer Invertierung und machen gerade aus der Gegenkopplung eine Mitkopplung. Durch RC Glieder (oder mit Induktivitäten) können Phasenverschiebungen erzeugt werden. Daher muß auf die Phasenverschiebung in der Rückkopplung (in der Regel vom Ausgang zum invertierenden Eingang) geachtet werden. Um die Bandbreite zu begrenzen haben die Operationsverstärker schon von sich aus etwa 90 Grad Phasenverschiebung über einen großen Frequenzbereich. Problematisch ist vor allem, wenn die Rückkopplung zu spät kommt. Die Bandbreite (für Schleifenverstärkung von eins) des Operationsverstärkers gibt vor, bis zu welcher Frequenz keine größeren Phasenverschiebungen (in Richtung Verzögerung) auftreten dürfen. Daran sieht man schon, dass es leichter ist einen langsamen Operationsverstärker stabil zu kriegen, als einen schnellen. <br />
<br />
Schlecht für die Stabilität sind:<br />
<br />
- Tiefpass-charakter in der Rückkopplung: führt fast sicher zum Schwingen<br />
<br />
- Kapazität gegen Masse am Ausgang des OPs: Dies sorgt für eine Verzögerung des Ausgangssignals.<br />
<br />
- Kapazität gegen Masse am invertierenden Eingang: gibt einen Tiefpass zusammen mit Rückkopplungswiderstand.<br />
<br />
- OP mit hoher Bandbreite: parasitäre Kapazitäten und Induktivitäten werden wichtiger.<br />
<br />
- hochohmige Rückopplung ohne parallelen Kondensator<br />
<br />
- Verstärkung in der Rückkopplung: Gefahr von Verzögerungen und schon an sich schlecht.<br />
<br />
- lange Leitungen: geben zusätzliche Kapazitäten und Induktivitäten (je schneller desto kleiner)<br />
<br />
- fehlender Entkoppelkondensator an der Versorgungsspannung, besonders bei schnellen OPs<br />
<br />
- niedrige Versörgungsspannung bei einigen OPs mit JFets (z.B. TL072)<br />
<br />
Von den Standartschaltungen mit OPs sind die folgenden etwas problematisch:<br />
Differenzierer, Hochpass, Transimpedanzverstärker.<br />
<br />
Um die die Stabilität zu verbesser, kann man geziehlt für einen Hochpass-Character in der Rückkopplung sorgen, z.B. durch einen kleinen Kondensator vom Ausgang zum inv. Eingang. Dadurch verringert sich aber auch die Bandbreite der Schaltung. Wenn der Ausgang kapazitive Lasten treiben soll (z.B. lange Kabel) sollte ein Widerstand (z.B. 47 Ohm) vor die Last geschaltet werden. Je nach OP leigt die Grenze bei etwa 20pF (z.B. TLV271) bis 5 nF (z.B. LF356).<br />
<br />
Bei etwas komplizierteren Schaltungen kann eine Simulation (z.B. mit [[SwitcherCAD-Tutorial|LTSpice]]) sinnvoll sein. Dabei sollten auch parasitäre Kapazitäten mit berücksichtigt werden. Die Neigung zu Schwingungen kann im Zeitbereich als Überschwinger oder im Frequenzbereich als Resonanz (Maximum im Frequenzgang) erkannt werden.<br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vmin||Vmax||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Is||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||mA||lo / hi||lo / hi||€||€||€<br />
|-<br />
|MC1458||10||36||2||.||30||80||20||15||0,5||1||20||1,5||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||?10||36||2||15||23||80||20||200||0,5||1,5||25||1,7||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|LM358||3||32||5||7||40||45||5||15||0,5||1||20/8||0,2||0 / -1,5||0 / -2||.||0,09||.<br />
|-<br />
|LM324||3||32||5||7||40||45||5||15||0,5||1||20/8||0,2||0 / -1,5||0 / -2||.||.||0,12<br />
|-<br />
|TL072||7||36||3||18||18||65p||5p||200||13||3||20||0,7||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,6p||0,1p||27||4||2||30||0,7||-0,3 /-0,8||(0) / -1,2||0,25||0,25||0,32<br />
|-<br />
|MC33078||10||36||0,15||2||4,5||300||25||300||7||9||30||2||2 / -2||1 / -1||.||0,33||0,50<br />
|-<br />
|OP 07||6||36||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,5p||0,5p||560||0,17||0,35||17||0,02||-0,2 / 0,2||0 / 0||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||1p||0,5p||10||1,6||1,4||.||..1||-0,3 / 0,3||0 / 0||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||1p||1p||40||0,4||0,8||65||0,25||-0,2 / 0,2||0 / 0||.||1,20||1,75<br />
|-<br />
|OP177||5||44||4µ||0,03||10||1,5||0,3||12000||0,3||0,6||12||1,6||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,5µ||0,05||90||0,01||0,02||160dB||4||2,5||20/4||1||0/-1,7||0 / 0||3,60||.||.<br />
|-<br />
|AD8551||2,7||5,5||1µ||0,005||42||0,01||0,02||145dB||0,4||1,5||30/30||0,7||0/0||0 /0||2,45||.||.<br />
|-<br />
<br />
|TCA0372||5?||40||1||20|| 22 || 100|| 10||1 || 1,4||1,4 ||1000||2,5||0 / -1||1 / -1||.||0,57||.<br />
|}<br />
----<br />
<br />
;Erklärung der Spalten:<br />
<br />
Vmin / Vmax sind die minimale und maximale Versorgungsspannung. Bei symetrischer Versorgung die Differenz (V+) - (V-).<br />
<br />
Voff ist die Offsetspannung oder der Gleichspannungsfehler. Das ist die Gleichspannung die am Eingang anliegen muss, um den Ausgang auf eine mittlere Spannung zu bringen. Der Wert ist als typische obere Grenze zu verstehen, wobei positive oder negative Werte möglich sind. Dazu wird noch die typische Grenze der Temperaturabhängigkeit von Voff angegeben.<br />
<br />
Vn ist die Rauschspannungsdichte. Für Frequenzen unter etwa 1 kHz kann das Rauschen deutlich höher werden.<br />
<br />
i in ist der Bias Strom. Das ist der mittlere Eingangsstrom der beiden Eingänge. Die Werte geben nur die Größenordnung an und können stark von Exemplar zu Exemplar streuen. Außerdem ist der Bias Strom zu Teil (FET Eingänge) stark Temperaturabhängig.<br />
<br />
di in ist der Offsetstrom oder die Differenz der Eingangsströme der beiden Eingänge. Der Wert ist als typische obere Grenze zu verstehen. <br />
<br />
Gain ist die Verstärkung für niedrige Frequenzen (z.B. 1 Hz)<br />
<br />
SR ist die maximale Geschwindigkeit für Änderungen der Ausgangsspannung, engl. Slewrate. Bei FET Eingängen ist dafür ein relativ großes Eingangssignal nötig.<br />
<br />
BW ist die Bandbreite. Angeben ist die Frequenz bei der die Verstärkung bis auf 1 abfällt oder das Produkt aus Frequenz und Verstärkung bei mittleren Frequenzen. Die Frequenz des Nutzsignals sollte normalerweise mindestens um den Faktor 10 mal der Verstärkung der Schaltung niedriger liegen.<br />
<br />
i out ist der maximale Ausgangsstrom. Die meisten OPs sind zumindest kurzzeitig kurzschlussfest.<br />
<br />
Is ist der typische Stromverbauch pro Verstärker. Zum Teil ist der Stromverbrauch deutlich von der Spannung abhängig.<br />
<br />
Rail in ist der Eingangspannungsbereich oder Gleichtaktbereich. Angegeben ist für die untere und obere Grenze jeweils die Differenz zur negativen bzw. positiven Versorgungsspannung.<br />
<br />
Rail out ist der Ausgangspannungsbereich. Angegeben ist der Mindestabstand zur negativen und positiven Versorgungsspannung. Der Wert 0 kann natürlich nicht wirklich erreicht werden, aber die Spannung kann bei kleinem Strom (z.B. 10 µA) bis auf ein paar mV an die Versorgung herran.<br />
<br />
single/double/quad geben cica Preise für einfach / doppel / 4-fach Ausführungen an, soweit sie verfügbar sind.<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=14606Operationsverstärker2009-02-20T07:27:46Z<p>Manf: /* Verstärker */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen ==<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang wird in beiden Fällen für die Ausgangsspannung Ua, der in Gleichung 2 angegebene Wert, erreicht. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker.<br />
<br />
Allgemein:<br />
<br />
Ua = U1 ( 1 + R2 / R1 ) - U2 R2 / R1 <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am +Eingang (wie auch am -Eingang) ist Ue.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue + (Ue - U2) * R2 / R1<br />
<br />
Ua = Ue * (R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
mit Ue = U1 * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2 / R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
Die Schaltung nach Bild 8 hat zusätzlich den Verteil, einer verbesserten Gleichtaktunterdrückung, auch ohne die Verwendung extra präziser Widerstände. Die erste Verstärkungstufe verstärkt nämlich nur das Differenzsignal und nicht den Mittelwert (Gleichtaktsignal).<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können.<br />
<br />
== Stabilität in OP Schaltungen ==<br />
<br />
Eine der Schwierigkeiten bei Schaltungen mit Operationsverstärkern ist es sicherzustellen, dass der <br />
Verstärker nicht schwingt. Hier soll keine ausführliche Darstellung der Stabilitätsanlyse folgen, sondern nur eine kurze, vereinfachte und eher praxisorientierte Form.<br />
<br />
Der Operationsverstärker kann zu schwingen anfangen, wenn aus der gewollten Gegenkopplung eine Mitkopplung wird. 180 Grad Phasenverschiebung entspechen einer Invertierung und machen gerade aus der Gegenkopplung eine Mitkopplung. Durch RC Glieder (oder mit Induktivitäten) können Phasenverschiebungen erzeugt werden. Daher muß auf die Phasenverschiebung in der Rückkopplung (in der Regel vom Ausgang zum invertierenden Eingang) geachtet werden. Um die Bandbreite zu begrenzen haben die Operationsverstärker schon von sich aus etwa 90 Grad Phasenverschiebung über einen großen Frequenzbereich. Problematisch ist vor allem, wenn die Rückkopplung zu spät kommt. Die Bandbreite (für Schleifenverstärkung von eins) des Operationsverstärkers gibt vor, bis zu welcher Frequenz keine größeren Phasenverschiebungen (in Richtung Verzögerung) auftreten dürfen. Daran sieht man schon, dass es leichter ist einen langsamen Operationsverstärker stabil zu kriegen, als einen schnellen. <br />
<br />
Schlecht für die Stabilität sind:<br />
<br />
- Tiefpass-charakter in der Rückkopplung: führt fast sicher zum Schwingen<br />
<br />
- Kapazität gegen Masse am Ausgang des OPs: Dies sorgt für eine Verzögerung des Ausgangssignals.<br />
<br />
- Kapazität gegen Masse am invertierenden Eingang: gibt einen Tiefpass zusammen mit Rückkopplungswiderstand.<br />
<br />
- OP mit hoher Bandbreite: parasitäre Kapazitäten und Induktivitäten werden wichtiger.<br />
<br />
- hochohmige Rückopplung ohne parallelen Kondensator<br />
<br />
- Verstärkung in der Rückkopplung: Gefahr von Verzögerungen und schon an sich schlecht.<br />
<br />
- lange Leitungen: geben zusätzliche Kapazitäten und Induktivitäten (je schneller desto kleiner)<br />
<br />
- fehlender Entkoppelkondensator an der Versorgungsspannung, besonders bei schnellen OPs<br />
<br />
- niedrige Versörgungsspannung bei einigen OPs mit JFets (z.B. TL072)<br />
<br />
Von den Standartschaltungen mit OPs sind die folgenden etwas problematisch:<br />
Differenzierer, Hochpass, Transimpedanzverstärker.<br />
<br />
Um die die Stabilität zu verbesser, kann man geziehlt für einen Hochpass-Character in der Rückkopplung sorgen, z.B. durch einen kleinen Kondensator vom Ausgang zum inv. Eingang. Dadurch verringert sich aber auch die Bandbreite der Schaltung. Wenn der Ausgang kapazitive Lasten treiben soll (z.B. lange Kabel) sollte ein Widerstand (z.B. 47 Ohm) vor die Last geschaltet werden. Je nach OP leigt die Grenze bei etwa 20pF (z.B. TLV271) bis 5 nF (z.B. LF356).<br />
<br />
Bei etwas komplizierteren Schaltungen kann eine Simulation (z.B. mit [[SwitcherCAD-Tutorial|LTSpice]]) sinnvoll sein. Dabei sollten auch parasitäre Kapazitäten mit berücksichtigt werden. Die Neigung zu Schwingungen kann im Zeitbereich als Überschwinger oder im Frequenzbereich als Resonanz (Maximum im Frequenzgang) erkannt werden.<br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vmin||Vmax||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo / hi||lo / hi||€||€||€<br />
|-<br />
|MC1458||10||36||2||.||30||80||20||15||0,5||1||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|LM358||3||32||5||7||40||45||5||15||0,5||1||20/8||0 / -1,5||0,1 / -2||.||0,09||.<br />
|-<br />
|LM324||3||32||5||7||40||45||5||15||0,5||1||20/8||0 / -1,5||0,1 / -2||.||.||0,12<br />
|-<br />
|TL072||7||36||3||18||18||65p||5p||200||13||3||20||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,6p||0,1p||27||4||2||30||-0,3 /-0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|MC33078||10||36||0,15||2||4,5||300||25||300||7||9||30||2 / -2||1 / -1||.||0,33||0,50<br />
|-<br />
|OP 07||6||36||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,5p||0,5p||560||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||1p||0,5p||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||1p||1p||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||4µ||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,5µ||0,05||90||0,01||0,02||160dB||4||2,5||20/4||0/-1,7||0,1 / -0,1||3,60||.||.<br />
|-<br />
|TCA0372||5?||40||1||20|| 22 || 100|| 10||1 || 1,4||1,4 ||1000||0 / -1||1 / -1||.||0,57||.<br />
|}<br />
----<br />
<br />
;Erklärung der Spalten:<br />
<br />
Vmin / Vmax sind die minimale und maximale Versorgungsspannung. Bei symetrischer Versorgung die Differenz (V+) - (V-).<br />
<br />
Voff ist die Offsetspannung oder der Gleichspannungsfehler. Das ist die Gleichspannung die am Eingang anliegen muss um den Ausgang auf eine mittlere Spannung zu bringen. Der Wert ist als typische obere Grenze zu verstehen, wobei positive oder negative Werte möglich sind. Dazu wird noch die typische Grenze der Temperaturabhängigkeit von Voff angegeben.<br />
<br />
Vn ist die Rauschspannungsdichte. Für Frequenzen unter etwa 1 kHz kann das Rauschen deutlich höher werden.<br />
<br />
i in ist der Bias Strom. Das ist der mittlere Eingangsstrom der beiden Eingänge. Die Werte geben nur die Größenordnung an und können stark von Exemplar zu Exemplar streuen. Außerdem ist der Bias Strom zu Teil (FET Eingänge) stark Temperaturabhängig.<br />
<br />
di in ist der Offsetstrom oder die Differenz der Eingangsströme der beiden Eingänge. Der Wert ist als typische obere Grenze zu verstehen. <br />
<br />
Gain ist die Verstärkung für niedrige Frequenzen (z.B. 1 Hz)<br />
<br />
SR ist die maximale Geschwindigkeit für Änderungen der Ausgangsspannung, engl. Slewrate. Bei FET Eingängen ist dafür ein relativ großes Eingangssignal nötig.<br />
<br />
BW ist die Bandbreite. Angeben ist die Frequenz bei der die Verstärkung bis auf 1 abfällt oder das Produkt aus Frequenz und Verstärkung bei mittleren Frequenzen. Die Frequenz des Nutzsignals sollte normalerweise mindestens um den Faktor 10 mal der Verstärkung der Schaltung niedriger liegen.<br />
<br />
i out ist der maximale Ausgangsstrom. Die meisten OPs sind zumindest kurzzeitig kurzschlussfest.<br />
<br />
Rail in ist der Eingangspannungsbereich oder Gleichtaktbereich. Angegeben ist für die untere und obere Grenze jeweils die Differenz zur negativen bzw. positiven Versorgungsspannung.<br />
<br />
Rail out ist der Ausgangspannungsbereich. Angegeben ist der Mindestabstand zur negativen und positiven Versorgungsspannung. Werte sehr dicht an der Versorgung können oft nur bei kleinem Strom erreicht werden.<br />
<br />
single/double/quad geben cica Preise für einfach / doppel / 4-fach Ausführungen an, soweit sie verfügbar sind.<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=14605Operationsverstärker2009-02-20T07:19:13Z<p>Manf: /* Differenzverstärker */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen ==<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang wird in beiden Fällen für die Ausgangsspannung Ua, der in Gleichung 2 angegebenen Wert, erreicht. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker.<br />
<br />
Allgemein:<br />
<br />
Ua = U1 ( 1 + R2 / R1 ) - U2 R2 / R1 <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am +Eingang (wie auch am -Eingang) ist Ue.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue + (Ue - U2) * R2 / R1<br />
<br />
Ua = Ue * (R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
mit Ue = U1 * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2 / R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
Die Schaltung nach Bild 8 hat zusätzlich den Verteil, einer verbesserten Gleichtaktunterdrückung, auch ohne die Verwendung extra präziser Widerstände. Die erste Verstärkungstufe verstärkt nämlich nur das Differenzsignal und nicht den Mittelwert (Gleichtaktsignal).<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können.<br />
<br />
== Stabilität in OP Schaltungen ==<br />
<br />
Eine der Schwierigkeiten bei Schaltungen mit Operationsverstärkern ist es sicherzustellen, dass der <br />
Verstärker nicht schwingt. Hier soll keine ausführliche Darstellung der Stabilitätsanlyse folgen, sondern nur eine kurze, vereinfachte und eher praxisorientierte Form.<br />
<br />
Der Operationsverstärker kann zu schwingen anfangen, wenn aus der gewollten Gegenkopplung eine Mitkopplung wird. 180 Grad Phasenverschiebung entspechen einer Invertierung und machen gerade aus der Gegenkopplung eine Mitkopplung. Durch RC Glieder (oder mit Induktivitäten) können Phasenverschiebungen erzeugt werden. Daher muß auf die Phasenverschiebung in der Rückkopplung (in der Regel vom Ausgang zum invertierenden Eingang) geachtet werden. Um die Bandbreite zu begrenzen haben die Operationsverstärker schon von sich aus etwa 90 Grad Phasenverschiebung über einen großen Frequenzbereich. Problematisch ist vor allem, wenn die Rückkopplung zu spät kommt. Die Bandbreite (für Schleifenverstärkung von eins) des Operationsverstärkers gibt vor, bis zu welcher Frequenz keine größeren Phasenverschiebungen (in Richtung Verzögerung) auftreten dürfen. Daran sieht man schon, dass es leichter ist einen langsamen Operationsverstärker stabil zu kriegen, als einen schnellen. <br />
<br />
Schlecht für die Stabilität sind:<br />
<br />
- Tiefpass-charakter in der Rückkopplung: führt fast sicher zum Schwingen<br />
<br />
- Kapazität gegen Masse am Ausgang des OPs: Dies sorgt für eine Verzögerung des Ausgangssignals.<br />
<br />
- Kapazität gegen Masse am invertierenden Eingang: gibt einen Tiefpass zusammen mit Rückkopplungswiderstand.<br />
<br />
- OP mit hoher Bandbreite: parasitäre Kapazitäten und Induktivitäten werden wichtiger.<br />
<br />
- hochohmige Rückopplung ohne parallelen Kondensator<br />
<br />
- Verstärkung in der Rückkopplung: Gefahr von Verzögerungen und schon an sich schlecht.<br />
<br />
- lange Leitungen: geben zusätzliche Kapazitäten und Induktivitäten (je schneller desto kleiner)<br />
<br />
- fehlender Entkoppelkondensator an der Versorgungsspannung, besonders bei schnellen OPs<br />
<br />
- niedrige Versörgungsspannung bei einigen OPs mit JFets (z.B. TL072)<br />
<br />
Von den Standartschaltungen mit OPs sind die folgenden etwas problematisch:<br />
Differenzierer, Hochpass, Transimpedanzverstärker.<br />
<br />
Um die die Stabilität zu verbesser, kann man geziehlt für einen Hochpass-Character in der Rückkopplung sorgen, z.B. durch einen kleinen Kondensator vom Ausgang zum inv. Eingang. Dadurch verringert sich aber auch die Bandbreite der Schaltung. Wenn der Ausgang kapazitive Lasten treiben soll (z.B. lange Kabel) sollte ein Widerstand (z.B. 47 Ohm) vor die Last geschaltet werden. Je nach OP leigt die Grenze bei etwa 20pF (z.B. TLV271) bis 5 nF (z.B. LF356).<br />
<br />
Bei etwas komplizierteren Schaltungen kann eine Simulation (z.B. mit [[SwitcherCAD-Tutorial|LTSpice]]) sinnvoll sein. Dabei sollten auch parasitäre Kapazitäten mit berücksichtigt werden. Die Neigung zu Schwingungen kann im Zeitbereich als Überschwinger oder im Frequenzbereich als Resonanz (Maximum im Frequenzgang) erkannt werden.<br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vmin||Vmax||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo / hi||lo / hi||€||€||€<br />
|-<br />
|MC1458||10||36||2||.||30||80||20||15||0,5||1||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|LM358||3||32||5||7||40||45||5||15||0,5||1||20/8||0 / -1,5||0,1 / -2||.||0,09||.<br />
|-<br />
|LM324||3||32||5||7||40||45||5||15||0,5||1||20/8||0 / -1,5||0,1 / -2||.||.||0,12<br />
|-<br />
|TL072||7||36||3||18||18||65p||5p||200||13||3||20||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,6p||0,1p||27||4||2||30||-0,3 /-0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|MC33078||10||36||0,15||2||4,5||300||25||300||7||9||30||2 / -2||1 / -1||.||0,33||0,50<br />
|-<br />
|OP 07||6||36||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,5p||0,5p||560||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||1p||0,5p||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||1p||1p||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||4µ||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,5µ||0,05||90||0,01||0,02||160dB||4||2,5||20/4||0/-1,7||0,1 / -0,1||3,60||.||.<br />
|-<br />
|TCA0372||5?||40||1||20|| 22 || 100|| 10||1 || 1,4||1,4 ||1000||0 / -1||1 / -1||.||0,57||.<br />
|}<br />
----<br />
<br />
;Erklärung der Spalten:<br />
<br />
Vmin / Vmax sind die minimale und maximale Versorgungsspannung. Bei symetrischer Versorgung die Differenz (V+) - (V-).<br />
<br />
Voff ist die Offsetspannung oder der Gleichspannungsfehler. Das ist die Gleichspannung die am Eingang anliegen muss um den Ausgang auf eine mittlere Spannung zu bringen. Der Wert ist als typische obere Grenze zu verstehen, wobei positive oder negative Werte möglich sind. Dazu wird noch die typische Grenze der Temperaturabhängigkeit von Voff angegeben.<br />
<br />
Vn ist die Rauschspannungsdichte. Für Frequenzen unter etwa 1 kHz kann das Rauschen deutlich höher werden.<br />
<br />
i in ist der Bias Strom. Das ist der mittlere Eingangsstrom der beiden Eingänge. Die Werte geben nur die Größenordnung an und können stark von Exemplar zu Exemplar streuen. Außerdem ist der Bias Strom zu Teil (FET Eingänge) stark Temperaturabhängig.<br />
<br />
di in ist der Offsetstrom oder die Differenz der Eingangsströme der beiden Eingänge. Der Wert ist als typische obere Grenze zu verstehen. <br />
<br />
Gain ist die Verstärkung für niedrige Frequenzen (z.B. 1 Hz)<br />
<br />
SR ist die maximale Geschwindigkeit für Änderungen der Ausgangsspannung, engl. Slewrate. Bei FET Eingängen ist dafür ein relativ großes Eingangssignal nötig.<br />
<br />
BW ist die Bandbreite. Angeben ist die Frequenz bei der die Verstärkung bis auf 1 abfällt oder das Produkt aus Frequenz und Verstärkung bei mittleren Frequenzen. Die Frequenz des Nutzsignals sollte normalerweise mindestens um den Faktor 10 mal der Verstärkung der Schaltung niedriger liegen.<br />
<br />
i out ist der maximale Ausgangsstrom. Die meisten OPs sind zumindest kurzzeitig kurzschlussfest.<br />
<br />
Rail in ist der Eingangspannungsbereich oder Gleichtaktbereich. Angegeben ist für die untere und obere Grenze jeweils die Differenz zur negativen bzw. positiven Versorgungsspannung.<br />
<br />
Rail out ist der Ausgangspannungsbereich. Angegeben ist der Mindestabstand zur negativen und positiven Versorgungsspannung. Werte sehr dicht an der Versorgung können oft nur bei kleinem Strom erreicht werden.<br />
<br />
single/double/quad geben cica Preise für einfach / doppel / 4-fach Ausführungen an, soweit sie verfügbar sind.<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=14604Operationsverstärker2009-02-20T07:16:44Z<p>Manf: /* Differenzverstärker */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen ==<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang wird in beiden Fällen für die Ausgangsspannung Ua, der in Gleichung 2 angegebenen Wert, erreicht. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker.<br />
<br />
Allgemein:<br />
<br />
Ua = U1 ( 1 + R2 / R1 ) - U2 R2 / R1 <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am +Eingang (wie auch am -Eingang) ist Ue.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue + (Ue - U2) * R2 / R1<br />
<br />
Ua = Ue * (R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
mit U1 = Ue * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2 / R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
Die Schaltung nach Bild 8 hat zusätzlich den Verteil, einer verbesserten Gleichtaktunterdrückung, auch ohne die Verwendung extra präziser Widerstände. Die erste Verstärkungstufe verstärkt nämlich nur das Differenzsignal und nicht den Mittelwert (Gleichtaktsignal).<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können.<br />
<br />
== Stabilität in OP Schaltungen ==<br />
<br />
Eine der Schwierigkeiten bei Schaltungen mit Operationsverstärkern ist es sicherzustellen, dass der <br />
Verstärker nicht schwingt. Hier soll keine ausführliche Darstellung der Stabilitätsanlyse folgen, sondern nur eine kurze, vereinfachte und eher praxisorientierte Form.<br />
<br />
Der Operationsverstärker kann zu schwingen anfangen, wenn aus der gewollten Gegenkopplung eine Mitkopplung wird. 180 Grad Phasenverschiebung entspechen einer Invertierung und machen gerade aus der Gegenkopplung eine Mitkopplung. Durch RC Glieder (oder mit Induktivitäten) können Phasenverschiebungen erzeugt werden. Daher muß auf die Phasenverschiebung in der Rückkopplung (in der Regel vom Ausgang zum invertierenden Eingang) geachtet werden. Um die Bandbreite zu begrenzen haben die Operationsverstärker schon von sich aus etwa 90 Grad Phasenverschiebung über einen großen Frequenzbereich. Problematisch ist vor allem, wenn die Rückkopplung zu spät kommt. Die Bandbreite (für Schleifenverstärkung von eins) des Operationsverstärkers gibt vor, bis zu welcher Frequenz keine größeren Phasenverschiebungen (in Richtung Verzögerung) auftreten dürfen. Daran sieht man schon, dass es leichter ist einen langsamen Operationsverstärker stabil zu kriegen, als einen schnellen. <br />
<br />
Schlecht für die Stabilität sind:<br />
<br />
- Tiefpass-charakter in der Rückkopplung: führt fast sicher zum Schwingen<br />
<br />
- Kapazität gegen Masse am Ausgang des OPs: Dies sorgt für eine Verzögerung des Ausgangssignals.<br />
<br />
- Kapazität gegen Masse am invertierenden Eingang: gibt einen Tiefpass zusammen mit Rückkopplungswiderstand.<br />
<br />
- OP mit hoher Bandbreite: parasitäre Kapazitäten und Induktivitäten werden wichtiger.<br />
<br />
- hochohmige Rückopplung ohne parallelen Kondensator<br />
<br />
- Verstärkung in der Rückkopplung: Gefahr von Verzögerungen und schon an sich schlecht.<br />
<br />
- lange Leitungen: geben zusätzliche Kapazitäten und Induktivitäten (je schneller desto kleiner)<br />
<br />
- fehlender Entkoppelkondensator an der Versorgungsspannung, besonders bei schnellen OPs<br />
<br />
- niedrige Versörgungsspannung bei einigen OPs mit JFets (z.B. TL072)<br />
<br />
Von den Standartschaltungen mit OPs sind die folgenden etwas problematisch:<br />
Differenzierer, Hochpass, Transimpedanzverstärker.<br />
<br />
Um die die Stabilität zu verbesser, kann man geziehlt für einen Hochpass-Character in der Rückkopplung sorgen, z.B. durch einen kleinen Kondensator vom Ausgang zum inv. Eingang. Dadurch verringert sich aber auch die Bandbreite der Schaltung. Wenn der Ausgang kapazitive Lasten treiben soll (z.B. lange Kabel) sollte ein Widerstand (z.B. 47 Ohm) vor die Last geschaltet werden. Je nach OP leigt die Grenze bei etwa 20pF (z.B. TLV271) bis 5 nF (z.B. LF356).<br />
<br />
Bei etwas komplizierteren Schaltungen kann eine Simulation (z.B. mit [[SwitcherCAD-Tutorial|LTSpice]]) sinnvoll sein. Dabei sollten auch parasitäre Kapazitäten mit berücksichtigt werden. Die Neigung zu Schwingungen kann im Zeitbereich als Überschwinger oder im Frequenzbereich als Resonanz (Maximum im Frequenzgang) erkannt werden.<br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vmin||Vmax||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo / hi||lo / hi||€||€||€<br />
|-<br />
|MC1458||10||36||2||.||30||80||20||15||0,5||1||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|LM358||3||32||5||7||40||45||5||15||0,5||1||20/8||0 / -1,5||0,1 / -2||.||0,09||.<br />
|-<br />
|LM324||3||32||5||7||40||45||5||15||0,5||1||20/8||0 / -1,5||0,1 / -2||.||.||0,12<br />
|-<br />
|TL072||7||36||3||18||18||65p||5p||200||13||3||20||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,6p||0,1p||27||4||2||30||-0,3 /-0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|MC33078||10||36||0,15||2||4,5||300||25||300||7||9||30||2 / -2||1 / -1||.||0,33||0,50<br />
|-<br />
|OP 07||6||36||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,5p||0,5p||560||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||1p||0,5p||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||1p||1p||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||4µ||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,5µ||0,05||90||0,01||0,02||160dB||4||2,5||20/4||0/-1,7||0,1 / -0,1||3,60||.||.<br />
|-<br />
|TCA0372||5?||40||1||20|| 22 || 100|| 10||1 || 1,4||1,4 ||1000||0 / -1||1 / -1||.||0,57||.<br />
|}<br />
----<br />
<br />
;Erklärung der Spalten:<br />
<br />
Vmin / Vmax sind die minimale und maximale Versorgungsspannung. Bei symetrischer Versorgung die Differenz (V+) - (V-).<br />
<br />
Voff ist die Offsetspannung oder der Gleichspannungsfehler. Das ist die Gleichspannung die am Eingang anliegen muss um den Ausgang auf eine mittlere Spannung zu bringen. Der Wert ist als typische obere Grenze zu verstehen, wobei positive oder negative Werte möglich sind. Dazu wird noch die typische Grenze der Temperaturabhängigkeit von Voff angegeben.<br />
<br />
Vn ist die Rauschspannungsdichte. Für Frequenzen unter etwa 1 kHz kann das Rauschen deutlich höher werden.<br />
<br />
i in ist der Bias Strom. Das ist der mittlere Eingangsstrom der beiden Eingänge. Die Werte geben nur die Größenordnung an und können stark von Exemplar zu Exemplar streuen. Außerdem ist der Bias Strom zu Teil (FET Eingänge) stark Temperaturabhängig.<br />
<br />
di in ist der Offsetstrom oder die Differenz der Eingangsströme der beiden Eingänge. Der Wert ist als typische obere Grenze zu verstehen. <br />
<br />
Gain ist die Verstärkung für niedrige Frequenzen (z.B. 1 Hz)<br />
<br />
SR ist die maximale Geschwindigkeit für Änderungen der Ausgangsspannung, engl. Slewrate. Bei FET Eingängen ist dafür ein relativ großes Eingangssignal nötig.<br />
<br />
BW ist die Bandbreite. Angeben ist die Frequenz bei der die Verstärkung bis auf 1 abfällt oder das Produkt aus Frequenz und Verstärkung bei mittleren Frequenzen. Die Frequenz des Nutzsignals sollte normalerweise mindestens um den Faktor 10 mal der Verstärkung der Schaltung niedriger liegen.<br />
<br />
i out ist der maximale Ausgangsstrom. Die meisten OPs sind zumindest kurzzeitig kurzschlussfest.<br />
<br />
Rail in ist der Eingangspannungsbereich oder Gleichtaktbereich. Angegeben ist für die untere und obere Grenze jeweils die Differenz zur negativen bzw. positiven Versorgungsspannung.<br />
<br />
Rail out ist der Ausgangspannungsbereich. Angegeben ist der Mindestabstand zur negativen und positiven Versorgungsspannung. Werte sehr dicht an der Versorgung können oft nur bei kleinem Strom erreicht werden.<br />
<br />
single/double/quad geben cica Preise für einfach / doppel / 4-fach Ausführungen an, soweit sie verfügbar sind.<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=13269Sensorarten2008-03-13T17:58:04Z<p>Manf: /* austriamicrosystems AS5040 */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
<br />
===austriamicrosystems AS5040===<br />
<br/><br />
[[Bild:AMS-general_200x200.jpg|right]]<br />
[[Bild:AMS-chip_109x104.jpg|left]]<br />
<br />
Der AS5040 kann absolute Winkelpositionen an einer Achse messen. Die Messung wird indirekt über ein Magnetfeld mittels Hallsensoren durchgeführt. Aufgrund der Anordnung der Hallsensoren und der Integration der Sensoren direkt in Silizium wird eine sehr hohe Genauigkeit bei der Messung erreicht. Das Messprinzip kompensiert ausserdem Störgrössen, wie externes Magnetfeld, Alterungseinflüsse, Temperaturschwankungen und mechanische Toleranzen. <br />
<br />
<br/><br/><br/><br />
Die komplette Auswertung der Sensorsignale geschieht auf dem Chip. <br/><br/><br/><br />
<br />
<br />
[[Bild:AMS-block_700x242.jpg|center]]<br />
<br />
<br />
[[Bild:AMS-pcb_200x152.jpg|right]]<br />
<br/><br/><br/><br />
Durch die hohe Integration reduziert sich die zusätzliche Beschaltung des Chips auf wenige Bauteile, beispielsweise ein paar Filterkondensatoren. <br />
<br/><br/><br/><br/><br/><br/><br />
Die Winkelencoderfamilie von austriamicrosystems besitzt vielfältige Schnittstellen um den Winkelwert zu übertragen<br />
<br />
{| {{Blauetabelle}}<br />
|Seriell SSI<br />
|Standard Schnittstelle für Winkelencoder in der Industrie<br />
|-<br />
|PWM<br />
|erzeugt abhängig vom Winkel eine entsprechende Pulslänge, läßt sich sehr schön mit der Capturefunktion eines Controllers messen und braucht nur eine Leitung<br />
|-<br />
|I2C<br />
|direkte Schnittstelle zum Microcontroller<br />
|-<br />
|Analog<br />
|kompatible Schnittstelle um beispielsweise Potiapplikationen zu ersetzen<br />
|-<br />
<br />
|Inkremental<br />
|klassische Schnittstelle um relative Bewegungen zu messen, keine Absolutmessung möglich<br />
|-<br />
|BLDC<br />
|erzeugt direkt die Kommutierung für einen bürstenlosen Motor. Durch die höhere Auflösung gegenüber einer 3-Hall-Schalterlösung kann der BLDC mit einem wesentlich höheren Drehmoment gestartet werden<br />
|}<br />
<br />
[[Bild:AMS-magnet_354x421.jpg|left]]<br />
<br/><br/><br/><br/><br />
Bei der Auswahl des Magnetens ist darauf zu achten, dass sogenannte Selten-Erde Magnete verwendet werden. http://de.wikipedia.org/wiki/Seltene_Erden Diese erzeugen ein besonders starkes Magnetfeld, das im 1 Tesla Bereich liegt. Im Zentrum des Magnetfelds ist ein linearer Bereich, der für die Genauigkeit der Messung ausschlaggebend ist. Solange die Hallsensoren in diesem Bereich liegen, kann eine unkalibrierte Genauigkeit von +/- 0.5 Grad gewährleistet werden. Weiterhin ist zu beachten, dass der Magnet nicht direkt auf eine Eisenwelle montiert wird. Die Eisenwelle verursacht quasi einen magnetischen 'Kurzschluß' und entzieht damit den Hallsensoren das Magnetfeld. Idealerweise sollte eine NE-Welle verwendet werden, oder wenn nicht anders machbar muß eine Isolation aus NE-Material zwischen Eisenwelle und Magnet eingefügt werden.<br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br />
<br/><br/><br/><br/><br/><br/><br />
Ein einfacher erfolgreicher Test des Sensors ist hier beschrieben: http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=322373#322373<br />
<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernises. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
{{FarbigerRahmen|<br />
Wenn man diese Sensoren an Robotern einsetzt, will man meist Hindernisse mit senkrecht stehenden Kanten erkennen. Montiert man den Sensor jedoch in waagerechter Lage, können sich Fehlmessungen ergeben, wenn sich ein Objekt am Sensor vorbeibewegt (z.B. wenn sich der Roboter dreht). Es wird an der Kante kurzzeitig ein Entfernung gemessen, die geringer als die tatsächliche Entfernung zum Hindernis ist. (oder auch größer als die Entfernung zu einem zweiten Hindernis hinter dem ersten, je nach Bewegungsrichtung!) Man löst dieses Problem, indem man den Sensor in senkrechter Position montiert, also so, dass die beiden Linsen übereinander statt nebeneinander liegen. Dies wird auch in Datenblatt des Sensors empfohlen: der Sensor sollte immer senkrecht zur Bewegungsrichtung des Hindernisses montiert werden.<br />
<br />
Sehr deutlich erkennt man diese Messfehler, wenn man den Sensor als ein Art 3D-Scanner einsetzt: http://www.team-iwan.de/technik/sharp1.php<br />
}}<br />
<br />
{|{{Blaueschmaltabelle}}<br />
|<br />
Die Gehäuse dieser Sensoren sehen wie ganz gewöhnlicher Kunststoff aus. Sie bestehen jedoch aus leitfähigem Material! (Kaum zu glauben, aber einfach nachprüfbar: zwischen den beiden Befestigungslöchern misst man einen Widerstand von etwa 250 bis 300 Ohm). Außerdem ist das Gehäuse mit dem Masseanschluss verbunden. Dies ist normalerweise nicht weiter wichtig, da die Sensoren meist entweder isoliert (zb auf Kunststoffteilen) oder auf einem geerdeten/mit Masse verbundenen Metallchassis montiert werden. Wenn man aber die Sensoren abschalten will, um Strom zu sparen (die Sensoren verbrauchen etwa 30 bis 40mA), muss man bei nicht isolierter Montage unbedingt die Plusleitung schalten! Wenn man die Masse-Zuleitung unterbricht, ist der Sensor sonst trotzdem noch über das Gehäuse und das Chassis mit Masse verbunden, und wird nicht deaktiviert!<br />
|}<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neue SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muß am Pin6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Meßpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
Siehe auch unter [[Sensoren für die Geschwindigkeitsmessung]]<br />
<br />
==Temperatur== <br />
===NTCs===<br />
NTCs (Negative Temperature Coefficient)oder Heißleiter sind stromleitende Materialien, die bei hohen Temperaturen Strom besser leiten als bei tiefen, das heißt, mit steigender Temperatur sinkt ihr elektrischer Widerstand. Siehe auch unter [[NTC]]. Ein großer Vorteil ist die leichte Anwendung und der geringe Preis. Nachteil ist das der Widerstandswert sich nicht linear mit der Temperatur verändert.<br />
<br />
[[Bild:ntc.gif]]<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm.<br> <br />
http://www.roboternetz.de/phpBB2/viewtopic.php?p=342164&sid=ad63fd51eb08bcf225389af5bbc4fcfd#342164<br />
<br />
===LM335 und LM35===<br />
<br />
[[Bild:LM335.JPG|center]]<br />
<br />
Der Temperatursensor LM335 funktioniert wie eine Z-Diode, die ihre Durchbruchspannung proportional zur Temperatur ändert. Beim Sensor LM335 beträgt diese Änderung 10mV/K, beim Sensor LM35 beträgt die Änderung 10mV/<sup>o</sup>C. <br />
<br />
Der größte Unterschied zwischen den Sensoren ist der, dass am Ausgang des LM335 bei 0<sup>o</sup>C etwa 2,73V anliegen (273K = 0<sup>o</sup>C) und beim LM35 0V. Sollen negative Temperaturen gemessen werden, so muss man für den LM35 das Bezugspotential GND anheben (z.B. mit zwei Si-Dioden).<br />
<br />
Von den Sensoren LM335 und LM35 gibt es auch noch genauere Ausführungen, welche einen geringeren Temperatur-Fehler ab Werk haben. Diese Versionen heißen LM15/LM25 bzw. LM135/LM235 und sind entsprechend teurer als die 3er Version (zum Vergleich: LM335 kostet bei Reichelt 0,89€, der LM135 jedoch 7,75€). <br />
<br />
Der LM335 und LM35 messen nach einer einfachen Kalibrierung mit einem Poti, bis auf 1<sup>o</sup>C genau. Dazu muss man mit dem Poti die Ausgangsspannung bei 25<sup>o</sup>C auf 2,98V einstellen (2,98V / 0,01V/K = 298K = 25<sup>o</sup>C). Da der Sensor über seinen Messbereich sehr linear ist, braucht man nur bei einer Temperatur Kalibrieren. Durch den Einsatz mehrerer in Reihe geschalteter Sensoren, kann man das Ausgangssignal Verstärken (bei drei LM335 erhält man dann 30mV/K anstatt 10mV/K) oder, wenn die Sensoren im Raum verteilt sind, einen einfachen Mittelwert bilden.<br />
<br />
====Beschaltung und Dimensionierung eines LM335====<br />
[[Bild:lm335schaltung.jpg|center]]<br />
Da sich der Sensor wie eine Z-Diode verhält, muss der Strom durch diese Begrenzt werden, um eine Verfälschung des Signals oder gar eine Zerstörung zu verhindern. Fließt jedoch zu wenig Strom durch die Diode, so treten Störungen auf und die Genauigkeit sinkt.<br />
<br />
Der Strom wird auf einfache weiße, wie bei einer LED, durch einen Widerstand (hier R1) begrenzt. Der Strom sollte zwischen Mindestens 450µA und Maximal 5mA liegen. Bei einer Betriebsspannung von 5V kann also für 2mA ein Widerstand von etwa 2,5kOhm benutzt werden (R = U/I). <br />
<br />
Die max. Betriebsspannung sollte 30V nicht überschreiten!<br />
<br />
Zur Kalibrierung schließt man an ein 10kOhm Potentiometer zwischen V+ und V- (GND) des Sensors an und legt dessen Schleifer auf den ADJ-Pin. Nun stellt man die Ausgangsspannung in Abhängigkeit von der Raumtemperatur (welche Bekannt sein sollte) ein (1<sup>o</sup>C = 1K, 273K = 0<sup>o</sup>C). Kalibriert man den LM335 nicht, so kann dieser um bis zu 9K falsch gehen!<br />
<br />
Im letzten Bild (ganz rechts) ist die schon angesprochene Reihenschaltung aufgezeichnet. Um ein größeres Ausgangssignal zu erhalten, kann man das Signal auch mit einem [[Operationsverstärker#Verstärker|Operationsverstärker]] Verstärken. Das ist günstiger und man hat die Möglichkeit, das Signal um ein Vielfaches zu Verstärken ohne einige Dutzend Sensoren ein zusetzten!<br />
<br />
Pin-Belegungen und weitere Daten finden sich im Datenblatt (kann man z.B. bei Reichelt herunterladen).<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Auflösung von 0.5<sup>o</sup> Grad Celsius messen und wird über einen I2C Bus angesprochen. <br />
<br />
Der Messbereich: <br />
*−25<sup>o</sup>C bis 100<sup>o</sup>C bei ±2<sup>o</sup>C(max)Genauigkeit.<br />
*−55<sup>o</sup>C bis 125<sup>o</sup>C bei ±3<sup>o</sup>C(max)Genauigkeit. <br />
<br />
Der LM75 bietet:<br />
* Einen Schaltausgang (invertierbar) - z.B. für Ventilator, Heizung etc.<br />
* Programmierbarer oberer und unterer Schaltpunkt.<br />
* Schaltausgang alternativ auch als Interrupt verwendbar.<br />
* Über von außen einstellbare I2C-Adresse. Bit 0 = R/W, Bits 1-3 einstellbar, Bit 4-7 fixe Adresse 0x9n <br />
* Maximal 8 Stück LM75 an einem I2C Bus. <br />
<br />
Durch I2C-Lesebefehle kann man die Temperatur (2x8Bit)auslesen.<br />
<br />
Das erste Byte ist der Temperatur Vorkommawert in ganzen Grad, als normales signed char. Das Bit 7 vom zweiten Byte bestimmt den Nachkommawert. Wenn Bit 7 gleich 1 so ist der Nachkommawert + 0.5<sup>o</sup>C. Auch dann + 0.5 <sup>o</sup>C wenn Vorkommawert negativ. Wenn Bit 7 gleich 0 so ist der Nachkommawert = 0. Bit 0-6 vom zweiten Byte sind ohne Bedeutung.<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen.<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
Man erhält als Ergebnis die Temperatur in 0,5 Grad Schritten (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
Ein weiteres Beispiel [http://www.darc-coburg.de/modules/wiwimod/index.php?page=LM75]<br />
<br />
==Resistive Sensoren==<br />
Resistive Sensoren bzw. Linearpotentiometer arbeiten als Spannungsteiler über einer Hybridleitplastik- schicht und sind in unterschiedlichen Bauformen erhältlich; z.B. für Zylindereinbau, Klemmbock- u. Gelenkaugenbefestigung oder Taster.<br />
Deren Einsatzgebiete sind vorwiegend in der Industrie.<br />
<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* [[Benutzer:BASTIUniversal|BASTIUniversal]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=13068Sensorarten2008-01-08T19:39:14Z<p>Manf: /* KTY: Silizium Temperatursensoren */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
<br />
===austriamicrosystems AS5040===<br />
<br/><br />
[[Bild:AMS-general_200x200.jpg|right]]<br />
[[Bild:AMS-chip_109x104.jpg|left]]<br />
<br />
Der AS5040 kann absolute Winkelpositionen an einer Achse messen. Die Messung wird indirekt über ein Magnetfeld mittels Hallsensoren durchgeführt. Aufgrund der Anordnung der Hallsensoren und der Integration der Sensoren direkt in Silizium wird eine sehr hohe Genauigkeit bei der Messung erreicht. Das Messprinzip kompensiert ausserdem Störgrössen, wie externes Magnetfeld, Alterungseinflüsse, Temperaturschwankungen und mechanische Toleranzen. <br />
<br />
<br/><br/><br/><br />
Die komplette Auswertung der Sensorsignale geschieht auf dem Chip. <br/><br/><br/><br />
<br />
<br />
[[Bild:AMS-block_700x242.jpg|center]]<br />
<br />
<br />
[[Bild:AMS-pcb_200x152.jpg|right]]<br />
<br/><br/><br/><br />
Durch die hohe Integration reduziert sich die zusätzliche Beschaltung des Chips auf wenige Bauteile, beispielsweise ein paar Filterkondensatoren. <br />
<br/><br/><br/><br/><br/><br/><br />
Die Winkelencoderfamilie von austriamicrosystems besitzt vielfältige Schnittstellen um den Winkelwert zu übertragen<br />
<br />
{| {{Blauetabelle}}<br />
|Seriell SSI<br />
|Standard Schnittstelle für Winkelencoder in der Industrie<br />
|-<br />
|PWM<br />
|erzeugt abhängig vom Winkel eine entsprechende Pulslänge, läßt sich sehr schön mit der Capturefunktion eines Controllers messen und braucht nur eine Leitung<br />
|-<br />
|I2C<br />
|direkte Schnittstelle zum Microcontroller<br />
|-<br />
|Analog<br />
|kompatible Schnittstelle um beispielsweise Potiapplikationen zu ersetzen<br />
|-<br />
<br />
|Inkremental<br />
|klassische Schnittstelle um relative Bewegungen zu messen, keine Absolutmessung möglich<br />
|-<br />
|BLDC<br />
|erzeugt direkt die Kommutierung für einen bürstenlosen Motor. Durch die höhere Auflösung gegenüber einer 3-Hall-Schalterlösung kann der BLDC mit einem wesentlich höheren Drehmoment gestartet werden<br />
|}<br />
<br />
[[Bild:AMS-magnet_354x421.jpg|left]]<br />
<br/><br/><br/><br/><br />
Bei der Auswahl des Magnetens ist darauf zu achten, dass sogenannte Selten-Erde Magnete verwendet werden. http://de.wikipedia.org/wiki/Seltene_Erden Diese erzeugen ein besonders starkes Magnetfeld, das im 1 Tesla Bereich liegt. Im Zentrum des Magnetfelds ist ein linearer Bereich, der für die Genauigkeit der Messung ausschlaggebend ist. Solange die Hallsensoren in diesem Bereich liegen, kann eine unkalibrierte Genauigkeit von +/- 0.5 Grad gewährleistet werden. Weiterhin ist zu beachten, dass der Magnet nicht direkt auf eine Eisenwelle montiert wird. Die Eisenwelle verursacht quasi einen magnetischen 'Kurzschluß' und entzieht damit den Hallsensoren das Magnetfeld. Idealerweise sollte eine NE-Welle verwendet werden, oder wenn nicht anders machbar muß eine Isolation aus NE-Material zwischen Eisenwelle und Magnet eingefügt werden.<br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br />
<br/><br/><br/><br/><br/><br/><br />
<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernises. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
{{FarbigerRahmen|<br />
Wenn man diese Sensoren an Robotern einsetzt, will man meist Hindernisse mit senkrecht stehenden Kanten erkennen. Montiert man den Sensor jedoch in waagerechter Lage, können sich Fehlmessungen ergeben, wenn sich ein Objekt am Sensor vorbeibewegt (z.B. wenn sich der Roboter dreht). Es wird an der Kante kurzzeitig ein Entfernung gemessen, die geringer als die tatsächliche Entfernung zum Hindernis ist. (oder auch größer als die Entfernung zu einem zweiten Hindernis hinter dem ersten, je nach Bewegungsrichtung!) Man löst dieses Problem, indem man den Sensor in senkrechter Position montiert, also so, dass die beiden Linsen übereinander statt nebeneinander liegen. Dies wird auch in Datenblatt des Sensors empfohlen: der Sensor sollte immer senkrecht zur Bewegungsrichtung des Hindernisses montiert werden.<br />
<br />
Sehr deutlich erkennt man diese Messfehler, wenn man den Sensor als ein Art 3D-Scanner einsetzt: http://www.team-iwan.de/technik/sharp1.php<br />
}}<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neue SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muß am Pin6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Meßpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
Siehe auch unter [[Sensoren für die Geschwindigkeitsmessung]]<br />
<br />
==Temperatur== <br />
===NTCs===<br />
NTCs (Negative Temperature Coefficient)oder Heißleiter sind stromleitende Materialien, die bei hohen Temperaturen Strom besser leiten als bei tiefen, das heißt, mit steigender Temperatur sinkt ihr elektrischer Widerstand. Siehe auch unter [[NTC]]. Ein großer Vorteil ist die leichte Anwendung und der geringe Preis. Nachteil ist das der Widerstandswert sich nicht linear mit der Temperatur verändert.<br />
<br />
[[Bild:ntc.gif]]<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm.<br> <br />
http://www.roboternetz.de/phpBB2/viewtopic.php?p=342164&sid=ad63fd51eb08bcf225389af5bbc4fcfd#342164<br />
<br />
===LM335 und LM35===<br />
<br />
[[Bild:LM335.JPG|center]]<br />
<br />
Der Temperatursensor LM335 funktioniert wie eine Z-Diode, die ihre Durchbruchspannung proportional zur Temperatur ändert. Beim Sensor LM335 beträgt diese Änderung 10mV/K, beim Sensor LM35 beträgt die Änderung 10mV/<sup>o</sup>C. <br />
<br />
Der größte Unterschied zwischen den Sensoren ist der, dass am Ausgang des LM335 bei 0<sup>o</sup>C etwa 2,73V anliegen (273K = 0<sup>o</sup>C) und beim LM35 0V. Sollen negative Temperaturen gemessen werden, so muss man für den LM35 das Bezugspotential GND anheben (z.B. mit zwei Si-Dioden).<br />
<br />
Von den Sensoren LM335 und LM35 gibt es auch noch genauere Ausführungen, welche einen geringeren Temperatur-Fehler ab Werk haben. Diese Versionen heißen LM15/LM25 bzw. LM135/LM235 und sind entsprechend teurer als die 3er Version (zum Vergleich: LM335 kostet bei Reichelt 0,89€, der LM135 jedoch 7,75€). <br />
<br />
Der LM335 und LM35 messen nach einer einfachen Kalibrierung mit einem Poti, bis auf 1<sup>o</sup>C genau. Dazu muss man mit dem Poti die Ausgangsspannung bei 25<sup>o</sup>C auf 2,98V einstellen (2,98V / 0,01V/K = 298K = 25<sup>o</sup>C). Da der Sensor über seinen Messbereich sehr linear ist, braucht man nur bei einer Temperatur Kalibrieren. Durch den Einsatz mehrerer in Reihe geschalteter Sensoren, kann man das Ausgangssignal Verstärken (bei drei LM335 erhält man dann 30mV/K anstatt 10mV/K) oder, wenn die Sensoren im Raum verteilt sind, einen einfachen Mittelwert bilden.<br />
<br />
====Beschaltung und Dimensionierung eines LM335====<br />
[[Bild:lm335schaltung.jpg|center]]<br />
Da sich der Sensor wie eine Z-Diode verhält, muss der Strom durch diese Begrenzt werden, um eine Verfälschung des Signals oder gar eine Zerstörung zu verhindern. Fließt jedoch zu wenig Strom durch die Diode, so treten Störungen auf und die Genauigkeit sinkt.<br />
<br />
Der Strom wird auf einfache weiße, wie bei einer LED, durch einen Widerstand (hier R1) begrenzt. Der Strom sollte zwischen Mindestens 450µA und Maximal 5mA liegen. Bei einer Betriebsspannung von 5V kann also für 2mA ein Widerstand von etwa 2,5kOhm benutzt werden (R = U/I). <br />
<br />
Die max. Betriebsspannung sollte 30V nicht überschreiten!<br />
<br />
Zur Kalibrierung schließt man an ein 10kOhm Potentiometer zwischen V+ und V- (GND) des Sensors an und legt dessen Schleifer auf den ADJ-Pin. Nun stellt man die Ausgangsspannung in Abhängigkeit von der Raumtemperatur (welche Bekannt sein sollte) ein (1<sup>o</sup>C = 1K, 273K = 0<sup>o</sup>C). Kalibriert man den LM335 nicht, so kann dieser um bis zu 9K falsch gehen!<br />
<br />
Im letzten Bild (ganz rechts) ist die schon angesprochene Reihenschaltung aufgezeichnet. Um ein größeres Ausgangssignal zu erhalten, kann man das Signal auch mit einem [[Operationsverstärker#Verstärker|Operationsverstärker]] Verstärken. Das ist günstiger und man hat die Möglichkeit, das Signal um ein Vielfaches zu Verstärken ohne einige Dutzend Sensoren ein zusetzten!<br />
<br />
Pin-Belegungen und weitere Daten finden sich im Datenblatt (kann man z.B. bei Reichelt herunterladen).<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Auflösung von 0.5<sup>o</sup> Grad Celsius messen und wird über einen I2C Bus angesprochen. <br />
<br />
Der Messbereich: <br />
*−25<sup>o</sup>C bis 100<sup>o</sup>C bei ±2<sup>o</sup>C(max)Genauigkeit.<br />
*−55<sup>o</sup>C bis 125<sup>o</sup>C bei ±3<sup>o</sup>C(max)Genauigkeit. <br />
<br />
Der LM75 bietet:<br />
* Einen Schaltausgang (invertierbar) - z.B. für Ventilator, Heizung etc.<br />
* Programmierbarer oberer und unterer Schaltpunkt.<br />
* Schaltausgang alternativ auch als Interrupt verwendbar.<br />
* Über von außen einstellbare I2C-Adresse. Bit 0 = R/W, Bits 1-3 einstellbar, Bit 4-7 fixe Adresse 0x9n <br />
* Maximal 8 Stück LM75 an einem I2C Bus. <br />
<br />
Durch I2C-Lesebefehle kann man die Temperatur (2x8Bit)auslesen.<br />
<br />
Das erste Byte ist der Temperatur Vorkommawert in ganzen Grad, als normales signed char. Das Bit 7 vom zweiten Byte bestimmt den Nachkommawert. Wenn Bit 7 gleich 1 so ist der Nachkommawert + 0.5<sup>o</sup>C. Auch dann + 0.5 <sup>o</sup>C wenn Vorkommawert negativ. Wenn Bit 7 gleich 0 so ist der Nachkommawert = 0. Bit 0-6 vom zweiten Byte sind ohne Bedeutung.<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen.<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
Man erhält als Ergebnis die Temperatur in 0,5 Grad Schritten (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
Resistive Sensoren bzw. Linearpotentiometer arbeiten als Spannungsteiler über einer Hybridleitplastik- schicht und sind in unterschiedlichen Bauformen erhältlich; z.B. für Zylindereinbau, Klemmbock- u. Gelenkaugenbefestigung oder Taster.<br />
Deren Einsatzgebiete sind vorwiegend in der Industrie.<br />
<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* [[Benutzer:BASTIUniversal|BASTIUniversal]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=13067Sensorarten2008-01-08T19:38:16Z<p>Manf: /* KTY: Silizium Temperatursensoren */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
<br />
===austriamicrosystems AS5040===<br />
<br/><br />
[[Bild:AMS-general_200x200.jpg|right]]<br />
[[Bild:AMS-chip_109x104.jpg|left]]<br />
<br />
Der AS5040 kann absolute Winkelpositionen an einer Achse messen. Die Messung wird indirekt über ein Magnetfeld mittels Hallsensoren durchgeführt. Aufgrund der Anordnung der Hallsensoren und der Integration der Sensoren direkt in Silizium wird eine sehr hohe Genauigkeit bei der Messung erreicht. Das Messprinzip kompensiert ausserdem Störgrössen, wie externes Magnetfeld, Alterungseinflüsse, Temperaturschwankungen und mechanische Toleranzen. <br />
<br />
<br/><br/><br/><br />
Die komplette Auswertung der Sensorsignale geschieht auf dem Chip. <br/><br/><br/><br />
<br />
<br />
[[Bild:AMS-block_700x242.jpg|center]]<br />
<br />
<br />
[[Bild:AMS-pcb_200x152.jpg|right]]<br />
<br/><br/><br/><br />
Durch die hohe Integration reduziert sich die zusätzliche Beschaltung des Chips auf wenige Bauteile, beispielsweise ein paar Filterkondensatoren. <br />
<br/><br/><br/><br/><br/><br/><br />
Die Winkelencoderfamilie von austriamicrosystems besitzt vielfältige Schnittstellen um den Winkelwert zu übertragen<br />
<br />
{| {{Blauetabelle}}<br />
|Seriell SSI<br />
|Standard Schnittstelle für Winkelencoder in der Industrie<br />
|-<br />
|PWM<br />
|erzeugt abhängig vom Winkel eine entsprechende Pulslänge, läßt sich sehr schön mit der Capturefunktion eines Controllers messen und braucht nur eine Leitung<br />
|-<br />
|I2C<br />
|direkte Schnittstelle zum Microcontroller<br />
|-<br />
|Analog<br />
|kompatible Schnittstelle um beispielsweise Potiapplikationen zu ersetzen<br />
|-<br />
<br />
|Inkremental<br />
|klassische Schnittstelle um relative Bewegungen zu messen, keine Absolutmessung möglich<br />
|-<br />
|BLDC<br />
|erzeugt direkt die Kommutierung für einen bürstenlosen Motor. Durch die höhere Auflösung gegenüber einer 3-Hall-Schalterlösung kann der BLDC mit einem wesentlich höheren Drehmoment gestartet werden<br />
|}<br />
<br />
[[Bild:AMS-magnet_354x421.jpg|left]]<br />
<br/><br/><br/><br/><br />
Bei der Auswahl des Magnetens ist darauf zu achten, dass sogenannte Selten-Erde Magnete verwendet werden. http://de.wikipedia.org/wiki/Seltene_Erden Diese erzeugen ein besonders starkes Magnetfeld, das im 1 Tesla Bereich liegt. Im Zentrum des Magnetfelds ist ein linearer Bereich, der für die Genauigkeit der Messung ausschlaggebend ist. Solange die Hallsensoren in diesem Bereich liegen, kann eine unkalibrierte Genauigkeit von +/- 0.5 Grad gewährleistet werden. Weiterhin ist zu beachten, dass der Magnet nicht direkt auf eine Eisenwelle montiert wird. Die Eisenwelle verursacht quasi einen magnetischen 'Kurzschluß' und entzieht damit den Hallsensoren das Magnetfeld. Idealerweise sollte eine NE-Welle verwendet werden, oder wenn nicht anders machbar muß eine Isolation aus NE-Material zwischen Eisenwelle und Magnet eingefügt werden.<br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br />
<br/><br/><br/><br/><br/><br/><br />
<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernises. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
{{FarbigerRahmen|<br />
Wenn man diese Sensoren an Robotern einsetzt, will man meist Hindernisse mit senkrecht stehenden Kanten erkennen. Montiert man den Sensor jedoch in waagerechter Lage, können sich Fehlmessungen ergeben, wenn sich ein Objekt am Sensor vorbeibewegt (z.B. wenn sich der Roboter dreht). Es wird an der Kante kurzzeitig ein Entfernung gemessen, die geringer als die tatsächliche Entfernung zum Hindernis ist. (oder auch größer als die Entfernung zu einem zweiten Hindernis hinter dem ersten, je nach Bewegungsrichtung!) Man löst dieses Problem, indem man den Sensor in senkrechter Position montiert, also so, dass die beiden Linsen übereinander statt nebeneinander liegen. Dies wird auch in Datenblatt des Sensors empfohlen: der Sensor sollte immer senkrecht zur Bewegungsrichtung des Hindernisses montiert werden.<br />
<br />
Sehr deutlich erkennt man diese Messfehler, wenn man den Sensor als ein Art 3D-Scanner einsetzt: http://www.team-iwan.de/technik/sharp1.php<br />
}}<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neue SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muß am Pin6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Meßpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
Siehe auch unter [[Sensoren für die Geschwindigkeitsmessung]]<br />
<br />
==Temperatur== <br />
===NTCs===<br />
NTCs (Negative Temperature Coefficient)oder Heißleiter sind stromleitende Materialien, die bei hohen Temperaturen Strom besser leiten als bei tiefen, das heißt, mit steigender Temperatur sinkt ihr elektrischer Widerstand. Siehe auch unter [[NTC]]. Ein großer Vorteil ist die leichte Anwendung und der geringe Preis. Nachteil ist das der Widerstandswert sich nicht linear mit der Temperatur verändert.<br />
<br />
[[Bild:ntc.gif]]<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm. <br />
http://www.roboternetz.de/phpBB2/viewtopic.php?p=342164&sid=ad63fd51eb08bcf225389af5bbc4fcfd#342164<br />
<br />
===LM335 und LM35===<br />
<br />
[[Bild:LM335.JPG|center]]<br />
<br />
Der Temperatursensor LM335 funktioniert wie eine Z-Diode, die ihre Durchbruchspannung proportional zur Temperatur ändert. Beim Sensor LM335 beträgt diese Änderung 10mV/K, beim Sensor LM35 beträgt die Änderung 10mV/<sup>o</sup>C. <br />
<br />
Der größte Unterschied zwischen den Sensoren ist der, dass am Ausgang des LM335 bei 0<sup>o</sup>C etwa 2,73V anliegen (273K = 0<sup>o</sup>C) und beim LM35 0V. Sollen negative Temperaturen gemessen werden, so muss man für den LM35 das Bezugspotential GND anheben (z.B. mit zwei Si-Dioden).<br />
<br />
Von den Sensoren LM335 und LM35 gibt es auch noch genauere Ausführungen, welche einen geringeren Temperatur-Fehler ab Werk haben. Diese Versionen heißen LM15/LM25 bzw. LM135/LM235 und sind entsprechend teurer als die 3er Version (zum Vergleich: LM335 kostet bei Reichelt 0,89€, der LM135 jedoch 7,75€). <br />
<br />
Der LM335 und LM35 messen nach einer einfachen Kalibrierung mit einem Poti, bis auf 1<sup>o</sup>C genau. Dazu muss man mit dem Poti die Ausgangsspannung bei 25<sup>o</sup>C auf 2,98V einstellen (2,98V / 0,01V/K = 298K = 25<sup>o</sup>C). Da der Sensor über seinen Messbereich sehr linear ist, braucht man nur bei einer Temperatur Kalibrieren. Durch den Einsatz mehrerer in Reihe geschalteter Sensoren, kann man das Ausgangssignal Verstärken (bei drei LM335 erhält man dann 30mV/K anstatt 10mV/K) oder, wenn die Sensoren im Raum verteilt sind, einen einfachen Mittelwert bilden.<br />
<br />
====Beschaltung und Dimensionierung eines LM335====<br />
[[Bild:lm335schaltung.jpg|center]]<br />
Da sich der Sensor wie eine Z-Diode verhält, muss der Strom durch diese Begrenzt werden, um eine Verfälschung des Signals oder gar eine Zerstörung zu verhindern. Fließt jedoch zu wenig Strom durch die Diode, so treten Störungen auf und die Genauigkeit sinkt.<br />
<br />
Der Strom wird auf einfache weiße, wie bei einer LED, durch einen Widerstand (hier R1) begrenzt. Der Strom sollte zwischen Mindestens 450µA und Maximal 5mA liegen. Bei einer Betriebsspannung von 5V kann also für 2mA ein Widerstand von etwa 2,5kOhm benutzt werden (R = U/I). <br />
<br />
Die max. Betriebsspannung sollte 30V nicht überschreiten!<br />
<br />
Zur Kalibrierung schließt man an ein 10kOhm Potentiometer zwischen V+ und V- (GND) des Sensors an und legt dessen Schleifer auf den ADJ-Pin. Nun stellt man die Ausgangsspannung in Abhängigkeit von der Raumtemperatur (welche Bekannt sein sollte) ein (1<sup>o</sup>C = 1K, 273K = 0<sup>o</sup>C). Kalibriert man den LM335 nicht, so kann dieser um bis zu 9K falsch gehen!<br />
<br />
Im letzten Bild (ganz rechts) ist die schon angesprochene Reihenschaltung aufgezeichnet. Um ein größeres Ausgangssignal zu erhalten, kann man das Signal auch mit einem [[Operationsverstärker#Verstärker|Operationsverstärker]] Verstärken. Das ist günstiger und man hat die Möglichkeit, das Signal um ein Vielfaches zu Verstärken ohne einige Dutzend Sensoren ein zusetzten!<br />
<br />
Pin-Belegungen und weitere Daten finden sich im Datenblatt (kann man z.B. bei Reichelt herunterladen).<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Auflösung von 0.5<sup>o</sup> Grad Celsius messen und wird über einen I2C Bus angesprochen. <br />
<br />
Der Messbereich: <br />
*−25<sup>o</sup>C bis 100<sup>o</sup>C bei ±2<sup>o</sup>C(max)Genauigkeit.<br />
*−55<sup>o</sup>C bis 125<sup>o</sup>C bei ±3<sup>o</sup>C(max)Genauigkeit. <br />
<br />
Der LM75 bietet:<br />
* Einen Schaltausgang (invertierbar) - z.B. für Ventilator, Heizung etc.<br />
* Programmierbarer oberer und unterer Schaltpunkt.<br />
* Schaltausgang alternativ auch als Interrupt verwendbar.<br />
* Über von außen einstellbare I2C-Adresse. Bit 0 = R/W, Bits 1-3 einstellbar, Bit 4-7 fixe Adresse 0x9n <br />
* Maximal 8 Stück LM75 an einem I2C Bus. <br />
<br />
Durch I2C-Lesebefehle kann man die Temperatur (2x8Bit)auslesen.<br />
<br />
Das erste Byte ist der Temperatur Vorkommawert in ganzen Grad, als normales signed char. Das Bit 7 vom zweiten Byte bestimmt den Nachkommawert. Wenn Bit 7 gleich 1 so ist der Nachkommawert + 0.5<sup>o</sup>C. Auch dann + 0.5 <sup>o</sup>C wenn Vorkommawert negativ. Wenn Bit 7 gleich 0 so ist der Nachkommawert = 0. Bit 0-6 vom zweiten Byte sind ohne Bedeutung.<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen.<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
Man erhält als Ergebnis die Temperatur in 0,5 Grad Schritten (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
Resistive Sensoren bzw. Linearpotentiometer arbeiten als Spannungsteiler über einer Hybridleitplastik- schicht und sind in unterschiedlichen Bauformen erhältlich; z.B. für Zylindereinbau, Klemmbock- u. Gelenkaugenbefestigung oder Taster.<br />
Deren Einsatzgebiete sind vorwiegend in der Industrie.<br />
<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* [[Benutzer:BASTIUniversal|BASTIUniversal]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Schrittmotoren&diff=12899Schrittmotoren2007-11-22T17:57:19Z<p>Manf: /* Weblinks */</p>
<hr />
<div>==Was ist ein Schrittmotor==<br />
<br />
Schrittmotoren arbeiten völlig anders als Gleichstrommotoren. Das ist schon daran zu erkennen, dass diese keine zwei, sondern meist 4, 6 oder 8 Anschlüsse (bipolare oder unipolare Motoren) besitzen. Demzufolge ist es also nicht damit getan, irgendwo Spannung anzulegen, um den Motor zum Drehen zu bewegen. Aber keine Sorge, sehr kompliziert ist es dennoch nicht. <br />
<br />
Ein Schrittmotor (oft auch ''Stepper'' genannt) ist ein Synchronmotor, bei dem der Rotor (drehbares Motorteil mit der Welle) bei geschickter Wahl der angesteuerten Statorspulen (nichtdrehbarer Motorteil) gezielt um einen Winkel gedreht werden kann. Auf diese Weise kann man in mehreren Schritten jeden Drehwinkel, wenn er ein Vielfaches des minimalen Drehwinkels ist, anfahren.<br />
<br />
==Wie unterscheidet man Schrittmotoren==<br />
Man unterscheidet den Schrittmotor nach seiner Bauform in Reluktanzmotor und Permanentmagnetmotor, wobei man beide Formen auch zu einem Hybridschrittmotor kombinieren kann. <br />
Beim Reluktanzschrittmotor besteht der Rotor aus einem gezahnten Weicheisenkern. Dieses Material gewährleistet nach dem Ausschalten des Statorstromes das Verschwinden jedes Rest-Magnetfeldes. Dadurch kann der magnetische Fluss bei eingeschaltetem Strom ungehindert durch den Weicheisenkern fließen. Die Drehbewegung des Rotors kommt zustande, weil so der Abstand zwischen dem nächstliegendem Zahn des Rotors und dem Stator verringert werden kann und der magnetische Widerstand verringert wird. <br />
<br />
Beim Permanentmagnetschrittmotor besteht der Stator aus Weicheisen und der Rotor aus Dauermagneten, die abwechselnd einen Nord- und einen Südpol aufweisen. Mit dem Stator-Magnetfeld richtet man den dauermagnetischen Rotor so aus, dass eine Drehbewegung entsteht. <br />
<br />
Da der Reluktanzschrittmotor keine Permanentmagnete enthält, hat er daher im Gegensatz zum Permanentmagnetschrittmotor auch kein Rastmoment bei ausgeschaltetem Strom. Beim Permanentmagnetschrittmotor ist die Anzahl der Pole (und damit die Auflösung) begrenzt. Der Hybridschrittmotor vereint die Eigenschaften beider Bauformen, in dem auf den Permanentmagneten noch ein gezahnter Weicheisenkranz eingefügt wird. Nahezu alle heute erhältlichen Schrittmotoren sind Hybridmotoren. Als High-Torque Motoren (=hohes Drehmoment) werden häufig Typen bezeichnet, bei denen für den Rotor besonders starke Seltenerdenmagnete verwendet werden. So lässt sich eine besonders hohe Kraftdichte erzielen. <br />
<br />
Typische Anwendungsgebiete sind Drucker, vor allem Matrixdrucker, oder der Antrieb des Schreib-/Lesekopfes in einem Diskettenlaufwerk. Da Schrittmotoren (solange sie nicht überlastet werden) exakt dem außen angelegten Feld folgen, können sie ohne Sensoren zur Positionsrückmeldung (Encoder, Drehgeber oder ähnliches) betrieben werden (Synchronmotorverhalten). Daher können sie im Gegensatz zu Servomotoren gesteuert betrieben werden. Servos müssen auf Position geregelt werden. <br />
<br />
Schrittmotoren existieren auch in Form von Linearmotoren. Schrittmotoren können bis ca. 1 kW wirtschaftlich eingesetzt werden.<br />
<br />
==Prinzip der Schrittmotoren==<br />
<br />
Der bipolare Motor besitzt zwei Spulen, und da jede Spule nun mal zwei Enden hat, also 4 Anschlüsse. Der unipolare Motor ist ebenfalls so aufgebaut, jedoch wird hier noch jede Spule in der Mitte durch eine Anschlussleitung angezapft (siehe Bild)<br />
<br />
[[Bild:schrittmotorprinzip.gif|center]]<br />
<br />
<br />
Um den Motor nun in Bewegung zu bringen, muss an den Spulen eine Spannung angelegt werden. Legt man die Mittelanzapfung auf Masse, so hat man also noch 4 Anschlüsse. Legt man nun an zwei dieser Anschlüsse die Spannung an, bewegt sich der Motor - allerdings nur einen winzigen kaum sichtbaren Schritt. Wie groß ein Schritt ist, hängt vom jeweiligen Motor ab. Bei den meisten Motoren beträgt der Schrittwinkel 1,8 Grad. Das bedeutet, dass 200 Schritte notwendig sind, um die Achse einmal rund zu drehen. Nachdem der Motor nun einen Schritt gemacht hat, muss die Spannung an einer anderen Kombination von Anschlüssen eingeschaltet werden. Es gibt somit 4 Kombinationen, wobei immer zwei Anschlüsse an die Spannung und zwei andere auf 0 V gelegt werden. Dies ist die sogenannte unipolare Ansteuerung. Wechselt man ständig diese verschiedenen Anschlussbelegungen, so würde sich der Motor mit jeder Änderung einen Schritt drehen.<br />
<br />
==Schrittmotoransteuerung==<br />
Um dies zu erreichen, benötigt man entweder eine elektronische Schaltung oder man verbindet die einzelnen Spulenenden jeweils mit einem Port eines Microcontrollers. Vorsicht, natürlich nicht direkt verbinden. Die Leistung eines Ports reicht natürlich niemals aus, um einen Motor zu bewegen. Ein Motortreiber (Verstärker) muss also schon dazwischen geschaltet werden. Zum Beispiel der Schaltkreis L293D, siehe Zeichnung. <br />
<br />
<br />
[[Bild:schrittmotorprinzip2.gif|center]]<br />
<br />
oder aber der stärkere L6205:<br />
<br />
[[Bild:l6205.gif|center]]<br />
<br />
Nun müsste der Microcontroller also nur noch eine 4-stellige Bitfolge ausgeben, um den Motor an den 4 Anschlüssen ständig in einer bestimmten Kombination mit Spannung zu versorgen.. Bei jeder Portausgabe würde sich somit der Schrittmotor einen Schritt bewegen. Das Ganze könnte natürlich in der Software in einer Schleife gemacht werden. Der Schleifenindex würde somit die Zahl der Schritte angeben. Der große Vorteil bei Schrittmotoren ist, dass man durch diese Methode ganz genau festlegen kann, wie weit sich ein Schrittmotor dreht. Man kann somit auch genau ausrechnen, wie viel Schritte pro Radumdrehung notwendig sind. Nutzt man keine Untersetzung (was ich allerdings noch zusätzlich empfehlen würde) so bräuchte man bei den meisten Motoren wie schon erwähnt 200 Schritte pro Radumdrehung. Berechnet man dann den Umfang des Rades, so kann man genau ausrechnen, wie viele Schritte pro cm Fahrtstrecke notwendig sind. So könnte man schnell eine Routine schreiben, welche als Parameter die Fahrtstrecke entgegennimmt und dann daraus die Schritte errechnet und in einer Schleife an die Ports weitergibt. <br />
<br />
Genauer lässt sich ein Roboter eigentlich kaum steuern. Ein Schrittmotor bewegt sich nur bei einem Schritt, ansonsten sorgt das Haltemoment dafür, dass er sich nicht weiter bewegt. Nachteil ist nur, dass der Motor auch im Stand mit Strom versorgt wird, damit er sich nicht bei unebenen Böden oder an Steigungen bewegt. Bei Robotern, die sich nur in der Wohnung bewegen, kann man oft auch in der Praxis die Spannung abschalten, ohne dass sich der Motor bewegt, insbesondere wenn man vielleicht durch einen Zahnriemen noch eine Untersetzung von 4:1 oder 6:1 eingebaut hat.<br />
<br />
In der Tat werden viele Roboter schon auf diese Weise gesteuert. Optimal ist diese Methode allerdings nicht, insbesondere bei schweren Robotern reicht die Kraft bei dieser Art Steuerung nicht aus, dies wird leider in vielen Artikeln zu diesem Thema verschwiegen. Wenn ein Motor zu schwach ist, können auch Schritte verloren gehen, wenn die Kraft nicht ausreicht um z.B. einen höheren Teppichrand zu überfahren. Dadurch würde die genaue Positionierung wieder gestört.<br />
<br />
Gleich dazu mehr. Erwähnen möchte ich erst noch kurz die bipolaren Motoren mit 4 Anschlüssen (also ohne Mittelanzapfung). Diese sind im Prinzip nicht anders aufgebaut als die unipolaren. Da sie jedoch keine Mittelanzapfung besitzen, wird das unterschiedliche Magnetfeld dadurch erreicht, dass man die Spannung an den Spulenenden immer umpolt. Lange Zeit galt das für Bastler als etwas zu kompliziert, daher wurde die unipolare Ansteuerung oft vorgezogen. Durch neue integrierte Schaltkreise wie den L298 ist das aber auch kein Problem mehr. Erwähnen möchte ich noch die Motoren mit 8 Anschlüssen. Im Prinzip sind das Motoren, in denen die beiden Spulen in der Mitte aufgetrennt und herausgeführt wurden. Diese Motoren erlauben wahlweise eine bipolare oder unipolare Ansteuerung. Man kann die Leistung und Anschlusswerte auch verändern, indem man hier die 4 Spulen (sind ja nun quasi 4 durch die Auftrennung) entweder parallel oder in Serie schaltet.<br />
<br />
Hier alle denkbaren Ansteuerungsmöglichkeiten bei den unterschiedlichen Motoren (die Farbangaben können bei den Motoren sehr unterschiedlich sein):<br />
<br />
<br />
[[Bild:schrittmotorprinzip3.gif|center]]<br />
<br />
==Ansteuerarten==<br />
<br />
Die einfachste Art, einen Schrittmotor zu betreiben, ist der sogenannte WaveDrive-Betrieb, bei dem immmer nur eine Spule stromerfüllt ist. Dies ist am einfachste zu realisieren, birgt aber ein geringes Drehmoment. Die Positionnen, die der Rotor einnehmen kann, liegen bei 0, 90, 180 und 270 Grad. Werden dagegen immer zwei benachbarte Spulen mit Strom versorgt, gelangt man zum sog. Vollschrittbetrieb und erreicht ein größeres Drehmoment. Die Positionen liegen hier genau zwischen den Positionen beim WaveDrive-Betrieb. Werden beide Betriebsarten kombiniert, also immer abwechselnd eine oder beide Spulen versorgt, können insgesamt schon 8 Positionen anfahren werden. Dies nennt man Halbschrittbetrieb. Führt man diese Idee wieter, so gelangt man zu einem Idealen Drehfeld: Beide Spulenpaare werden mit einer Sin/Cos-Welle angesteuert, sodaß sich ein nahezu idealer Rundlauf ergibt. Die Vorteile des Mehrschrittbetriebs liegen auf der Hand: Der Kraftverlauf wird bei kleinere Schritten gleichmäßiger, die Gefahr des Schrittverlustes sinkt und der Motor wird deutlich leiser.<br />
<br />
==Schrittmotoren in Bezug auf Roboter==<br />
<br />
[[Bild:Schrittmotor.jpg|right]]<br />
Schrittmotoren eignen sich vorzüglich für Roboter. Insbesondere für Roboter, die sich nur im Haus bewegen und weniger als 20 kg wiegen, halte ich persönlich Schrittmotoren für die 1. Wahl. Sie zeichnen sich dadurch aus, dass die Steuerung besonders leicht und präzise per Software möglich ist. Oft hört man in Foren, dass Schrittmotoren im Vergleich zu Getriebemotoren recht schwach seien. Dazu ist zu sagen, dass dieser Vergleich etwas hinkt. Ein Schrittmotor könnte ja auch mit einem Getriebe versehen werden. Also wenn man Getriebemotoren schon mit Schrittmotoren vergleicht, dann müssten beide über ein Getriebe verfügen. Natürlich gibt es auch Schrittmotoren mit Getriebe. Allerdings braucht man bei Schrittmotoren oft gar kein Getriebe, denn die Kraft ohne Getriebe ist nämlich in der Regel wesentlich höher als bei den Gleichstrommotoren. Auch niedrige Drehzahlen sind bei Schrittmotoren kein Problem, sogar von Vorteil. Je niedriger die Drehzahl, desto höher ist bei Schrittmotoren das Drehmoment.<br />
Dass es trotzdem immer wieder bei Einsteigern Probleme mit der Wahl des richtigen Schrittmotors gibt, liegt vorwiegend am mangelnden Wissen über das Stromverhalten dieser Motoren. Dazu später ein paar Tipps, die zeigen, dass man auch schwere Roboter durchaus mit recht kleinen Motoren bewegen kann. Zuvor aber ein paar Grundlagen für Einsteiger. Anwender, die sich schon etwas mit Schrittmotoren auskennen, können den nächsten Absatz überspringen<br />
<br />
==Fehler, die bei der Motorwahl oft gemacht werden==<br />
<br />
Bei der Auswahl eines Schrittmotors sollte man sorgfältig vorgehen. Kleine Motoren, wie sie in Druckern oder Floppys stecken, reichen in der Regel wirklich nur für Roboter der Fliegengewichtsklasse aus. Wenn ein Roboter ein paar kg wiegt, dann braucht man schon etwas mehr Power. Hier sollte man immer auf das Haltemoment achten, dies entspricht fast dem Drehmoment. Mit einem Motor, der 40 Ncm Haltemoment besitzt kann man schon einiges anfangen. Bei einigen Versuchen hab ich durchaus Roboter mit 10 kg ohne Schrittverlust damit bewegt. Allerdings hab ich noch eine Untersetzung 6:1 über Riemen eingebaut. Wenn man sicher gehen will, dann nimmt man immer einen etwas stärkeren Motor. Ein 100 Ncm Motor kommt oft noch mit 6 oder 7 VA (Watt) aus.<br />
Es ist ein Irrtum, dass sich die Größe des Motors linear mit der Kraft ändert. Es gibt zahlreiche Motoren, welche die gleiche Größe aufweisen und dennoch ganz unterschiedlich stark sind. Ein Standardmaß ist 56 x 56 mm. In der Regel findet man in dieser Größe schon starke Motoren, die keine Wünsche mehr offen lassen.<br />
<br />
Ein Fehler, der bei der Auswahl des Motors oft gemacht wird, ist die Betriebsspannung. Auch ich habe am Anfang gedacht, dass man bei einer vorhandenen Spannung von 12 V am besten einen Motortyp mit 12 V kaufen muss. Dies ist zwar nicht ganz falsch, aber wird nie zu großer Leistung führen. Wichtig für den Motor ist, dass der angegebene Strom fließt. Ein Motor, bei dem beispielsweise 12 V und 0,5 A angegeben sind, wird in der Praxis nur bei wirklich sehr niedrigen Drehzahlen seine Kraft, also sein Drehmoment, erreichen. Je höher die Drehzahl, desto schwächer wird der Motor. Das kann soweit gehen, dass schon das geringste Hindernis den Motor Schritte verlieren lässt oder dass der Motor bei höheren Drehzahlen gar nicht mehr anläuft.<br />
<br />
<br />
[[Bild:stepperdrehmoment.gif|center]]<br />
<br />
<br />
Woran liegt dies? Ganz einfach: Ein Schrittmotor hat auch eine Induktivität. Da der Motor ständig umgepolt wird, wird durch diese Induktivität eine Art Gegenstrom erzeugt. Dies hat zur Folge, dass der eigentliche Strom bei höheren Drehzahlen nicht mehr erreicht wird. Je schneller sich der Motor dreht, desto weniger Strom fließt. Verständlich, dass dadurch die Leistung reduziert wird.<br />
<br />
Wie kann man diesem Verhalten entgegenwirken? Ganz einfach mit einer wesentlich höheren Spannung als auf dem Motor angegeben. Doch Vorsicht, so einfach geht es nicht. Wenn der Motor steht oder sich langsam dreht, dann würde der Motor ja sofort durchbrennen. Die Lösung ist eine stromgeregelte Steuerung! Die Regelung wird mit einer hohen Spannung (oft bis zu 30 oder 40 Volt) versorgt. Aber die Regelung sorgt dafür, dass immer nur der eingestellte Nennstrom, in unserem Beispiel 0,5 A, zum Motor gelangt. Auf diese Art und Weise wird der Motor, ohne Schaden zu nehmen, immer mit der optimalen Spannung versorgt.<br />
<br />
In der Tat werden heute alle Schrittmotoren, die etwas Leistung bringen müssen, z.B. bei Drehmaschinen, auf diese Art angesteuert. Das Ganze klingt nun recht kompliziert und aufwendig für einen Roboter-Hobbybastler. Ist es aber nicht, denn es gibt heute zwei integrierte Schaltkreise, die einen das Ganze recht einfach machen.<br />
<br />
<br />
==Schaltung zum Ansteuern eines Schrittmotors mit L298 und L297==<br />
<br />
Die hier abgebildete Schaltung ist quasi der Standard für Schrittmotoren. Auch bei Drehmaschinen wird diese Schaltung oft eingesetzt. <br />
<br />
[[Bild:l298standard.gif|center| Widerstand RS1, RS2: 1 oder 0,5 Ohm (bei größerer Belastung); Dioden: schnelle Dioden z.B. BYV27-200]]<br />
<br />
Die Schaltung lässt sich recht einfach auf einer Experimentierplatine aufbauen, es gibt jetzt aber auf vielfachen Wunsch auch eine fertig erhältliche Platine für Einsteiger.<br />
<br />
[[Bild:rnstepp297_platine390.jpg|center| Eine erhältliche Platine erleichtert den Aufbau der Schaltung erheblich]]<br />
<br />
Bedenkt man, dass auch bei einem Gleichstrommotor ein Motortreiber notwendig ist, dann ist diese Schaltung auch nicht viel komplexer. Die einzelnen Steuerleitungen können direkt mit den Ports eines Microcontrollers ([[Controllerboard]]) oder mit dem Parallelport eines PCs verbunden werden. Hier die Bedeutung:<br />
<br />
{| style="background:transparent; padding:0px; margin:0px;"<br />
|-<br />
|<br />
{| {{Blauetabelle}} <br />
|-<br />
|{{Hintergrund1}} | Bezeichnung<br />
|{{Hintergrund1}} width=40| Pin #<br />
|{{Hintergrund1}} | Erklärung<br />
|- <br />
| '''CW/CCW'''<br />
| 17<br />
| Gibt die Richtung an, in die der Motor bewegt werden soll<br />
(CW = ClockWise = im Uhrzeigersinn, CCW = CounterClockWise = gegen den Uhrzeigersinn)<br />
|- <br />
| '''Clock'''<br />
| 18<br />
| Durch einen kurzen Impuls auf diese Leitung wird der Motor einen Schritt bewegt. In einer Schleife braucht mal also nur diese Leitung kurz ein- und auszuschalten. <br />
|- <br />
| '''Half/Full'''<br />
| 19<br />
| Gewöhnlich legt man den Anschluss auf Masse. Legt man ihn auf 5 V, dann werden immer halbe Schritte durchgeführt, also doppelt so viele Schritte pro Umdrehung<br />
|- <br />
| '''Enable'''<br />
| 10<br />
| Wenn man diesen Anschluss auf Masse legt, wird die Motorspannung ausgeschaltet<br />
|-<br />
|'''Vref'''<br />
| 15<br />
| Hier muss eine Spannung zwischen 0 und 3 Volt angelegt werden. Die Spannung legt den maximalen Motorstrom fest.<br />
VRef berechnet sich nach folgender Formel:<br />
<br />
<math>V_{ref} = I_{Motorstrom} \cdot R_s</math><br />
<br />
Angenommen, Sie haben einen Motor, der 0,5 A Strom verträgt und einen 1 Ohm Widerstand für Rs gewählt, sieht die Rechnung so aus:<br />
<br />
<math>Vref=0,5A \cdot 1 \Omega = 0,5V</math><br />
<br />
Man muss also an Vref eine Spannung von 0,5 V anlegen. Am Einfachsten geht das, indem man zwischen 5 V und Masse ein 10-k-Poti und den Schleifer an Vref legt. Damit man die 3 Volt nicht überschreitet kann man zwischen 5 V und Poti noch einen 6 kOhm Widerstand legen.<br />
|-<br />
|'''RESET'''<br />
| 20<br />
| Bringt Schrittmotor in Grundstellung (dieser Anschluss muss auf +5 V gelegt werden, damit die Schaltung funktioniert [http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=16449&postdays=0&postorder=asc&start=22 Quelle])<br />
|-<br />
|'''Control'''<br />
| 11<br />
| Mit diesem Anschluss kann man die Art des [[Chopper Betrieb]]s ändern. Ist der Control Eingang auf high, dann klingt der Motorstrom langsam ab (Phasen Chopping), zum schnellen Abklingen setzt man ihn auf low (Inhibit Chopping).<br />
|-<br />
|'''Sync, Home'''<br />
| 1,3<br />
| Diese Anschlüsse kann man meist vernachlässigen und unbelegt lassen<br />
|}<br />
<br />
|<br />
<br />
{| style="float:right; background:transparent; padding:0px; margin:0px;"<br />
|- valign="top"<br />
| <br />
|-<br />
| [[Bild:l298eigenbau.jpeg|thumb|200px|right|Meine erste Schrittmotoransteuerung. Nicht schön - aber es funktionierte :-)]]<br />
[[Bild:rnstepp297.jpeg|thumb|200px|right|Die gleiche Schaltung heute als Bausatz RN-Stepp297 für einen Schrittmotor - nur noch 1/4 so groß!]]<br />
<br />
|-<br />
|}<br />
<br />
|-<br />
|}<br />
<br />
<br />
Wie Sie sehen, braucht man also nur 3 Port-Pins, um einen Schrittmotor in beliebige Richtungen und in beliebiger Geschwindigkeit bewegen zu können. Kommt noch ein Motor hinzu, dann könnte man die Enable-Leitung beider verbinden, sodass dann zwei Motoren mit 5 Ports-Pins optimal gesteuert werden können. Ich habe mit einer solchen Schaltung auf einer Experimentierplatine schon einen 15-kg-Roboter problemlos mit einer C-Control gesteuert.<br />
<br />
Einen interessanten Forum Thread zu oberer Schaltung findet man unter [[#Weblinks]]<br />
<br />
<br />
Hier noch mal ein größerer Schaltplan mit eingezeichnetem Anschlussstecker und Spannungsteiler.<br />
<br />
[[Bild:schaltungstep298.gif|thumb|right|Ansteuerung mit L298]]<br />
<br />
Wichtig ist nur, dass man diese Schaltung mit einer möglichst hohen Spannung versorgt und einen Schrittmotor mit möglichst niedriger Spannung auswählt. Man sollte sich nicht davor abschrecken lassen, dass Schrittmotoren mit niedriger Spannung höhere Ströme z.B. 1 bis 2 A benötigen. Die Leistung berechnet sich ja bekanntlich mit der Formel P=U*I. Somit brauchen auch diese Motoren nicht mehr Energie als Motoren mit höherer Spannung und niedrigem Strombedarf. Hat man bei einem Roboter nur 12 V zur Verfügung, so ist es empfehlenswert z.B. einen 3- oder 4-Volt-Motor zu kaufen. Der Widerstand sollte jedenfalls deutlich unter 10 Ohm liegen. In diesem Fall könnte man dann die obige Schaltung auch mit 12 V betreiben. Allerdings bei höheren Drehzahlen würde die Spannung wegen der Induktivität meist immer noch nicht ausreichen, um die volle Leistung des Motors zu nutzen. Daher wäre zu überlegen, ob man nicht zwei 12-V-Batterien in Serie schaltet oder eine Spannungsverdopplerschaltung einsetzt. Ich habe mich für letzteres entschieden. Mit ein paar Kondensatoren und Dioden kann man recht einfach die Spannung von 12 auf ca. 21 V erhöhen. In der Praxis bricht dieses Spannung bei hohen Strömen ein paar Volt ein, aber das tut der Leistung keinen Abbruch. Mit Spannungsverdoppler war der Motor jedenfalls deutlich stärker und hatte mit 15 kg in der Wohnung keinerlei Probleme. Schwieriger wird es mit Motoren, die schwerer als 15 kg sind, denn hier wird der Strombedarf einfach zu groß und die Akku-Kapazität ist zu schnell erschöpft. <br />
<br />
[[Bild:icrnst01schaltplan.gif|thumb|Schrittmotorsteuerung mit RS232 oder I2C]]<br />
<br />
Fazit: Roboter, die sehr genau gesteuert werden müssen und deutlich weniger als 10 kg wiegen, kann man sehr gut mit Schrittmotoren steuern. Bei Robotern, die schwerer sind, sich sehr schnell bewegen müssen oder deren Steuergenauigkeit nicht so wichtig ist, sind Getriebemotoren oft sinnvoller. <br />
<br />
Als Alternative eine Ansteuerung für 2 Schrittmotoren per Befehl über I2C oder RS232 <br />
speziell für Roboter Bastler (ebenfalls mit Stromregelung und L298). Das Board RN-Motor beruht auf dieser Schaltung <br />
<br />
Ein interessanter Forum Thread zu dieser Schaltung findet man unter [[#Weblinks]]<br />
<br />
Neben dem Motortreiber L298 gibt es aber auch Alternative Motortreiber die sich sehr gut für die Schrittmotorsteuerung eignen. Sehr gut eignen sich zum Beispiel auch L293D oder der neuere L6205. Diese Treiber werden auf unserer Seite [[Getriebemotoren Ansteuerung]] näher beschrieben.<br />
<br />
<br />
<br />
<br />
Wer eine etwas einfachere Schaltung zum Ansteuern eines kleineren Uni-/bipolaren Schrittmotors im Halb-/Vollschrittmodus möchte, kann auch einen SAA1042 benutzen. Dieser 16-polige IC beinhaltet ein Schieberegister mit CW/CCW-, CLK- und half/full-Eingängen, 2 H-Brücken und Freilaufdioden. Man benötogt auch keine externe OSC-Beschaltung zum Takten des ICs, und es gibt keine Strombrgrenzung durch etwaige Vref-Beschaltungen oder Ähnliches. Durch die einzelnen Windungen des Schrittmotors dürfen (lt. Datenblatt) maximal 500mA fliessen.<br />
<br />
Der SAA1042 arbeitet mit bis zu 20V Versorgungsspannung, sie ist gleichzeitig die Arbeitsspannung für den Schrittmotor.<br />
<br />
Schaltpläne und Anschlussbelegung findet man im Datenblatt unter [[#Weblinks]]<br />
<br />
==Wie identifiziert man die Leitungen wenn man kein Datenblatt zum Motor hat?==<br />
<br />
Ein Schrittmotor ist aus zwei Spulen aufgebaut:<br />
<br />
<br />
[[Bild:stepperspulen.gif|center]]<br />
<br />
<br />
Mit einem Ohmmeter kann man die Anschlüsse einfach identifizieren: Von Spule 1 - a nach Spule 1 - Common ist der Widerstand halb so groß wie der Widerstand von Spule 1 - a nach Spule 1 - b. Der Widerstand nach den Anschlüssen von Spule 2 sollte unendlich sein. <br />
<br />
Dass die Anschlüsse a und b voneinander nicht zu unterscheiden sind, ist unwichtig. Falls Sie sie vertauschen, dreht sich der Motor andersherum. Wichtig ist allenfalls, dass sie bei mehreren Motoren gleichen Typs die Anschlüsse gleich legen, um voraussagen zu können, in welche Richtung der Motor sich drehen wird.<br />
<br />
Um den Motor bipolar anzusteuern, werden übrigens die Common-Anschlüsse nicht benötigt.<br />
<br />
==Phasenbeschreibung der Ansteuerung==<br />
<br />
=== Schema zur Beschreibung der Spulen ===<br />
Zur Beschreibung verwenden wir wieder das folgende Schema der Spulen:<br />
<br />
[[Bild:stepperspulen.gif|center]]<br />
<br />
===Unipolare Ansteuerung Vollschritt ===<br />
<center><br />
{|cellspacing=1 cellpadding=5 bgcolor=666666<br />
!colspan='7' bgcolor='#ECF0F6'| <br> Unipolare Ansteuerung Vollschritt <br> &nbsp;<br />
|-<br />
| bgcolor='#ECF0F6' |<br />
| bgcolor='#ECF0F6' | Phase Spule 1a<br />
| bgcolor='#ECF0F6' | Phase Spule 1b<br />
| bgcolor='#ECF0F6' | Common Spule 1<br />
| bgcolor='#ECF0F6' | Phase Spule 2a<br />
| bgcolor='#ECF0F6' | Phase Spule 2b<br />
| bgcolor='#ECF0F6' | Common Spule 2<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 1<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 2<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 3<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 4<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
|-<br />
!colspan='7' bgcolor='#ECF0F6'|<br />
<span style="background-color:#B0B0D9;">- steht für Minus</span><br />
<span style="background-color:#FFBDBD;">+ steht für Plus</span><br />
<span style="background-color:#BDBDBD;">0 steht für Unbelegt</span><br />
|-<br />
|}<br />
</center><br />
=== Bipolare Ansteuerung Vollschritt ===<br />
<center><br />
{|cellspacing=1 cellpadding=5 bgcolor=666666<br />
!colspan='7' bgcolor='#ECF0F6'| <br> Bipolare Ansteuerung Vollschritt <br> &nbsp;<br />
|-<br />
| bgcolor='#ECF0F6' |<br />
| bgcolor='#ECF0F6' | Phase Spule 1a<br />
| bgcolor='#ECF0F6' | Phase Spule 1b<br />
| bgcolor='#ECF0F6' | Common Spule 1<br />
| bgcolor='#ECF0F6' | Phase Spule 2a<br />
| bgcolor='#ECF0F6' | Phase Spule 2b<br />
| bgcolor='#ECF0F6' | Common Spule 2<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 1<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 2<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 3<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 4<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
!colspan='7' bgcolor='#ECF0F6'|<br />
<span style="background-color:#B0B0D9;">- steht für Minus</span><br />
<span style="background-color:#FFBDBD;">+ steht für Plus</span><br />
<span style="background-color:#BDBDBD;">0 steht für Unbelegt</span><br />
|-<br />
|}<br />
</center><br />
=== Bipolare Ansteuerung Halbschritt ===<br />
<center><br />
{|cellspacing=1 cellpadding=5 bgcolor=666666<br />
!colspan='7' bgcolor='#ECF0F6'| <br> Bipolare Ansteuerung Halbschritt <br> &nbsp;<br />
|-<br />
| bgcolor='#ECF0F6' |<br />
| bgcolor='#ECF0F6' | Phase Spule 1a<br />
| bgcolor='#ECF0F6' | Phase Spule 1b<br />
| bgcolor='#ECF0F6' | Common Spule 1<br />
| bgcolor='#ECF0F6' | Phase Spule 2a<br />
| bgcolor='#ECF0F6' | Phase Spule 2b<br />
| bgcolor='#ECF0F6' | Common Spule 2<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 1<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 2<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 3<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 4<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 5<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 6<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 7<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
| bgcolor='#ECF0F6' | Schritt 8<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
| bgcolor='#FFBDBD' align='center' | +<br />
| bgcolor='#B0B0D9' align='center' | -<br />
| bgcolor='#BDBDBD' align='center' | 0<br />
|-<br />
!colspan='7' bgcolor='#ECF0F6'|<br />
<span style="background-color:#B0B0D9;">- steht für Minus</span><br />
<span style="background-color:#FFBDBD;">+ steht für Plus</span><br />
<span style="background-color:#BDBDBD;">0 steht für Unbelegt</span><br />
|-<br />
|}<br />
</center><br />
<br />
===Schrittmotorphasen bildlich dargestellt===<br />
<br />
[[Bild:schrittmotorphasenzeichnung.gif|center]]<br />
<br />
==Motoren mit 5 Anschlüssen?==<br />
Es gibt auch Schrittmotoren mit 5 Drähten. In diesem Fall sind die mittleren Spulenanzapfungen miteinander verbunden und nur als einzige Leitung herausgeführt (also beide Common-Anschlüsse /siehe Skizze). <br />
<br />
<br />
[[Bild:stepper5draehte.gif|center]]<br />
<br />
<br />
In dem Fall kann man den Motor nicht bipolar ansteuern, sondern muss ihn unipolar ansteuern. Mit L297/L298 bzw. RN-Motor usw. wird ein Schrittmotor immer bipolar angesteuert, also kann dafür kein Motor mit 5 Drähten verwendet werden.<br />
Da heutzutage Schrittmotoren bevorzugt bipolar angesteuert werden um maximales Drehmoment (Kraft) zu erreichen, sollte man daher beim Kauf möglichst Motoren mit 4, 6 oder 8 Drähten kaufen. <br />
<br />
{|{{Blaueschmaltabelle}}<br />
|'''Merke:'''<br />
Motoren mit 4 Drähten kann man immer nur bipolar ansteuern. <br />
Motoren mit 6 oder 8 Drähten kann man sowohl bipolar als auch unipolar ansteuern. Gewöhnlich werden Motoren heute bevorzugt bipolar angesteuert, weil diese Ansteuerung ein größeres Drehmoment erzeugt. <br />
Bei der bipolaren Ansteuerung in Verbindung mit Stromregelung (wie bei L297/L298 oder RN-Motor etc.) kann die Nennspannung des Motors weit unter der Betriebsspannung liegen.<br />
Bei einer Ansteuerung ohne Stromregelung muss die Nennspannung des Motors in etwa der Betriebsspannung entsprechen (egal ob unipolar oder bipolar Ansteuerung). In diesem Fall ist jedoch das Drehmoment (Kraft) erheblich (deutlich spürbar) geringer.<br />
|}<br />
<br />
==Die wichtigsten Daten bei einem Schrittmotor==<br />
Zum besseren Verständnis habe ich die Daten in die Klassen ''Unverzichtbar'', ''Hilfreich'' und ''weniger notwendig'' unterteilt. Diese Unterteilung habe ich vorwiegend im Blick auf Hobby-Anwender und Robotik-Bastler vorgenommen. Es versteht sich von selbst das je nach Vorhaben oder bei industrieller Anwendung eines Motors alle Daten wichtig sein könnten. <br />
<br />
===Unverzichtbare Daten===<br />
<br />
;Nennstrom: Maximal zulässiger Strom pro Wicklung (Phase). Bei Motoren mit mehreren Wicklungen (also Motoren mit 6 oder 8 Anschlüssen) bezieht sich die Stromangabe auf nur eine Wicklung (unipolare Ansteuerung). Siehe dazu auch das Rechenbeispiel im nächsten Abschnitt.<br />
[[Bild:stepperdaten.png|framed|So sehen die Daten auf einem Motor aus, Hier wird Nennstrom, Nennspannung und Schrittwinkel angegeben]]<br />
;Haltemoment: Bis zu diesem Moment ([[Drehmoment]], also dieser Kraft) kann ein Schrittmotor belastet werden, bis sich die Achse um einen oder mehrere Schritte durch die Belastung verdreht. Diese Angabe gilt für einen stehenden Schrittmotor der unter voller Betriebsspannung steht. Die Angabe gibt somit quasi an wieviel Kraft der Motor besitzt, eine sehr wichtige Angabe.<br />
<br />
;Schrittwinkel: Der Schrittwinkel gibt an um wieviel Grad sich die Achse bei einem Vollschritt bewegt. Dadurch wird also gleichzeitig angegeben, wie viele Schritte ein Motor für eine volle Drehung benötigt. Man teilt einfach 360 Grad durch den Schrittwinkel und erhält die Schrittanzahl. Bei guten Industriemotoren beträgt der Schrittwinkel oft 1,8 Grad, das ergibt also 200 Vollschritte pro Umdrehung. Nutzt man das Halbschrittverfahren zur Ansteuerung, also 400 Schritte. Je mehr Schritte ein Motor besitzt desto genauer kann er natürlich bestimmte Positionen anfahren, zugleich läuft er ruhiger und leiser. Nachteil von hohen Schrittzahlen ist allerdings, dass oft nicht so hohe Drehzahlen erreicht werden können wie bei großen Schrittwinkeln. <br />
<br />
;Nennspannung: Die Betriebsspannung, die notwendig ist, um den Nennstrom zu erreichen. Die Nennspanung gilt in der Regel für den stehenden Schrittmotor. Bei drehenden Motoren reduziert sich der Strom durch die Induktivität des Motors, daher könnte dann die Nennspannung mit steigender Drehzahl höher werden. Genau das machen auch moderne Schrittmotoransteuerungen. Darüber haben wir aber oben im Artikel schon ausgiebig gelesen. Steuert man einen Schrittmotor mit konstanter Spannung, so sollte man die Nennspannung verwenden damit der Motor nicht überhitzt.<br />
<br />
;Anschlussbelegung: Schrittmotoren haben 4, 5, 6 oder 8 Anschlussdrähte. Daher gehört zu jedem Schrittmotor ein Plan, der Auskunft über interne Verdrahtung der Spulen gibt. Notfalls kann man dieses auch mit Hilfe eines Ohmmeters ermitteln, auch dies wurde oben schon geschildert.<br />
<br />
===Hilfreiche Daten===<br />
<br />
;Start-Stop Frequenz (fs): Die maximale Frequenz (Geschwindigkeit der Schrittfolge), bei der ein nicht belasteter Schrittmotor anläuft ohne Schritte zu verlieren. Leider findet man auch diese Angabe wohl nur bei etwas teureren Markenmotoren. <br />
<br />
;Betriebsmoment: Ähnlich wie das Haltemoment, jedoch wird hier das Moment für den drehenden Schrittmotor angegeben. Da bei Schrittmotoren das Drehmoment mit steigender Drehzahl abnimmt, reicht hier also kein einzelnen Wert. Daher wird diese Angabe in Form einer Kennlinie, oft mit verschiedenen Betriebsspannungen, dargestellt. Eine solche Kennline haben wir schon im Artikel weiter oben kennengelernt. Sie ist sehr hilfreich um den richtigen Motor für ein Vorhaben zu finden. Man sollte insbesondere darauf achten, dass das Drehmoment bei der maximalen geplanten Drehzahl auch wirklich noch für die Aufgabe ausreichend ist. Leider wird das Betriebsmoment (also diese Kennlinie) bei vielen Motoren (insbesondere bei Angeboten, kleineren Motoren usw.) nicht angegeben. Da der Kennlienienverlauf der Schrittmotoren jedoch eine gewisse Grundähnlichkeit aufweist, kann man in der Praxis deshalb oft auch mit der Angabe des Haltemoments auskommen.<br />
<br />
===Weniger oft notwendige Daten===<br />
<br />
;Widerstand: Manchmal wird der ohmsche Widerstand der Spule angegeben, allerdings nicht immer. Wenn die Nennspannung und der Nennstrom angebenen sind, so kann man sich den Widerstand nach dem ohmschen Gesetz selbst berechnen (R=U/I). Sind nur die Nennspannung und der Widerstand angegeben, was auch vorkommt, so muss man sich dagegen den Nennstrom selbst ausrechnen (I=U/R). Die Leistungsaufnahme der Wicklung kann man natürlich ebenfalls durch diese Angaben bestimmen (P=I²*R)<br />
<br />
;Rastmoment: Das Rastmoment kennt man bei Permanentmagnet- und Hybrid-Schrittmotoren. Es ist beim Drehen des Motors (ohne Spannung) spürbar. Wenn man die Wicklungen kurzschließt, wird dieses erheblich stärker. Dieser Sachverhalt kann auch für eine Bremse ausgenutzt werden.<br />
<br />
;Rotorträgheit: Das Massenträgheitsmoment des Rotors. Je größer und schwerer ein Motor bzw. eine Achse wird, desto größer wird die Masse des Rotors, der zusammen mit der Nutzlast beschleunigt werden muss. Je niedriger dieser Wert ist, desto schneller und dynamischer verhält sich der Motor bei Beschleunigungen. Da die Masse des Rotors und der Last ein schwingungsfähiges System bilden, sollte das auf die Motorwelle reduzierte Trägheitsmoment der Last in der selben Größenordnung liegen wie die Rotorträgheit.<br />
<br />
==Praxisbeispiel für Stromberechnung==<br />
Soll ein Schrittmotor mit 8 Anschlüssen (4 Wicklungen) bipolaren angesteuertet werden, so hat man die Wahl jeweils zwei Spulen parallel oder in Reihe zu schalten. Die Stromangaben auf dem Motor beziehen sich in der Regel auf eine Phase, also eine Wicklung. Angenommen wir haben einen Motor mit folgender Beschriftung:<br />
<br />
[[Bild:stepperdaten.png|framed|Auf einem Foto könnte das so aussehen]]<br />
<br />
* Nennspannung: 5,1 V <br />
* Phasenstrom: 1,0 A <br />
* Anschluß: 8 Drähte = wahlweise unipolar oder bipolar <br />
* Schrittwinkel 1,8 Grad / 200 Schritte pro Umdrehung <br />
* Haltekraft: ca. 50 Ncm <br />
* Wellendurchmesser: 6 mm <br />
<br />
<br />
Möchte man die Spulen in Reihe schalten, so muss der Strom in etwas um den Faktor 1,41 (Wurzel aus 2) verringert werden damit der Motor nicht zu heiß wird. <br />
In unserem Beispiel müsste also 1A / 1,41 = '''0,792A''' fließen. Bei einer Chopper-Regelung (Stromregelung) müsste man somit 0,79A einstellen. Da sich der ohmische Widerstand durch die Reihenschaltung verdoppelt, benötigt man auch eine höhere Spannung. Anhand des ohmischen Widerstandes, der sich messen oder berechnen läßt, kann man in etwa die notwendige Mindestspannung berechnen. Wenn bei 5,1V ein Strom von 1 A fließt, so müsste der ohmische Widerstand R=U/i = 5,1V / 1 = '''5,1 Ohm''' betragen. Der Gesamtwiderstand der Reihenschaltung wäre demnach 10,2 Ohm. Wenn wir den Strom von 0,79A erreichen wollen, so müsste U=I*R = 0,79*10,2 = '''8,06V''' vorhanden sein. Das wäre aber nur die Mindestspannung, also die Spannung die man ohne Stromregelung auch konstant anlegen könnte. Nutzt man jedoch eine Stromregelung so müssen natürlich Regelreserven vorhanden sein. Zudem müssten die Schaltungsverluste der Chopperregelung berücksichtigt werden. Daher verwendet man eine deutlich höhere Spannung. 12V bis 24 V wären in dem Beispiel durchaus angebracht. Je höher desto besser, denn so kann bei hohen Drehzahlen der Strom schneller dem induktiven Widerstand entgegenwirken und das Drehmoment fällt nicht mehr so stark bei steigenden Drehzahlen ab. Das Drehmoment erhöht sich im übrigen bei der Reihenschaltung ebenfalls in etwa um den Faktor 1,41 (Wurzel aus 2).<br />
<br />
Bei der Parallelschaltung von zwei Spulen ist es genau umgekehrt. Hier muss der Strom in etwas um den Faktor 1,41 erhöht werden. Also 1A * 1,41 = 1,41 A sollten hier fließen. Da sich der ohmische Widerstand durch die Parallelschaltung halbiert, also in unserem Fall auf 2,55 Ohm, ist natürlich auch eine niedrigere Spannung notwendig. Die Berechnung wäre also U=I*R = 1,41A * 2,55 = 3,6V<br />
Auch da sist wieder die Mindestspannung die auch als Konstantspannung angelegt werden darf. Auch hier muss bei der Chopper-Regelung (Stromregelung) eine höhere Spannung angelegt werden. Mit Werten zwischen ca. 8 und 16V würde man jetzt aber schon sehr gute Ergebnisse erzielen. Auch in diesem Beispiel würde sich das Drehmoment in etwa um den Faktor 1,41 erhöhen.<br />
<br />
Problematisch kann bei der Parallelschaltung mancher Motoren der niedrige ohmsche Widerstand werden. Nicht jede Motorregelung/Motortreiber macht das mit. Aus diesem Grund werden sicherlich Reihenschaltungen in der Praxis bevorzugt eingesetzt.<br />
<br />
==Autor==<br />
* Frank<br />
<br />
<br />
==Siehe auch==<br />
* [[Chopper Betrieb]]<br />
* [[Getriebemotoren Ansteuerung]]<br />
* [[Getriebemotoren]]<br />
<br />
==Weblinks==<br />
Hier noch ein paar Links, wenn ihr euch noch eingehender mit dem Thema befassen wollt:<br />
<br />
* [http://www.robotikhardware.de/download/rnstepp297.pdf Doku zum Bausatz / Platine für L297/L298 Schaltung]<br />
* [http://www.roboternetz.de/robotertutorial.html Robotertutorial (Projekt mit Schrittmotor)]<br />
* [http://www.roboternetz.de/wissen/images/a/a2/Schrittmotorphasentabelle.gif Phasentabelle als Grafik]<br />
* [http://www.shop.robotikhardware.de/shop/catalog/index.php?cPath=65&osC L297/L298 Bauteilesortiment + Schrittmotoren]<br />
* [http://www.robotikhardware.de/download/rnschrittmotor.pdf Bequeme Schrittmotoransteuerung über RS232 , I2C und Takt mit RN-Schrittmotor]<br />
* [http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=21730 800mA I2C Schrittmotorsteuerung mit Trinamic TMC222]<br />
* [http://www.nanotec.de/ Nanotec]<br />
* [http://www-users.rwth-aachen.de/thorsten.ostermann/schritt/sm_faq.htm Schrittmotor_Faq]<br />
* [http://www.wolfgang-back.com/schrittmotor_demo.php Wolfgang Backs Seite]<br />
* [http://www.roboternetz.de/phpBB2/motordrehmoment.php Automatische Berechnung der Robotergeschwindigkeit und Drehmoment bei unterschiedlichen Motoren]<br />
* [http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=284 Schaltung mit L297/L298 Protobed_StepM_297-298]<br />
* [http://www.roboternetz.de/phpBB2/viewtopic.php?t=13162 Roboternetz-Forum Thread Messung von Daten an einem Schrittmotor] <br />
* [http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=733 Roboternetz-Forum Thread L297/L298]<br />
* [http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=2741 Roboternetz-Forum Thread zum RNST01/RN-Motor]<br />
<br />
'''Englische Links'''<br />
* [http://ww1.microchip.com/downloads/en/AppNotes/00907a.pdf Stepping Motors Fundamentals (enthält INFOs über Microstepping)]<br />
* [http://www.cs.uiowa.edu/~jones/step/ Control of stepping motors (gutes Tutorial)]<br />
* [http://library.solarbotics.net/pdflib/pdf/drive.pdf Drive motor circuit basics] <br />
* [http://www.njr.co.jp/pdf/ee/ee05004.pdf Half stepping techniques] <br />
* [http://www.njr.co.jp/pdf/ee/ee05005.pdf Microstepping ]<br />
* [http://www.compumotor.com/catalog/cataloga/A29-A30.pdf Microstepping drive technology]<br />
<br />
'''Datenblätter'''<br />
* [http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 L298 und L297 Datenblatt im RN-Downloadbereich (mittlerweile auf S.2)]<br />
* [http://www.ortodoxism.ro/datasheets2/2/052daje928cw7pc0uqs1ipyryppy.pdf Datenblatt des L298 (englisch)]<br />
* [http://www.ortodoxism.ro/datasheets2/c/0g0gh362kxwx30o7xi4x2i4jzffy.pdf Datenblatt des L297 (englisch)]<br />
* [http://www.ortodoxism.ro/datasheets/motorola/SAA1042V.pdf Datenblatt des SAA1042 (englisch)]<br />
<br />
<br />
<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Praxis]]<br />
[[Category:Grundlagen]]<br />
[[Category:Motoren]]<br />
[[Category:Elektronik]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=10384Sensorarten2007-03-08T16:16:38Z<p>Manf: /* Weblinks */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]].<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damit es praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge sind.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Alternativ kann auch ein digitaler Lichtsensor verwendet werden, den man direkt an den I2C- oder SM-Bus anschliessen kann. Man erspart sich Auswertung, Temperaturkompensation und Signalaufbereitung, allerdings ist der Anschluss meistens schwieriger, weil der Sensor in SMD-Bauform gebaut ist und 3,3 anstatt 5 Volt braucht.<br />
[[Bild:Lichtsensor.jpg|center|framed|Ein digitaler Lichtsensor für den I2C-Bus (TSL2561 der Frima Taos)]]<br />
<br />
Die Suche nach dem hellsten Fleck im Raum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hinderniserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinderniserkennung per Infrarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hindernis erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hindernises. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neuer SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungsschwankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dafür muß am Pin6 für jede Himmelsrichtung einmal kurz GND angelegt werden. Diese 4 Meßpunkte nimmt das Modul auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdings, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
<br />
==Temperatur== <br />
===NTCs===<br />
NTCs (Negative Temperature Coefficient)oder Heißleiter sind stromleitende Materialien, die bei hohen Temperaturen Strom besser leiten als bei tiefen, das heißt, mit steigender Temperatur sinkt ihr elektrischer Widerstand. Siehe auch unter [[NTC]]. Ein großer Vorteil ist die leichte Anwendung und der geringe Preis. Nachteil ist das der Widerstandswert sich nicht linear mit der Temperatur verändert.<br />
<br />
[[Bild:ntc.gif]]<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm.<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Genauigkeit von 0.5<sup>o</sup> Grad Celsius messen. Das angegebene Bereich ist -25<sup>o</sup> bis 100<sup>o</sup> C. Es wird zweierlei geboten:<br />
* Ein Schaltausgang - Wenn man also z.B. einen Ventilator einschalten möchte<br />
* I2C - Der obere Teil der Adresse ist fix 0x9n, die Bits 1-3 kann man mit Jumper einstellbar machen oder fest verdrahten. <br />
<br />
Durch einen einfachen I2C-Lesebefehl kann man die Temperatur einlesen (16-Bit), das Format ist allerdings etwas tricky. Das erste Byte (8-Bit) ist die Temperatur in ganzen Grad, als normales signed char, vom zweiten Byte gibt das MSB an, ob noch 0.5<sup>o</sup> '''dazuzuzählen''' sind (also auch, wenn vorne eine negative Zahl steht) <br />
<br />
Der Grund ist der: die vorzeichenbehaftete 9-Bit Zahl, die da linksbündig in zwei Datenbytes übertragen wird, gibt eigentlich an, wieviel 0.5 Grad - Einheiten gemessen wurden. Rein rechnerisch wäre also Temperatur = Wert * 0.5, das müßte man aber als float durchführen oder erweitern<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
das ergibt die Temperatur in Zehntel-Grad (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
...<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignal ist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KTY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Transistor&diff=10359Transistor2007-03-07T10:34:05Z<p>Manf: /* Siehe auch */</p>
<hr />
<div>Ein Transistor ist ein elektronisches Halbleiterbauelement. Man verwendet Transistoren zum Schalten und Verstärken. Die Bezeichnung ''Transistor'' ist ein Kunszwort, das sich vom englischen ''Transfer Varistor'' ableitet, und den Transistor als einen durch Strom steuerbaren Widerstand umschreibt. <br />
<br />
Transistoren werden in zwei Gruppen unterteilt:<br />
* Bipolare Transitoren<br />
* [[Feldeffekttransistor]]en (FETs)<br />
<br />
Bipolare Transistoren werden durch Stromfluss angesteuert. Die Anschlüsse des Bipolaren Transistors sind ''Kollektor'', ''Basis'' und ''Emitter''. Ein kleiner Strom auf der Basis-Emitter-Strecke kann dabei einen großen Strom auf der Kollektor-Emitter-Strecke steuern. Es wird unter anderem auch zwischen NPN und PNP Transitoren unterschieden.<br />
<br />
Bei FETs werden die Anschlüsse als Gate (engl. Tor, Gatter), Drain (engl. Abfluss), Source (engl. Quelle) bezeichnet. Der Strom auf der Drain-Source-Strecke wird hier durch die Spannung zwischen Gate und Source gesteuert. Die Steuerung erfolgt stromlos.<br />
<br />
{{Ausbauwunsch|<br />
* Basisschaltung<br />
}}<br />
<br />
== Funktionsprinzip ==<br />
<br />
[[Bild:Ib-Kennlinie, BC547.gif|thumb|Spannungs-Strom-Kennlinine der Basis-Emitter-Strecke]]<br />
Gehen wir zunächst von einem NPN-Transistor aus, dessen Emitter auf Masse liegt. Durch ihn können zwei Ströme fließen: Der Basis-Emitter-Strom (Kurz: I<sub>b</sub>) und der Collector-Emitter-Strom (Kurz: I<sub>c</sub>). Der Basisstrom I<sub>b</sub> ist der Steuerstrom. Die Spannungs-Strom-Kennlinie der Basis-Emitter-Strecke ähnelt einer Diodenkennlinie: Bis ca. 0,6V fließt kaum Strom, danach steigt die Stromstärke schnell an (siehe Grafik). Diese Kennlinie ist auch noch temperaturabhängig, bei höheren Temperaturen kann ein höherer Strom fließen. Wenn man nun eine Spannung von z.B. 0,7V an die Basis anlegen würde, würde zuerst nur ein kleiner Strom fließen. Mit der Zeit würde sich der Transistor erwärmen, wodurch ein höherer Strom fließen kann. Dadurch wird jedoch auch wieder die Wärmeabgabe größer, ein Teufelskreis entsteht und irgendwann brennt der Transistor durch. Um das zu verhindern, benutzt man, je nachdem wie groß die Last ist, die am Transistor angeschlossen ist, Basis-Vorwiderstände in der Größenordnung von 220 Ohm bis 100 kOhm. Diese werden zwischen die Ansteuerung und die Basis des Transistors geschaltet und begrenzen den Strom, der durch die Basis fließen kann.<br />
[[Bild:Ic-Kennlinie, BC547.gif|thumb|Spannungs-Strom-Kennlinine der Collector-Emitter-Strecke]]<br />
Die Collector-Emitter-Strecke des Transistors hat eine Kennlinie, die zuerst in etwa linear ansteigt und dann bei einer bestimmten Stromstärke in eine fast waagrechte Gerade übergeht (siehe Grafik).<br />
Bei welcher Stromstärke die Gerade abknickt, hängt von dem Strom ab, der durch die Basis-Emitter-Strecke fließt. Je höher dieser ist, desto später knickt die Gerade ab, und desto größere Lasten kann man schalten. In einem begrenzten Bereich ändert sich der Basisstrom linear zum Collectorstrom. Die Basis-Emitter-Stromstärken betragen in der Grafik von unten nach oben 0mA, 5mA, 10mA, 15mA und 20mA.<br />
Das Verhältnis aus dem Strom, der auf der Collector-Emitter-Strecke fließen kann, und dem Strom, der dazu als Steuerstrom benötigt wird, nennt man Verstärkungsfaktor. Der Verstärkungsfaktor, der bei einem Transistor angegeben ist, ist jedoch eine rein theoretische Größe. Die Werte, die im Datenblatt angegeben sind, beziehen sich auf eine Collector-Emitter-Spannung von 5V, bei höheren Lastströmen sinkt der Verstärkungsfaktor weiter. In der praktischen Anwendung wäre ein so hoher Spannungsabfall katastrophal, da, wenn man mit niedrigen Spannungen arbeitet, keine bzw. kaum noch Spannung für den Verbraucher übrig bleibt.<br><br />
Wie groß man I<sub>b</sub> wählen muss, probiert man am besten in einer Schaltungssimulation aus, die Berechnung dauert in den meisten Fällen länger.<br><br><br />
Bei einem PNP-Transistor sind im Grunde alle Spannungen umgedreht. Der Emitter liegt nicht auf Masse, sondern auf Vcc (meist 5V). Die Basis muss auf einer niedrigeren Spannung liegen, beispielsweise 4,3V, damit der Transistor durchschaltet. Der Strom fließt aber weiterhin von + nach - (technische Stromrichtung angenommen)<br />
<br />
== Schaltsymbol und Anschlussbelegung ==<br />
[[Bild:Transistor.JPG|thumb|300px|{{FarbigerRahmen|<br />
'''Warnung:'''<br />
Es gibt ebenso Transistoren im TO-92 Gehäuse, deren Basis an der Seite liegt. <br />
Bevor du einen Transistor verwendest, solltest du auf jeden Falls sein Datenblatt gelesen haben<br />
bzw. dir sicher sein, wo sich welcher Anschluss befindet!<br />
}}]]<br />
<br />
[[Bild:Schaltsymbol NPN.png|thumb|250px|left|Schaltsymbol npn-Transistor. Der Pfeil zeigt von der Basis (p) zum Emitter (n)]] <br />
<br style="clear:left"/><br />
[[Bild:Schaltsymbol PNP.png|thumb|250px|left|Schaltsymbol pnp-Transistor. Der Pfeil zeigt vom Emitter (p) zur Basis (n)]] <br />
<br />
<br />
<br style="clear:both"/><br />
<br />
== Grundschaltungen ==<br />
=== Emitterschaltung ===<br />
==== Grundschaltung ====<br />
[[Bild:Emitterschaltung.gif|thumb|Grundschaltung der Emitterschaltung]]<br />
Die Emitterschaltung besteht hauptsächlich aus dem Transistor, dem Kollektorwiderstand und dem Basis-Vorwiderstand. Wenn man keine Spannung oder 0V am Eingang anlegt, ist der Transistor nicht leitend. Der Ausgang der Schaltung wird durch den Widerstand auf die positive Versorgungsspannung (Vcc) "gezogen". Wenn man nun eine Spannung am Eingang anlegt, die größer als ca. 0,6V ist, fließt ein Strom durch die Basis des Transistors. Der Transistor wird leitend und zieht den Ausgang der Schaltung auf 0V (GND).<br><br />
Durch die Offsetspannung von 0,6V ist diese Schaltung nicht zum linearen Verstärken von Signalen geeignet. Die Schaltung kann nur als Schalter genutzt werden, sei es um die Flanken auf einem Signal zu verbessern (steiler zu machen) oder um Lasten zu schalten.<br><br />
In ersterem Fall muss man beachten, dass die Emitterschaltung das Signal invertiert, d.h. bei 0V am Eingang liegen 5V am Ausgang an und umgekehrt.<br />
In letzterem Fall wird die Last (beispielsweise eine Glühbirne) statt Rc angeschlossen. Sobald man nun eine Spannung an die Basis anlegt, wird der Transistor leitend und es kann ein Strom durch die Last fließen, die Lampe leuchtet.<br />
Bei großen Lasten benötigt der Transistor einen entsprechend hohen Basisstrom, der durch den Basis-Vorwiderstand eingestellt wird.<br />
==== Erweiterte Emitterschaltung ====<br />
[[Bild:Emitterschaltung, erweitert.gif|thumb|Emitterschaltung zum linearen Verstärken von Wechselspannungen]]<br />
Wenn man die Emitterschaltung zum linearen Verstärken eines Signals nutzen will, muss man sie noch ein wenig erweitern. An die Basis wird zusätzlich ein Pullup-Widerstand angeschlossen. Dieser sorgt dafür, dass der Transistor "vorgespannt" wird. Der Widerstand wird dabei gerade so groß gewählt, dass der Ausgang möglichst genau zwischen GND und der Versorgungsspannung liegt.<br><br />
Hinter den Ausgang und vor den Eingang müssen zusätzlich so genannte Koppelkondensatoren geschaltet werden. Diese sorgen am Eingang dafür, dass die angelegte Eingangsspannung die Vorspannung nicht zerstört und am Ausgang dafür, dass kein Gleichstrom durch die Last fließen kann. Dies ist vor allem bei Lautsprechern wichtig.<br><br />
Die Emitterschaltung kann in dieser Form sowohl negative als auch positive Wechselspannungen verstärken. Für Gleichspannungen ist sie nicht mehr geeignet, da die Koppelkondensatoren diesen sperren.<br><br />
Wenn man eine Wechselspannung anlegt, fließt zusätzlich zu dem Vorspannstrom ein Eingangsstrom, der den Transistor entweder leitender (positive Halbwelle) oder weniger leitend (negative Halbwelle) macht.<br><br />
In ersterem Fall wird der Kollektor des Transistors durch selbigen auf eine negativere Spannung gezogen. Durch den Koppelkondensator am Ausgang fließt dann ein Strom in Richtung des Kollektors, bis der Kondensator durch diesen weit genug aufgeladen ist.<br><br />
im anderen Fall wird der Transistor weniger leitend, der Kollektor des Transistors wird dann durch den Widerstand Rc auf eine positivere Spannung gezogen. Folglich fließt durch den Koppelkondensator am Ausgang ein Strom in Richtung der Last, allerdings auch hier nur solange der Kondensator nicht vollständig geladen ist.<br />
<br />
=== Kollektorschaltung ===<br />
==== Grundschaltung ====<br />
[[Bild:Kollektorschaltung.gif|thumb|Kollektorschaltung mit NPN-Transistor]]<br />
Für eine Kollektorschaltung werden zunächst nur ein Transistor und ein Widerstand benötigt.<br><br />
Ohne Eingangsspannung leitet der Transistor nicht, der Ausgang liegt also auf 0V.<br><br />
Sobald man am Eingang eine Spannung anlegt, wird der Transistor jedoch leitend, die Ausgangsspannung wird größer. Gleichzeitig wird dadurch die Basis-Emitterspannung kleiner. Der Ausgang erreicht also maximal etwa die Eingangsspannung abzüglich der 0,7 Volt, die benötigt werden, damit auf der Basis-Emitterstrecke ein Strom fließen kann. Die Spannungsverstärkung ist folglich kleiner als 1. Im Gegenzug besitzt die Kollektorschaltung eine sehr hohe Stromverstärkung und dadurch auch einen sehr hohen Eingangswiderstand<br><br />
Bei dieser Schaltung kann auf den Basis-Vorwiderstand verzichtet werden, solange man am Eingang keine Spannung anlegt, die größer ist als die Versorgungsspannung. Der Strom durch die Basis reguliert sich durch die variable Emitterspannung selbst. Allerdings kann ein Basis-Vorwiderstand auch als Kurzschlussschutz dienen, da bei einem begrenzten Basisstrom auch der Kollektor-Emitterstrom begrenzt ist.<br />
<br />
=== Basisschaltung ===<br />
<br />
=== Prinzipien ===<br />
==== Verstärkungsregelung ====<br />
bspw. stromgegenkopplung<br />
<br />
=== Logische Interpretation der Schaltungen ===<br />
====Die NOT Verknüpfung====<br />
<br />
[[Bild:NOT Gatter.JPG]]<br />
<br />
Diese einfache Schaltung, bestehend aus einem NPN Transistor und zwei Widerständen, invertiert das Eingangssignal, sodass aus beispielsweise +5V (oder logisch 1) 0V (oder logisch 0) erzeugt werden.<br />
Die daraus resultierende Wertetabelle sieht folgendermaßen aus:<br />
<br />
<div align = "center"><br />
{| {{Blauetabelle}}<br />
| '''Eingang'''<br />
| '''Ausgang'''<br />
|-<br />
| 0V<br />
| +5V<br />
|-<br />
| +5V<br />
| 0V<br />
|}<br />
</div><br />
Wenn also an der Transistorbasis +5V angelegt werden (+0,7V reichen meistens auch schon), dann schaltet der Transistor durch und am Ausgang liegen 0V an. Der Strom, der nun durch den Transistor fließt wird durch den Widerstand R<sub>2</sub> begrenzt. Wird dieser Widerstand weggelassen, dann wird durch den entstehenden Kurzschluss der Transistor unweigerlich zerstört.<br />
Legt man nun am Eingang 0V an, so sperrt der Transistor und am Ausgang liegen +5V an. <br />
<br />
<br />
Der Basisstrom wird durch den Widerstand R<sub>1</sub> bestimmt. Ein kleiner Widerstand beschleunigt die Schaltgeschwindigkeit des Transistors, ein großer ermöglicht die Ansteuerung auch mit kleinen Strömen.<br />
<br />
====Die NAND Verknüpfung====<br />
<br />
[[Bild:NAND_Gatter.jpg]]<br />
<br />
Die NAND ('''N'''ot'''AND''', d.h. die invertierte Form einer AND Verknüpfung) Verknüpfung besteht aus zwei Transistoren und damit auch zwei Eingängen. Es gibt auch NAND Verknüpfungen, mit mehr Transistoren und folglich auch mehr Eingängen, diese sind im Aufbau aber sehr ähnlich zu der vorgestellten Grund-NAND Verknüpfung.<br />
Schauen wir uns zunächst die Wertetabelle an:<br />
<div align = "center"><br />
{| {{Blauetabelle}}<br />
| '''Eingang 1 (E1)'''<br />
| '''Eingang 2 (E2)'''<br />
| '''Ausgang (A1)'''<br />
|-<br />
| 0V<br />
| 0V<br />
| +5V<br />
|-<br />
| +5V<br />
| 0V<br />
| +5V<br />
|-<br />
| 0V<br />
| +5V<br />
| +5V<br />
|-<br />
| +5V<br />
| +5V<br />
| 0V<br />
|}<br />
</div><br />
<br />
Wie kommt es nun zu dieser Werte- oder auch Wahrheitstabelle?<br />
<br />
Wenn an den beiden Eingängen 0V anliegen, dann schaltet keiner der beiden Transistoren durch und der Ausgang ist über den Widerstand R<sub>3</sub> mit +5V verbunden.<br />
Wechselt nun einer der beiden Eingänge auf 1, dann schaltet auch nur einer der beiden Transistoren durch und am Ausgang liegen immer noch +5V an. Werden nun aber beide Eingänge mit +5V verbunden, dann schalten beide Transistoren durch und der Ausgang ist leitend mit Masse verbunden.<br />
<br />
Die Widerstände (R<sub>1</sub>, R<sub>2</sub>, R<sub>3</sub>) haben die gleiche Funktion wie auch in der NOT Verknüpfung.<br />
<br />
== Transistor-Kennwerte ==<br />
Die Transistorkennwerte sind grundsätztlich in Grenzdaten und Kenndaten unterteilt. Grenzwerte dürfen auf keinen Fall überschritten werden, da eine Zerstörung des Transistors unvermeidlich ist. Eigenschaften eines Transistors werden als Kenndaten angegeben, die das Verhalten in bestimmten Arbeitspunkten kennzeichnen.<br />
<br />
==Grenzwerte für Sperrschichttemperatur==<br />
Durch die Verlustleistung bei Dauerbetrieb entsteht in der Sperrschicht Wärme, durch die sich die Sperrschichttemperatur erhöht, diese Sperrschichttemperatur '''T<sub>J</sub> ''' , darf bestimmte Werte nicht überschreiten, da die Halbleitereigenschaften des Transistors stark verändert würden, was die Zerstörung zur Folge hat. Diese Temperatur hängt vom Halbleitermaterial ab.<br />
<br />
'''T<sub>J</sub> ''' : 90°C Germaniumtransistoren<br />
<br />
'''T<sub>J</sub> ''' : 150 - 200°C Siliziumtransistoren<br />
<br />
==Grenzwerte für Umgebungstemperatur==<br />
Einige Hersteller geben statt der maximalen Sperrschichttemperatur die höchstzulässige Umgebungstemperatur '''T<sub>U</sub> ''' als Grenzwert an. '''T<sub>U</sub> ''' ist stets kleiner als '''T<sub>J</sub> '''. Zu diesen beiden Angaben ist in den Datenblättern meistens ein Diagramm zu finden in dem die Temperaturabhängigkeit der höchstzulässigen Gesamtverlustleistung aufgezeigt wird. Aus diesem Diagramm kann die Verlustleistung bei bestimmten Umgebungstemperaturen entnommen werden. Als Parameter ist der Wärmewiderstand '''R<sub>Th</sub> ''' des Halbleiters aufgetragen. Denn wird durch einen Kühlkörper oder durch die Montage des Transistors an einem Gehäuse die Wärme besser abgeführt, so ist die Gesamtverlustleistung auch bei höheren Umgebungstemperaturen zulässig.<br />
<br />
==Zulässiger Arbeitsbereich==<br />
In Transistorschaltungen dürfen bestimmte Grenzwerte nicht überschritten werden. Der zulässige Arbeitsbereich einer Transistorschaltung wird somit durch den Kollektorstrom '''I<sub>c</sub> ''', durch die Kollektor - Emitterspannung '''U<sub>CE</sub> ''' und durch die Verlustleistung '''P<sub>tot</sub> ''' begrenzt. Wird der Transistor außerhalb des erlaubten Arbeitsbereiches betrieben wird der Transistor zerstört.<br />
<br />
''Autor: ZwieBack - Wiki Konvertierung Frank''<br />
<br />
==Siehe auch==<br />
* [[Feldeffekttransistor|FET]]<br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]<br />
externer Link zu Grundlagen Transistorschaltungen <br />
http://www.nano.physik.uni-muenchen.de/elektronik/nav/k5t2.html</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10267Operationsverstärker2007-02-24T18:47:10Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vmin||Vmax||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo / hi||lo / hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||65p||5p||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,6p||0,1p||27||4||2||30||-0,3 /-0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,5p||0,5p||560||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||1p||0,5p||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||1p||1p||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||4µ||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,5µ||0,05||.||0,01||0,02||160dB||4||2,5||.||.||0,1 / -0,1||3,60||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10266Operationsverstärker2007-02-24T18:43:05Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vmin||Vmax||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||65p||5p||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,6p||0,1p||27||4||2||30||-0,3/-0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,5p||0,5p||560||0,17||0,35||17||-0,2/0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||1p||0,5p||10||1,6||1,4||.||-0,3/0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||1p||1p||40||0,4||0,8||65||-0,2/0,2||0,1/-0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||4µ||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,5µ||0,05||.||0,01||0,02||160dB||4||2,5||.||.||0,1/-0,1||3,60||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10265Operationsverstärker2007-02-24T18:32:10Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3/-0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,0005||0,0005||560||0,17||0,35||17||-0,2/0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3/0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2/0,2||0,1/-0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||0,004||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,5µ||0,05||.||0,01||0,02||160dB||4||2,5||.||.||0,1/-0,1||3,60||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10264Operationsverstärker2007-02-24T18:28:04Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,0005||0,0005||560||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||0,004||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|-<br />
|LTC1050||4,75||16||0,0005||0,05||.||0,01||0,02||100000||4||2,5||.||.||0,05 / -0,05||3,60||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10263Operationsverstärker2007-02-24T18:22:44Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,0005||0,0005||560||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|-<br />
|OP177||5||44||0,004||0,03||.||1,5||0,3||12000||0,3||0,6||12||1 / -1||1 / -1||1,65||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10262Operationsverstärker2007-02-24T09:38:54Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,0005||0,0005||560||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10261Operationsverstärker2007-02-24T09:35:42Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||0,1 / -1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|OPA347||2,3||5,5||2||3||60||0,0005||0,0005||115dB||0,17||0,35||17||-0,2 / 0,2||0,1 / -0,1||0,90||x||x<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||x<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10260Operationsverstärker2007-02-24T09:17:06Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||0,05/-1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10259Operationsverstärker2007-02-24T09:01:27Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||0,25<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||-0,05/-1,2||0,25||0,25||0,32<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||1,10||1,10||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||1,75<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10258Operationsverstärker2007-02-24T07:59:51Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||.<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||-0,05/-1,2||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||.||1,10||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||1,20||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10257Operationsverstärker2007-02-24T07:55:37Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||.<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||-0,05/-1,2||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||10||1,2||0,5||400||0,3||0,6||.||1 / -1||2 / -2||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||.||.||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10256Operationsverstärker2007-02-24T07:54:02Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||lo hi||lo hi||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||2 / -2||1 / -1||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||2 / -2||1 / -1||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||3||.||3 / 0||1,5 / -1,5||0,18||0,19||.<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||-0,3 / -0,8||-0,05/-1,2||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||.||.||.||400||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||1,4||.||-0,3 / 0,3||0,1 / -0,1||.||.||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||-0,2 / 0,2||0,1 / -0,1||.||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10255Operationsverstärker2007-02-24T07:45:07Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||.||.||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||20||15||0,5||.||20||(2)(-2)||(1)(-1)||.||0,13||.<br />
|-<br />
|µA741||.||36||2||15||.||80||20||200||0,5||1,5||25||(2)(-2)||(1)(-1)||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||.||.||.||.||0,18||0,19||.<br />
|-<br />
|TLC 272||3||16||1,1||1,8||25||0,0006||0,0001||27||4||2||30||(-0,3)(-0,8)||(-0,05)(-1,2)||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||.||.||.||400||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||.||.||(-0,3)(0,3)||(0,1)(-0,1)||.||.||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||(-0,2)(0,2)||(0,1)(-0,1)||.||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10254Operationsverstärker2007-02-23T15:21:00Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||V||V||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||.||.||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||.||15||0,5||.||.||.||.||.||0,13||.<br />
|-<br />
|µA741||.||.||.||.||.||.||.||.||.||.||.||.||.||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||.||.||.||.||0,18||0,19||x<br />
|-<br />
|TLC 272||3||16||1,1||1,8||.||.||.||23||.||.||.||.||.||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||.||.||.||400||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||.||.||(-0,3)(0,3)||(0,1)(-0,1)||.||.||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||(-0,2)(0,2)||(0,1)(-0,1)<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10253Operationsverstärker2007-02-23T15:19:24Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Rail in||Rail out||single||double||quad<br />
|-<br />
|.||.||.||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||.||.||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||.||15||0,5||.||.||.||.||.||0,13||.<br />
|-<br />
|µA741||.||.||.||.||.||.||.||.||.||.||.||.||.||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||.||.||.||.||0,18||0,19||x<br />
|-<br />
|TLC 272||3||16||1,1||1,8||.||.||.||23||.||.||.||.||.||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||.||.||.||400||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||.||.||(-0,3)(+0,3)||(0,1)(-0,1)||.||.||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||(-0,2)(0,2)||(0,1)(-0,1)<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10252Operationsverstärker2007-02-23T15:16:39Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Ra in||Ra out||single||double||quad<br />
|-<br />
|.||.||.||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||.||.||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||.||15||0,5||.||.||.||.||.||0,13||.<br />
|-<br />
|µA741||.||.||.||.||.||.||.||.||.||.||.||.||.||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||.||.||.||.||0,18||0,19||x<br />
|-<br />
|TLC 272||3||16||1,1||1,8||.||.||.||23||.||.||.||.||.||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||.||.||.||400||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||.||.||(-0,3)(+0,3)||(0,1)(-0,1)||.||.||.<br />
|-<br />
|TS912||2,7||16||5||5||30||0,001||0,001||40||0,4||0,8||65||||(0,1)(-0,1)<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10251Operationsverstärker2007-02-23T13:05:45Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Vn||i in||di in||Gain||SR||BW||i out||Ra in||Ra out||single||double||quad<br />
|-<br />
|.||.||.||mV||µV/°C||nV/Hz^,5||nA||nA||V/mV||V/µs||MHz||mA||.||.||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||.||80||.||15||0,5||.||.||.||.||.||0,13||.<br />
|-<br />
|µA741||.||.||.||.||.||.||.||.||.||.||.||.||.||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||18||0,065||0,005||200||13||.||.||.||.||0,18||0,19||x<br />
|-<br />
|TLC 272||3||16||1,1||1,8||.||.||.||23||.||.||.||.||.||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||.||.||.||400||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||100||0,001||0,0005||10||1,6||.||.||(-0,3)(+0,3)||(0,1)(-0,1)||.||.||.<br />
<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10247Operationsverstärker2007-02-23T10:47:44Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||V min||V max||Voff||Voff||Gain||i in||di in||SR||Vn||Ra in||Ra out||i out||single||double||quad <br />
|-<br />
|.||.||.||mV||µV/°C||V/mV||nA||nA||V/µs||nV/Hz^,5||.||.||mA||€||€||€<br />
|-<br />
|MC1458||.||36||2||.||15||80||.||0,5||.||.||.||.||.||0,13||.<br />
|-<br />
|µA741||.||.||.||.||.||.||.||.||.||.||.||.||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||200||0,065||0,005||13||18||.||.||.||0,18||0,19||x<br />
|-<br />
|TLC 272||3||16||1,1||1,8||23||.||.||.||.||.||.||.||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||400||.||.||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||10||0,001||0,0005||1,6||100||(-0,3)(+0,3)||(0,1)(-0,1)||.||.||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10246Operationsverstärker2007-02-23T10:38:11Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vcc min||Vcc max||Voff||Voff||Gain||I out||i in||di in||SR||Vn||Ra in||Ra out||€||€||€ <br />
|-<br />
|.||.||.||mV||µV/°C||V/mV||mA||nA||nA||V/µs||nV/Hz^,5||.||.||single||double||quad<br />
|-<br />
|MC1458||.||36||2||.||15||20||80||.||0,5||.||.||.||.||0,13||.<br />
|-<br />
|µA741||.||.||.||.||.||.||.||.||.||.||.||.||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||200||.||0,065||0,005||13||18||.||.||0,18||0,19||x<br />
|-<br />
|TLC 272||3||16||1,1||1,8||23||.||.||.||.||.||.||.||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||400||.||.||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||10||.||0,001||0,0005||1,6||100||(-0,3)(+0,3)||(0,1)(-0,1)||.||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10245Operationsverstärker2007-02-23T10:36:23Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=257490&highlight=#257490<br />
|-<br />
|Typ||Vcc min||Vcc max||Voff||Voff||Gain||I out||i in||di in||SR||Vn||Ra in||Ra out||€||€||€ <br />
|-<br />
|.||.||.||mV||µV/°C||V/mV||mA||nA||nA||V/µs||nV/Hz^,5||.||.||single||double||quad<br />
|-<br />
|MC1458||.||36||2||.||15||20||80||.||0,5||.||.||.||.||0,13||.<br />
|-<br />
|µA741||.||.||.||.||.||.||.||.||.||.||.||.||0,14||.||.<br />
|-<br />
|TL072||.||36||3||18||200||.||0,065||0,005||13||18||.||.||0,18||0,19||x<br />
|-<br />
|TLC 272||3||16||1,1||1,8||23||.||.||.||.||.||.||.||0,25||0,25||.<br />
|-<br />
|OP 07||3||18||0,03||1,3||400||.||.||.||.||.||.||.||0,27||.||.<br />
|-<br />
|ICL7612||2||16||5||15||10||.||0,001||0,0005||1,6||100||(-0,3) (+0,3)||(0,1)(-0,1)||.||.||.<br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10243Operationsverstärker2007-02-22T17:28:32Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau<br />
|-<br />
| Typ || U min || Umax || imax || SR || fmax || Uo || dUo ||I in|| Preis || Datenblatt<br />
|-<br />
| TLC272 || a || b || c || d || e||f ||g || h ||i || j <br />
|-<br />
|OP 07|| a || b || c || d || e||f ||g || h ||i || j <br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10242Operationsverstärker2007-02-22T17:26:56Z<p>Manf: /* Liste gängiger Typen von Operationsverstärkern */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ im Aufbau<br />
|-<br />
| Typ || U min || Umax || imax || SR || fmax || Uo || dUo ||I in|| Preis || Datenblatt<br />
|-<br />
| TLC272 || a || b || c || d || || || || || || || || ||<br />
|-<br />
|OP 07|| a || b || c || d || || <br />
|}<br />
----<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=10241Operationsverstärker2007-02-22T17:20:45Z<p>Manf: </p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
==Liste gängiger Typen von Operationsverstärkern==<br />
----<br />
{| {{Blauetabelle}} style="text-align:center;"<br />
|+ mit center<br />
|-<br />
| Typ || U min || Umax || imax || SR || fmax || Uo || dUo ||I in|| Preis || Datenblatt<br />
|-<br />
| TLC272 || a || b || c || d || || || || || || || || ||<br />
|-<br />
|OP 07|| a || b || c || d || || <br />
|}<br />
----<br />
<br />
<br />
==Autor/en==<br />
* Manf<br />
<br />
==Weblinks==<br />
* [http://www.eetkorea.com/ARTICLES/2003SEP/A/2003SEP19_AMD_AN07.PDF Op Amp Circuit Collection] - National Semiconductor Application Note 31 mit weiteren OP-Schaltungen<br />
* [http://www.elektronik-kompendium.de/sites/bau/0209092.htm OP in DAS ELKO]<br />
* [http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen mikrocontroller.net]<br />
* http://www2.fh-fulda.de/~pfisterer/mt/mt8.pdf <br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Maussensor&diff=10069Maussensor2007-01-30T09:35:08Z<p>Manf: /* Weblinks */</p>
<hr />
<div>== Grundsätzliches ==<br />
Computermäuse bieten sich als Entfernungs- und Geschwindigkeitsmesser in autonomen Robotern geradezu an. Die Entwicklung weg von den "Kugelmäusen" hin zu optischen Sensoren hat viele Probleme beseitigt, welche diese Bausteine jetzt hochinterressant erscheinen lassen:<br />
* berührungslos <br />
* billig<br />
* hochintegriert und einfach zu beschalten<br />
<br />
Die optischen Mäuse verfügen über eine kleine CCD-"Kamera" von 16x16 bis 30x30 Pixeln. Damit wird ein mikroskopisches Bild des Untergrundes aufgenommen. Über den Vergleich zweier aufeinander folgender Bilder mittels eines integrierten DSPs wird eine Bewegungs-Information errechnet, welche die Bewegungsrichtung (2 Achsen) und Entfernung beinhaltet. Viele dieser Sensorchips haben noch einen "Kompatibilitätsmodus", welcher Quadratur-Signale wie eine Kugelmaus zur Verfügung stellt. Die neueren Chips verzichten darauf immer häufiger. <br />
<br />
In einer Maus findet man in aller Regel den Sensorchip selber und einen Controller, der das Sensorsignal auswertet und in ein PS/2 oder USB-Signal umwandelt.<br />
<br />
Sehr verbreitet in der Anfangszeit der optischen Mäuse waren die Sensoren von Agilent ADNS2051. Die Chips in vielen Billigmäusen sind dazu kompatibel, auch wenn die Bezeichnungen abweichen.<br />
In den meisten Billigmäusen (< 7€) finden sich der PAN101 oder der kleine Bruder PAN3101 von Pixart.<br />
<br />
Häufig kann über den SDIO-Anschluss auch das Sensorbild ausgelesen werden, was praktisch zur Anpassung einer geänderten Optik ist.<br />
<br />
== Datenblätter ==<br />
Hilfreich und informativ ist auf jeden Fall das Studium von entsprechenden Datenblättern. Es finden sich sowohl Beispiele für die elektrischen Beschaltung (die häufig sogar 1:1 von den Mausherstellerun übernommen wurden) als auch eine exacte Beschreibung der Protokolle. Dabei ist häufig die genaue Taktung wichtig. Auch wenn man "seinen" Maussensor nicht findet, kann einem das Studium vergleichbarer Typen wichtige Hinweise geben, taiwanische und chinesische Chips sind häufig kompatibel zu den "großen" Markenherstellern.<br />
<br />
* [[http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=349 ADNS 2610]]<br />
* [[http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=348 ADNS 2051]]<br />
* [[http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=347 PAN 301]]<br />
<br />
== Anschluss (elektrisch) ==<br />
<br />
Der Anschluss über SDIO ist relativ simpel. Man muss zwei PINS dazu identifizieren, Clock und SDIO. <br />
Der Takt wird vom Controller vorgegeben, damit kann dann Bitweise gelesen oder geschrieben werden. <br />
Die Sensorchips haben in aller Regel auch ein paar Konfigurations-Register, in denen Betriebsmodus und Auflösung eingestellt werden können.<br />
<br />
Für die Quadratur-Ausgänge muss man 4 Leitungen am Chip identifizieren.<br />
<br />
=== seriell über SDIO ===<br />
<br />
Um einen Maussensor an einen Mikrocontroller anzuschliesen braucht man eigentlich nur 2 Leitungen.<br />
* Der SCLK Eingang vom Maussensor wird an einen Output-Pin des Controller angeschlossen.<br />
* Der SDIO oder SDA Aus/Eingang des Maussensors wird an an einen IO Pin des Controllers angeschlossen.<br />
Falls man den Chip aus einer optischen Maus verwenden möchte und sich keinen neuen Chip gekauft hat, muss man die Verbindung der zwei Pins SCLK und SDIO/SDA am Maussensor Chip noch mit einem Teppichmesser oder einer Trennscheibe abtrennen von den Pins des anderen ICs, der die Daten eigentlich an den PC schicken sollte, nun aber überflüssig ist.<br/><br/><br />
Ansonsten muss man halt noch für die 5V Spannungsversorgung des Maussensors sorgen. Dazu kann man gleich die Anschlüsse (normalerweise Schwarz=GND Rot=+5V) für das Kabel zum PC verwenden. Und wenn man grad dabei ist, kann man auch noch die anderen zwei Leitungen(andersfarbig z.B. Grün und Weiß) die eigentlich mal die Daten zum Pc gebracht haben, rauslöten und an unsere zwei Pins (SCLK und SDIO/SDA) am Maussensorchip löten. So hat man gleich noch das Mauskabel wiederverwertet ;) und hat zum testen erst mal eine schöne Reichweite mit der Maus. Manchmal ist es auch noch hilfreich, den PD-Pin (Power Down) herauszuführen, da man damit den Seriellen Anschluss wieder zurücksetzen kann, wenn man mal aus dem Takt gekommen ist.<br />
<br />
=== Über Quadratur-Ausgänge ===<br />
<br />
Für die Quadratur-Ausgänge muss man 4 Pins (XA, XB, YA, YB) identifizieren. Wenn man kein Datenblatt des Sensorchips zur Verfügung hat, kann man sie meistens daran erkennen das 4 Leitungen direkt nebeneinander vom Sensorchip zum Controller-Chip laufen.<br />
<br />
== Auswertung (Software) ==<br />
Hier bitte Codebeispiele einfügen, anhand derer man einen Einstieg finden kann.<br />
=== seriell über SDIO ===<br />
<br />
Der hier vorgestellte Code ist in C geschrieben. Er ermöglicht es einen PAN3101 oder,<br />
nach kleinen Änderungen bei den Registern, einen PAN101 (großer Bruder des PAN3101)<br />
zu beschreiben und auszulesen.<br/><br/><br />
Das Main Programm liest immer wieder die DeltaXund DeltaY Register ein, wobei auch <br />
eventuelle Überläufe überprüft werden und addiert diese zu den Positionsvariablen<br />
posx und posy. Diese können dann ausgegeben werden.<br/><br/><br/><br />
<br />
<pre><br />
<br />
#define DDR_SCK DDRB /*!< DDR fuer Maus-SCLK */<br />
#define DDR_SDA DDRA /*!< DDR fuer Maus-SDA */<br />
<br />
#define PORT_SCK PORTB /*!< PORT fuer Maus-SCK */<br />
#define PORT_SDA PORTA /*!< PORT fuer Maus-SDA */<br />
#define PIN_SDA PINA /*!< PIN fuer Maus-SDA */<br />
<br />
#define SCK_PIN (1<<PB0) /*!< PIN nummer fuer Maus-SCK */<br />
#define SDA_PIN (1<<PA0) /*!< PIN nummer fuer Maus-SDA */<br />
<br />
<br />
/*!<br />
* Uebertraegt ein Byte an den Sensor<br />
* @param data das Byte<br />
*/<br />
void pan_writeByte(unsigned char data){<br />
signed char i;<br />
<br />
DDR_SDA|= SDA_PIN; // SDA auf Output<br />
<br />
for (i=7; i>=0; i--){<br />
<br />
PORT_SCK &= ~SCK_PIN; //SCK auf Low, Daten vorbereiten<br />
<br />
if(data&(1<<i)){ //Bit rausschieben<br />
PORT_SDA|=SDA_PIN;<br />
}else{<br />
PORT_SDA&=~SDA_PIN; <br />
}<br />
<br />
PORT_SCK |= SCK_PIN; // SCK =1 Sensor uebernimmt auf steigender Flanke<br />
<br />
_delay_us(1); //Sensor Zeit lassen um Bit zu holen<br />
}<br />
<br />
DDR_SDA &=~ SDA_PIN; //HI-Z state<br />
PORT_SDA &=~ SDA_PIN;<br />
<br />
}<br />
<br />
/*!<br />
* Liest ein Byte vom Sensor<br />
* @return das Byte<br />
*/<br />
unsigned char pan_readByte(void){<br />
signed char i;<br />
unsigned char data=0;<br />
<br />
_delay_us(3); //Sensor Zeit lassen um die Daten aus dem Register zu holen<br />
<br />
for (i=7; i>-1; i--){<br />
PORT_SCK &= ~SCK_PIN; // SCK =0 Sensor bereitet Daten auf fallender Flanke vor !<br />
<br />
_delay_us(1); //Sensor kurz zeit lassen<br />
<br />
<br />
PORT_SCK |= SCK_PIN; // SCK =1 Daten lesen auf steigender Flanke <br />
<br />
if(PIN_SDA&SDA_PIN){ //BIT einlesen<br />
data |= (1<<i); <br />
}else{<br />
data &=~ (1<<i); <br />
} <br />
<br />
}<br />
return data;<br />
}<br />
<br />
/*!<br />
* Uebertraegt ein write-Kommando an den Sensor<br />
* @param adr Adresse<br />
* @param data zu schreibendes byte<br />
*/<br />
void pan_write(unsigned char adr, unsigned char data){<br />
adr|=(1<<7);<br />
pan_writeByte(adr); //rl MSB muss 1 sein für Write Operation<br />
pan_writeByte(data);<br />
}<br />
<br />
<br />
<br />
/*!<br />
* Schickt ein Lesekommando an den Sensor<br />
* und liest ein Byte zurueck<br />
* @param adr die Adresse<br />
* @return der registerwert<br />
*/<br />
unsigned char pan_read(unsigned char adr){<br />
<br />
pan_writeByte(adr);<br />
return pan_readByte();<br />
}<br />
<br />
<br />
/*! <br />
* Initialisiere PAN3101<br />
<br />
!! Muss unbedingt ganz am ANFANG von main stehen, sonst gibts FEHLER !!<br />
(wenn der PAN3101 sich initialisiert hat, bevor der Controler SCK und <br />
SDA auf Output gestellt hat)<br />
Deshalb kann es auch sinnvoll sein die Powerup Zeit in den Config Bits <br />
auf 4ms zu stellen oder noch besser mit Boden zu arbeiten.<br />
<br />
*/ <br />
void pan_init(void){<br />
<br />
DDR_SCK |= SCK_PIN; // SCK auf Output<br />
DDR_SDA |= SDA_PIN; //SDA auf Output<br />
<br />
PORT_SCK |= SCK_PIN; // SCK auf high <br />
PORT_SDA|= SDA_PIN; //SDA auf high<br />
<br />
// hier müssen bei Umstellung auf PAN101 die entsprechenden Register gesetzt werden<br />
//Reset PAN3101<br />
pan_write(0x00,0x80);<br />
// kein Sleep modus<br />
pan_write(0x00,0x01); <br />
}<br />
<br />
<br />
int main(void){<br />
<br />
unsigned char ino;<br />
signed char x,y;<br />
signed short posx=0,posy=0;<br />
<br />
//ganz an den Anfang damit der Controller schneller asl der PAN ist um Fehler zu vermeiden<br />
pan_init();<br />
//Individuelle Port Configuration und Initialisierung<br />
initialisierung();<br />
<br />
lcd_init(LCD_DISP_ON);<br />
lcd_clrscr();<br />
<br />
while(1){<br />
<br />
//Endlosschleife<br />
<br />
ino=pan_read(0x16);<br />
<br />
//wenn 7tes bit vom Register 0x16 gesetzt ist wurde die Maus bewegt => Bewegungsdaten abfragen<br />
if(ino&(1<<7)){ <br />
//Deltax Register auslesen<br />
x=pan_read(0x17);<br />
//und zu der Positionvariable addieren<br />
posx=posx+x;<br />
<br />
/* Nachschaun ob das Überlauf-Bit im Register 0x16 gesetzt ist <br />
wenn das der Fall ist muss je nach Vorzeichen der Deltax Variable x<br />
noch 128 (überlauf nach oben) dazugezählt oder eben 128 abgezogen werden<br />
*/<br />
if(ino&(1<<3)){<br />
if(x<0){<br />
posx-=128;<br />
}else{<br />
posx+=128;<br />
}<br />
}<br />
<br />
//ab hier nochmal das Gleiche für die yRichtung<br />
<br />
y=pan_read(0x18);<br />
posy=posy+y;<br />
<br />
if(ino&(1<<4)){<br />
if(y<0){<br />
posy-=128;<br />
}else{<br />
posy+=128;<br />
}<br />
}<br />
<br />
}<br />
<br />
//hier kann jeder seine Ausgabevariante selber wählen ;) <br />
<br />
lcd_ausgabe_int(0,3,posx);<br />
lcd_ausgabe_int(7,3,posy);<br />
<br />
}<br />
<br />
return 0;<br />
}<br />
<br />
</pre><br />
<br/><br />
Das Programm wurde mit einem PAN3101 auf einem ATMega32 mit 14,7456 Mhz getestet und lief problemlos.<br />
<br />
=== über Quadratur-Ausgänge ===<br />
<br />
<br />
==Autor/en==<br />
* Reinald<br />
* Javik<br />
<br />
==Siehe auch==<br />
*[[Sensorarten]]<br />
<br />
==Weblinks==<br />
*[http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=6782 Thread im RN-Forum] 6782 Fragen zum optischen Maussensor von Agilent<br />
*[http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=6894 Thread im RN-Forum] 6894 Optische Maus: geänderte Fokus-Distanz<br />
*[http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=11548 Thread im RN-Forum] 11548 GeneralKeys Lasermaus als Sensor für die Odometrie<br />
*[http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=12579 Thread im RN-Forum] 12579 Sensor einer Optischen Maus zur Streckenmessung <br />
*[http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=13271 Thread im RN-Forum] 13271 Programmierung des ADNS 3060<br />
*[http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=22353 Thread im RN-Forum] 22353 Schnittstelle für PAN101(Sensor einer optischen Maus)<br />
<br />
<br />
*[http://www.mstarmetro.net/~rlowens/OpticalMouse/ guter Internetseite über diverse Maussensoren]<br />
[[Kategorie:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=9738Sensorarten2006-11-27T18:04:49Z<p>Manf: /* Beschleunigung */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]]<br />
Auf dieser Seite werden die wichtigsten Sensorarten und damits praktischer wird auch zugleich die populärsten Robotik- und Modellbau-Sensortypen vorgestellt. Auch die Pinbelegung und Anschlussmöglichkeiten dieser Sensoren werden kurz erläutert.<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Die Suche nach dem Hellsten Fleck im Rraum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hindernisserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinternisserkennung per Infarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hinterniss erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hinternisses. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neuer SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungschankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
Einige Bascom Programmbeispiele zum SRF02 findet man unter [[Ultraschallsensor SRF02 am RN-Board]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dann muß das Module langsam um 360 Grad gedreht werden. Dabei nimmt das Modul 4 Meßpunkte auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten. Der Test eines solchen Sensors ist hier beschrieben. http://www.roboternetz.de/phpBB2/viewtopic.php?t=8525<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdigs, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
<br />
==Temperatur== <br />
===NTCs===<br />
NTCs (Negative Temperature Coefficient)oder Heißleiter sind stromleitende Materialien, die bei hohen Temperaturen Strom besser leiten als bei tiefen, das heißt, mit steigender Temperatur sinkt ihr elektrischer Widerstand. Siehe auch unter [[NTC]]. EIn großer Vorteil ist die leichte ANwendung und der geringe Preis. Nachteil ist das der Widerstandswert sich nicht linear mit der Temperatur verändert.<br />
<br />
[[Bild:ntc.gif]]<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm.<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Genauigkeit von 0.5<sup>o</sup> Grad Celsius messen. Das angegebene Bereich ist -25<sup>o</sup> bis 100<sup>o</sup> C. Es wird zweierlei geboten:<br />
* Ein Schaltausgang - Wenn man also z.B. einen Ventilator einschalten möchte<br />
* I2C - Der obere Teil der Adresse ist fix 0x9n, die Bits 1-3 kann man mit Jumper einstellbar machen oder fest verdrahten. <br />
<br />
Durch einen einfachen I2C-Lesebefehl kann man die Temperatur einlesen (16-Bit), das Format ist allerdings etwas tricky. Das erste Byte (8-Bit) ist die Temperatur in ganzen Grad, als normales signed char, vom zweiten Byte gibt das MSB an, ob noch 0.5<sup>o</sup> '''dazuzuzählen''' sind (also auch, wenn vorne eine negative Zahl steht) <br />
<br />
Der Grund ist der: die vorzeichenbehaftete 9-Bit Zahl, die da linksbündig in zwei Datenbytes übertragen wird, gibt eigentlich an, wieviel 0.5 Grad - Einheiten gemessen wurden. Rein rechnerisch wäre also Temperatur = Wert * 0.5, das müßte man aber als float durchführen oder erweitern<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
das ergibt die Temperatur in Zehntel-Grad (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
...<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf Die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignalist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Ultraschallsensor SRF02 am RN-Board]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
*[http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf KDY Sensor Datenblatt]<br />
*[http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf NTC Datenblatt]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=9611Sensorarten2006-11-16T21:10:15Z<p>Manf: /* KTY: Silizium Temperatursensoren */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]]<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Die Suche nach dem Hellsten Fleck im Rraum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hindernisserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinternisserkennung per Infarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hinterniss erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hinternisses. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neuer SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungschankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dann muß das Module langsam um 360 Grad gedreht werden. Dabei nimmt das Modul 4 Meßpunkte auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten.<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdigs, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
<br />
==Temperatur== <br />
===NTCs===<br />
http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm.<br />
http://www.nxp.com/acrobat_download/various/SC17_GENERAL_TEMP_1996_3.pdf<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Genauigkeit von 0.5<sup>o</sup> Grad Celsius messen. Das angegebene Bereich ist -25<sup>o</sup> bis 100<sup>o</sup> C. Es wird zweierlei geboten:<br />
* Ein Schaltausgang - Wenn man also z.B. einen Ventilator einschalten möchte<br />
* I2C - Der obere Teil der Adresse ist fix 0x9n, die Bits 1-3 kann man mit Jumper einstellbar machen oder fest verdrahten. <br />
<br />
Durch einen einfachen I2C-Lesebefehl kann man die Temperatur einlesen (16-Bit), das Format ist allerdings etwas tricky. Das erste Byte (8-Bit) ist die Temperatur in ganzen Grad, als normales signed char, vom zweiten Byte gibt das MSB an, ob noch 0.5<sup>o</sup> '''dazuzuzählen''' sind (also auch, wenn vorne eine negative Zahl steht) <br />
<br />
Der Grund ist der: die vorzeichenbehaftete 9-Bit Zahl, die da linksbündig in zwei Datenbytes übertragen wird, gibt eigentlich an, wieviel 0.5 Grad - Einheiten gemessen wurden. Rein rechnerisch wäre also Temperatur = Wert * 0.5, das müßte man aber als float durchführen oder erweitern<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
das ergibt die Temperatur in Zehntel-Grad (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
...<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf Die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignalist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=9610Sensorarten2006-11-16T21:09:21Z<p>Manf: /* KTY: Silizium Temperatursensoren */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]]<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Die Suche nach dem Hellsten Fleck im Rraum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hindernisserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinternisserkennung per Infarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hinterniss erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hinternisses. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neuer SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungschankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dann muß das Module langsam um 360 Grad gedreht werden. Dabei nimmt das Modul 4 Meßpunkte auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten.<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdigs, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
<br />
==Temperatur== <br />
===NTCs===<br />
http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm.<br />
http://www.nxp.com/acrobat_download.....7_GENERAL_TEMP_1996_3.pdf<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Genauigkeit von 0.5<sup>o</sup> Grad Celsius messen. Das angegebene Bereich ist -25<sup>o</sup> bis 100<sup>o</sup> C. Es wird zweierlei geboten:<br />
* Ein Schaltausgang - Wenn man also z.B. einen Ventilator einschalten möchte<br />
* I2C - Der obere Teil der Adresse ist fix 0x9n, die Bits 1-3 kann man mit Jumper einstellbar machen oder fest verdrahten. <br />
<br />
Durch einen einfachen I2C-Lesebefehl kann man die Temperatur einlesen (16-Bit), das Format ist allerdings etwas tricky. Das erste Byte (8-Bit) ist die Temperatur in ganzen Grad, als normales signed char, vom zweiten Byte gibt das MSB an, ob noch 0.5<sup>o</sup> '''dazuzuzählen''' sind (also auch, wenn vorne eine negative Zahl steht) <br />
<br />
Der Grund ist der: die vorzeichenbehaftete 9-Bit Zahl, die da linksbündig in zwei Datenbytes übertragen wird, gibt eigentlich an, wieviel 0.5 Grad - Einheiten gemessen wurden. Rein rechnerisch wäre also Temperatur = Wert * 0.5, das müßte man aber als float durchführen oder erweitern<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
das ergibt die Temperatur in Zehntel-Grad (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
...<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf Die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignalist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=9609Sensorarten2006-11-16T21:07:50Z<p>Manf: /* NTCs */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]]<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Die Suche nach dem Hellsten Fleck im Rraum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===CNY70===<br />
<br />
Der CNY70 ist ein Foto-Reflex Optokoppler. In einem würfelförmigem Gehäuse befindet sich eine Infrarot LED als Sender und ein Infrarot Fototransistor als Empfänger. Damit kann auf kurze Entfernung (wenige Millimeter) das reflektierte Licht der IR-LED durch den IR-Fototransistor gemessen werden. <br />
<br />
{|<br />
|[[Bild:cny70.jpg|thumb|200px|CNY70]]<br />
|[[Bild:cny70_pinout.jpg|framed|CNY70 Vishay Pinout]]<br />
|}<br />
<br />
'''Achtung:''' Es existiert auch noch ein CNY70 von Temic mit anderer Pinbelegung, dort ist der Fototransistor verdreht eingebaut.<br />
<br />
Der CNY70 eignet sich für eine Vielzahl von Sensoren. Z.B. als Liniensensor, Radencoder, Abgrunddetektor und Lichtschranke. Allerdings ist er empfindlich gegen Streulicht, da das Licht der IR-LED nicht moduliert ist.<br />
<br />
<br />
[[Bild:cny70_schem1.gif|thumb|center|600px|CNY70 als Liniensensor]]<br />
<br />
Der Liniensensor benötigt 2 A/D Wandler Eingänge des Prozessors. Die CNY70 sollten so nah wie möglich in Bodennähe angebracht sein (1..3mm). Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Liniensensor nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
[[Bild:cny70_schem2.gif|thumb|center|600px|CNY70 als Radencoder mit Schmitt-Trigger]]<br />
<br />
Die Radencoder benötigen zwei digitale Eingangsports des Prozessors. A/D Wandler sind nicht nötig, da die Schmitt-Trigger Gatter für saubere Logik Signale sorgen. Die CNY70 sollten so nah wie möglch an den Rädern sitzen (1..2mm). Die gewählten Widerstandswerte für R17/R19 bzw. R18/R20 sind optimiert für Radencoder die auf Transparentfolie gedruckt und auf Aluminium Räder aufgeklebt werden. Für Radencoder die auf Papier ausgedruckt werden, sind andere Widerstandswerte notwendig.<br />
Der P-Kanal FET BS250 dient als Schalter für die IR LEDs des CNY70. Damit spart man Strom, wenn der Radencoder nicht benötigt wird. Allerdings wird dafür ein weiterer Prozessor Ausgang als Enable Signal benötigt. HIGH Pegel schaltet die Sensor LEDs aus, LOW Pegel ein. Wird keine Enable Funktion gewünscht, läßt man den BS250 einfach weg und hängt die Vorwiderstände der Sensor LEDs direkt an VCC.<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hindernisserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinternisserkennung per Infarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hinterniss erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hinternisses. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neuer SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungschankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
<br />
===SRF02 Ultraschallsensor===<br />
Der erste Sensor aus der SRF-Reihe der mit nur einem Ultraschallwandler auskommt. Dennoch können sich die Leistungen zeigen. Vorallem die Tatsache das sowohl RS232 und I2C-Bus Schnittstelle vorhanden ist dürfte viele Bastler erfreuen.<br />
<br />
* Betriebsspannung 5V (stabilisiert) <br />
* Stromaufnahme nur 4mA (typisch) <br />
* Ultraschallfrequenz 40khz <br />
* Reichweite 15cm bis 6 Meter <br />
* Schnittstelle RS232 (TTL) und I2C-Bus <br />
* Ausgabeeinheit wahlweise mm, inch oder uS <br />
* Einfachste Verwendung, keine Kalibration/Justierung notwendig<br />
* Größe 24mm x 20mm x 17mm <br />
<br />
[[Bild:srf02_germany.jpg]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|'''SRF02'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ.,<br> 15mA max.<br />
|3mA typ.,<br> 15mA max.<br />
|4mA typ.,<br> 30mA max.<br />
|30mA typ.,<br> 50mA max.<br />
|4mA typ.<br>&nbsp;<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|?? mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|15cm - 6m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|24 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|I2C o. RS232 TTL<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|nur 1 US-Kapsel<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|19,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter(!) Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich. Wenn ein CMPS03 als Kompass verwendet werden soll, sind zwei Dinge zu beachten: <br />
* Mindestens 20 cm Abstand von Eisen(Motore)<br />
* Exakte horizontale Ausrichtung.<br />
Eine Montage an einem langen Stab aus Holz oder Kuststoff hoch über dem Roboter ist sinnvoll. <br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dann muß das Module langsam um 360 Grad gedreht werden. Dabei nimmt das Modul 4 Meßpunkte auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
<br />
Beschleunigungssensoren messen die Beschleunigung, die auf sie wirkt - wenn sie auf dem Tisch liegen, messen sie beispielsweise die Erdbeschleunigung von 1g. In einem Auto können weitere Beschleunigungen hinzukommen: Zur Seite beim Kurvenfahren, nach vorne oder hinten beim Beschleunigen, oder bei zügiger Fahrt über eine Bergkuppe auch mal welche in vertikaler Richtung.<br><br />
Beschleunigungssensoren sind meist mehrdimensional ausgelegt, so dass für mehrere Achsen ein Sensor verwendet werden kann.<br />
<br />
Anwendungen finden sie in ESP-Systemen in Autos, die u.a. über die Querbeschleunigung ausrechnen können, ob das Fahrzeug seitlich driftet oder gar schleudert.<br><br />
Eine andere wichtige Aufgabe übernehmen sie zusammen mit Gyroskopen in Trägheitsnavigationssystemen, die dann sowohl die Lage im Raum als auch die Bewegung feststellen können.<br />
<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
<br />
<br />
Beispiele für solche Chips ist die Chipfamilie [[ADXL]] von Analog Devices. Sie umfaßt 1- und 2-Achs Accelerometer in verschiedenen Empfindlichkleiten.<br />
<br />
==Drehung==<br />
<br />
Um Drehungen zu messen, werden sogenannte Gyroskope, kurz "Gyros" verwendet. Typische Vertreter sind hier die [[ADXRS]]-Familie von Analog Devices. Diese sind allerdigs, anders als die Beschleunigungssensoren, meistens nur für eine Achse ausgelegt. Die Ausgabe erfolgt meist analog, jede Ausgangsspannung entspricht einer bestimmten Drehrate in °/Sekunde.<br />
<br />
Gemessen wird die Auswirkung der Corioleskraft auf zwei gleiche, in Bewegung gehaltene Massen. Diese schwingen radial, d.h. 90° verdreht zu der Achse, auf der die Drehung gemessen werden soll. Wird der Sensor um die Achse gedreht, ändert sich die Geschwindigkeit dieser Massen, da sie auf einer gedachten Scheibe abwechselnd nach innen und außen wandern. Je weiter sie außen sind, desto höher ist ihre Geschwindigkeit, je weiter innen, desto langsamer sind sie. Bei der Bewegung nach außen müssen sie also beschleunigt werden, andersherum genauso. Die dabei auftretenden Beschleunigungen werden mittels einiger Fühler gemessen, die einen Plattenkondensator bilden.<br />
<br />
Eine Anwendung sind im Flugmodellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern und ESP-Systeme in Autos, die u.a. durch die Messung der Gierrate, also der Drehung des Fahrzeugs um die Hochachse, feststellen können, ob das Fahrzeug seitlich driftet oder sogar schleudert.<br />
<br />
==Geschwindigkeit==<br />
<br />
Geschwindigkeit kann unterschiedlich erfasst werden.<br />
* Direkt am Rad oder Antrieb. Diese Methode wird häufig auch in KFZ verwendet, stößt jedoch an ihre Grenzen wenn die Räder viel Schlupf haben. <br />
* Gegenüber der Luft mittels [[Pitot-Tube]]. Das wird bei Flugzeugen so gemacht, oder z.B. in der Formel 1. Bei niedriegen Geschwindigkeiten nicht zu gebrauchen<br />
* Mittels eines optischen Sensors gegenüber dem Untergrund. Dafür kann ein [[Maussensor]] aus einer optischen Maus verwendent werden, evtl. mit einer Anpassung der Optik für einen geänderten Abstand.<br />
* Mittels GPS-Empfang. Funktioniert nur unter freiem Himmel.<br />
<br />
==Temperatur== <br />
===NTCs===<br />
http://www.tranzistoare.ro/datasheets2/83/83853_1.pdf<br />
<br />
===PTCs===<br />
<br />
PTCs sind Temperatursensoren, deren Widerstand sich mit steigender Temperatur erhöht. Dazu gehören<br />
<br />
*PT100, PT1000 etc.<br />
*Die KTYxx-xxx Reihe<br />
<br />
<br />
==== KTY: Silizium Temperatursensoren ====<br />
<br />
Die KTY-Temperatursensoren sind verglichen mit anderen Temperatursensoren verhältnismäßig günstig, haben dafür aber auch mehr Nachteile.<br><br />
Die Genauigkeit ist ziemlich eingeschränkt, weshalb die KTY-Temperatursensoren zuerst kalibriert werden sollten. Dies muss Schaltungstechnisch oder in Software erfolgen, eine eingebaute Kalibrierung gibt es nicht.<br><br />
Andererseits lassen sich mittels Oversampling sehr hoch aufgelöst Temperaturen messen, was aufgrund mittelmäßiger Linearität (auch nach der Linearisierung) aber nur bei der Messung kleiner Temperaturunterschiede empfehlenswert ist.<br><br />
Linearisiert werden die KTY an 5 Volt mit einem Reihenwiderstand von etwa 2,7 kOhm bis 3,3 kOhm.<br />
<br />
===Temperatur-Sensor LM75===<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Genauigkeit von 0.5<sup>o</sup> Grad Celsius messen. Das angegebene Bereich ist -25<sup>o</sup> bis 100<sup>o</sup> C. Es wird zweierlei geboten:<br />
* Ein Schaltausgang - Wenn man also z.B. einen Ventilator einschalten möchte<br />
* I2C - Der obere Teil der Adresse ist fix 0x9n, die Bits 1-3 kann man mit Jumper einstellbar machen oder fest verdrahten. <br />
<br />
Durch einen einfachen I2C-Lesebefehl kann man die Temperatur einlesen (16-Bit), das Format ist allerdings etwas tricky. Das erste Byte (8-Bit) ist die Temperatur in ganzen Grad, als normales signed char, vom zweiten Byte gibt das MSB an, ob noch 0.5<sup>o</sup> '''dazuzuzählen''' sind (also auch, wenn vorne eine negative Zahl steht) <br />
<br />
Der Grund ist der: die vorzeichenbehaftete 9-Bit Zahl, die da linksbündig in zwei Datenbytes übertragen wird, gibt eigentlich an, wieviel 0.5 Grad - Einheiten gemessen wurden. Rein rechnerisch wäre also Temperatur = Wert * 0.5, das müßte man aber als float durchführen oder erweitern<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
das ergibt die Temperatur in Zehntel-Grad (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
...<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
<br />
[[Bild:feuchtesensor.gif|framed|center|Valvo Feuchtigkeitssensor 10-90% (Kapazität: 122 pF bei TU = 25 °)]]<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<br />
<br />
[[Bild:Piezowandler.jpg|center]]<br />
<br />
<br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf Die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignalist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Bezugsquellen&diff=8679Bezugsquellen2006-09-14T09:40:41Z<p>Manf: /* Materialien */</p>
<hr />
<div>{| {{Blaueschmaltabelle}}<br />
|Hier können Bezugsquellen eingetragen werden! Bitte aber pro Eintrag nicht mehr als '''2 bis 3 Zeilen''', ansonsten muss es ein Moderator kürzen! Dieser Artikel soll nicht als Werbeplattform mißbraucht werden, für Werbung gibts andere [[RN-Wissen:Site_support|Möglichkeiten]]. Er soll eine Hilfe für Bastler sein! <br />
Bitte auch keine Bewertungen der Lieferanten vornehmen, das ist Sache der Leser & Bastler indem Sie vergleichen.<br />
|}<br />
<br />
==Elektronikbauteile==<br />
<br />
;Conrad - http://www.conrad.de: Fast alle Standardelektronikbauteile, aber teuer<br />
<br />
;CSD-Electronic - http://www.csd-electronics.de/: Elektronik<br />
<br />
;Kessler-Electronic - http://www.kessler-electronic.de/: ( ehemals Simons ) Diverse Bauelemente (aktiv, passiv, Microcontroller), Literatur, PC-Komponenten, Messgeräte, Hifi, usw. Preisstaffelung für größere Mengen, Mindestbestellwert: 10 Euro<br />
<br />
;Distrelec Gruppe - http://www.distrelec.com: Diverse Bauelemente (aktiv, passiv, Microcontroller), Literatur, PC-Komponenten, usw.<br />
<br />
;Farnell In One - http://de.farnell.com/: elektronische Bauelemente (aktiv, passiv, Microcontroller), Sensoren, Literatur, Entwicklungskits, Kabel, Steckverbinder, Werkstattbedarf. Auch für privat. Sehr schnell.<br />
<br />
;Reichelt - http://www.reichelt.de: Diverse Bauelemente (aktiv, passiv, Microcontroller), Literatur, PC-Komponenten, Lichttechnik, Messtechnik, Software, Kabel, Steckverbinder, Werkstattbedarf, Werkzeug, Mindestbestellwert: 10 Euro<br />
<br />
;RS-Components - http://www.rsonline.de: Bauelemente: (aktiv, passiv, Microcontroller), Literatur, PC-Komponenten, Lichttechnik, Messtechnik, Software, Kabel, Steckverbinder, Werkzeug<br />
<br />
;Ribu Elektronik - http://www.ribu.at: Diverse Bauelemente, ICs, österreichische Seite<br />
<br />
;Schweizer Roboter-Shop - http://www.roboter-shop.ch: Diverse Bauelemente, Microcontroller, Bücher, Sensoren, Platinen, Mechanik<br />
<br />
;Digi-Key Corporation - http://de.digikey.com/: Diverse Bauelemente, Microcontroller, Sensoren, auch 'exotische' Bauteile, sehr umfangreiches Sortiment, kostenloser Katalog<br />
<br />
;Pollin Electronic - http://www.pollin.de/: Diverse Bauelemente und Sortimente zu spottpreisen, alles Restposten oder Gebrauchte Teile, daher kein beständiges Sortiment<br />
<br />
==Sensoren==<br />
<br />
;Robotikhardware - http://www.robotikhardware.de: Drehgeber, Sharp-Entfernungssensoren, Ultraschallsensoren, Neigungssensoren, Temperatursensoren usw. speziell für Robotik-Bastler<br />
<br />
;Micromaus - http://www.micromaus.de: Sharp-Entfernungssensoren, Farbsensoren, Feuchtesensoren, Flexsensoren, Beschleunigungssensoren, Drucksensoren usw.<br />
<br />
;Roboter-Teile - http://www.roboter-teile.de/ : Lynxmotion Hexapot, Sensoren, CMU-Cam, AVR, PIC u.v.a.<br />
<br />
;Digi-Key Corporation - http://de.digikey.com/: Diverse Bauelemente, Microcontroller, Sensoren, auch 'exotische' Bauteile, sehr umfangreiches Sortiment, kostenloser Katalog. Hohe Versandkosten (über 30 Euro selbst bei Kleinteilen)<br />
<br />
;Krause Robotik - http://www.krause-robotik.de/Shop/: Diverse Sensoren und Mikrocontrollerboards. Hohe Versandkosten.<br />
<br />
==Motoren== <br />
<br />
;mir-elektronik - http://www.mir-elektronik.de: Schrittmotoren, Endstufen, Bauteile, Literatur und Sonderposten<br />
;Lemo-Solar - http://lemo-solar.de/: Motoren, Getriebe, Elektronik-Bausätze, Sonderposten u.v.a.<br />
<br />
;Robotikhardware - http://www.robotikhardware.de: Schrittmotor-Angebote, Tamiya Modellbau Getriebemotoren<br />
<br />
==Platinen==<br />
<br />
;Multipcb - http://www.multipcb.de: Platinenservice für gewerbliche Kunden<br />
<br />
;PCB-Pool - http://pcb-pool.com: Platinenservice für private und gewerbliche Kunden<br />
<br />
==Materialien==<br />
<br />
;Metall Store - http://www.metallstore.de/: Schrittmotoren, (Kugel-)Lager, diverse Bauelemente aus Alu, VA, Messing, Bronze, Kupfer, Werkzeuge, Spezialschrauben<br />
<br />
;Modulor - http://www.modulor.de/: Diverse Materialien Kunststoff, Gummi, Papier, Pappe, Holz, Metall, Textilien, Plexiglas ...<br />
<br />
;Igus - http://www.igus.de/: Gleitlager, Lineargleitlager, Kabelschleppen, Gelenklager, Polymergleitlager, Wellen ...<br />
<br />
;Kienzle Plexiglas - http://www.ernst-kienzle.de/: Acrylglas, Polycarbonat, Polyethylenterephtalatglycol (in vielen Farben, auch Formen machbar)<br />
<br />
;Maedler - http://www.maedler.de/: Antribselemente und Normteile, Getriebe und Getriebemotoren, Pneumatikelemente, Zahnriemen, Zahnriemenräder, div. Lager ...<br />
<br />
;Boschrexroth - http://www.boschrexroth.com/: Montagetechnik (Aluminiumprofile usw.), Antriebstechnik, Pneumatik, Lineartechnik, Elektr. Antriebe und Steuerungen, Hydraulik, Getriebe, ...<br />
<br />
;Octamex - http://www.octamex.de/: Leiterplatten (in versch. Dicken), Chemikalien zum Ätzen und Veredeln, Elektronikbauteile, Lötstop- und Bestückungsdruck Laminate, Gehäusetechnik<br />
<br />
Eine Reihe von Bezugsquellen für Zahnräder ist hier aufgelistet: http://www.roboternetz.de/phpBB2/viewtopic.php?t=23236<br />
<br />
==Roboterboards==<br />
;Robotikhardware - http://www.robotikhardware.de: Roboterboards, universelle Microcontrollerboards, Sprachboards, Bausätze, Platinen, Schrittmotoren, Sensoren etc. Berücksichtigt [[RN-Definitionen]]<br />
<br />
;Krause-Robotik - http://krause-robotik.de/Shop: einige Mikrocontrollerboards<br />
<br />
==Starterkits und universelle Mikrocontrollerboards==<br />
;Robotikhardware - http://www.robotikhardware.de: Microcontrollerboards (auch mit Funkmodul) für Einsteiger und Fortgeschrittene. Vom ATMega8 bis ATMega128. Bausätze, Platinen, Fertigmodule. Berückichtigt [[RN-Definitionen]] und sind somit kompatibel untereinander. Zubehör etc.<br />
;Mikrocontrollernet Shop - http://shop.mikrocontroller.net/: verschiedene AVR Microcontrollerboards, Bausätze, Zubehör <br />
;myAVR - http://www.myAVR.de: AVR Microcontrollerboards, Bausätze, Zubehör <br />
<br />
[[Kategorie:Praxis|!]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Sensorarten&diff=7417Sensorarten2006-05-22T13:26:15Z<p>Manf: /* Whiskers (Fühler) */</p>
<hr />
<div>==Welche Sensorarten gibt es==<br />
Damit sich ein Roboter in seiner Umgebung bewegen kann, ohne an Hindernisse anzustoßen, und damit er ein Ziel finden und ansteuern kann, muß er irgendwie seine Umwelt "wahrnehmen". <br />
Hauptanwendung für diese Informationen aus der Umwelt ist die [[Navigation]]<br />
<br />
==Bumpers==<br />
Als Bumpers bezeichnet man eine Art Stoßstange, die einen Mikro-Switch auslöst. <br />
<br />
[[Bild:microschalter.jpg|center]]<br />
<br />
Die Auswertung erfolgt am besten digital an einem Pin mit Pull-up Widerstand. Man kann den Eingang pollen (abfragen), aber auch einen Interrupt auslösen lassen. --><br />
<br />
==Whiskers (Fühler)==<br />
Das sind flexible Kunststoff-Streifen von ca. 10 cm Länge, eigentlich für Datenhandschuhe vorgesehen. Aber man kann sie auch als Fühler einsetzen, und daher auch für die Kollisions-Sensorik verwenden. Beim Verbiegen steigt der Widerstand an. <br />
<br />
[[Bild:flexs_200.jpg|center]]<br />
<br />
Um zu messen, wird mit einem zweiten Widerstand ein Spannungsteiler aufgebaut, der dann mit einem Analog-Eingang einen Grad der Verbiegung erkennen läßt. Sie werden häufig auch Flexsensoren genannt. --><br />
<br />
==Incremental-Geber==<br />
Dienen zur Erfassung von Drehzahl bzw. der Messung von Wegstrecken<br />
===Drehgeber Sharp GP1A30 und GP1A38===<br />
<br />
[[Bild:gp1a30.jpg|center]]<br />
<br />
Beim Sharp GP1A30 und GP1A38 handelt es sich um Gabellichtschranken mit inkrementaler Drehgeberfunktion. Beide sind im Grunde von den Anschlüssen identisch, lediglich kann GP1A38 noch etwas höhere Drehzahlen messen. Im Gegensatz zu herkömmlichen Gabellichtschranken können mit dieser sowohl Drehzahl als auch Drehrichtung ermittelt werden. Notwendig sind dafür nur 2 digitale Ports. Verzichtet man auf die Auswertung der Drehrichtung, reicht nur ein Port.<br />
Der Sensor hat den Vorteil das die Signale bereits TTL kompatibel sind und direkt an ein Controllerboard angeschlossen werden können. Ein Beispielprogramm zu [[RN-Control]] findet man hier<br />
<br />
* [[Beispiel Drehzahlmessung mit RN-Control]]<br />
<br />
[[Bild:GP1A30.gif|center]]<br />
<br />
Die Auswertung inkrementaler Drehgeber ist recht einfach. Ein Ausgang liefert einen Impuls pro Markierung (Scheibe auf der Welle). Prüft man bei jedem Impuls (Flanke) noch gleichzeitig den aktuellen Pegel des zweiten Ausganges, so kann daraus die Drehrichtung abgeleitet werden. <br />
<br />
Der Signalverlauf an den Sensorausgängen ist phasenversetzt:<br />
<br />
[[Bild:inkremental1.gif|center]]<br />
<br />
<br />
[[Bild:drehgeber_an_rncontrol.gif|center|framed|Beispielschaltung wenn man lediglich die Drehzahl ohne Drehrichtung auswerten möchte. Als Widerstand hat sich 330 Ohm als gut erwiesen.]]<br />
<br />
==Optische Sensoren==<br />
===Helligkeit=== <br />
Die Hauptanwendung solcher Sensoren ist, den hellsten Fleck im Raum zu finden.<br />
Dies ist auch Teil vieler Roboterwettbewerbe. (Robo Callenge (2002 sic!), 'Ein Platz an der Sonne')<br />
<br />
Solche Sensoren können einfache [[LDR]]s oder [[Photodioden]] bzw. [[Phototransistoren]] sein.<br />
LDRs haben den Vorteil, dass sie relativ hoch aussteuern, der große Nachteil ist aber, dass diese Sensoren ziemlich Wärmeempfindlich und etwas träge.<br />
Photodioden und Phototransistoren haben den Vorteil, dass sie sehr genau sind, aber nicht besonders hoch aussteuern. Diese sollte man evtl. über einen OpAmp verstärken.<br />
<br />
[[Bild:fotowiderstand.jpg|center|framed|Ein typischer Fotowiderstand]]<br />
<br />
<br />
[[Bild:SFH300.jpg|center|framed|SFH300, ein typischer Phototransistor]]<br />
<br />
Die Suche nach dem Hellsten Fleck im Rraum ist wie ich finde ein gutes Einsteigerthema!<br />
<br />
===Distanzsensor IS471F===<br />
<br />
IS471F - Hindernisserkennung mit Infrarot Distanzsensor<br />
<br />
Das hier vorgestellte IC IS471F erlaubt eine einfach und sogar recht preisgünstige Hinternisserkennung per Infarot. Dazu muß im wesentlichen nur noch eine Infrarot-Diode an das IC angeschlossen werden. Das modulierte Licht wird von einem Gegenstand direkt auf das IC zurückgeworfen und somit das Hinterniss erkannt. Tageslicht/Fremdlicht stört den IS471 überhaupt nicht, da das Licht mit einer bestimmten Frequenz moduliert wird.<br />
<br />
<br />
[[Bild:is471.png|center]]<br />
<br />
<br />
Der normale Schaltungsaufbau sieht also wie oben abgebildet aus! In der Praxis kann das dann in etwa so aussehen:<br />
<br />
<br />
[[Bild:is471beispiel.jpg|center]]<br />
<br />
<br />
Das englische Datenblatt findet man im Roboternetz-Download-Bereich<br />
<br />
Die normale Reichweite ist in gewissen Grenzen abhängig von der Farbe des Hinternisses. In der Regel reicht es jedoch durchaus einige cm so das langsame Roboter durchaus sehr gut damit zurecht kommen. Durch besonders helle Infrarot LED´s und durch zusätzlich LED-Fassungen kann man die Reichweite erhöhen. Wem das noch nicht reicht, der kann über einen zusätzlichen Transistor die Strahlungsleistung der LED noch weiter erhöhen. <br />
<br />
[[Bild:is471verstaerkung.png|center]]<br />
<br />
<br />
<center><br />
http://www.roboternetz.de/bilder/mehrereis471.gif<br />
</center><br />
<br />
===Sharp Infrarotsensoren===<br />
<br />
Sharp hat eine ganz interessante Serie von Bausteinen herausgebracht mit denen ein Roboter sogar recht genau Entfernungen messen kann. Das Messergebnis ist nahezu unabhängig von der Farbe und Helligkeit des gemessenen Objektes. Die Ansteuerung ist sehr einfach, der Sensorausgang kann zum Beispiel direkt an einen analogen Eingang eines Mikrocontrollers angeschlossen werden. Die Sensoren sind unter den Roboter-Bastlern weit verbreitet. <br />
Bei vielen Händlern erhältlich kosten die Sensoren derzeit je nach Typ und Händlerspanne zwischen 13 bis 25 Euro.<br><br><br />
<br />
[[Bild:Sharpentfernungssensor.jpg|center]]<br />
<br />
<br />
Oft werden selbst in kleinen Roboter-Projekten mehrere dieser Sensoren genutzt da sie nur einen äußerst engen Erfassungsbereich haben. Sie eignen sich daher sehr gut zur Vermessung einer Umgebung, insbesondere dann wenn Sie drehbar auf einem Servo montiert werden. Als Kollisionsschutz sind sie wegen dem engen Winkel nur bedingt geeignet, zu diesem Zweck eignen sich zum Beispiel Ultraschallsensoren besser.<br />
Das Funktionsprinzip der Sensoren ist einfach. Der Sensor besteht aus Sender und Empfänger. Der Sender sendet einen Infrarot-Strahl aus, der vom Hindernis reflektiert wird. Je nach Entfernung trifft der reflektierte Strahl an einer unterschiedlichen Stelle auf den Empfänger (ein sog. Position Sensitive Device, PSD). Der Empfänger setzt den Auftreffpunkt in einen analogen Spannungswert um. Eine schöne Skizze dazu: <br />
<br />
[[Bild:sharpfunktion.jpg|center]]<br />
<br />
<br />
<br />
'''Einige der beliebtesten Bausteine sind:'''<br />
<br />
====Sharp GP2D12==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
Dies ist der am häufigsten eingesetzte Sharp Typ bei mobilen Robotern.<br />
<br />
<br />
[[Bild:GP2D12anschluss.gif|center]]<br />
<br />
====Sharp GP2YA21YK==== <br />
Distanz 10 - 80 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt <br />
<br />
====Sharp GP2D120====<br />
Distanz 4 - 30 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
====Sharp GP2Y0A02YK====<br />
Distanz 20 - 150 cm - Entfernung wird durch analoge Spannung am Ausgang übermittelt<br />
<br />
<center><br />
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/sensoren/gp2y0a02yk_diagramm.gif<br />
</center><br />
<br />
====Sharp GP2D02====<br />
Distanz 10 - 80 cm - Entfernung wird durch 8 Bit Digitalausgang übermittelt<br />
<br />
====Sharp GP2D150====<br />
Distanz 3-30 cm - 1 Bit Schaltausgang <br />
<br />
<br />
Datenblätter zu den oberen Sensoren findet man im Download-Bereich des Roboternetz, siehe unter [[#Weblinks]].<br />
<br />
Um die analogen Spannung der Sensoren in eine Entfernung umzurechnen, kann man sich mit Hilfe des Datenblattes oder einfacher Probemessungen Tabellen erstellen, welche dann vom Controller zur Umsetzung genutzt werden.<br />
Bequemer ist allerdings eine Näherungsformel:<br />
<br />
====Formel zur Entfernungsberechnung==== <br />
D = A/(X-B) <br />
<br />
D ist die Entfernung <br />
X ist der Ausgabewert des Sensors <br />
A ist die Steigung der Kurve A/X <br />
B ist der Offset der Kurve <br />
<br />
Die Konstanten A und B ermittelt man am besten über zwei Probemessungen: <br />
<br />
D und X sind die Entfernung und der Ausgabewert der ersten Messung (z.B. bei 20 cm) <br />
D' und X' sind die Entfernung und der Ausgabewert der zweiten Messung (z.B. bei 60 cm) <br />
<br />
A = ((X' - X) * D' * D) /(D - D' ) <br />
B = (D' * X' - D * X) /(D' - D) <br />
<br />
====GP2D12 Messkurve====<br />
<br />
[[Bild:gpd12kurve.gif|center]]<br />
<br />
====GPD120 Messkurve====<br />
<br />
[[Bild:gpd120kurve.gif|center]]<br />
<br />
==Ultraschall Sensoren== <br />
===Ultraschallsensoren SRF04===<br />
Die Firma '''Devantech''' hat eine Serie von sehr günstigen und kleinen Ultraschallsensoren entwickelt, die sich im Bereich "autonome Robotersysteme" durchgesetzt haben. Sie sind sehr verbreitet, da sie auch für "Hobby-Robotiker" erschwinglich sind und es sich nicht lohnen würde vergleichbare Module selber zu bauen, da diese meistens ungenauer und teurer wären.<br />
<br />
Bekannt wurde die Serie durch den '''SRF04'''. Mit seinen kleinen Abmessungen, der niedrigen Stromaufnahme und der hohen Genauigkeit ist er für kleine Messaufgaben im Entfernungsbereich von 3cm bis 3m gut geeignet. Der SRF04 kann einen 3cm dicken Besenstiel in 2m Entfernung erkennen und wird durch ein [[PWM]]-Signal ausgewertet.<br />
<br />
[[Bild:srf_04a.jpg]] [[Bild:srf_04.jpg]]<br />
<br />
<br />
===Ultraschallsensor SRF05===<br />
Der Nachfolger des SRF04 ist der neuer SRF05. Er besitzt noch eine etwas höhere Reichweite bis 4 Meter. Zudem besitzt er neben dem kompatibel Mode zu SRF04 noch eine Betriebsart bei der er über einen einzigen Port (Pin) gesteuert wird. Das heißt sowohl der Start der Messung und das Ergebnis wird über die gleiche Leitung übertragen. [[Ultraschall SRF05 an RN-MiniControl|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:Srf05mode1.jpg|center]] <br />
<br />
<br />
[[Bild:srf05mode2.gif|center]]<br />
<br />
<br />
[[Bild:srf05mode2diagram.gif|center]]<br />
<br />
<br />
===SRF08===<br />
Die Alternative zu SRF04 und SRF05 ist der beliebte '''SRF08''' und dessen Nachfolger '''SRF10''', der nun über den [[I2C]]-Bus ausgewertet werden kann und über eine Reichweite von 3cm bis 6m verfügt. Er hat eine noch kleinere Stromaufnahme und zusätzlich befindet sich auf der Platinenfront ein Fotowiderstand(LDR) dessen Lichtmesswerte sich ebenfalls über den [[I2C]]-Bus auswerten lassen. Durch den SRF08 wird es möglich auch bis zu 16 Mehrfachechos, von weiter hinten gelegenen Gegenständen, auszuwerten, die bei dem SRF04 ignoriert wurden. Über den [[I2C]]-Bus kann man die Messwerte in cm, zoll und in der Laufzeit µs auslesen und spart sich somit die externe Auswertung der Laufzeit, wie bei dem SRF04. Weiterhin können insgesamt 16 SRF08-Module an einen [[I2C]]-Bus angeschlossen werden.<br />
<br />
[[Bild:srf08_a.jpg]] [[Bild:srf08_b.jpg]]<br />
<br />
===SRF08 Programmbeispiel===<br />
SFR08 Programm Beispiel mit [[Bascom]]<br />
Über die grundsätzliche Behandlung des [[I2C]]-Bus mit [[Bascom]] kann man [[I2C|hier]] nachlesen. <br />
<br />
Const Sf08_adr_0 = &HE0 ' I2C Adresse<br />
Const Sf08_c_range = 100 ' Reichweite<br />
Const Sf08_c_gain = 1 ' Empfindlichkeit<br />
<br />
Die Adresse ist der Default-Wert für den Sensor, und kann eingestellt werden. <br />
Range und Gain sind anzupassen, die angegeben Werte sind aber mal grundsätzlich verwendbar.<br />
<br />
'''Setup'''<br />
Nach dem Reset sind einmal Range und Gain zu setzen.<br />
<br />
'''Setzen Range'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' register "range"<br />
I2cwbyte Sf08_c_range <br />
I2cstop<br />
<br />
'''Setzen Gain'''<br />
<br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 1 ' register "gain"<br />
I2cwbyte Sf08_c_gain <br />
I2cstop<br />
<br />
'''Abfrage Trigger'''<br />
<br />
Die Abfrage soll laut Beschreibung in zwei Schritten erfolgen, zwischen denen ca 70 mS gewartet werden soll. Diese Zeit braucht das Gerät zum Messen. <br />
<br />
'''Trigger''' <br />
I2cstart<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 0 ' register "Trigger"<br />
I2cwbyte 81 ' Meßwert in Zentimetern<br />
<br />
Waitms 70 <br />
<br />
'''Ergebnis abholen'''<br />
<pre><br />
DIM Lsb as Byte<br />
DIM Msb as Byte<br />
DIM IVal as word<br />
<br />
I2cstart ' Repeated Start<br />
I2cwbyte Sf08_adr_0 ' Device I2C Adresse<br />
I2cwbyte 2 ' Meßwert US<br />
<br />
I2cstart ' repeated Start<br />
I2cwbyte Sf08_adr_0 + 1 ' Device I2C Adresse READ!<br />
I2crbyte Msb , Ack ' Bit 8-15<br />
I2crbyte Lsb , Nack ' Bit 0-7<br />
I2cstop<br />
<br />
Ival = Makeint(lsb , Msb) ' umwandeln in Word (16 Bit)<br />
</pre><br />
<br />
=== SRF10 Ultraschallsensor ===<br />
SRF10 ist quasi der Nachfolger von SRF08. Er bietet die gleiche Leistung und ist sogar gegenüber Spannungschankungen noch etwas unempfindlicher als der Vorgänger. Der größte Vorteil besteht jedoch darin das er ca. 1/3 kleiner als sein Vorgänger ist. <br />
<br />
[[Bild:srf10foto1.jpg]] [[Bild:srf10foto2.gif]]<br />
<br />
Die technischen Daten sind ähnlich:<br />
* Betriebsspannung: 5V <br />
* Stromaufnahme: ca. 3mA Standby, ca. 15mA während des Messens Frequenz: 40KHz <br />
* Maximale Reichweite: 6 m <br />
* Minimale Reichweite: 4 cm <br />
* Messwerterfassung: intern, kein externer Controller zur Zeitmessung notwendig <br />
* Interface: Standard – I2C (passend zu zahlreichen Controllerboards, z.B. RN-Control) <br />
* Ausgabeformat: µs, cm oder Zoll <br />
* Feature: Analogverstärkung 40 - 700 (einstellbar, 16 Stufen) <br />
* Abmessungen: 32mm x 15mm x 10mm <br />
* Hersteller: Devantech Ltd<br />
<br />
<br />
*[[Ultraschall_SRF10_an_RN-Control|Programmbeispiel in Bascom]]<br />
<br />
[[Bild:srf10ausbreitung.gif|center]]<br />
<br />
=== Vergleichstabelle ===<br />
<div align="center"><br />
{|{{Blaueschmaltabelle}}<br />
|<br />
|'''SRF10'''<br />
|'''SRF08'''<br />
|'''SRF05'''<br />
|'''SRF04'''<br />
|-<br />
|'''Betr. Spannung'''<br />
|5V<br />
|5V<br />
|5V<br />
|5V<br />
|-<br />
|'''Stromaufnahme'''<br />
|3mA typ,<br> 15mA max.<br />
|3mA typ,<br> 15mA max.<br />
|4mA typ,<br> 30mA max.<br />
|30mA typ,<br> 50mA max.<br />
|-<br />
|'''US Leistung'''<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|100 – 150mW<br />
|-<br />
|'''Frequenz'''<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|40kHz<br />
|-<br />
|'''Bereich'''<br />
|72&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|55&ordm;<br />
|-<br />
|'''Reichweite'''<br />
|4cm - 6m<br />
|3cm - 6m<br />
|3cm - 4m<br />
|3cm - 3m<br />
|-<br />
|'''Triggerimpuls'''<br />
|<br />
|<br />
|10µs min.<br />
|10µs min.<br />
|-<br />
|'''Abmessung in mm'''<br />
|32 x 15 x 10<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|43 x 20 x 17<br />
|-<br />
|'''Interface'''<br />
|I2C<br />
|I2C<br />
|TTL Impuls<br />
|TTL Impuls<br />
|-<br />
|'''Feature'''<br />
|Minimodul<br />
|Lichtsensor<br />
|SRF04 Modus<br />
|<br />
|-<br />
|'''Preis ca. *'''<br />
|44,00 €<br />
|44,00 €<br />
|22,00 €<br />
|25,00 €<br />
|}<br />
</div><br />
<br />
'''*''' Der Preis dient nur zum vergleich untereinander, nicht als Referenz !<br />
<br />
==Kompaß== <br />
===Kompaß-Modul CMPS03===<br />
Laut der Doku ist diese Modul speziell für die Bedürnisse von Robotern gestaltet worden. Es mißt seine Lage relativ zum Erdmagnetfeld und liefert diesen Wert<br />
* Als PWM-Signal <br />
* Über I2C entweder 0-255 als Byte oder<br />
* 0-3599 als 16-Bit Wert (MSB first)<br />
<br />
In der vorliegenden Doku ist eine fixe I2C-Adresse von 0xC0 angegeben. Was leider noch fehlt, sind Angaben, ob und wie diese Adresse geändert werden kann.<br />
<br />
Bei waagrechter Montage ist das also ein Kompaß, bei senkrechter Montage dieser Module kann man auch die Neigung in Nord-Süd-Richtung messen. Hierzu sind 2 Module nötig, die zueinander um 90° gedreht angeordnet sein müssen. Die Neigung in Ost-West-Richtung zu messen, ist dagegen leider nicht möglich.<br />
<br />
Das Ganze ist eine Anwendung des Philips-KMZ51 Magnet-Feld-Sensors mittels eines PIC16F872<br />
<br />
Gelegentlich sollte das Modul kalibriert werden. Das kann über den I2C-Bus, aber auch mittels einen Pins am Modul initiiert werden. Dann muß das Module langsam um 360 Grad gedreht werden. Dabei nimmt das Modul 4 Meßpunkte auf und speichert sie im EEPROM. <br />
<br />
Ein Beispielprogramm findet man hier:<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
<br />
[[Bild:cmps3pin.jpg|center]]<br />
<br />
==Beschleunigung==<br />
Auch Gyroskop-Sensoren genannt.<br />
Es gibt grundsätzlich zwei Arten:<br />
Normale Beschleunigungssensoren, die aber wiederum n-dimensional ausgelegt sein können<br />
und<br />
Drehbeschleugnigungssensoren, die über eine bestimmte Drehrichtung die Winkelbeschleunigung messen.<br />
Dabei wird eine Referenzspannung über einen bestimmten Wert verändert, soweit der Sensor eine Veränderung der Lage erkennt. <br />
Typische Anwendungen sind im Modellbau Gyro-"Taillocks", die in Hubschraubern die Heckstabilität verbessern,<br />
ESP-Systeme in Autos, die über den Lenkeinschlag und die Geschwindigkeit ausrechnen können, <br />
ob das Fahrzeug seitlich driftet, oder sogar schleudert.<br />
Moderne Piezo-Sensoren sind nur noch Chip-gross und können direkt in Schaltungen integriert werden.<br />
Es wird meist dabei über die Corioliskraft die Veränderung gemessen und als Sensoroutput gemeldet.<br />
Die Schwerkraft hat dabei nur untergeordnete Rolle, meist sogar eine störende - <br />
der Heli soll im Modellbau ja auch auf dem Kopf stabil fliegen.<br />
<br />
==Temperatur== <br />
===NTCs===<br />
===PTCs===<br />
===Temperatur-Sensor LM75===<br />
<br />
[[Bild:lm75.gif|center]]<br />
<br />
Dieser Chip von National Semiconductors kann die Umgebungstemperatur mit einer Genauigkeit von 0.5<sup>o</sup> Grad Celsius messen. Das angegebene Bereich ist -25<sup>o</sup> bis 100<sup>o</sup> C. Es wird zweierlei geboten:<br />
* Ein Schaltausgang - Wenn man also z.B. einen Ventilator einschalten möchte<br />
* I2C - Der obere Teil der Adresse ist fix 0x9n, die Bits 1-3 kann man mit Jumper einstellbar machen oder fest verdrahten. <br />
<br />
Durch einen einfachen I2C-Lesebefehl kann man die Temperatur einlesen (16-Bit), das Format ist allerdings etwas tricky. Das erste Byte (8-Bit) ist die Temperatur in ganzen Grad, als normales signed char, vom zweiten Byte gibt das MSB an, ob noch 0.5<sup>o</sup> '''dazuzuzählen''' sind (also auch, wenn vorne eine negative Zahl steht) <br />
<br />
Der Grund ist der: die vorzeichenbehaftete 9-Bit Zahl, die da linksbündig in zwei Datenbytes übertragen wird, gibt eigentlich an, wieviel 0.5 Grad - Einheiten gemessen wurden. Rein rechnerisch wäre also Temperatur = Wert * 0.5, das müßte man aber als float durchführen oder erweitern<br />
<br />
===Programm-Beispiel für LM75===<br />
Der LM75 wird über den [[I2C]]-Bus angesprochen<br />
In BasCom, wo es ja keine signed char gibt, wird das Interpretieren auf sehr unterschiedliche Art empfohlen. <br />
<br />
Ich empfehle:<br />
<br />
dim Ival as integer<br />
dim Msb as byte<br />
dim Lsb as byte<br />
I2cstart<br />
I2cwbyte &H91 ' Lese-adresse ! <br />
If Err = 1 Then<br />
I2cstop ' kein ACK vom LM75 --> irgendein Fehler<br />
Ival = 9999 ' Zeichen, daß der Wert ungültig ist !<br />
Else<br />
I2crbyte Msb , Ack<br />
I2crbyte Lsb , Nack<br />
I2cstop<br />
If Msb.7 = 1 Then<br />
Ival = Makeint(msb , &HFF) ' auffüllen mit den Vorzeichen bits<br />
Else<br />
Ival = Makeint(msb , &H00) ' positiv, also bleibt es so<br />
End If<br />
Ival = Ival * 10 ' erweitern <br />
If Lsb.7 = 1 Then<br />
Ival = Ival + 5 ' fünf Zehntel Grad dazu <br />
End If<br />
End if<br />
<br />
das ergibt die Temperatur in Zehntel-Grad (Natürlich nur, wenn's keine Fehler gab).<br />
<br />
==Resistive Sensoren==<br />
...<br />
==Kapazitive Sensoren==<br />
<br />
Ein Beispiel für kapazitive Sensoren sind Luftfeuchtigkeitsmesser, die ihre Kapazität entsprechend der Luftfeuchtigkeit ändern. Das Auslesen der Kapazität kann prinzipiell über das Ausmessen von Ladekurven geschehen. Dies ist jedoch bei kleinen Kapazitäten nicht praktisch durchführbar, weshalb man in diesem Falle meist einen Schwingkreis baut, dessen Frequenz man dann misst und so dann zusammen mit der bekannten Induktivität der Spule die Kapazität des Kondensators ausrechnen kann.<br />
<br />
==Induktive Sensoren==<br />
Induktiver Näherungsschalter<br />
<br />
Sensoren die ihre Induktivität entsprechend der Messgröße ändern können auch mit Hilfe eines Schwingkreises mit bekannter Kapazität ausgemessen werden.<br />
<br />
...<br />
<br />
==Piezoelektrische Sensoren==<br />
Hier ist ein Experiment dargestellt das die Funktion von Piezowandlern demonstriert.<br />
<br />
Drückt man auf eine längliche Glasplatte (Mikroskopträger Länge 76mm), die an den Enden auf je einem Piezo Wandler gelagert ist, dann ergeben sich Signale, die von den Kräften auf die Wandler abhängig sind. <br />
<br />
Die Summe der beiden Kräfte entspricht der Gesamtkraft. Das Verhältnis der beiden Kräfte entspricht dem Verhältnis der Abstände des Druckpunktes zum Wandler. <br />
<center><br />
http://www.roboternetz.de/wissen/images/6/66/Piezowandler.jpg<br />
</center><br />
Im Versuch wurde mit der Frequenz von ca. 4Hz (0,5s/div) von einem Ende bis zum anderen auf die Platte gedrückt. (Tonleiter). Die Signale der beiden Wandler sind im Oszillogramm aufgetragen und die Folge der Druck-Positionen ist auf den ersten Blick schon mal nachvollziehbar.<br />
<br />
==PIR Passiv Infrarot Sensoren==<br />
Hier handelt es sich um Passiv-Infrarot-Bewegungsmelder. Bewegungsmelder regieren beim Eintritt einer Person (Tier) in das Erfassungsfeld des Sensors. Die Anwendungsmöglichkeiten sind nahezu unbegrenzt, man kennt die Technik ja von vielen Terrassenlampen, welche sich beim vorbeigehen automatisch einschalten.<br />
Reagiert wird also auf Die Körperwärme einer sich im Erfassungsfeld bewegenden Person.<br />
[[Bild:pir.jpg|right]]<br />
Zum Prinzip: <br />
Wärmestrahlen, die einen Erfassungsvorgang auslösen, liegen im Infrarot-Bereich des Wellenspektrums. In diesem Bereich gibt der menschliche Körper seine Wärmestrahlung ab. Leuchtmittel wie Glüh- , Halogen- und Entladungslampen, die für eine Strahlung im sichtbaren Bereich um 0,555 μm entwickelt wurden, geben jedoch auch einen erheblichen Teil an Wärmestrahlung im Infrarot-Bereich ab.<br />
Im Spektrum oberhalb des sichtbaren Licht, ab 0,780 μm, beginnt der Infrarot-Bereich. Die Wellenlänge<br />
dieser IR-Strahlung ist abhängig von der Temperatur eines Körpers. Die Wärmestrahlung<br />
des Menschen hat ihr Maximum zwischen 9 und 10 μm im Infrarot-Bereich.<br />
Diese Tatsache nutzt der PIR Sensor mittels sogenannter pyroelektrischer IRDetektoren, welche eine hohe Empfindlichkeit im langwelligen Infrarot-Bereich aufweisen. Die Infrarot-<br />
Strahlung verhält sich ähnlich wie sichtbares Licht. Sie kann reflektiert und durch Linsen<br />
gebündelt werden.<br />
Basis eines solchen IR-Detektors (Sensors) sind Lithium-Tantalatkristalle. Diese Kristalle erzeugen,<br />
bei Wärmeänderung (positive oder negative Temperaturänderung), eine elektrische Spannung.<br />
Die von den Kristallen abgegebene Spannung liegt im Bereich von einigen μV (μV = millionstel Volt) und ist von folgenden Bedingungen abhängig: <br />
* Der Intensität der Wärmequelle (Temperatur und Größe)<br />
* Dem Umgebungsmedium (Temperatur, unterschiedliche Luftfeuchtigkeit)<br />
* Der Entfernung zwischen Wärmequelle und IR-Sensor<br />
* Der Bewegungsgeschwindigkeit und Bewegungsrichtung der Wärmequelle<br />
* Der Empfindlichkeit des PIR-Elementes (frequenzabhängiges Bandpaßverhalten mit Maximum bei ca. 0,1 Hz)<br />
<br />
Zur Unterdrückung von Einflüssen aus der Umgebung (übliche wetterbedingte Temperaturänderungen), sind in jedem Sensor 2 Kristalle antiparallel geschaltet. <br />
Einer der Kristalle gibt, bei Auftreffen von Wärmestrahlung einen positiven, der andere einen negativen Spannungsimpuls ab. Wärmeänderungen die gleichzeitig und mit gleicher Intensität auf beide Kristalle einwirken lösen so keinen Erfassungsvorgang aus, denn die beiden Impulse heben sich gegenseitig auf. Dadurch ist ein Auslösen bei Wärmeänderungen der Umgebung weitgehend ausgeschlossen.<br />
Anders verhält es sich bei schnellen Bewegungen. Die Lithiumtantalat-Kristalle geben, entsprechend<br />
der Bewegung und der dadurch hervorgerufenen Wärmeänderung im Erfassungsfeld, ihre<br />
Impulse zeitversetzt ab. Die beiden Impulse addieren sich zu einer Wechselgröße mit höherer<br />
Signalamplitude. Dieses elektrische Ausgangssignalist proportional der Wärmeänderung und führt zur Meldung einer Bewegung.<br />
<br />
==Autoren==<br />
* [[Benutzer:PicNick|PicNick]]<br />
* [[Benutzer:Frank|Frank]] <br />
* [[Benutzer:Dennis.strehl|Dennis.strehl]]<br />
* [[Benutzer:Florian|Florian]]<br />
* Topic<br />
* [[Benutzer:Manf|Manf]]<br />
<br />
==Siehe auch==<br />
* [[Navigation]]<br />
* [[Sensoren]]<br />
* [[Graycode]]<br />
* [[Ultraschall SRF10 an RN-Control]]<br />
* [[Ultraschall SRF05 an RN-MiniControl]]<br />
* [[Bascom und Kompass CMPS03]]<br />
<br />
==Weblinks==<br />
*[http://www.ikm.uni-karlsruhe.de/forschung/pzt_webseiten/de/grundlagen/pyro.html Piezoelektrische Sensoren]<br />
*[http://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=2 Datenblätter im Download-Bereich des Roboternetz]<br />
<br />
<br />
[[Category:Robotikeinstieg]]<br />
[[Category:Grundlagen]]<br />
[[Category:Elektronik]]<br />
[[Category:Sensoren]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Operationsverst%C3%A4rker&diff=6839Operationsverstärker2006-04-15T07:28:07Z<p>Manf: /* Verstärker */</p>
<hr />
<div>== Operationsverstärker Grundschaltungen Differenzverstärker ==<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--> <br />
<br />
== Verstärker ==<br />
<br />
Häufig müssen Sensorsignale in der ersten Stufe der Verarbeitung verstärkt werden und bei Spannungen von Meßbrücken wird die verstärkte Differenzspannung als Spannung gegen Masse benötigt. Schaltungen mit Operationsvertärkern die diese Aufgabe erfüllen werden hier dargestellt. <br />
<br />
Operationsverstärker werden zunächst als ideale Operationsverstärker betrachtet, das heißt sie haben eine unendlich hohe Verstärkung. Die Ausgangsspannung ist damit um einen sehr großen Faktor größer als die Differenz der Eingangsspannungen. In Wirklichkeit liegt der Faktor immerhin bei 10<sup>5</sup> bis 10<sup>6</sup>. <br />
<br />
Wird der Ausgang über einen Widerstand auf den negativen Eingang zurückgekoppelt, dann bewirkt diese Gegenkopplung, dass die Differenzspannung an den Eingängen (Ue+ - Ue-) zu null wird und die Verstärkung der Schaltung aus Operationsverstärker und Gegenkopplung endlich wird. Solche Schaltungen haben dann eine sehr präzise Verstärkung deren Wert nur durch den Wert der Widerstände bestimmt ist. Für die Betrachtung von idealen Operationsverstärkern gilt außerdem, dass in die Eingänge des Operationsverstäkers kein Strom fließt und dass der Ausgang den Innenwiderstand null hat. <br />
<br />
<br />
[[Bild:OperationsverstaerkerBild1.gif.gif]] <br />
<br />
Bild 1 zeigt die Schaltung für positive Verstärkung Bild 2 die Schaltung für negative Verstärkung. <br />
<br />
Die Beiden Schaltungen haben die gleiche Konfiguration, es wird nur jeweils der andere Eingang an Masse geschaltet. Mit U1 am positiven Eingang und U2 am negativen Eingang erhält man in beiden Fällen für die Ausgangsspannung Ua den in Gleichung 2 angegebenen Wert. <br />
Setzt man U1 oder U2 gleich 0, dann erhält man die Ausgangsspannung für den positiven und den negativen Verstärker. <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker ==<br />
<br />
Um die Differenz zwischen zwei Spannungen am Ausgang gegen Masse zu erhalten wird die Schaltung in Bild 2 um einen Spannungsteiler am + Eingang erweitert siehe Bild 3. Die Eingangsspannung am Spannungsteiler heißt nun U1 und die Spannung am + Eingang ist Ue+.<br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild3.gif]] <br />
<br />
<br />
'''Damit gilt für die Schaltung in Bild3:''' <br />
<br />
Ua = Ue+ *(R1 + R2) / R2 - U2 * R2 / R1 <br />
<br />
Ua = ( Ue+ *(R1 + R2) / R2 - U2) * R2 / R1 <br />
<br />
mit U1 = Ue+ * R2 / (R1 + R2) vereinfacht sich der Ausdruck zu: <br />
<br />
'''Ua = (U1 - U2) * R2/R1'''<br />
<br />
<br />
Das heißt, dass die Ausgangsspannung gerade die Differenz der Eingangsspannungen mal dem Widerstandsverhältnis R2/R1 ist. Für große Widerstandswerte ist die Schaltung in Bild 3 schon einsetzbar, bei hoher Verstärkung und kleinen Werten für R1 ist es besser, die Eingänge hochohmig zu machen. <br />
<br />
<br />
Es wäre vorteilhaft die Messspannungen direkt an die hochohmigen Operationsverstärker-Eingänge zu legen. Beim + Eingang ist es ja die geteilte Spannung U1 die am + Eingang anliegt. Legt man sie direkt, ohne Teiler an den + Eingang, und verstärkt die Spannung U2 um den gleichen Faktor durch einen Verstärker nach Bild 2, dann ergibt sich am Ausgang wieder die Differenz von U1-U2 verstärkt um den Faktor (R1+R2)/R1. <br />
<br />
'''Für R1=R2 ergibt sich damit für die Schaltung in Bild 4''' <br />
<br />
'''Ua = 2 * (U1 - U2)''' <br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!-- </div> --><br />
<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Differenzverstärker mit einstellbarer Verstärkung ==<br />
<br />
Die Differenzverstärkerschaltung mit vier gleichen Widerständen R2 ist sehr gut für die Realisierung einer präzisen Verstärkung geeignet. Zur Erhöhung der Verstärkung ist es von Vorteil, wenn der Wert der Verstärkung mit nur einem Widerstand eingestellt werden kann. Hierfür wird ein Widerstand mit dem Wert R1 zwischen den Minus-Eingängen der beiden Verstärker eingefügt. Die Schaltung entspricht dann der Anordnung in Bild 5, machmal wird sie auch in der Form von Bild 6 dargestellt. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild5.gif]] <br />
<br />
Hier überbrückt der Widerstand R1 die beiden Widerständ am Ausgang des linken Operationsverstärkers. Diese Kombination aus drei Widerstanden kann man zur Berechnung der Verstärkung von einem Stern in ein Dreick umwandeln dann hat jeder der beiden Widertände die nicht mit dem Ausgang verbunden sind den Wert R1*R2/(R1+2R2). Daraus errechnet sich die Verstärkung zu:<br />
<br />
'''Ua = 2*(U1 -U2) * (R1 + R2) / R1''' <br />
<br />
Ein einfacher Ausdruck der nur von der Differenz der Eingangsspannugen abhängt und der mit Änderung von R1 in der Amplitude einstellbar ist.<br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--div style="border:2px solid #ffd700; margin-left:auto; margin-right:auto; padding:0.3em; text-align:left; max-width:20em;"--><br />
<br />
== Symmetrische Differenzverstärker ==<br />
<br />
Nun ist die Schaltung fast perfekt, in einigen Fällen ist jedoch auch die Laufzeit der Signale wichtig und es fällt auf, dass die beiden Eingangsgrößen U1 und U2 unterschiedlich lange Wege durch die Schaltung nehmen. <br />
<br />
Um dies auszugeichen geht man auf die Schaltung in Bild 3 zurück und versieht beide Eingänge in gleicher Weise mit Verstärkern nach Bild 1 und erhält die Konfiguration in Bild 7. Um die vielen Widerständ nicht einzeln zu benennen wird hier eine aus dem Farbcode abgeleitete Bezeichnung verwendet R1 = braun und R2 = rot. <br />
<br />
[[Bild:Operationsverst%C3%A4rkerBild7.gif]] <br />
<br />
In der ersten Stufe darf man bei dieser Anordnung die Verstärkung nicht zu groß wählen damit sie nicht intern übersteuert wird. Soll beispielsweise die Spannug 5V mit 5.01V verglichen und das Ergebnis 100fach verstärkt werden, dann kann man schlecht in der ersten Stufe die Spannungen auf 500V ud 501V verstärken. Man kann dann in der der ersten Stufe die Verstärkung auf 1 oder wie hier auf 2 beschränken und die Verstärkung in der zweiten Stufe realisieren. <br />
<br />
Besser ist, wenigsten einen Teil der benötigten Verstärkung schon in der ersten Stufe einzubringen. Das gelingt weitgehend ohne interne Übersteuerung, wenn man die Bezugspegel der ersten Stufe nicht auf Masse setzt, sondern wie in der Schaltung nach Bild 8 mit der Kopplung der beiden Bezugspegel über den Widerstand R1 miteinander verbindet. Der Bezugspegel ist dann der Mittelwert der beiden Engangsspannungen und der wirksame Widerstand bei jedem Verstärker ist 0,5 * R1. <br />
<br />
Im oben angeführten Beispiel mit 5V und 5,01V ist der Mittelwert gerade 5,005V. <br />
Damit erhält man mit (0,5 * R1 + R2) / (0,5 * R1) = 100 die Ausgangsspannungen 5,505V und 4,505V aus denen in der letzten Stufe die gewünschte Differenz von 1V gewonnen wird. <br />
Für die Schaltung in Bild 8 gilt:<br />
<br />
'''Ua = (U1 - U2) * (R1 + 2*R2) / R1'''<br />
<br />
<br />
So gibt es beispielsweise für die Auswertung von Messbrückenschaltungen immerhin schon einmal 5 Differenzverstärker, die mit ihren unterschiedlichen Schaltungen und Darstellungsweisen immer wieder für Verblüffung sorgen können. <br />
<br />
Manf<br />
<!-- Das funktioniert nicht mit allen Browsern, auskommentiert (SprinterSB) --><br />
<!--/div--><br />
<br />
[[Kategorie:Elektronik]]<br />
[[Kategorie:Grundlagen]]</div>Manfhttps://rn-wissen.de/wiki/index.php?title=Datei:OperationsverstaerkerBild1.gif.gif&diff=6838Datei:OperationsverstaerkerBild1.gif.gif2006-04-15T07:25:52Z<p>Manf: </p>
<hr />
<div></div>Manfhttps://rn-wissen.de/wiki/index.php?title=Bezugsquellen&diff=4996Bezugsquellen2006-01-09T14:26:26Z<p>Manf: </p>
<hr />
<div>{| {{Blaueschmaltabelle}}<br />
|Hier können Bezugsquellen eingetragen werden! Bitte aber pro Eintrag nicht mehr als '''2 bis 3 Zeilen''', ansonsten muss es ein Moderator kürzen! Dieser Artikel soll nicht als Werbeplattform mißbraucht werden, für Werbung gibts andere [[RN-Wissen:Site_support|Möglichkeiten]]. Er soll eine Hilfe für Bastler sein! <br />
Bitte auch keine Bewertungen der Lieferanten vornehmen, das ist Sache der Leser & Bastler indem Sie vergleichen.<br />
|}<br />
<br />
<br />
<br />
==Elektronikbauteile==<br />
<br />
;Conrad - http://www.conrad.de: Fast das gesamte Elektronikprogramm<br />
<br />
;CSD-Electronic - http://www.csd-electronics.de/: Elektronik<br />
<br />
;Distrelec Gruppe - http://www.distrelec.com: Diverse Bauelemente (aktiv, passiv, Microcontroller), Literatur, PC-Komponenten, usw.<br />
<br />
;Farnell In One - http://de.farnell.com/: elektronische Bauelemente (aktiv, passiv, Microcontroller), Sensoren, Literatur, Entwicklungskits, Kabel, Steckverbinder, Werkstattbedarf. Auch für privat. Sehr schnell.<br />
<br />
;Reichelt - http://www.reichelt.de: Diverse Bauelemente (aktiv, passiv, Microcontroller), Literatur, PC-Komponenten, Lichttechnik, Messtechnik, Software, Kabel, Steckverbinder, Werkstattbedarf, Werkzeug, Mindestbestellwert: 10 Euro<br />
<br />
;RS-Components - http://www.rsonline.de: Bauelemente: (aktiv, passiv, Microcontroller), Literatur, PC-Komponenten, Lichttechnik, Messtechnik, Software, Kabel, Steckverbinder, Werkzeug<br />
<br />
==Sensoren==<br />
<br />
;Robotikhardware - http://www.robotikhardware.de: Drehgeber, Sharp-Entfernungssensoren, Neigungssensoren, Temperatursendoren usw. speziell für Robotik-Bastler<br />
<br />
;Micromaus - http://www.micromaus.de: Sharp-Entfernungssensoren, Farbsensoren, Feuchtesensoren, Flexsensoren, Beschleunigungssensoren, Drucksensoren usw.<br />
<br />
==Motoren== <br />
<br />
;mir-elektronik - http://www.mir-elektronik.de: Schrittmotoren, Endstufen, Bauteile, Literatur und Sonderposten<br />
<br />
==Platinen==<br />
<br />
;Multipcb - http://www.multipcb.de: Platinenservice für gewerbliche Kunden<br />
<br />
;PCB-Pool - http://pcb-pool.com: Platinenservice für private und gewerbliche Kunden<br />
<br />
==Materialien==<br />
<br />
;Metall Store - http://www.metallstore.de/: Schrittmotoren, (Kugel-)Lager, diverse Bauelemente aus Alu, VA, Messing, Bronze, Kupfer, Werkzeuge, Spezialschrauben<br />
<br />
;Modulor - http://www.modulor.de/: Diverse Materialien Kunststoff, Gummi, Papier, Pappe, Holz, Metall, Textilien, Plexiglas ...<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
[[Kategorie:Praxis|!]]</div>Manf