Forum: Mikrocontroller und Digitale Elektronik Funktioniert diese Schaltung so?


von Phylus (Gast)


Angehängte Dateien:

Lesenswert?

Guten Abend,

ich habe eine Frage zu der angehängten Schaltung, kann diese so 
funktionieren?

Der Controller ist ein "ATMEL AT89S8253".

Der T1 ist ein IR-Empfänger und ich möchte ein Optisches Signal über die 
LED erzeugen und ein Signal an den Controller weiter geben.
Leider sind alle 4 Ports voll belegt und habe auch leider keine 
Möglichkeit es zu testen.

(Der Portpin ist auf Logisch "0" gesetzt)


Ich bedanke mich für eure schnellen Antworten =)


Gruß Phylus

von Achim M. (minifloat)


Lesenswert?

Mach vor T2 einen Basisvorwiderstand, damit am Portpin auch mehr als 
0,7V zu sehen sind.
mfg mf

von Thomas (Gast)


Lesenswert?

Phylus schrieb:
> (Der Portpin ist auf Logisch "0" gesetzt)

Was heißt das? Soll der Port ein Ein- oder ein Ausgang sein?

von Achim M. (minifloat)


Lesenswert?

Oder du sparst dir den zweiten Transistor:
1
      VCC o---*---+
2
              |   |
3
              R1  |      
4
             _|_  R2
5
             _V_  |
6
PORTPIN       |   |
7
   o----*-----*---+
8
         \
9
          \|<-
10
          /|<- IR-Empfänger
11
        |/_
12
        |
13
        o GND

R2 um den Pin sicher auf VCC zu ziehen, R1 als Vorwiderstand zur LED.
Der IR-Empfänger ist sicher einer mit integrierer Elektronik und 
Open-Collector-Ausgang?

Thomas schrieb:
> Soll der Port ein Ein- oder ein Ausgang sein?

Wahrscheinlich beides. In meiner Konfiguration blitzt die LED bei 
IR-Empfang ein wenig herum, wenn der Portpin vom µC auf Masse gezogen 
wird, ist die LED an, aber natürlich kein Empfang möglich.

mfg mf

von Thomas E. (thomase)


Lesenswert?

Thomas schrieb:
> Was heißt das? Soll der Port ein Ein- oder ein Ausgang sein?
Das steht doch da:

Phylus schrieb:
> (Der Portpin ist auf Logisch "0" gesetzt)
Das ist damit ein Ausgang. Bei einem 8051 kann man die Portrichtung 
nicht wie beim AVR umschalten, sondern man setzt den Port auf "1", wenn 
man ihn als Eingang benutzen will.

Und bei "0" ist das Geraffel dahinter sowieso ohne Funktion.

Mini Float schrieb:
> Der IR-Empfänger ist sicher einer mit integrierer Elektronik und
> Open-Collector-Ausgang?
Muss er auch sein. Der muss in der Lage sein, den Pullup des Ports auf 
"0" zu ziehen. Sonst wird das nichts mit 'nem 8051.
Jedenfalls wenn man den Zustand damit einlesen will. Aber wozu soll der 
Port sonst gut sein?

mfg.

von Phylus (Gast)


Lesenswert?

Ähm, da is ein Opto-Element, das Sende und Empfangsdiode in einem ist, 
er heißt "CNY70"

http://www.strippenstrolch.de/grafiken/cny70-2.gif

Also ohne Elektronik....

Ach mist hab ausversehn auf die 0 getippt ^^ ich meine "1" es ist ein 
Eingang.

Es ist mein AbschlussProjekt in meiner Ausbildung zum 
Systemelektroniker.

Ich baue einen "LieferRoboter" der "Ware" von 5 Stationen untereinander 
Transportieren kann, die LED ist auf dem Bedienpult und zeigt an welchen 
Stationen "Ware" auf der Rampe ist und das Signal, was in den Controller 
geht soll Programmintern überprüfen ob Ziel und Roboter beladen sind und 
dann einen Fehler ausgeben, da die Rampe ja schon beladen ist.

Die Kommunikation zwischen Roboter uns Station erfolgt über die oben 
genannten "CNY70" genau wie die Erkennung des Ladezustandes der 
Stationen und des Roboters.

von Thomas E. (thomase)


Lesenswert?

Phylus schrieb:
> Ähm, da is ein Opto-Element, das Sende und Empfangsdiode in einem ist,
> er heißt "CNY70"
So wie deine Schaltung jetzt ist, muß der Opto den Pullup des Ports und 
den dazu parallelgeschalteten R1 runterziehen. Das wird er 
wahrscheinlich nicht schaffen. Damit bringst du den Eingang in einen 
undefinierten Zustand.
Du solltest mit dem Opto einen Transistor schalten und mit dessen 
Kollektor schaltest du den Port. Also im Prinzip da, wo die LED jetzt 
sitzt kommt der Port ran. Ohne R2 und ohne 5V.

Evtl. reicht es auch, bei deiner Schaltung nur den R1 wegzulassen.

mfg.

von Phylus (Gast)


Angehängte Dateien:

Lesenswert?

@Thomas Eckmann:

also so wie auf dem Bild was angehängt ist?

Das Opto-Element kann über den Transistor soweit ich das weiß um die 
20mA durchlassen, der Port beim 8051 kann so was um die 0.8mA oder 0,9mA 
ausgeben.

(4,7kohm is als Vorwiderstand passend)

von Phylus (Gast)


Lesenswert?

