Hallo zusammen,
will mit meinem raspberry pi 3 bei meinem protoneer cnc stepper shield den ENABLE pin von 5V auf low ziehen. Dieser ist mit einem 10K Widerstand auf high. Wenn ich in python
GPIO.output(ENABLE,0)
probiere, schafft es der Pegel nicht auf 0.
Was mache ich falsch?
Über Hilfe würde ich mich sehr freuen.
Liebe Grüße
dabreaka
Hallo zusammen,
will mit meinem raspberry pi 3 bei meinem protoneer cnc stepper shield
den ENABLE pin von 5V auf low ziehen. Dieser ist mit einem 10K
Widerstand auf high. Wenn ich in python
Die GPIO-Pins dürfen niemals mehr als 3.3V sehen, und sie sind auch recht schwach. Du solltest einen Transistor dafür verwenden. Sowas wie ein BSS138 reicht. 100k vom Gate gegen GND.
den ENABLE pin von 5V auf low ziehen. Dieser ist mit einem 10K
Widerstand auf high.
Das wären 100uA von 5V über den Widerstand und die Schutzdiode des Gpio-Pins zu den 3V3 VCC des PI. Und dann 500uA in den Gpio sobald der auf GND geschaltet wird. Sollte eigentlich gehen.
Sind auf den Motortreibermodulen des Shields noch weitere ENABLE-Pullups?
Vielen Dank Euch beiden für die Hilfestellungen - auf dem cnc shield ist für mich nur der ENABLE pin wichtig (s. Anhang) - den muss ich auf low ziehen, dass die Treiber arbeiten. Ich muss mal sehen, wie das mit dem Transistor geht - das shield ist eigentlich für den Arduino - hier funktioniert es auch - aber am raspberry zickt es
das shield hat Sockel für 4 Treiber (A4988) - zwei Sockel brauche ich für x und y Stepper - alle enable pins sind mit einem zentralen enable PIN schaltbar - und das ist ein 10k Pullup zu 5V - den will ich mit einem GPIO auf 0V ziehen
das shield hat Sockel für 4 Treiber (A4988) - zwei Sockel brauche ich
für x und y Stepper - alle enable pins sind mit einem zentralen enable
PIN schaltbar - und das ist ein 10k Pullup zu 5V - den will ich mit
einem GPIO auf 0V ziehen
Ja, ist mir klar. Und sind die zwei Sockel schon belegt, oder schafft es der PI nicht gegen den puren 10k zu 5V? Und falls die zwei Sockel schon belegt sind: Sind auf den Treibermodulen in den Sockeln noch weitere Pullups, zusötzlich zu den 10k suf dem Shield?
Die GPIO-Pins dürfen niemals mehr als 3.3V sehen, und sie sind auch
recht schwach. Du solltest einen Transistor dafür verwenden. Sowas wie
ein BSS138 reicht. 100k vom Gate gegen GND.
Für so einen Kinderkram nimmt man einen beliebigen NPN-Transistor, braucht keinen FET, Elektronik zweite Schulstunde.
Hallo nochmal,
vielen Dank an Euch alle - hab mir einen Transistor besorgt, dann
zunächst den Strom zwischen ENABLE und GND gemessen : 0.5 mA - dann sind das bei 5V genau die 10 kOhm pull up Widerstand
Transistor: 2N 3904 - hab im Datenblatt eine Reihe von Stromverstärkungen gefunden - dann mit 50fach gerechnet (also 3,3V Steuerspannung raspberry - 0,7V Abfall Transistor - geteilt durch 0.5 mA - mal 50 - komme dann auf 260 kOhm - mit einem 270 kOhm Widerstand tut sich nix - dann 47k probiert - auch nichts, dann mit 4,7 k - dann schaltet der Transistor mein ENABLE 5V auf GND
Hallo zusammen,
will mit meinem raspberry pi 3 bei meinem protoneer cnc stepper shield
den ENABLE pin von 5V auf low ziehen. Dieser ist mit einem 10K
Widerstand auf high. Wenn ich in python
Die GPIO-Pins dürfen niemals mehr als 3.3V sehen, und sie sind auch
recht schwach. Du solltest einen Transistor dafür verwenden. Sowas wie
ein BSS138 reicht. 100k vom Gate gegen GND.
fchk
du hattest Recht, mein GPIO18 pin am raspberry ist nun tot ... seufz ...
offensichtlich, die gestorbenen PIs sind deutlich wenn man den Nutzern glauben darf. Vielleicht ist es aber nur falscher Umgang, z.B. Stecken unter Spannung.
Jedenfals scheint ein Raspi SoC sensibler als ein AVR (Arduino) und definitiv nicht 5V tolerant.
na denn müssen ja alle User lügen oder der PI nie kaputt gehen. Was willst du beweisen? (Das es Murphy nicht gibt?)
Hauptsatz, was kaputt gehen kann geht kaputt.
Der Serienwiderstand ist zwecklos wenn die auf 5V aufgeladene Kabelkapazität unter Spannung gesteckt wird.
Ich war bei keinem der getöteten Raspis dabei, Tatsache bleibt er ist nicht 5V tolerant und er ist sensibeler.
Erstens kann ich mir nicht erklären, warum der Pi einen 10k Pullup zu 5V nicht auf GND ziehen kann.
Zweitens kann ich mir nicht erklären, wie ein 10k Pullup zu 5V einen Pi-Gpio zerstören kann.
Und drittens wüsste ich wirklich gerne, wieviel Mikrowatt so eine Schutzdiode in einem IC thermisch abgeleitet bekommt, und ab wann sie durch die Hitze des Strompfads zerstört wird. Klar wird das stark von der Fertigungstechnologie abhängen ...
Ich habe gehört was über den Raspberry Pi kolportiert wird. Broadcom ist zudem reichlich zugeknöpft.
Aber: Es ist bekannt dass Schutzdioden thermisch sterben. Dazu braucht es aber eine gewisse Leistung über eine gewisse Zeit (oder anders ausgedrückt eine gewisse Energiemenge in einer gewissen Zeit). Und ich verstehe nicht, wie ein 10k Vorwiderstand nicht ausreichen soll einen Port zu schützen, wenn auf der anderen Seite des Widerstands 5V anliegen. Ich verstehe es nicht im Sinne von: Nach welchem physikalischen Prinzip richtet ein solches Vorgehen genau welchen Schaden auf dem Silizium an?
Immerhin kann man an einen AVR lt. der bekannten Atmel Appnote über einen geeigneten Widerstand 230V Wechselstrom anlegen!