I have no CS background except some coding experience. I am studying the standard ISO 13849-1 and find section 4.6.4 concerning "software-based parameterization" is not clear to me. I have tried to google it but can't find much information about it. Below is the first three paragraphs of section 4.6.4 (SRP/CS in below means safety-related parts of control systems):

Software-based parameterization of safety-related parameters shall be considered as a safety-related aspect of SRP/CS design to be described in the software safety requirements specification. Parameterization shall be carried out using a dedicated software tool provided by the supplier of the SRP/CS. This tool shall have its own identification (name, version, etc.) and shall prevent unauthorized modification, for example, by use of a password.

The integrity of all data used for parameterization shall be maintained. This shall be achieved by applying measures to
— control the range of valid inputs,
— control data corruption before transmission,
— control the effects of errors from the parameter transmission process,
— control the effects of incomplete parameter transmission, and
— control the effects of faults and failures of hardware and software of the tool used for parameterization.

The parameterization tool shall fulfil all requirements for SRP/CS according to this part of ISO 13849. Alternatively, a special procedure shall be used for setting the safety-related parameters. This procedure shall include confirmation of input parameters to the SRP/CS by either
— retransmission of the modified parameters to the parameterization tool, or
— other suitable means of confirming the integrity of the parameters,
as well as subsequent confirmation, e.g. by a suitably skilled person and by means of an automatic check by a parameterization tool.

NOTE 1 This is of particular importance where parameterization is carried out using a device not specifically intended for the purpose (e.g. personal computer or equivalent).

Here are my questions:

  1. Does "parameterization" here means modifying features of a software to match particular customer needs?
  2. Are there differences between "parameterization" and "software-based parameterization"?
  3. According to the provisions quoted above (e.g. "Parameterization shall be carried out using a dedicated software tool provided by the supplier of the safety-related parts of control systems."), I guess that parameterization is performed by an external software (e.g. software A and the parameterization software B of A). Is my understanding correct? If my understanding is correct, could anyone provide some explanations of how it works?

I would appreciate any help with this situation!

  • $\begingroup$ I'm not sure, but your question may be a little too broad becuase it asks three questions in one post. It might be best to ask three different questions, separately, and link between them using the URL (if need be) seeing as they are related. $\endgroup$ Commented Feb 9, 2023 at 9:34

1 Answer 1


ISO 13849 is a standard for safety systems. It defined among other thing safety performance levels that define the amount of risk mitigation. This standard is referenced by ISO 10218 which is the industrial robotics safety standard.

Often part of the safety related controls is a safety rated PLC. The PLC will be running a program. To make the system flexible that program is often controlled by setting parameters. This usually done by setting those parameters using a program running on a PC. For example the PLC has a dual channel safety rated input. When that set of inputs turns off do I want to do an E-Stop and shutdown all equipment in the cell, do I want to do a SS1 protective stop and shut off power to arm, but keep the rest of equipment in cell running, or do I want to a SS2 safe operating stop that halts the arm and prevents it from moving while remaining powered up? The action that the safety PLC does can be controlled by a setting or parameter.

The standard says what ever software sets this parameter needs to verify that the setting is correct. There are several ways to do this and often they are used in combination.

For example when I am uploading safety settings to a Staubli CS9 controller, one step is to press a button on the controller so the software on my PC can verify that it is connected to right controller. The software generates a validation document that includes CRC values or checksums. On the controller I check that checksum matches the one on the validation document.

The controller will also show me the version number of the safety software running on the safety PLC and that software also has a checksum. On start up the safety PLC connects to the controller computer and verifies that it the correct safety PLC program for that robot type


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.