nbus_system.py 774 B

123456789101112131415161718192021222324252627282930
  1. from nbus_slave import *
  2. from imu_slave import *
  3. class NbusSystem:
  4. slaves = {}
  5. def __init__(self, debug=False):
  6. self.serial_port = SerialComm('/dev/ttyUSB0', debug)
  7. def create_slave(self, clazz, slave_address):
  8. slave = None
  9. if type(clazz) is type(ImuSlave):
  10. slave = ImuSlave(slave_address, self.serial_port)
  11. self.slaves[slave_address] = slave
  12. return slave
  13. def finish(self):
  14. self.serial_port.close()
  15. def cmd_start(self):
  16. print("MODULE START")
  17. self.serial_port.requestBroadcast(CMD_START, [])
  18. def cmd_stop(self):
  19. print("MODULE STOP")
  20. self.serial_port.requestBroadcast(CMD_STOP, [])
  21. def get_slave(self, address):
  22. return self.slaves[address]