Frage zur Schaltung

OP #5021484
Lesenswert?

Hallo miteinander,

ich habe zu der Schaltung, welche ich als Bild angehängt habe, folgende 
Fragen:

- Ist es problematisch wenn ich bei dem hervorgehobenen Bereichen (PB2 
von den ATtinys) von dem GPIO des Raspberries mit 3.3 V komme, der 
Pull-up-Widerstand jedoch mit 5 V? Oder sollte ich hier besser eine 
Transistor-Schaltung verwenden, die mir die 3.3 V ebenfalls auf 5 V 
verstärkt?

- Mir ist aufgefallen, dass, wenn ich meinen Lötkolben ausschalte, die 
Schaltung einmal triggert. Das darf allerdings nicht passieren. Wie kann 
ich das zuverlässig verhindern? Das passiert auch nur, wenn der 
Raspberry Pi angeschlossen ist.
Angehängte Dateien:
#5021496
Lesenswert?

Sebastian G. schrieb:
> - Ist es problematisch wenn ich bei dem hervorgehobenen Bereichen (PB2
> von den ATtinys) von dem GPIO des Raspberries mit 3.3 V komme, der
> Pull-up-Widerstand jedoch mit 5 V?

Nein, die 10k verhindern zu viel Strom in den rPi hinein. Richtig 
elegant ist es aber nicht, 10k sind langsam.

Sebastian G. schrieb:
> - Mir ist aufgefallen, dass, wenn ich meinen Lötkolben ausschalte, die
> Schaltung einmal triggert. Das darf allerdings nicht passieren. Wie kann
> ich das zuverlässig verhindern? Das passiert auch nur, wenn der
> Raspberry Pi angeschlossen ist.

Was auch immer triggert heissen soll, wahrscheinlich führen sich die 
ATTiny angesprochen. Bei 2 Netzteilen kann man sich lustige Problem 
schon aus der Netzstromversorgung einfangen. Bei einer 
Versorgungsspannung, die mit 100uF und 100pF abgeblockt ist, kein 
Wunder. Warum glaubt man, mit um den Faktor 1000 neben der 
Herstellerempfehlung liegenden Bauelementen Erfolg zu haben ?

Dann ist unklar, wie die Masseführung ist, du hast ja wohl zumindest 
hohen Strom (L293D) und empfindliche Eingänge (ATTiny) und das Programm 
im Attiny wird wohl nicht unbedingt Störungen vermeiden 
(Eingangsentprellung oder gar CRC abgesicherte Kommunikation), mit 
Watchdog arbeiten. Hast du überhaupt den brown out detektor im ATTiny 
eingeschaltet ?
OP #5021505
Lesenswert?

Das Programm auf den ATtinys:
1
#ifndef F_CPU
2
#define F_CPU 4000000UL
3
#endif
4
#include <avr/io.h>
5
#include <util/delay.h>
6

7
int main(void) {
8
  DDRB |= (1 << PB0);  // Ausgang
9
  DDRB |= (1 << PB1);  // Ausgang
10
  DDRB &= ~(1 << PB2);  // Eingang
11

12
  PORTB |= ( 1 << PB2 );
13
  PORTB &= ~(1 << PB0);
14
  PORTB &= ~(1 << PB1);
15

16
  while (1) {
17
    if( PINB & (1<<PB2)) {
18
      PORTB &= ~(1 << PB0);
19
      PORTB |= (1 << PB1);
20
    } else {
21
      PORTB &= ~(1 << PB1);
22
      PORTB |= (1 << PB0);
23
    }
24
  }
25
}


Ja, ich muss noch viel lernen.
Was würdest du mir empfehlen, in Bezug auf die Bauteile anders zu tun? 
Kannst du mir hier bitte helfen?
Masse ist alles zusammengeführt.

Die Brown-out detection habe ich auf VCC = 4.3 V stehen
Gast #5022215
Lesenswert?

Sebastian G. schrieb:
> - Mir ist aufgefallen, dass, wenn ich meinen Lötkolben ausschalte, die
> Schaltung einmal triggert. Das darf allerdings nicht passieren. Wie kann
> ich das zuverlässig verhindern?

Indem du deinen Lötkolben vernünftig entstörst. Eventuell hast du Glück, 
dass er gegen EMV-Vorschriften verstößt und du den 
Hersteller/Inbetriebbringer zur Verantwortung ziehen kannst.

Wenn du bei deiner Schaltung gezielte Maßnahmen ergreifen möchtest, 
könntest du erstmal klären, auf welchem Weg die Störungen dorthin 
gelangen und zum Triggern der Schaltung führen.

Ein Netzfilter wirkt oft Wunder
https://www.schaffner.com/products/emcemi/

Sebastian G. schrieb:
> Oder sollte ich hier besser eine Transistor-Schaltung verwenden,
> die mir die 3.3 V ebenfalls auf 5 V verstärkt?

Du willst keine Verstärkung, sondern eine Pegelwandlung, i.e. eine 
Digitalschaltung, die bestenfalls auch die Flanken regeneriert.
Wenigstens einen Widerstand zwischen Raspberry und ATtiny solltest du 
einbauen, damit es keinen Ärger gibt, wenn der ATtiny versehentlich 
seinen Pin als Ausgang schaltet. Zusammen mit einem kleinen Kondensator 
am ATtiny könnte das schon helfen. Guck es dir einfach mal mit einem 
Oszi an.
So, wie es jetzt verschaltet ist, begrenzt die Schutzdiode vom Raspberry 
den H-Pegel am ATtiny auf etwas 0.7*VCC (3.3V+Vf), was deinen 
Störabstand im Vergleich zu einer sauberen 5V-Ansteuerung mehr als 
halbiert.

Du könntest aber deiner Software resistenter verfassen, indem du dafür 
sorgst, dass du nach einem vermeintlichen Triggerpuls etwas später 
(ausreichend, damit ein Störpulse wieder weg ist) nochmal nachguckst, ob 
der Triggerpegel immer noch anliegt - nennt sich Entprellung. Das kommt 
natürlich drauf an, was dein Rapi so von sich gibt.
Gast #5022217
Lesenswert?

Sebastian G. schrieb:
> Was würdest du mir empfehlen, in Bezug auf die Bauteile anders zu tun?

Na, dass Datenblatt des 7805 lesen und C4 gegen die
Herstellerempfehlung tauschen.

> Kannst du mir hier bitte helfen?

Hat der Michael doch. Belehrungsresistent?

> Masse ist alles zusammengeführt.

Ja, aber wie? Masseschleifen können auch in Digitalsystemen Ärger 
machen.
OP #5023167
Lesenswert?

Ich möchte mich erst einmal für mein "Drängen" entschuldigen. Ich war 
wohl etwas ungeduldig.
Danke erst einmal für die Hinweise, ich werde diese beherzigen.
Das Problem ist, dass dies noch alles Neuland für mich ist und ich taste 
mich (sehr) langsam heran. Daher sind Angaben wie "einen Widerstand" 
oder "einem kleinen Kondensator" ohne Werte für mich noch irreführend, 
da ich weder auf Erfahrung noch auf das Wissen zur exakten Bestimmung in 
solchen Fällen zurückgreifen kann. (Das soll kein Vorwurf sein!)
Das meiste habe ich mir bisher "ergooglelt" - wohin das geführt hat, 
sieht man ja ;-)
Daher würde ich mich sehr darüber freuen, wenn ihr mir das eventuell ein 
wenig ausführlicher erklären könntet.

Das mit der Entprellung werde ich mal versuchen in der Zwischenzeit 
umzusetzen.

Vielen Dank schon einmal!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren