Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
stephaneag
 
Posts: 60
Joined: Sat Mar 29, 2014 8:37 pm

Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by stephaneag »

Hi

I've been scratching my head for some hours now trying to find a way to get around a 'drift' I get from flex sensors ( Spectra Symbol 112.5mm/4.4in, aka https://www.adafruit.com/product/182 ):

I've 3d printed "reference curves" at specific angles ( with a 'slit' in those that matches the sensors thickness ) , and tried the 3 flex sensors I have against these, but be it with a multimeter, a voltage divider circuit to a micro-controller ( arduino pro micro ) input directly or via an LM358-based impedance buffer, I still get a 'drift' in the values I get: in other words, the resistance seems to never 'settle' ( I'm using the flex sensor to 5Vcc and a Rm resistor of 22k to form the said voltage divider )

do you have any hints on how I could bypass that trouble ?

I will try an RC timing circuit later today, and also using other resistor values, and possibly using 3.3V & AREF, but I don't see why & how it would bypass by 'drifting' problem ...

Otherwise, ( hopefully, provided your hints I won't get the said 'drift' any longer ), nice product: it will fit perfectly in the project I'm building ( if I can get those to work .. )

Lastly, do you have any bi-directional flex sensors to offer yet ?

Looking forward to reading from you soon,
Wishing you a very nice day

ps: just in case, but I doubt this would be useful to you ( I didn't records the said 'drifts' ): link to a google sheet I'm using to characterise the sensors ( but the manufacturer datasheet doesn't give any 'curve' & or force as a function of resistance .. ) https://docs.google.com/spreadsheets/d/ ... sp=sharing

User avatar
adafruit_support_bill
 
Posts: 88093
Joined: Sat Feb 07, 2009 10:11 am

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by adafruit_support_bill »

The spec sheet is not very specific. That is most likely due to the difficulty in characterizing the response of such a flexible device. The resistance varies not just with the total angle, but with the radius of the bending which can be different along the length of the sensor.

There is a paper here that discusses a test fixture that can be used to produce well controlled flex profiles and found that the results were fairly repeatable.

https://www.mdpi.com/2079-9292/10/23/2994/htm

User avatar
stephaneag
 
Posts: 60
Joined: Sat Mar 29, 2014 8:37 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by stephaneag »

hi again ! :)

First, thanks for the quick answer: I avoid posting unless I'm kinda stuck ;) :/

Now, thanks for the link: gotta go read that mouthfull & hopefully apply the given knowledge :)

On a side note ( while I'm at it ), I'm currently investigating the best/simplest ways to get a 'flat to curve surface actuator' ( to make it simple, some mechanism that allow me to start with a flat piece of paper in front of me ( horizontally & in landscape orientation ) & that allows me to curve more and more the said paper until each of its opposite ends joins to form kind of a cylinder of paper )
-> I had some thought ( but very possibly completely overkill/overcomplex ) on using linkages ( since I couldn't get my head around a gear-only based solution ), but after finding about 'gear tails' recently, I'm wondering if something - that I don't know yet the name of - already exist to serve that specific purpose ( my upcoming tests being try my 'gear tail arrangement', untweaked, & then adding my tweak & see if I get correct paths for each of the 'dots' on the flat-to-curve profile of paper
( in other words, the 'tweaks' I need are related to the 'shift' we get when using some flat length as an arc length for a specific circle radius & angle )

ps: if the 3d printed references I used are finally of any use, I'd be happy to cleanup my Fusion360 parametric sketch & share it :) ( nb: find a nasty bug in it that allowed smaller incremental stepping in the main parameter, but not allowing to directly type a value & gotta solve that, at least for myself ;p )
IMG_0873.jpeg
IMG_0873.jpeg (838.68 KiB) Viewed 615 times
Screenshot 2022-06-25 at 22.27.jpeg
Screenshot 2022-06-25 at 22.27.jpeg (787.37 KiB) Viewed 615 times
Screenshot 2022-06-26 at 00.00.jpeg
Screenshot 2022-06-26 at 00.00.jpeg (952.66 KiB) Viewed 615 times
pps: I attached some pictures of the said 3d printed references & the tiny circuit I'm using ( most basic voltage divider followed by a LM358 opamp, just as in the Sparkfun's Flex Glove Controller datasheet ( I was surprised the schematic didn't show a more complex op-amp setup, but probably because the gain & range are adjusted/set by the ads10105 they're using there .. ( for my needs, 10bits resolution should be enough, I'm more concerned with the said 'drift', & possibly the repeatability of the angle measurement )

ppps: since I plan to use a stepper for my setup, I hoped to multiply the angular position feedbacks, to be sure of my moves & fine tune stuff ( ex: combining known steps of the stepper to for example a rotary encoder on an idle gear or an IR + gray code stuff .. ), and the flex sensors 'd be on the 'paper' described above, 3 of those overlapping by half to get fully 180° on each 'side' of paper ( from center ) & cie

This being said, big thanks again & onto reading the link you provided ( hopefully, I'll be able to understand & digest all that then fixing stuff, fingers crossed .. )

User avatar
adafruit_support_bill
 
Posts: 88093
Joined: Sat Feb 07, 2009 10:11 am

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by adafruit_support_bill »

Interesting problem. Geometrically, I think it should be possible with either gears or a linkage. But from a practical mechanical perspective, there would likely be a tradeoff between the number of arc segments and the backlash or slop from all the moving parts. Can I ask what the application is?

User avatar
stephaneag
 
Posts: 60
Joined: Sat Mar 29, 2014 8:37 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by stephaneag »

hey ;)

-> interesting indeed, isn't it ? ;p

From the way I see it, cutting half of the 'paper' in 4 sections ( 0, 45, 90, 135, 180 ), and imagining a top-view, we have 4 times the same path ( not a simple curve, more a slow-spiralling-one ), with a different amount of movement along it.

While digging on the net, I found the "Limaçon" of Pascal, which seems ( to my eyes at least ) somehow related to the curves I'm looking for.

A friend of friend of mine also pointed me in the direction of a research paper by Disney R&D Teams, that would generate one of the closest movement curve from a drawn one, as well as the possible gears & linkage arrangements to do so ( ex: to do weird pantographs of beasts like Theo Jansen, .. ).

After contacting one of the authors, still no answer, so I gues I'll have to try the other publishers, or maybe this is considered 'closed-source' ( :/ .. )

I was originally going for a 'planetarium-like' ( flatness of the 'base' is a plus ) design, but I couldn't figure out the movements by only maths & couldn't find a fitting simulation software for my needs ( found some since, but gotta digg them more to know how to implement my needs & then export the results in a manner that is useful to me -> ex: simulating gears ratios then exporting the mechanical diagram to Fusion360 & re-simulating the linkages using as-built joints & motions links ( ps: motion links not availabe in the current API, gotta try contact sets .. )

After doing some 'weird gears & linkage' combos via trial & error, I achieved my desire & started on working on how to drive all using 1 motor + gear ( nearly done on this, gotta switch discs for gears & 3d print + test ), I tried to understand why/how my happily finding did work, and refined several other options + how to adjust said curves via different means ( 2 driven gears instead of one only rotating, .. ).

My 'planetarium-like' idea would have required worm screws & other stuff I'm not used to ( and mechanics at all, prior to this thnk ), reason for which I'm now very interested in tweaking the said 'gear tail' I found in a youtube video by some Japanese dude fond of mechanical devices ;) ( gotta find the link back .. )

( see attached picture for the on-going thnk on this )

-> quick qu: are you used to mechanical devices yourself ? ( I'm currently using the programs 'Linkage' & started to learn 'GIM', but both needs a Windows VM .. )
-> sorry for my naïve question, but what do you precisely mean by "radeoff between the number of arc segments and the backlash or slop from all the moving parts" ?

-> for what I can disclose ( part of this is for a client ), the goal is to study different lenses against different curvatures & paper printed patterns, let's say at 1st as an artistic installation ;) ( very sorry I can't say more, even more while I'm asking for hints :/ .. )

-- a visual is worth a thousand words ? --
top-view paths
top-view paths
Screenshot 2022-06-28 at 23.31.29.png (722.45 KiB) Viewed 608 times
'exponentially spiraling' curve ( the undrawn part forms an inclined smile ;p )
'exponentially spiraling' curve ( the undrawn part forms an inclined smile ;p )
Screenshot 2022-06-28 at 23.31.57.png (550.95 KiB) Viewed 608 times
untweaked 'gears tail' arrangement html5 canvas generator ( pass angle & num of segments , get sections angles & length ( simpler than te tool that generated the 'correct' paths )
untweaked 'gears tail' arrangement html5 canvas generator ( pass angle & num of segments , get sections angles & length ( simpler than te tool that generated the 'correct' paths )
Screenshot 2022-06-28 at 23.33.40.png (380.21 KiB) Viewed 608 times

User avatar
stephaneag
 
Posts: 60
Joined: Sat Mar 29, 2014 8:37 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by stephaneag »

( to add remaining pictures related to 'gears tails' thnk )
gears tail principle
gears tail principle
Screenshot 2022-06-28 at 23.39.13.png (247.37 KiB) Viewed 608 times
how gears tail may relate to the paths I need ( & visualizing the arc length vs sections length diff )
how gears tail may relate to the paths I need ( & visualizing the arc length vs sections length diff )
Screenshot 2022-06-28 at 23.40.32.png (267.41 KiB) Viewed 608 times
trying to thnk about the flatest way to implement 'relative to n-1 section's end' linear offset driven by gears tail principle :) ( I know other ways exist, but one of my constraint is very, very tiny gears &amp; cie, so can't use linkages on those gears to realise said-offset*<br /><br />* offset to accommodate the diff between arcs length &amp; sections ( chords ) length )
trying to thnk about the flatest way to implement 'relative to n-1 section's end' linear offset driven by gears tail principle :) ( I know other ways exist, but one of my constraint is very, very tiny gears & cie, so can't use linkages on those gears to realise said-offset*

* offset to accommodate the diff between arcs length & sections ( chords ) length )
Screenshot 2022-06-28 at 23.34.16.png (73.3 KiB) Viewed 608 times
Hoping to sparkle your interest with those, possibly finding together a neat & optimized solution, I gotta have some rest ( I'll read the rest of the paper you provided the link to tomorrow ;) )

Wishing you a very nice evening :)

User avatar
adafruit_support_bill
 
Posts: 88093
Joined: Sat Feb 07, 2009 10:11 am

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by adafruit_support_bill »

but what do you precisely mean by "radeoff between the number of arc segments and the backlash or slop from all the moving parts" ?
Most gear trains have some 'backlash' - meaning that there is some slack in the system because the gears do not mesh perfectly. This is partly due to the manufacturing tolerances of the gears, as well as how precisely they are spaced relative to one another in the gear-train. It is also tends to increase over time due to wear.

Similarly, most bearings have some wobble or slop. This is also a combination of manufacturing tolerances and wear.

For a short gear train or a simple pantograph linkage, you can usually get the backlash and slop down to an acceptable level at a reasonable cost. But with more complex systems with many gears and/or joints, the errors start to accumulate and things can get pretty wobbly in the end.

Using your 'gear tail' as an example, lets assume that one segment of the tail has just 15' (1/4 of one degree) of backlash. Not bad. But consider what happens when you chain 8 of them together: By the end of the tail, you will have as much as 2 degrees of error at the end. If you were to go with a 20 segment tail, you would have as much as 5 degrees of error.

One way to deal with the backlash is by keeping the system under tension to take up the slack. Toothed belt & pulley systems tend to have less backlash relative to gears.

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by adafruit_support_mike »

If you don't need unrestricted motion, you can use a pair of rollers pinned to flat, flexible straps:
rolamite.jpg
rolamite.jpg (79.57 KiB) Viewed 586 times
That kind of coupling has little or no backlash, excellent position repeatability, and low friction. It's generally known as 'rolamite'.

User avatar
stephaneag
 
Posts: 60
Joined: Sat Mar 29, 2014 8:37 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by stephaneag »

Hi there !
@Bill & @Mike --> haha, thanks for both of your answers ;P

First of all, sorry for the delayed answer :( ..

I've investigated some ways of countering the backlash ( using gears ) using a spring & a particular setup, but the 'Rolamite' idea is very very neat !

I've done some drawing on paper on some way(s) to adapt the above 'gear train' to instead use 'Rolamite', but didn't have time to do them proper on laptop in 2d nor 3d :/

Now, I took few minutes to do a naïve parametric model of 'rolamite chunks' to be added on top of each another to form '3-chunks cylinders Rolamite'
Rolamite as '3-chunks cylinders'
Rolamite as '3-chunks cylinders'
Screenshot 2022-07-22 at 03.16.16.png (711.79 KiB) Viewed 465 times
For the flexible straps, I have some flexible yet resistant material used for securing packages during shipping, which also have some 'grip' to them
the flexible material I plan to use
the flexible material I plan to use
flexibleStrapMaterial.jpg (493.7 KiB) Viewed 465 times
I'm gonna try a quick 3d print of some of those, just to see if I can have some fun wrapping my head around the 'gears tail conversion' while manipulating physical models :)
Here's a link to the 3d model ( stp extension not being allowed here ;p ): https://we.tl/t-FF6ow5o2Ah

nb: very, very loosely related, any hints on the best place(s) to lookup some ICs from their labels & footprints ? ( I'm currently doing an RE on known 'blue boards' ( Hdmi to Mipi DSI using Toshiba TC358870XBG chip ), but can't find data sheets or at least few infos on some of the on-board components ( at least, I know the role/usage of some of those .. )
( I added a quick capture of a non-exhaustive list of the components in question & 'll continue digging, hopefully I'll find something .. ;) )
tried but didn't succeed finding all of those :/
tried but didn't succeed finding all of those :/
Screenshot 2022-07-22 at 06.46.39.png (855.3 KiB) Viewed 465 times
This being said, onto 3d printing I am :))

As usual, looking forward to reading form you soon,
And wishing the team a very nice day :)

Keep up the great work ;)
+

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by adafruit_support_mike »

stephaneag wrote:any hints on the best place(s) to lookup some ICs from their labels & footprints ?
There are several dictionaries of markings.. search for 'smt maring code'.. but nothing complete. There are no standards, even between parts from the same vendor.

Plastic packages with two pins are almost always diodes.. the line on the ones labeled EV/15 and AE above are cathode markings.

Three-pin devices are usually transistors, but can sometimes be two diodes in a single package. You can identify them with a multimeter that has a diode test function: NPNs conduct from one pin to another when the base voltage is higher than the collector or emitter. PNPs conduct when the collector and emitter voltages are higher than the base. Mosfets don't conduct from the gate to either other pin.

As you've drawn them above, the upper-right pin is the base or gate, the upper-left pin is the emitter or source, and the lower pin is the collector or drain. Other pinouts are theoretically possible, but I've never seen a real device or datasheet that uses anything else.

In most cases, drawing a schematic will help identify things. The pattern of components connected to a chip is a more reliable signature than the package markings.. voltage regulators are usually 5-pin devices with capacitors connected VIN-GND and VOUT-GND, for instance.

User avatar
stephaneag
 
Posts: 60
Joined: Sat Mar 29, 2014 8:37 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by stephaneag »

Hi there !

First of all, thanks for the hints, as usual ;)

Now:
- I wonder if there already exist a project where we may input a picture of a "label" ( or its text ) & a package type & get a list of possible parts ( sorted in 'confidence' order ), & possibly link(s) for purchase at verified providers, possible alternative parts if correctly identified, .. ?
( I was browsing on "panel look.com" earlier, and found the "upload data sheets -> get points -> download other datasheets" interesting )

- well, I gotta start digging the differences between set resistors/diodes/[fuses?]: aside from caps, it looks nearly the same to my not-enough-trained yes :/ ;)

- thanks also for the hint on mosfets ( & NPNs / PNPs ): but I really gotta desolder some stuff to do proper measurements with the correct tool ( already planned to do so .. )

- regarding drawing a schematic, on this part of the RE I already found some schematics for which some parts are missing ( & schematic may also be not properly tested & 'just' a cleaner-than-paper-sketches reminder of the original author's ( plural ;p ) findings - I read somewhere that someone R. Beránek @Prusa Research had done its own RE & schematic, but I couldn't find it in a good-enough resolution to be actually useful, so .. )

The main reason I'm asking this is I'm wondering how ok it can be to swap parts for others without at least knowing some infos on the original ones ( aside from current consumption & voltage supposed to be at the output(s), ex: if using an LDO Vreg is mandatory or not, or any other specifics I don't know yet about high speed signals, or dsi / displays specifics, ..
( In the past, I could generally switch a part for another while studying the similarities & diffs from their data sheets, but here, "what would make a particular Vreg better than another one for that particular aplication" -> kinda no idea right now, but "in progress" ^^.. )

- regarding a schematic, bis: closely related to the board for which I'm trying to identify the 'unknown label components', there is another, smaller board, that does stuff specific to some display(s) ( contrary to the 'main' board that does the HDMI->DSI stuff & has the ~std stuff onboard to drive most displays ). For this one, I'm actually quite happy of myself, since

I got the attached RE pics without any multimeter test, only by visual lookup of the still-not-pretty-nor-clear-enough stitched usb microscope captures ( if you got a nice setup for this, it's welcome .. I thought about building myself a rig using G-code for movements & for later scripting the stitching + using some layering modes ( .. ) )
-> still, I gotta do some multimeter continuity checks to ( or overlay the pours not already added ? .. ) to know about the few missing pins I didn't catch yet ( provided I'm correct for all the other ones, but things 'made more and more sense' regarding the parts layout & typical applications & infos from datasheets, so .. seems looking nicer & nice, at least to me .. ( we'll see when testing my own pcb ;| .. )
littleZoomOut.jpg
littleZoomOut.jpg (793.97 KiB) Viewed 402 times
greenPcb_RE_wip.jpg
greenPcb_RE_wip.jpg (808.22 KiB) Viewed 402 times
pinsMappingWip.jpg
pinsMappingWip.jpg (672.03 KiB) Viewed 402 times
ps: too tired so 'll be posting schematic extracts with said-components later today or tomorrow ;p

ps2: how come Adafruit doesn't already have such board in stock ? :P ( I'm kidding, obviously ^^ ) ( but joke aside, I just read quickly "https://cdn-learn.adafruit.com/download ... rry-pi.pdf" and saw the famous "blue board" I'm doing the RE on - at least 3 versions other than mine, so sorry for asking, but who is/are the individuals on your team the most familiar with the 'confusion industries' boards ( often sold by WiseCoco on AliExpress ) ? )
-> in very short, there's an on-going open-source firmware for the stm32 clone used on most of theses boards ( not digged yet but planned as well .. )
-> also, seeing the 'round display 3.4" ( version without touch ), I successfully RE the protocol & wrote an Arduino HID driver for a client some months ago ( the "little green pcb" that came with it didn't support the touch capability, but I got the display with the touch overlay )
-> right now, the "little green pcb" of my other display ( flexible 6" BOE ) has components on it, so is a little more involved ..
-> last but not least, the version of the blue board I have for the said 6" display has other components on it, and DSI connector pins mapping seems to differ, BUT I rewatched Scotty@StrangeParts when he has fun with the same displays & it would seem the blue board he uses are not the one I have for the display ( in other words, the flashed firmware is different, the DSI connections differs a little, but both can use the same "little green pcb" to drive the said 6" display

Also, once ok on this, I'll have to try driving it from a CM4 ( if I can find one .. ) using the least number of components ( so, nearly only those on the "little green board" if the RPi can provide the necessary 1.8, 3.3 & 5 V lines ) & using 1 channel 4 lanes DSI ( gotta digg the device tree overlay part & where to pick an existing driver to add to a BR build, but Scotty@StrangeParts, thanks again, has provided links to some kernel .dtsi, so converting it to the RPi format should be a fun challenge ;)

User avatar
stephaneag
 
Posts: 60
Joined: Sat Mar 29, 2014 8:37 pm

Re: Flex sensor ( Spectra Symbol 112.5mm/4.4in ) drifts

Post by stephaneag »

"Long time no seen" .. so quick update on this on-going project(s)

Regarding the 'rolamite tail' mechanism, I'm finishing building a 3d printed assembly of 'rolamite links', and aside from my poor alignment ( I'll 3d print so-called 'alignment plates' before trying the 'flexible stripes' to the 'rolamite links' to fix that .. ), things seems to behave as expected ( when operated manually - I still have to model the driving part that includes the motor & ice ) :)

Once ~ok with the above, I may refine it & scale it down, and/or possibly use flexible filament to lessen the numbers of screws used & get closer to some papers I could read on the subject ( .. )
rolamice links - 3d model &amp; holed stripe
rolamice links - 3d model & holed stripe
Screenshot 2022-09-15 at 07.26.22.jpg (312.33 KiB) Viewed 307 times
assembly of rolamite tail tip
assembly of rolamite tail tip
3dPrintedRolamiteTail.jpg (903.35 KiB) Viewed 307 times

Now, on a side subject, I acquired an additional 'flexible display kit' with 1 adapter/driver, 2 'Hirose' adapters, and a '1to2 adapter', and I've started studying the pins mapping by hand ( which takes some time, even with some advised guesses ( ex: from the other adapter/driver boards I already have & others ( .. )

After digging a little, it seems the MCP23017 is a nice candidate from my need, which is more or less an 'automated continuity tester' that'd output some csv to be imported into a custom webUI to visualise stuff & also generate some symbol's NETs stuff & ice ( .. )

I have nearly ok on the routing I planned for those & a somewhat 'modular' implementation, but I'm still wondering if I need something specifically to NOT damage the pcb I'm studying ( by studying, I mean for which I try to find the routing of pins on its ( 60 pins ) connector )
My 'naïve' guess is to send somewhat 'quick' pulses of 5V & check all the other pins for 5V, then deducing 'NETs' from those 'shorts', ending up with a symbol/footprint for each connector on my laptop, but I've been wondering if it could be mandatory to add some in-series resistors or other things to prevent any damage ( aka, to mimick the way a multimeter's continuity tester detects a short, but logging that instead of beeping into my tired ears .. )
tip routing for MCP23017
tip routing for MCP23017
Screenshot 2022-09-15 at 07.23.23.png (166.75 KiB) Viewed 307 times
This being said, I'm going back to my cave to keep digging ;p ..
Looking forward to helpful answers ;)

++

Locked
Please be positive and constructive with your questions and comments.

Return to “General Project help”