12V induktiver Näherungssschalter an STK500

Gast #2743249
Lesenswert?

Hallo liebes Forum!

Ich habe einen induktiven Näherungsschalter (betrieben mit 12V, Modell: 
DW-AS-624-M18-002) und ein STK500 mit einem Atmega16 zur Verfügung. Ich 
möchte gerne das Signal des Näherungsschalters einlesen und habe es an 
PORTA angeschlossen um das analoge Spannungssignal einzulesen und 
mittels ADC in ein digitales Signal zu wandeln. Leider kommt da nur 
Stuss raus. Die Werte schwanken immer zwischen 1023 und 0, obwohl kein 
metallischer Gegenstand den Schalter passiert. Wenn ein metallischer 
Gegenstand passiert, ändern sich die Werte fast gar nicht. 
Hardwaretechnisch funktioniert das aber, wenn ein metallischer 
Gegenstand herüber fährt, hört die kleine LED am Schalter auf zu 
leuchten und die Spannung fällt auf einen konstanten Wert (17 - 18mV) 
ab. Kann mir jemand weiterhelfen!?!
Vielen Dank im Voraus!
Gast #2743269
Lesenswert?

Also ich habe gerade noch einmal geschaut und keinen Hinweis im 
Datenblatt gefunden, dass es ein digitaler Output ist. Daher bin ich von 
einem analogen Output ausgegangen. Wenn es ein digitaler Output ist, 
kann ich dann einfach den Status des PINs (Also High oder Low) abfragen 
an dem der Schalter angeschlossen ist?
Gast #2743274
Lesenswert?

..also habe beim Hersteller nachgeschaut (da eh gerade langweilig ist) .
Wie vermutet ist das ein digitaler NS mit Schalttransistor- Ausgang,
Öffnerfunktion. Den kansst Du ohne ADC auf einen uC - Eingang legen.
evt. noch pull- up/ down Widerstände und Schutzdiode wg. der 12VDc
NS- Versorgungsspannung beachten.
Gast #2743287
Lesenswert?

Hi

>Also ich habe gerade noch einmal geschaut und keinen Hinweis im
>Datenblatt gefunden, dass es ein digitaler Output ist.

Ich auch:

Der Sensor hat einen digitalen Ausgang. Typ NPN. Da das Teil 10..30V 
Betriebsspannung benötigt, die auch am Ausgang erscheinen, ist ein 
direkter Anschluss an einen AVR nicht zu empfehlen.

MfG Spess
Gast #2761425
Lesenswert?

Gut das habe ich versucht, leider klappt es noch nicht :(. Ich muss doch 
den Ground des Boards und den Ground des Näherungsschalters mit dem 
Ground des Spannungsteilers verbinden (den habe ich auf eine kleine 
Platine gelötet, wie besprochen mit 4,7k und 10k), oder? Das habe ich 
getan, aber die eine LED leuchet nur mit halber Stärke und die andere 
LED leuchtet mit voller Stärke, obwohl sie eigentlich gar nichts machen 
sollte. Oh mann, ich bin echt am verzweifeln. :( Kann mir jemand helfen? 
Anbei der Code (Bascom):

Ddrd = 1
Config Portb = Output

'************  main loop

Do

   If Pind.0 = 0 Then
      Portb.0 = 1
      Portb.1 = 0
   Else
      Portb.0 = 0
      Portb.1 = 1
   End If

Loop

End


Viele Grüße
Gast #2761958
Lesenswert?

Ja, die Grounds mußt Du alle verbinden.
Dein Problem scheint BASCOM zu sein.
Lass mal den Näherungsschalter noch weg , schließe einen Taster am 
Eingang an (gegen GRD, internen Pull-Up Widerstand aktivieren) und 
bringe erst mal das Programm zum Laufen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren