Automated Trace Analysis for Testing of CANopen Devices by Andrew Ayre & Olaf Pfeiffer FIND THE NEEDLE IN THE HAYSTACK
February 2017 CHALLENGES OF SYSTEM INTEGRATION CANopen Device Testing Highly dynamic systems has its limits can not be fully tested with a single DUT Official CANopen conformance test is very basic Dynamic node IDs No stress test Multiple SDO clients No interaction with multiple Automated Trace Analysis devices Limited timing tests
February 2017 CHALLENGES OF CIA 447 Wake up and sleep 2 3 Dynamic Node IDs The 16 devices are both 1 4 SDO servers (16) SDO clients (1-15) Lots of scanning Many timings and timeouts 6 5 Automated Trace Analysis When to start SDO server Impossible to test all combinations
February 2017 Trace analysis SPREADSHEET APPROACH Automated Trace Analysis
February 2017 TRACE ANALYSIS BY SPREADSHEET Base is a CAN trace with all Verify Heartbeat timing messages and timestamp Use spreadsheet formula Who is who? Verify SDO timeouts LSS node ID assignements Ok for single, global client Challenging for 16*15 clients Look for the obvious Size limit Emergency messages Automated Trace Analysis Unexpected bootups More than 1,000,000 lines? Sleep objections
February 2017 Trace analysis AUTOMATED ANALYSIS APPROACH Automated Trace Analysis
February 2017 RELEVANT INFORMATION • Input can be large Requirement • Millions of lines • Identify relevant portions • Generate analysis of trace log Automated Trace Analysis Solution • Filter to only show relevant events • Linked to original trace
February 2017 RELEVANT EVENTS - EXAMPLE Automated Trace Analysis
February 2017 WHO IS WHO? • LSS Node ID assignment Requirement • Which device has which node ID Automated Trace Analysis • Node ID assignment is an event Solution • Mark with LSS ID (= 1018h Object) • Monitor sequence, event on error
February 2017 BOOTUPS AND HEARTBEATS • NMT Master messages (reset?) Requirement • Unexpected bootup? • Heartbeat timeouts Automated Trace Analysis • NMT Reset marked as event Solution • Unexpected bootups marked as event • Heartbeat timeouts marked as event
February 2017 SDO COMMUNICATION • Does a device always respond? Requirement • In which time? • Does a client swamp the network? Automated Trace Analysis • Analyze all SDO channels • Analyze all timings, event on timeout Solution • Analyze all repetitive client requests for load • Analyze sequence, event on error
February 2017 PDO COMMUNICATION • Verify event time Requirement • Verify inhibit time • Verify SYNC reaction • Analyze all PDOs Solution • Analyze all timings, SYNC responses Automated Trace Analysis • Mark as event if timings are wrong
February 2017 WHERE DO TIMEOUT VALUES COME FROM? Timeout for When to mark something as warning, when as error? Heartbeat SDO response Application Profile Allowed timing variation Custom? Percentage that a cyclic timing may vary Automated Trace Analysis PDO +/- 10%? Heartbeat +/- 30%?
February 2017 Trace analysis SYSTEM AND DEVICE SUMMARY Automated Trace Analysis
February 2017 REPORTS IN ADDITION TO EVENT LIST Global System Summary Per Device Maximum message rates Unexpected bootups Maximum burst length Min/max heartbeat Number of nodes Max SDO response time Number of system (re-)starts CAN message rate generated by a device Automated Trace Analysis SDO server responses count towards client requesting it
February 2017 CURRENT IMPLEMENTATIONS Software Hardware Logxaminer CANopen Diag hand-held diagnostic tool Input Live analysis Trace format „Vector“ System summary display Trace format „PEAK“ Analyzer event list Trace format „ESAcademy“ Automated Trace Analysis Output Display PDF report
Recommend
More recommend