Volver a la portadaFormación Tecnológica · noveno año · Cambiar asignatura
Empezar gratis
Apuntes

Ejercicios: Programación de placas controladoras

Practica★☆☆
Explique qué es un algoritmo y qué es un programa, y qué diferencia hay entre describirlo en pseudocódigo (con palabras) y con bloques gráficos.

Explique qué es un algoritmo y qué es un programa, y qué diferencia hay entre describirlo en pseudocódigo (con palabras) y con bloques gráficos.

Resolver
Practica★☆☆
Las instrucciones del programa de un semáforo están desordenadas: (a) esperar 2 segundos, (b) encender la luz roja y apagar las demás, (c) encender la luz verde y apagar…

Las instrucciones del programa de un semáforo están desordenadas: (a) esperar 2 segundos, (b) encender la luz roja y apagar las demás, (c) encender la luz verde y apagar las demás, (d) volver al principio, (e) esperar 8 segundos (aparece dos veces en el ciclo), (f) encender la luz ámbar y apagar las demás. Ordénelas correctamente y describa qué hace el programa completo.

Resolver
Practica★☆☆
El diagrama de flujo de la figura gobierna la barrera de entrada de un parqueo, pero falta la pregunta del rombo. Escriba la condición que debería comprobarse ahí y…

El diagrama de flujo de la figura gobierna la barrera de entrada de un parqueo, pero falta la pregunta del rombo. Escriba la condición que debería comprobarse ahí y describa el comportamiento completo de la barrera.

Inicio Leer pulsador ? sí Subir barrera Esperar 5 s Bajar barrera no
Resolver
Practica★☆☆
Explique qué significa «leer una entrada» en un programa de control y qué diferencia hay entre leer un pulsador (que da 0 o 1) y leer un sensor de luz (que da un número…

Explique qué significa «leer una entrada» en un programa de control y qué diferencia hay entre leer un pulsador (que da 0 o 1) y leer un sensor de luz (que da un número dentro de un rango).

Resolver
Practica★☆☆
Un programa tiene solo estas líneas: «repetir siempre: leer el pulsador; si está pulsado, encender el LED; si no, apagar el LED». Describa con sus palabras qué hace el…

Un programa tiene solo estas líneas: «repetir siempre: leer el pulsador; si está pulsado, encender el LED; si no, apagar el LED». Describa con sus palabras qué hace el montaje y razone qué ocurriría si se borrara la parte «si no, apagar el LED».

Resolver
Practica★☆☆
Explique qué es una instrucción condicional («si... entonces... si no...») y escriba la condición que necesitan estos dos avisos: una alarma que suena cuando se abre una…

Explique qué es una instrucción condicional («si... entonces... si no...») y escriba la condición que necesitan estos dos avisos: una alarma que suena cuando se abre una puerta y un aviso que pita cuando la temperatura pasa de $40\ ^\circ\text{C}$.

Resolver
Practica★☆☆
¿Para qué sirve la instrucción «esperar» (una pausa) en un programa de control? Ponga dos ejemplos en los que, sin esa pausa, el sistema no cumpliría su función.

¿Para qué sirve la instrucción «esperar» (una pausa) en un programa de control? Ponga dos ejemplos en los que, sin esa pausa, el sistema no cumpliría su función.

Resolver
Practica★☆☆
Explique por qué casi todos los programas de las placas controladoras llevan un bucle («repetir siempre») y describa qué haría un semáforo cuyo programa no tuviera bucle.

Explique por qué casi todos los programas de las placas controladoras llevan un bucle («repetir siempre») y describa qué haría un semáforo cuyo programa no tuviera bucle.

Resolver
Practica★★☆
Escriba en pseudocódigo el programa completo de un semáforo sencillo: verde durante 8 segundos, ámbar durante 2, rojo durante 8, y vuelta a empezar. Indique en cada paso…

Escriba en pseudocódigo el programa completo de un semáforo sencillo: verde durante 8 segundos, ámbar durante 2, rojo durante 8, y vuelta a empezar. Indique en cada paso qué luces están encendidas y cuáles apagadas.

Resolver
Practica★★☆
Una luz de escalera funciona así: al presionar el botón se enciende; pasados 30 segundos se apaga sola; y el ciclo puede repetirse. Dibuje o describa su diagrama de…

Una luz de escalera funciona así: al presionar el botón se enciende; pasados 30 segundos se apaga sola; y el ciclo puede repetirse. Dibuje o describa su diagrama de flujo y escriba después el pseudocódigo correspondiente.

Puede hacerlo en papel y enviar una foto con su respuesta.

Resolver
Practica★★☆
El diagrama de flujo de la figura es el programa de un robot siguelíneas con un único sensor que va sobre el borde de la línea, pero falta la condición del rombo.…

El diagrama de flujo de la figura es el programa de un robot siguelíneas con un único sensor que va sobre el borde de la línea, pero falta la condición del rombo. Complétela, describa qué hace el robot en cada caso y razone qué ocurrirá cuando la línea se acabe.

Inicio Leer sensor ? sí Girar a la izquierda no Girar a la derecha
Resolver
Practica★★☆
La barrera de un parqueo solo debe subir cuando hay un carro esperando (sensor) y además la persona que conduce ha agarrado el tiquete (pulsador); baja cuando el carro…

La barrera de un parqueo solo debe subir cuando hay un carro esperando (sensor) y además la persona que conduce ha agarrado el tiquete (pulsador); baja cuando el carro ha pasado (un segundo sensor). Escriba el pseudocódigo completo del ciclo, combinando las dos condiciones a la vez.

Resolver
Practica★★☆
Una alarma de casa, al detectar la puerta abierta, espera 10 segundos antes de sonar para dar tiempo a desactivarla con un código. Escriba su pseudocódigo incluyendo la…

Una alarma de casa, al detectar la puerta abierta, espera 10 segundos antes de sonar para dar tiempo a desactivarla con un código. Escriba su pseudocódigo incluyendo la comprobación del código y explique para qué sirve ese retardo.

Resolver
Practica★★☆
Un programa cuenta carros: «repetir siempre: esperar a que el sensor pase de 0 a 1; sumar 1 a la variable carros». Explique qué hace, para qué puede servir y qué…

Un programa cuenta carros: «repetir siempre: esperar a que el sensor pase de 0 a 1; sumar 1 a la variable carros». Explique qué hace, para qué puede servir y qué problema aparece si un carro se para justo encima del sensor.

Resolver
Practica★★☆
Un programa de ventilador dice: «si la temperatura es mayor que $26\ ^\circ\text{C}$, apagar el ventilador; si es menor que $26\ ^\circ\text{C}$, encenderlo». Describa…

Un programa de ventilador dice: «si la temperatura es mayor que $26\ ^\circ\text{C}$, apagar el ventilador; si es menor que $26\ ^\circ\text{C}$, encenderlo». Describa el comportamiento real del ventilador y escriba el programa corregido.

Resolver
Practica★★☆
En un semáforo con botón para peatones, el programa solo lee el botón una vez en cada ciclo de 30 segundos. Explique qué nota la persona peatona al pulsar y razone por…

En un semáforo con botón para peatones, el programa solo lee el botón una vez en cada ciclo de 30 segundos. Explique qué nota la persona peatona al pulsar y razone por qué las pausas largas dentro del programa afectan la rapidez de respuesta del sistema.

Resolver
Practica★★★
El diagrama de flujo de la figura gobierna la barrera de salida de un parqueo, con un sensor situado bajo la barrera, pero falta una de las condiciones. Complétela,…

El diagrama de flujo de la figura gobierna la barrera de salida de un parqueo, con un sensor situado bajo la barrera, pero falta una de las condiciones. Complétela, describa el comportamiento completo y explique qué accidente evita esa segunda comprobación.

Inicio ¿carro esperando? no sí Subir barrera ? no sí Bajar barrera
Resolver
Practica★★★
Un equipo de robótica prueba un rastreador siguelíneas con dos sensores de infrarrojos (I y D) separados 2,0 cm, diseñados para seguir una línea negra de 1,5 cm sobre…

Un equipo de robótica prueba un rastreador siguelíneas con dos sensores de infrarrojos (I y D) separados 2,0 cm, diseñados para seguir una línea negra de 1,5 cm sobre fondo blanco. El programa actual aplica la lógica clásica: avanzar recto si ambos ven blanco, girar a la derecha si D pisa negro y a la izquierda si I pisa negro.

  1. a) Prediga qué sucederá en una curva muy cerrada a 90° si el robot entra rápido y los dos sensores quedan a la vez sobre el fondo blanco fuera de la línea. Justifique por qué el algoritmo básico entra en fallo.
  2. b) Diseñe en pseudocódigo una mejora que use una variable de memoria (ultimo_visto) para que el robot sepa hacia qué lado girar cuando pierde la línea por completo.
  3. c) Si la pista tuviese una línea negra ancha de 3,5 cm (más ancha que la distancia entre sensores), prediga el comportamiento del robot en una recta y explique qué condición adicional debería programar para gestionar cuando ambos sensores detecten negro al mismo tiempo.
Resolver
Practica★★★
Un instalador programa la central de alarma de una vivienda con un sensor magnético en la puerta, otro en la ventana y un interruptor de armado mediante este algoritmo:…

Un instalador programa la central de alarma de una vivienda con un sensor magnético en la puerta, otro en la ventana y un interruptor de armado mediante este algoritmo:

repetir siempre:

    si (armada == VERDADERO) y (puerta == ABIERTA o ventana == ABIERTA) entonces:

        activar_sirena()

        esperar(60) // segundos

        desactivar_sirena()
  1. a) Analice el código y razone dos fallos críticos de seguridad: ¿qué ocurre si un intruso abre la ventana, entra y la vuelve a cerrar en 3,0 s? ¿Y qué sucede si transcurren los 60 s y el intruso sigue dentro con la ventana abierta?
  2. b) Diseñe en pseudocódigo un algoritmo robusto con variables de estado que garantice: 1) una vez disparada, la sirena sonará al menos 60 s aunque se vuelva a cerrar el acceso; 2) no se apagará mientras persista la apertura de los sensores; y 3) si la persona usuaria apaga el interruptor de armado, la sirena se detendrá de inmediato en cualquier instante.
Resolver
Practica★★★
Un estudiante programa el encendido de la luz de una escalera comunitaria: al presionar el interruptor, la luz debe permanecer encendida 30 s y luego apagarse. a) Si el…

Un estudiante programa el encendido de la luz de una escalera comunitaria: al presionar el interruptor, la luz debe permanecer encendida 30 s y luego apagarse.

  1. a) Si el estudiante implementa el retardo con una función bloqueante del tipo esperar(30), prediga qué sucederá si un segundo vecino presiona el interruptor a los 15 s de haberse encendido la luz. ¿Cumple este comportamiento la función de un minutero de escalera rearmable? Justifique su respuesta.
  2. b) Diseñe en pseudocódigo un sistema rearmable no bloqueante empleando una variable tiempo_restante y comprobaciones periódicas (por ejemplo, cada 1,0 s), de modo que cada nueva pulsación reinicie la cuenta regresiva a 30 s sin apagar la luz.
  3. c) Prediga qué riesgo existe si un pulsador físico se atasca y queda permanentemente activado, y proponga una modificación lógica para evitar que la luz quede encendida de forma indefinida.
Resolver
Practica★★★
Para controlar un semáforo de vehículos que incluye un pulsador peatonal de demanda, se comparan dos estructuras de programación: Opción A (secuencial lineal): bucle con…

Para controlar un semáforo de vehículos que incluye un pulsador peatonal de demanda, se comparan dos estructuras de programación:

  • Opción A (secuencial lineal): bucle con llamadas bloqueantes esperar(t) sucesivas (verde 30 s, ámbar 3 s, rojo 15 s).

  • Opción B (máquina de estados): el sistema permanece en el estado COCHES_VERDE y solo transiciona de estado si se detecta la señal del pulsador peatonal.

  1. a) Justifique por qué la opción A es inadecuada para atender con inmediatez la pulsación de una persona peatona y qué defecto de respuesta provocará.
  2. b) Si se solicita añadir una nueva función («el verde peatonal debe parpadear 3 veces durante 3,0 s antes de pasar a rojo, pero únicamente si el sensor de invidentes no está activo»), razone qué ventajas de modularidad y mantenimiento presenta la opción B frente a la A.
  3. c) Diseñe el diagrama de estados o pseudocódigo general de la opción B identificando claramente los estados, los eventos de entrada y las acciones asociadas a cada transición.