Ach ne halt, Stimmt der "CNY70" kann nur 1mA über den Transistor, das 
warn anderer den wir mal verwendet hatten =D

Sorry für DoppelPost

von Achim M. (minifloat)


Lesenswert?

Phylus schrieb:
> also so wie auf dem Bild was angehängt ist?

Dann muss der interne Pullup aber auch den Strom über R1 liefern.
mfg mf

von Thomas E. (thomase)


Lesenswert?

Phylus schrieb:
> also so wie auf dem Bild was angehängt ist?
Ja genau. Beim 8051 schaltet man den Port als Eingang auf High und zieht 
ihn einfach Masse.

Phylus schrieb:
> Das Opto-Element kann über den Transistor soweit ich das weiß um die
> 20mA durchlassen
Aber nur bei optimaler Beleuchtung tut er das auch.

mfg.

von Thomas E. (thomase)


Lesenswert?

Phylus schrieb:
> Ach ne halt, Stimmt der "CNY70" kann nur 1mA über den Transistor
Dann hat sich das so schon wieder erledigt.

mfg.

von Phylus (Gast)


Lesenswert?

Der Interne PulUp kann den Strom für R1 Liefern (schon sehr oft so 
gemacht und auch so beigebracht bekommen)

(Nur das Port0 keine PullUp / PullDown bei dem Controller)

Ich weiß das bei dem Controller PullUp oder PullDown 5,6 kohm sein muss 
und der Vorwiderstand für einen Transistor 4,7 kohm.

von Phylus (Gast)


Lesenswert?

Also funktioniert die Schaltung auf dem 2. Bild?

von MaWin (Gast)


Lesenswert?

> Der Portpin ist auf Logisch "0" gesetzt

Na hoffentlich nicht.

> Funktioniert diese Schaltung so?

Die Frage ist, was bezweckt wird.
In deiner ersten Schaltung kann der uC nicht einlesen,
was der CNY70 erzeugt,
denn die Spannung am PortPin kann nut "fast bei 0V"
und "um die 0.7V" betragen, beides ist logisch low
für den Controller.

> CNY70

Ein Dutzend Beiträge bevor solche Info mal kommt.

> Oder du sparst dir den zweiten Transistor

Dann leuchtet allerdings die LED gerade im anderen Moment.

> also so wie auf dem Bild was angehängt ist?

Auch bei der Schaltung kann der PortPin nie erfahren,
was der CNY70 gesehen hat, weil die einzige Quelle für
HIGH (5V, logisch 1) über den internen PullUp des
PortPins kommen könnte, der mit ca. 90k so viel gösser
ist als die 4k7, daß die Spannung am PortPin nie über
1V gehen würde, was immer noch logisch 0 ist.

Wir wissen nicht, was deine Shcaltun leisten können muß,
haben aber erahnt daß:
- sie erkennen soll wann der CNY70 logsich low liefert
- wenn der port auf Ausgang statt auf Eingang egschaltet
  wird, er die LED leuchten lassen können soll (in
  deiner Ursprungsschaltung durch Ausgabe von logisch high)
  wenn der CNY70 nicht dazwischenfunkt.
- die LED leuchet auch, wenn der CNY70 logisch high liefert ???
Gerade letzteres erscheint zweifelhaft, denn dann leuchtet
die LED wenn der CNY70 nichts reflektiertes sieht.

MiniFloats Schaltung erscheint sinnvoller,
wenn die LED leuchten soll, wenn der CNY was erkennt
(und der uC bekommt das mit wenn sein Port auf Eingang
geschaltet ist)
und programmtechnisch die LED auch zum leuchten gebracht
werden kann -egal ob der CNY70 was sieht- wenn der POrt
Pin auf Ausgang geschaltet wird und logisch 0 ausgegeben
wird.

R2 könnte man bei MiniFloats Schaltung übrigens weglassen,
weil der AT89S8253 einen ausreichenden internen pull up hat.

Der CNY70 wird mit 1.6mA verwendet, was problemlos wischne
1mA und 50mA liegt. Die LED wird ebenfalls mit 1.5mA
betriebe wie in deiner Ursprungsschaltung, ich hoffe mal,
du hast deren Helligkeit bei dem niedrigen Strom ausprobiert
und sie erschien dir hell genug.

von Phylus (Gast)


Lesenswert?

Ja, die LED Leuchtet mit ihren eigentlichen 20mA genau so hell wie mit 2 
mA, nur das es mit 2mA Stromsparender ist =)

(Mich hatte der R2 in Mini Floats Schaltung ein wenig verwirrt)

Ja, ich hatte auch nen kleinen Denkfehler drin, da ich die Schaltung 
erst anders machen wollte, aber euch vielen Dank =)

Ich wünsche euch noch nen schönen Abend.

von Achim M. (minifloat)


Lesenswert?

Phylus schrieb:
> Mich hatte der R2 in Mini Floats Schaltung ein wenig verwirrt

Tut mir leid. Es gab da ein paar AT89Sx Typen, die hatten an einem Port 
gar keinen Pullup. Ohne den käme man - bei vernachlässigbar kleinem 
Spannungsabfall über dem LED-Vorwiderstand - auf eine "High-Spannung" 
von VCC - U_led. Die Spannung an der LED U_led würde zwar nicht die 
Flussspannung aus dem Datenblatt erreichen(die gibt es so ja eigentlich 
gar nicht), aber durch den nicht vermeidbaren Stromfluss - auch durch 
den gesperrten Transistor- schon kein garantierbar sicheres High.

mfg mf

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.