Forum: Mikrocontroller und Digitale Elektronik BME280 mit Attiny85 auslesen Daten per SN75176 an Pi senden


von Rico P. (rico_p)



Lesenswert?

Hallo liebe Profis,

(sorry wenn ich nicht immer gleich reagiere, da ich das nur als Hobby 
betriebe, sitze ich nicht die ganze Zeit am Rechner) ich möchte mich 
aber gerne an euch wenden, da ich nun mehr schon 4 Wochen bastle... :-(


im Zuge eines Projektes soll ein unterirdisches Bauwerk über mehrere 
Monate überwacht werden. Es sollen an 8 Messstellen jeweils Luftdruck, 
Temperatur und Feuchte (BME280) gemessen werden. Da die 
Parallelschaltung über SCI und ca. 25 m Leitungslänge nicht funktioniert 
hat, habe ich mich für obige Variante (Siehe Schaltplan) entschieden:

GY-BME280 über I2C mit Attiny85 auslesen und über RS485 an den Pi 
senden.

Das Auslesen des BME280 mit dem Attiny85-Board funktioniert schon.

Nun arbeite ich gerade an der RS485 Verbindung zum Pi und habe das 
Problem, dass der SN75176BP auf dem Attiny85-Board beim Senden extrem 
heiß wird. Solange alle SN75176 (aktuell nur 1 x Pi-Board und 1 x 
Attiny85-Board) im Empfangsmodus sind, bleiben sie kalt.

Ich habe die Schaltung und die Platinen beigefügt.

Die Messungen von VCC, A, B, GND, RE und DE sind in Ordnung...
Spannung an Di mit wechselnden 1,7 zu 3,3 V ist komisch wenn ich LTV U17 
auf GND ziehe sollt das nahe 0V sein...
Spannung an R ist durch Vorwiderstand und Diode bei ca. 4,2V über LTV 
U16 und soll später dann auf die Anfrage für das Auslesen vom Pi hören. 
R sollte demnach Hochohmig (Input) sein.

Ich verstehe Momentan nur nicht warum der SN75176BP im Sendemodus 
glühend heiß wird... (habe schon ein Branding vom Testen T>>100°C -> 
SN75176 bereits getauscht wegen Verdacht auf defekt)

Falls noch Angaben fehlen bitte Fragen... Ich versuche dann so schnell 
als möglich zu antworten...

Vielen Dank für eure Hilfe

: Bearbeitet durch User
von N. M. (mani)


Lesenswert?

Wie machst du die Sendeumschaltung?
So wie ich das sehe ist der RS485 TX Treiber am PI immer eingeschaltet.

Dir ist schon bekannt dass immer nur einer die Füße auf der Leitung 
haben darf? Das läuft hier auf Request/Response raus. Nicht wie bei CAN, 
dass jeder senden kann wann er Lust hat 😁


Edit: falsch abgebogen. GPIO22 macht die Umschaltung. Also es gibt hier 
Leute die kotzen immer über zu viel Labels. Ich bekomme Brechreiz bei 
dem Schaltplan. Hier hätten ein paar Labels gut getan.

: Bearbeitet durch User
von Gerd E. (robberknight)


Lesenswert?

Rico P. schrieb:
> Ich verstehe Momentan nur nicht warum der SN75176BP im Sendemodus
> glühend heiß wird...

Ist Dir klar wie RS485 funktioniert? Nur ein Busteilnehmer darf senden, 
die anderen müssen in dem Moment still sein. Wenn 2 oder mehr 
gleichzeitig senden werden die heiß.

RS485 selbst stellt keine Möglichkeit bereit auszuhandeln wer wann 
senden darf. Das muss Dein Protokoll selbst machen.

Ich könnte mir vorstellen dass da das Problem ist.

Noch ne andere Frage: warum ein Attiny85 an den Sensoren? Der hat weder 
nen UART noch nen I2C oder SPI. Beides brauchst Du aber an der Stelle. 
Man kann das natürlich in Software selbst schreiben, ist aber mühsam. 
Ich würde daher statt dessen irgendeinen kleinen ARM-basierten 
Controller vorschlagen. Die haben dafür fertige Einheiten in Hardware. 
STM32C011F4, STM32F030F4, oder so die Größe. Gibt auch gut passende aus 
China, WCH, Puya etc. Die sind dann auch noch klar billiger als der 
Attiny85.

: Bearbeitet durch User
von N. M. (mani)


Lesenswert?

Gerd E. schrieb:
> Ich würde daher statt dessen irgendeinen kleinen ARM-basierten
> Controller vorschlagen. Die haben dafür fertige Einheiten in Hardware.
> STM32C011F4, STM32F030F4, oder so die Größe.

Oder noch besser gleich mit CAN. Dann braucht es tatsächlich auch kein 
aufwändiges Protokoll weil einfach jeder sendet wann er will.
Die LPC11Cx sind da ziemlich genial mit CAN Treiber onboard. Sind aber 
schon ein Stück alt.

Alternativ einfach 8 getrennte RS485 Lines 😁
Dann braucht es keine Richtungsumschaltung. Der Pi könnte dann einfach 
immer hören und jeder Sensor sendet nur. Ist aber eher die quick und 
dirty Variante.

: Bearbeitet durch User
von Gerd E. (robberknight)


Lesenswert?

N. M. schrieb:
> Oder noch besser gleich mit CAN. Dann braucht es tatsächlich auch kein
> aufwändiges Protokoll weil einfach jeder sendet wann er will.

Ja, CAN hat schon seine Vorzüge. Für sowas wie das Auslesen der Sensoren 
hier kann das sehr gut passen. Die Sensoren senden einfach regelmäßig 
von sich aus ihre Messwerte.

Nachteil hier ist dass der RP2350 keinen integrierten CAN-Controller 
hat. Man braucht also einen extra Baustein dafür. Sowas wie z.B. den 
MCP2515.

Für die Anwendung hier ist aber RS485 auch nicht falsch. Man braucht 
halt nur ein Protokoll was dafür geeignet ist. Z.B. Modbus-RTU würde 
funktionieren und ist für solche Anwendungen auch weit verbreitet.

: Bearbeitet durch User
von N. M. (mani)


Lesenswert?

Gerd E. schrieb:
> Nachteil hier ist dass der RP2350 keinen integrierten CAN-Controller hat

Er hat doch Tinies und richtige Pis. Kein RP! Aber ja. Die haben kein 
CAN. Aber es braucht so oder so einen Chip mehr (z.B. RS485 Treiber).

Gerd E. schrieb:
> Für die Anwendung hier ist aber RS485 auch nicht falsch.

Klar. Das geht super mit RS485. Auch über weite Strecken. Datenrate ist 
ja bei Luftfeuchtigkeit/Temperatur sehr gering.

Gerd E. schrieb:
> Man braucht halt nur ein Protokoll was dafür geeignet ist. Z.B.
> Modbus-RTU würde funktionieren und ist für solche Anwendungen auch weit
> verbreitet.

Klar kann man machen. Es reicht aber auch ein einfaches 
Request/Response.
Die Richtungsumschaltung muss halt richtig gemacht werden.

: Bearbeitet durch User
von Gerd E. (robberknight)


Lesenswert?

N. M. schrieb:
>> Nachteil hier ist dass der RP2350 keinen integrierten CAN-Controller hat
>
> Er hat doch Tinies und richtige Pis. Kein RP! Aber ja. Die haben kein
> CAN. Aber es braucht so oder so einen Chip mehr (z.B. RS485 Treiber).

Du hast Recht, da hab ich nicht genau genug geschaut.

von Rico P. (rico_p)


Lesenswert?

Sorry für den Schaltplan... man merkt wohl, dass ich das nicht 
regelmäßig mache ;-)

Zur Umschaltung soll es so funktionieren, dass ich vom Pi aus die 
Addresse aufrufe und auf Empfangen umschalte, der entsprechende Attiny 
nimmt die ausgelesenen Daten vom BME280, schickt sie zum Pi und geht 
wieder auf Empfangen. Dann eine kurze Pause und der Pi ruft die nächste 
Addresse ab.

Da die Daten nur aller 15 min Gebraucht werden (oder noch seltener) habe 
ich genügend Puffer für die Hin- und Herschalterei...

Das immer nur ein Teinehmer senden darf und alle anderen hören, ist mir 
bekannt. Der Pi (GPIO22) zieht beim hochfahren auf GND und schaltet den 
SN75176 auf Empfangen. Der Attiny85 ist so programmiert, dass er den 
SN75176 15 sek. Zeit gibt (Hochfahren) und dan sendet er 5 sek. und geht 
1 sek. auf Empfangen. So zumindest ist es gedacht. Laut MEsswerte sollte 
das auch so sein:

Pi: RE/DE:Low(GND), R:+4,2V , D:0V, VCC:+5V, A/B:2,5V
beim Attiny ist halt RE/DE:+3,3V

Warum ich mich für diese Variante entschieden habe 
..................................
Ich denke, weil mir das Wissen und die Erfahrung fehlen, habe ich es für 
die minimalistischste Variante gehalten und zudem arbeite viel mit Pi's 
und es hieß, das Attiny leicht zum programmieren sind und... naja, 
vieleicht auch einfach nur weil es auf meiner Suche das erste war, was 
ich halbwegs verstanden habe.

Außerdem kann ich den Attiny über SPI direkt mit dem Pi programmieren... 
Einfach Spannung ran... 3 Kabel, den Pi mit avrdude einrichten und in 
Visual Studio Platformio... Das fand ich für mich am einfachsten und für 
alles andere gibt bei Git ja softwarelösungen (beim BME musste ich zwar 
auch die eine oder andere ausprobieren, dafür ist es hobby)

Die Lösung warum der SN75 auf dem Attiny-Board heiß wird, hat aber 
niemand gesehen...
Grundsätzlich sollte es aber gehen? Oder?

: Bearbeitet durch User
von Gerd E. (robberknight)


Lesenswert?

Rico P. schrieb:
> Zur Umschaltung soll es so funktionieren, dass ich vom Pi aus die
> Addresse aufrufe und auf Empfangen umschalte, der entsprechende Attiny
> nimmt die ausgelesenen Daten vom BME280, schickt sie zum Pi und geht
> wieder auf Empfangen. Dann eine kurze Pause und der Pi ruft die nächste
> Addresse ab.

ok, grundsätzlich sollte das so gehen.

> Die Lösung warum der SN75 auf dem Attiny-Board heiß wird, hat aber
> niemand gesehen...

Ich würde als erstes herausfinden ob es ein Hardware oder 
Softwareproblem ist.

Nimm also den RasPi und erst mal nur einen von den Tinys. Als erstes 
Verifizieren dass das Problem dann noch auftritt. Dann mit dem Oszi die 
DE-Leitung der beiden SN75176 anschauen. Es darf immer nur eine von 
beiden an sein, niemals beide gleichzeitig.

von Rico P. (rico_p)


Lesenswert?

Was ich schon getestet habe, ist den SN75176 auf dem Attiny Board ohne 
Busleitung laufen zu lassen. Und da wird er auch heiß.

Habe den SN75176 auch schon getauscht... es ändert sich nichts...

Aktuell ist immer nur ein Attiny im Bus... bin ja noch am testen...

: Bearbeitet durch User
von H. H. (hhinz)


Lesenswert?

Rico P. schrieb:
> Habe den SN75176 auch schon getauscht... es ändert sich nichts...

Fälschungen gekauft?

von Rico P. (rico_p)


Lesenswert?

Bei reichelt.de...?

Könnte das sein?

: Bearbeitet durch User
von H. H. (hhinz)


Lesenswert?

Rico P. schrieb:
> Bei reichelt.de...?
>
> Könnte das sein?

Nicht unmöglich.

Zeig halt mal einen.

von Rainer W. (rawi)


Lesenswert?

N. M. schrieb:
> Edit: falsch abgebogen. GPIO22 macht die Umschaltung. Also es gibt hier
> Leute die kotzen immer über zu viel Labels. Ich bekomme Brechreiz bei
> dem Schaltplan. Hier hätten ein paar Labels gut getan.

Um so ein Leitungswirrwarr zu vermeiden, wurden Busleitungen erfunden. 
Dann sind im Schaltplan Anfang und Ende gut erkennbar und wenn man sich 
für Details interessiert, stehen an den Entries die Label.

Das würde allerdings nichts daran ändern, dass bei einem nichtssagenden 
Kästchen als Schaltzeichen für einen Bustreiber, die Steuerfunktion 
nicht klar erkennbar ist. Konsequenterweise müsste man bei dem Symbol 
für den Optokoppler die Innereien ebenfalls weg lassen, um ein 
einheitliches Erscheinungsbild zu wahren ;-)

: Bearbeitet durch User
von N. M. (mani)


Lesenswert?

Rico P. schrieb:
> Der Attiny85 ist so programmiert, dass er den SN75176 15 sek. Zeit gibt
> (Hochfahren) und dan sendet er 5 sek. und geht 1 sek. auf Empfangen.

Oben hast du geschrieben dass der Tiny nur auf eine Anfrage Antwort. Wie 
passen dazu 5s senden und feste Umschaltzeiten?

von Rico P. (rico_p)


Angehängte Dateien:

Lesenswert?

Reicht das von der Qualität

von N. M. (mani)


Lesenswert?

Rainer W. schrieb:
> Um so ein Leitungswirrwarr zu vermeiden

wäre es alleine schon gut VCC/5V/3V3/GND nicht über die komplette 
Platine zu ziehen.

von Gerd E. (robberknight)


Lesenswert?

Fälschung wäre schon möglich.

Ich vermute aber eher einen Schaltungs- oder Lötfehler. Der Schaltplan 
ist leider so unübersichtlich dass sich da gut ein Fehler verstecken 
kann.

Vermutlich wäre es am besten den Schaltplan Stück für Stück aufzuräumen. 
Hier jetzt erst mal mit SN75176 und seinem Drumrum anfangen. Dabei immer 
prüfen dass die Netzliste gleich bleibt.

von N. M. (mani)


Lesenswert?

Die üblichen 100nF Keramik fehlen auch an VCC der Treiber. Und wenn das 
Symbol an den BMEs richtig ist...

von Gerd E. (robberknight)


Lesenswert?

Hmm, die SN75176 gehören ja zum Urschleim was RS485 angeht. Also keine 
integrierten Failsafes. Man muss also auf jeden Fall über Widerstände 
sicherstellen dass der Buspegel immer im definierten Bereich liegt. Die 
fehlen hier. Er ist also klar im undefinierten Bereich wenn keiner auf 
dem Bus sendet.

