El archivo de un diseño de PCB puede entenderse como una base de datos que contiene el conjunto de objetos que lo forman junto con sus propiedades. Editar este conjunto de objetos de forma eficaz acelera la labor del diseñador.
El diseño de PCB contiene múltiples tipos de objetos: pistas, vías, polígonos, componentes… Cada uno de estos tipos de objetos posee un conjunto de propiedades. Por ejemplo, las propiedades de una pista son: anchura, capa, coordenada de inicio (X,Y), coordenada de fin (X,Y)... En Altium Designer, las propiedades son accesibles a través del panel Properties. Tras seleccionar un objeto, sus propiedades pueden ser modificadas. También se pueden seleccionar varios objetos y modificar sus propiedades al mismo tiempo.
Tras seleccionar una o varias pistas se puede acceder a sus propiedades y modificarlas. Del mismo modo se pueden editar otros objetos.
Si el conjunto de objetos a editar es numeroso o no se conoce la posición exacta de estos objetos en el diseño, la selección de todos ellos uno por uno es lenta y laboriosa. La herramienta Query Language agiliza esta operación.
El Query Language es una potente herramienta integrada en Altium Designer. Su aspecto es similar a un lenguaje de programación, pero su funcionalidad se asemeja a un motor de búsqueda. Está formado por declaraciones y operadores. Devuelve el conjunto de objetos que cumplan con las condiciones definidas por una expresión.
La declaración "Istrack" devuelve el conjunto de objetos de tipo track, es decir, todas las pistas. Del mismo modo existe "Isvia" o "Ispad". Se puede refinar el conjunto con "Ontoplayer", por ejemplo, "Istrack AND Ontoplayer" que devuelve el conjunto de pistas en la capa top. AND es un operador booleano. Otros operadores válidos son OR o NOT. Las declaraciones para acceder a las propiedades suelen tomar el nombre de la propiedad, de modo que para acceder a la propiedad anchura se usa "Width". Por ejemplo, "Width = 0.2". Esta expresión no tiene unidades y el resultado es impreciso. El prefijo ASMM define la expresión que precede en milímetros. La expresión "Istrack AND ASMM(Width = 0.2)" devuelve el conjunto de pistas con una anchura de 0.2mm.
Usado junto el panel PCB filter, el Query Language permite seleccionar el conjunto definido por la expresión. Para ello la opción Select del panel PCB Filter debe ser activada. Por ejemplo, para ensanchar todas las pistas conectadas a la net "PCIE_DC_3V3" en la capa "5_int4_(sign)" mayores a 0.5mm en anchura, se puede utilizar la expresión:
Istrack and OnLayer('5_int4_(sign)') AND ASMM (Width > 0.5) and InNet('PCIE_DC_3V3')
Una vez aplicada la expresión el conjunto de objetos que cumplen tal condición será seleccionado y sus propiedades serán accesibles a través del menú Properties.
El Query Language permite encontrar y editar objetos rápidamente. Esto asegura consistencia en el diseño.
Para familiarizarte con el lenguaje y conocer los diferentes comandos, visita la documentación del lenguaje en este link.
El Query Language permite encontrar cualquier conjunto de objetos en un diseño. Una vez encontrado, el conjunto puede ser seleccionado, centrado en la pantalla o resaltado. Prueba las diferentes opciones que ofrece el panel PCB Filter.
Opciones del panel PCB Filter
El Query Language también puede ser usado en el editor de reglas. Permite aplicar una regla a un conjunto específico de objetos.
Esta regla de clearance afecta a todos los objetos excepto si son pads del footprint “TSOP65P490X110-8N” o si son pistas de la net “NetC183_1” y tienen una anchura de 0.3mm
El menú secundario que se obtiene tras seleccionar un objeto ofrece la opción “Find similar objects”. Esta opción permite encontrar objetos que comparten alguna de las características del objeto seleccionado. Si activamos la opción “Create Expression” tras ejecutar la búsqueda, Altium ofrece la expresión usada a través del menú “PCB FIlter”. Este es un buen punto de partida para crear la expresión necesaria y familiarizarse con nuevas declaraciones del Query Language.
Usando la opción “Find Similar Objects” se obtiene la expresión (ObjectKind = 'Pad') And (AsMM(HoleDiameter) = 0.7) para seleccionar todos los pads con un diámetro igual a 0.7mm
El Query Language también puede usarse en editor de esquemas. Por ejemplo, se puede encontrar todas las instancias del componente CMP-0697-00001-2 con la expresión:
(ObjectKind = 'Part') And (DesignItemID = 'CMP-0697-00001-2')
En este caso, el panel usado es SCH filter y permite ejecutar la búsqueda en una página del esquema o en todo el proyecto.
Opciones del panel PCB Filter.
Una vez encontrada la expresión necesaria se puede guardar como una expresión favorita y usar en el futuro.
Las expresiones usadas frecuentemente pueden añadirse a Favoritos.
A medida que la complejidad aumenta, es necesario un manejo avanzado de la herramienta para crear un diseño satisfactorio. El Query Language es una herramienta avanzada de Altium Designer que mejorará la calidad de tus diseños.
¿Cuál sería la expresión necesaria para encontrar las vías pasantes (vías Through Hole) con un agujero menor de 0.5mm? Deja la respuesta en los comentarios. ¿Necesitas ayuda con un expresión en particular? Deja un comentario o contáctame.