Vacuum sensor again

268 views
Skip to first unread message

Marek T.

unread,
Nov 13, 2017, 12:07:24 PM11/13/17
to OpenPnP
Hello Friends,

I have currently very simple vaccum level sensor in my machine. It's giving only information OK for question by gcode "is there a component on the nozzle", missing OK means that picking is false. It's ok untill I need to change the nozzle, then each time have to recalibrate the threshold of the cirquit, it's unconvenient.

So I want to build the "normal" sensor and read cooncretes values to compare with assigned to the nozzle. Have few questions:
- what is typical KPa range required? There are different sensors with different ranges.
- if someone is using some NXP sensor like 5050 or 5100 - what is voltage changing for i.e. Juki 502 (or other) when there is component on the tip and when its off?
- vaccum sensor in my case must be mounted on the head. I wanted connect this sensor as the ADC to the thermistors Smoothieboard inputs and read it by M-codes. But distance in my construction will be some 1-1.5m wires. If the voltage changes are small, I'm afraid there will be a problem with this due to some noices etc. Sure I can build small cirquit with ADC and connect it as another subdriver to the Openpnp, but would like to avoid another USB using, specially for so simple function.
How did you solve it in your machines? Any information highly appreaciated :-).

br
Marek

Marek T.

unread,
Nov 14, 2017, 5:05:05 AM11/14/17
to OpenPnP
Hey, it's not like I've made a question but haven't checked what was said about it at all. But just as more I read about it as feel more confused...

So I need nozzle vacuum to read. Some of you used absolute but others differential sensors. And gauge... Also exists dual ports sensors like MPX5050DP with vacuum port P2 then P1 we leave probably not used. But there is laso version MPXV5050D, don't know the difference if it's also dual port.
Pls help me with this what is best to take.

Now my machine uses some unidentified sensors which I need to replace (all the module) and build new one. With Juki506 I see voltage difference on OP output like 6.50V to 6.86V (OP is powered from 12), So the change with and without the part on nozzle is ~0.35V. I don't know the resolution table of my sensors. But for MPX like 5100 it would be equal moreless 1kPa. Is it typical vacuum value change in your machines using mpx and Juki?

Bernd Walter

unread,
Nov 14, 2017, 5:29:04 AM11/14/17
to OpenPnP


On Tuesday, November 14, 2017 at 11:05:05 AM UTC+1, Marek T. wrote:
Hey, it's not like I've made a question but haven't checked what was said about it at all. But just as more I read about it as feel more confused...

So I need nozzle vacuum to read. Some of you used absolute but others differential sensors. And gauge... Also exists dual ports sensors like MPX5050DP with vacuum port P2 then P1 we leave probably not used. But there is laso version MPXV5050D, don't know the difference if it's also dual port.


Absolute vacuum is 0kPa and atmospheric is around 100kPa.
Any sensor for higher pressure is overrated.
I use MPX sensors for 500kPa as they had been cheaper to get, but its not a good choice, since there is more noise.
Realistic values are expected to be under 50kPa as the pumps rarely go higher.
My suggestion would be the MPX5050DP
The MPX5050DP has an integrated circuit to deliver a linear voltage.
I'm not aware of the D as such, but some of the MPX sensors come as plain sensors without circuit.

My sensors are fully integrated and read, but I've set my limit values to always hit the requirements.
During tests I wanted dry runs without parts.
The leak value with part on a big nozzle tip can be lower than that of an open small nozzle tip, so every tip needs it's own individual setup.
But the values are also quite useless in my setup as all the nozzles read the same value.
This is somewhat expected when the valves interconnect the nozzles to the same pump, but I also have no idea what change would be best to handle this.
Right now I have bigger problems to solve and didn't invest more time into that.
 

Michael G.

unread,
Nov 14, 2017, 5:34:10 AM11/14/17
to OpenPnP
Hi marek,

I have NXP MPXV6115VC6U installed on my machine. seem to work well, use 5V and their range is from 0...5V analog so it can be read out perfectly with an arduino.
The reading I have is very different from yours, made tests some time ago and for the tests it happened that I used the juki 506 that you mention now, so it would be easy to compare for you: https://docs.mgrl.de/maschine:pickandplace:vacuumsystem#tests_of_different_rotary_joints I was focusing on finding an adapter, but some numbers may be of interest for you. the difference between nozzle open and nozzle closed is my finger put on the tip...

Marek T.

unread,
Nov 14, 2017, 8:34:09 PM11/14/17
to OpenPnP
Bernd, Michael

Thanks for info. It's giving me some valuable imagination!

Marek T.

unread,
Nov 15, 2017, 12:18:02 PM11/15/17
to OpenPnP
Hi Michael,

As I see, when you have placed your 3D adapter, there is a change 13.5 to 7.3kPa when nozzle is opened or closed. As this sensor has ~0.04V/1kPa so the voltage change that you get is ~0.25V related to 6.2kPa changing (13.5-7.3). Am I right or making some mistake counting it, moreless that voltage changes you have recognized with your arduino to detect wether the part is on the nozzle or not?
I see the changes like 0.35V, so it's similiar effect as seems.

