Forum: Mikrocontroller und Digitale Elektronik MOSFET und Arduino /


von Amir S. (autoforum)


Angehängte Dateien:

Lesenswert?

Was ist falsch bei dieser Schaltung?

Ich versuche mit dem Arduino UNO board einen Sensor (ultraschall sensor) 
zu trigern. Signal 12 V 1 mA kommt von dem Sensor. Zum trigern, muss die 
Signal nach Masse gezogen werden und zwar 100 micro sek lang.

Mit Optokopler geht das nicht da die steigende Flanke viel zu langsam 
ist. So das Controller nicht die HIGH signal erkennen kann. (nach der 
Triggerung kommen die Daten vom Sensor).

Bei Mosfet schaltung kommt das folgende vor:
- wenn controller auf HIGH schaltet ist die Spannung Source - Drain 0 V 
(mit osziloskop gemesen). Und ist sauber.
-wenn controller auf LOW schaltet, am Source Drain bekomme ich eine 5V 
sinusformiger Spannug.

Wenn ich aber, statt Microcontroller, eine 5 V Spannungsversorgung an 
das Gate anschliesse, ist das HIGH und LOW am Source Drain sehr sauber. 
Geht schön vom 12 V auf 0 V.

Hat jemand eine erklärung dafür?

Ich weiss dass es bessere variante für dieses Problem gibt. Ich möchte 
aber dieses Verhalten mit MOSFET verstehen.

von Udo S. (urschmitt)


Lesenswert?

amir soljic schrieb:
> (nach der
> Triggerung kommen die Daten vom Sensor).

Und wie wertest du die aus? Ich sehe keinen Pin des Arduino, der die 
Daten lesen könnte.
Schau mal ins Datenblatt des Sensors, ob es da keine Beispielschaltung 
gibt, oder nenne zumindest den genauen Typ des Sensors, am Besten mit 
Link aufs Datenblatt.

von Dieter F. (Gast)


Lesenswert?

Wie sieht denn das Programm dazu aus?

Port auf Ausgang geschaltet etc?

von Amir S. (autoforum)


Angehängte Dateien:

Lesenswert?

Hallo Udo


Input pin wird später eingesetzt. Also, ich messe die Zeit zwischen zwei 
"LOW" Flanken (so wird vom Sensor gesendet) teile durch zwei und so habe 
ich die Distanz. Das Bild beigelegt. Erste LOW / HIGH Flanke kommt vom 
Microcontroller. Abildung ist mit einem Optokopler.

Ich werde wahrscheinlich mit einem 4504 oder 7407 dieses I/O geschichte 
lösen.

Ich bentuzte jetzt die gelegenheit mich mit MOSFET ausseinander zu 
setzen ;)


Gruss

von Amir S. (autoforum)


Lesenswert?

Halo Dieter

Ich habe ganz einfacher Program geschrieben:


digitalWrite (7, HIGH)
delay (1000)
digitalWrite (7, LOW)
delay (1000)

Es ist nur ein Test program so dass ich die Flanken analyiseren kann. 
Und ich habe auch mit Oszi die Signal aufgenommen, auch am Arduino Pin. 
Arduino schaltet sauber.


Also zum Sensor:

Der Sensor ist vom Valeo, und stammt aus einem Fahrzeug (original 
einparhilfe). Die Daten sind nicht (im Internet) zum finden. Das was ich 
bisher weiss, habe ich selber herausgefunden. ;)


Mein Leben ist nicht genug kompliziert ;)

Gruss

: Bearbeitet durch User
von Udo S. (urschmitt)


Lesenswert?

Was seltsam ist ist deine Komparatorverschaltung.
Der Spannungsteiler 12k/10k liefert unbelastet maximal 5,3V bei 12V 
Versorgung. Deine Schaltschwelle hast du auf 5V. Sollte die 
Schaltschwelle nicht aucf etwa 3V gesetzt werden.
Bist du sicher daß die Impulse nach dem Komparator überhaupt noch da 
sind?

von Amir S. (autoforum)


Angehängte Dateien:

Lesenswert?

Udo

Sorry....Mir ist ein Fehler unterlaufen. Ich habe falsches Bild geladen. 
Aber, dieser Schaltung habe so entworfen. Bauelementen sind nicht 
korrekt. In dem Bild ist nur eine Prinzipdarstellung.

Jetzt aber, lade ich so richtige Osziaufnahme...Triggern wird durch 
einen Optokopler gelöst (4n33). Wie gesagt, da ist ein Problem mit erste 
steigende Flanke. Die ist viel zu langsam.
Aber so sehen die Daten an der Signal Leitung.

Gruss

von Dieter F. (Gast)


Lesenswert?

amir soljic schrieb:
> Ich habe ganz einfacher Program geschrieben:
>
> digitalWrite (7, HIGH)

Hast Du vorher mit pinMode() den Pin auf Ausgang geschaltet?

Mehr Programm - und vor allem genau die eingesetzte Schaltung mit den 
korrekten Werten wären durchaus hilfreich ...

von Amir S. (autoforum)


Lesenswert?

Hallo Dieter

Selbstverständlich mit pinMode (7, OUTPUT) gesetzt.

Arduino schaltet sauber. Ich habe es mit Oszi geprüft.

Gruss

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.