Voltar ao inícioComputação · 9º ano · Mudar de matéria
Começar grátis
Apontamentos

Exercícios: Simulação e verificação

Pratica★☆☆
Explique o que é um simulador de circuitos ou de robótica e dê duas vantagens de testar nele antes de fazer a montagem real.

Explique o que é um simulador de circuitos ou de robótica e dê duas vantagens de testar nele antes de fazer a montagem real.

Resolver
Pratica★☆☆
Explique com suas palavras o que significa verificar um programa e em que se diferencia de «testá-lo um pouco para ver se funciona».

Explique com suas palavras o que significa verificar um programa e em que se diferencia de «testá-lo um pouco para ver se funciona».

Resolver
Pratica★☆☆
O fluxograma da figura controla uma luz automática que depende de um sensor (LDR), mas falta o conteúdo de um bloco. Indique o que esse bloco deveria fazer e descreva o…

O fluxograma da figura controla uma luz automática que depende de um sensor (LDR), mas falta o conteúdo de um bloco. Indique o que esse bloco deveria fazer e descreva o que o sistema faz quando a leitura do sensor é 150 e quando é 800.

Início Ler LDR LDR < 200? sim ? não Apagar LED
Resolver
Pratica★☆☆
Explique a diferença entre simular um circuito no computador e montá-lo em uma placa de ensaio real: o que se ganha e o que se perde com cada método.

Explique a diferença entre simular um circuito no computador e montá-lo em uma placa de ensaio real: o que se ganha e o que se perde com cada método.

Resolver
Pratica★☆☆
O que é uma «falha» ou bug em um programa de controle? Dê dois exemplos simples (uma condição escrita ao contrário, um limiar mal definido) e o efeito que cada um teria.

O que é uma «falha» ou bug em um programa de controle? Dê dois exemplos simples (uma condição escrita ao contrário, um limiar mal definido) e o efeito que cada um teria.

Resolver
Pratica★☆☆
Escreva dois casos de teste para um programa que faz soar um alarme quando uma porta é aberta: que entrada se simula e que saída se espera em cada caso.

Escreva dois casos de teste para um programa que faz soar um alarme quando uma porta é aberta: que entrada se simula e que saída se espera em cada caso.

Resolver
Pratica★☆☆
Explique o que significa depurar um programa e nomeie uma técnica simples para fazê-lo em um simulador (executar passo a passo, observar o valor das variáveis).

Explique o que significa depurar um programa e nomeie uma técnica simples para fazê-lo em um simulador (executar passo a passo, observar o valor das variáveis).

Resolver
Pratica★☆☆
Alguns simuladores permitem «acelerar o tempo». Explique que vantagem isso tem para testar o comportamento de um termostato durante um dia inteiro.

Alguns simuladores permitem «acelerar o tempo». Explique que vantagem isso tem para testar o comportamento de um termostato durante um dia inteiro.

Resolver
Pratica★★☆
Um programa deve ligar um ventilador quando a temperatura superar $26\ ^\circ\text{C}$. Defina três casos de teste (dado de entrada e resultado esperado) para…

Um programa deve ligar um ventilador quando a temperatura superar $26\ ^\circ\text{C}$. Defina três casos de teste (dado de entrada e resultado esperado) para verificá-lo, incluindo o valor limite de $26\ ^\circ\text{C}$, e justifique por que esse último caso é importante.

Resolver
Pratica★★☆
No simulador seu programa funciona perfeitamente, mas na montagem real o motor não gira. Dê três causas possíveis que um simulador não detecta e explique como você…

No simulador seu programa funciona perfeitamente, mas na montagem real o motor não gira. Dê três causas possíveis que um simulador não detecta e explique como você verificaria cada uma na bancada.

Resolver
Pratica★★☆
Explique o que é um «caso limite» ao verificar um programa e por que são tão importantes. Dê um exemplo com um programa que decide se uma nota é de aprovação a partir de…

Explique o que é um «caso limite» ao verificar um programa e por que são tão importantes. Dê um exemplo com um programa que decide se uma nota é de aprovação a partir de 5.

Resolver
Pratica★★☆
Um programa conta as pessoas que entram em uma sala (sensor A) e as que saem (sensor B). Projete três casos de teste pensados para pegar erros típicos: duas pessoas…

Um programa conta as pessoas que entram em uma sala (sensor A) e as que saem (sensor B). Projete três casos de teste pensados para pegar erros típicos: duas pessoas juntas, uma que entra e sai em seguida e um sensor que dispara duas vezes por causa do repique do contato.

