www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Solid State Relais am AVR Port


Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

mal wieder eine Frage zu Solid State Relais :) .... Es handelt sich um 
das Sharp S202S12 
(http://www.reichelt.de/?;ACTION=7;LA=6;OPEN=1;INDE...)

Würde folgende Schaltung direkt an einem AVR (Atmega 64, 5V) 
funktionieren
???

                     -------
                    |S202S12|
          -----     |       |
Port ----|270R |----|--|>---|--- GND
          -----      -------


Also Port vom AVR an 270 Ohm (damit ~18mA), dann an Pin 3 des SSR. Pin 4 
vom SSR auf GND.

Nur zu Info:
Geschaltet wird eine 230V/50Watt Glühbirne.

Ich danke Euch schon mal im Voraus.

gruß,

Thomas

Autor: yalu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum nicht? Ich komme zwar nur auf einen Eingangsstrom von 13mA
(Uhigh 5V, Rport 25Ohm, Udurchlass 1,2V), was aber vollkommen
ausreichend ist, da deutlich über 8mA.

Normalerweise schaltet man Lasten an Digitalausgängen gegen Masse,
d.h. das Relais wird andersherum angeschlossen und das rechte Ende mit
VCC verbunden. Beim AVR ist das aber egal, da die Ausgänge fast
symmetrisch sind.

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

also, ich habe nun die Schaltung wie oben aufgebaut....mit 270R als 
Vorwiderstand. Der Port ist als Ausgang und wird auf High geschalten.


zwischen Port und GND liegt eine Spannung von ca. 0,85 Volt an und das 
Relais schaltet leider nicht durch.

Wenn ich nun bsp. den Widerstand direkt mit VCC (5V) verbinde schaltet 
es durch.


Ein anderer Test war auch noch folgender: Ich nehme 2 Ports des Atmels 
(nach dem Motto: Gemeinsam sind wir stark!) und siehe da, schaltet der 
erste Port auf High passiert nichts, nehme ich den 2. hinzu, geht meine 
Lampe am SSR an ...

Ehrlich gesagt verstehe ich die Sache nicht so ganz. Der Port des Atmels 
kann doch 20mA treiben....Wieso in aller Welt, wird der dann nicht mit 
den 270R fertig??

Irgendwelche Ideen??? Bin für alles sehr dankbar.

greetz,
Thomas

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
0,85 V an einem Port, der als Output geschaltet und High level ist. Das 
ist sehr wenig. Wenn der Port i.O. ist, dann fliessen da so 50-100 mA.

Check mal:
- Hardware: Lötzinnbrücken, sonstige Kurzschlüsse. Port zerschossen? 
Anderen AVR in die Fassung, läuft?
- Software: Port richtig initialisiert, in das richtige Register des 
richtigen Ports, richtiges Bit geschrieben?

Autor: Hans-jürgen Herbert (hjherbert) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da hast Du vielleicht ATMEGA32, PORT C, BIT 2...5 benutzt ? Die gehen 
nur, wenn JTAG abgeschaltet wird durch einen der Einrichteschalter, 
englisch: Fuses

Siehe auch Beitrag "ATmega32 und PORTC"
Beitrag "Atmega32, Pin0 des PortC funktioniert nicht richtig"

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du die Ausgaenge High-aktiv benutzt musst Du sicherstellen, dass im 
entsprechenden Port-Register (PORTx) fuer den Ausgang eine 1 gesetzt 
ist. Ist dies der Fall?

Michael

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow..so viele Tips....Danke erstmal!


Also ... Es ist ein Atmega 644 .... vielleicht gilt da das gleiche wie 
beim Atmega 32....

Es ist auch Port C. Aber alles als Ausgang geschalten, und entsprechend 
im Port Register auf 1 gesetzt.

Das mit den Fuses wäre noch ne Möglichkeit...kann es aber hier nicht 
prüfen, das Teil ist nicht hier. Ich versuche das Morgen mal.

Dank an Euch alle.

greetz,

Thomas

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zwecks Fuses:
http://palmavr.sourceforge.net/cgi-bin/fc.cgi

sehr praktisch ;)

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Häng doch mal nur eine LED (mit R), oder nur einen 270 Ohm Widerstand an 
den Ausgang und guck ob dann die Ausgangsspannung immer noch so komisch 
ist.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Thomas (Gast)

>Es ist auch Port C. Aber alles als Ausgang geschalten, und entsprechend
>im Port Register auf 1 gesetzt.

Das reicht nicht. Du musst den Port als Ausgang schalten

DDRC = 0xFF;    // alles Ausgang
PORTC = 0xFF;   // alle HIGH

MFG
Falk

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So...habs getestet. Es hing am JTAG IF. Per Fuses deaktiviert und die 
Lampe erstrahlt!


Nochmal Danke an alle.

greetz,

Thomas

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.