User Tools

Site Tools


the_quimdc_object_dictionary

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
the_quimdc_object_dictionary [2022/11/04 14:42] – [O.D. layout] Add erase flash and ref_pwm pdekeyzerthe_quimdc_object_dictionary [2023/01/25 13:19] – [O.D. layout] Add gpio publish freq pdekeyzer
Line 26: Line 26:
 | 0x1000 | 0         | RO        | UINT32 | Device type                              | | 0x1000 | 0         | RO        | UINT32 | Device type                              |
 | 0x1010 | 0         | WO        | VOID   | Save parameters to flash                 | | 0x1010 | 0         | WO        | VOID   | Save parameters to flash                 |
 +| 0x1011 | 0         | WO        | VOID   | Load parameters from flash                 |
 | 0x411A | 0         | WO        | VOID   | Erase flash                 | | 0x411A | 0         | WO        | VOID   | Erase flash                 |
 | 0x2000 | 0         | RW        | INT32  | Motor Watchdog (ms)               | | 0x2000 | 0         | RW        | INT32  | Motor Watchdog (ms)               |
 | 0x2040 | 1         | RO        | INT32  | Current Motor 1 (mA)         | | 0x2040 | 1         | RO        | INT32  | Current Motor 1 (mA)         |
 | :::    | 2         | RO        | INT32  | Current Motor 2 (mA)         | | :::    | 2         | RO        | INT32  | Current Motor 2 (mA)         |
 +| 0x200C | 0         | RW        | INT32  | Emergency stop (uint8_t flag_id)               |
 | 0x3333 | 0         | RW        | INT32  | Operational Mode Manager (0 => leave, 1 => enter)    | | 0x3333 | 0         | RW        | INT32  | Operational Mode Manager (0 => leave, 1 => enter)    |
 | 0x4000 | 1         | RW        | INT32  | Speed PID, P Motor 1                     | | 0x4000 | 1         | RW        | INT32  | Speed PID, P Motor 1                     |
Line 67: Line 69:
 | 0x4025 | 1         | RW        | INT32  | Position PID, Anti Wu Limit Motor 1                 | | 0x4025 | 1         | RW        | INT32  | Position PID, Anti Wu Limit Motor 1                 |
 | :::    | 2         | RW        | INT32  | Position PID, Anti Wu Limit Motor 2                 | | :::    | 2         | RW        | INT32  | Position PID, Anti Wu Limit Motor 2                 |
-| 0x4100 | 1         | RW        | FLOAT32| Resistance Motor 1 (Ohm)                 | +| 0x4100 | 1         | RW        | FLOAT32| Resistance Motor 1 (mOhm)                 | 
-| :::    | 2         | RW        | FLOAT32| Resistance Motor 2 (Ohm)                 |+| :::    | 2         | RW        | FLOAT32| Resistance Motor 2 (mOhm)                 |
 | 0x4101 | 1         | RW        | FLOAT32| Kv Motor 1 (Rpm/V)                       | | 0x4101 | 1         | RW        | FLOAT32| Kv Motor 1 (Rpm/V)                       |
 | :::    | 2         | RW        | FLOAT32| Kv Motor 2 (Rpm/V)                       | | :::    | 2         | RW        | FLOAT32| Kv Motor 2 (Rpm/V)                       |
 | 0x4102 | 1         | RW        | INT32  | Ticks per Turn Motor 1 (Tick/Turn)       | | 0x4102 | 1         | RW        | INT32  | Ticks per Turn Motor 1 (Tick/Turn)       |
 | :::    | 2         | RW        | INT32  | Ticks per Turn Motor 2 (Tick/Turn)       | | :::    | 2         | RW        | INT32  | Ticks per Turn Motor 2 (Tick/Turn)       |
-| 0x4103 | 1         | RW        | FLOAT32| Nominal Voltage Motor 1 (V)                  | +| 0x4103 | 1         | RW        | INT32  | Nominal Voltage Motor 1 (mV)                  | 
-| :::    | 2         | RW        | FLOAT32| Nominal Voltage Motor 2 (V)                  |+| :::    | 2         | RW        | INT32  | Nominal Voltage Motor 2 (mV)                  | 
 +| 0x4105 | 1         | RW        | INT32  | Position speed period Motor 1 (ms)                  | 
 +| :::    | 2         | RW        | INT32  | Position speed period Motor 2 (ms)                  |
 | 0x4106 | 1         | RW        | INT32  | BEMF Compensation Motor 1 [0/1]                 | | 0x4106 | 1         | RW        | INT32  | BEMF Compensation Motor 1 [0/1]                 |
 | :::    | 2         | RW        | INT32  | BEMF Compensation Motor 2 [0/1]                  | | :::    | 2         | RW        | INT32  | BEMF Compensation Motor 2 [0/1]                  |
Line 115: Line 119:
 | 0x4119 | 1         | RW        | INT32  | Set Ref PWM Motor 1[-128,128]| | 0x4119 | 1         | RW        | INT32  | Set Ref PWM Motor 1[-128,128]|
 | :::    | 2         | RW        | INT32  | Set Ref PWM Motor 2[-128,128]| | :::    | 2         | RW        | INT32  | Set Ref PWM Motor 2[-128,128]|
 +| 0x4200 | 1         | RO        | INT32  | Read position reached Motor 1 (See note below) |
 +| :::    | 2         | RO        | INT32  | Read position reached Motor 2 (See note below) |
 +| 0x4202 | 1         | RO        | INT32  | Read GPIO values (See note below) |
 | 0x6010 | 1         | RO        | INT32  | Digital Input External Encoder 1            | | 0x6010 | 1         | RO        | INT32  | Digital Input External Encoder 1            |
 | :::    | 2         | RO        | INT32  | Digital Input External Encoder 2            | | :::    | 2         | RO        | INT32  | Digital Input External Encoder 2            |
