Safe limit of twist in a shaft

OK I think I am following...

So the solutions I have written about above are extremely close to the manner of measurement in video #1 in post #1. You'd need to track the positions of two encoders (zeroed out under zero load), query them for their current position simultaneously, compare the readings to determine twist, then use math to calculate torque from twist. You could also sample the tractor side encoder for the speed, multiply that by the torque, and get shaft power. The resolution of torque would be directly related to the resolution of the encoder, the geometry of the shaft (how much it twists for a given torque), and the distance between the encoders (as large as possible). If the distance between the encoders can be increased, then lower resolution (cheaper) encoders can be used.

I am following your plan as well, but would like to offer some dissenting opinions about the method based on my personal hands on experience. First off, feel free to ignore me and try it anyways. Second, prove me wrong, because I'd love to learn new methods like you are discussing.

I believe you are planning to use a "transmissive photomicrosensor" as they are they are commonly called. These output an analog voltage (or sometimes a PWM duty cycle) which corresponds to the amount the sensor is blocked. These work, although they have a few notable drawbacks.

First off, the sensing window is small, forcing you to limit the measuring distance to a very short range (0.25" as an example). In your application, you will want to maximize the distance between the discs as to have a more noticeable twist in the shaft (which even over a good distance like 3 feet might only be a few degrees). The short distance would greatly limit the signal to noise ratio, perhaps to the point where there is no measurable twist between the discs.

Second, the sensor is an optical sensor which is very sensitive to ambient light and will report false signals from even a small amount of stray light - this will drastically reduce your signal to noise ratio. It will also be very sensitive to contamination from dirt, dust, or water.

Finally, the voltage output from these sensors will is nonlinear and will require some mapping tables in code to calibrate the voltages to the actual twist in the shaft. You'll probably end up needing to calibrate the whole thing manually and will end up with a very poor signal to noise ratio.

If you want to go this route, you might want to consider two sensors each with a single disc (just like you have pictured above) positioned as far apart on the shaft as possible. Instead of measuring the exact angular displacement as in my encoder example above, you would be comparing the timing of the light to dark transitions on each of the sensors. In this case an active photosensor with built in amplifier and comparator woud add a lot of robustness to the design. Link below.


By knowing the exact speed of the shaft (read one of the discs like an encoder for speed), you can calculate the angular distance traveled by the shaft during the delay between the light to dark transition on each of the discs. It would be very difficult to align the discs mechanically so each had a light to dark transition at exactly the same time under no load, so it would require a calibration cycle with the shaft running under no-load to determine a nominal delay time between each disc. Once that is defined you can load the shaft and the difference between the measured delay and nominal delay would give you the twist in the shaft. Again once you know this, a bit of math will give you torque and power. The sampling rate of the microcontroller to the sensor input would be the limiting factor in the resolution of torque. You would also need a very accurate measurement of shaft speed, so a disc with a higher pole count would be beneficial to a point although a dozen or so poles would be sufficient rather than the million pulses of the encoder idea.

The downsides are that this could not measure the torque on a non-rotating shaft where the encoder method could, and you rely on a very fast microprocessor to sample the signal for good resolution where that is not a requirement for the encoders. Also it is still an optical system so contamination is a real risk. The sensors I linked are at least waterproof.
Your input is greatly appreciated however you are mistaken about the portion in bold. I plan to use a digital photointerrupter just like the PM-F25 you linked to. Also i think you might be misunderstanding my explanation about the disks being close together.

Assume a single disk with 6 slots, with the slotted portion of the sensor radius equal to the unslotted portion, such that if we spin this disk in the field of the photointerrupter, we get a square wave with 50% ON time and 50% OFF time. Now make an exact copy of that disk and bolt the two together samely aligned. Spin it in the field of the photointerrupter and you still get a 50% square wave. Now loosen the bolt, rotate the 2nd disk by 10 degrees, retighten the bolt, spin it again in the photointerrupter field. Now you get a square wave with 33% ON time and 66.6% OFF time.

Now for a minute pretend those two plates bolted together are mounted on the PTO shaft and the offset between them represents the torque in the shaft. I will come back to this.

Consider that the period of this wave is measured by a (ex) 512kHz clock, so the raw data for the wave period looks like this (ex)
Total counts: 9482 (in one period, 1/6th of one revolution, at 540rpm)
ON counts: 3156
OFF counts: 6326
ON percentage: 33.2841%

Let's say that on the bench we measured a 14.3 degree twist at 607lbs (42.4476 ft×lb per degree), which what the math indicates our maximum safe torque is. The math then becomes:

(For this one sixth of a revolution):
Speed = 9482 clocks / 512000 clocks/sec = 0.0185195313s × 6 = 0.1111171878 seconds /rev
1/ 0.1111171878 seconds/ rev = 8.9995078151 revs/sec × 60 = 539.970468906 RPM
Torque: 50.0000% - 33.2841% = 16.7159% × 60 degrees = 10.02954 degrees × 42.4476 ft×lb/degree = 425.729 ft×lbs

HP = (539.97 RPM × 425.729 ft×lbs)/5252 = 43.77HP

And since all this is calculated during only one sixth of one revolution, we load it into a buffer and average it with the previous 5 values, and that's our output.

Ok, now we just did all that math assuming the plates are right up against each other, which doesn't mirror real life, right? Except it does. The plates will be right up against each other, and they will still measure the twist from one end of the shaft to the other. How so? Picture the shaft left to right, mount one of the disks to the right hand side. Now on the left hand side instead of fixing the plate, slide a tube over the shaft. Slide it all the way until it almost touches the disk, maybe give it a couple thou. Tack weld the tube to the shaft at the very left end of the shaft only. Now slide the 2nd disk from left to right over the tube (this disk will need a slightly larger center hole) and right up against the right-hand disk (maybe give it a couple thou spacing too) and fasten it to the tube. Now the disks are right up against each other. The shaft can't spin inside the tube because they're welded together, but it can twist inside the tube, and when it does, the angular displacement between these two disks will change because the tube doesn't also twist, as there's no torque on it.
 
I was about to suggest the sleevebtrick to let you measure over more span!
Any measurement where you can do frequency is radically easier than analog. Phase shift is a friendly measurement!

Rotating batteries and fiddly analog to digital bits are a PITA. Speaking from experience... getting the dratted strain gauge bridge bonded and wired is a challenge. And I didnt have to deal with brush and crops ;-)
These folks supplied it:

