Mudanças entre as edições de "Equipe-3"
(39 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
Linha 4: | Linha 4: | ||
*Alline | *Alline | ||
*Cristian Ritter | *Cristian Ritter | ||
+ | *Evander | ||
=Descrição do Trabalho= | =Descrição do Trabalho= | ||
+ | |||
+ | Aplicativo desenvolvido em plataforma C integrado a circuito de sensores e de controle externos para estações refrigeradoras de ar. O sistema gerenciará os equipamentos, ligando e desligando de acordo com as configurações programadas no sistema. | ||
+ | |||
+ | O sistema permitirá por meio de sensores a monitoração e o controle da temperatura de uma (ou até um limite de 10) salas. Permitirá também a programação (individualmente por sala) de horários de funcionamento automatizado do sistema. | ||
+ | |||
+ | ==Definições basicas do sistema== | ||
+ | |||
+ | === Configurações do sistema === | ||
+ | |||
+ | - Sala ID; | ||
+ | |||
+ | - Descrição da sala (somente texto descritivo) | ||
+ | |||
+ | - ID do módulo de controle do refrigerador | ||
+ | |||
+ | - Setpoints de temperatura máximo e mínimo que serão monitorados e controlados pelo gerenciador (individualizados por sala. | ||
+ | |||
+ | - Horários para ligar e desligar o sistema (individualizados por sala). | ||
+ | |||
+ | |||
+ | === Funcionalidades === | ||
+ | |||
+ | - Visualização das salas cadastradas; | ||
+ | |||
+ | - Controle remoto das salas em três modalidades: LIGADO, DESLIGADO ou AUTOMÁTICO (que opera conforme configuração de setpoint e programação de horário). | ||
+ | |||
+ | - Configuração das salas: | ||
+ | |||
+ | -> inserir sala; | ||
+ | |||
+ | -> remover sala; | ||
+ | |||
+ | -> editar dados de uma sala; | ||
+ | |||
+ | -> reinicializar todas as configurações apagando o arquivo de dados; | ||
+ | |||
+ | - Log completo composto de: | ||
+ | |||
+ | -> Horário dos eventos de POWER ON e POWER OFF dos equipamentos; | ||
+ | |||
+ | -> Registros da leitura de temperatura das salas realizados a cada evento e em certos intervalos de tempo pré-definidos; | ||
+ | |||
+ | -> Registro do modo de operação (automático ou manual) na ocorrência dos eventos; | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Obs: Todas as configurações ficaram armazenadas no arquivo salas.cfg na pasta em que o aplicativo estiver rodando. | ||
+ | |||
+ | Obs2: O log fica registrado no arquivo 'arquivo.log', e será visualizado por um editor do sistema operacional startado pelo próprio gerenciador. | ||
+ | |||
+ | =Cronograma de atividades desenvolvidas:= | ||
+ | |||
+ | ==Avaliação de modelos de aplicativos== | ||
+ | |||
+ | Optamos por um aplicativo único que faça tanto a gerência quanto a configuração do sistema, sendo internamente independente no entanto integrado em um único executável. A execução será feita com a opção de configuração. | ||
+ | |||
+ | Ex: | ||
+ | |||
+ | root@linux: ./sistema //roda o aplicativo no modo operacional | ||
+ | |||
+ | root@linux: ./sistema /config //roda o aplicativo no modo configuração | ||
+ | |||
+ | Apesar destas opções, o sistema permitirá a navegação entre estes dois modos pelo menu interno. | ||
+ | |||
+ | |||
+ | ==Desenvolver interface do aplicativo== | ||
+ | |||
+ | Foi desenvolvida uma interface simples e amigável que permite a monitoração do funcionamento do sistema, execução de comandos operacionais simples e a alteração de configurações com facilidade mesmo em uma interface de modo texto. | ||
+ | |||
+ | |||
+ | ==Desenvolver sistemas logicos relacionados ao arquivo de configuração== | ||
+ | |||
+ | -Foram desenvolvidas subrotinas que contemplam as operações de visualização da configuração das salas, adição de novas configurações, e também remoção de salas. | ||
+ | -Foram desenvolvidas subrotinas que comtemplam rotinas operacionais como atualização do status do sistema e apresentam na interface. | ||
+ | -Estão sendo desenvolvidas as funções que criam e adicionam dados ao log. | ||
+ | |||
+ | |||
+ | ==Integração das subrotinas no código principal== | ||
+ | |||
+ | Ao passo que são desenvolvidas, as funções estão sendo integradas no aplicativo de modo a deixar a estrutura de gerencia de configurações semi-finalizada; | ||
+ | Próximos passos incluem a programação relacionada a sensores e integração com dispositivos de hardware, conversores A/D etc. | ||
+ | |||
+ | |||
+ | ==Adição de funcionalidades especiais== | ||
+ | |||
+ | [ATUALIZADO 26/11/14] Foi implementada funcionalidade que permite a atualização do status de sistema simultaneamente com uma entrada de seleção de menu. | ||
+ | |||
+ | [Atualizado 26/11/14] Foi implementado um sistema de liga-desliga com base em horários programáveis; | ||
+ | |||
+ | Verificando viabilidade de programar o sistema com horário de operação, com hora para ligar e desligar, discutindo necessidade de programar multiplos horários. (atualização -> adicionados dados de horário para ligar e desligar ao código-fonte); | ||
+ | |||
+ | =Atividades delegadas= | ||
+ | A divisão primária das tarefas ficou assim fracionada: | ||
+ | |||
+ | As integrantes da equipe Andressa e Alline priorizarão a elaboração dos códigos de funções especificas solicitadas de acordo com a necessidade e atualização da WiKi com o andamento do projeto. | ||
+ | |||
+ | Os integrantes Evander e Cristian irão trabalhar em assuntos relacionados a interface e criação do código principal, encaminhando para a equipe de desenvolvimento (Andressa / Alline) as requisições de funções a serem utiizadas de acordo com a necessidade, além de executar testes no código em busca de erros. | ||
+ | |||
+ | Questões alheias ao que está estabelecido acima, serão resolvidas pelo grupo, ou delegadas conforme a necessidade. | ||
+ | |||
+ | Abaixo seguem algumas tarefas que serão (ou foram) desenvolvidas no decorrer da timeline de desenvolvimento do projeto pelas equipes: | ||
+ | |||
+ | ==Andreza e Alline== | ||
+ | |||
+ | Implementar o codigo para as funções de: | ||
+ | |||
+ | -criação do arquivo de log; | ||
+ | |||
+ | -reinicialização do arquivo de log (reset) | ||
+ | |||
+ | Conforme a descrição de modelo abaixo... | ||
+ | |||
+ | [[Arquivo:modelo_log.jpg]] | ||
+ | |||
+ | |||
+ | Usaremos como base o cabeçalho de funções abaixo: | ||
+ | |||
+ | log_add(char sala_id, int evento, int modo_operacao, int temp){ // evento(0->desl 1->liga) modo_operacao(0->manual 1->auto) | ||
+ | |||
+ | //programacao.... | ||
+ | |||
+ | } | ||
+ | reinicializar_log(){ | ||
+ | |||
+ | //programacao.... | ||
+ | |||
+ | } | ||
+ | |||
+ | ==Cristian / Evander== | ||
+ | |||
+ | -Teste da interface do programa; | ||
+ | |||
+ | -Ajustes na interface para correção de erros encontrados; | ||
+ | |||
+ | -Elaborar tratamento de entradas no código para evitar que dados fora do range operacional sejam inseridos durante a configuração; | ||
+ | |||
+ | Em princípio, a interface de configuração ficou assim definida: | ||
+ | |||
+ | ╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ | ||
+ | ║ ║ | ||
+ | ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ | ||
+ | ║ UTILITARIO DE CONFIGURAÇÃO ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ Digite o numero da opção referente a tarefa que você deseja realizar: ║ | ||
+ | ║ ║ | ||
+ | ║ 1 - Visualizar salas cadastradas ║ | ||
+ | ║ 2 - Adicionar sala ║ | ||
+ | ║ 3 - Editar sala ║ | ||
+ | ║ 4 - Remover sala ║ | ||
+ | ║ 5 - Remover todas as salas e configurações atuais ║ | ||
+ | ║ 6 - Alterar para modo operacional ║ | ||
+ | ║ 7 - Fechar o aplicativo ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ | ||
+ | ║ ║ | ||
+ | ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ | ||
+ | ║ SALAS CADASTRADAS NO SISTEMA ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ Sala_ID | Descrição | Temp_máx | Temp_min | Sensor ID | Funcionamento ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ | ||
+ | |||
+ | |||
+ | Pressione ENTER para continuar | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | ╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ | ||
+ | ║ ║ | ||
+ | ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ | ||
+ | ║ SALAS CADASTRADAS NO SISTEMA ║ | ||
+ | ║ ║ | ||
+ | ║ Digite o ID da sala que deseja editar ou 'cancelar': Sala02 ║ | ||
+ | ║ ║ | ||
+ | ║ O que você deseja alterar? 1-Descrição | 2-Temp_max | 3-Temp_min | 4-Sensor_ID: 5-Hora ON 6-Hora OFF 5 ║ | ||
+ | ║ ║ | ||
+ | ║ Sala_ID | Descrição | Temp_máx | Temp_min | Sensor ID | Funcionamento ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ Sala02 | Sala_dois | 25 | 22 | 6b | 07:30 - 11:30 ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ | ||
+ | |||
+ | ---- | ||
+ | ╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ | ||
+ | ║ ║ | ||
+ | ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ | ||
+ | ║ MODO OPERACIONAL ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ Digite o numero da opção referente a tarefa que você deseja realizar: ║ | ||
+ | ║ ║ | ||
+ | ║ 1 - Visualizar status atual do sistema ║ | ||
+ | ║ 2 - Visualizar registro de log ║ | ||
+ | ║ 3 - Reinicializar registro de log (todos os registros serão perdidos) ║ | ||
+ | ║ 4 - Ir para modo de configuração ║ | ||
+ | ║ 5 - Encerrar a execução e sair ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ║ ║ | ||
+ | ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ | ||
+ | *Verificar possibilidade de aprimoramento na interface de Modo operacional | ||
+ | |||
+ | --Permitir a visualização em tempo real de status, enquanto aguarda o pressionamento de alguma tecla de seleção de menu (?) |
Edição atual tal como às 16h19min de 26 de novembro de 2014
Integrantes
- Andreza
- Alline
- Cristian Ritter
- Evander
Descrição do Trabalho
Aplicativo desenvolvido em plataforma C integrado a circuito de sensores e de controle externos para estações refrigeradoras de ar. O sistema gerenciará os equipamentos, ligando e desligando de acordo com as configurações programadas no sistema.
O sistema permitirá por meio de sensores a monitoração e o controle da temperatura de uma (ou até um limite de 10) salas. Permitirá também a programação (individualmente por sala) de horários de funcionamento automatizado do sistema.
Definições basicas do sistema
Configurações do sistema
- Sala ID;
- Descrição da sala (somente texto descritivo)
- ID do módulo de controle do refrigerador
- Setpoints de temperatura máximo e mínimo que serão monitorados e controlados pelo gerenciador (individualizados por sala.
- Horários para ligar e desligar o sistema (individualizados por sala).
Funcionalidades
- Visualização das salas cadastradas;
- Controle remoto das salas em três modalidades: LIGADO, DESLIGADO ou AUTOMÁTICO (que opera conforme configuração de setpoint e programação de horário).
- Configuração das salas:
-> inserir sala;
-> remover sala;
-> editar dados de uma sala;
-> reinicializar todas as configurações apagando o arquivo de dados;
- Log completo composto de:
-> Horário dos eventos de POWER ON e POWER OFF dos equipamentos;
-> Registros da leitura de temperatura das salas realizados a cada evento e em certos intervalos de tempo pré-definidos;
-> Registro do modo de operação (automático ou manual) na ocorrência dos eventos;
Obs: Todas as configurações ficaram armazenadas no arquivo salas.cfg na pasta em que o aplicativo estiver rodando.
Obs2: O log fica registrado no arquivo 'arquivo.log', e será visualizado por um editor do sistema operacional startado pelo próprio gerenciador.
Cronograma de atividades desenvolvidas:
Avaliação de modelos de aplicativos
Optamos por um aplicativo único que faça tanto a gerência quanto a configuração do sistema, sendo internamente independente no entanto integrado em um único executável. A execução será feita com a opção de configuração.
Ex:
root@linux: ./sistema //roda o aplicativo no modo operacional
root@linux: ./sistema /config //roda o aplicativo no modo configuração
Apesar destas opções, o sistema permitirá a navegação entre estes dois modos pelo menu interno.
Desenvolver interface do aplicativo
Foi desenvolvida uma interface simples e amigável que permite a monitoração do funcionamento do sistema, execução de comandos operacionais simples e a alteração de configurações com facilidade mesmo em uma interface de modo texto.
Desenvolver sistemas logicos relacionados ao arquivo de configuração
-Foram desenvolvidas subrotinas que contemplam as operações de visualização da configuração das salas, adição de novas configurações, e também remoção de salas. -Foram desenvolvidas subrotinas que comtemplam rotinas operacionais como atualização do status do sistema e apresentam na interface. -Estão sendo desenvolvidas as funções que criam e adicionam dados ao log.
Integração das subrotinas no código principal
Ao passo que são desenvolvidas, as funções estão sendo integradas no aplicativo de modo a deixar a estrutura de gerencia de configurações semi-finalizada; Próximos passos incluem a programação relacionada a sensores e integração com dispositivos de hardware, conversores A/D etc.
Adição de funcionalidades especiais
[ATUALIZADO 26/11/14] Foi implementada funcionalidade que permite a atualização do status de sistema simultaneamente com uma entrada de seleção de menu.
[Atualizado 26/11/14] Foi implementado um sistema de liga-desliga com base em horários programáveis;
Verificando viabilidade de programar o sistema com horário de operação, com hora para ligar e desligar, discutindo necessidade de programar multiplos horários. (atualização -> adicionados dados de horário para ligar e desligar ao código-fonte);
Atividades delegadas
A divisão primária das tarefas ficou assim fracionada:
As integrantes da equipe Andressa e Alline priorizarão a elaboração dos códigos de funções especificas solicitadas de acordo com a necessidade e atualização da WiKi com o andamento do projeto.
Os integrantes Evander e Cristian irão trabalhar em assuntos relacionados a interface e criação do código principal, encaminhando para a equipe de desenvolvimento (Andressa / Alline) as requisições de funções a serem utiizadas de acordo com a necessidade, além de executar testes no código em busca de erros.
Questões alheias ao que está estabelecido acima, serão resolvidas pelo grupo, ou delegadas conforme a necessidade.
Abaixo seguem algumas tarefas que serão (ou foram) desenvolvidas no decorrer da timeline de desenvolvimento do projeto pelas equipes:
Andreza e Alline
Implementar o codigo para as funções de:
-criação do arquivo de log;
-reinicialização do arquivo de log (reset)
Conforme a descrição de modelo abaixo...
Usaremos como base o cabeçalho de funções abaixo:
log_add(char sala_id, int evento, int modo_operacao, int temp){ // evento(0->desl 1->liga) modo_operacao(0->manual 1->auto)
//programacao....
} reinicializar_log(){
//programacao....
}
Cristian / Evander
-Teste da interface do programa;
-Ajustes na interface para correção de erros encontrados;
-Elaborar tratamento de entradas no código para evitar que dados fora do range operacional sejam inseridos durante a configuração;
Em princípio, a interface de configuração ficou assim definida:
╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ ║ ║ ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ ║ UTILITARIO DE CONFIGURAÇÃO ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ Digite o numero da opção referente a tarefa que você deseja realizar: ║ ║ ║ ║ 1 - Visualizar salas cadastradas ║ ║ 2 - Adicionar sala ║ ║ 3 - Editar sala ║ ║ 4 - Remover sala ║ ║ 5 - Remover todas as salas e configurações atuais ║ ║ 6 - Alterar para modo operacional ║ ║ 7 - Fechar o aplicativo ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ ║ ║ ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ ║ SALAS CADASTRADAS NO SISTEMA ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ Sala_ID | Descrição | Temp_máx | Temp_min | Sensor ID | Funcionamento ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
Pressione ENTER para continuar
╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ ║ ║ ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ ║ SALAS CADASTRADAS NO SISTEMA ║ ║ ║ ║ Digite o ID da sala que deseja editar ou 'cancelar': Sala02 ║ ║ ║ ║ O que você deseja alterar? 1-Descrição | 2-Temp_max | 3-Temp_min | 4-Sensor_ID: 5-Hora ON 6-Hora OFF 5 ║ ║ ║ ║ Sala_ID | Descrição | Temp_máx | Temp_min | Sensor ID | Funcionamento ║ ║ ║ ║ ║ ║ Sala02 | Sala_dois | 25 | 22 | 6b | 07:30 - 11:30 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
╔════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ ║ ║ ║ SISTEMA DE GERENCIAMENTO DE REFRIGERAÇÃO ║ ║ MODO OPERACIONAL ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ Digite o numero da opção referente a tarefa que você deseja realizar: ║ ║ ║ ║ 1 - Visualizar status atual do sistema ║ ║ 2 - Visualizar registro de log ║ ║ 3 - Reinicializar registro de log (todos os registros serão perdidos) ║ ║ 4 - Ir para modo de configuração ║ ║ 5 - Encerrar a execução e sair ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ╚════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
- Verificar possibilidade de aprimoramento na interface de Modo operacional
--Permitir a visualização em tempo real de status, enquanto aguarda o pressionamento de alguma tecla de seleção de menu (?)