Skip to main content
Version: 3.0 (next)

Panasonic FP Panasonic FP Integration Guide

Talk directly to Panasonic FP-series PLCs with MaestroHub's Panasonic connector. It speaks MEWTOCOL-COM, the ASCII command protocol every FP PLC answers, and MEWTOCOL7, the FP7's own format that reaches its whole memory. Both run over TCP, through the FP7 and FP0H built-in LAN ports, the FP-X AFPX-COM5 cassette or an FP2 ET-LAN unit. This guide covers connection setup, device addressing, the data types, authoring read and write functions, the tag map, and the matching pipeline nodes.

Overview​

The Panasonic connector provides:

  • Contacts: read X, Y, R, L, T and C; write Y, R and L
  • Registers: read and write DT, LD, FL, the contact words WX, WY, WR, WL, and timer/counter set and elapsed values SV, EV
  • The FP7's whole memory over MEWTOCOL7: DT up to 999423, R up to 2047F, the 32-bit timer, counter and index values (TS, TE, CS, CE, I0–IE), the system areas SR, WS, SD, pulse and error alarm relays (P, E), program-block local devices (PB1:_DT10) and unit devices by slot (S1:WI0, S2:UM00081)
  • Typed values: BIT, WORD, INT, DWORD, DINT, REAL, LREAL or STRING (UTF-8, Shift-JIS or Windows-1251), and a bit inside a register as BIT
  • Block reads: many named points in the fewest requests, split to the frame limit
  • Safe bit writes: a contact is set or reset on its own, never by rewriting its word
  • FP2 ET-LAN framing for FP2 ET-LAN units and connections set to "Connect with FP2 ET-LAN"
  • Symbolic tag mapping: friendly names for device addresses, importable from CSV or JSON
Supported PLCs

FP7 and FP0H through their built-in LAN port, FP-X and FP-XH through the AFPX-COM5 Ethernet cassette, and FP2/FP2SH through an FP2 ET-LAN unit. Any FP PLC reachable over a MEWTOCOL-COM TCP connection works.

TCP only. UDP, the < extended header and multi-frame messages, RUN/PROGRAM mode changes, monitor registration and system register writes are not supported.

MEWTOCOL7 is checked against the legacy driver, not a published specification

Panasonic publishes MEWTOCOL7's frame (header, station, frame number, CRC) but not the fields of its read and write commands. MaestroHub sends them exactly as the legacy FP7 driver does, which has run against FP7 PLCs in the field. Try MEWTOCOL7 on your FP7 before relying on it, and use MEWTOCOL-COM when your addresses are within its range.

Connection Configuration​

Creating a Panasonic Connection​

Navigate to Connections → New Connection → Panasonic FP and fill in the form. It has five tabs: Connection, Tag Map, Functions, Scaling and Health. Functions, Scaling and Health unlock after the connection is saved.

1. Profile Information​

FieldDefaultDescription
Profile Name—A descriptive name for this connection profile (required, max 100 characters). Must be unique across all connections.
Description—Optional description for this connection
Labels—Key-value pairs to categorize and organize the connection (max 10 labels)

2. MEWTOCOL Settings​

FieldDefaultDescription
Address—PLC host name or IP address (required)
Port9094TCP port of the PLC's MEWTOCOL connection. 9094 is the FP-X AFPX-COM5 cassette's default. FP7 and FP0H serve MEWTOCOL-COM on their system connection at 32769, and MEWTOCOL7 on a user connection whose port you set in FPWIN GR7.
Protocolmewtocol-commewtocol-com works with every FP PLC but addresses only DT0–DT99999 and R0–R999F. mewtocol7 is FP7 only: it reaches the FP7's whole memory and its 32-bit timer and counter values, on a user connection whose communication mode is MEWTOCOL7-COM.
Framingplainplain when the PLC connection's MEWTOCOL communication type is "Not connect with FP2 ET-LAN", the default. fp2-etlan puts the 12-byte FP2 ET-LAN header in front of every frame: for an FP2 ET-LAN unit, or a connection set to "Connect with FP2 ET-LAN".
StationEEThe PLC's station number, 1 to 99. EE, the default, is answered by the PLC on the other end of the connection whatever its number. Set a number only when a gateway forwards to several PLCs.
Connection Timeout5sMaximum time to open the TCP connection and read the PLC's status
String Encodingutf-8How STRING values are stored in the PLC: utf-8, shift-jis (Japanese) or windows-1251 (Cyrillic)

