obrigado pela resposta Gil, mas será que o mach 3 nao tem uma função para acionar este relé?Jr.
Como eu disse, há diversas maneiras. Cabe a você escolher a que mais lhe atende. Quando você disse que gostaria de aproveitar um programa em código G já existente e sem modificações, entendi que tal programa previa a movimentação do eixo Z. Além disso, você mencionou que a válvula solenóide deveria ser ligada/desligada ao final da movimentação do eixo Z, ou seja, após pulsos de movimentação do motor do eixo Z terem sido gerados.
Uma outra solução, entre as diversas, e ainda mais simples, seria simplesmente usar o sinal de direção do eixo Z. Ao descer liga a solenóide (abre) ao subir, desliga. Isso, de certo modo, equivale a um CNC 2.5 D, onde o 3º eixo motriz não se move ao longo de uma distância, mas, apenas pode assumir dois estados, duas posições ou duas distâncias (para cima ou para baixo, liga/desliga, ...). Como não há motor associado ao eixo Z, apenas o sinal de direção é utilizado no comando da saída que vai acionar alguma coisa (solenóide, relé, ...).