S5/S7 AI for Windows:Copilot data flow
Data flow
This page is a subpage of S5/S7 AI for Windows®. Its wiki page name is S5/S7 AI for Windows:Copilot data flow.
Purpose
This page explains which data Copilot can process, where the data comes from and where it may be transmitted. The data flow depends on the user's question, the open project context, the PLC connection, recordings and the selected provider.
Copilot does not automatically read or transmit the complete project for every question. It uses the information required for the requested task.
Overview
User question
|
v
S5/S7 AI for Windows
|
+--> Project and editor context
| block, network, source code, cross-references
|
+--> PLC online connection, if required
| live values, CPU state, diagnostics, block status
|
+--> Recordings, if available
| signal history, edges, timing values
|
v
Request assembled for the selected provider
|
v
AI answer returned to S5/S7 AI
|
v
Answer shown in the Copilot dialog
Data sources
User question
The question is entered in the Copilot dialog. It can refer to a signal, operand, block, network or requested task.
Example:
Why is Q 8.0 not set?
Project and editor context
Depending on the question, Copilot can use:
- project and program information;
- the current block and network;
- block source code;
- operands and symbols;
- directly relevant cross-references;
- the block list and program data.
For reliable answers, open the relevant block and network before asking the question.
Live PLC values
For current-state questions, Copilot can request additional values from the connected PLC. These can include:
- inputs, outputs and markers;
- specific data block fields;
- CPU operating state;
- diagnostic buffer and U-stack;
- status information for the active S7 block.
Only concrete operands or data fields are read directly, such as Q 8.0 or DB36.DBX3.1. A complete block or data block is not a single live value.
Recordings
Recorded variables and block status can be evaluated for signal history, edges, active times and intervals. Reliable timing requires a suitable recording made before the evaluation.
Request assembly
- The user asks a question.
- S5/S7 AI checks the current project and editor context.
- If required, Copilot requests concrete PLC live values or block status.
- The required information is assembled with the question.
- The request is sent to the selected provider.
- The AI service returns an answer.
- S5/S7 AI displays the answer in the Copilot dialog.
If the available information is not sufficient, Copilot can perform an additional targeted read of PLC values before answering.
Provider data paths
| Provider | Data path | Typical requirement |
|---|---|---|
IBHsoftec Server
|
S5/S7 AI sends the request to the IBHsoftec server. The server connects to the AI service. | License or authorization and internet access |
Company Server
|
S5/S7 AI sends the request to the company's Copilot server. | Server address and administrator authorization |
OpenAI Direct
|
S5/S7 AI connects directly from the Windows PC to OpenAI. | Own OpenAI API key and internet access |
Google Gemini
|
S5/S7 AI connects directly from the Windows PC to the Google Gemini API. | Own Gemini API key and internet access |
General LLM
|
S5/S7 AI connects to the configured OpenAI-compatible endpoint. | Endpoint, authentication and model configuration |
Microsoft Foundry
|
S5/S7 AI connects to the configured Azure or Foundry deployment. | Endpoint, API key and deployment name |
Claude Direct
|
S5/S7 AI connects directly from the Windows PC to Anthropic. | Own Anthropic API key and internet access |
With a server provider, the request first goes to the selected server. With a direct provider, the data assembled for the question is sent directly to the selected AI provider.
Response path
The AI response is returned to S5/S7 AI and displayed in the Copilot dialog. It may contain an explanation, relevant blocks and networks, current live values, troubleshooting suggestions or generated S7 STL/AWL source code.
The response is technical assistance. It does not switch outputs or change PLC data by itself.
Complete example: missing motor enable
An engineer asks:
Why is Q 8.0 not set?
The data flow is:
- S5/S7 AI receives the question from the Copilot dialog.
- The open block and network are added as project context.
- Copilot identifies that current live values are needed.
- It requests
I 0.0,I 0.1,M 10.0,DB36.DBX3.1,DB36.DBX3.2andQ 8.0. - S5/S7 AI reads these concrete values from the connected PLC.
- The values and the relevant program context are sent to the selected provider.
- The AI identifies
DB36.DBX3.1 = 0as the blocking condition. - The result is displayed in the Copilot dialog.
Example result:
The start request is present and the stop input is not active. Safety enable DB36.DBX3.1 is 0. The motor enable remains blocked, so Q 8.0 is not switched on. DB36.DBX3.1 is generated in FB12, network 4. Check the "Safety guard closed" condition in this network.
Which data leaves the PC depends on the selected provider. Without an online PLC connection, no fresh live values can be added. The answer then uses the available project context and text input only.
Recordings
- The user starts a recording, for example
Record I 0.0 and Q 8.0. - S5/S7 AI records the values using the existing scope or oscilloscope path.
- The user stops the recording.
- Copilot evaluates the locally available recording data.
- For an AI-assisted evaluation, the required signal edges and timing information may be included in the request.
File attachments
Supported file attachments are transferred according to the selected provider and model. The provider determines which formats can be processed and which limits apply.
Before uploading confidential project files, verify that the selected provider is approved for this data. API keys must not be included in questions, documentation or email.
Data protection and limitations
Before using Copilot, determine whether the selected provider may process project data under the rules of the organization. This includes blocks, networks, cross-references, symbols, live values and recordings.
Important limitations:
- Without the correct project context, answers may be less precise.
- Fresh live values require a suitable PLC online connection.
- Complete blocks are not directly readable PLC values.
- Timing results require a suitable recording.
- AI answers can be incorrect and must be reviewed professionally.
- Generated STL/AWL code must be tested and approved before production use.
Practical recommendation
Open the relevant block, name concrete operands and use an active PLC connection for current-state questions. For confidential systems, use a provider approved by the organization.