Discussion in 'Datenlogger' started by Frank C3, Jun 12, 2010.

  1. Frank C3

    Frank C3 New Member

    Ich würde gerne die Lade-/Entladekurve meines Akkumaster C3 mit einer Temperaturinfo versehen. Ich besitze ein Conrad Voltcraft 306 Data Logger Thermometer K202, dass über eine RS232 Schnittstelle verfügt.

    Das Protokoll ist offengelegt, auf den Befehl A wird ein 10 Byte Datagramm gesendet, dass die Nutzdaten BCD kodiert enthält.

    Lässt sich sowas prinzipiell mit Logview auswerten?
  2. Dominik

    Dominik Administrator Staff Member

  3. Frank C3

    Frank C3 New Member

    Genau das ist es.

    Bei conrad gibt es einen Infobereich. Leider verlieren die Deeplinks gelegentlich ihre Gültigkeit und ich wollte es nicht ungefragt hierhin kopieren.

    Zu finden über
    http://produktinfo.conrad.com/
    Dort nach "306k202" suchen - es geht ein Popup auf, was die Infos verlinkt:
    http://produktinfo.conrad.com/daten...en-DIGITAL_TEMPERATUR_DATA_LOGGER_306K202.pdf

    Wenn ich selbst die Möglichkeit habe (also ohne Delphi Programmierung), kann ich mich gerne selbst an der Konfiguration versuchen. Ich habe allerdings in der LogView Doku keine Infos zur Konfiguration der Kommunikation mit dem Gerät gefunden. Die INI Dateien setzen wohl jeweils einen Programmteil voraus.
  4. Dominik

    Dominik Administrator Staff Member

    Moin Frank,

    sorry, aber ich kann in keiner der beiden PDFs eine info über das Protokoll finden.
    Poste doch bitte mal direkt hier was du gefunden hast. Kann ja nicht viel sein bei 10 Bytes ... ;)

    So einfach geht das nicht. Vielleicht wird es sowas in V3 geben das man selber sein Gerät einbinden kann, aber mit der V2 geht das wie gesagt nicht.
  5. Frank C3

    Frank C3 New Member

    Sorry - bin einfach zu blöd und habe das Ergebnis nicht mehr überprüft. Jatzt aber das Datenblatt:

    http://produktinfo.conrad.com/daten...-01-en-Schnittstelle_DATA_LOGGER_306_K202.pdf

    Es muss nach "306_K202" gesucht werden.

    305-306 Rs232 Protocol

    Digital Output:
    The Digital Output is a 9600bps N 81 serial interface.
    The RX is a 5V normal high input port.
    The TX is a 5V normal high output port.

    The command of Digital Output is list below:
    RS232 command Function Remarks
    K(ASC 4BH) Ask for model No. Return 4 bytes
    A(ASC 41H) Inquire all encoded data Return encoded 10 byte
    H(ASC 48H) Hold button
    M(ASC 4DH) MAX/MIN button
    N(ASC 4EH) Exit MAX/MIN mode
    T(ASC 52H) TIME button
    C(ASC 43H) C/F button
    U(ASC 55H) Dump all memory of thermometer return 32768 bytes
    P(ASC 50H) Load recorded data

    Command K:
    Return 4 bytes. For example, when sending command "K" to the meter, it will return "3","0","6",
    ASCII(13) .

    Command U:
    Return 32768 bytes .

    Command P:
    Instead of returning all 32768 bytes, it only return recorded data .

    Command H:
    Equivalent to one pushing on the HOLD button and no message is returned.

    Command M:
    Equivalent to one pushing on the MAX/MIN button and no message is returned.

    Command N:
    Equivalent to one pushing and hold the MAX/MIN button for two seconds to exit MAX/MIN mode.

    Command T:
    Equivalent to one pushing on the TIME button and no message is returned.

    Command C:
    Equivalent to one pushing on the °C/°F button and no message is returned.

    Command A:
    siehe nächster Beitrag
  6. Frank C3

    Frank C3 New Member

    Die 10 Byte Antwort auf "A"

    Command A:
    1st BYTE:
    The first byte is the start byte, its value is 2.

    2nd BYTE:
    bit7 Temperature Unit: 1->°C 0->°F
    bit6 Battery Condition: 1->Low Battery 0->Battery normal
    bit5 Hold: 1->Hold 0->not Hold
    bit4 -- no use --
    bit3 TIME/Temperature Data in Bytes 6-9: 1->Indicates the LCD is displaying time
    bit2/bit1 MAX/MIN Mode
    0 0 normal mode
    0 1 MAXIMUN mode
    1 0 MINIMUN mode
    1 1 calculate MAX/MIN in background mode .
    bit0 REC (1->recording mode, 0->not recording)

    3rd BYTE:
    bit0: T1 1->T1 is OL, 0->not OL (1)
    bit1: T1 sign 1->T1 value is minus, 0-> value is plus.
    bit2: T1 1->4th byte and 5th byte represent #### , 0->4th byte and 5th byte represent ###.#
    bit3: T2 1->T2 is OL, 0->not OL (1)
    bit4: T2 sign 1-> value is minus, 0-> value is plus.
    bit5: T2 1->8th byte and 9th byte represent #### , 0->8th byte and 9th byte represent ###.#
    bit6: 1->Memory is full. 0->Memory is not full.
    bit7: 1->Auto power off enabled. 0->Auto power off disabled.

    4th BYTE:
    first two BCD code of T1 value.

    5th BYTE:
    last two BCD code of T1 value

    6th BYTE:
    If bit3 of 2nd BYTE =0 : first two BCD code of T1-T2 value.
    If bit3 of 2nd BYTE =1 : two BCD code of month.

    7th BYTE:
    If bit3 of 2nd BYTE =0 : last two BCD code of T1-T2 value.
    If bit3 of 2nd BYTE =1 : two BCD code of day.

    8th BYTE:
    If bit3 of 2nd BYTE =0 : first two BCD code of T2 value.
    If bit3 of 2nd BYTE =1 : two BCD code of hour.

    9th BYTE:
    If bit3 of 2nd BYTE =0 : last two BCD code of T2 value.
    If bit3 of 2nd BYTE =1 : two BCD code of minute.

    10th BYTE:
    end byte, its value is 3, 1st and 10th are used to check frame error.

    (1)
    This bit is set when no thermocouple is connected

Share This Page