Sencillo algoritmo para seleccionar los puntos significativos tras un escaneo de un perfil o de una superficie
Departamento de Ingeniería de Diseño y Fabricación del Centro Politécnico Superior de la Universidad de Zaragoza;22/06/2007
- Utilizando una fresadora de CN con un palpador acoplado a su cabezal.
- Con la máquina de medir de coordenadas. El sistema es semejante al anterior pero con más precisión.
- Sustituyendo el palpador mecánico de la máquina de coordenadas por un láser [3].
- Utilizando directamente un mecanismo Láser Tracker.
En todos los casos cuando el número de puntos escaneado en muy alto conviene realizar un filtrado de los mismos para descartar aquellos que aportan menor peso para la identificación de la forma digitalizada.
Los puntos que aportan más peso son los situados en las zonas de más curvatura y los que menos los situados en las zonas de menor curvatura. En la figura 1 se muestra un perfil aerodinámico.
Seguidamente se va a describir un sencillo algoritmo para utilizar solamente los puntos más significativos o que aportan más peso al trazado de una curva, con ello, además de la limpieza del proceso de reconstrucción se va a ganar en velocidad de proceso en el sistema informático.



Consideraciones iniciales
En la figura 2 se ha dibujado una simulación de posibles puntos de escaneo realizando una variación constante en el eje cordal del perfil. Obviamente, como se analizará a continuación, no son precisos todos los puntos para definirlo con una precisión requerida.
En la figura 4 se muestran dos circunferencias, con dos aproximaciones poligonales. Cuantos más lados tiene el polígono más aproximado será éste a la circunferencia.
Se observa que en el caso de la figura 3 el paso de 0.01 es amplio para la zona próxima al borde de ataque mientras que para el resto es estrecho. Ello significa que, en un escaneado continuo, debemos utilizar un paso muy reducido. ¿Pero qué hacer con los puntos obtenidos? Seguidamente veremos que se pueden filtrar con un simple algoritmo que se puede realizar en Excel o Matlab y quedarnos con un número muy inferior de puntos que serán más fáciles de manipular en la reconstrucción de la pieza.
Principio matemático
Por otro lado, el ángulo que forman los lados del polígono está relacionado con el ángulo ≤ que forman los radios por:
Es decir, el error finalmente está relacionado con el coseno del ángulo ≤/2, el cual a su vez se puede obtener a partir del ángulo que forman las cuerdas o lados del polígono que aproximan la circunferencia.
Si ahora los lados del polígono los convertimos en vectores, figura 6, resulta que el ángulo que forman los lados esta definido por el producto escalar de los vectores:
Como se ha indicado en la figura 6, los puntos que delimitan los vectores pueden corresponder a puntos escaneados. Pues, a la vista de la figura 7, si los puntos escaneados están lo suficientemente próximos, cada tres puntos determinan una circunferencia. Así, tendremos las circunferencias definidas por los puntos (1, 2, 3), (2, 3, 4) y así sucesivamente.
De esta forma es posible preparar un algoritmo que estudie los puntos (1, 2, 3), si el coseno dado por la expresión (*) es superior a un valor podemos descartar el punto intermedio 2. Si no se descarta este punto, se pasa a verificar los puntos (2, 3, 4). En el caso de desechar el punto 2, se pueden dar varias posibilidades de continuar con el algoritmo:
a) Repetir lo anterior con los puntos (1, 3, 4) y así sucesivamente. El punto que se puede ahora desechar es el 3.
b) Realizar el algoritmo con los puntos (3, 4, 5). Siendo el objetivo desechar o no el punto 4.
Tras diversas comprobaciones, la variante que mejor resultado ha dado es la segunda. En cuyo caso se ha optado por repetir el algoritmo total hasta que no aparece ningún punto a descartar.
El algoritmo se muestra comentado en el siguiente listado de Matlab. Entre las líneas 13 y 17 el programa lee las coordenadas de los puntos escaneados. En la línea 28 se realiza el producto escalar y los módulos de los vectores con las funciones disponibles para ello en Matlab.

Realización práctica.
Para terminar, el algoritmo también se ha aplicado a un perfil escaneado de hélice de aeromodelismo. El resultado se muestra en la figura 9
Conclusiones
- En las zonas donde la curvatura es reducida prácticamente coincide el número de puntos que la define aunque aumentemos la precisión (disminución del paso) del escaneado.
- El número de puntos de definición, para una precisión de coseno dada, aumenta en la zona de más curvatura a medida que disminuimos el paso de escaneo.
- A partir de una disminución de paso de escaneo (aumento de la precisión para definir el perfil) el número de puntos converge para una precisión de coseno dada.
- El procedimiento se ha mostrado válido para un escaneo con MMC, como se vio en la figura 9
Desarrollo futuro
El algoritmo se pude utilizar para detectar imperfecciones puntuales, al detectar cambios bruscos en la curvatura. Con lo que se desecharían los puntos que están en el intervalo de cambio de dicha curvatura, figura 9
También es posible utilizar el algoritmo para obtener los puntos de mecanizado de una función conocida. Con ello no sería necesario conocer las derivadas primera y segunda de la función.
Referencias
[2] J.L. Huertas, F. Torres, F. Floren, V. Hernández. Obtaining a Program of Mechanizing of an Aerodynamic Profile Using Matlab. The International Journal of Advanced Manufacturing Technology. ¿?2005, 19:607-617
[3] F.J. Shiou, T. Pfeifer. Strategies and Processes to Measure the Dimensional Geometry of Sheet Metal Parts for Exact Laser Cutting. The International Journal of Advanced Manufacturing Technology. 2002, 19:106-116.
[4] H.W. Corley, Jay Rosenberger, Wei-Chang Yeh, T.K. Sung. The cosine simplex algorithm. The International Journal of Advanced Manufacturing Technology. 2005, 10:106-116.
[5] E.N. Jacobs. K.E. Ward, R.M. Pinkerton. The characteristics of 78 related airfoil sections form tests in the variable-density wind tunnel. Report nº 460. NACA.
[6] Solid Edge the CAD 3D of EDS.

