Startseite
Schweden
Atmega Projekte
Elektronik Basteleien
CNC-Fräsmaschine
NIXIE Uhren
Dekatron A101
Kontakt
Ini mit AtTiny

Induktiver Näherungsschalter mit AtTiny45

Für eines meiner Bastelprojekte benötigte ich kürzlich einen Induktiven Näherungsschalter. Meine Recherche im www ergab, das es die Dinger wie Sand am Meer zu kaufen gibt. Allerdings sind die doch recht teuer und ausserdem arbeiten die in der Regel mit 24V. Also, Bastelkiste auf und selber bauen. Der Hauptgrund für einen Eigenbau war auch hier wieder der Spass am Basteln und am zugewinn von Erfahrungen.

Der Grundsätzliche Aufbau ist bei den käuflichen Induktiven Näherungsschaltern eigentlich überall gleich. Ein Schwingkreis mit einer Spule erzeugt ein Magnetfeld, das bei Annäherung eines metallischen Objekts gestört wird. Daraus resultiert eine Amplitudenänderung so wie eine Frequenzverstimmung des Schwingkreises. Ich entschied mich für den Aufbau des Schwingkreises in Colpitts-Oszillator Bauweise.

Dieser Oszillator schwingt recht zuverlässlich mit ca.48kHz. Ursprünglich war mein Plan wie auch bei den Handelsüblichen Induktiven Näherungsschaltern die Amplitudenänderung des Schwingkreises auszuwerten. Eine Überprüfung mit dem Oszilloscop ergab jedoch das die Amplitudenänderung verschwindend gering war und einer recht aufwändigen verstärkung bedurft hätte. Die Frequenzänderung hingegen war beträchtlich immerhin brach die Frequenz bei Annäherung eines eines Stahlgegenstandes an die Spule bis auf 0mm von ca.48kHz auf ca.46kHz ein. Und das bei verwendung einer SMD Spule in Stabausführung. Eine Spule mit offenem Schalenkern ist für diesen Einsatzzweck um längen besser, da das Magnetfeld gebündelter aus der Spule austritt und somit auch weiter in den Raum reicht. Bei meiner nächsten Bestellung beim Händler meines vertrauens werde ich mir zum testen mal so eine Spule mitbestellen. Vorläufig muß aber der kleine Chipcoil reichen.

Nach einigen Tests landete ich bei obiger Schaltung. Diese ist sicherlich nicht ganz optimal, da der 2.Transistor über seine Basis-Emitterstrecke die Amplitude des Schwingkreises auf ca.0,7V begrenzt. Hier wäre es besser noch einen Basiswiderstand einzusetzen. Ausserdem darf der Kollektorwiderstand des 2.Transistors ruhig etwas größer gewählt werden, da als anschließendes Bauteil der hochohmige Eingang eines Microcontrollers folgt, das reduziert die Leistungsaufnahme der Schaltung doch beträchtlich. Des weiteren “zerrt” die Schaltung ganz schön an der Versorgungsspannung. Hier sollte man besser noch einen Pufferkondensator einsetzen. Mir ging es allerdings um Bauteile sparen um das ganze Ding in SMD-Bauweise so klein wie möglich zu bauen und die Schaltung funktioniert auch so ganz hervorragend.

Nach dem ich alle Tests zunächst mit bedrahteten Bauteilen auf meinem Steckbrett durchgeführt hatte ging es nun an´s umsetzen in SMD. Also mit Sprintlayout eine Platine entwerfen,

Platinchen belichten, ätzen und bestücken. Hier das Ergebnis:

Als Auswerteinheit habe ich hier einen AtTiny45 verwendet dem ich sine Beinchen unter den “Bauch” gebogen habe. Das spart noch mal ca 4mm Platz, ist aber bescheiden zu löten. Den Chip hatte ich vorher auf einem Adapterplatinchen programmiert um nicht noch eine Programmierschnittstelle auf der Platine unterbringen zu müssen. Allerdings zeigte sich sehr schnell das das keine so gute Idee war, da ich das Programm noch diverse male anpassen musste um optimale Ergebnisse zu erzielen. Zu diesem Zweck musste ich noch mal ein paar Kabel an den Chip löten um ihn umprogrammieren zu können.

Hier das Endergebnis:

Zum Auswerten der Frequenz gibt es 2 Möglichkeiten:

    1.:Man zählt über einen gewissen Zeitraum die Anzahl der eingehenden Impulse. Hier hat sich nach einigen versuchen eine Auswertfrequenz von ca. 125Hz als praktikabel erwiesen.
    -Vorteil: Recht hohe Reichweite (ca. 4-5mm) recht präzise Funktion.
    -Nachteil: Ziemlich langsam da ein Metallobjekt schon ca. 1o Mikrosekunden im Erfassungsbereich verweilen muss.

    2.: Man lässt einen Timer mit maximaler Geschwindigkeit laufen und erzeugt mit den vom Schwingkreis kommenden Signalen einen Interrupt. In der Interruptroutine wertet man dann den Zählerstand des Timers aus. Hier hat es sich als praktikabel erwiesen erst bei jedem 10. Interrupt auszuwerten.
    -Vorteil: Sehr schnell, Auswertfrequenz 5kHz bis max. 48kHz.
    -Nachteil: Die Schaltung wird wenn man die Reichweite softwaremäßig “hochschraubt” recht empfindlich und muss sorgfältig abgestimmt werden.

Als Fazit kann ich nur sagen, ein gelungenes Teil, hat viel Spass gemacht! Allerdings muß man peinlich darauf achten das der Kondensator im Schwingkreis einer sein muss, der bei Temperaturänderung seine Kapazität nicht ändert. Ein Test mit einem herkömmllichen Keramikkondensator hat gezeigt das dieser bei Raumtemperatur 104nF und bei 35°C nur noch 80nF hat. Also für stabile Verhältnisse im Schwingkreis absolut nicht zu gebrauchen. Ausserdem ändert auch der AtTiny seine Frequenz abhängig von der Temperatur und der Versorgungsspannung. Solls genau werden kommt man um einen Quarz und eine konstante Spannungsversorgung nicht herum.