Monday, 9 March 2026

Load cells - WTF??

What now, Fattie?

I've been aware of strain gauges and their use for measuring forces since ~1980, when I took a year out at ICI Petrochemicals Control Development Dept up in Wilton on Teesside. There, I glued 4 strain gauges to the outside of a high pressure pipeline that carried ethylene from the plant on the Wilton site where it had been cracked, over to Runcorn in Cheshire, where it was used for plastics or fibre production. The pipe was only about 8-10" in diameter but operated at a pressure of something stupid like 1000psi, so even a small rupture would have been an issue. 

With these strain gauges, it was possible to listen to the pipeline and discern the sound of a leak. The valve stations that were positioned something like 10-20 miles apart would close and isolate the faulty section. There was already such a system in place but it used direct pressure sensors in contrast to the strain gauge system which was "non-invasive" and could be installed without closing down the pipeline.

In another activity related to this pipeline, I wrote a program in Fortran that calculated the not inconsiderable ethylene inventory each day, based on pressure and temperature readings reported from each of the valve stations. This ran on a mainframe, using a teletype terminal.

Back to today, and I'm revisiting the idea of making a stiffness gauge to measure and report the rigidity and backlash of a machine tool, such as a lathe or milling machine. There's a lot of bullshit talked about in this area, particularly when it comes to parting off in the lathe. 

The old chestnut is the notion that using an inverted parting off tool mounted at the rear of the machine is the answer to eliminating chatter and tool breakage. This is particularly established with the Myford hobby lathe users. Of course, you still need good location of the carriage ie good adjustment of the gibs that will prevent he carriage from lifting. I'm rather sceptical about the notion that most Myford users keep their gibs scrupulously well adjusted but hey.

My concept would comprise 2 key elements:

  • A strain gauge-based load cell to measure forces on the tool (and by extension, the force on the workpiece).
  • A deflection sensor to measure the movement of the tool under the action of the cutting forces. In reality this will include some backlash (mechanical hysteresis) in the ballscrews / leadscrews as well as spring in the machine frame, spindle etc. This could be a linear encoder or laser distance sensor.
  • ...and ideally these measurements would be reported simultaneously, so that the spring rate (force per deflection) could be determined.

What would this look like?

I must admit I've not done a great job of figuring this out. Some time ago, I created a CAD assembly that was sort of related to this concept but when you look it in detail and give it just a little thought, you can see that the only thing it would characterise would be the stiffness of the load cell itself. What a dickhead.

Not a whole lot of use, since I want to be measuring the stiffness of the machine frame, spindle etc.

What's needed is a measure of the deflection of the tool tip relative to the workpiece. So the displacement sensor should pick up on the workpiece, not the toolholder. Doh! FWIW, the displacement sensor I used in that model was simply a digital DTI but that's a detail, as I could use almost any sensor here, ideally one that has some form of digital interface.

How about digital displacement sensors with comms interface?

I had a look for possible displacement sensors. One obvious solution would be a linear encoder such as a digital caliper or scale with a comms interface. Looking at more industrial solutions, I see laser sensors such as the BL-30NZ-485 from Bojke, part of the Chint industrial group (right click and select "translate"). 

This has a sensing range of 30 +/-5mm and an accuracy of around 10um, with a serial interface. It's early days but it looks as if it implements Modbus over RS485.

I found an English datasheet for the BL-30Z-485 that seems to be a bit more intelligible than the Bojke original.

I fancy using an ESP32 Arduino to do the processing. There would need to be some form of RS485-to-TTL transceiver involved, to convert the signal to Arduino inputs. So I've ordered one of these quasi-industrial ESP32-S3 modules that incorporates a variety of IO including RS485:

That should hopefully take care of the RS485 interface and - even more hopefully - the Waveshare support(?) will enable me to actually get the thing working.

What about the load sensor?

Most of the Chinesium scales and load cell amps seem to use the HX711 IC from Avia Semiconductor. The datasheet gives an idea how it is supposed to be used

It expects 2 inputs from a Wheatstone bridge and has a fixed gain. Beyond that, it's necessary to interpret the data and implement features such as tare and calibration.

According to Dr AI, "the HX711 uses a specialized, proprietary 2-wire serial interface consisting of a data pin (DT) and a clock pin (SCK). It is often described as "SPI-like" but does not follow the standard SPI protocol. The interface reads 24-bit data, with additional pulses used to select input channels and gain." There are various implementations in the Arduino community, so it would make sense to reuse some of that rather than try to become a software hero of the kind I'm not.

One advantage of the ESP32-S3 is that it has a dual core processor, so if it's necessary to run each of the sensors on its own core, I have that option.

What is Modbus? And RS485?

RS485 is simply a serial interface (physical layer), whereas Modbus is a software protocol (rules/message format). The BL-30NZ uses both, as is quite common on industrial applications.

Firstly, let's get some stuff...

No comments:

Post a Comment

Load cells - WTF??

What now, Fattie? I've been aware of strain gauges and their use for measuring forces since ~1980, when I took a year out at ICI Petroch...