2.9 Ventilador Rotativo

En este proyecto, haremos una estrella giratoria y un ventilador.

Al hacer clic en los sprites de flecha izquierda y derecha en el escenario, controlaremos la rotación en el sentido de las agujas del reloj y en sentido contrario del motor y del sprite de la estrella, haz clic en el sprite de la estrella para detener la rotación.

../_images/13_fan.png

Componentes Necesarios

Para este proyecto, necesitaremos los siguientes componentes.

Es definitivamente conveniente comprar un kit completo, aquí está el enlace:

Nombre

ARTÍCULOS EN ESTE KIT

ENLACE

Kit de Inicio ESP32

320+

ESP32 Starter Kit

También puedes comprarlos por separado en los enlaces a continuación.

INTRODUCCIÓN DEL COMPONENTE

ENLACE DE COMPRA

ESP32 WROOM 32E

BUY

Extensión de Cámara ESP32

-

Protoboard

BUY

Cables Puente

BUY

Motor de Corriente Continua (DC)

BUY

L293D

-

Lo Que Aprenderás

  • Principio de funcionamiento del motor

  • Función de difusión

  • Detener otros scripts en el bloque de sprite

Construye el Circuito

../_images/10_rotaing_fan_bb.png

Programación

El efecto que queremos lograr es usar 2 sprites de flecha para controlar la rotación en el sentido de las agujas del reloj y en sentido contrario del motor y del sprite de la estrella respectivamente, haciendo clic en el sprite de la estrella se detendrá la rotación del motor.

1. Añadir sprites

Elimina el sprite predeterminado, luego selecciona el sprite Estrella y el sprite Flecha1, y copia Flecha1 una vez.

../_images/13_star.png

En la opción Disfraces, cambia el sprite Flecha1 a un disfraz de dirección diferente.

../_images/13_star1.png

Ajusta el tamaño y la posición del sprite adecuadamente.

../_images/13_star2.png

2. Sprite de flecha izquierda

Cuando se hace clic en este sprite, transmite un mensaje - girar, luego establece el pin digital12 en bajo y el pin14 en alto, y establece la variable flag en 1. Si haces clic en el sprite de flecha izquierda, encontrarás que el motor gira en sentido antihorario, si tu giro es en sentido horario, entonces intercambia las posiciones de pin12 y pin14.

Hay 2 puntos a tener en cuenta aquí.

  • [difundir]: de la paleta Eventos, se utiliza para transmitir un mensaje a los otros sprites, cuando los otros sprites reciben este mensaje, realizará un evento específico. Por ejemplo, aquí es girar, cuando el sprite estrella recibe este mensaje, ejecuta el script de rotación.

  • variable flag: La dirección de rotación del sprite estrella está determinada por el valor de flag. Por lo tanto, cuando crees la variable flag, necesitas hacer que se aplique a todos los sprites.

../_images/13_left.png

3. Sprite de flecha derecha

Cuando se hace clic en este sprite, transmite un mensaje girar, luego establece el pin digital12 en alto y el pin14 en bajo para hacer que el motor gire en sentido horario y establece la variable flag en 0.

../_images/13_right.png

4. Sprite de estrella

Aquí se incluyen 2 eventos.

  • Cuando el sprite estrella recibe el mensaje transmitido girar, determina el valor de flag; si flag es 1, gira 10 grados a la izquierda, de lo contrario, se invierte. Dado que está en [SIEMPRE], seguirá girando.

  • Cuando se hace clic en este sprite, se establecen ambos pines del motor en alto para hacer que deje de girar y detener los otros scripts en este sprite.

../_images/13_broadcast.png