Line 123: Line 130:
 | :::    | 4         | RO        | INT32  | Read Level of GPIO CQR    | | :::    | 4         | RO        | INT32  | Read Level of GPIO CQR    |
 | :::    | 5         | RO        | INT32  | Read Level of GPIO CQL     | | :::    | 5         | RO        | INT32  | Read Level of GPIO CQL     |
-| 0x6012 |         | RO        | INT32  | Read motor driver fault status [0]       | +| 0x6012 |         | RO        | INT32  | Read motor driver fault status [0]       | 
-| 0x6013 |         | WO        | INT32  | Put board to sleep [1]          | +| 0x6013 |         | WO        | INT32  | Put board to sleep [1]          | 
-| 0x6014 |         | WO        | INT32  | Reset board [1]           | +| 0x6014 |         | WO        | INT32  | Reset board [1]           | 
-| 0x6015 |         | WO        | INT32  | Reset motor driver [1]                 |+| 0x6015 |         | WO        | INT32  | Reset motor driver [1]                 |
 | 0x6060 | 1         | RW        | INT32  | Control Loop Function Motor 1            | | 0x6060 | 1         | RW        | INT32  | Control Loop Function Motor 1            |
 | :::    | 2         | RW        | INT32  | Control Loop Function Motor 2            | | :::    | 2         | RW        | INT32  | Control Loop Function Motor 2            |
Line 137: Line 144:
 | 0x607E | 1         | RW        | INT32  | Polarity Motor 1 (Tick)         | | 0x607E | 1         | RW        | INT32  | Polarity Motor 1 (Tick)         |
 | :::    | 2         | RW        | INT32  | Polarity Motor 2 (Tick)         | | :::    | 2         | RW        | INT32  | Polarity Motor 2 (Tick)         |
-| 0x60F0 | 1         | RW        | INT32  | PWM Motor 1 ([-128, 128])         | 
-| :::    | 2         | RW        | INT32  | PWM Motor 2 ([-128, 128])         | 
 | 0x607F | 1         | RW        | INT32  | Pwm Duty Max 1 ([0, 127])         | | 0x607F | 1         | RW        | INT32  | Pwm Duty Max 1 ([0, 127])         |
 | :::    | 2         | RW        | INT32  | Pwm Duty Max 2 ([0, 127])         | | :::    | 2         | RW        | INT32  | Pwm Duty Max 2 ([0, 127])         |
 | 0x6080 | 1         | WO        | INT32  | Reset Position Motor 1 [0]         | | 0x6080 | 1         | WO        | INT32  | Reset Position Motor 1 [0]         |
 | :::    | 2         | WO        | INT32  | Reset Position Motor 2 [0]         | | :::    | 2         | WO        | INT32  | Reset Position Motor 2 [0]         |
 +| 0x60F0 | 1         | RW        | INT32  | PWM Motor 1 ([-128, 128])         |
 +| :::    | 2         | RW        | INT32  | PWM Motor 2 ([-128, 128])         |
 | 0x60FF | 1         | RW        | INT32  | Reference/Target Speed Motor 1 (Tick/s)         | | 0x60FF | 1         | RW        | INT32  | Reference/Target Speed Motor 1 (Tick/s)         |
 | :::    | 2         | RW        | INT32  | Reference/Target Speed Motor 2 (Tick/s)         | | :::    | 2         | RW        | INT32  | Reference/Target Speed Motor 2 (Tick/s)         |
 | 0x6100 | 1         | RO        | INT32  | Motor Speed 1 (Tick/s)         | | 0x6100 | 1         | RO        | INT32  | Motor Speed 1 (Tick/s)         |
 | :::    | 2         | RO        | INT32  | Motor Speed 2 (Tick/s)         | | :::    | 2         | RO        | INT32  | Motor Speed 2 (Tick/s)         |
 +| 0x6200 | 1         | RW        | INT32  | GPIO PDO publish freq (Hz)         |
 +
 +==== Notes ====
  
 +As the entry 0x4200 (Read position reached) is essentially designed to be used for PDOs, it has a specific structure
 +^ Byte 0  ^ Byte 1 ^ Byte 2 ^ Byte 3 ^ Byte 4 ^ Byte 5 ^ Byte 6 ^ Byte 7 ^
 +| position reached (0/1) | 0x00 | 0x00 |  Position in ticks  |||||
  
 +The entry 0x4202 PDO structure is the following:
 +^ Byte 0  ^ Byte 1 ^ Byte 2 ^ Byte 3 ^ Byte 4 ^ Byte 5 ^ Byte 6 ^ Byte 7 ^
 +| Motor 1 positive limit switch level (0/1) | Motor 1 negative limit switch level (0/1) | Motor 1 homing limit switch level (0/1) |  Motor 2 positive limit switch level (0/1)  | Motor 2 negative limit switch level (0/1) | Motor 2 homing limit switch level (0/1) | 0x00 | 0x00 |
the_quimdc_object_dictionary.txt · Last modified: 2023/02/09 12:09 by pdekeyzer