Each function has its own Timeout (default 30m) that bounds one request. The connector sends each request once: if the PLC does not answer in time, the connection is closed and reopened rather than reused, because MEWTOCOL replies carry no request number and a late reply could otherwise answer the next request.

FP7 and FP0H close a system connection that carries no traffic for 60 seconds. MaestroHub reads the PLC's status on a connection that has been idle for 30 seconds, so a pipeline that polls less often finds its connection open.

3. Tag Map​

The Tag Map tab attaches an optional symbolic tag list; see Symbolic Tag Map. Every operation can always use a raw device address.

Testing the Connection​

Click Test Connection at the bottom of the form. The probe opens the connection and makes one round trip: it reads the PLC's status (RT) over MEWTOCOL-COM, or DT0 over MEWTOCOL7, then reports the latency. A wrong port, station, protocol or framing fails here: a PLC ignores a frame that is not for it, so the probe times out and the error says what to check.

Device Addressing​

A device address is an area followed by a number, e.g. DT100, R10F, WR3.

  • Contacts X, Y, R, L are a word number followed by one hexadecimal bit digit 0–F: R10F is word 10, bit 15, and the bit after it is R110. X5 is word 0, bit 5. Leading zeros are fine (R0010F).
  • Timer and counter contacts T, C are numbered in decimal: T5, C12.
  • Registers are decimal: DT100, LD5, FL0, WR3, SV5, EV5.
  • A bit inside a register is the register, a dot, and one hexadecimal digit: DT100.F. It is read as BIT. A bit of a contact word is the contact itself: WR10.F is R10F.
  • Contact words WX, WY, WR, WL hold 16 contacts each, lowest in bit 0: WR10 is R100–R10F.

Supported Devices​

AreaDeviceRead asWritableMEWTOCOL-COM range
XExternal inputBITNoX0–X999F
YExternal outputBITYesY0–Y999F
RInternal relayBITYesR0–R999F
LLink relayBITYesL0–L999F
TTimer contactBITNoT0–T9999
CCounter contactBITNoC0–C9999
WXInput wordword typesNoWX0–WX9999
WYOutput wordword typesYesWY0–WY9999
WRInternal relay wordword typesYesWR0–WR9999
WLLink relay wordword typesYesWL0–WL9999
DTData registerword typesYesDT0–DT99999
LDLink registerword typesYesLD0–LD99999
FLFile registerword typesYesFL0–FL99999
SVTimer/counter set valueword typesYesSV0–SV9999
EVTimer/counter elapsed valueword typesYesEV0–EV9999

These are the limits of MEWTOCOL-COM's address fields; your PLC's own ranges are usually smaller, and an address it does not have fails with error 61 (data error). The FP7's MEWTOCOL-COM has no SV/EV commands: use MEWTOCOL7's TS/TE/CS/CE.

MEWTOCOL7 (FP7)​

With Protocol set to mewtocol7, the areas and ranges are the FP7's (FP7 programming manual, WUME-FP7CPUPGR, 2.3):

AreaDeviceRead asWritableRange
X, Y, R, LContactsBITYesX/Y to 511F, R to 2047F, L to 1023F
SRSystem relayBITYes, where the PLC allows itSR0–SR999F
PPulse relayBIT, 16 points per requestNoP0–P255F
T, CTimer and counter contactsBIT, one per requestNoT0–T4095, C0–C1023
EError alarm relayBIT, one per requestNoE0–E4095
WX, WY, WR, WL, WSContact wordsword typesYesas their contacts
DT, LDData and link registersword types; a bit as DT100.FYesDT0–DT999423, LD0–LD16383
SDSystem data registerword typesWhere the PLC allows itSD0 up
TS, TETimer set / elapsed value (32-bit)DWORD, DINTYes0–4095
CS, CECounter set / elapsed value (32-bit)DWORD, DINTYes0–1023
I0–IEIndex register (32-bit)DWORD, DINTYesI0–IE (hex)

Local devices. A program block has its own copy of X, Y, R, L, P, T, C, the contact words, DT, LD and the timer/counter values. Name the block, then the device with its underscore, as the LCRD/LCWT instructions do: PB1:_DT10 is _DT10 of program block 1, which is not DT10.

