Projekt

Allgemein

Profil

TDT-Protocol on CAN » Historie » Version 17

Maximilian Seesslen, 06.10.2022 16:50

1 12 Maximilian Seesslen
h1. Intro
2 1 Maximilian Seesslen
3 17 Maximilian Seesslen
With the TDT-Protocol sensors can just send their values on the BUS without complex object catalogue.
4
An monitor-software is able to display values without knowing anything about the sensors or their configuration.
5
The CANId of sensors is actually their configurable ID.
6 1 Maximilian Seesslen
7 17 Maximilian Seesslen
Sensor values are ususally not very important so the CAN-IDs start at 0x200 (max ids 0x800);
8
9 1 Maximilian Seesslen
|_. Size |_. Decription |_. Examples                                                       |
10 2 Maximilian Seesslen
| 1      | Sub-Id;      | Futher index; Sub-Sensor or more specifi kind of thing to be set |
11 17 Maximilian Seesslen
| 1      | Reserved     | Maybe config-Flags; require Confirmation, is confirmation...     |
12
| 1      | Data type    | Int, Float, Time, Date, Percent, Promil, Multipacket-String      |
13
| 1      | Unit         | Hz, °C, Time, Date, PWM, CAN-ID, Name, Description, Room         |
14 1 Maximilian Seesslen
| 4      | Value        | 32Bit                                                            |
15 2 Maximilian Seesslen
16 1 Maximilian Seesslen
h2. Device behaviour
17 12 Maximilian Seesslen
18
All devices should shut down after 5 hours when no master-heartbeat is received.
19
20 17 Maximilian Seesslen
21 12 Maximilian Seesslen
h1. IDs, ranges and commands
22
23 2 Maximilian Seesslen
h2. CAN IDs
24
25 1 Maximilian Seesslen
|_. Range      |_. Decription           |_. Examples              |
26 10 Maximilian Seesslen
| 0x010-0x0FF  | Alarms                 | Devices have an issue   |
27 2 Maximilian Seesslen
| 0x100-0x1FF  | Control commands       | Set global actuator     |
28
| 0x200-0x2FF  | Sensors/actors fixed   |                         |
29 9 Maximilian Seesslen
| 0x300-0x6FF  | Sensors/actors dynamic |                         |
30
| 0x6FF-0x7FF  | Low priority boradcast | Power on devices        |
31
32 2 Maximilian Seesslen
h2. Global actuator
33
34 1 Maximilian Seesslen
Global means that all actuators of an type is addressed and not one concrete partipiant.
35 14 Maximilian Seesslen
An specific partipiant can be specified when sending the target CAN-Id in the value.
36 2 Maximilian Seesslen
In this way the message is still high priority other than the "Remote Transmission Request"
37
38 3 Maximilian Seesslen
|_. ID         |_. global actuator    |_. Decription                                  |
39
| 0x100        | System command       | Perform system command; e.g. reboot, poweroff |
40 6 Maximilian Seesslen
| 0x101        | Date/Time            | Set date/time of all actuator                 |
41 8 Maximilian Seesslen
| 0x102        | Illumination         | Set brightness of lamps                       |
42 1 Maximilian Seesslen
| 0x103        | Powerswitch          | Power on devices                              |
43 14 Maximilian Seesslen
| 0x104        | Plant watering pump  | Automatically watering indoor plants          |
44 8 Maximilian Seesslen
45 12 Maximilian Seesslen
h2. System commands
46 1 Maximilian Seesslen
47
|_. Sub-ID     |_. Type              |
48 12 Maximilian Seesslen
| 0x0          | Shutdown            |
49
| 0x1          | Heartbeat           |
50
51
h2. Illumination commands
52
53 13 Maximilian Seesslen
|_. Sub-ID     |_. Type                    |
54
| 0x0          | Set ambient light         |
55
| 0x1          | Get ambient light         |
56
| 0x2          | Set ambient light, fading |
57
| 0x3          | Get ambient light, fading |
58
| 0x4          | Set plant light           |
59 1 Maximilian Seesslen
| 0x5          | Get plant light           |
60
61
h2. Powerswitch commands
62
63
|_. Sub-ID     |_. Type                         |
64
| 0x0          | Set powerline for multimedia   |
65
| 0x1          | Get powerline for multimedia   |
66 17 Maximilian Seesslen
67
68
h1. Multipacket-Strings
69
70
|_. Address |_. Type          |
71
| 0x0       | Package count   |
72
| 0x1       | Package number  |
73
| 0x2..0x3  | Data            |
74
75
76
h1. Actuator introduction
77
78
When introduction is requested by system command, each device must send description for each subid.
79 16 Maximilian Seesslen
80 15 Maximilian Seesslen
81
h1. Usecases
82
83
* simple actors can filter message to "Global actuator" messages, at least "system commands"
84
* There are 14 or 28 Filters on STM32Fs