www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Lichtsensor Programm - PIC 16F84A


Autor: Oliver Newm (olli)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schönen Guten Tag...
zuerst mal..ichbin neu hier ;) daher...Hallo miteinander!

Mein problem ist folgendes! Ich mus für die schule ein Projekt machen, 
undzwar namens Lichtsensor!
Nur mein Problem ist, Ich habe nächsten Dienstag meine Abschlussprüfung 
(bin AZUBI zum Elektroniker für GEräte und Systeme) und schafe es 
einfach nicht mehr jetzt mich damit so grossarig zu beschäftigen!
Ausserdem bin ich halt nur ein Azubi und kenne mich daher auch nicht soo 
gut mit dem PIC Aus =(
für manche ist das alles denke ich aber gar kein problem..deswegen 
dachte ich stelle ich den beitrag mal rein.

Also das projekt sollte so funktionieren. Ein Fototransistor erkennt ob 
es hell oder dunkel ist...Eine komparator schaltung schaltet halt beim 
jedem zusatnd 1/0... dieses signal muss dann halt vom PIC verarbeitet 
werden und dann an 2 Ausgängen abgegeben werden. Also sodass 2 LEDs 
leuchten!
Allerdings sollten die LEDs in einer art Dimmer funktion hell bzw Dunkel 
werden...

Hat jemand vllt schonmal sowas gemacht? oder würde mir zur seite stehen 
und helfen.


MfG Olli

Email: Flyingboy1986@aol.com
ICQ: 179-632-757

Autor: Marco Beffa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also wenn du einen Fototransistor hast, wie willst du dann die LED's in 
Abhängigkeit der Helligkeit (cooler satz) dimmen?? Der Fototransistor 
sagt dir ja nur ob licht oder kein Licht!

Was du brauchst ist ein Lichabhängiger Widerstand!

Dann misst du mit nem AD-Wandler den Spannungsabfall über dem LDR! Je 
nach dem welchen Wert du nach der AD Wandlung hast, schaltest du die 
LED's schneller oder langsamer ein und aus.. So hast du deine 
Dimm-Funktion.

ALSO:

1.Spannungsabfall über LDR messen
2.Je nach gemessenem Wert, Blinkfrequenz der LED's grösser oder kleiner

Das sollte eigentlich reichen.

Ich bin im 2.Lehrjahr (von 4)... dann solltest du dass doch im Schlaf 
können...

Grüsse aus der Schweiz

Autor: Oliver Newm (olli)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja eigentlich   =(   das ist ja das prob...aber ich kam irgendwann nicht 
mehr mit wurde zu viel...

ja sorry wegen dem deutsch ;)

die leds müssen ja nicht in abhängigkeit der beleuchtung stärker oder 
schwächer leuchten...sondern wenn ich zB einfach komplett dunkel mach 
sollen die leds langsam hell werden..wenn ich loslasse,also weider 
beleuchten lasse...sollen die leds halt langsam wieder ausgehen!  so war 
das gemeint

Autor: Marco Beffa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achsoo war das gemeint!

Nun, dies ist ebenfalls keine grosse Sache!

geht z.b. so:

1. hänge den Fototransistor an einen Pin der Interrupt fähig ist
2. sobald sich der Zustand an dem Pin ändert, gehst du in eine Funktion 
welche dir jeweils die Led heller oder dunkler dimmt... Und weil du 
einen Interrupt fähigen Pin genommen hast, kannst du auch Änderungen 
während eines Dimmvorgangs erkennen, und dann in die andere Richtung 
dimmen...

Oder du machst es mit einer Schleife, in welcher du den Pin ständig 
abfragst und je nachdem hoch unter runter dimmst...

In welcher Sprache programmierst du?

Grüsse

Autor: Oliver Newm (olli)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hasst du nicht spass an solchen geschichten...also so nen programm zu 
schreiben.
Ich hab gar nicht die zeit dazu...wie gesagt hab ich dienstag 
abschlussprüfung also in 1 Woche und desweiteren gehe ich noch zur 
abdnschule wegen fachabi.

Würde auch ein kleines Taschengeld überweisen...wenn Du ein 
Betriebsfähiges Programm hinbekommst =)  also jetzt ehrlich auch, Note 
ist ja wichtig für mich! Hatte es auch schonmal fertig mit meiner 
gruppe...nur leider trotzdem versagt! Unteranderen auch weil 
gruppenteilnehm nicht verlässlich war und scheiße gebaut hat bzw gar 
nix!

