A safety control unit for realizing functional safety, the safety control unit comprising: an arithmetic operation processing unit configured to execute one or a plurality of safety programs; a data storing unit (204, 250) configured to store safety input data usable by the one or plurality of safety programs and safety output data output in accordance with execution of the one or plurality of safety programs; the safety control unit being characterised in that it further comprises: a plurality of communication processing units (262, 260) configured to exchange safety input/output data between a device that is a connection destination (3,4,6) and a safety IO unit connectable to the safety control unit through a local bus, wherein each of the plurality of communication processing units (262,260), independently from processes of the other communication processing units, is configured to periodically transmit safety output data stored in the data storing unit to the safety IO unit through the local bus or to a safety IO unit of the connection destination (3,4,6) and is configured to write safety input data from the safety IO unit into the data storing unit in accordance with a connection setting defining a communication period in advance for each of the communication processing units (262, 260) as being independent from the communication periods of the other communication processing units (262, 260). an arithmetic operation processing unit configured to execute one or a plurality of safety programs; a data storing unit (204, 250) configured to store safety input data usable by the one or plurality of safety programs and safety output data output in accordance with execution of the one or plurality of safety programs; the safety control unit being characterised in that it further comprises: a plurality of communication processing units (262, 260) configured to exchange safety input/output data between a device that is a connection destination (3,4,6) and a safety IO unit connectable to the safety control unit through a local bus, wherein each of the plurality of communication processing units (262,260), independently from processes of the other communication processing units, is configured to periodically transmit safety output data stored in the data storing unit to the safety IO unit through the local bus or to a safety IO unit of the connection destination (3,4,6) and is configured to write safety input data from the safety IO unit into the data storing unit in accordance with a connection setting defining a communication period in advance for each of the communication processing units (262, 260) as being independent from the communication periods of the other communication processing units (262, 260). a plurality of communication processing units (262, 260) configured to exchange safety input/output data between a device that is a connection destination (3,4,6) and a safety IO unit connectable to the safety control unit through a local bus, wherein each of the plurality of communication processing units (262,260), independently from processes of the other communication processing units, is configured to periodically transmit safety output data stored in the data storing unit to the safety IO unit through the local bus or to a safety IO unit of the connection destination (3,4,6) and is configured to write safety input data from the safety IO unit into the data storing unit in accordance with a connection setting defining a communication period in advance for each of the communication processing units (262, 260) as being independent from the communication periods of the other communication processing units (262, 260).