Você está na página 1de 45

UNIVERSIDADE LUTERANA DO BRASIL

PRÓ-REITORIA DE GRADUAÇÃO
DEPARTAMENTO DE ENGENHARIA ELÉTRICA

Natanael Fernandes de Mattos

SISTEMA DE ACIONAMENTO DOS AUXILIOS LUMINOSOS DO


AEROPORTO INTERNACIONAL SALGADO FILHO

Canoas, abril de 2014


Departamento de Engenharia Elétrica 2

AGRADECIMENTOS

A todos que colaboraram direta ou indiretamente na elaboração deste


trabalho, o meu reconhecimento.

Ao Professor Luiz Fernando Espinosa Cocian pelo estímulo, dedicação e


esforço pessoal proporcionado.

A Infraero pelas informações e oportunidade de estudo dos equipamentos.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 2
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 3

RESUMO

MATTOS, Natanael Fernandes. Sistema de Acionamento dos Auxílios do


Aeroporto Internacional Salgado Filho .

Trabalho de Conclusão da disciplina Engenharia de Processamento Digital II do


curso de Engenharia Elétrica - Departamento de Engenharia Elétrica. Universidade
Luterana do Brasil. Canoas, RS. 2013

Este trabalho tem por objetivo o desenvolvimento do software de


acionamento dos auxílios visuais luminosos do aeroporto, como os mesmos sendo
simulados através do hardware Iduino e Leds. Como o objetivo da disciplina de
Engenharia de Processamento Digital II é o desenvolvimento de Software a partir da
plataforma C++, utilizando o compilador Borland Builder C++, será testado o
mesmo através do hardware de simulação do balizamento, bem como a interface
gráfica implantada no programa desenvolvido.

Palavras chave: Balizamento, Auxílios visuais.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 3
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 4

LISTA DE FIGURAS

Figura 1 - Diagrama de Blocos ...................................................................................................................... 8


Figura 2 – Tela Inicial ..................................................................................................................................... 11
Figura 3 - Edição da Tela Inicial ................................................................................................................. 12
Figura 4 – Painel de Acionamento .............................................................................................................. 12
Figura 5 - Desenvolvimento do painel de acionamentos .................................................................... 13
Figura 6 – Login ............................................................................................................................................... 15
Figura 7 – Configuração do sistema de comunicação.......................................................................... 15
Figura 8 –Ativação do sistema de comunicação .................................................................................... 16
Figura 9 – Botões de controle ...................................................................................................................... 16
Figura 10 – Gráfico ......................................................................................................................................... 17
Figura 11 – Arquivo de log de registro ...................................................................................................... 17
Figura 12 - Fluxograma ................................................................................................................................. 18
Figura 13 – Teste de acionamento sem comunicação ......................................................................... 20
Figura 14 – Teste de acionamento com comunicação ......................................................................... 20
Figura 15 – Hardware..................................................................................................................................... 21
Figura 16 - Esquema elétrico simulador de auxílios luminosos ...................................................... 21

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 4
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 5

LISTA DE TABELAS

Tabela 1 – Cronograma .................................................................................................................................... 9


Tabela 2 – Orçamento ...................................................................................................................................... 9

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 5
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 6

LISTA DE ABREVIATURAS E SIGLAS

PPD: Pista de Pousos de Decolagens

TWY: Taxiway

SBPA: Aeroporto Internacional Salgado Filho, Porto Alegre

TWR: Torre de controle do aeroporto

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 6
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 7

SUMÁRIO

1. INTRODUÇÃO ........................................................................................................................................... 8
1.1. Objetivos ............................................................................................................................................. 8
1.2. Justificativa........................................................................................................................................ 8
1.3. Diagrama de blocos ......................................................................................................................... 8
1.4. Cronograma Previsto e Executado .............................................................................................. 9
1.5. Orçamento do Projeto ................................................................................................................... 10
2. METODOLOGIA ...................................................................................................................................... 11
2.1. Software ............................................................................................................................................ 11
2.1.1. Interfaces Gráfica ........................................................................................................................... 11
2.1.2. Documentação: Classes e Funções .......................................................................................... 13
2.1.3. Descrição da Funcionalidade do Software ............................................................................. 14
2.1.4. Fluxograma ...................................................................................................................................... 18
2.1.5. Descrição dos Testes Realizados ............................................................................................... 19
2.2. Hardware .......................................................................................................................................... 21
3. RESULTADOS E CONCLUSÕES ....................................................................................................... 22
3.1. Resultados ........................................................................................................................................ 22
3.2. Problemas Técnicos Encontrados e Soluções Implementadas ........................................ 22
3.3. Conclusões ....................................................................................................................................... 22
REFERÊNCIAS ................................................................................................................................................ 23
APÊNDICE A – CÓDIGO FONTE ............................................................................................................... 24

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 7
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 8

1. INTRODUÇÃO

Os auxílios visuais luminosos do aeroporto são parte integrante do sistema


ILS CAT I e II, que dá a orientação para a aeronave na sua aproximação com o
aeroporto. O desenvolvimento de um software supervisório tem por finalidade a
substituição dos comandos manuais existentes, bem como uma interface gráfica
mais “amigável” ao operador da Torre de Controle.

1.1. Objetivos
Criar um software supervisório que faça o controle de acionamento e
intensidade do brilho das luminárias do balizamento luminoso do aeroporto,
visando a modernidade e praticidade do sistema ao operador da Torre de Controle.

1.2. Justificativa
Necessidade de uma atualização no sistema de comandos existente, bem
como um controle através de registros digitais das operações realizadas.

1.3. Diagrama de blocos

Figura 1 - Diagrama de Blocos


Conforme apresentado na Figura 1, o projeto ficou dividido em 3 blocos com
suas subdivisões. No software foram elencadas três subdivisões vistas como as
etapas principais de sua execução:
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 8
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 9

• Controle de Usuário: Identificação do Operador da TWY, armazenagem


do nome e acesso ao painel principal;

• Habilitação de comunicação: Configuração e ativação da comunicação


serial com o hardware;

• Operação e monitoramento: Esta subdivisão representa os comandos


de controle de acendimento e brilho dos auxílios luminosos, bem
como os indicadores gráficos de funcionamento e percentual de
visibilidade;

Para caracterização do funcionamento do hardware, foram criadas duas


subdivisões:

• Leitura de comandos: Programação realizada diretamente no Iduino


para interpretação dos dados enviados pelo software e
endereçamento das saídas a serem controladas;

• Controle PWM de I/O: Variação das saídas digitais PWM do Iduino


com valores de pulsos pré-estabelecidos pelo software principal já
decodificados pelo programa embarcado no microcontrolador;

Por fim a subdivisão do hardware simulador montado para representação


do sistema ILS CAT II do SBPA:

• Acionamento do hardware simulador: Hardware montado com leds


para a representação do sistema luminoso de aproximação de
aeronaves do aeroporto.

1.4. Cronograma Previsto e Executado


O cronograma para execução deste projeto pode ser visto conforme Tabela 1

Tabela 1 – Cronograma
Item Previsto (dias) Executado (dias)
Definição do projeto 7 3
Estruturação do software 7 10
Desenvolvimento do software 30 45
Desenvolvimento do relatório 7 3
Total 51 61

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 9
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 10

1.5. Orçamento do Projeto


O projeto teve um baixo custo de implementação, tendo como referência
apenas o custo de aquisição e montagem do hardware.

