Define the outcome, not just the code
Describe the current behaviour, desired outcome and approval criteria. Changing a machine sequence requires more than compiling a function block.
- Explain the plant's purpose and affected operations.
- Separate faults, new features and possible improvements.
- Agree measurable acceptance criteria and an approver.
Identify hardware, firmware and engineering versions
The engineer needs to understand the installed controller and engineering software. Dependencies between Siemens TIA Portal, CPU firmware, WinCC and libraries matter. An upgraded project file is not automatically an approved production change.
- Record the CPU model, firmware, modules and HMI type.
- Identify the TIA Portal, WinCC or TwinCAT version and relevant libraries.
- Locate the approved master project and version notes.
Establish a trustworthy baseline
Before changing code, the site team must know what is actually running on the plant. Investigate online/offline differences and agree who is responsible for backup and recovery. Do not share passwords in an introductory email.
- Record known deviations and alarm symptoms.
- Agree backups, version labelling and a recovery route.
- Gather I/O lists, electrical drawings and functional descriptions where available.
Agree on access and downtime
Remote access or downloads to an operating controller can affect the process. Work must follow the customer's change-control and access procedures. Any potential impact on safety functions requires a specific risk assessment.
- Name the operational owner and engineering contact.
- Agree the maintenance window, secure access and testing options.
- Identify who may authorize or halt the change.
Define validation and documentation before development
A successful compile does not prove that the entire machine works correctly. Review relevant fault states, PLC/HMI handshakes, alarms and recipes. Agree whether simulation, FAT, SAT or testing on the installed plant is needed.
- Create test cases with stimulus, expected result and evidence.
- Cover interfaces, alarms and safety-related effects where applicable.
- Agree how deviations and open actions will be handled.
Specify deliverables and handover
The project should finish with more than a machine that runs. The customer needs to find the approved code, understand the modifications and maintain the plant later.
- Source project and version history.
- Change summary, test evidence and relevant updated documentation.
- Ownership and future support arrangements.
Example: a brief for an external PLC programmer
- Equipment and process: [machine type and purpose]
- PLC/HMI: [model and engineering version]
- Current issue: [what happens and when]
- Desired outcome: [acceptance criteria]
- Available material: [project, I/O list, documentation]
- Contact and access window: [responsible person and schedule]
Do not send passwords, access secrets or confidential project backups in ordinary email. Changes affecting machine safety require the relevant assessment and authorization.