Controller Area Network in NanoSatellites Johan Carvajal Godinez, Erik Orsel and Jian Guo Space Engineering Department Faculty of Aerospace Engineering Delft University of Technology
Outline Motivation Bus communication requirements Bus communication survey in nanosatellites Why adopting CAN protocol? How to influence CAN adoption on nanosats Opportunities Challenges Conclusions Questions Name Function
More sophisticated missions Motivation for adopting a new communication protocol From To More sophisticated missions (image credit: CalPoly) (image credit: Planet Labs) Centralized Bus Architecture Distributed Bus Architecture
Bus communication requirements for nanosatellites Constraints Scalability Flexibility Standard interface support: mechanical and electrical Fault, detection, isolation and recovery capabilities Environmental resilience Implementation support from component vendors Implementation complexity Development time Reliability
Communication protocol Number of Times (total percentage) Communication protocols in nanosatellite missions Communication protocol Number of Times (total percentage) I2C 13 SPI 9 UART 8 CAN 3 Zigbee 2 USB RS485 1 Time period: 2004-2015 Number of missions: 24 Minimum satellite mass: 0.8 kg Maximum satellite mass: 15 kg
Main bus communication protocols for nanosatellites Combination of different protocols within the same mission is implemented at least in the 50% of the cases Master-Slave topology configuration was predominant (SPI/I2C)
Why SPI/I2C is used in nanosatellites? Pros Cons Easier to implement: from hardware and software perspective Supported in most of microcontrollers families Flown many times – High TRL Lack of FDIR capabilities – reliability concerns Data throughput is limited for most sophisticated payloads Mission specific implementation. No sharing of lessons learnt. Easier to implement, but they have reliability and performance concerns
Opportunities New payload integration: cameras, or imaging devices Establishing a common implementation baseline within the CAN standard. Exploring the use of open source community (i.e. GitHub project ) to establish and maintain a robust CAN library implementation.
Designed for distributed architectures Why adopting CAN protocol in nanosatellites? Pros Cons Support multiple masters within the bus designed for redundancy Higher throughput performance (up to 1 Mbps @ 50 m) Sophisticated error detection mechanism within the frame. Modularity: layered implementation approach Implementation complexity increase with respect to I2C/SPI Time delays due to arbitration Power budget Designed for distributed architectures
Proposed approach for CAN assessment Systems Eng. perspective Implementation perspective Use cases for specific DelFFi mission as reference. Requirements and stakeholders analysis trade-off criteria. Design options using: “Pure” CAN CANopen CAN Aerospace CubeSat Space Protocol Verification and validation activities Documentation of computer activity flow ICD (Done) Command database definition (in progress) Simulation cases for 2 CAN implementations (comparison purposes) Test cases on mission scenarios
Proposed telemetry packet structure Source: DelFFi software Activity Flow ICD
DelFFi Sequence Diagrams Source: DelFFi software Activity Flow ICD Simplified configuration for simulation purposes
Challenges Defining the best approach for determinism: event-triggered vs time-triggered Enabling methods and tools for CAN ICD implementation, in order to create a proper message structure Influencing the implementation of application programming interfaces (API) for increasing abstraction (See CubeSat Space Protocol Stack)
Conclusions, so far… There is a need for a more reliable, and better performance bus communication protocol in nanosatellites missions. CAN offer the required capabilities to achieve more complex missions with nanosatellites Efforts shall be done to influence a faster development cycle by standardizing implementation (focus on higher layers)
References [1] Selva, D., & Krejci, D. A survey and assessment of the capabilities of Cubesats for Earth observation. Acta Astronautica, vol 74, pp 50-68. May 2015. [2] Taylor, C; Furano, G; Valverde-Carretero, A; Marinis, K; Magistrati, G; Bolognino, L; Jansen KLR; CAN is space, status and future after ECSS-E-ST-50-15C Release on DASIA 2015 proceedings. 2015 [3] Khurram, M.; Zaidi, S.M.Y., CAN as a spacecraft communication bus in LEO satellite mission, Proceedings of 2nd International Conference on in Recent Advances in Space Technologies, 2005. RAST 2005., vol., no., pp.432-437, 9-11 June 2005. [4] CubeSat Space Protocol (CSP) open source repository from GOMSPACE: https://github.com/GomSpace/libcsp
Questions? j.carvajalgodinez@tudelf.nl
Nanosatellite Mission Database Source: eoportal
CubeSat Space Protocol Stack: CSP … Source: J. D. C. Christiansen, “CubeSat Space Protocol (CSP) Network-Layer delivery protocol for CubeSats and embedded systems,” pp. 2–11, 2011.