Cyber-physical systems: A comprehensive guide