Resolver
Pratica★★☆
Na simulação, o LED pisca com ritmo perfeito, mas na montagem real pisca de forma irregular. Dê duas causas elétricas que o simulador idealiza (tolerância dos…

Na simulação, o LED pisca com ritmo perfeito, mas na montagem real pisca de forma irregular. Dê duas causas elétricas que o simulador idealiza (tolerância dos resistores, contatos frouxos da placa de ensaio) e como delimitar cada uma.

Resolver
Pratica★★☆
Explique o que é um «teste de estresse» de um sistema de controle e proponha um para o programa de um estacionamento: que condições extremas você simularia e que…

Explique o que é um «teste de estresse» de um sistema de controle e proponha um para o programa de um estacionamento: que condições extremas você simularia e que comportamento correto espera.

Resolver
Pratica★★☆
Uma equipe verifica seu programa apenas no «caminho feliz», ou seja, quando tudo dá certo. Explique o que são os casos de erro e escreva dois para um caixa eletrônico de…

Uma equipe verifica seu programa apenas no «caminho feliz», ou seja, quando tudo dá certo. Explique o que são os casos de erro e escreva dois para um caixa eletrônico de brinquedo (cartão inválido, saldo insuficiente).

Resolver
Pratica★★☆
Projete uma tabela de verificação para um semáforo de pedestres: estados (vermelho, verde, amarelo intermitente), entradas (botão pressionado, tempo decorrido) e a saída…

Projete uma tabela de verificação para um semáforo de pedestres: estados (vermelho, verde, amarelo intermitente), entradas (botão pressionado, tempo decorrido) e a saída esperada em cada transição entre estados.

Resolver
Pratica★★★
Na simulação de um sistema de irrigação para um canteiro escolar, você programou este laço de controle: REPETIR SEMPRE: umidade = ler_sensor() SE umidade < 30 % ENTÃO:…

Na simulação de um sistema de irrigação para um canteiro escolar, você programou este laço de controle:

REPETIR SEMPRE:

umidade = ler_sensor()

SE umidade < 30 % ENTÃO:

ativar_eletroválvula()

esperar(10 segundos)

desativar_eletroválvula()

FIM REPETIR

Ao executá-lo em um simulador que modela a absorção física da água com um atraso de infiltração de 2 minutos, a eletroválvula abre e fecha sem parar durante dezenas de ciclos seguidos, encharcando o terreno.

  1. a) Justifique por que o programa gera esse comportamento na simulação apesar de incluir uma instrução explícita de desativação.
  2. b) Reprojete o algoritmo (em pseudocódigo ou fluxograma) para resolver o problema sem suprimir a leitura do sensor nem trocar a eletroválvula.
Resolver
Pratica★★★
Um robô móvel utiliza um sensor de ultrassom frontal (faixa útil: 2,0 cm a 400,0 cm) e deve parar e virar se detectar um obstáculo a menos de 20,0 cm. Projete uma matriz…

Um robô móvel utiliza um sensor de ultrassom frontal (faixa útil: 2,0 cm a 400,0 cm) e deve parar e virar se detectar um obstáculo a menos de 20,0 cm. Projete uma matriz de testes para verificar o código no simulador antes de transferi-lo para o robô real. Seu plano deve conter pelo menos 4 casos de teste distintos que incluam valores de fronteira e anomalias de leitura. Para cada caso você deve indicar: valor numérico simulado de entrada, comportamento esperado dos motores e justificativa técnica de por que é imprescindível verificar esse caso concreto.

Resolver
Pratica★★★
Uma equipe simula um robô seguidor de linha preta: na tela o algoritmo reage em 0,02 s, os motores respondem de forma instantânea e o robô completa o circuito a 1,2 m/s…

Uma equipe simula um robô seguidor de linha preta: na tela o algoritmo reage em 0,02 s, os motores respondem de forma instantânea e o robô completa o circuito a 1,2 m/s sem nenhuma falha. No entanto, ao carregar o mesmo programa no robô real com os mesmos sensores, ele oscila bruscamente de um lado para o outro e acaba perdendo a linha na primeira curva.

  1. a) Identifique e justifique três fatores do mundo físico que o simulador omitiu ou idealizou e que explicam essa discrepância.
  2. b) Proponha duas modificações técnicas (uma nos parâmetros do software de controle e outra na montagem física) para compensar esses efeitos reais sem substituir os sensores.
Resolver
Pratica★★★
O sensor de luz de uma persiana automática registra estes valores em um trecho de 6 minutos durante uma tarde com nuvens e momentos de sol: t = 0 min: 780 lx t = 1 min:…

O sensor de luz de uma persiana automática registra estes valores em um trecho de 6 minutos durante uma tarde com nuvens e momentos de sol:

  • t = 0 min: 780 lx

  • t = 1 min: 805 lx

  • t = 2 min: 795 lx

  • t = 3 min: 812 lx

  • t = 4 min: 798 lx

  • t = 5 min: 815 lx

  • t = 6 min: 820 lx

O sistema está programado com a regra simples: «Se luz ≥ 800 lx, baixar a persiana; se luz < 800 lx, subir a persiana».

  1. a) Determine quantas ordens de movimento o motor recebe nesse intervalo e justifique quais consequências mecânicas e energéticas esse funcionamento tem.
  2. b) Projete uma solução baseada em duplo limiar (histerese), definindo valores numéricos concretos para a ordem de descida e de subida, e demonstre passo a passo como a sua solução responde à mesma série de dados.
