• Nenhum resultado encontrado

4.3 Definição da Arquitetura da Unidade de Controle Eletrônico – ECU

4.3.2 Interface Homem Máquina (IHM)

Na etapa de planejamento da Interface Homem-Máquina (IHM) foram assumidas algumas prioridades com relação às suas características. A primeira delas diz respeito à estrutura definida como modular, que permitisse fácil expansão à medida que novas estratégias fossem desenvolvidas. Dada a importância da comunicação com a ECU, o protocolo deve ser robusto, de forma a garantir a integridade dos dados e a visualização das variáveis em tempo real. Por se tratar de uma IHM, a Interface gráfica deve ser amigável, simples, direta e capaz de permitir expansão à medida que novas variáveis, parâmetros e mapas forem agregados ao sistema. Para atingir as características citadas, a linguagem C++ foi adotada, visto que proporciona todas as vantagens de uma linguagem orientada a objetos aliadas a um alto desempenho, sendo atualmente amplamente utilizada para o desenvolvimento de softwares profissionais.

No ambiente de desenvolvimento, a utilização de ferramentas RAD (Rapid Application Development), como o C++Builder da Borland, proporciona facilidades que aceleram o processo de desenvolvimento. Apesar dessa característica, no presente trabalho foi adotado o Visual C++ 6.0, que faz parte da plataforma de desenvolvimento Visual Studio 6.0. Todo o desenvolvimento do programa foi baseado na biblioteca wxWindows, que proporciona uma API (Application Programming Interface) simples, com extensa documentação disponível, adequada para a criação de aplicações com interface gráfica. Deste modo não foi necessário utilizar a API do windows diretamente.

A estrutura do programa foi baseada na arquitetura Documento/Visão, que é uma versão simplificada da MVC (Modelo/Visão/Controle), proporcionando a separação entre o código que gerencia os dados do programa e o código necessário para apresentá-los ao usuário. A biblioteca wxWindows implementa esta arquitetura e disponibiliza classes bases para o desenvolvimento do modelo. A estratégia de comunicação com a ECU foi baseada em uma solução Multithread, que possibilita a separação entre o código do protocolo criado e o código de interface gráfica e gerenciamento dos dados. Com estas estratégias foi possível desenvolver um programa que atende as prioridades estabelecidas. A Figura 4.16 apresenta a tela das configurações principais implementada, através da qual o usuário é capaz de alterar os parâmetros relevantes ao controle do motor, além das definições de cada sensor e sua respectiva curva de calibração.

Figura 4.16 – Tela de configurações principais da IHM.

A Figura 4.16 mostra, na parte superior, as variáveis medidas e as ações de controle adotadas. Logo abaixo se encontram os mapas e tabelas de calibração de avanço e tempo de injeção, além das tabelas de compensação em função da tensão da bateria. No canto direito da tela (Fig. 4.16) são mostrados os comandos do sistema e o seu estado atual, que permitem modificar a condição aberta/fechada das malhas de controle de lambda, marcha lenta, correção de detonação, além de iniciar e interromper o processo de aquisição de dados (DataLog).

A barra de menus permite o acesso às funções adicionais, onde a função ‘Parâmetros’ acessa as janelas de configuração de parâmetros de Ignição e Injeção (Figura 4.17), através da qual se configura o valor do tempo base (TempoInjBase [ms]) e da fase de injeção (AngInj14 e AngInj23) para cada banco de injetores, além do tempo de permanência(TempoIgnicao [ms]).

A conexão ECU/IHM pode ser interrompida, fazendo com que o SGEM passe a condição independente de operação (stand-alone), desde que os dados presentes na IHM tenham sido transferidos integralmente ao SGEM e não apresentem nenhum erro de transferência, sendo essa função também controlada e apresentada na tela da IHM.

Através da IHM é possível manipular, com o motor em funcionamento, o ângulo de ignição estabelecido no mapa de avanço de ignição ou a porcentagem relativa do tempo de injeção estabelecida no mapa de injeção. Além disto, possibilita ao usuário definir o tempo de permanência de ignição e o ângulo de injeção. Em função das definições impostas pelo usuário através da IHM, o software implementado no SGEM realiza o controle do motor, baseado nas estratégias implementadas e nos valores estabelecidos pelo usuário durante o ajuste dos mapas de referência do SGEM.

Independente do critério de otimização utilizado pelo usuário, os mapas de ajuste podem ser modificados em qualquer condição, desde que as mudanças realizadas não comprometam a integridade do motor ou ultrapassem as condições de operação dos atuadores como, por exemplo, dos tempos de injeção maiores que os estabelecidos no Item 3.4 (Revisão Bibliográfica). As definições realizadas na IHM permitem ao software do SGEM atuar nas condições de operação do motor, através do seu hardware e dos atuadores presentes no sistema.

Na condição stand-alone, o SGEM recebe os sinais provenientes dos módulos de temperatura e pressão do ar admitido (CMD), da posição da borboleta (TPS), da rotação e da posição do eixo de manivelas (CKP) e da temperatura do motor (CT) e, em função dos dados descritos nos mapas de referência, realiza o acionamento dos eletroinjetores de combustível e das bobinas de ignição, controlando o motor de acordo com sua condição de operação. O sistema de controle da mistura ar/combustível, quando habilitado, realiza a correção do tempo-base de injeção (Equação 2.18) em malha fechada, sendo realimentado pelo sinal do sensor de concentração de O2 no coletor de escapamento (HEGO).

O SGEM também é capaz de adotar os valores descritos nos mapas de referência associados ao tempo de injeção, sem a aplicação das devidas correções e das estratégias de controle em malha fechada. Essa estratégia é definida em mapas específicos que determinam os instantes em que os controladores devem ser habilitados ou desabilitados, em função da condição instantânea de operação do motor.