Es könnte sein dass der SN75176 dann anfängt zu schwingen oder ähnlichen 
Mist macht. Ich hab schon lange keinen so alten Transceiver mehr in der 
Hand gehabt der keine integrierten Failsafe-Funktionen hatte. Kann daher 
nicht einschätzen wie üblich solche Probleme bei denen sind.

von Rainer W. (rawi)


Angehängte Dateien:

Lesenswert?

Gerd E. schrieb:
> Hier jetzt erst mal mit SN75176 und seinem Drumrum anfangen.

Im Datenblatt gibt es sogar ein Blockschaltbild, das im Schaltplan als 
Symbol in vereinfachter Form die Funktion erheblich klarer darstellt, 
als dieser nichtssagende Kasten.

von Rico P. (rico_p)


Lesenswert?

N. M. schrieb:
> Rainer W. schrieb:
>> Um so ein Leitungswirrwarr zu vermeiden
>
> wäre es alleine schon gut VCC/5V/3V3/GND nicht über die komplette
> Platine zu ziehen.

Kannst du mal, ein Beispiel hochladen... dann versuch ich es beim 
nächsten mal zu beachten..
Wie gesagt, mach das nicht so oft und im Netz findet man ja auch alles 
mögliche...

Sorry noch einmal

von Rico P. (rico_p)


Lesenswert?

Rainer W. schrieb:
> Gerd E. schrieb:
>> Hier jetzt erst mal mit SN75176 und seinem Drumrum anfangen.
>
> Im Datenblatt gibt es sogar ein Blockschaltbild, das im Schaltplan als
> Symbol in vereinfachter Form die Funktion erheblich klarer darstellt,
> als dieser nichtssagende Kasten.

Ich arbeite mit KiCAD... da kann ich den SN75176 so auswählen, der Name 
steht dran, die Pins sind bezeichnet. Ich als Leie wüsste nicht, was an 
dem Symbol mit den 2 OP's besser ist..., außerdem fehlt GND und VCC... 
gut ich muss wissen was der SN75176 ist

von N. M. (mani)


Lesenswert?

Rico P. schrieb:
> Ich arbeite mit KiCAD

Dann stell Mal noch die Schematic Datei hier ein. Dann kann man 
zumindest Highlighten.

Rico P. schrieb:
> Wie gesagt, mach das nicht so oft und im Netz findet man ja auch alles
> mögliche

Hier kannst du auch nochmal bisschen was nachlesen:
Richtiges Designen von Platinenlayouts

Rico P. schrieb:
> N. M. schrieb:
>> Rainer W. schrieb:
>>> Um so ein Leitungswirrwarr zu vermeiden
>>
>> wäre es alleine schon gut VCC/5V/3V3/GND nicht über die komplette
>> Platine zu ziehen.
>
> Kannst du mal, ein Beispiel hochladen

Na einfach das GND Symbol nicht nur einmal setzen und dann von da aus 
Netze über den kompletten Schaltplan ziehen sondern mehrere GND Symbole 
setzen.
Dann könnte ich wetten dass nur noch die Hälfte aller Leitungen da sind.

von Rico P. (rico_p)


Lesenswert?

Gerd E. schrieb:
> Hmm, die SN75176 gehören ja zum Urschleim was RS485 angeht. Also keine
> integrierten Failsafes. Man muss also auf jeden Fall über Widerstände
> sicherstellen dass der Buspegel immer im definierten Bereich liegt. Die
> fehlen hier. Er ist also klar im undefinierten Bereich wenn keiner auf
> dem Bus sendet.
>
> Es könnte sein dass der SN75176 dann anfängt zu schwingen oder ähnlichen
> Mist macht. Ich hab schon lange keinen so alten Transceiver mehr in der
> Hand gehabt der keine integrierten Failsafe-Funktionen hatte. Kann daher
> nicht einschätzen wie üblich solche Probleme bei denen sind.

Du meinst die 680 Ohm gegen 5V und GND für A und B

