Configuring BRX Modbus for IFM AL1343 IO-Link Blocks

Brian Holt9 min read
AutomationDirectModbusTutorial / How-to
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Stop the quick fixes that keep the block offline

Start with the interface mismatch. A BRX native Ethernet read does not provide the transaction required by this installation's AL1343. Repeating that read, changing the destination memory, or rewriting the ladder around it will not restore data. Communicate with the block through Modbus over Ethernet.

Quick fix or symptom Why it fails Correct action
Poll the block with the original BRX Ethernet read The required exchange is not available through that read method. Configure the AL1343 as a Modbus server and use BRX Modbus reads.
Assign one Ethernet address The block uses separate addresses for configuration and Modbus process access. Set both addresses with LR Device, then poll the Modbus address.
Read only the process-data range Process values do not identify the connected sensor or its engineering range. Perform a second read for the port's sensor-type value.
Treat every returned word like a 4–20 mA input IO-Link supplies integer process data, status words, and a sensor identifier rather than an analog input count. Decode the sensor type, apply its conversion, and then write the engineering value into the common analog-channel layer.
Change ladder references whenever a sensor source changes Direct references bind the control logic to one physical input or Modbus register. Use REFRead, REFWrite, and lookup tables to map either source into Ch1-Ch64.

Get communication running first, but do not leave raw register addresses scattered through the machine logic. That shortcut makes every sensor replacement and channel reassignment a program change.

Set both AL1343 Ethernet addresses

Use ifm LR Device to assign the Ethernet settings. The described setup required the proprietary software; the remembered purchase price was about $500, so check the current licensing arrangement before scheduling the work.

Each block needs two Ethernet addresses:

  • The configuration address used to program the sensor block.
  • The process address used by the BRX Modbus client.

The 16-block installation assigned the two addresses next to each other. That is a useful maintenance convention, not a reason to assume that consecutive addresses are mandatory. Record both addresses against the block name and cabinet location. Point the BRX reads at the process address, not the configuration address.

Before writing all channel logic, prove one port on one block. Confirm basic Ethernet reachability, confirm that the Modbus transaction completes, and record the raw returned words. If basic communication fails, recheck the selected address, subnet settings, duplicate addresses, and the read definition against manual 80284137UK.pdf. The process-data mapping begins around page 82.

Map each port without hiding the address pattern

The block exposes a separate process-data area for each of its eight ports. Port 1 begins at 1001, port 2 at 2001, and the pattern continues through port 8 at 8001. From that sequence, the derived start-address rule is:

Process data start = (port number × 1000) + 1

The described Port 1 implementation copied six returned words into N100-N105. Its notes also call the range 1001-1007, which contains seven addresses rather than six. Resolve that mismatch before cloning the request. Compare the requested quantity with the port table in the manual, read the candidate words into an isolated scratch area, and observe which positions change when pressure or flow changes. Do not let an off-by-one quantity shift data into the next destination word.

BRX word Observed Port 1 meaning Handling
N100 0 with no sensor; 256 with a good sensor Use as a connection or validity indication after verifying it on the installed device.
N101 1 for OK; 7 with no sensor Gate the engineering value with status rather than retaining an apparently valid stale value.
N102 Pressure process value Hold as an integer and apply the sensor-specific scaling.
N103 Not identified Keep it in raw diagnostics until the manual defines it.
N104 Flow process value in the same stated format as pressure Convert only when the detected sensor type calls for this field.
N105 Not identified Do not use it in control logic without a confirmed definition.

An early interpretation placed the process value in the range -65534 to +65535; the recorded correction is -32767 to +32768. Use the corrected interpretation and inspect the raw word representation at a sign transition. The positive endpoint needs explicit handling when the destination is a conventional signed 16-bit integer, so base the final conversion on the manual's data type rather than a clamp or guessed rollover.

Read the sensor type separately

Process data alone is not enough when different sensor ranges may occupy the same port. Read the sensor-type address in a second Modbus transaction and use that value to select the conversion.

For Port 1, read address 34 into N106. Port 2 uses 44, and the sequence continues to 104 for Port 8. The derived rule is:

Sensor-type address = 24 + (port number × 10)
Type value Installed interpretation
390 0–160 GPM flow meter
475 0–14.7 PSI gauge
477 -15 to +15 PSI gauge
533 Insertion flow meter
964 0–33 GPM flow meter

Treat an unlisted type as an unsupported configuration, not as the last sensor selected. Raise a channel configuration diagnostic and preserve the raw process words for troubleshooting. Add a conversion entry only after matching the returned type to the installed sensor documentation.

The stated process encoding uses a factor of ten and no decimal point in the integer register. Where the sensor definition confirms that the raw value equals engineering units multiplied by ten, calculate:

Engineering value = raw process value / 10

Keep scaling and range selection in the type lookup rather than applying one global formula blindly. The insertion flow meter entry, for example, has no range stated here; read its configured range from the device documentation or parameterization before assigning engineering units.

Build the Modbus requests once and replicate them

  1. Create a raw-data structure for one block with eight port areas. Retain status, process words, sensor type, communication state, and last-update state separately.
  2. Configure the Port 1 process request beginning at 1001. Confirm the register quantity against the manual because the six-word destination and 1001-1007 notation conflict.
  3. Configure the Port 1 type request at 34. Store the result independently from the process block.
  4. Validate the two requests with a known sensor. Check 0/256 in the first status word, 7/1 in the second, the expected type value, and a changing process value.
  5. Clone the pair for ports 2 through 8 using the address patterns. Keep block number and port number in the destination naming.
  6. Clone the verified block profile for the remaining Ethernet process addresses. Test each block before enabling its values in control logic.
  7. Measure PLC scan impact, communication completion, timeouts, and stale-data behavior with all configured blocks active. Stagger or group requests according to the measured load; no polling interval is specified here.

Two reads per port produce 16 logical reads for a fully populated eight-port block. Sixteen fully populated blocks produce 256 logical reads, so hand-written request logic becomes repetitive and difficult to audit.

Do-more Designer 2.9 introduced the Modbus Scanner feature documented under help topic DMD0493. It can process Modbus reads and writes in a scanner device for a combination of up to 32 Modbus/TCP or Modbus/RTU servers. It can also perform required data-format conversion and save the result as a reusable device profile. With 16 blocks, this architecture is within the stated 32-server count, provided the rest of the project does not push the configured total beyond that limit.

Route converted values through one analog interface

Write each converted port value into R1-R128. That allocation matches 16 blocks multiplied by eight ports. Keep the raw Modbus words separate so maintenance can compare network data with the converted value.

The existing analog layer uses R501-R564 for 64 normalized channels named Ch1-Ch64. Its lookup data contains the assigned input location, range, starting reading, calibration, low-range error, and high-range error. It originally accepted only WX locations from 4–20 mA or 0–20 mA input modules.

Add a second lookup path that accepts a memory type and reference rather than only a WX address. Use REFRead and REFWrite to move the selected source into the common channel. The control program continues to read Ch1-Ch64, while the configuration chooses either a physical analog input or an IO-Link value.

This indirection permits an operator-selected change between a 4–20 mA input and a Modbus input from the touchscreen without editing the PLC program. Restrict that selection to configured choices, apply the correct range and calibration for the selected source, and reject a source whose communication or sensor status is bad.

Verify the repair before returning control

  1. Disconnect the sensor and confirm the Port 1 status pattern changes to N100 = 0 and N101 = 7.
  2. Reconnect it and confirm N100 = 256, N101 = 1, and the expected sensor-type code in N106.
  3. Apply a known pressure or flow condition. Compare the raw integer, the divide-by-ten interpretation where applicable, and the value written to the assigned Ch1-Ch64 channel.
  4. Force or simulate a source-selection change through the touchscreen. Confirm the channel follows the chosen WX or R source without changing ladder references.
  5. Interrupt communication to one block. Confirm its channels report bad or stale data without disturbing values from other blocks.
  6. Run all configured blocks together and review request completion, PLC scan behavior, and channel update continuity.

Leave a maintenance display showing both Ethernet addresses, block and port number, raw status words, sensor type, raw process value, converted value, and selected analog source. That view separates a network failure, missing sensor, unsupported type, scaling error, and lookup-table error without opening the program.

FAQ

Can I read an IFM AL1343 directly with a BRX Ethernet read?

Not with the read method attempted in this installation. Use Modbus over Ethernet to the AL1343 process address.

Does each AL1343 need two IP addresses?

The described configuration uses one address for programming the block and a second address for Modbus process reads. Set both with LR Device and document which one the BRX must poll.

Can one Modbus read return both process data and sensor type?

The implemented mapping uses two reads per port. Port 1 process data begins at 1001, while its sensor type is read separately at 34.

Does Do-more Designer have to use hand-written read logic?

No. Version 2.9 added the Modbus Scanner under help topic DMD0493, with reusable profiles, format conversion, and support for a combination of up to 32 Modbus/TCP or Modbus/RTU servers.

When should I stop troubleshooting and call support?

Stop here if both Ethernet addresses respond but status, type, or process words remain invalid after comparing the request type, quantity, and offsets with manual 80284137UK.pdf. Capture both addresses, the block and port number, every requested register range, the returned raw words, and the Do-more Designer version. Escalate that record to AutomationDirect or ifm through their official support channels.

Back to blog