Bronkhorst MFC
ConnectivityBronkhorstMFC is a source block (with an optional setpoint sink) that reads live flow, temperature, frequency, and alarm data from a physical Bronkhorst mass flow controller connected over the browser's Web Serial API. Communication uses the PROPAR protocol with automatic ASCII / Enhanced Binary mode negotiation. On connection the block identifies the instrument, reads its full-scale capacity and engineering unit, and scales flow readings from percent-of-full-scale into real units automatically.
Use this block to bring a live MFC into a BlockWerk control diagram — for example, to close a pressure or concentration control loop using actual hardware measurements. The block also writes a flow setpoint back to the instrument, either from its setpoint parameter or from the on-canvas input field, allowing real-time hardware actuation from within the simulation.
Inputs & Outputs
| Direction | ID | Label | Type | Status |
|---|---|---|---|---|
| ← Out | measure |
Flow (%) | number | Output |
| ← Out | fmeasure |
Flow (Value) | number | Output |
| ← Out | temperature |
Temperature (°C) | number | Output |
| ← Out | frequency |
Frequency (Hz) | number | Output |
| ← Out | alarm |
Alarm Status | number | Output |
Parameters
| Parameters | Label | Type | Default | Description |
|---|---|---|---|---|
nodeAddress |
Node Address | number | 3 |
PROPAR node address of the instrument (typically 3 for directly connected single instrument) |
baudRate |
Baud Rate | select | 115200 |
Serial baud rate. Must match the instrument configuration. 115200 gives best throughput. |
pollRateMs |
Poll Rate (ms) | number | 10 |
Target poll interval in ms. The bus fires immediately when RTT exceeds this — so 0–10ms gives maximum speed (~40 Hz at 115200 baud). Increase to reduce CPU load. |
enableLegacyPorts |
Enable Legacy Ports | boolean | false |
Enable polling for legacy Measure and Alarm ports. Disable this to maximize bus speed when using fMeasure. |
setpoint |
Setpoint (%) | number | 0 |
Flow setpoint as percentage of full scale (0–100%). |
Usage Examples
Live flow measurement fed into a closed-loop controller
BronkhorstMFC ──► [Flow (Value)] ──► PIDController → [measured]
nodeAddress: 3
baudRate: 115200
pollRateMs: 10
Monitor flow and temperature on a scope
BronkhorstMFC ──► [Flow (Value)] ┐
──► [Temperature (°C)] ├──► Scope
Multi-instrument bus scan and auto-configure
Use the SCAN BUS button on the block face to discover all PROPAR devices. Selecting multiple instruments automatically places additional BronkhorstMFC blocks on the canvas, one per instrument.
Remarks & Best Practices
- Source block with setpoint output: All measurement outputs are on the right side. The setpoint is written to hardware via the block face input or the
setpointparameter — there is no left-side setpoint input port. - Web Serial API required: Only available in Chromium-based browsers (Chrome, Edge, Brave, Opera). The block displays a "Browser Not Supported" warning in Firefox and Safari.
- Automatic flow scaling: After connection the block calls
identify()to read the instrument's full-scale capacity and unit. Flow values onfmeasureandmeasureports are then automatically multiplied by(capacity / 100)and reported in engineering units. - Selective polling: Only ports with outgoing connections are polled, minimising bus traffic.
fmeasureandtemperatureare always polled to keep the block face display live. fmeasurevsmeasure: When both ports are active,measure(16-bit integer) is skipped in favour offmeasure(float, higher precision). Enable legacy ports only when the instrument does not support process 33.- Parameter Explorer: While connected, the wrench button opens a full PROPAR register browser, allowing any DDE parameter to be added as a named output port.
- Tunable params:
pollRateMsandsetpointcan be changed live from the Properties panel during an active simulation.
Related Components
- BronkhorstEmulator: Emulates a Bronkhorst instrument on a serial port for software-in-the-loop testing without physical hardware.
- ExternalInput: Inject synthetic flow values into a control diagram without hardware.