If you are willing to spend some.money there are flange mount non-contacting sensors that are really nice.

Sent from my SM-G892A using Tapatalk
 
If you're doing this on a real-world farm implement you have some significant environmental challenges that will need to be addressed. Water, mud, crop/weed debris, high/low temperature, vibration, errant lube or hydraulic oil contamination etc. I don't have a specific solution for you, just a lot of things to watch out for. Example: strain gauges typically are glued on to the thing they're monitoring. Many adhesives don't like wide temperature swings or long term exposure to water or high humidity.

I also am wondering about the compatibility of a strain sensor & wireless sender with the safety shield that typically is around the PTO drive shaft. If you remove yours for this, you're living dangerously.

A couple of magnetic sensors looking at magnets attached to each end of the shaft to look for phase shift differences between them as the shaft twists under load _might_ be robust enough (and might work with the drive shaft safety shield), but that's just armchair engineering. There's lots of magnetic junk out there that could clog up the works, so to speak, so that approach may not be bulletproof, either. If nothing else, naturally-occurring magnetite in the soil will eventually cause magnets to grow a nice beard of magnetic particles.

Your comments have been bouncing around in the back of my head and finally forced their way to the front. I wrote off magnetic sensors pretty early in the plan, and I can't remember why. I've done a month worth of brainstorming in the past week and I've forgotten a lot. I know that I've wanted a square wave from the outset, for simplicity; I can interface that directly to a microcontroller, no signal conditioning circuit necessary. Maybe I wrote them off because they don't make a square wave? That's not a good enough reason. Making a pair of zero cross detector circuits would be easier than making a pair of slotted disks, not to mention fabricating a custom PTO shaft just for this purpose. The custom shaft i have been discussing so far would be a fixed length thing, not exactly in line with my desire to have this work with more than one attachment. Magnets would be easy to implement, compatible with installation on an existing PTO shaft, and I could just mount the sensors straight through the safety shield, just drill a couple of holes. It would need to have a separate set of calibration values for each extension length I might use, as I imagine a PTO shaft fully collapsed has drastically different twist than one which is fully extended. So I couldn't use it for something which continually changes the extension amount, like a post hole auger. ... unless I made a lookup table of calibration values for every inch of extension, and add in some kind of extension length sensor feedback and automatically adjust for length. But I think I'm once again making it too complicated and probably less accurate.
 
Your input is greatly appreciated however you are mistaken about the portion in bold. I plan to use a digital photointerrupter just like the PM-F25 you linked to. Also i think you might be misunderstanding my explanation about the disks being close together.

Assume a single disk with 6 slots, with the slotted portion of the sensor radius equal to the unslotted portion, such that if we spin this disk in the field of the photointerrupter, we get a square wave with 50% ON time and 50% OFF time. Now make an exact copy of that disk and bolt the two together samely aligned. Spin it in the field of the photointerrupter and you still get a 50% square wave. Now loosen the bolt, rotate the 2nd disk by 10 degrees, retighten the bolt, spin it again in the photointerrupter field. Now you get a square wave with 33% ON time and 66.6% OFF time.

