Noodoproep

Foutmeldingen

Omdat CAN (en dus CANopen) geen hiërarchisch master/slave systeem is , en node- monitroing alleen iets zegt over de communicatie en niets over de actuele node status, beschikt ieder node over een hoge prioriteit CAN identifier om error situaties te melden. Dit mechanisme wordt aangeduid als "Emergency Messaging” (noodoproep) en het bijbehorende communicatie-object "Emergency Message” (noodbericht). Een dergelijk noodbericht bestaat uit acht data bytes in de volgende vorm:

CANopen Noodoproep, verzend een noodoproep

De foutcodes worden gespecificeerd in CANopen specificatie DS-301. De hoge byte onderscheidt de foutcategorieën:

Foutcode (hex)Foutomschrijving
00xx Foutieve Reset / Geen fout
10xx Algemene Error
2xxx Stroom
3xxx Voltage
4xxx Temperatuur
50xx Apparaat Hardware
6xxx Apparaat Software
70xx Aanvullende modules
8xxx Monitoring
90xx Externe Fout
F0xx Extra functies
FFxx Apparaat Specifiek

Gelijktijdig met de overdracht van het noodbericht, schrijft het CANopen apparaat de foutcode weg in Opbject Directory item [1003], waar de foutgeschiedenis wordt opgeslagen. Het actuele foutregister is de inhoud van de OD item [1001] met bitsgewijze codering van de fout oorzaak:

BitFoutoorzaak
0 Algemene Fout
1 Stroom
2 Spanning
3 Temperatuur
4 Communicatie fout
5 Device Profile specifiek
6 Gereserveerd (altijd 0)
7 Fabrikant specifiek

De CAN-identifier van de noodoproep wordt opgeslagen in de apparaat Object Directory onder [1014], maar deze OD ingang is optioneel, net als het noodoproepmechanisme zelf.