Ticket #45 (new feature)

Opened 12 years ago

Transparent multi-instance Fawkes

Reported by: tim Owned by: AllemaniACs
Priority: major Milestone:
Component: Fawkes Version:
Keywords: Cc:
Git Branch:

Description

On of the major advantages of RCSoftX over Fawkes is that you can transparently distribute your processes among multiple machines. This feature is especially required on the AtHome? robot that has three computers.

We need a way to start the mainapp with a flag to use a remote BlackBoard instead of a local one. Ideally the master instance would be able to spawn plugins on the remote instances such that the whole control can concentrate on the one master process. We need to take into account that in this scenario some plugins may run multiple times, for example every instance that runs vision plugins needs a vision master plugin (fvbase). Still there may be only one thread with a writing instance for a particular interface at any given time, thus preventing the "famous" multi-skill-module problem.

Especially for the beginning we should make the assumption that the network connection between the instances is reliable. This is true for the robots as the machines are connected via internal cabled connections and not via wifi. This allows us to easily use the existing Fawkes network protocol and in that scenario we can treat a broken network connection as a critical error.

Additionally we might make slaves reject FNP connections and rather mandate connections going through the master.

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Subscriber, Participant

  • Fawkes Trac List(Always)
  • Tim Niemueller(Reporter)