CMM-2CH und CMM-3CH können über CAN-FD gesteuert werden. Jeder Messkanal hat einen eigenen Mikrocontroller. Die nominale Baudrate beträgt 1 MBit/s, die Daten-Baudrate 4 MBit/s. Eine DBC-Datei ist auf der Download-Seite erhältlich.
6.1Aufbau der CAN-IDs
Die CAN-IDs sind nach folgendem Schema aufgebaut.
| Bit | Maske | Inhalt | Kommentar |
|---|---|---|---|
| 28 | 0x10000000 | Richtung | 0: PC an uC, 1: uC an PC |
| 27-20 | 0x0FF00000 | Kommando-ID | 0...255, siehe Abschnitt Kommandos |
| 19-12 | 0x000FF000 | Modul-ID | „M“ = 0x4D |
| 11-4 | 0x00000FF0 | Board-ID | 0...31 (über DIP-Schalter am CMM-2CH einstellbar), 255 = 0xFF = Broadcast an alle Boards |
| 3-0 | 0x0000000F | Kanal-ID | 0...2 (beim CMM-xCH fest verdrahtet), 15 = 0xF = Broadcast an alle Kanäle |
Der jeweils höchste Wert für Board (0xFF) und Kanal (0xF) wird als Broadcast verwendet.
Zum Beispiel ist die ID 0x 0 00 4D 01 F das Kommando „SetOnOff“ (= 0x01) für alle Kanäle auf Board 1.
6.2Liste der CAN-Kommandos
Physikalische Werte werden immer als Float (32 Bit / Single Precision / LSB first) und in der Basiseinheit (V / A / sec / °C / ... ) übertragen.
6.2.1CAN-IDs zum Setzen und Abfragen registerartiger Werte
Get-ID und Response-ID sind gleich, da sie sich bereits im Richtungsbit 28 unterscheiden. Zur Verdeutlichung enthalten die Kommandowerte in der folgenden Tabelle das Richtungsbit.
| Set-ID | Get-ID | Response-ID | Kommando | DLC | Daten |
|---|---|---|---|---|---|
| - | - | 0x140 | CommandResponse | 2 | StatusCode (U8), Command (U8) |
0x001 | 0x041 | 0x141 | OnOff | 1 | OnOff [0/1] (U1) |
0x002 | - | - | OnOffSelected | 1 | EnableMask_Board (U8) |
0x003 | 0x043 | 0x143 | MinRange | 1 | MinRange (U8) |
0x004 | 0x044 | 0x144 | MinMaxAvg | 24 | CurrentMin [A] (float), CurrentAvg [A] (float), CurrentMax [A] (float), VoltageDropMax [V] (float), NoOfSamples (U32), RangeMin (U8), RangeMax (U8) |
0x005 | 0x045 | 0x145 | ChannelConfig | 5 | OnOffDefaultValue [0/1] (U1), MeasuredValuesInterval [sec] (float) |
0x006 | 0x046 | 0x146 | CanConfig | 3 | TxFrameFormat [Enum] (U8), NominalBaudrate [Enum] (U8), DataBaudrate [Enum] (U8) |
0x007 | 0x047 | 0x147 | LegacyConfig | 16 | LocalId (U32), LocalIdIsExt (U1), RemoteId (U32), RemoteIdIsExt (U1), LegacyCyclicId (U32), LegacyCyclicIdIsExt (U1), LegacyCyclicMessageEnable (U1) |
| - | 0x048 | 0x148 | Version | 12 | HardwareType (U8), FirmwareVersion (U16), CompileTimestamp (U32), WarningRegister (U16), HardwareVersion (U8) |
| - | 0x049 | 0x149 | SerialNumber | 12 | SerialNumber (String 12 Bytes) |
0x00A | - | - | RestoreDefault | 0 | - |
0x00D | 0x04D | 0x14D | DisableCalibration | 1 | DisableCalibration [0/1] (U1) |
6.2.2Statuscodes
| Code | Beschreibung |
|---|---|
0xA0 | Erfolgreich |
0xE0 | Unbekanntes Kommando |
0xE1 | Ungültiger DLC |
0xE2 | Parameter außerhalb des Wertebereichs |
0xE3 | Flash-Fehler |
0xE4 | Fehler bei der Flash-Verifizierung |
0xE5 | Kommando nicht zulässig |
0xE6 | Firmware passt nicht zur Hardware |
0xE7 | Datei nicht gefunden |
6.2.3Werte im WarningRegister
| Name | Wert |
|---|---|
| WARNING_CANRXFIFOFULL | 0x0001 |
| WARNING_CANTXFIFOFULL | 0x0002 |
| WARNING_CANBUSOFF | 0x0004 |
| WARNING_INVALIDCALIBRATION | 0x0008 |
| WARNING_DISABLEDCALIBRATION | 0x0010 |
| WARNING_ISOTPRXFIFOFULL | 0x0020 |
6.3Zyklische CAN-IDs uC -> PC
Physikalische Werte werden immer als Float (32 Bit / Single Precision / LSB first) und in der Basiseinheit (V / A / sec / °C / ... ) übertragen.
| Kommando-ID | Name | DLC | Daten |
|---|---|---|---|
0x180 | MeasuredValues | 12 | Current [A] (float), Range (U8), VoltageDrop [V] (float), OnOff [0/1] (U1) |
0x18E | ErrorHandler | 48 | ErrorType (U8), FileNumber (U8), LineNumber (U16), weitere Informationen |
Dokumente und Downloads
Weitere Dokumente und Dateien zu Ihrem IRS-Produkt finden Sie auf myIRS.