Resolver
Practica★★★
El sistema de control de una barrera automática de peaje dispone de un sensor de presencia 1 (justo antes de la barrera) y un sensor 2 (justo después). Un operario…

El sistema de control de una barrera automática de peaje dispone de un sensor de presencia 1 (justo antes de la barrera) y un sensor 2 (justo después). Un operario propone este código:

repetir siempre:

    si (sensor_1 == DETECTADO) entonces:

        subir_barrera()

    si (sensor_1 == DESPEJADO) entonces:

        bajar_barrera()
  1. a) Prediga qué accidente ocurrirá físicamente en cuanto el frente del carro rebase el sensor 1 si la parte trasera aún se encuentra bajo la barrera. Justifique por qué la propuesta del operario de «añadir una pausa de 5,0 s antes de bajar» no resuelve el problema con tráfico lento o vehículos articulados.
  2. b) Diseñe en pseudocódigo un algoritmo seguro que utilice ambos sensores para garantizar que la barrera sube al llegar el vehículo, se mantiene arriba mientras cualquiera de los dos sensores detecte presencia, y solo baja cuando el vehículo ha liberado totalmente el sensor 2.
Resolver
Practica★★★
En un puente levadizo accionado por un motorreductor eléctrico se plantea sustituir los dos finales de carrera físicos (fc_abajo y fc_arriba) por un control basado…

En un puente levadizo accionado por un motorreductor eléctrico se plantea sustituir los dos finales de carrera físicos (fc_abajo y fc_arriba) por un control basado exclusivamente en tiempos: hacer girar el motor durante 5,0 s para abrir y 5,0 s para cerrar.

  1. a) Prediga y justifique al menos dos situaciones reales (mecánicas, meteorológicas o eléctricas) por las que este sistema por tiempos provocará que el puente no cierre por completo o termine dañando el motor.
  2. b) Diseñe en pseudocódigo el ciclo completo de maniobra: al detectar un barco, poner el semáforo de tráfico rodado en rojo, esperar 3,0 s de desalojo, subir el puente hasta fc_arriba, permitir el paso fluvial con semáforo náutico en verde y, al salir el barco, cerrar hasta fc_abajo.
  3. c) Incorpore a su algoritmo un mecanismo de seguridad por tiempo máximo (watchdog): si transcurren más de 8,0 s sin que se active el final de carrera correspondiente durante el movimiento, el motor debe pararse inmediatamente y activar una señal luminosa de alarma.
Resolver
Practica★★★
Para automatizar el riego de un huerto escolar se dispone de un sensor de humedad analógico y una electrobomba. Un primer programa aplica esta regla: «repetir siempre:…

Para automatizar el riego de un huerto escolar se dispone de un sensor de humedad analógico y una electrobomba. Un primer programa aplica esta regla: «repetir siempre: si humedad < 30,0 %, encender bomba; si no, apagar bomba; esperar 1 segundo».

  1. a) Si la lectura del sensor oscila rápidamente entre 29,8 % y 30,2 % debido a la absorción localizada o a ruido eléctrico, prediga qué comportamiento sufrirá la electrobomba y qué consecuencias mecánicas y eléctricas tendrá.
  2. b) Explique por qué sustituir la espera por «esperar 10 minutos» tampoco garantiza un riego óptimo (analice el retardo en la infiltración del agua y el riesgo de sobreirrigación).
  3. c) Diseñe una solución mediante control por histéresis: defina dos umbrales lógicos de humedad distintos (arranque y parada) y redacte el pseudocódigo estructurado o describa detalladamente el diagrama de flujo correspondiente, justificando por qué evita las conmutaciones constantes.
Resolver