naya...anderes thema ;)

Autor: Oliver Newm (olli)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ahja...assembler ;)

Autor: Marcus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Juhu, nen Abschluss kaufen. Ghostwriter in die Berufschulen.

Sorry konnt ich mir nicht verkneifen.
Marcus

Autor: Oliver Newm (olli)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neee.....ist doch nicht für  abschluss! für berufsschule! aber geht dann 
halt aufs zeugnis ein! deswegen wichtige note

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mein Rat:
Vergiss erst mal den Teil mit dem Dimmen.

Bau aus einem LDR und einem Widerstand einen Spannungsteiler.
Den misst du mit dem PIC aus (der PIC hat doch einen ADC?)

Ist der Messwert über einer Schwelle -> LED ein
Ist der Messwert drunter -> LED aus

Das sollte dein erstes Zeil sein.

Wenn du das hast, gehts weiter: Wie dimmt man eine
LED? Mittels PWM. Der Ausgang an dem die LED hängt
wird ständig ein und aus geschaltet. Je nachdem
wie das Verhältnis der Einschalt zur Ausschaltzeit
ist, ist die LED dunkler oder heller.
Ich weiss jetzt nicht welche Hardware Unterstützung
dir der PIC da geben kann, zur Not kann man das auch
mit Schleifen machen.

Und dann braucht es noch eine Schleife die dieses
Verhältnis langsam ändern kann. Am einfachsten macht
man das so: Man hat 2 Variablen. Die eine ist direkt
das Tastverhältnis von oben. Die andere ist die Sollvorgabe
für dieses Tastverhältnis. In regelmässigen Zeitabständen
werden die beiden verglichen. Ist das Sollverhältnis größer
als das Istverhältnis, so wird das Istverhältnis um 1
erhöht. Ist es kleiner, so wird das Istverhältnis um 1
verkleinert. Durch die Wahl der Zeitabstände, in denen
diese Angleichung durchgeführt wird, regelt man die
Dimm-Geschwindigkeit.

Und jetzt kommt der grosse Augenblick: Beide
Teilprojekte werden miteinander kombiniert:
Ist der LDR-Wert über der Schwelle, wird das Sollverhältnis
auf 100% gesetzt, ist es darunter wird es auf 0% gesetzt.

Und schon dimmt die LED schön langsam nach.

> Hatte es auch schonmal fertig mit meiner
> gruppe...

Du hattest das schon mal fertig und jetzt stehst du mit
leeren Händen da?

> nur leider trotzdem versagt!

Das heist: auch im ersten Anlauf haben die anderen die
Arbeit für dich gemacht.

> Unteranderen auch weil
> gruppenteilnehm nicht verlässlich war und scheiße gebaut hat bzw
> gar nix!

Ja, ja. Immer die anderen.

> Würde auch ein kleines Taschengeld überweisen...wenn Du ein
> Betriebsfähiges Programm hinbekommst =)

Davon halte ich gar nichts.
Irgendwann bist du nicht mehr Azubi und musst selbst was entwickeln.
Dann sollen auch deine Kollegen die Arbeit machen.

> also jetzt ehrlich auch, Note ist ja wichtig für mich!

Nicht nur für Dich. Auch für deinen Arbeitgeber. Der sieht
sich deine Abschlussarbeit an und sagt sich: Fein der hat
schon mal mit µC gearbeitet, gibt dir deswegen einen Job, ...

Werd erwachsen!
Bei Jugendlichen wird ein gewisses Schummeln toleriert. Das
heist aber noch lange nicht, dass es niemand bemerkt.
Ausserdem wirst du ja wohl deine Abschlussarbeit mit dem
Prüfer besprechen müssen. Das Gespräch würde ich gerne hören.

Also: beiss rein. So schwer ist die Aufgabe auch wieder nicht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.