A controller including a plurality of platforms, the controller comprising:
- a plurality of command application units;
- a plurality of platform units that are associated with the plurality of command application units, respectively, each of the plurality of command application units is part of a respective control unit of a plurality of control units, each of the plurality of control units respectively controlling one or more devices of a plurality of devices that are different from each other;
- a shared memory that stores information communicated between the plurality of platform units;
- and
- a servo control processing unit,
- each of the command application units including:
- a command processing unit that outputs a command value;
- and
- a command mediation method designating unit that outputs a mediation method classification and identification information of the platform units subject to coordinated control,
- each of the platform units including:
- a first interface unit that acquires the command value from the command application unit associated with that platform unit, the command value being for the device controlled by the control unit of which the command application unit associated with that platform unit is a part;
- a second interface unit that acquires the mediation method classification and the identification information of the platform units from the command application unit associated with that platform unit, the mediation method classification indicating a mediation method of mediating as a coordinated operation of command values between the command value for the device and a different command value for a different device that is controlled by another control unit of the plurality of control units;
- an inter-platform communication unit that transfers the command value, the identification information, and the mediation method classification between the platform units via the shared memory;
- and
- a command mediation unit that acquires the command value, the identification information, and the mediation method classification from all the platform units subject to coordinated control, mediates the command value based on the identification information and the mediation method classification, and outputs the mediated command value to the shared memory,
- the servo control processing unit being configured to perform servo control based on the mediated command value acquired from the shared memory,
- wherein the mediated command value is obtained from mediation of operation timing performed by each of the plurality of platforms in the controller between the plurality of devices as a coordinated operation of commands executed by different applications for the plurality of devices which require a coordinated operation.