Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Measuring a rotation speed

Hi! I'm pretty new in Machine vision and I have a simple question : how to measure a rotation speed ? A mechanical piece is placed on a rotating motor axe. On that piece is engraved a square. Is it possible to detect the axe rotation speed focusing on this square ? I am using LV2009f3 and Machine Vision development module. 
CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
0 Kudos
Message 1 of 12
(5,111 Views)

It is possible, but the approach will be different depending on the rotation speed.  What are the min and max rotation speeds expected?

 

Is the square in the center of rotation, or does it rotate around the center of rotation?  Will it always be in the same location?  Are there other marks or features on the piece that could be used to figure out orientation?  What is the general shape of the piece?

 

Do you have any pictures?  Those always help.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 2 of 12
(5,105 Views)
As bruce as suggested post a few images else we can only guess. Also you need not neccasarily use a camera for this unless you are also visually detcting other parameters. You can use a proximity sensor or other sensors to detect the speed.
0 Kudos
Message 3 of 12
(5,091 Views)

Hi! Thank you for your answers. You can find enclosed to this message an image describing the system.

The motor axis (and of course the mechanical piece) can rotate from 0 to 10 rot/sec.

As you can see on the picture, the square rotates around the center of rotation and will always be in the same location. Another mark that can help figuring out the oriantion of the piece is an engraved letter "N".

 

Would it be a good idea to determine how many times per second the "N" becomes a "Z" ?

CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
0 Kudos
Message 4 of 12
(5,081 Views)
What is the thickness of the mechanical piece? Is it metal? Is the wobble minimum?Can a sensor be used?
0 Kudos
Message 5 of 12
(5,079 Views)
The mechanical piece is made of plastic and is 2mm thick. I would say that it should not wobble at all... but I guess it would be wrong. Nevertheless, we can consider that the wobble is negligible. The purpose of the experiment is avoiding sensors use and achieve rotation speed control while decoding other pieces of information (such as bar-code, letters, specific patterns, etc). But I need first to focus on speed detection...
Message Edité par zyl7 le 01-13-2010 03:24 AM
CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
0 Kudos
Message 6 of 12
(5,077 Views)

Would it be a good idea to determine how many times per second the "N" becomes a "Z" ?
If you dont want to use a sensor then this is the only thing i can think of...
0 Kudos
Message 7 of 12
(5,074 Views)

You can also use a clamp (edge detection). The clamp width(any direction) will change once the rotation takes place. And n becoming a z will only means a 180 deg....

 

The better thing will be to get a avi output and clamp the result. 

 

just My thought.....

0 Kudos
Message 8 of 12
(5,071 Views)

Ok, I'll try this first solution and give you a feedback as soon as possible...

If you have any other idea, don't hesitate to share them  :smileywink:

CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
0 Kudos
Message 9 of 12
(5,070 Views)

Here is what I would probably do:

 

Train a pattern for the N.  You might want to try standard pattern matching or geometric pattern matching and see which one works better.

 

For each image coming in, use pattern matching to locate the N.  Make sure you allow full rotation.  Once you determine the center of rotation, you should be able to measure the angle between the N and the center of rotation.  Each frame should give you a delta angle from the previous frame.  The formula for instantaneous speed will be: (delta/360 deg)*frame rate = rotations per second.  This won't be a really smooth value, but it should be very close to true speed.  You could filter it if you want a more average speed.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 10 of 12
(5,044 Views)