Course: PMR3402 - Sistemas Embarcados (2018)
PMR3402 - Sistemas Embarcados (2018)
Máquinas de Ciclo
Neste módulo, vamos trabalhar com o design e implementação de máquinas de ciclo. Como diz o nome, este tipo de sistema opera em ciclo. São exemplos: vending machine, alarme eletrõnico, portões automáticos, semáforos, máquinas de café tipo nesspresso, etc.
Para tanto, vamos desenvolver dois projetos. Em sala, vamos trabalhar no design de um alarme residencial. Em casa, individualmente, vocês vão trabalhar no design e implementação de uma vending machine.
A metodologia de design será baseada em:
1.Especificação de requisitos, com uso do Diagrama de Casos de Uso.
2.Detalhamento do comportamento com uso de Diagramas de Maquinas de Estado.
3.Concepção da implementação, com Diagramas de Componentes.
4.Análise da implementação e timing, com Diagramas de Sequência.
Em cada semana, dois alunos serão chamados a apresentar a evolução do projeto da Vending Machine, para discussão com a classe. Além disso, todos deverão realizar a entrega da etapa do projeto.
UML:slides File
Implementação inicial da Vending Machine Assignment
Vending Machine: Casos de Uso Assignment
Vending Machine: Diagrama de Máquina de Estados Assignment
Vending Machine: Diagrama de Componentes Assignment
Vending Machine: Diagramas de Sequência Assignment
Vending Machine: implementação e relatório final Assignment
Modelo de codigo para Maquina de Estados File
Familiarização com LPC
Neste tópico, serão desenvolvidas atividades voltadas à familiarização com o LPC.
Visite o site do FreeRTOS (www.freertos.org).
A documentação de referência está em:
Barramento de conexões do LPC File
Workspace LPC Xpresso File
FreeRTOS File
Implementação da Vending Machine no LPC Assignment
Exemplos de provas.
Exemplo de prova File
+1 exemplo de prova File
PI7::Projeto Integrado do 7o. Semestre
Apresentação do projeto File
LPC+FreeRTOS File
Arquitetura de software para o PI7 File
LPC como controlador de trajetória File
PIC como controlador PID File
Workspace para PIC File
Comunicação PC-LPC File
Protocolo MODBUS File
Workspace para PC (Modbus+LinguagemG) File
Workspace PIC File
Casos de uso para o PI7 Assignment
Diagramas de componente para o PI7 Assignment
Comunicação PC-LPC Assignment
Comunicação PC-LPC parte 2: integração total Assignment
Comunicacação LPC-PIC Assignment
Interpretador de Linguagem G Assignment
Relatório final Assignment
Desta vez, sua missão é projetar uma máquina eficiente, energética e operacionalmente, para fritar batata frita em lanchonetes. A máquina terá 4 panelas de fritura, aonde ficará o óleo. Em cada panela, capacidade para até 2 cestinhas, cada uma com capacidade para uma porção de batatas fritas. Por simplicidade, haverá apenas um tamanho de porção. Cada cestinha será acionada por um mecanismo independente, que mergulhará a cestinha no óleo, quando este estiver na temperatura correta. E suspenderá a cestinha, quando o tempo de fritura estiver correto. A colocação e retirada das batatas (crua e frita) será feita manualmente, pelo operador, e portanto está fora da descrição do sistema.
O sistema deverá permitir configurar a temperatura do óleo, tempo de fritura e o tempo de inatividade, em que o sistema de aquecimento de óleo para uma determinada panela será desativado, para economia de energia.
O sistema conterá:
-um display de 1 linha x 20 caracteres, para a configuração e monitoração (ver a seguir)
-um botão de fritura para cada mecanismo de cestinha, para iniciar o ciclo (pode ser necessário esperar o óleo aquecer)
-dois botões, UP & DOWN, para selecionar a opção de configuração (temperatura, tempo de fritura, tempo de inatividade)
-dois botões, PLUS & MINUS, para variar o parâmetro sendo configurado
O sistema terá o modo automático, no qual os botões de fritura estão ativos e os demais botões, inativos. E o modo de configuração, que será acionado através de uma chave física, que desativará os botões de fritura e ativará os botões de configuração. No modo automático, o display mostrará a temperatura em cada panela, alternadamente. No modo de configuração, o display mostrará o parâmetro sendo configurado e o valor atual do parâmetro.
(0,5)a.Lista de requisitos do sistema
(1,0)b.Diagrama de casos de uso
(1,0)c.Diagrama de estados
(1,0)d.Descrição de cada ação a ser executada em cada transição de estados
(1,0)e.Diagrama de componentes, com identificação de cada interface de cada componente
(1,0)f.Descrição de cada função de cada componente, mostrando parâmetros de entrada e valores de retorno, bem como uma descrição sucinta do comportamento da função (pseudo-código por exemplo)
(4,5)g.Codificação de um simulador do sistema, usando uma tecla para representar cada botão e mostrando na tela o que seria mostrado no display. Esta codificação deverá seguir os princípios de implementação de máquinas de estado, discutidos na disciplina. Devem ser entregues todo o código utilizado e printscreens do funcionamento.