Now for a minute pretend those two plates bolted together are mounted on the PTO shaft and the offset between them represents the torque in the shaft. I will come back to this.

Consider that the period of this wave is measured by a (ex) 512kHz clock, so the raw data for the wave period looks like this (ex)
Total counts: 9482 (in one period, 1/6th of one revolution, at 540rpm)
ON counts: 3156
OFF counts: 6326
ON percentage: 33.2841%

Let's say that on the bench we measured a 14.3 degree twist at 607lbs (42.4476 ft×lb per degree), which what the math indicates our maximum safe torque is. The math then becomes:

(For this one sixth of a revolution):
Speed = 9482 clocks / 512000 clocks/sec = 0.0185195313s × 6 = 0.1111171878 seconds /rev
1/ 0.1111171878 seconds/ rev = 8.9995078151 revs/sec × 60 = 539.970468906 RPM
Torque: 50.0000% - 33.2841% = 16.7159% × 60 degrees = 10.02954 degrees × 42.4476 ft×lb/degree = 425.729 ft×lbs

HP = (539.97 RPM × 425.729 ft×lbs)/5252 = 43.77HP

And since all this is calculated during only one sixth of one revolution, we load it into a buffer and average it with the previous 5 values, and that's our output.

Ok, now we just did all that math assuming the plates are right up against each other, which doesn't mirror real life, right? Except it does. The plates will be right up against each other, and they will still measure the twist from one end of the shaft to the other. How so? Picture the shaft left to right, mount one of the disks to the right hand side. Now on the left hand side instead of fixing the plate, slide a tube over the shaft. Slide it all the way until it almost touches the disk, maybe give it a couple thou. Tack weld the tube to the shaft at the very left end of the shaft only. Now slide the 2nd disk from left to right over the tube (this disk will need a slightly larger center hole) and right up against the right-hand disk (maybe give it a couple thou spacing too) and fasten it to the tube. Now the disks are right up against each other. The shaft can't spin inside the tube because they're welded together, but it can twist inside the tube, and when it does, the angular displacement between these two disks will change because the tube doesn't also twist, as there's no torque on it.

OK I'm following.

You have a hollow tube with a solid bar coming back down the middle to measure torque. Sorta like a russian nesting doll. That way you measure the twist over the full length. Should work.

I would think my idea of two sensors and two slotted wheels at each end of a slotted shaft would be simpler to build, but whatever works for your needs is great!

I hope I'm not stating something you already know, but be careful in confusing the clock speed of a microcontroller (I'm assuming you plan on using a programmable microcontroller to do all the math, rather than doing it in hardware) with the time to execute a reading. If you plan on reading the input using an interrupt service routine (ISR), recording the elapsed time, calculating the time differences, applying the conversion factors, averaging data over many readings, and writing the data to whatever output you wish to use to display the torque, you are looking at hundreds, thousands, or more clock cycles per measurement which would significantly limit your maximum sensing speed. I question if a 512 kHz clock would suffice for this application (although I certainly could be wrong). You can get microcontrollers with 200+ MHz clocks for $20 nowadays so there are certainly options.
 
OK I'm following.

You have a hollow tube with a solid bar coming back down the middle to measure torque. Sorta like a russian nesting doll. That way you measure the twist over the full length. Should work.

I would think my idea of two sensors and two slotted wheels at each end of a slotted shaft would be simpler to build, but whatever works for your needs is great!

I hope I'm not stating something you already know, but be careful in confusing the clock speed of a microcontroller (I'm assuming you plan on using a programmable microcontroller to do all the math, rather than doing it in hardware) with the time to execute a reading. If you plan on reading the input using an interrupt service routine (ISR), recording the elapsed time, calculating the time differences, applying the conversion factors, averaging data over many readings, and writing the data to whatever output you wish to use to display the torque, you are looking at hundreds, thousands, or more clock cycles per measurement which would significantly limit your maximum sensing speed. I question if a 512 kHz clock would suffice for this application (although I certainly could be wrong). You can get microcontrollers with 200+ MHz clocks for $20 nowadays so there are certainly options.
I was using 512kHz as an example, just to illustrate the precision that can be achieved using the most elementary of components. A faster clock could surely improve accuracy, but I have yet to determine what's "good enough" and where the point of diminishing returns is. I am thinking of using an external clock and external counter ICs, that way my only interrupts would be the high/low transitions, at which points the counter ICs are reset and the microcontroller has all the time in between to do the math and communicate with whatever I decide this is going to communicate with (probably an LCD during continuous use and/or laptop to plot the data during testing sessions).