Unit devices. Direct input and output and unit memory belong to a unit and are addressed with its slot: S1:IN0F and S1:WI0 (direct input), S1:OT3 and S1:WO5 (direct output), S2:UM00081 (unit memory, a hexadecimal address 0–7FFFF; a bit is S2:UM00081.3).

FL, SV and EV do not exist on the FP7. A bit inside DT, LD or UM is written with one command, so nothing else in the register is touched.

Supported Data Types​

Data TypeRegistersValueExample
BIT—booleantrue
WORD1unsigned 16-bit (0–65,535)1234
INT1signed 16-bit (−32,768 to 32,767)-100
DWORD2unsigned 32-bit70000
DINT2signed 32-bit-70000
REAL232-bit float72.5
LREAL464-bit float3.141592653589793
STRING1 + ⌈length / 2⌉textLOT-42

Multi-register values are stored low register first: a DINT at DT0 is DT0 (low 16 bits) and DT1 (high 16 bits), as the FP instructions store them. On MEWTOCOL7's TS, TE, CS and CE each number already holds one 32-bit value.

A STRING is laid out as the SSET instruction stores it: the character count in the first register, then the characters two per register, the first in the low byte. "ABC" at DT0 is DT0 = 3, DT1 = 4241H, DT2 = 0043H. Its String Length is the capacity in bytes: one per ASCII character, two per Shift-JIS Japanese character. A read returns at most the count the first register holds. Text longer than the length is refused, not cut.

Symbolic Tag Map​

The tag map lets functions use a friendly name (Filler.Count) instead of an address (DT100). Each tag maps a name to a device, a data type and, for strings, a length:

FieldRequiredDescription
nameYesTag name, unique within the connection
deviceYesDevice address, e.g. DT100 or R10F
dataTypeYesBIT, WORD, INT, DWORD, DINT, REAL, LREAL or STRING
lengthNoString length in bytes, for STRING tags

Saving refuses a duplicate name, an address the connection's protocol cannot reach (DT500000 on MEWTOCOL-COM), or a data type the device cannot hold (DT100 as BIT).

Importing tags (CSV or JSON)​

Paste tags into the Import box and click Import Tags.

name,device,dataType,length
Filler.Count,DT100,DINT
Filler.Alarm,R10F,BIT
Filler.Lot,DT300,STRING,10
[
{ "name": "Filler.Count", "device": "DT100", "dataType": "DINT" },
{ "name": "Filler.Alarm", "device": "R10F", "dataType": "BIT" }
]

Function Builder​

Creating Panasonic Functions​

After the connection is saved:

  1. Open the connection and go to the Functions tab
  2. Click New Function and choose Read Device, Read Block (Multi) or Write Device
  3. Fill the Basic fields (name, description, labels) and the Configuration fields
  4. Use Test Function to run it against the live PLC before saving

Read Device (panasonic.read.device)​

Read one typed value from a device or tag, or Count consecutive values as a list.

FieldRequiredDefaultDescription
Device / TagYes—A device address (DT100, R10F, T5, DT100.F) or a tag name
Data TypeNoWORDHow to interpret the value
CountNo1Consecutive values to read (1–1000). More than 1 returns a list. Ignored for STRING.
String LengthNo1Bytes, for STRING
TimeoutNo30mBound on this operation

A read larger than one frame carries (27 registers on MEWTOCOL-COM, 256 on MEWTOCOL7) is split into several requests. A BIT with a Count reads consecutive contacts: R10F with Count 3 is R10F, R110, R111. MEWTOCOL7 reads one timer or counter contact per request, so T and C there take Count 1.

Read Block (Multi) (panasonic.read.block)​

Read many named points. Each point has a name (the key in the result; names must be unique), a device (address or tag), a data type, and for strings a length. Neighbouring addresses of the same area share one request; contacts share their word's request. If any point is invalid, nothing is sent.

Write Device (panasonic.write.device)​

Write one typed value, or a JSON list such as [1, 2, 3] to consecutive registers in one request.

