Paper Machine
11 min
paper machine a fine paper machine and its scanning quality control system, over opc ua eight sections from stock preparation to the reel, 118 nodes operator view on 4020 , the opc ua server on 5030 what is different about this one every other solution in this set reports a point a pressure, a level, a flow a paper machine reports a profile the quality control system drags a scanning head across a sheet 8 4 m wide moving at 1,100 m/min, so a single measurement is a curve across the sheet rather than a number that gives two axes with different names and different control systems, and a mill engineer uses both words constantly md machine direction along the sheet, i e against time cd cross direction across the sheet, i e against position md control is an ordinary loop moisture low, add steam cd control is twenty four dilution valves in the headbox, each trimming the fibre delivered to one slice of the sheet the operator view shows both, because a side elevation alone cannot show a profile the machine along the top, and below it the sheet seen from above with one bar per dilution zone and the scanner head drawn where it actually is what it demonstrates four scenarios, and the first causes the third with nothing in the model connecting them fibre giveaway, which is not a fault anyone injects paper is sold by area and made by mass, so every gram per square metre above the customer minimum is fibre nobody paid for the mill must keep the thinnest part of the sheet legal, not the average, so the aim point is the specification minimum plus the profile spread plus a small operating margin a machine that cannot hold a flat profile is therefore forced to run heavier and pays for that margin on every tonne, all shift, with nothing alarming flatten the profile and the aim can come down that is the entire economic argument for cd control, and here it is arithmetic rather than a claim a dilution valve the controller cannot beat a valve plugs, and the slice it feeds runs heavy a dilution valve does not affect only its own slice the diluted stock spreads before it reaches the lip, so one valve moves its neighbours too, and a controller cannot correct anything narrower than its own response width that is why real residual profiles are dominated by narrow streaks, and why on screen one bar never comes back to the line no matter how long you wait two sigma goes from about 0 4 to about 1 6 g/m2 and stays there; the aim point follows it up within a scan or two, and the giveaway figure follows the aim the sheet break, which is emergent a heavier slice is also a wetter slice, and the dryers are controlled on the scanner average, so the average comes right while the streak stays wet a wet line through the sheet is a weak line, and the open draw between the press and the first dryer is where a weak line lets go the break arrives two sections downstream from the valve that caused it, with no fault injected there specific steam, where a press problem and a dryer problem look identical a point of dryness lost at the press is a point the dryers buy back with steam, and drying is the largest energy consumer on the machine a plugged press felt takes steam per tonne from about 1 45 to about 1 85 with quality and production untouched, which is exactly why it can run for months neither the steam figure nor the dryness figure identifies the cause on its own; the analytics group joins them, which is what tells the two apart why the tag names are the mill's the map follows what a paper machine's dcs and its qcs actually publish to the mill historian, which is the level litmus edge would be reading basisweightgsm , moisturepct , cdsigma2 , drynessafterpresspct , steampertonne , freenesscsf , jetwireratio two groups exist because a specific scenario needs them basisweightgsm and bwaimgsm are separate nodes, and the gap between them is the giveaway cdzone01bw through cdzone24bw are the databoxes across the sheet, and cdzone01valve through cdzone24valve are the dilution valves that feed them the measurement is on the scanner and the actuator is on the headbox, which is where each of them physically is the honest caveat there is no opc ua companion specification whose standard names are this domain model, so the node names are the solution's own what the protocol buys is discovery, typed values and subscription, not borrowed semantics what it puts on litmus edge eight devicehub devices on the opc ua client advanced driver, 118 nodes eight digital twin models with one instance each, one per section, because every section has a different tag set and a shared model would be the union of all of them four analytics groups group what it computes, on the edge profile control health spread against the aim point it forces, and whether a valve is stuck basis weight control the giveaway, in grams, tonnes and dollars per hour drying energy specific steam against press dryness, to tell the two causes apart break risk the wet streak against the load in the draw it is about to break every group is multi input a single threshold on a single tag is what a scada alarm already does; the join is what the edge is for the profile is served as twenty four sibling scalar nodes rather than one array node an array would be tidier on the wire and is what a scanner's own protocol does, but devicehub reads a tag as a value, so an array would arrive as one opaque tag that no analytics group could threshold and no twin attribute could bind to deploy services pulp paper image us docker pkg dev/litmus customer facing/litmus solutions/pulp paper demo 0 1 0 container name pulp paper demo restart unless stopped ports \ target 4020 published 4020 protocol tcp \ target 5030 published 5030 protocol tcp environment \# fill these in edge url "${edge url }" edge api token "${edge api token }" sim host "${sim host auto}" apply on start "${apply on start 1}" edge verify tls "${edge verify tls 0}" http port "4020" opcua port "5030" seed "13" log level "info" edge url=https //10 0 0 5 edge api token=your token sim host=10 0 0 9 docker compose up d open http //localhost 4020 configuration variable default what it does edge url the docker host litmus edge to configure edge api token unset token for that edge or a client id and secret sim host auto address the edge subscribes to reach this solution apply on start 1 configure the edge on startup edge verify tls 0 1 checks the edge's certificate seed 13 makes a run repeatable sim host is the one worth understanding the solution serves opc ua and the edge subscribes to it, so the edge needs an address it can route to leave it auto when the solution runs on the edge itself or with host networking otherwise set it to the address of the host running the solution, as the edge sees it get it wrong and the failure is quiet the devices are created, they show as online, and no tag ever reads a value the solution refuses to apply a template whose address is obviously unreachable and says why, rather than succeeding and doing nothing what you see across the top fibre giveaway as dollars per hour with the tonnes underneath, the cross direction two sigma against the flat machine floor, steam per tonne, and production with the break and downgrade counts below that the machine, stock preparation to reel, drawn side on with the sheet threaded through it flat on the wire, through the press nips, over and under the dryer cans, then onto the reel, which grows as the jumbo builds the sheet changes colour along the line as water leaves it, which is the fastest way to read where the machine is spending its energy below the machine, the sheet from above one bar per dilution zone against the aim, with the scanner head drawn at its real position this is where a stuck valve is visible and nowhere else faults are the four scenarios above, each with a card naming the datahub topics to watch and what changes about them applying and removing it the header carries both controls apply to edge pushes the devices, twins and analytics; it greys out once the solution is on the edge remove from edge previews first, listing exactly what would be removed and from which edge, and only then offers to remove it the solution removes only what it created, and it records which edge its apply landed on so that repointing at a different edge cannot leave a solution stranded on the first one reporting preview report and export report produce one self contained html file inline styles, inline charts, no scripts and no external requests, so it opens offline, emails and prints it carries the shift totals, the cross direction profile against the specification band, giveaway and specific steam against time with the flat machine baseline marked, the reel record with its dispositions, and the litmus edge configuration that produced it support support\@litmus io mailto\ support\@litmus io