Das mit den 30 Minuten warten bis ich wieder schreiben kann, ist echt 
nervig... :-(

Morgen geht's weiter... jetzt bin ich zu müde um immer 30 Minuten zu 
warten

von H. H. (hhinz)


Lesenswert?

Rico P. schrieb:
> Reicht das von der Qualität

Reicht völlig, eindeutig eine Fälschung.

von Rainer W. (rawi)


Lesenswert?

Rico P. schrieb:
> Ich als Leie wüsste nicht, was an dem Symbol mit den 2 OP's besser ist.

Wie kommst du auf OPs?

Ich sehe an der Darstellung auf einen Blick, ohne irgendwelche 
Buchstaben entziffern und deren Bedeutung im Datenblatt nachschlagen zu 
müssen, in welche Richtung die Signale laufen, welches uC-seitig 
Signalein- und -ausgang sind, dass der Empfänger als Schmitt- Trigger 
ausgeführt ist, welches die Busleitungen sind, dass es sich um 
komplementäre Busleitungen handelt, welches die zugehörigen Freigaben 
sind und auch noch einmal deren Logik. Habe ich irgendetwas vergessen?

> außerdem fehlt GND und VCC.

Es ging mir mit dem Beispiel um die Darstellung der Funktionalität. 
Spätestens, wenn man in der Schaltung messen möchte, ist auf jeden Fall 
sinnvoll, die Versorgungsanschlüsse anzugeben und nicht in ein 
getrenntes Symbol auszulagern.

: Bearbeitet durch User
von Rico P. (rico_p)


Lesenswert?

Rainer W. schrieb:
> Rico P. schrieb:
>> Ich als Leie wüsste nicht, was an dem Symbol mit den 2 OP's besser ist.
>
> Wie kommst du auf OPs?
>
> Ich sehe an der Darstellung auf einen Blick, ohne irgendwelche
> Buchstaben entziffern und deren Bedeutung im Datenblatt nachschlagen zu
> müssen, in welche Richtung die Signale laufen, welches uC-seitig
> Signalein- und -ausgang sind, dass der Empfänger als Schmitt- Trigger
> ausgeführt ist, welches die Busleitungen sind, dass es sich um
> komplementäre Busleitungen handelt, welches die zugehörigen Freigaben
> sind und auch noch einmal deren Logik. Habe ich irgendetwas vergessen?
>
>> außerdem fehlt GND und VCC.
>
> Es ging mir mit dem Beispiel um die Darstellung der Funktionalität.
> Spätestens, wenn man in der Schaltung messen möchte, ist auf jeden Fall
> sinnvoll, die Versorgungsanschlüsse anzugeben und nicht in ein
> getrenntes Symbol auszulagern.

Das sind halt die Unterschiede zwischen Profis und mir...

Zum Thema Fälschung... wie sollte denn ein Original aussehen?

https://www.reichelt.de/de/de/shop/suche/SN75176BP?GROUPINDEX=0&search=SN75176BP

Die habe ich bestellt... Der dumme Leie halt... woran erkenne ich ein 
Original?

: Bearbeitet durch User
von Christoph M. (mchris)


Lesenswert?

Mal eine Frage: der SN75176 ist für 5V ausgelegt. Der Raspi für 3.3V. 
Gibt es einen Baustein für 3.3V ?
Außerdem: Vor kurzem hat mir jemand LVDS empfohlen. Das dürfte moderner 
sein.

von Rico P. (rico_p)


Lesenswert?

Christoph M. schrieb:
> Mal eine Frage: der SN75176 ist für 5V ausgelegt. Der Raspi für 3.3V.

Das ist korrekt... deshalb ja auch die Trennung durch die LTV's

> Gibt es einen Baustein für 3.3V ?

Mit sonstigen gleichen Eigenschaften habe ich keinen gefunden, der 
annähernd preisgünstig ist (wenn ich überhaupt einen gefunden habe)

> Außerdem: Vor kurzem hat mir jemand LVDS empfohlen. Das dürfte moderner
> sein.

Wie man oben lesen kann arbeite ich mit dem Urschleim... ist 
wahrscheinlich jeder IC moderner.
Bin halt Fan von DIP + Sockel Varianten für einfaches Tauschen.
Da habe ich jetzt keinen auf die schnelle gefunden (reichelt)

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Rico P. schrieb:
> Das sind halt die Unterschiede zwischen Profis und mir...

Gerade, wenn ich nicht jeden Tag mit den Bauteilen arbeite, mache ich 
mir das Leben doch möglichst einfach, indem ich mein Bauteil in der 
Bibliothek so anlege, dass möglichst viel Infos im Symbol stecken. 
Außerdem ist es dann auch nach ein paar Monaten viel bequemer, den 
Schaltplan wieder zu verstehen.

: Bearbeitet durch User
von Rico P. (rico_p)


Angehängte Dateien:

Lesenswert?

Zu meinem Vorgehen nachdem mein Vorhaben stand...

erst bei Reichelt bestellt --> Datenblatt über Hersteller

dann habe ich einfach die Darstellung für meine Schaltungen umgesetzt...

Wenn man sich auf das nicht mehr verlassen kann :-(

von Rico P. (rico_p)


Lesenswert?

Gut... heute komme ich nicht dazu, aber würde es helfen, wenn ich den 
Schaltplan noch einmal überarbeite und dann incl. der Schematic-Datei 
einstelle?

Ich bräuchte halt folgende Aussagen:

Vorausgesetzt ich habe die Original-Bauteile von (Texas) (wo keine 
Pull-Widerstände angegeben sind), ob die Schaltung so funktionieren 
sollt, natürlich immer unter der Voraussetzung der richtigen 
Programmierung.

Dann würde ich mich an die Arbeit machen den Schaltplan und 
Nachfolge-Arbeiten neu aufzurollen.

Ich möchte, wenn möglich grundsätzlich nicht mehr Bauteile verwenden... 
Das mit den Keramik-Elko könnte ich noch berücksichtigen, aber wäre eine 
Funktion ohne möglich hab ja den LDO bei 5V und 3,3V gepuffert.

Dann würde ich das alles am Mittwoch mal versuchen auf die Reihe zu 
bekommen...

von Rainer W. (rawi)


Lesenswert?

Rico P. schrieb:
> Schaltplaene.pdf

Wozu sollen eigentlich die ganzen Optokoppler gut sein, wenn in der 
Schaltung doch alles munter verbunden ist? Isolieren tun die effektiv 
nichts.

von N. M. (mani)


Lesenswert?

Rico P. schrieb:
> Gut... heute komme ich nicht dazu, aber würde es helfen, wenn ich den
> Schaltplan noch einmal überarbeite und dann incl. der Schematic-Datei
> einstelle?

Stell sie vorher auch noch ein. Dann finden wir evtl die Ursache warum 
deine aktuelle Platine nicht geht.

Wenn du das erst veränderst stimmt nachher nichts mehr zusammen.

Rico P. schrieb:
> Das mit den Keramik-Elko könnte ich noch berücksichtigen, aber wäre eine
> Funktion ohne möglich hab ja den LDO bei 5V und 3,3V gepuffert.

Der LDO und die "langsamen" Elkos helfen dir bei EMV Problemen halt 
nichts. Und wenn du ihn unten an die gleichen Pads wie den Elko als SMD 
dranpopelst. Drauf machen würde ich den!

Wenn du es besser weißt als der Bauteilehersteller. Der sagt nämlich 
eindeutig es muss einer dran.
Als grobe Regel kannst du dir merken: an jeden Käfer so dicht wie 
möglich 100nF.
Im Nachbarthread wird gerade gefragt wie wichtig EMV Kenntnisse sind. 
Ich sage es Mal so: Du willst das nicht auch noch rausfinden.

Die sprichst von 25m Leitung über die du dir allen möglichen Dreck 
einfängst!

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Rico P. schrieb:
> Vorausgesetzt ich habe die Original-Bauteile von (Texas) (wo keine
> Pull-Widerstände angegeben sind), ob die Schaltung so funktionieren
> sollt, natürlich immer unter der Voraussetzung der richtigen
> Programmierung.

Die Bias-Widerstände sind nicht erforderlich, falls garantiert ist, dass 
immer einer der Bus-Teilnehmer auf Sendung ist oder die Bus-Transceiver 
mit dem undefinierten Pegel zurecht kommen. Die zusätzlichen Widerstände 
stellen vernünftige Ruhepegel auf dem Bus sicher, falls kein Sender 
aktiv ist.

Hier ein paar Erläuterungen von TI zu dem Thema:
RS-485 failsafe biasing: Old versus new transceivers
https://www.ti.com/lit/pdf/slyt514

Rico P. schrieb:
> Das mit den Keramik-Elko könnte ich noch berücksichtigen ...

Keramik-Elkos gibt es nicht. Keramikkondensatoren und 
Elektrolyte-Kondensatoren  sind im Aufbau grundverschieden.

: Bearbeitet durch User
von Rico P. (rico_p)


Lesenswert?

Rainer W. schrieb:
> Rico P. schrieb:
>> Schaltplaene.pdf
>
> Wozu sollen eigentlich die ganzen Optokoppler gut sein, wenn in der
> Schaltung doch alles munter verbunden ist? Isolieren tun die effektiv
> nichts.

Eigentlich der bei SN75176 Pin 1 (R) damit ich die 5V vom Pi und Attiny 
fern halte. OK der andere ist überflüssig...

Denke aber ich habe den Fehler im Schaltplan gefunden...

Beim Pfad +5V auf dem Attiny-Board komme ich über den 1 kOhm Widerstand 
und die Diode nach RE/DE und weiter zurück auf den GPIO 22 bzw Pin 6 PB1 
des Attiny. Ich teste heute mal alles ohne die LED D6.

Das heißt die weiße LED (für sig. Empfangen) fällt weg und es wird nur 
noch Senden angezeigt... was soll's.

???

von N. M. (mani)


Lesenswert?

Rico P. schrieb:
> Denke aber ich habe den Fehler im Schaltplan gefunden...

Hmmm, da bin ich mir noch nicht so sicher ob das alles war.

Rico P. schrieb:
> Beim Pfad +5V auf dem Attiny-Board komme ich über den 1 kOhm Widerstand
> und die Diode nach RE/DE und weiter zurück auf den GPIO 22 bzw Pin 6 PB1
> des Attiny. Ich teste heute mal alles ohne die LED D6.

Der Tiny bekommt über die Diode D6 5V am Pin PB1 ab. Das ist natürlich 
ein Problem für den Tiny. Aber warum wird dann der RS485 Treiber heiß?

Es geht auch nicht auf GPIO22 am Pi, oder?
Das geht doch auf MISO(5). Das wäre GPIO9(21/MISO) am PI.

von Georg M. (g_m)


Angehängte Dateien:

Lesenswert?

Übrigens, die aktuellen Tinys können auch den RS-485.

von Bauform B. (bauformb)


Lesenswert?

Diese Optokoppler haben noch einen anderen Nachteil: es funktioniert nur 
bis 4800 Baud zuverlässig, 9600 geht meistens gerade noch. Für 8 
Temperaturen reicht das natürlich, aber man muss dran denken. Es gibt 
viel schnellere Optokoppler, aber zum 10-fachen Preis.

RS-485 Transceiver für 3.3 Volt sind absolut normal, 5 Volt Typen gibt's 
nur noch für Ersatzteile. SMD ist absolut normal, THT gibt's nur noch 
für Sonderfälle. Die Kombination, und dann noch von Reichelt, ist 
aussichtslos. Digikey hat noch ca. 4 Typen für 5.95 bis über 15 Euro 
(von ca. 1100 Typen, die hier einsetzbar wären).

Moderne RS-485 Bausteine sind eigentlich unkaputtbar, insofern wäre 
der Sockel für mich kein Argument, aber ich kann es verstehen.

Moderne RS-485 Bausteine brauchen auch nur 1mA statt 60mA, die alten 
werden ja schon im Leerlauf heiß.

: Bearbeitet durch User
von Rico P. (rico_p)


Lesenswert?

N. M. schrieb:
> Rico P. schrieb:
>> Denke aber ich habe den Fehler im Schaltplan gefunden...
>
> Hmmm, da bin ich mir noch nicht so sicher ob das alles war.
>
Nicht alle aber einer von allen...
> Rico P. schrieb:
>> Beim Pfad +5V auf dem Attiny-Board komme ich über den 1 kOhm Widerstand
>> und die Diode nach RE/DE und weiter zurück auf den GPIO 22 bzw Pin 6 PB1
>> des Attiny. Ich teste heute mal alles ohne die LED D6.
>
> Der Tiny bekommt über die Diode D6 5V am Pin PB1 ab. Das ist natürlich
> ein Problem für den Tiny. Aber warum wird dann der RS485 Treiber heiß?
>
> Es geht auch nicht auf GPIO22 am Pi, oder?
> Das geht doch auf MISO(5). Das wäre GPIO9(21/MISO) am PI.
Hast natürlich recht 😀 aber das sollte sich ohne die LED erledigt haben

von H. H. (hhinz)


Lesenswert?

Bauform B. schrieb:
> Moderne RS-485 Bausteine brauchen auch nur 1mA statt 60mA, die alten
> werden ja schon im Leerlauf heiß.

Naja, von 300mW wird ein PDIP-8 nicht wirklich heiß.

von Rico P. (rico_p)


Lesenswert?

Ich hätte vielleicht erst einmal hier fragen sollen.
Werde mir das alles Morgen mal zu Gemüte führen.

von Rico P. (rico_p)


Lesenswert?

Bauform B. schrieb:
> Moderne RS-485 Bausteine sind eigentlich unkaputtbar, insofern wäre
> der Sockel für mich kein Argument, aber ich kann es verstehen.
>
> Moderne RS-485 Bausteine brauchen auch nur 1mA statt 60mA, die alten
> werden ja schon im Leerlauf heiß.

also wäre z.B. der MAX3485 die bessere Wahl und den könnte ich ja auch 
notfalls mit 5V betreiben...

und ich werde mal meinen Lieferanten überdenken...

: Bearbeitet durch User
von Bauform B. (bauformb)


Lesenswert?

Ja, aber... der ist überhaupt nicht für 5V spezifiziert. Er wird nicht 
direkt explodieren, aber niemand sagt, dass es funktioniert. Aber warum 
auch? Was wäre das für ein Notfall?

Für deine 8 Messstellen würde ich allerdings den MAX3483 nehmen. Der ist 
identisch, aber langsamer, also gutmütiger bei langen Leitungen. Wobei 
250 kBaud ja nicht wirklich langsam ist.

von N. M. (mani)


Lesenswert?

Rico P. schrieb:
> den könnte ich ja auch notfalls mit 5V betreiben
Die "Interoperable with +5V Logic" auf der ersten Seite sind echt etwas 
blöd geschrieben.

Bei den absolut Maximum Ratings steht zwar 7V, auf die sollte man aber 
nie gehen.
Beim VCC Pin unten steht definitiv zwischen 3.0-3.6V!
Die 5V Kompatibilität bezieht sich vermutlich nur auf die Input Pins. So 
interpretiere ich das zumindest.

von Gerd E. (robberknight)


Lesenswert?

Du könntest z.B. diese Transceiver hier verwenden:
https://www.tme.eu/de/details/thvd1400dr/integ-schalt-rs232-rs422-rs485/texas-instruments/

TI THVD1400DR
3-V to 5.5-V Supply voltage
Open, short, and idle bus failsafe
Data rate 500 kbps

0,404 EUR pro Stück bei Mengenstaffel 10.

Wenn Du die dann direkt mit 3,3V betreibst, brauchst Du Dir auch um 
Pegelwandlung mit Deinen Optokopplern etc. keine Gedanken mehr machen.

: Bearbeitet durch User
von Rahul D. (rahul)


Lesenswert?

Nur so am Rande:
Wieso ist die CSB-Leitung bei den Sensoren auf Pin 5 des Steckers und 
auf der AtTiny-Seite auf Pin 6? SDO und CSB sind also vertauscht.

Für die RS485-Bus-Kommunikation könnte man natürlich auch einen 
Controller verwenden, der die RS485-Geschichte auf ein 
Raspberry-kompatibles Signal umsetzt (Controller mit zwei UART oder 
bspw. hat FTDI auch entsprechende USB-Wandler).

von Marek N. (db1bmn)


Lesenswert?

Luftdruck mehrfach messen kannst du dir sparen, sofern dein Bauwerk 
nicht über zig Höhenmeter ausgedehnt ist (1 hPa entspricht ca. 8 m 
Höhendifferenz).
Innerhalb eines Stadgebiets (Umkreis ca. 10 km) ist der Luftdruck etwa 
konstant +/- 1 hPa.

von Bauform B. (bauformb)


Lesenswert?

Rahul D. schrieb:
> Für die RS485-Bus-Kommunikation könnte man natürlich auch einen
> Controller verwenden, der die RS485-Geschichte auf ein
> Raspberry-kompatibles Signal umsetzt

Man könnte dem Kabel 2 Adern mehr spendieren und einen Voll-Duplex-Bus 
bauen. Der RPi braucht dann nur ein ganz einfaches UART, die Umschaltung 
zum Senden entfällt komplett. Er empfängt dann auch nicht mehr die 
eigenen Sendedaten.

Auf der Sensorseite ändert sich vom Protokoll her nichts. Nur die 
Treiberbausteine müssen getrennte Sender und Empfänger haben und der 
Sender muss abschaltbar sein, wie beim normalen RS-485. In DIL-14 wäre 
das der MAX3070EEPD+. Das sieht dann so aus wie im Bild 13 in dem 
Datenblatt, wobei bei RPi DE fest mit VDD und RE fest mit GND verbunden 
wird.

von Stephan S. (uxdx)


Lesenswert?

> im Zuge eines Projektes soll ein unterirdisches Bauwerk über
> mehrere Monate überwacht werden

Sind da Potentialunterschiede zu erwarten?

von Rico P. (rico_p)


Lesenswert?

Marek N. schrieb:
> Luftdruck mehrfach messen kannst du dir sparen, sofern dein Bauwerk
> nicht über zig Höhenmeter ausgedehnt ist (1 hPa entspricht ca. 8 m
> Höhendifferenz).
> Innerhalb eines Stadgebiets (Umkreis ca. 10 km) ist der Luftdruck etwa
> konstant +/- 1 hPa.

Wenn ich über mehrere Monate messe kann sich der Luftdruck schon 
ändern... Ich nehme ja die Klimadaten auf

von Rico P. (rico_p)


Lesenswert?

Rahul D. schrieb:
> Nur so am Rande:
> Wieso ist die CSB-Leitung bei den Sensoren auf Pin 5 des Steckers und
> auf der AtTiny-Seite auf Pin 6? SDO und CSB sind also vertauscht.
>

Du hast völlig Recht, der Fehler liegt auf dem Attiny-Board, ist aber 
unrelevant da nicht verschalten... Diese Anschlüsse wären für SPI 
gewesen. Da ich aber I2C nutze sind diese Anschlüsse nicht belegt.


> Für die RS485-Bus-Kommunikation könnte man natürlich auch einen
> Controller verwenden, der die RS485-Geschichte auf ein
> Raspberry-kompatibles Signal umsetzt (Controller mit zwei UART oder
> bspw. hat FTDI auch entsprechende USB-Wandler).

Für mich als Leien der eher im Programmieren bastelt, klingt das nach 
mehr Bauteilen, mehr verschalten... etc.
Eigentlich wollte ich die BME280 einfach parallel schalten, was aber auf 
Grund Leitungslänge und störungen auf dem SPI nicht funktioniert hat.

von Rahul D. (rahul)


Lesenswert?

Rico P. schrieb:
> Für mich als Leien der eher im Programmieren bastelt, klingt das nach
> mehr Bauteilen, mehr verschalten... etc.
ja, vereinfacht aber die Software auf dem Raspberry, da du dich da nicht 
um die Richtungsumschaltung kümmern musst (ich weiß nicht, wie aufwendig 
das da ist; bei einem AVR ist das Pippifax)

von Rolf (rolf22)


Lesenswert?

Rico P. schrieb:
> Es sollen an 8 Messstellen jeweils Luftdruck,
> Temperatur und Feuchte (BME280) gemessen werden.

Wie genau soll es denn sein? Der Temperatursensor des BME280 ist laut 
Datenblatt ausdrücklich nicht zur Messung der Umgebungstemperatur 
bestimmt. Zitat: "is used for temperature compensation of the pressure 
and humidity sensors and can also be used for ESTIMATION of the ambient 
temperature" (Hervorhebung von mir)

Die Feuchtigkeitsmessung ist zumindest problematisch, google mal nach 
humidity problem bme280.

von Stephan S. (uxdx)


Lesenswert?

Rolf schrieb:
> Der Temperatursensor des BME280 ist laut Datenblatt ausdrücklich nicht zur 
Messung der Umgebungstemperatur bestimmt.

Der SHT41 ist da deutlich besser und auch leicht anzusteuern

Beitrag #7955161 wurde vom Autor gelöscht.
von Rico P. (rico_p)


Lesenswert?

Stephan S. schrieb:
> Rolf schrieb:
>> Der Temperatursensor des BME280 ist laut Datenblatt ausdrücklich nicht zur
> Messung der Umgebungstemperatur bestimmt.
>
> Der SHT41 ist da deutlich besser und auch leicht anzusteuern

also mit der ausgelesenen Abschätzung trifft er aber ziemlich gut, im 
Vergleich von 8 Sensoren habe ich eine Abweichung untereinander von ca. 
0,2 °C und zu meinem Digi-Temp. 0,4 °C... Alles was ich mit einem 
Offset, korrigieren könnte...

von Gerd E. (robberknight)


Lesenswert?

Der Temperatursensor des BME280 ist halt primär darauf ausgelegt die 
Temperatur des internen Feuchtigkeitssensors zu bestimmen. Die ist durch 
etwas Selbsterwärmung, thermische Isolation und andere Effekte nicht das 
selbe wie die Umgebungstemperatur.

Dazu kommt noch dass der Temperatursensor des BME280 ziemlich 
empfindlich auf die Löttemperatur reagiert, also bei nicht optimalem 
Lötprozess hinterher einen dauerhaften Offset von mehreren °C bekommen 
kann.

Muss man halt bei der Auswahl wissen ob einem das ausreicht.

Wenn einem die genaue Temperatur wichtig ist, dann TMP119, auf 
Flex-Platine aufgelötet.

: Bearbeitet durch User
von Stephan S. (uxdx)


Lesenswert?

Gerd E. schrieb:
> Wenn einem die genaue Temperatur wichtig ist, dann TMP119

0.95mm × 1.488mm mit 6 Anschlüssen ...

Beitrag #7955295 wurde vom Autor gelöscht.
von Rico P. (rico_p)



Lesenswert?

Ich nutze das GY-BME280 Board...

von Rico P. (rico_p)


Lesenswert?

Nur noch einmal zum Stand des Projektes:

Ich kann mir den Pi auf die Attiny85 zugreifen und diese programmieren.
Das erste Programm zum Auslesen der BME280 vom Attiny85 aus funktioniert 
auch (Anzeige über blinkende LED [20°C -> 20 mal blinken]).
Das senden mit dem Pi in den UART ist fertig, kann ich aber nicht 
testen. Die Software-UART für den Attiny85 habe ich, dass einzige was 
offen ist, die 2 x SN75176 über UART verbinden. Geschwindigkeit ist 
eigentlich fast egal.

Schaltplan ist in Überarbeitung... Habe noch ein zwei Anpassungen zu 
machen und würde dann alles hochladen. Wenn es möglich ist, würde ich 
gerne bei meinen Bauteilen bleiben.
Falls noch wichtige Hinweise existieren, die ich beachten muss, würde 
ich diese in die Aktualisierung noch einbetten.

Aber schon mal vielen Dank für die vielen Hinweise und Ratschläge.

von Rahul D. (rahul)


Lesenswert?

Rico P. schrieb:
> Das senden mit dem Pi in den UART ist fertig, kann ich aber nicht
> testen.

Wenn den Raspberry Pis und dein AtTiny ein UART mit dem selben Pegel 
(z.b. 5V) haben, kannst du die direkt miteinander verbinden.
Dann lässt du ein Terminalprogramm auf dem Raspberry Pi laufen und 
kannst dir die Werte / Kommunikation ansehen.

Rico P. schrieb:
> 2 x SN75176

Hast du die aus dem Museum? (Im Louvre "ausgeliehen"?)
SCNR Die Dinger habe ich vor 20 Jahren zuletzt verbaut.

von Rainer W. (rawi)


Lesenswert?

Rico P. schrieb:
> Das senden mit dem Pi in den UART ist fertig, kann ich aber nicht
> testen.

Wie kannst du von einer ungetesteten Funktion behaupten, dass sie fertig 
ist?

Warum hängst du nicht einen Empfänger dran und guckst, wobei der Raspi 
wohl eher 3.3V spricht?

: Bearbeitet durch User
von Rico P. (rico_p)


Angehängte Dateien:

Lesenswert?

So nun habe ich erst einmal die Schaltpläne angepasst...

wären diese so in Ordnung?
Ich habe auch die Hinweise weitestgehend eingearbeitet...
Vielleicht kann ja noch einmal jemand darüber schauen...

Sonst noch Hinweise für die Schaltpläne (bin gerade im Lernmodus)

von Rainer W. (rawi)


Lesenswert?

Rico P. schrieb:
> Sonst noch Hinweise für die Schaltpläne (bin gerade im Lernmodus)

Du hast in den Schaltplanfetzen mehr Labels als Bauteile. Es fehlt das 
Blockschaltbild, aus dem die Zusammenhänge ersichtlich werden.

von N. M. (mani)


Lesenswert?

Rico P. schrieb:
> So nun habe ich erst einmal die Schaltpläne angepasst...

Warum stellst du die Schematic Datei nicht zusätzlich ein? Das macht ein 
Review deutlich einfacher.

Rico P. schrieb:
> wären diese so in Ordnung?

Nö.
Ich hab nur kurz drüber geschaut, aber mir würde das so nicht reichen.

* Diverse Käfer ohne 100nF (U10,U13,U15,...).
* Keinerlei Schutzbeschaltung oder Entstörung am Tiny. Weder 
Versorgungsspannung, noch direkte Eingänge. Z.b. hängt PB1 an 10k 
Richtung GND. Und das über 25m. Das kann nichts werden.
* Allgemein finde ich dein Spannungskonzept nicht gerade optimal. 
Vermutlich willst du für alle Teilnehmer die gleichen 5V verwenden. Die 
Wahrscheinlichkeit sich über das ausgedehnte Netz der Teilnehmer etwas 
einzufangen ist sehr hoch. Wenn auf der Spannung etwas passiert 
(Transitenten, kleiner Einbruch o.ä), dann stürzt dir jeder Teilnehmer 
(einschließlich des PI) einfach ab. Wenn etwas auf deinen externen 3,3V 
passiert, stürzt dir jeder  Tiny oder Sensor ab. Ich würde das versuchen 
mehr zu segmentieren.
Wenn du mehr Störabstand willst nimmst du ein zentrales 24V Netzteil und 
hast bei den Tiny ein SNT mit richtigem Eingangsschutz drauf. Dann würde 
ich mir die 5V Schiene komplett sparen. Klar, der Pi braucht dann auch 
noch ein 24V/5V Netzteil.
* ...

Rico P. schrieb:
> Vielleicht kann ja noch einmal jemand darüber schauen...

Ohne Schematic Datei schwindet bei mir sehr schnell die Lust mich weiter 
durch zu suchen...

: Bearbeitet durch User
von Rico P. (rico_p)


Lesenswert?

> Nö.
> Ich hab nur kurz drüber geschaut, aber mir würde das so nicht reichen.
>
> * Diverse Käfer ohne 100nF (U10,U13,U15,...).
Ok verstanden...
> * Keinerlei Schutzbeschaltung oder Entstörung am Tiny.
Was sind da die Mindestanforderungen?
> Weder Versorgungsspannung, noch direkte Eingänge. Z.b. hängt PB1 an 10k
> Richtung GND. Und das über 25m. Das kann nichts werden.
Was wäre auch hier die Mindestanforderungen?
> * Allgemein finde ich dein Spannungskonzept nicht gerade optimal.
> Vermutlich willst du für alle Teilnehmer die gleichen 5V verwenden. Die
> Wahrscheinlichkeit sich über das ausgedehnte Netz der Teilnehmer etwas
> einzufangen ist sehr hoch. Wenn auf der Spannung etwas passiert
> (Transitenten, kleiner Einbruch o.ä), dann stürzt dir jeder Teilnehmer
> (einschließlich des PI) einfach ab. Wenn etwas auf deinen externen 3,3V
> passiert, stürzt dir jeder  Tiny oder Sensor ab. Ich würde das versuchen
> mehr zu segmentieren.
> Wenn du mehr Störabstand willst nimmst du ein zentrales 24V Netzteil und
> hast bei den Tiny ein SNT mit richtigem Eingangsschutz drauf. Dann würde
> ich mir die 5V Schiene komplett sparen. Klar, der Pi braucht dann auch
> noch ein 24V/5V Netzteil.
> * ...
>
Würde es gehen, wenn ich jedem Attiny-Board einen größeren 
Eingangspuffer spendiere?
Könnte das Host-Board mit Standard Netzteil (Meanwell) versorgen und 
hier auch einen großen Cap setzen.
Grundsätzlich kann im Bauwerk immer mal der Saft weg sein. Dann muss der 
Pi wieder hochfahren und weiter machen. Genau wie alle Attiny Boards.
> Rico P. schrieb:
>> Vielleicht kann ja noch einmal jemand darüber schauen...
>
> Ohne Schematic Datei schwindet bei mir sehr schnell die Lust mich weiter
> durch zu suchen...

Gebe es zu... hab ich vergessen, schau mal was ich heute noch schaffe...

von Rico P. (rico_p)


Angehängte Dateien:

Lesenswert?

ok... erst einmal die Schematic Datei

und nun wieder das Gewitter der Profis...

Bitte einfach in einem Stichpunkt was falsch ist, ich würde es dann erst 
einmal ändern damit ich nach und nach lerne wie ich es gleich richtig 
mache...

: Bearbeitet durch User
von N. M. (mani)


Lesenswert?

Rico P. schrieb:
> Was sind da die Mindestanforderungen?
> ...
> Was wäre auch hier die Mindestanforderungen?

Es kommt drauf an :-)
Wenn ich es für mich machen würde, würde ich das Konzept ändern.

Ich würde die MISO/MOSI/CLK/RESET nur auf der Platine halten fürs erste 
Programmieren/Debuggen und garnicht ins Feld führen. Vor allem nicht 
über so eine lange Strecke. Da ist es meiner Meinung nach 
vorprogrammiert dass man sich was drüber einfängt und dann entweder 
etwas abstürzt oder sogar zerstört wird. Am Pi oder an den Tinies. Beide 
Seiten möglich.

Wenn man die Pins also nicht im Feld hat, spart man sich schonmal die 
Notwendigkeit diese Pins schützen zu müssen. Update der Tinies dann über 
einen RS485-Bootloader und Reset über das Schalten der 
Versorgungsspannung der Tinies durch den Pi(entweder einzeln oder alle 
zusammen).
Zusätzlich sparst du Kupfer weil du nur noch 4 Adern brauchst anstatt 8 
:-)

