SEM0544 Desenvolvimento de Produtos Mecatrônicos
description
Transcript of SEM0544 Desenvolvimento de Produtos Mecatrônicos
SEM0544Desenvolvimento de Produtos
Mecatrônicos
Glauco CaurinDalton Matsuo
Jean MinarJorge Felix Herrera
Jose Martins Jr.Kelen Teixeira Vivaldini
Leonardo Pedro
Sistemas de Tempo RealNão se trata de seguir uma receita de bolo !
Estímulo para pensar em hardware e software de uma forma diferente.
Pontos de vista controvertidos?
Aula 1 – Conceitos Básicos
Programa de Aulas
Aula 1 – Conceitos Básicos
Aula Data Descrição Exercícios / Prática
1 26/2
Organização do CursoConceitos e História deSistemas de Operacionais Tempo Real.
2 5/03 Considerações de hardware Entrega da Lista de exercícios 1
3 12/03Apresentação do IDE Workbench
Treinamento introdutorio no WorkbenchAvaliação 1
4 19/03
Conceitos de RTOS(Escalonamento eGerenciamento de Memória)
Entrega da Lista de exercícios 2
5 26/03Tratamento de interrupções
Avaliação 2
6 09/04 Conceitos de Device Driver Prática com Workbench
7 16/04
RTOS (Sincronização eComunicação entre Processos)
8 23/04 Comunicação em Rede - I Entrega da Lista de exercícios 3
9 30/04 Comunicação em Rede - II Avaliação 3
Programa de Aulas
Aula 1 – Conceitos Básicos
Aula Data Descrição Prática
10 7/05Prática com o Workbench com placa Digilent (Jean)
Prática com o Workbench com placa Digilent (Jean)
11 14/05
Controle de versão(Dalton)
12 21/05
Noções de Engenharia deSoftware Rational Rose Real Time, Rhapsody, outras ferramentas de modelagem de tempo real (Jorge) Entrega da Lista de exercícios 4
13 28/05Conceitos de Board Support Package - BSP Avaliação 4
14 11/06Hardware in the Loop(Leonardo)
15 18/06
Avaliação 5 – Entrega de projeto Avaliação 5 – Entrega de projeto
16 25/06
Avaliação 5 – Entrega de projeto Avaliação 5– Entrega de projeto
Bibliografia e Material de Aula
• Laplante, P.A.,Real Time Systems Design and Analysis, IEEE Press, 3rd. Edition, 2004
• Tanenbaum, Modern Operating Systems, 2nd Edition• Agrawala, A. K., Real-Time System Design• MISRA-C 2004 Guidelines for the use of the C language in critical
systems• MISRA, Development Guidelines For Vehicle Based Software,
1994• Mechatronics Real Time Linux http://143./~aroca/slax-rt/• http://www.windriver.com/developers/workbench/index.html
Aula 1 – Conceitos Básicos
Guia para o Design de Produtos Mecatrônicos
O Nome do Jogo: Melhor, + Rapido, + Economico
Desafios
Identificação de Dependências, Requisitos:
Chave para as tomadas de decisões
Design Conceitual da Máquina e Design Mecânico
ExemploProjeto Sistema Limpa Grades
ExemploProjeto Sistema Limpa Grades
PROPOSTAS PRELIMINARES DE CONJUNTO DE LIMPEZA
ANALISE PRELIMINAR DA ESTRUTURA SUBMETIDA A ESFORÇOS
ESTIMATIVA DE ESFORÇOS HIDRODINAMICOS
Design Elétrico - Eletronico
Design do Software Embarcado
Design do Software Embarcado
Robô Kuka
http://zone.ni.com/devzone/cda/tut/p/id/10042#toc1
Virginia TechVirginia Tech
LabVIEW Robotics Software and NI RIO Hardware Bundle for Autonomous System Design
Usuário
Roteador wireless Linksys WRT54G (versões 5.0 e posterior)
Sistema iDrive da BMW
Impressoras Xerox Phaser
Mitel ICP 3000 IP PBX
Mars Reconnaissance Orbiter
Linguagens de Programação Preferenciais
• C, C++• ADA• Java
Antigas• Assembly• FORTRAN, PASCAL e até VB
Pre-Requisitos• Programação• Cálculo Discreto• Probabilidade e Estatística
Aula 1 – Conceitos Básicos
Introdução
Sistemas que precisam ser processados num ritmo regular e temporizado:
• Aviões - Sequencias de pulso de acelerômetro para determinar sua posição
Sistemas que precisam ser processados rapidamente em situações não regular:
• Alarme de superaquecimento numa usina nuclear
Aplicações que de “certa forma” requerem tipicamente soluçoes de TEMPO-REAL
Guichê de aeroporto – 5 minutos ?? Tempo real ??
Aula 1 – Conceitos Básicos
1.Terminologia
1.1 Conceitos do sistemas
Programas do Sistema– software de propósito genérico– software que se relaciona com o hardware subordinado– software que serve como ferramenta (compiler, assemblers e linkers)
Programas Aplicativos– software de propósito especifico
Aula 1 – Conceitos Básicos
Definição 1
Sistema é um Mapeamento de um conjunto de entradas em um conjunto de saídas
Definição 2
Tempo de resposta do sistema: O tempo entre a apresentação de um conjunto de entradas para um sistema (estimulo) e a realização do comportamento desejado (resposta)
1.Terminologia
1.1 Definições de Tempo Real
Aula 1 – Conceitos Básicos
Definição 3
Um sistema de tempo real é um sistema que deve satisfazer restrições de tempo de resposta explícitos (associados), caso contrario esta sujeito a severas consequências, inclusive de falência.
Definição 4
Um sistema falido é um sistema que não é capaz de atender umou mais dos requisitos estipulados pelas especificações formais
Definição 5
Um sistema de tempo real é aquele cuja correção lógica ébaseada tanto nas saídas corretas como em sua “boa temporização”
1.Terminologia Quando um sistema é de Tempo Real?
Aula 1 – Conceitos Básicos
Definição 6
Soft Real-Time System é aquele cuja performance se degrada as não é destruida por falhas em atender as respostas com restrições de tempo.
Definição 7
Hard Real-Time System é aquele em que falhas em atender um unico prazo de resposta pode induzir à falencia completa e catastrófica do sistema.
Definição 8
Firm Real-Time System é aquele em que falhas em atender algumas respostas com restrições de tempo, não levarão à falencia total do sistema. Mas a perda de mais do que “algumas” pode induzir à falência completa e catastrófica do sistema.
1.Terminologia
A Natureza do tempo
Fim de um Prazo é um instante no Tempo !Como são definidos os Prazos ?• Fisica dos processos• Suposições e palpites• Importância da imprecisão dos relógios !
Aula 1 – Conceitos Básicos
1.Terminologia1.1 Eventos e Determinismo
Aula 1 – Conceitos Básicos
Mudanças de estado resultam em mudanças no controle de fluxo de um programa
Definição 9
EVENTO - Toda ocorrência que força o “program counter” a mudar não sequencialmente é considerada alteraçao no fluxo do programa
Definição 10
Tempo de liberação (release time) –instante quando um caso de umatarefa agendada esta pronto pararodar, geralmente associado a umainterrupção
1.Terminologia
Aula 1 – Conceitos Básicos
Eventos Síncronos e Eventos Assíncronos
Eventos Síncronos -> Ocorrem em tempos previsíveis dentro do fluxo de controle
Eventos Assíncronos -> Ocorrem em tempos imprevisiveis dentro do fluxo de controle
Eventos Periódicos e Aperiódicos
1.Terminologia
Aula 1 – Conceitos Básicos
Eventos Síncronos e Eventos Assíncronos
Periódico Aperiódico Esporádico
Sincrono Código CíclicoProcessosagendados porcódigo interno
Instrução deramificação
Ramificações :Traps
Assíncrono Interrupçãogerada porclock
Interrupçõesfrequentes masde período nãofixo
Excessõesgeradasexternamentos
1.TerminologiaDeterminismo
Manter o controle é fundamental ! O software deve ser capaz de prever e evitar cenarios instaveis
Outra característica de sistema controlados por software: A CPU buscacontinuamente e executa instruções do programa na área de memóriaao invés de outras áreas de dados ou áreas indesejadas da memória
Controle de software e hardware é mantido quando se consegue prever o próximo estado, dado o estado atual e o conjunto de entradas
Aula 1 – Conceitos Básicos
Definição 11
Um sistema é determinístico se por cada estado possível e cada conjunto de entradas um único conjunto de saídas e o próximo estado do sistema pode ser determinado
Perigo
Determinismo de eventos próximos estados e saídas de um sistema são conhecidos para entradas que disparam eventos
1.Terminologia1.4 Utilização da CPU
Aula 1 – Conceitos Básicos
Definição 12
Fator de Carga Temporal U é a medida daporcentagem de tempo de processamento não ocioso
Utilização Zoneamento (Classificação) Aplicação Típica0 – 25 Poder de processamento excessivo -
CPUdeve ser mais poderosa que o necessário
Varias
26 – 50 Muito Seguro Varias
51 - 68 Seguro Varias
69 Limite Teórico Sistemas Embarcados
70 - 82 Questionável Sistemas Embarcados
83 - 99 Perigoso Sistemas Embarcados
100+ Sobrecarregado Sistemas Embarcados
1.Terminologia1.4 Utilização da CPU
Período de Execução pFreqüência de Execução f
Tempo de Execuça – e – worst caseFator de utilização - u
Aula 1 – Conceitos Básicos
2. Desafios do Design de Sistemas de Tempo Real
Aula 1 – Conceitos Básicos
2. Desafios do Design de Sistemas de Tempo Real
Problemas que requerem a atenção:
• Seleção de software e Hardware e avaliaçao de COMPROMISSO custo x (sistema distribuído, paralelismo e sincronismo)
• Especificação e design do RTS e “representação” correta do seu comportamento temporal Nuances das linguagens de programação
• Design e gerenciamento de testes, seleção de equipamentos de desenvolvimento e teste
• Aproveitar as vantagens de sistemas abertos, avaliar a interoperabilidade entre eles (Padrão de Tempo Real CORBA).
• Medição e Previsão de tempos de respostas e sua redução. Execução de analises de escalonamento (agendamento), ou seja, determinando e garantindo a satisfação deadlines.
Aula 1 – Conceitos Básicos
3. Exemplos de Sistemas de Tempo Real
Sistema de medidas inercial10 ms medidas em x,y,z pulsos de acelerômetrosTarefa fornecer para um display a 40 ms vetores deposição, velocidade e aceleração
Tarefas com correlação de tempo
Sistema de monitoramento de usina nuclearLidar com três eventos sinalizados por interrupção1o. Evento disparado por qualquer sinal severo entre os vários pontos de segurançaResposta em 1 s2o. Evento indica que o núcleo alcançou uma sobretemperaturaResposta em 1 msDisplay de operação atualizado 30 vezes por segundo
Aula 1 – Conceitos Básicos
Como se consegue que uma indicação deeminência de derretimento interrompaqualquer outro processo ????
3. Exemplos de Sistemas de Tempo Real
Sistema de reserva de lugares em aviõesLidar com três eventos sinalizados por interrupçãoTempo de retorno de qualquer transação deve ser menor que 15 sSem “overbooking” (sistema ideal)Vários agentes podem querer acessar o sistema ao mesmo tempo
Trancamento de gravação,Mecanismos de comunicação que protegem o banco de dados dereservas contra alterações de mais de um atendente por vez,Como isto é feito ?????
Sistema de inspeção de garrafas Fabrica da KaizerLimpeza, Nível de Liquido, Presença de Tampa, etc ...
Sistema de controle de semáforo em um cruzamento com duas vias demão dupla
Aula 1 – Conceitos Básicos
4. Falsos Conceitos
1. Sistemas de Tempo real são a mesma coisa que sistemas rápidos2. Analise de taxa monofônica resolveram o “problema de tempo real”3. Existem metodologias universais amplamente aceitas para a especificação e design de sistemas de tempo real4. Não existe nunca a necessidade de se construir um sistema de tempo real, pois já existem muitos sistemas comerciais5. O estudo de sistema de tempo real é preponderantemente um estudo da teoria de agendamentos
Aula 1 – Conceitos Básicos
5. Breve Histórico
•Avanços Teoricos•Sistemas de hardware pioneiros•Desenvolvimentos de Hardware•Softwares Pioneiros•Suporte de Sistemas operacionais comerciais
Aula 1 – Conceitos Básicos
Exercícios
1.1 Considere um sistema de pagamento para uma pequena firma de manufatura.
Descreva 3 cenários diferentes nos quais o sistema pode ser justificado como Hard, Firm e Soft Real Time
1.2 Discuta se os seguintes sistemas são Hard, Firm ou Soft Real Time:(a) O sistema de banco de dados de publicações disponíveis na Biblioteca da EESC.(b) O banco de dados da policia que fornece informações sobre veículos roubados(c) Uma maquina de jogos eletrônicos que opera com moeda(d) Um sistema de notas de uma Universidade(e) Um switch controlado por computador utilizado em uma compania de telefonia local como roteador
1.3 Considere um sistema de controle de tempo real para armamentos abordo de um avião caça. Discuta quais dos seguintes eventos podem ser consideradossíncronos e quais seria assíncronos:
(a) Um clock de interrupção gerado externamente com 10 ms(b) Um trap de divisão por zero(c) Um software de teste de falha embutido(d) Um sinal discreto gerado por um piloto apertando um botão de disparo de um foguete
(e) Um sinal discreto indicando falta de combustível
Aula 1 – Conceitos Básicos
Exercícios
1.4 Descreva um sistema completamente não-tempo real, ou seja, não ha restrições qualquer tempo de resposta.1.5 Para os seguintes conceitos, preencha as células da tabela de taxonomia com os descritores para possíveis eventos. Estime os tempos para os eventos periódicos(a) Controle de elevador: este sistema controla todos os aspectos de um conjunto elevadores que serve a um predio de 40 andares no centro de São Paulo.(b) Controle Automotivo: este sistema para evitar colisões on-board usa dados de uma variedade de sensores e toma decisões e afeta comportamentos paraevitar colisões ou proteger os ocupantes num evento de colisão iminente.O sistema pode ter a necessidade de tomar o comando do automóvel do motorista.1.6 Para o sistema do exercício 1.2 quais seriam os tempos de resposta razoáveis para todos os eventos ?1.7 Para os sistemas exemplo apresentados no capitulo, enumere alguns eventos possíveis e marque se eles são periódicos, esporádico, assíncronos. Discuta tempos de resposta razoáveis para os eventos.
Aula 1 – Conceitos Básicos