Tabela 2 – Orçamento
`Quantidade Total Unitário
Item (unid) Preço Unitário (R$) (R$)
Placa Iduino Uno 1 40,00 40,00
Led Alto Brilho 5mm 5 2 10,00
Resistor 1KΩ 5 0,20 1
Desenvolvimento do
relatório 7 3
Total 51,00

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 10
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 11

2. METODOLOGIA

2.1. Software
O software desenvolvido conta com uma tela de abertura, onde é possível o
acesso a tela Painel Principal, com um visualizador do log de registros já efetuados,
bem como uma barra de menu que dá acesso a janelas descritivas dos
componentes do sistemas de balizamento do Aeroporto.

2.1.1. Interfaces Gráfica


Na tela inicial, conforme Figura 2 é possível verificar que esta conta com
informações sobre o sistema ILS, bem como a tela de
login.

Figura 2 – Tela Inicial

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 11
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 12

Na Figura 3 é possível visualizar os elementos gráficos do Borland Builder 6


ao qual foram utilizados, bem como suas respectivas classes. Estas que são nativas
do software de desenvolvimento de programas com programação orientada a
objetos.

Figura 3 - Edição da Tela Inicial


Na tela do painel de acionamento, conforme Figura 4, é onde localizam-se
todos os comandos do programa. Configuração e acionamento da porta serial,
salvamento de dados, gráfico de visibilidade e botões de acionamento dos sistemas
de balizamento.

Figura 4 – Painel de Acionamento

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 12
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 13

O desenvolvimento do painel de acionamento deu-se através da utilização


de objetos gráficos definidos no Borland Builder 6. As classes ao qual cada um
pertence estão elencadas na Figura 5.

Figura 5 - Desenvolvimento do painel de acionamentos

2.1.2. Documentação: Classes e Funções


Conforme Anexo A, as classes utilizadas são:

• vetor: Tem função criar vetores para armazenarem as informações a


respeito da intensidade de brilho, bem como retornar os valores
totais e máximos, isto divido entre minutos e horas. Os métodos
utilizados são os seguintes:

o vetor (int tam): Construtor, aloca memória para o vetor;

o void atribui(int index,int valor): Altera uma posicao do vetor;

o int conteudo(int index): Retorna conteudo de posicao do vetor;

o int maximo(void): Retorna o maior elemento do vetor;

o int primeiro(void): Ultimo índice do vetor

o ~vetor() {delete v;}: Inline function ou use delete v[];

• Tshape: Tem função de efetuar a exibição dos shapes que ilustram


cada sistema de balizamento na representação do SBPA. Os metodos
utilizados nesta classe são os seguintes:

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 13
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 14

o void __fastcall Liga_PPD(void): Habilita a exibição dos shapes


que representam as balizas da lateral da pista de pouso e
decolagem do SBPA.

o void __fastcall Liga_TWY(void): Habilita a exibição dos shapes


que representam as balizas da lateral das taxiways.

o void __fastcall Liga_Eixo_PPD(void): Habilita a exibição dos


shapes que representam as luminárias embutidas do eixo da
PPD.

o void __fastcall Liga_Eixo_TWY(void): Habilita a exibição dos


shapes que representam as luminárias embutidas do eixo das
TWY's.

o void __fastcall Liga_Zona(void): Habilita a exibição dos shapes


que representam as luminárias embutidas da zona de toque
da PPD.

o void __fastcall Desliga_PPD(void): Desabilita a exibição dos


shapes que representam as balizas da lateral da pista de
pouso e decolagem do SBPA.

o void __fastcall Desliga_TWY(void): Desabilita a exibição dos


shapes que representam as balizas da lateral das taxiways.

o void __fastcall Desliga_Eixo_PPD(void): Desabilita a exibição


dos shapes que representam as luminárias embutidas do eixo
da PPD.

o void __fastcall Desliga_Eixo_TWY(void): Desabilita a exibição


dos shapes que representam as luminárias embutidas do eixo
das TWY's.

o void __fastcall Desliga_Zona(void): Desabilita a exibição dos


shapes que representam as luminárias embutidas da zona de
toque da PPD.

2.1.3. Descrição da Funcionalidade do Software


O abrir o software o mesmo solicita a inserção do nome do operador da
TWR, para que este fique armazenado no log de registro, conforme Figura 6.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 14
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 15

Figura 6 – Login
Após isto será habilitado o ingresso no painel de controle dos sistemas de
balizamento do SBPA.

Para inicio da operação é necessário realizar a configuração do sistema de


comunicação com o hardware de controle, bem como sua ativação, conforme Figura
7Figura 8

Figura 7 – Configuração do sistema de comunicação


Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 15
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 16

Figura 8 –Ativação do sistema de comunicação


Após estabelecida a comunicação com hardware, um sinaleiro indicativo
será aceso na parte inferior do painel principal do software.

O acionamento e controle da intensidade luminosa dos balizamentos do


aeroporto ocorre através dos botões e barras deslizantes localizadas na parte
inferior do painel conforme Figura 9.

Figura 9 – Botões de controle

O software conta com um gráfico de intensidade de neblina, onde o valor


percentual é extraído do brilho do sistemas de balizamento principal da pista, que
são as luminárias de bordo de pista e as de eixo de pista. Estes dois sistemas são
críticos para pouso das aeronaves e foram adotados com os seguintes valores:

• Luzes de bordo: As luminárias dispostas nas laterais, com


espaçamento de 30 metros são utilizadas quando a intensidade de
neblina encontra-se com até 50%, ou seja, brilho 5 do sistema.

• Luzes de eixo de pista: As luminárias dispostas no eixo da pista, com


espaçamento de 15 metros são utilizadas quando a intensidade de
neblina encontra-se com 50% até 100%. Cabe ressaltar que a
verificação da visibilidade cabe ao operador da TWR, bem como a
opção de acionamento do sistema de eixo com o balizamento da PPD
com brilho inferior ao 5.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 16
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 17

O gráfico pode ser visualizado na

Figura 10.

Figura 10 – Gráfico

Por fim o software conta com um sistema de salvamento do log das ações
realizadas durante as 24 horas do dia pelo operador, exibindo a cada hora o brilho
máximo selecionado pelo operador e seu nome. O formato de saída do arquivo de
log selecionado foi o "*.xls" do pacote Office para proporcionar facilidade dos órgãos
internos e externo de controle para visualizar os mesmos, conforme Figura 11. Os
parâmetros adotados para exibição no arquivos de log foram os valores dos métodos
int conteudo(int index) de cada um dos auxílios.Para tanto a amostragem foi
realizada 4 vezes por hora, sendo o maior valor de brilho armazenado no vetor
correspondente a hora para cada auxilio luminoso.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 17
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 18

Figura 11 – Arquivo de log de registro

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 18
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 19

2.1.4. Fluxograma

Figura 12 - Fluxograma
• Login: Composto pelo campo de edição e botão de login. Quando inserido o
nome do operador habilita o botão de acesso ao painel principal.Utiliza
variáveis do tipo int para verificação da habilitação do painel principal.
• Painel de acionamento: Tela principal do software, onde ocorre a exibição
dos botões de comando, tela de monitoramento do sistema, gráfico de
visibilidade e menu para configuração e acionamento da porta de
comunicação com o harware.
• Salvar Log Registro: Botão localizado no menu, com nome "Salvar dados"
que habilita a função "Save Dialog 1". Esta função está programada para
realizar o salvamento dos dados de nível de brilho de cada um dos auxílios
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 19
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 20

luminosos num arquivo de extensão ".xls" compatível com pacote Office da


Microsoft. Dentro da programação da função foram cridas medidas de
comparação dos valores de brilho, para que sejam salvos apenas valores
válidos. Esta comparação foi realizada através do comando "if".
• Configura porta serial: No menu "Sistema" temos o botão "Configuração".
Este botão é responsável pelo acionamento da caixa de dialogo de
configuração da porta serial. Esta caixa de dialogo é nativa do objeto
TComPort1.
• Ativa Porta Serial: Através do botão "Ativar" localizado no menu "Sistema" é
realizado o estabelecimento da comunicação serial do software com o
microcontrolador Iduino. Entretanto antes de estabelecer a comunicação com
o hardware, o software realiza testes para verificar se a comunicação não
encontra-se estabelecida. Caso haja uma conexão estabelecida, a
programação associada ao botão irá desconectar a comunicação.

A partir da ativação da porta serial, o fluxograma foi dividido por auxilio


luminoso. Para fins de caracterização, foi adotado o balizamento da PPD, pois os
demais funcionam de igual forma, variando apenas o botão e a dezena da variável
que indica a intensidade luminosa escolhida.

• Aciona PPD: O Botão PPD localizado no painel principal possui uma


programação associada que realiza a verificação do estabelecimento da
comunicação serial e o controle da variável brilho. Quando acionado o botão
verifica a condição anterior do comando. Se estiver desligado, efetua o
acionamento enviando o valor 11 para a variável brilho e ativa o método
Liga_PPD da classe Tshape. Caso ligado, envia o valor 10 para a variável e
ativa o método Desliga_PPD.
• Seleção de brilho: Este bloco do fluxograma representa a barra de seleção
de brilho. Esta possui variação de 1 a 5. Cada valor deste é somado a dezena
que representa o balizamento da PPD. A variável brilho é armazenada no
vetor atribuído para monitoramento, cálculo do índice de visibilidade e
geração do log de registro.
• 1,2,3,4,5: Blocos que representam o incremento ou decremento de valor
unitário ao valor atribuído para o vetor que representa o balizamento da PPD.

2.1.5. Descrição dos Testes Realizados


A fim de testar o programa foi necessário a ligação do hardware de
simulação que será descrito no item 2.2 ao computador ao qual está instalado o
programa. Feito isto, foi iniciado o programa, efetuado login e aberto o painel
principal do programa. A partir das condições de inicialização realizadas foi
configurada e ativada a comunicação com o hardware, o que habilitou o
acionamento dos comandos dos balizamentos, conforme Figura 13Figura 14.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 20
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 21

Figura 13 – Teste de acionamento sem comunicação

Figura 14 – Teste de acionamento com comunicação

No hardware foi verificado o acionamento do led que representa o


balizamento de bordo da PPD.

Foram realizados testes de acionamento dos outros sistemas de balizamento


em diversos níveis de intensidade de brilho e verificou-se o acionamento e a
diferenciação na intensidade luminosa no hardware de simulação.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 21
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 22

2.2. Hardware
Como sistema de hardware para simulação dos sistemas de balizamento do
SBPA foi utilizado um kit Iduino UNO com leds ligados as saídas digitais PWM do
dispositivo. Para proteção das portas do microcontrolador foram utilizados
resistores de 1kΩ em série com os leds. A montagem pode ser visualizada na

Figura 15 e o esquema elétrico na Figura 16.

Figura 15 – Hardware

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 22
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 23

Figura 16 - Esquema elétrico simulador de auxílios luminosos


O hardware foi programado através do Software Arduino 1.5.4 para poder
efetuar a interpretação dos dados enviados pelo software e realizar o acionamento
dos leds. A linguagem aplicada ao hardware encontra-se anexa no Apêndice - A

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 23
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 24

3. RESULTADOS E CONCLUSÕES

3.1. Resultados
O projeto apresentou os resultados esperados, apesar de sua simplicidade,
demonstrando assim que é possível a realização do desenvolvimento de aplicações
básicas dentro do ambiente da empresa.

3.2. Problemas Técnicos Encontrados e Soluções


Implementadas
O principal problema encontrado foram as diversas opções e variantes de
construção. Principalmente para as diretivas relacionadas a operacionalidade pelo
usuário, como formas de distribuir os botões no layout para proporcionar maior
agilidade e praticidade no acionamento, bem como as diretivas de segurança, para
viabilizar o uso do programa de forma segura num ambiente de rede com inúmeras
pessoas conectadas e a possibilidade de manuseio indesejado. Como o intuito da
elaboração deste projeto era didático, bem como um teste para o desenvolvimento
de pequenas aplicações no ambiente interno, atingiu-se o objetivo.

3.3. Conclusões
Apesar de aplicação desenvolvida não ser utilizada para o real controle dos
sistemas, a elaboração do mesmo mostrou-se importante para o desenvolvimento de
futuras aplicações de projetos de pequeno porte no ambiente da empresa.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 24
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 25

REFERÊNCIAS

Barkakati, Nabajyoti - Visual C++ : guia de desenvolvimento avancado. Rio


de Janeiro : Berkeley Brasil, 1994.

Cocian, Luis Fernando Espinosa - Engenharia de processamento digital


II. Canoas : Ed. ULBRA, 2006.

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 25
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 26

APÊNDICE A – CÓDIGO FONTE

File1.h };

//-------------------------------------------------------- //--------------------------------------------------------
------------------- -------------------

vetor::vetor (int tam)

#ifndef File1H {v=new int[tam]; tamanho=tam;}

#define File1H void vetor::atribui(int index,int valor)

#include "math.h" {

//-------------------------------------------------------- if (index<tamanho && index>=inicio)


-------------------
v[index]=valor;
#endif
}
const int inicio=0;
int vetor::conteudo(int index)
class vetor{
{
private:
if (index>=tamanho || index<inicio) {exit(1);}
int* v;
return v[index];
//este e' o vetor
}
int tamanho;
int vetor::primeiro(void)
//tamanho maximo do vetor,
{ return inicio;}
public:
int vetor::ultimo(void)
vetor (int tam);
{ return tamanho-1;}
//construtor, aloca memória para o vetor.
int vetor:: maximo(void)
void atribui(int index,int valor);
{int candidato=inicio; //candidato ao maximo
//altera uma posicao do vetor
for (int i=inicio;i<tamanho;i++)
int conteudo(int index);
if (v[i]>v[candidato])
//retorna conteudo de posicao do vetor
{candidato=i;}
int maximo(void);
return v[candidato];}
//retorna o maior elemento do vetor
//--------------------------------------------------------
int primeiro(void); -------------------

//primeiro indice do vetor

int ultimo(void);

//ultimo indice do vetor

~vetor() {delete v;}

//inline function ou use delete v[];


Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 26
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 27

Unit2.h (Somente Classe Tshape) Form2->Shape16->Visible=true;

Form2->Shape17->Visible=true;

class Tshape{ Form2->Shape18->Visible=true;

private: Form2->Shape19->Visible=true;

public: Form2->Shape20->Visible=true;

void __fastcall Liga_PPD(void); Form2->Shape21->Visible=true;

void __fastcall Liga_TWY(void); Form2->Shape22->Visible=true;

void __fastcall Liga_Eixo_PPD(void); Form2->Shape23->Visible=true;

void __fastcall Liga_Eixo_TWY(void); Form2->Shape24->Visible=true;

void __fastcall Liga_Zona(void); Form2->Shape25->Visible=true;

void __fastcall Desliga_PPD(void); Form2->Shape26->Visible=true;

void __fastcall Desliga_TWY(void); Form2->Shape27->Visible=true;

void __fastcall Desliga_Eixo_PPD(void); Form2->Shape28->Visible=true;

void __fastcall Desliga_Eixo_TWY(void); Form2->Shape29->Visible=true;

void __fastcall Desliga_Zona(void); Form2->Shape30->Visible=true;

Form2->Shape31->Visible=true;

}; Form2->Shape32->Visible=true;

//-------------------------------------------------------- Form2->Shape33->Visible=true;
-------------------
Form2->Shape34->Visible=true;
extern PACKAGE TForm2 *Form2, *Shape1;
Form2->Shape35->Visible=true;
//--------------------------------------------------------
Form2->Shape36->Visible=true;
-------------------
Form2->Shape37->Visible=true;
#endif
Form2->Shape38->Visible=true;
void __fastcall Tshape::Liga_PPD(void){
Form2->Shape39->Visible=true;
Form2->Shape1->Visible=true;
Form2->Shape40->Visible=true;
Form2->Shape2->Visible=true;
Form2->Shape41->Visible=true;
Form2->Shape3->Visible=true;
Form2->Shape42->Visible=true;
Form2->Shape4->Visible=true;
Form2->Shape43->Visible=true;
Form2->Shape5->Visible=true;
Form2->Shape44->Visible=true;
Form2->Shape6->Visible=true;
Form2->Shape45->Visible=true;
Form2->Shape7->Visible=true;
}
Form2->Shape8->Visible=true;
void __fastcall Tshape::Liga_TWY(void){
Form2->Shape9->Visible=true;
Form2->Shape46->Visible=true;
Form2->Shape10->Visible=true;
Form2->Shape47->Visible=true;
Form2->Shape11->Visible=true;
Form2->Shape48->Visible=true;
Form2->Shape12->Visible=true;
Form2->Shape49->Visible=true;
Form2->Shape13->Visible=true;
Form2->Shape50->Visible=true;
Form2->Shape14->Visible=true;
Form2->Shape51->Visible=true;
Form2->Shape15->Visible=true;
Form2->Shape52->Visible=true;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 27
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 28

Form2->Shape53->Visible=true; Form2->Shape92->Visible=true;

Form2->Shape54->Visible=true; Form2->Shape93->Visible=true;

Form2->Shape55->Visible=true; Form2->Shape94->Visible=true;

Form2->Shape56->Visible=true; Form2->Shape95->Visible=true;

Form2->Shape57->Visible=true; Form2->Shape96->Visible=true;

Form2->Shape58->Visible=true; Form2->Shape97->Visible=true;

Form2->Shape59->Visible=true; Form2->Shape98->Visible=true;

Form2->Shape60->Visible=true; Form2->Shape99->Visible=true;

Form2->Shape61->Visible=true; Form2->Shape100->Visible=true;

Form2->Shape62->Visible=true; Form2->Shape101->Visible=true;

Form2->Shape63->Visible=true; Form2->Shape102->Visible=true;

Form2->Shape64->Visible=true; Form2->Shape103->Visible=true;

Form2->Shape65->Visible=true; Form2->Shape104->Visible=true;

Form2->Shape66->Visible=true; Form2->Shape105->Visible=true;

Form2->Shape67->Visible=true; Form2->Shape106->Visible=true;

Form2->Shape68->Visible=true; Form2->Shape107->Visible=true;

Form2->Shape69->Visible=true; Form2->Shape108->Visible=true;

Form2->Shape70->Visible=true; Form2->Shape109->Visible=true;

Form2->Shape71->Visible=true; Form2->Shape110->Visible=true;

Form2->Shape72->Visible=true; Form2->Shape111->Visible=true;

Form2->Shape73->Visible=true; Form2->Shape112->Visible=true;

Form2->Shape74->Visible=true; Form2->Shape113->Visible=true;

Form2->Shape75->Visible=true; Form2->Shape114->Visible=true;

Form2->Shape76->Visible=true; Form2->Shape115->Visible=true;

Form2->Shape77->Visible=true; Form2->Shape116->Visible=true;

Form2->Shape78->Visible=true; Form2->Shape117->Visible=true;

Form2->Shape79->Visible=true; Form2->Shape118->Visible=true;

Form2->Shape80->Visible=true; Form2->Shape119->Visible=true;

Form2->Shape81->Visible=true; Form2->Shape120->Visible=true;

Form2->Shape82->Visible=true; Form2->Shape121->Visible=true;

Form2->Shape83->Visible=true; }

Form2->Shape84->Visible=true; void __fastcall Tshape::Liga_Eixo_PPD(void){

Form2->Shape85->Visible=true; Form2->Shape122->Visible=true;

Form2->Shape86->Visible=true; Form2->Shape123->Visible=true;

Form2->Shape87->Visible=true; Form2->Shape124->Visible=true;

Form2->Shape88->Visible=true; Form2->Shape125->Visible=true;

Form2->Shape89->Visible=true; Form2->Shape126->Visible=true;

Form2->Shape90->Visible=true; Form2->Shape127->Visible=true;

Form2->Shape91->Visible=true; Form2->Shape128->Visible=true;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 28
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 29

Form2->Shape129->Visible=true; Form2->Shape166->Visible=true;

Form2->Shape130->Visible=true; Form2->Shape167->Visible=true;

Form2->Shape131->Visible=true; Form2->Shape168->Visible=true;

Form2->Shape132->Visible=true; Form2->Shape169->Visible=true;

Form2->Shape133->Visible=true; Form2->Shape170->Visible=true;

Form2->Shape134->Visible=true; Form2->Shape171->Visible=true;

Form2->Shape135->Visible=true; Form2->Shape172->Visible=true;

Form2->Shape136->Visible=true; Form2->Shape173->Visible=true;

Form2->Shape137->Visible=true; Form2->Shape174->Visible=true;

Form2->Shape138->Visible=true; Form2->Shape175->Visible=true;

Form2->Shape139->Visible=true; Form2->Shape176->Visible=true;

Form2->Shape140->Visible=true; Form2->Shape177->Visible=true;

Form2->Shape141->Visible=true; Form2->Shape178->Visible=true;

Form2->Shape142->Visible=true; Form2->Shape179->Visible=true;

Form2->Shape143->Visible=true; Form2->Shape180->Visible=true;

Form2->Shape144->Visible=true; Form2->Shape181->Visible=true;

Form2->Shape145->Visible=true; Form2->Shape182->Visible=true;

Form2->Shape146->Visible=true; Form2->Shape183->Visible=true;

Form2->Shape147->Visible=true; Form2->Shape184->Visible=true;

Form2->Shape148->Visible=true; Form2->Shape185->Visible=true;

Form2->Shape149->Visible=true; Form2->Shape186->Visible=true;

Form2->Shape150->Visible=true; Form2->Shape187->Visible=true;

Form2->Shape151->Visible=true; Form2->Shape188->Visible=true;

Form2->Shape152->Visible=true; Form2->Shape189->Visible=true;

Form2->Shape153->Visible=true; Form2->Shape190->Visible=true;

Form2->Shape154->Visible=true; Form2->Shape191->Visible=true;

Form2->Shape155->Visible=true; Form2->Shape192->Visible=true;

Form2->Shape156->Visible=true; Form2->Shape193->Visible=true;

Form2->Shape157->Visible=true; Form2->Shape194->Visible=true;

Form2->Shape158->Visible=true; Form2->Shape195->Visible=true;

Form2->Shape159->Visible=true; Form2->Shape196->Visible=true;

Form2->Shape160->Visible=true; Form2->Shape197->Visible=true;

Form2->Shape161->Visible=true; Form2->Shape198->Visible=true;

} Form2->Shape199->Visible=true;

void __fastcall Tshape::Liga_Eixo_TWY(void){ Form2->Shape200->Visible=true;

Form2->Shape162->Visible=true; Form2->Shape201->Visible=true;

Form2->Shape163->Visible=true; Form2->Shape202->Visible=true;

Form2->Shape164->Visible=true; Form2->Shape203->Visible=true;

Form2->Shape165->Visible=true; Form2->Shape204->Visible=true;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 29
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 30

Form2->Shape205->Visible=true; Form2->Shape244->Visible=true;

Form2->Shape206->Visible=true; Form2->Shape245->Visible=true;

Form2->Shape207->Visible=true; Form2->Shape246->Visible=true;

Form2->Shape208->Visible=true; Form2->Shape247->Visible=true;

Form2->Shape209->Visible=true; Form2->Shape248->Visible=true;

Form2->Shape210->Visible=true; Form2->Shape249->Visible=true;

Form2->Shape211->Visible=true; Form2->Shape250->Visible=true;

Form2->Shape212->Visible=true; Form2->Shape251->Visible=true;

Form2->Shape213->Visible=true; Form2->Shape252->Visible=true;

Form2->Shape214->Visible=true; Form2->Shape253->Visible=true;

Form2->Shape215->Visible=true; Form2->Shape254->Visible=true;

Form2->Shape216->Visible=true; Form2->Shape255->Visible=true;

Form2->Shape217->Visible=true; Form2->Shape256->Visible=true;

Form2->Shape218->Visible=true; Form2->Shape257->Visible=true;

Form2->Shape219->Visible=true; Form2->Shape258->Visible=true;

Form2->Shape220->Visible=true; Form2->Shape259->Visible=true;

Form2->Shape221->Visible=true; Form2->Shape260->Visible=true;

Form2->Shape222->Visible=true; Form2->Shape261->Visible=true;

Form2->Shape223->Visible=true; Form2->Shape262->Visible=true;

Form2->Shape224->Visible=true; }

Form2->Shape225->Visible=true; void __fastcall Tshape::Liga_Zona(void){

Form2->Shape226->Visible=true; Form2->Shape263->Visible=true;

Form2->Shape227->Visible=true; Form2->Shape264->Visible=true;

Form2->Shape228->Visible=true; Form2->Shape265->Visible=true;

Form2->Shape229->Visible=true; Form2->Shape266->Visible=true;

Form2->Shape230->Visible=true; Form2->Shape267->Visible=true;

Form2->Shape231->Visible=true; Form2->Shape268->Visible=true;

Form2->Shape232->Visible=true; Form2->Shape269->Visible=true;

Form2->Shape233->Visible=true; Form2->Shape270->Visible=true;

Form2->Shape234->Visible=true; Form2->Shape271->Visible=true;

Form2->Shape235->Visible=true; Form2->Shape272->Visible=true;

Form2->Shape236->Visible=true; Form2->Shape273->Visible=true;

Form2->Shape237->Visible=true; Form2->Shape274->Visible=true;

Form2->Shape238->Visible=true; Form2->Shape275->Visible=true;

Form2->Shape239->Visible=true; }

Form2->Shape240->Visible=true; void __fastcall Tshape::Desliga_PPD(void){

Form2->Shape241->Visible=true; Form2->Shape1->Visible=false;

Form2->Shape242->Visible=true; Form2->Shape2->Visible=false;

Form2->Shape243->Visible=true; Form2->Shape3->Visible=false;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 30
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 31

Form2->Shape4->Visible=false; Form2->Shape43->Visible=false;

Form2->Shape5->Visible=false; Form2->Shape44->Visible=false;

Form2->Shape6->Visible=false; Form2->Shape45->Visible=false;

Form2->Shape7->Visible=false; }

Form2->Shape8->Visible=false; void __fastcall Tshape::Desliga_TWY(void){

Form2->Shape9->Visible=false; Form2->Shape46->Visible=false;

Form2->Shape10->Visible=false; Form2->Shape47->Visible=false;

Form2->Shape11->Visible=false; Form2->Shape48->Visible=false;

Form2->Shape12->Visible=false; Form2->Shape49->Visible=false;

Form2->Shape13->Visible=false; Form2->Shape50->Visible=false;

Form2->Shape14->Visible=false; Form2->Shape51->Visible=false;

Form2->Shape15->Visible=false; Form2->Shape52->Visible=false;

Form2->Shape16->Visible=false; Form2->Shape53->Visible=false;

Form2->Shape17->Visible=false; Form2->Shape54->Visible=false;

Form2->Shape18->Visible=false; Form2->Shape55->Visible=false;

Form2->Shape19->Visible=false; Form2->Shape56->Visible=false;

Form2->Shape20->Visible=false; Form2->Shape57->Visible=false;

Form2->Shape21->Visible=false; Form2->Shape58->Visible=false;

Form2->Shape22->Visible=false; Form2->Shape59->Visible=false;

Form2->Shape23->Visible=false; Form2->Shape60->Visible=false;

Form2->Shape24->Visible=false; Form2->Shape61->Visible=false;

Form2->Shape25->Visible=false; Form2->Shape62->Visible=false;

Form2->Shape26->Visible=false; Form2->Shape63->Visible=false;

Form2->Shape27->Visible=false; Form2->Shape64->Visible=false;

Form2->Shape28->Visible=false; Form2->Shape65->Visible=false;

Form2->Shape29->Visible=false; Form2->Shape66->Visible=false;

Form2->Shape30->Visible=false; Form2->Shape67->Visible=false;

Form2->Shape31->Visible=false; Form2->Shape68->Visible=false;

Form2->Shape32->Visible=false; Form2->Shape69->Visible=false;

Form2->Shape33->Visible=false; Form2->Shape70->Visible=false;

Form2->Shape34->Visible=false; Form2->Shape71->Visible=false;

Form2->Shape35->Visible=false; Form2->Shape72->Visible=false;

Form2->Shape36->Visible=false; Form2->Shape73->Visible=false;

Form2->Shape37->Visible=false; Form2->Shape74->Visible=false;

Form2->Shape38->Visible=false; Form2->Shape75->Visible=false;

Form2->Shape39->Visible=false; Form2->Shape76->Visible=false;

Form2->Shape40->Visible=false; Form2->Shape77->Visible=false;

Form2->Shape41->Visible=false; Form2->Shape78->Visible=false;

Form2->Shape42->Visible=false; Form2->Shape79->Visible=false;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 31
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 32

Form2->Shape80->Visible=false; Form2->Shape119->Visible=false;

Form2->Shape81->Visible=false; Form2->Shape120->Visible=false;

Form2->Shape82->Visible=false; Form2->Shape121->Visible=false;

Form2->Shape83->Visible=false; }

Form2->Shape84->Visible=false; void __fastcall Tshape::Desliga_Eixo_PPD(void){

Form2->Shape85->Visible=false; Form2->Shape122->Visible=false;

Form2->Shape86->Visible=false; Form2->Shape123->Visible=false;

Form2->Shape87->Visible=false; Form2->Shape124->Visible=false;

Form2->Shape88->Visible=false; Form2->Shape125->Visible=false;

Form2->Shape89->Visible=false; Form2->Shape126->Visible=false;

Form2->Shape90->Visible=false; Form2->Shape127->Visible=false;

Form2->Shape91->Visible=false; Form2->Shape128->Visible=false;

Form2->Shape92->Visible=false; Form2->Shape129->Visible=false;

Form2->Shape93->Visible=false; Form2->Shape130->Visible=false;

Form2->Shape94->Visible=false; Form2->Shape131->Visible=false;

Form2->Shape95->Visible=false; Form2->Shape132->Visible=false;

Form2->Shape96->Visible=false; Form2->Shape133->Visible=false;

Form2->Shape97->Visible=false; Form2->Shape134->Visible=false;

Form2->Shape98->Visible=false; Form2->Shape135->Visible=false;

Form2->Shape99->Visible=false; Form2->Shape136->Visible=false;

Form2->Shape100->Visible=false; Form2->Shape137->Visible=false;

Form2->Shape101->Visible=false; Form2->Shape138->Visible=false;

Form2->Shape102->Visible=false; Form2->Shape139->Visible=false;

Form2->Shape103->Visible=false; Form2->Shape140->Visible=false;

Form2->Shape104->Visible=false; Form2->Shape141->Visible=false;

Form2->Shape105->Visible=false; Form2->Shape142->Visible=false;

Form2->Shape106->Visible=false; Form2->Shape143->Visible=false;

Form2->Shape107->Visible=false; Form2->Shape144->Visible=false;

Form2->Shape108->Visible=false; Form2->Shape145->Visible=false;

Form2->Shape109->Visible=false; Form2->Shape146->Visible=false;

Form2->Shape110->Visible=false; Form2->Shape147->Visible=false;

Form2->Shape111->Visible=false; Form2->Shape148->Visible=false;

Form2->Shape112->Visible=false; Form2->Shape149->Visible=false;

Form2->Shape113->Visible=false; Form2->Shape150->Visible=false;

Form2->Shape114->Visible=false; Form2->Shape151->Visible=false;

Form2->Shape115->Visible=false; Form2->Shape152->Visible=false;

Form2->Shape116->Visible=false; Form2->Shape153->Visible=false;

Form2->Shape117->Visible=false; Form2->Shape154->Visible=false;

Form2->Shape118->Visible=false; Form2->Shape155->Visible=false;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 32
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 33

Form2->Shape156->Visible=false; Form2->Shape193->Visible=false;

Form2->Shape157->Visible=false; Form2->Shape194->Visible=false;

Form2->Shape158->Visible=false; Form2->Shape195->Visible=false;

Form2->Shape159->Visible=false; Form2->Shape196->Visible=false;

Form2->Shape160->Visible=false; Form2->Shape197->Visible=false;

Form2->Shape161->Visible=false; Form2->Shape198->Visible=false;

} Form2->Shape199->Visible=false;

void __fastcall Tshape::Desliga_Eixo_TWY(void){ Form2->Shape200->Visible=false;

Form2->Shape162->Visible=false; Form2->Shape201->Visible=false;

Form2->Shape163->Visible=false; Form2->Shape202->Visible=false;

Form2->Shape164->Visible=false; Form2->Shape203->Visible=false;

Form2->Shape165->Visible=false; Form2->Shape204->Visible=false;

Form2->Shape166->Visible=false; Form2->Shape205->Visible=false;

Form2->Shape167->Visible=false; Form2->Shape206->Visible=false;

Form2->Shape168->Visible=false; Form2->Shape207->Visible=false;

Form2->Shape169->Visible=false; Form2->Shape208->Visible=false;

Form2->Shape170->Visible=false; Form2->Shape209->Visible=false;

Form2->Shape171->Visible=false; Form2->Shape210->Visible=false;

Form2->Shape172->Visible=false; Form2->Shape211->Visible=false;

Form2->Shape173->Visible=false; Form2->Shape212->Visible=false;

Form2->Shape174->Visible=false; Form2->Shape213->Visible=false;

Form2->Shape175->Visible=false; Form2->Shape214->Visible=false;

Form2->Shape176->Visible=false; Form2->Shape215->Visible=false;

Form2->Shape177->Visible=false; Form2->Shape216->Visible=false;

Form2->Shape178->Visible=false; Form2->Shape217->Visible=false;

Form2->Shape179->Visible=false; Form2->Shape218->Visible=false;

Form2->Shape180->Visible=false; Form2->Shape219->Visible=false;

Form2->Shape181->Visible=false; Form2->Shape220->Visible=false;

Form2->Shape182->Visible=false; Form2->Shape221->Visible=false;

Form2->Shape183->Visible=false; Form2->Shape222->Visible=false;

Form2->Shape184->Visible=false; Form2->Shape223->Visible=false;

Form2->Shape185->Visible=false; Form2->Shape224->Visible=false;

Form2->Shape186->Visible=false; Form2->Shape225->Visible=false;

Form2->Shape187->Visible=false; Form2->Shape226->Visible=false;

Form2->Shape188->Visible=false; Form2->Shape227->Visible=false;

Form2->Shape189->Visible=false; Form2->Shape228->Visible=false;

Form2->Shape190->Visible=false; Form2->Shape229->Visible=false;

Form2->Shape191->Visible=false; Form2->Shape230->Visible=false;

Form2->Shape192->Visible=false; Form2->Shape231->Visible=false;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 33
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 34

Form2->Shape232->Visible=false; Form2->Shape269->Visible=false;

Form2->Shape233->Visible=false; Form2->Shape270->Visible=false;

Form2->Shape234->Visible=false; Form2->Shape271->Visible=false;

Form2->Shape235->Visible=false; Form2->Shape272->Visible=false;

Form2->Shape236->Visible=false; Form2->Shape273->Visible=false;

Form2->Shape237->Visible=false; Form2->Shape274->Visible=false;

Form2->Shape238->Visible=false; Form2->Shape275->Visible=false;

Form2->Shape239->Visible=false;

Form2->Shape240->Visible=false;

Form2->Shape241->Visible=false;

Form2->Shape242->Visible=false;

Form2->Shape243->Visible=false;

Form2->Shape244->Visible=false;

Form2->Shape245->Visible=false;

Form2->Shape246->Visible=false;

Form2->Shape247->Visible=false;

Form2->Shape248->Visible=false;

Form2->Shape249->Visible=false;

Form2->Shape250->Visible=false;

Form2->Shape251->Visible=false;

Form2->Shape252->Visible=false;

Form2->Shape253->Visible=false;

Form2->Shape254->Visible=false;

Form2->Shape255->Visible=false;

Form2->Shape256->Visible=false;

Form2->Shape257->Visible=false;

Form2->Shape258->Visible=false;

Form2->Shape259->Visible=false;

Form2->Shape260->Visible=false;

Form2->Shape261->Visible=false;

Form2->Shape262->Visible=false;

void __fastcall Tshape::Desliga_Zona(void){

Form2->Shape263->Visible=false;

Form2->Shape264->Visible=false;

Form2->Shape265->Visible=false;

Form2->Shape266->Visible=false;

Form2->Shape267->Visible=false;

Form2->Shape268->Visible=false;
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 34
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 35

Unit1.cpp Form1->Visible=false; // Abrindo nova

//-------------------------------------------------------- }
-------------------
if(habilita==0)

{
#include <vcl.h>
ShowMessage("É necessário efetuar login.");
#pragma hdrstop
}

#include "Unit1.h"
}
#include "Unit2.h"
//--------------------------------------------------------
#include "Unit3.h" -------------------

#include "Unit4.h"

#include "File1.h"

#include <stdio.h> void __fastcall TForm1::ILSI1Click(TObject


*Sender)

{
//--------------------------------------------------------
------------------- Form1->Visible=false;

#pragma package(smart_init) Form3->Visible=true;

#pragma link "CPort" }

#pragma link "CPortCtl" //--------------------------------------------------------


-------------------
#pragma link "CCALENDR"

#pragma resource "*.dfm"


void __fastcall TForm1::ILSII1Click(TObject
TForm1 *Form1;
*Sender)
int habilita=0;
{

Form1->Visible=false;
//--------------------------------------------------------
Form4->Visible=true;
-------------------
}
__fastcall TForm1::TForm1(TComponent*
Owner) //--------------------------------------------------------
-------------------
: TForm(Owner)

{
void __fastcall
}
TForm1::IntensidadedeNeblina1Click(TObject *Sender)
//--------------------------------------------------------
{
-------------------
ShowMessage("ILS I opera até 50%, ILS II até
100% de neblina");

}
void __fastcall TForm1::Button1Click(TObject
//--------------------------------------------------------
*Sender)
-------------------
{

if(habilita==1)
void __fastcall TForm1::Button2Click(TObject
{ *Sender)

Form2->Visible=true; // Abrindo nova {


Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 35
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 36

Form2->Label32->Caption=Edit1->Text; Tshape balizas;

habilita=1;

//-------------------------------------------------------- //--------------------------------------------------------
------------------- -------------------

Unit2.cpp __fastcall TForm2::TForm2(TComponent*


Owner)
//--------------------------------------------------------
------------------- : TForm(Owner)

#include <vcl.h> {

#pragma hdrstop }

#include "Unit1.h" //--------------------------------------------------------


-------------------
#include "Unit2.h"
void __fastcall TForm2::Ativar1Click(TObject
#include "File1.h"
*Sender)
#include <stdio.h>
{

if (ComPort1->Connected)
#include <ctime>
{ComPort1->Close();

Timer3->Enabled=false;
//--------------------------------------------------------
}
-------------------
else
#pragma package(smart_init)
{ComPort1->Open();
#pragma link "CPort"
Timer3->Enabled=true;
#pragma link "CPortCtl"
}
#pragma resource "*.dfm"
}
TForm2 *Form2;
//--------------------------------------------------------
FILE *pF;
-------------------
int teste = 1;
void __fastcall
int taxi = 1; TForm2::Configurao1Click(TObject *Sender)

int eixoppd = 1; {

int taxiline =1; ComPort1->ShowSetupDialog();

int zonatoq =1; }

int hora = -1, minuto =0; //--------------------------------------------------------


-------------------
int bos =0, bppd =0, beixoppd =0, btwy=0,
btwyeixo=0, bzt=0; void __fastcall
TForm2::ComPort1AfterOpen(TObject *Sender)
int brilho=0;
{
float passo =0;
Ativar1->Caption = "Desativar";
AnsiString str;
}
vetor meu(24);
//--------------------------------------------------------
vetor vppdmin(10), veixoppdmin(10),
-------------------
vtwymin(10), vtwyeixomin(10), vztmin(10);
void __fastcall
vetor vppdhr(24),vppdeixohr(24), vtwyhr(24),
TForm2::ComPort1AfterClose(TObject *Sender)
vtwyeixohr(24), vzthr(24);
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 36
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 37

{ //--------------------------------------------------------
-------------------
Ativar1->Caption= "Ativar";

}
void __fastcall TForm2::TaxiwayClick(TObject
//--------------------------------------------------------
*Sender)
-------------------
{ //Funcionando Balizamento de taxi
void __fastcall TForm2::Button1Click(TObject
*Sender) if(ComPort1->Connected)

{ {

Form2->Visible=false; // Abrindo nova if (taxi ==2)

Form1->Visible=true; // Abrindo nova {

} BarTWY->Position =1;

BarTWY->Enabled=false;

//-------------------------------------------------------- brilho=20; //reseta barra TWY


-------------------
balizas.Desliga_TWY();
void __fastcall TForm2::PPDClick(TObject
taxi = 1;
*Sender)
}
{ //Funcionando Balizamento de taxi
else
if (ComPort1->Connected)
{
{
brilho=21;
if (teste ==2)
BarTWY->Enabled=true;
{
BarTWY->Position =1; //reseta barra TWY
BarPPD->Position=1;
balizas.Liga_TWY();
BarPPD->Enabled=false;
taxi = 2;
brilho=10;//reset barra PPD
}
balizas.Desliga_PPD();
}
teste = 1;
else

{ShowMessage("Sistema não foi ativado.");}


}
}
else
//--------------------------------------------------------
{
-------------------
brilho=11;

BarPPD->Enabled=true;
void __fastcall TForm2::Eixo_PPDClick(TObject
BarPPD->Position=1;//reset barra PPD *Sender)

balizas.Liga_PPD(); {

teste = 2; if(ComPort1->Connected)

} {

} if(eixoppd ==2)

else {

{ShowMessage("Sistema não foi ativado.");} BarEixoPPD->Position =1; // reseta


barra Eixo PPD
}

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 37
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 38

BarEixoPPD->Enabled=false; BarEixoTWY->Position =1;//Reset Bara Eixo


TWY
brilho=30;
balizas.Liga_Eixo_TWY();
balizas.Desliga_Eixo_PPD();
taxiline = 2;
eixoppd =1;
}
}
}
else
else
{
{ShowMessage("Sistema não foi ativado.");}
brilho=31;
}
BarEixoPPD->Enabled=true;

BarEixoPPD->Position =1;//reseta barra


Eixo PPD //--------------------------------------------------------
-------------------
balizas.Liga_Eixo_PPD();
//lblHora->Caption = TimeToStr(Time());
eixoppd =2;

}
//--------------------------------------------------------
}
-------------------
else

{ShowMessage("Sistema não foi ativado.");}


void __fastcall TForm2::Zona_toqClick(TObject
*Sender)

} {

//-------------------------------------------------------- if(ComPort1->Connected)
-------------------
{

if(zonatoq ==2)
void __fastcall TForm2::TaxilineClick(TObject
{
*Sender)
BarZonaT->Position= 1; // Reset barra Zona
{
de Toque
if(ComPort1->Connected)
BarZonaT->Enabled=false;
{
brilho=50;
if(taxiline ==2)
balizas.Desliga_Zona();
{
zonatoq =1;
BarEixoTWY->Position =1;//reseta barra Eixo
}
TWY
else
BarEixoTWY->Enabled=false;
{
brilho=40;
brilho=51;
balizas.Desliga_Eixo_TWY();
BarZonaT->Enabled=true;
taxiline =1;
BarZonaT->Position= 1;//Reset Barra Zona de
}
Toque
else
balizas.Liga_Zona();
{
zonatoq = 2;
brilho=41;
}
BarEixoTWY->Enabled=true;
}
Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 38
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 39

else {

{ShowMessage("Sistema não foi ativado.");}


vtwyeixohr.atribui(hora,vtwyeixomin.maximo());
}
}

if(vztmin.maximo()<=5)
//--------------------------------------------------------
------------------- {

vzthr.atribui(hora,vztmin.maximo());

void __fastcall TForm2::Timer1Timer(TObject if(hora>=24) // Retorno para condição inicial


*Sender) //Timer Hora
{
{
hora =0;
hora++;
Series1->Clear();

}
if(hora<24) // Verifica condição

{
}
Timer1->Interval = 10000; // Intervalo pre
//--------------------------------------------------------
deteminado para hora
-------------------
if(vppdmin.maximo()<=5)

{vppdhr.atribui(hora,vppdmin.maximo());
void __fastcall TForm2::Timer2Timer(TObject
//Series1->AddXY(hora,
*Sender) // Timer para amostragem dentro da hora
vppdhr.conteudo(hora),AnsiString(hora));
{
}
if(minuto<10)
else
{
{}
Timer2->Interval=1000;
if(veixoppdmin.maximo()<=5)
//Label31->Caption = AnsiString(minuto);
{
if(teste==2)// Testa se o balizamento foi
acionado
vppdeixohr.atribui(hora,veixoppdmin.maximo());
{bppd = BarPPD->Position;
}
vppdmin.atribui(minuto,bppd);}

else
else
{vppdmin.atribui(minuto,0);}
{}
if(eixoppd==2)
if(vtwymin.maximo()<=5)
{beixoppd = BarEixoPPD->Position;
{
veixoppdmin.atribui(minuto,beixoppd);}

vtwyhr.atribui(hora,vtwymin.maximo()); else

} {veixoppdmin.atribui(minuto,0);}

if(vtwyeixomin.maximo()<=5) if(taxi==2)

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 39
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 40

{btwy = BarTWY->Position; void __fastcall


TForm2::SalvarDados1Click(TObject *Sender)
vtwymin.atribui(minuto,btwy);}
{ int i=0;
else
SaveDialog1->Execute();
{vtwymin.atribui(minuto,0);}
pF = fopen(SaveDialog1-
if(taxiline==2)
>FileName.c_str(),"w");
{btwyeixo= BarEixoTWY->Position;
fprintf(pF,"Operador:%s\nHora\tPPD\t
vtwyeixomin.atribui(minuto, btwyeixo);} TWY \t Eixo PPD\t Eixo TWY\t Zona de
Toque\t\n",AnsiString(Label32->Caption));
else
for (i=0;i<24;i++)
{vtwyeixomin.atribui(minuto,0);}
{
if(zonatoq==2)
if(vppdhr.conteudo(i)>5)
{bzt= BarZonaT->Position;
{if(vtwyhr.conteudo(i)>5)
vztmin.atribui(minuto, bzt);}
{if(vppdeixohr.conteudo(i)>5)
else
{if(vtwyeixohr.conteudo(i)>5)
{vztmin.atribui(minuto,0);}
{if(vzthr.conteudo(i)>5)
minuto++;
{fprintf(pF,"%i:00\tS/Dados\t S/
Dados\t S/ Dados\t S/ Dados\t S/ Dados\t\n",i);}
}
}
if(minuto>=10)
}
{
}
//Timer2->Enabled=false;
}
minuto =0;
else{
}
fprintf(pF,"%i:00\t%i\t %i\t %i\t %i\t
} %i\t\n",i,vppdhr.conteudo(i),vtwyhr.conteudo(i),vppdeixohr.
conteudo(i),vtwyeixohr.conteudo(i),vzthr.conteudo(i));}
//--------------------------------------------------------
------------------- }

fclose(pF);

void __fastcall TForm2::FormClose(TObject //--------------------------------------------------------


*Sender, TCloseAction &Action) -------------------

Application->Terminate();

//-------------------------------------------------------- void __fastcall TForm2::BarPPDChange(TObject


------------------- *Sender)

brilho=(BarPPD->Position+10);

//-------------------------------------------------------- }
-------------------
//--------------------------------------------------------
-------------------

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 40
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 41

void __fastcall TForm2::BarTWYChange(TObject //--------------------------------------------------------


*Sender) -------------------

{ void __fastcall TForm2::Button2Click(TObject


*Sender)
brilho= (BarTWY->Position+20);
{

Chart1->Refresh();
}

//--------------------------------------------------------
------------------- }

//--------------------------------------------------------
-------------------
void __fastcall
TForm2::BarEixoPPDChange(TObject *Sender)

brilho= (BarEixoPPD->Position+30);

//--------------------------------------------------------
-------------------

void __fastcall
TForm2::BarEixoTWYChange(TObject *Sender)

brilho= (BarEixoTWY->Position+40);

//--------------------------------------------------------
-------------------

void __fastcall
TForm2::BarZonaTChange(TObject *Sender)

brilho=(BarZonaT->Position+50);

//--------------------------------------------------------
-------------------

void __fastcall TForm2::Timer3Timer(TObject


*Sender)

str=brilho;

ComPort1->WriteStr(str.c_str());

Series1-
>AddXY(hora,((vppdhr.conteudo(hora)+vppdeixohr.conteudo(
hora))*10),AnsiString(hora));

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 41
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 42

Unit3.cpp

//--------------------------------------------------------
-------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit3.h"

#include "Unit1.h"

#include "File1.h"

//--------------------------------------------------------
-------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm3 *Form3;

//--------------------------------------------------------
-------------------

__fastcall TForm3::TForm3(TComponent*
Owner)

: TForm(Owner)

//--------------------------------------------------------
-------------------

void __fastcall TForm3::Button1Click(TObject


*Sender)

Form3->Visible=false;

Form1->Visible=true;

//--------------------------------------------------------
-------------------

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 42
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 43

Unit4.cpp //--------------------------------------------------------
-------------------
#pragma package(smart_init)

#pragma resource "*.dfm"


void __fastcall TForm4::Button1Click(TObject
TForm4 *Form4;
*Sender)
//--------------------------------------------------------
{
-------------------
Form4->Visible=false;
__fastcall TForm4::TForm4(TComponent*
Owner) Form1->Visible=true;

: TForm(Owner) }

{ //--------------------------------------------------------
-------------------
}

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 43
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 44

controle_brilho_serial_v2.ino (Linguagem aplicada ao


microcontrolador IDUINO UNO)

int PPD=11, TWY=10, EXPPD=9, EXTWY=6, ZT=5;

int v=0;

int seletor=0;

int brilho=0;

void setup(){

Serial.begin(9600);

pinMode(PPD, OUTPUT);

pinMode(TWY, OUTPUT);

pinMode(EXPPD, OUTPUT);

pinMode(EXTWY, OUTPUT);

pinMode(ZT, OUTPUT);

void loop(){

while (Serial.available() > 0){

v = Serial.parseInt();

seletor= v/10;

if(seletor==1)

brilho=((v-10)*51);

analogWrite(PPD, brilho);

if(seletor==2)

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 44
Universidade Luterana do Brasil
Departamento de Engenharia Elétrica 45

brilho=((v-20)*51);

analogWrite(TWY, brilho);

if(seletor==3)

brilho=((v-30)*51);

analogWrite(EXPPD, brilho);

if(seletor==4)

brilho=((v-40)*51);

analogWrite(EXTWY, brilho);

if(seletor==5)

brilho=((v-50)*51);

analogWrite(ZT, brilho);

Natanael Fernandes de Mattos – Sistema de acionamento dos auxílios luminosos do Aeroporto Internacional
Salgado Filho 45
Universidade Luterana do Brasil

Você também pode gostar