Dann bleibt noch die Versorgungsspannung und die 2 Pins des RS485 
Treiber übrig.
Die Treiber sind normalerweise ziemlich robust.
Dein ausgesuchter SN75176 kann z.B. immerhin -10V bis 15V an seinen 
A/B-Pins. Schonmal deutlich besser als die 3,3V des Pi/Tinies. Moderne 
Treiber haben meist auch noch ziemlich gute Transientenschutz im kV 
Bereich drin. Finde ich bei deinen nichts im DB, aber alles ist besser 
als ein nackter uC Pin.

Und bei der Spannungsversorgung kommt es halt darauf an. Was willst du 
alles für Schutz haben?
Verpolschutz notwendig? Dann entweder ne Diode (+Sicherung) oder einfach 
ein Stecker der die richtige Polung sicherstellt.
Überspannungsschutz? Von Zehner + Sicherung bis zur Crowbar alles 
denkbar.
Transientenschutz? Dann vllt. noch eine Suppressor/RC/RL Kombi.

Dann würde ich wie gesagt eher einen Schaltregler auf den Tinies nehmen. 
Gibts auch als fertige Module (Traco, Recom, TI, ...). Dann am besten 
was wo bis 24V oder so geht. Dann hast du einen deutlich höheren 
Einsatzbereich (z.B. 4,5V-24V) Gerade bei 25m Kabel nicht schlecht.

