How to add an AI chatbot to Ignition (MES/SCADA)
Short answer
Add an AI chatbot to Ignition by embedding a chat panel in a Perspective view that calls a backend service, which uses WebDev endpoints and named queries to fetch tag, alarm and MES data for the signed-in user. Keep answers grounded in those results and run an open-weight model locally if data cannot leave the plant.
Operators and maintenance staff ask the same kinds of questions all day. What is the status of the oven, who changed this setpoint, what does alarm 114 mean, what did we run last shift. Today the answers live across Perspective screens, alarm tables, a procedure binder and someone's memory.
A chatbot inside Ignition puts one place to ask. Because Perspective runs in a browser or on a phone and already knows who is signed in, it is a natural home. The challenge is not the chat widget; it is keeping answers tied to real data and respecting what each user is allowed to see.
This page covers a practical design: where the chat lives, what it can fetch, how it stays grounded, and how to run it on-prem for plants that cannot use a public service.
What teams use it for
Operator status questions
An operator types 'how is the packaging line doing' and gets current state, rate against target and any active alarms, drawn from tags and the MES summary.
Alarm explanation
Select an alarm in the alarm table and the chatbot explains what it means, likely causes and the standard response, based on your approved procedure documents.
Maintenance history lookup
A technician asks when a motor was last serviced. The chatbot queries the maintenance table or CMMS link and returns the dates and notes.
Shift log assistant
Supervisors dictate or type notes and the chatbot structures them into the shift log entry with the line, time and category fields filled in for review.
Procedure and SOP search
A retrieval index over controlled documents answers 'what is the changeover sequence for product X' with the section cited.
Customer or planner view
A planning screen lets staff ask for order progress across lines, using MES data and ERP status without opening several reports.
Inductive Automation Ignition (MES/SCADA) integration surface
- Perspective module: browser and mobile views where you can place a chat component built with an embedded frame, a custom component or a text area bound to session events.
- Gateway scripting and session properties give the signed-in user, roles and zone, which you pass to the backend for permission filtering.
- WebDev endpoints let the chatbot backend fetch tag values, alarm data and summaries; named queries cover MES and maintenance tables.
- Message handlers and Perspective session messaging allow pushing a response back to the right session without polling.
- Alarm status and journal tables supply the context for alarm help; document stores or a SQL table can feed the procedure index.
How it works
- 1
Define the scope and persona
Decide who the chatbot serves, such as operators, maintenance or planners, and what it should refuse. Write this into the system instructions and test with real questions.
- 2
Build the backend service
A small service receives the question, user identity and context such as the current view or selected alarm. It decides which tools to call and assembles the answer.
- 3
Create the data tools
Implement fixed tools over WebDev and named queries for tags, alarms, production, downtime and maintenance. Validate parameters and filter by the user's roles.
- 4
Index approved documents
Load SOPs, work instructions and alarm response guides into a local retrieval index, with document ID, revision and effective date so answers cite a controlled source.
- 5
Embed the chat in Perspective
Add a docked panel or popup view that sends the question and context to the service and renders the response with source links and a feedback button.
- 6
Test on real shifts, then widen
Run with a small group, collect thumbs down feedback, review misses weekly and update tools or documents before enabling more users.
Example flows
Alarm help at the HMI
Trigger: An operator taps 'Ask' next to a high temperature alarm on the extruder.
- Perspective sends the alarm ID, source and the user's role to the service.
- Service fetches the current tag values and the last 30 minutes of related history.
- Service retrieves the response procedure for that alarm from the index.
- Chatbot replies with the likely cause, first checks and the SOP section.
Result: The operator sees a grounded answer with a source, without leaving the screen.
Handover question
Trigger: The incoming supervisor asks what happened on Line 2 overnight.
- Service calls the production and downtime tools for Line 2 and the night shift window.
- Service pulls the shift log entries from the database.
- Chatbot returns a short summary with counts, top downtime reasons and notes.
Result: A consistent handover in seconds, with the underlying records one click away.
Keeping data on-prem
A plant chatbot should be able to run entirely inside the site. Host an open-weight model on a local GPU server with vLLM or Ollama, keep the retrieval index and the chat history database on your own storage, and connect the backend to the Gateway across the internal network. Perspective users reach it through the same Gateway they already use, so there is no new external dependency. For multi-site groups, a central private cloud can serve several Gateways while each site's data stays tagged and filtered by site. Netray builds this pattern when teams want help with the model, retrieval and approval layers.
Security checklist
- Pass the Perspective user identity to the backend and enforce roles and area limits on the server, not in the prompt.
- Show sources for every factual answer and mark clearly when the answer comes from a document rather than live data.
- Do not allow the chatbot to acknowledge alarms or write tags; offer a deep link to the relevant screen instead.
- Store chat logs with retention rules, since they can contain operational detail and personal information.
- Keep the model and index on the plant network and block outbound access from the chat service.
Ways to get it done
Vendor or marketplace AI module for Ignition
Effort: Evaluation and configuration, weeks.
Sites that prefer a packaged component, if one exists for your version and meets your data rules.
Build a Perspective chat with an in-house backend
Effort: Six to ten weeks to a useful pilot with retrieval and tools.
Teams with Jython, Python and web skills who want full control.
Partner build with an on-prem model
Effort: Pilot on one line in weeks, then widening by area.
Regulated or contract-restricted plants that need local inference and audit.
Pitfalls
- !Letting the chatbot answer from general knowledge when tools return nothing. Make it say it does not know.
- !Using uncontrolled documents in the index, so operators receive an obsolete procedure.
- !Ignoring latency. Operators will not wait; stream responses and keep tools fast.
- !Forgetting mobile layouts in Perspective, where most shop-floor use actually happens.
- !Launching to everyone at once without a feedback loop to correct wrong answers.
Frequently asked questions
Can we put a chatbot in Perspective without extra modules?
Yes, in a basic way. You can build a view that posts text to your backend and shows the reply using standard Perspective components and scripting. Richer chat features may use an embedded web component, depending on your version.
Will the chatbot work offline or on an isolated network?
Yes if the model and retrieval run locally. An open-weight model served on a site GPU server answers over the internal network, so the plant keeps working without internet access.
How do we keep it from giving unsafe advice?
Ground answers in approved procedures, cite the source, route safety critical questions to a standard text and a human, and test with adversarial questions. It supports operators but does not replace training or safety systems.
Can it show data from the ERP as well?
Yes, by adding read tools for the ERP API or a staging table, filtered by role. Customer order status and item availability are common questions that cross MES and ERP.
Is a simple dashboard enough instead?
Often for fixed questions, yes. A chatbot earns its place when questions vary, span several systems, or rely on documents. Start with a short list of real questions and see how many a dashboard already answers.
More for Inductive Automation Ignition (MES/SCADA)
Want AI chatbot working on your Inductive Automation Ignition (MES/SCADA)?
A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.
Get a free assessment