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!
...ist das ein NS mit Analogausgang ? Eher digital; schau mal im Datenblatt..
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?
..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.
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
Ok, sollte ich dann einen Spannungswandler, der das Signal auf 5V runterregelt, dazwischen klemmen? Also zwischen Ausgang Schalter und STK500
Ich habe gerade nochmal im Datenblatt geschaut, bei dem DW-AS-624-M18-002 handelt es sich um einen PNP-Schalter :-)
Spannungsteiler mit 2 Widerständen reicht: Bei 12 VDC am Näherungsschalter und 5 VDC als Versorgung des uC z.B. 10k und 4,7 k, uC Eingang an den Mittelabgriff, 4,7k an GND.
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
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.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.