Projekt

Allgemein

Profil

Aktionen

Wiki » Historie » Revision 7

« Zurück | Revision 7/17 (diff) | Weiter »
Maximilian Seesslen, 15.08.2024 15:39


CANServer

Intro

CANServer is an Server-Client library that provides multiple applications access to an CAN-Bus via TCP/IP.
Every message received via CAN gets send to all clients. When an client sends an message, it is send
via CAN-Bus and also to the other clients.
The physical CAN-Bus is optional.

  1. Usecases

- CAN over ethernet
- Graphical user interface for home automatisation
An laptop/tablet can be connected to an server via WLAN
- Recording/Replay
An PC-Application could record CAN messages and replay them.
- Debugging
Show CAN traffic while interacting with the bus with other devices.
- WLAN CAN-Bridge
Two CAN segments can be connected via WLAN

  1. Architecture
        Server                 TCP       Client
        List<                   /-----> connectionTcp
            connectionCan       |
            connectionTcp       |
            connectionTcp <-----/
            connectionTcp
        >
Each connection has an id which is an ongoing number handled by the server.
  1. Terminal Output
    The server prints a dynamic list with the connections and traffic statistics.
    - ID/Type
    - Connection uptime
  • in/out messag count
  • in msg/s

Example:

Id Target        Uptime   In   Out   In/s
-----------------------------------------
0: CAN           0:10s    12   55    0
1: Server        0:10s    3    51    0
2: Client        0:05s    43   52    0
3: Client        0:01s    1    57    0

Ansi

box(x1,y1,x2,y2)
hLine(x1,y1,x2)
vLine(x1,y1,y2)

┬
│
┴
├──┤
┌─┐
│ │
└─┘
QLoggingCategory::setFilterRules("*.debug=false");
qSetMessagePattern("[%{time process}] %{function}: %{message}");
qDebug("Happy debugging");

Links

https://www.sciencebuddies.org/science-fair-projects/references/ascii-table

Von Maximilian Seesslen vor 5 Monaten aktualisiert · 7 Revisionen