FieldRequiredDefaultDescription
Device / TagYes—A writable device address or a tag name
Data TypeNoWORDHow to encode the value
ValueYes—The value, or a JSON list. Supports ((paramName)) templates.
String LengthNo1Bytes, for STRING
TimeoutNo30mBound on this operation
  • A contact (Y, R, L) is set or reset on its own, with one command. Write one bit at a time; to write 16 contacts at once, write their word (WR10) as WORD.
  • A bit inside a register (DT100.F) is written with one command over MEWTOCOL7. MEWTOCOL-COM has no command for it, so MaestroHub reads the register, changes the one bit and writes the register back, with none of its own requests in between, and skips the write when the bit already has the value. A change the PLC program makes to the register's other bits between the read and the write can still be overwritten, so keep bits the PLC writes in a different register, or use an R contact for control bits.
  • The whole value is checked before anything is sent. A value the type cannot hold, a non-whole number for an integer type, text longer than the string length, or a read-only device (T, C, E and P contacts; X and WX on MEWTOCOL-COM) is refused.
  • A write that would need more than one frame (over 24 registers on MEWTOCOL-COM, 256 on MEWTOCOL7) is refused, so a list is never half written.
  • A write is sent once. If the PLC does not answer in time, the result says so; MaestroHub does not repeat the write, because the PLC may already have applied it.

Using Parameters​

The Value field supports ((parameterName)) placeholders; they appear in the Function Parameters block, where you set each one's type, whether it is required, and a default. For example, Device DT200, Data Type REAL, Value ((setpoint)) writes the node's setpoint parameter to DT200.

Testing Functions​

Click Test Function on the function form, enter values for any ((parameters)), and click Execute Test. The dialog shows the decoded value or the PLC's error reply. You do not need to save the function first. Testing a Write Device function writes to the PLC.

Pipeline Integration​

Each operation has its own node: FP Read (connected.panasonic.read.device), FP Block Read (connected.panasonic.read.block) and FP Write (connected.panasonic.write.device), plus the FP Read Group (connected.panasonic.readgroup) for several reads in one node. To poll a PLC, drive the reads from a Schedule trigger.

See Panasonic FP Nodes for the node reference.

Common Use Cases​

Line monitoring to a historian or the UNS​

A Read Block of the line's counts, speeds and alarm relays on a Schedule trigger, routed to the Unified Namespace or a historian.

Setpoints and recipes​

Parameterized Write Device functions (Value: ((setpoint))) fed from an MES or an operator form, with a Condition node checking the range first.

Machine control relays​

Set or reset R relays to acknowledge alarms or start sequences. Only the addressed contact changes.

Troubleshooting​

Connection Issues​

SymptomPossible causeSolution
Test Connection times out and says to check the port, station and framingNothing answers MEWTOCOL on that port: a wrong port, a station number the PLC does not have, the wrong protocol, or the wrong framingCheck the port in FPWIN GR7's connection settings; leave Station at EE; use mewtocol7 only on a connection set to MEWTOCOL7-COM; set Framing to match the connection's MEWTOCOL communication type.
Connection refusedNo server connection on that port, or all of them in useAn FP-X COM5 cassette serves three connections and an FP0H one system connection: close other tools' connections, or configure a user connection.
Connections drop after a minuteThe PLC's idle cut on a system connectionMaestroHub keeps an idle connection alive; if drops continue, check that nothing between MaestroHub and the PLC closes idle TCP connections sooner.

Read / Write Issues​

SymptomPossible causeSolution
error 61: data errorThe address does not exist on this PLC, or the read runs past the end of the areaCheck the area's range for your model.
error 60: parameter errorThe area does not exist on this PLCUse an area your PLC has.
error 42: command not supportedThe PLC does not support that command, e.g. SV/EV on an FP7 over MEWTOCOL-COMUse MEWTOCOL7's TS/TE/CS/CE on an FP7.
error 63: mode errorThe PLC's mode does not allow the commandCheck the PLC's RUN/PROG and remote settings. The failure is transient, so a retry succeeds once the mode allows it.
error 65: protect errorThe memory is write-protectedRemove the protection in FPWIN, or write another area.
DT0 is a register: use WORD …BIT chosen on a registerRead a register as a word type, or one bit of it as DT0.F.
"DT500000": MEWTOCOL-COM addresses DT 0 to 99999An FP7 address beyond MEWTOCOL-COM's fieldsUse Protocol mewtocol7 on an FP7.
An R address reads the wrong contactThe last digit is a hexadecimal bitR10F is word 10, bit 15; R16 is word 1, bit 6.
A STRING reads only one characterString Length left at 1Set the capacity in bytes on both the write and the read.
Japanese or Cyrillic text reads as garbageWrong String EncodingSet the connection's String Encoding to shift-jis or windows-1251.