Aerospace Machining
10 min
aerospace machining a machine shop cutting aerospace structures, over mtconnect seven cnc machines in four cells, 133 tags operator view on 4018 , the mtconnect agent on 5028 what it demonstrates four scenarios at once, one per cell, each with a healthy machine beside it so the comparison is on screen rather than remembered a dulling cutter scrapping a forging worth more than the cycle flank wear raises cutting force, the unsupported web deflects and springs back, and more material comes off than the program asked for nothing alarms the tool life counter still has parts left spindle load climbs from about 55 to 80 percent while the drawing is still being met, and the web crosses the minimum a few parts before the fixed count change would have caught it a cold machine cutting the first parts of a shift oversize a ballscrew that is cold is short, so the axis under travels and the part comes out thick it corrects itself as the screw warms through, which is why it is expensive the parts are already cut this and the wear scenario push the same measured feature in opposite directions, so one band strip carries both cutting edge thrown away by changing on a count carbide is changed on a fixed part count rather than on condition, so most of every edge is discarded this one runs with nothing injected at all, and the figure is on screen from the first frame a spindle that stays available and stops earning a pallet pool runs dry overnight the machine stays powered, stays available , and simply stops being active every dashboard watching availability says it is fine why the tag names are not ours every other solution in this set hand maps its registers modbus has no self description, so each address is assigned and then has to be defended here the names come from the standard execution , spindle speed , path feedrate , load , part count and tool number are dataitem types defined by mtconnect part 2, and a real shop already publishes them under exactly those names litmus edge browses the agent and discovers the shop rather than being told about it, and every reading on the operator view is labelled with the dataitem it arrived as, so what is on screen and what is in devicehub are the same string the whole shop is served by one mtconnect agent on one port litmus edge tells the seven machines apart by device name, which is how a real agent is deployed what it puts on litmus edge seven devicehub devices on the mtconnect ethernet (gen1 3) driver, 19 tags each one machinetool digital twin model with seven instances, because a shop buys the same class of machine repeatedly and the eighth machine should be an instance rather than a modelling exercise four analytics groups group what it computes, on the edge tool wear risk spindle load against what a sharp edge pulls, classified first part quality the probed feature against the drawing the twin carries thermal readiness the gap to thermal equilibrium, per machine spindle utilisation up/downtime by value on the spindle deploy services aerospace machining image us docker pkg dev/litmus customer facing/litmus solutions/aerospace machining demo 0 1 0 container name aerospace machining demo restart unless stopped ports \ target 4018 published 4018 protocol tcp \ target 5028 published 5028 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 "4018" agent port "5028" seed "7" 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 4018 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 polls to reach this solution apply on start 1 configure the edge on startup edge verify tls 0 1 checks the edge's certificate seed 7 makes a run repeatable what you see across the top the worst spindle in the shop and the shop average behind it, scrap for the run in dollars, the value of cutting edge discarded, and spindle hours lost the headline names the worst machine rather than reporting only the average, because an average over seven spindles can move by at most a seventh of one machine's loss, which reads as noise below, the four cells side by side each machine is drawn as a machining centre with its head riding in z and its cutter turning, under two meters spindle load, and the probed feature against the acceptance band from the drawing every reading is labelled with the mtconnect dataitem it came from faults are the four scenarios above, injected per machine, 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 it also records which edge its apply landed on and removes from that one, so repointing at a different edge in between cannot leave the first one carrying a solution nobody can see the operator view stays on its waiting panel until litmus edge is verified to be carrying the shop every value on the page is read back from the edge, so a page showing data is itself evidence the chain is working reporting export report produces one self contained html file the shift's money figures, the probed feature against the drawing with the acceptance band behind it, the distribution against the spec limits, where the spindle time went, and time in each execution state per machine no scripts and no external requests, so it opens offline and prints removing it docker compose down use remove from edge on the operator view, or clean up in the solutions provisioner # , to remove what it created on the edge support support\@litmus io mailto\ support\@litmus io