Resolver
Pratica★★★
Uma estufa conta com duas zonas de irrigação independentes (Zona A: canteiro de mudas delicadas; Zona B: cultivo geral) gerenciadas por um microcontrolador que recebe…

Uma estufa conta com duas zonas de irrigação independentes (Zona A: canteiro de mudas delicadas; Zona B: cultivo geral) gerenciadas por um microcontrolador que recebe dados de dois sensores de umidade do solo, um sensor digital de chuva e um sensor de vazão na tubulação geral. Projete um plano de verificação para simular o sistema antes da sua entrada em operação. Defina 5 casos de teste exaustivos que incluam situações de conflito de prioridades e falhas de fornecimento. Para cada caso, detalhe: entradas simuladas exatas, estado previsto das eletroválvulas e dos alarmes, e qual dano material ou agronômico esse teste previne.

Resolver
Pratica★★★
Uma equipe programa um robô transportador para um armazém. Ao executar o plano de testes no simulador, o robô desvia de 100 % dos obstáculos e freia diante de qualquer…

Uma equipe programa um robô transportador para um armazém. Ao executar o plano de testes no simulador, o robô desvia de 100 % dos obstáculos e freia diante de qualquer pessoa, mas o algoritmo sempre resolve os desvios realizando a manobra em marcha à ré, percorrendo os corredores em sentido contrário ao fluxo de trabalho do armazém. O professor afirma: «O software está perfeitamente verificado, mas o sistema não está validado».

  1. a) Justifique tecnicamente a afirmação do professor aplicando as definições operacionais de verificação e validação a este caso concreto.
  2. b) Reformule o documento de requisitos técnicos do robô para garantir que uma futura verificação assegure também a sua correta validação no ambiente de trabalho.
Resolver
Pratica★★★
Um robô rastreador para de forma errática depois de funcionar corretamente por cerca de cinco minutos. Para diagnosticar a falha, ativa-se o registro pela porta serial…

Um robô rastreador para de forma errática depois de funcionar corretamente por cerca de cinco minutos. Para diagnosticar a falha, ativa-se o registro pela porta serial (log) e extraem-se estas linhas-chave antes da parada:

  • t = 295,0 s | Distância: 35,0 cm | Temp_driver: 50,0 °C | V_bateria: 7,4 V | Estado: AVANÇAR

  • t = 298,5 s | Distância: 34,0 cm | Temp_driver: 78,0 °C | V_bateria: 7,2 V | Estado: AVANÇAR

  • t = 300,0 s | Distância: 35,0 cm | Temp_driver: 92,0 °C | V_bateria: 6,1 V | Estado: PARADA_EMERGÊNCIA

  1. a) Interprete os dados do registro para determinar a causa física da falha, refutando o relatório inicial da equipe, que afirmava que a falha se devia a um defeito do sensor de ultrassom.
  2. b) Projete quais variáveis adicionais ou condições de alerta precoce você incluiria no registro e no código de controle para gerenciar esse problema de forma progressiva, sem chegar ao desligamento abrupto.
Resolver
Pratica★★★
Desafio do tema. Climatização inteligente na sua casa. Você sabia que automatizar o aquecimento pode reduzir drasticamente o consumo de energia? Projete e valide um…

Desafio do tema. Climatização inteligente na sua casa.

Você sabia que automatizar o aquecimento pode reduzir drasticamente o consumo de energia? Projete e valide um sistema eficiente para a sua casa.

  1. Dados e modelagem: Consulte no site do INMET a previsão de temperaturas para as próximas $24\text{ h}$ no seu município. Compare em uma tabela como responderia um sistema de malha aberta (temporizador fixo) em relação a um de malha fechada (com realimentação), identificando para este último: sensor, controlador e atuador.

  2. Projeto e simulação: Acesse o Tinkercad Circuits ou o MakeCode. Modele um circuito com um sensor de temperatura, um microcontrolador e um atuador (LED ou relé que represente a caldeira). Programe o controlador para ativar o aquecimento se a temperatura cair abaixo de um valor de referência de $20,5\text{ }^\circ\text{C}$ e desligá-lo ao alcançá-lo.

  3. Verificação e proposta final: Simule mudanças de temperatura ambiente para verificar que o sistema reage automaticamente. Redija um relatório breve no LibreOffice com capturas da montagem e um gráfico das temperaturas do INMET, justificando quantas horas de funcionamento desnecessário a malha fechada evita.

Será avaliado:

  • Identificação e distinção conceitual rigorosa dos elementos da malha aberta e fechada.

  • Montagem, programação e verificação funcional do sistema simulado com o valor de referência dado.

  • Justificativa fundamentada da economia de energia a partir dos dados meteorológicos reais consultados.

Resolver