Welcher Controller? Waveshare: modbus-rtu-relay

#8072728
Lesenswert?

Guten Tag,

kann jemand bitte kurz schreiben, welcher Mikrocontroller auf dem Bord eingesetzt wird? Auf dem Bild[2] in der Mitte links kann man nur sehen, dass er relativ groß ist.

[1] https://www.waveshare.com/modbus-rtu-relay.htm

[2] https://www.waveshare.com/img/devkit/accBoard/Modbus-RTU-Relay/Modbus-RTU-Relay-details-3.jpg

Markus

#8072759
Lesenswert?

Bei Alibaba gibt es etwas schärfere Fotos: https://www.alibaba.com/product-detail/Waveshare-Industrial-Modbus-RTU-8-Ch_1600476550470.html es gibt fast dieselbe Platine mit 6 oder 8 Relais das 4*12-pin-IC scheint von ST zu sein.

: Bearbeitet durch User
#8072838
Lesenswert?

Markus S. schrieb:

kann jemand bitte kurz schreiben, welcher Mikrocontroller auf dem Bord eingesetzt wird?

Was möchtest Du mit der Information anfangen?

Da waveshare recht sicher keinen Sourcecode der Firmware zur Verfügung stellt, wirst Du das Ding nur als "blackbox" nutzen können.

Die eigentliche Aufgabe, ein simples Modbus/RTU-Gerät, lässt sich schon mit simplen 8-Bit-µCs aus der MCS-51-Reihe erledigen. Mehr Rechenleistung ist dafür nicht erforderlich.

#8072896
Lesenswert?

Klar, ob es Originale sind oder irgendwelche CH32 oder was komplett anderes kannst du beim Chinesen nie sagen. Das kann heute so sein und morgen so. Wenn wenigstens das Pinning passt könnte man da worst case für 1-2€ Abhilfe schaffen.

Ich habe vor ein paar Jahren auch Mal so ein Modbus Relais Board gekauft (siehe Anhang). Da war auch ein STM drauf. Ob echt oder nicht kann ich nicht sagen. Die Firmware war ziemlich schlecht und auch nicht wirklich Modbus, weshalb ich sie neu geschrieben hatte. Außerdem wollte ich noch ne Funkfernbedienung.

Vielleicht hat der TO eine ähnliche Motivation. Bei mir ging's ohne Probleme. Kann hier natürlich anders sein.

Angehängte Dateien:
#8072922
Lesenswert?

N. M. schrieb:

Und das Demo Projekt auf der Seite inkludiert auch

Das läuft nicht auf dem Gerät selbst, sondern steuert es an.

Die Demo läuft auf einem NUCLEO-F103RB, an das noch ein RS485 CAN Shield drangeknüppert wird.

Die Demos für Arduino, Raspberry Pi und PLC (SPS) machen es genauso.

Das sagt also nichts über den im Gerät verwendeten µC aus -- und wie ich schon fragte, was soll die Erkenntnis bringen?

#8072984
Lesenswert?

Harald K. schrieb:

Die Demo läuft auf einem NUCLEO-F103RB, an das noch ein RS485 CAN Shield drangeknüppert wird

OK. Scheint wirklich so. Verrücktes Konstrukt. Ein RS485 Treiber würde es auch tun.

Harald K. schrieb:

und wie ich schon fragte, was soll die Erkenntnis bringen?

Muss der TO beantworten. 2 mögliche Anwendungsfälle (bei mir) hab ich genannt.

  1. Gelieferte FW ist schlecht. Also selbst besser machen.
  2. Firmware mit eigenen Dingen erweitern.

Ein anderer Punkt ist vielleicht noch dass man die günstige Hardware für etwas ganz anderes verwenden möchte und deshalb wissen möchte was für ein Controller da drauf ist.

#8072987
Lesenswert?

N. M. schrieb:

  1. Gelieferte FW ist schlecht.

Die macht Modbus, wird ein paar Coils und Input State Register anbieten und fertig. Was soll "schlecht" daran sein?

Also selbst besser machen. 2) Firmware mit eigenen Dingen erweitern.

Heißt: Komplett neu machen inklusive Reverse-Engineering der Hardware. Denn man muss ja schon wissen, welcher Relaistreiber wie an den µC angeschlossen ist etc.

#8073026
Lesenswert?

Harald K. schrieb:

Die macht Modbus, wird ein paar Coils und Input State Register anbieten und fertig. Was soll "schlecht" daran sein?

Ich kann nur von meinem Fall (Board oben) sprechen. Ein Beispiel: Gültige Kommandos wurden teils akzeptiert, gleiches Kommando nochmal gesendet auf einmal nicht mehr. Zuerst dachte ich an Timeouts o.ä. das Verhalten war aber auch mit einem uC dazwischen (der nur für das Timing da war) nicht besser. Teilweise schalteten mehrere Relais gleichzeitig, obwohl nur nur ein Coil geschrieben wurde und die CRC stimmte. Großer Murks eben. Update oder Sourcecode gab es damals nicht für das Board.

Harald K. schrieb:

Heißt: Komplett neu machen inklusive Reverse-Engineering der Hardware.

Durchgangsprüfer an das Relais/OK, einmal über alle Pins des uC fahren. Pin gefunden. Nächster. Keine 10 Minuten für die 8 Relais und 6 Eingänge. Das suchen warum die Werks FW nicht funktioniert hat deutlich länger gedauert.

Für die Software neu schreiben hab ich einfach eine fertige Modbus Lib genommen. Mit PlatformIO ein Projekt aufsetzen und alles reinziehen. War nicht sehr viel. Funktionierte auf jedenfall deutlich robuster als das Original.

Aber der Preis für so eine Platine ist halt unschlagbar. Bekommst du selbst so nicht hin zu den Preis. Bei mir waren es auch nur 24V. Also Isolation der Platine/Relais egal.

Edit: gerade nachgeschaut weil es mich selbst interessiert hatte. Obige Platine 10,07€ (2020) inklusive Versand.

: Bearbeitet durch User

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