von Rico P. (rico_p)


Lesenswert?

Danke For die vielen neuen Inspirationen... werde diese durchgehen und 
mich diesbezüglich wieder melden.

Schon mal vielen Dank im voraus

von Rico P. (rico_p)


Lesenswert?

N. M. schrieb:
> Rico P. schrieb:
>> Was sind da die Mindestanforderungen?
>> ...
>> Was wäre auch hier die Mindestanforderungen?
>
> Es kommt drauf an :-)
> Wenn ich es für mich machen würde, würde ich das Konzept ändern.
>
> Ich würde die MISO/MOSI/CLK/RESET nur auf der Platine halten fürs erste
> Programmieren/Debuggen und garnicht ins Feld führen. Vor allem nicht
> über so eine lange Strecke. Da ist es meiner Meinung nach
> vorprogrammiert dass man sich was drüber einfängt und dann entweder
> etwas abstürzt oder sogar zerstört wird. Am Pi oder an den Tinies. Beide
> Seiten möglich.
>
> Wenn man die Pins also nicht im Feld hat, spart man sich schonmal die
> Notwendigkeit diese Pins schützen zu müssen. Update der Tinies dann über
> einen RS485-Bootloader und Reset über das Schalten der
> Versorgungsspannung der Tinies durch den Pi(entweder einzeln oder alle
> zusammen).
> Zusätzlich sparst du Kupfer weil du nur noch 4 Adern brauchst anstatt 8
> :-)
Hier ist mein Gedanke folgender:
Die Verindung werden über lösbare Klemmleisten, bzw. Steckleisten 
realisiert.
Für das Programmieren und Testen wird eine 20cm 4x2x0,8 mm² als 
Verbindungsleitung Zwischen den Boards genutzt und per Jumper 
umgesteckt.
Für den Späteren Betrieb sollten die Pins 5,6,7 getrennt (Jumper) 
sein...

