Bin faul.. Und da ich gerade erfolgreich mein Ant Bms ANT-BLE16ZMUB (7-16S, 320A, 2021-11-26) an einen Lolin32Lite gehängt habe, https://github.com/RoboDurden/AntBms-Arduino würde ich wohl auch gerne meinen 48V 5kW Hybrid Inverter dran hängen. Protokoll soll ja für all diese China-Dinger gleich sein: https://www.fve-mp.cz/data/blob/product-application_pdf-20190724092401-8519-pip-gk-mk-protocol.pdf Wenn die Pinbelegung des RJ45 stimmt (1=TX, 2=RX, 8 = GND), dann messe ich 4 Volt an TX und 0 Volt an RX, was ich nicht ganz verstehe. https://secondlifestorage.com/index.php?attachments/rs232_en-png.27492 Üblicherweise erfolgt die Übertragung doch, indem TX den hi-pegel vom RX-pin des Empfängers auf 0 zieht. Ergo hätte ich eher 4V an 2=RX erwartet und 0 Volt (= floating) and 1=TX. Und wieder die übliche Frage, ob die 4V einen RX-Eingang von Serial3 des ESP32 grillen werden. Wobei ich nach meiner Logik die 4V eh mit diode abblocken können sollte. Weil 1=TX seine bits eh mit mosfet auf GND überträgt. Eigentlich ist oft die Rede von 12V bei diesesn Hybriden und von ordentlichem TTL Adapter. An den anderen pins des RS45 messe ich auch Spannung von teils 15V. Mit der Blocking-Diode an 1=TX scheint mir die Sache aber wenigstens sicher. Dann halt mal \x51\x4D\x4F\x44\x49\xC1\x0D rausschicken und sehen ob der Inverter antwortet. https://github.com/tmkasun/solar-hybrid-inverter-monitor/blob/main/tools/check-inverter-python2.py Wirklich wichtig ist mir die Sache aber nicht, drum könnte Ihr mir gerne davon abraten. das Roland und :-)
:
Bearbeitet durch User
Hat natürlich nicht funktioniert und der inverter antwortet nicht. Ich brauch wohl doch ein rs232-ttl modul: https://forum.arduino.cc/t/rs232-read-data-from-mpp-solar-inverter/600960/25?page=2 bzw. https://de.aliexpress.com/item/32946986183.html Vielleicht hat jemand eine Idee wie man das auch mit einem level-shifter-modul machen kann, davon hab ich ein paar rumliegen.
Bei TTL Pegeln hast du am Tx Ausgang einen Ruhepegel von 3,3 oder 5 Volt. RS232 Schnittstellen haben an Tx einen Ruhepegel von -12 Volt. An Rx kannst du in beiden Fällen nichts sinnvolles messen, weil das ein Eingang ist. Das R. schrieb: > Üblicherweise erfolgt die Übertragung doch, indem TX den hi-pegel vom > RX-pin des Empfängers auf 0 zieht. Nein, das verwechselst du wohl mit dem I²C Bus. Das R. schrieb: > Mit der Blocking-Diode an 1=TX scheint mir die Sache aber wenigstens > sicher. Was für eine "Blocking-Diode"? Wenn du eine Schaltung diskutieren willst, dann zeige sich auch. Ich habe keine Lust, die verlinkten Seiten nach irgendeiner Schaltung zu durchsuchen, die du vielleicht verwendest, oder auch nicht. Ohne die Beschreibung deines konkreten Gerätes kann ich dir gar nichts empfehlen, außer die Finger davon zu lassen. Man verbindet nicht einfach irgend etwas miteinander und hofft dass es funktioniert. Eher machst du die Geräte kaputt.
Das R. schrieb: > und 0 Volt an RX, was ich nicht ganz verstehe Das ist für den Empfänger doch völlig korrekt. Wenn es sich um 'TTL' UART handeln sollte, fehlt da ein Pullup, wenn es echte RS232 Pegel sind, wird der Pegel vom TX der Gegenstelle geliefert. Die +/- 12V von RS232 sind übrigens nicht in Stein gemeisselt. MAX 232 z.B. liefert nur +/- 10V und RS232 selber spielt auch mit noch weniger Pegel. Der Klassiker SN75189 Empfänger hat etwa +/- 1,5V Schaltschwelle.
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.