Checksumme beim MetraHit-Protokoll bilden, wie?

Gast #551769
Lesenswert?
• ▲
▼
MetraHit 29S ist ein digitales multimeter. mit einem RS232-adapter ist 
es möglich diesen mit pc zu verbinden und messwerte auszulesen und 
weitere funktionen vorzunehmen.
ich habe mir mit VB2005 ein bytemonitor gemacht und kann mir die vom 
multimeter ankommenden bytes angucken und auswerten(im send mode sendet 
der multimeter immer 13 bytes in einem best. zeitabstand).
jetzt will ich auch was zum multimeter senden, aber verstehe das 
protokoll(sehe anhang) nicht ganz.
vor allem wie die checksumme (seite 5) gebildet wird. und das ganze auf 
der ersten seite unter "Format of data for the bidirectional 
communication" punkt a).

ich versuche im "block send mode" (seite 5) die byteblocks zu 
verschicken.
habe versucht den multimeter z.b. auszuschalten (seite 14 "Command for 
setting Store mode, SEND mode, local mode, switching the multimeter 
off") oder versionsnummer der firmware auszulesen (seite 7 "Read version 
A.B of multimeter firmware, status of the multimeter") aber keine 
reaktion.

vielleicht hat jemand von euch mehr erfahrung mit solchen sachen und 
kann mir weiterhelfen.
Angehängte Dateien:
#6977162
Lesenswert?
• ▲
▼
Das ist eine uralte Frage, auf die ich aber dennoch antworten möchte, 
denn das angehängte Dokument hat es mir kürzlich ermöglicht, das 
METRAHit-Protokoll zu implementieren.

Zu finden auf GitHub: https://github.com/Ho-Ro/OpenMetra (Remote control 
for multimeter Gossen METRAHit 29S via BD232 serial interface)

Das o.g. PDF findet sich nur hier, auch die Suchmaschine meiner Wahl 
zeigt keine andere Fundstelle - daher Danke an das Forum fürs 
Aufbewahren für die (IT-)Ewigkeit! :)

Das sigrok-Projekt kennt auch dieses Multimeter, erfordert aber einen 
Wust an Abhängigkeiten außerhalb meines Debian stable, den ich mir nicht 
antun möchte, daher meine Minimallösung, die mit dem Python-Standard 
auskommt. Nur fürs Plotten braucht es zusätzlich die "matplotlib", die 
über die Paketverwaltung sauber installiert werden kann und die für 
Messwertverarbeitung sowieso auf dem Rechner sein sollte.

Hilfreich ist dennoch ein Blick in die sigrok-Quelle:
https://github.com/sigrokproject/libsigrok/blob/master/src/hardware/gmc-mh-1x-2x/protocol.c

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.