Tamaki MES and Ignition
Tamaki MES is an Ignition module, not a standalone product. Almost every "platform" concern: authentication, tags, the database connection, the audit log, the module manager, the front-end: is provided by Ignition. Tamaki MES adds a manufacturing-domain model and a Perspective project on top.
This page explains where Tamaki MES plugs into Ignition so you know what is shared with the rest of your gateway and what is owned by the module.
Required Ignition modules
Tamaki MES is built against the 8.3 line and depends on three other IA modules. They must be installed on the gateway before Tamaki MES starts cleanly:
| Module | Why Tamaki MES needs it |
|---|---|
| Perspective | The shipped UI is a Perspective project. Without Perspective, the UI cannot be hosted. |
| Reporting | Some Tamaki MES dashboards and exports are rendered through Ignition's reporting engine. |
| Tag Historian | Tamaki MES writes long-term history (OEE samples, downtime events, shift records) through the historian. |
Designer and Vision are not required, but you can use Designer for development and to manage the Perspective projects.
The MES datasource
Tamaki MES does not run an embedded database. Instead, it uses a gateway datasource you create in Config → Databases → Connections, the same way every other Ignition module does.
- The datasource points at an empty schema that you control. The first time the module starts, it runs Liquibase migrations to create and version every table it needs.
- Subsequent module upgrades run any new migrations automatically. You do not need to apply schema changes by hand.
- Tamaki MES can target MariaDB, MySQL, Microsoft SQL Server, or PostgreSQL. MariaDB is the simplest first-time setup and is what the rest of these docs assume.
If you change the datasource later under Config → Tamaki MES → Settings, the module performs a full restart so its Spring context re-initializes against the new connection.
The MES tag provider
Tamaki MES owns its own tag provider: by default called TamakiMES. The module:
- Creates the provider on first start under the name configured in
Config → Tamaki MES → Settings. - Publishes runtime values (current OEE state, shift state, production order status, …) as tags in that provider.
- Subscribes to value changes to drive OEE, downtime, and shift data collection.
You should treat the TamakiMES provider as read-only Tamaki territory: build your own UDTs in a separate provider and use reference tags to bind onto the values you need. See Best Practices for the rationale.
Security and roles
All authorization in Tamaki MES rides on Ignition's user sources and role names:
- Admin operations require the role configured in
AdminRoleName(defaults toAdministrator). Change it underConfig → Tamaki MES → Settingsto match your customer's role naming. - Script API calls run with the gateway's permissions; license-gated methods reject the call if the module's license is not active.
- Audit log entries can be written to an Ignition audit profile of your choice: set
AuditProfileNameon the Settings page.
Script API
Tamaki MES exposes its functionality through system.mes.<module>.<method> in any Jython environment: gateway scripts, tag events, expression bindings, Perspective scripts. This is the integration surface for anything you automate inside Ignition. Validation, eventing, and audit behavior are identical to what the UI does, because both go through the same service code.
The Perspective project
Tamaki MES ships an inheritable Perspective project (also called TamakiMES). It contains:
- Configuration screens for every domain module (locations, materials, OEE, …).
- An admin sidebar and header you can reuse or replace.
- Custom components (
MaterialTree,LocationTree,MesChart,InventoryTracegraph, and others) that are bundled in the.modland registered with Perspective automatically.
Your own project sets TamakiMES as its parent project and inherits everything above. Module upgrades re-import the parent: your child project keeps its customizations. See Perspective Project Setup for the walkthrough.
What lives where, summarized
| Concern | Owned by | Notes |
|---|---|---|
| Authentication | Ignition user sources | Tamaki MES does not store passwords |
| Authorization (roles) | Ignition | Tamaki MES reads AdminRoleName and @RequiresRoles annotations |
| Tag values | Tamaki MES tag provider | Default name TamakiMES, configurable |
| Historical tag data | Ignition Tag Historian | Configure historical providers as you normally would |
| Entity data | MES database (your DB) | One empty schema per gateway |
| Audit log | Ignition audit profile (optional) | Set under Tamaki MES Settings |
| UI | Perspective project | Inheritable parent named TamakiMES |
| Reports | Ignition Reporting module | Tamaki MES ships report definitions in the Perspective project |
Next step
Product Modules: what Core, Order Execution, Inventory, OEE, and Quality each give you.