Du hast natürlich Recht - RESET am Attiny ist für den Betrieb ja HIGH

Hier muss ich mir Gedanken machen --> wird überarbeitet :-)

>
> Dann bleibt noch die Versorgungsspannung und die 2 Pins des RS485
> Treiber übrig.
> Die Treiber sind normalerweise ziemlich robust.
> Dein ausgesuchter SN75176 kann z.B. immerhin -10V bis 15V an seinen
> A/B-Pins. Schonmal deutlich besser als die 3,3V des Pi/Tinies. Moderne
> Treiber haben meist auch noch ziemlich gute Transientenschutz im kV
> Bereich drin. Finde ich bei deinen nichts im DB, aber alles ist besser
> als ein nackter uC Pin.
>
> Und bei der Spannungsversorgung kommt es halt darauf an. Was willst du
> alles für Schutz haben?
> Verpolschutz notwendig? Dann entweder ne Diode (+Sicherung) oder einfach
> ein Stecker der die richtige Polung sicherstellt.
> Überspannungsschutz? Von Zehner + Sicherung bis zur Crowbar alles
> denkbar.
> Transientenschutz? Dann vllt. noch eine Suppressor/RC/RL Kombi.

Da es eine reines Eigenprojekt - keine Weitergabe an Dritte, wollte ich 
die Sicherheitsmaßnahmen bei der Spannungsversorgung (auch auf Grund der 
doch günstigen Bauteile) auf ein minimum reduzieren.
Nach meinen Überlegungen sind höchstens 150 mA zu erwarten 
(Attiny-Board) und bei 200 mA auf einer Leitung von ca. 15m mit 0,8 mm² 
(2x2x0,8) habe ich 0,1V Spannungsabfall. Meine Versorgung (Meanwell 5V 
[Adj.] 18A) wollte ich auf ca. 5,15 V laufen lassen. (Ein aktuelles 
Standard Samsung Netzteil bringt sogar 5,19V bei bis zu 2,5A).
Hier dachte ich (wenn ich schon mal versuche zu denken :-) ) das das 
reicht da der SN75 ja 4,75 - 5,25 läuft und der Attiny über LDO auf 3,3V 
ja auch funktionieren sollt.

