24.08.2013 Views

CANopen Manager / Slave Manual - esd electronics, Inc.

CANopen Manager / Slave Manual - esd electronics, Inc.

CANopen Manager / Slave Manual - esd electronics, Inc.

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>CANopen</strong>-<strong>Slave</strong><br />

4.4 Error Situations and Emergency (EMCY) Objects<br />

The <strong>CANopen</strong> slave implements an error state machine which can be either in the state Error-Free or<br />

in the state Error. A state change can be caused by the application layer using the API described in this<br />

chapter or is caused internally if a communication or configuration error situation is detected or<br />

resolved. The picture below describes the possible transitions between the error-free and the error<br />

state:<br />

Page 40 of 65<br />

(1)<br />

(0)<br />

Error-Free Status<br />

(2) (4)<br />

Error Situation<br />

Software <strong>Manual</strong> • Doc. No.: C.2002.21 / Rev. 2.2 <strong>CANopen</strong> <strong>Slave</strong><br />

(3)<br />

Fig. 3: Error State Transition Diagram<br />

(0) After calling canOpenActivateNode() the <strong>CANopen</strong> node gets into error-free state.<br />

(1) If canOpenSetError() is called by the application or an internal communication or<br />

configuration error is detected, the error is indicated as described in the following abstract<br />

and the <strong>CANopen</strong> node changes into the error state. The internal node error counter is<br />

incremented .<br />

(2) If canOpenSetError() is called again, the previous tasks are repeated and the <strong>CANopen</strong><br />

node remains in the error state.<br />

(3) If canOpenResetError() is called by the application or an internal communication or<br />

configuration error condition is solved, the error is incicated as described in the following<br />

abstarct and the node’s internal error counter is decremented. As long as the counter doesn’t<br />

reach 0 the <strong>CANopen</strong> node remains in the error state.<br />

(4) If the internal error counter becomes 0 during the previous step the node changes back into<br />

the error-free state.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!