I agree that having two different sensors as opposed to a tube would be simpler to implement. The purpose behind the tube is another thing that I know I once had a good reason for, but can't remember. I will let go of it now, unless I can remember the reason.

I just learned of something new, latching hall effect sensors. With these I could achieve the exact same goal (square wave with period corresponding to sectors of rotation) without needing the slotted disks. They could be mounted through the safety shield of a typical PTO shaft.
 
A Teensy 4.x processor board runs at 600MHz and costs a tech less than $20. It has a full complement of counters and can be programmed using the Arduino IDE once you download the libraries.

I confess I was thinking of a more analog approach, basically a type of phase detector implemented with a couple of D flip flops -- but the repetition rate would be pretty low. A counter based method would probably be better in this case.

You wouldn't need to precisely line up the two magnet/sensor setup, just track shifts in timing as the PTO gets loaded up.
 
A Teensy 4.x processor board runs at 600MHz and costs a tech less than $20. It has a full complement of counters and can be programmed using the Arduino IDE once you download the libraries.

I confess I was thinking of a more analog approach, basically a type of phase detector implemented with a couple of D flip flops -- but the repetition rate would be pretty low. A counter based method would probably be better in this case.

You wouldn't need to precisely line up the two magnet/sensor setup, just track shifts in timing as the PTO gets loaded up.
I keep hearing good things about the new teensy. Your post broke the camel's back and I just ordered one. I'll find a use for it, maybe this project, maybe some other. When you say it has counters, do you mean like an "external" counter integrated into the IC? I don't see anything about that in the specs, unless you're referring to the attached screenshot. Is that what you're talking about?
 

Attachments

  • Screenshot_20210324-142839_Chrome.jpg
    Screenshot_20210324-142839_Chrome.jpg
    458.9 KB · Views: 7
I consider myself "smarter" and more "practical" than an engineer. I know because I have to work with them regularly. Part of why is an engineer will try to put space launch technology into the mundane. I consider the mundane to be where 99% of the world lives, and mundane applications should get mundane solutions, not fancy ones. I think you have found a job for a simple mechanical device called a torque limiter. Build one into the shaft and be done with it. Some torque limiters ratchet, some cam out, and some are just shear pins.

As far as shaft twist goes, my expensive 4130 rock crawling axles have 120 degrees of twist. I need resilient twist in my system. How much twist depends on the material, length, and thickness/aspect ratio. I couldn't tell you at what point breakage occurs at in the real world until I hear it let go. At least I can drive home on a broken axle. I guess my point is that it's a lot of adaptation to go through when a $2 shear pin will do the same thing for you.
 
I consider myself "smarter" and more "practical" than an engineer. I know because I have to work with them regularly. Part of why is an engineer will try to put space launch technology into the mundane. I consider the mundane to be where 99% of the world lives, and mundane applications should get mundane solutions, not fancy ones. I think you have found a job for a simple mechanical device called a torque limiter. Build one into the shaft and be done with it. Some torque limiters ratchet, some cam out, and some are just shear pins.

As far as shaft twist goes, my expensive 4130 rock crawling axles have 120 degrees of twist. I need resilient twist in my system. How much twist depends on the material, length, and thickness/aspect ratio. I couldn't tell you at what point breakage occurs at in the real world until I hear it let go. At least I can drive home on a broken axle. I guess my point is that it's a lot of adaptation to go through when a $2 shear pin will do the same thing for you.

I see it differently. I believe the OP is trying to instrument the process.

It's not clear, to me, whether the instrumentation is for his private personal edification or does he intend to develop an accessory/device for sale.

Which, doesn't really matter to me. He has chosen a challenge and is working it out. I enjoy observing the process.

By following along, I'm bound to learn something.
 
I keep hearing good things about the new teensy. Your post broke the camel's back and I just ordered one. I'll find a use for it, maybe this project, maybe some other. When you say it has counters, do you mean like an "external" counter integrated into the IC? I don't see anything about that in the specs, unless you're referring to the attached screenshot. Is that what you're talking about?
Not quite, your screenshot is about various aspects of internal time (no external input needed). But the internal counters can be used to count external inputs, for doing things like measuring frequency -- very close to what you want to do. It probably will be necessary to download the data sheet to see what you need to do in order to set up the counters. You also can see what other folks are doing to set up the counters if you go to the PJRC forum and do a search for counter-related programming questions. There's a lot there. Discussions on so-called GPS disciplined oscillators could be particularly useful w/regard to what you want to do. Gated counters, that's what you want.
 
Back
Top