Das Thema Überspannungsschutz schau ich mir auf jeden Fall an und werde 
es nach besten Wissen und Gewissen integrieren.

>
> Dann würde ich wie gesagt eher einen Schaltregler auf den Tinies nehmen.
> Gibts auch als fertige Module (Traco, Recom, TI, ...). Dann am besten
> was wo bis 24V oder so geht. Dann hast du einen deutlich höheren
> Einsatzbereich (z.B. 4,5V-24V) Gerade bei 25m Kabel nicht schlecht.

Recht hast Du ja ;-)

melde mich nach der Überarbeitung wieder...

Vielen Dank für die Tips

von Rico P. (rico_p)


Lesenswert?

Rico P. schrieb:
>> Wenn man die Pins also nicht im Feld hat, spart man sich schonmal die
>> Notwendigkeit diese Pins schützen zu müssen. Update der Tinies dann über
>> einen RS485-Bootloader und Reset über das Schalten der
>> Versorgungsspannung der Tinies durch den Pi(entweder einzeln oder alle
>> zusammen).
>> Zusätzlich sparst du Kupfer weil du nur noch 4 Adern brauchst anstatt 8
>> :-)
> Hier ist mein Gedanke folgender:
> Die Verindung werden über lösbare Klemmleisten, bzw. Steckleisten
> realisiert.
> Für das Programmieren und Testen wird eine 20cm 4x2x0,8 mm² als
> Verbindungsleitung Zwischen den Boards genutzt und per Jumper
> umgesteckt.
> Für den Späteren Betrieb sollten die Pins 5,6,7 getrennt (Jumper)
> sein...
>
> Du hast natürlich Recht - RESET am Attiny ist für den Betrieb ja HIGH
>
> Hier muss ich mir Gedanken machen --> wird überarbeitet :-)

Eigentlich ganz einfach... normalerweise hat der Attiny intern einen 
Pull-up gegen 3V3 somit immer aktiv wenn nicht bewusst gegen GND 
gezogen.
Sollte also im Normalfall immer aktiv sein, wenn ich die Verbindung 
"RESET" über den Jumper trenne. Ich würde diesem noch eine externen 
100kOhm Pull-up ergänzen.

Somit würde der Plan ja wieder aufgehen und ich könnte für den Betrieb 
ein klassisches 2x2x0,8 verwenden.

von Rico P. (rico_p)


Angehängte Dateien:

Lesenswert?

So...

meine Vorläufige Fassung... vom Projekt

Falls jemand Lust hat sich noch einmal durchzukämpfen:

Für mich entscheidend sind folgende 2 Punkte in angegebener Reihenfolge:

1. Besteht mit diesem Aufbau prinzipiell die Funktionalität?
2. Gibt es Punkte die im Aufbau zwingend fehlen?

Ich weiß, dass man jedes Projekt vom Trabi bis zum Bentley treiben kann.
Der Trabi fährt von A nach B und der Bentley. Ich brauche aber kein 
Bentley, es soll funktionieren...

Ist vielleicht ein übertriebener Vergleich, aber ihr wisst was ich 
meine.

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.