How long wire you have between arduino and sensor? If the changes are so small, it seems be vulnerable to errors caused by interferences, have you noticed not any problems? v
I must have some 1.5m distance and sensor wires leaded paralely with X-motor high current supply (150V/8A peak). Probably will have to add some OP with offset.

I just have found some cheap sensors family. They are on alibaba or aliexpress for $2-3, looks quite interresting.
http://eleparts.co.kr/data/design/product_file/Hoon/XGZP_DIP6.pdf

Michael G.

unread,
Nov 15, 2017, 12:38:41 PM11/15/17
to OpenPnP
Hi marek,


Am Mittwoch, 15. November 2017 18:18:02 UTC+1 schrieb Marek T.:
Hi Michael,

As I see, when you have placed your 3D adapter, there is a change 13.5 to 7.3kPa when nozzle is opened or closed. As this sensor has ~0.04V/1kPa so the voltage change that you get is ~0.25V related to 6.2kPa changing (13.5-7.3). Am I right or making some mistake counting it, moreless that voltage changes you have recognized with your arduino to detect wether the part is on the nozzle or not?
I see the changes like 0.35V, so it's similiar effect as seems.

sensor has VOUT = VS*[(0.007652*P) + 0.92] whereas VS=5V and P in kPa, so I would calc deltaVout=5V*0.007652*6.2kPa= ~0.237212V. The adc has a resolution of 2^10bit so it would change the raw value about 48 counts. the readings I get from adc are very stable and don't differ more than a few counts...
 

How long wire you have between arduino and sensor? If the changes are so small, it seems be vulnerable to errors caused by interferences, have you noticed not any problems? v

no, I have no issues with the adc readings. the vac. sensor is directly on the pcb of the shield I use. its on my feeder-shield, see here: https://docs.mgrl.de/maschine:pickandplace:feeder:openpnpsfriend#schematic_board
 
I must have some 1.5m distance and sensor wires leaded paralely with X-motor high current supply (150V/8A peak). Probably will have to add some OP with offset.

of course, I would use shielded cable then or maybe there are some IC available, to convert to i2c or similar. maybe the smoothie (i don't use) or another controller has a protocol that can be tunneled to the serial console?
I have a third vac-sensor unused laying around here. if I find time, I could try to read it via a long cable and see how stable readings are...  would that help you?

Marek T.

unread,
Nov 15, 2017, 12:49:18 PM11/15/17
to OpenPnP
No, don't loose a time for checking with long cable, pity of your time. Finaly I have probably other noise condition due to probably other motors than you have.
Mainly I was curious that voltage changes if the one which I see sounds realistic.

thx for help!

Marek T.

unread,
Nov 27, 2017, 5:10:19 AM11/27/17
to OpenPnP
Hi Everybody,

Could anybody help me how to declare actuator read_regex to read value from the string where value contains a dot, like 444.3 below:
ok VAC:444.3 /0.0 @0

Regex
ok VAC:(?<Value>-?\d+)
Works ok if value in string is no dot containing, like just 444. If there is dot it's just ignored read as debug null.

Values programmable for nozzles vacuums accepts values with dot so I guess the reading is also probably possible. But how to do it?

This string is from thermometers ADC of Smoothieboard which I want to use for vacuums reading.

br
Marek

n.a.m...@gmail.com

unread,
Nov 27, 2017, 10:03:34 AM11/27/17
to ope...@googlegroups.com, Marek T.
Hi Marek,

What about this: VAC:(?<Value>-?(\d+(\.\d+)?))

Regards,
Niels.

Marek T.

unread,
Nov 27, 2017, 11:07:34 AM11/27/17
to OpenPnP
Hi Niels,

Now it seems I've started understood how the syntax works... thanks ;)

So finally the complete proper regex to use Smoothieboard's answer from thermistors is:

sample string: ok VAC:444.3 /0.0 @0 ; "VAC" is my description and may be changed of course
read_regex: ok VAC:(?<Value>-?(\d+(\.\d+)?)).* ; or more restrictive
read_regex: ok VAC:(?<Value>-?(\d+(\.\d+)?)) /0.0 @0 ; however it may brings posibly problems as I don't know (and not very interrested on the moment) if " /0.0 @0" is always the same or sometimes differs.

At occasion here is MPXV6115V output voltages table for different Juki nozzles, maybe usable for someone in the future.
Sure it may vary for other pump than mine but giving some image.
For small tips differencies are very small unfortunately.

nozzle, partOFF-part-ON
501; 3.46-3.36
502; 3.76-3.62
503; 3.93-3.52
504; 4.32-3.15
505; 4.40-3.25
507; 4.40-3.63

br
Marek
Reply all
Reply to author
Forward
0 new messages