cbtis50profemartin.files.wordpress.com  · web viewel proyecto final es la continuidad del...

17
Módulo II // Submódulo 1 UNIDAD III SEMANA 1 Proyecto Final. Competencia a desarrollar; 4. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. + (1.1, 1.2, 2.1, 2.3, 4.2, 6.2, 8.1, 11.1, 11.2) Actividades del alumno: El proyecto final es la continuidad del proyecto titulado “elevador con arduino”, se toman todos los elementos anteriormente utilizados, y se le agregan cambios en las programación de arduino para hacer otras funciones, en nuestro caso, el accionamiento para elegir el piso al cual se quiere representar será con el apoyo del celular y Bluetooth. -El alumno deberá tener en buen estado y funcionando el proyecto denominado “Elevador controlado con arduino”, realizara investigación para seleccionar una aplicación para su teléfono que pueda activar las funciones por medio de Bluetooth. -Reprogramar el arduino para que ahora el control del elevador también pueda ser vía su celular con alguna de las aplicaciones seleccionadas. -Realizara las pruebas necesarias para corroborar que el cambio realizado es el adecuado y que funciona en distintas condiciones. -Prepara su tríptico elaborado con anterioridad -Solicitar al Departamento de Vinculación con el Sector Productivo, una vez que se tenga el trabajo concluido, autorización para visitar una secundaria de su elección para exponer. -Tomar evidencia de su exposición (videos) y presentar junto con el permiso firmado y sellado por el plantel donde se realizo la exposición. - Agrega una portada (Datos de la institución, materia, docente, alumno, grupo y fecha de entrega), el archivo lo guardas con denominación: U3_Exposicion_Equipo_Grupo. “Por Ejemplo: U3__ Exposicion_Equipo2_3P” -Envía el archivo a la dirección: [email protected] - Fecha de entrega: 30 de noviembre de 2018 La calificación se realizara acorde a la rubrica siguiente: Prof. Martín Hernández Macías México/noviembre/2018

Upload: vubao

Post on 09-May-2019

212 views

Category:

Documents


0 download

TRANSCRIPT

Módulo II // Submódulo 1Implementa Circuitos Digitales

UNIDAD III SEMANA 1 Proyecto Final.

Competencia a desarrollar; 4. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. + (1.1, 1.2, 2.1, 2.3, 4.2, 6.2, 8.1, 11.1, 11.2)

Actividades del alumno:El proyecto final es la continuidad del proyecto titulado “elevador con arduino”, se toman todos los elementos anteriormente utilizados, y se le agregan cambios en las programación de arduino para hacer otras funciones, en nuestro caso, el accionamiento para elegir el piso al cual se quiere representar será con el apoyo del celular y Bluetooth. -El alumno deberá tener en buen estado y funcionando el proyecto denominado “Elevador controlado con arduino”, realizara investigación para seleccionar una aplicación para su teléfono que pueda activar las funciones por medio de Bluetooth.-Reprogramar el arduino para que ahora el control del elevador también pueda ser vía su celular con alguna de las aplicaciones seleccionadas.-Realizara las pruebas necesarias para corroborar que el cambio realizado es el adecuado y que funciona en distintas condiciones.-Prepara su tríptico elaborado con anterioridad-Solicitar al Departamento de Vinculación con el Sector Productivo, una vez que se tenga el trabajo concluido, autorización para visitar una secundaria de su elección para exponer.-Tomar evidencia de su exposición (videos) y presentar junto con el permiso firmado y sellado por el plantel donde se realizo la exposición.- Agrega una portada (Datos de la institución, materia, docente, alumno, grupo y fecha de entrega), el archivo lo guardas con denominación: U3_Exposicion_Equipo_Grupo.“Por Ejemplo: U3__ Exposicion_Equipo2_3P”-Envía el archivo a la dirección: [email protected] - Fecha de entrega: 30 de noviembre de 2018La calificación se realizara acorde a la rubrica siguiente: P R O D U C T O A E V A L U A R : P R O Y E C T O D E L E L E V A D O R F I N A L I Z A D O Y F U N C I O N A N D O , V I D E O D E L A E X P O S I C I Ó N , O F I C I O C O N S E L L O Y F I R M A D E L A E S C U E L A D O N D E R E A L I Z O L A A C T I V I D A D .

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

Motor DC Bluetooth con Arduinohttp://cartongeek.blogspot.com/2016/02/motor-dc-bluetooth-con-arduino.html

IntroducciónEl objetivo de este proyecto es el controlar un motor de corriente directa a través de un Smartphone. La velocidad del motor varía. La comunicación entre el motor y el Smartphone se realizará a través de un módulo Bluetooth y el control del motor se realizará con una tarjeta Arduino.

Paso 1Primero se realiza el diseño del circuito con base a las especificaciones (lo que se desea que realice el circuito). Este primer sketch puede realizarse a mano o con un programa de diseño de circuitos.

Diagrama de conexiones del Arduino y el HC-05

Paso 2Una vez que ha diseñado el circuito, se procede a la simulación del mismo, La simulación permite comprobar si el circuito funcionará correctamente. En la siguiente imagen se muestra un esquema del circuito. El elemento en rojo representa el módulo Bluetooth (HC-05).

Boceto de la conexión del motor, el transistor, el HC-05 y el Arduino

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

Paso 3Un módulo Bluetooth ampliamente usado es el HC-05. La comunicación entre el arduino y el PC es serial. El Bluetooth, emula una comunicación serial, por lo que se requiere de 2 pines para las señales (RX: recibir y TX: transmitir), adicional, la alimentación de energía eléctrica es requerida (5 V, 0 V). La siguiente imagen muestra el módulo empleado. 4 de las 6 conexiones serán empleadas. Los puertos STATE y EN, no serán cableados.

Módulo Bluetooth HC-05

STATE y EN no se emplearán, RXD y TXD son los pines de comunicación

Paso 4Se procede a realizar el cableado del circuito. La siguiente imagen muestra los componentes que serán empleados. 2 Fuentes de alimentación serán usadas, una para el arduino y el otro para los periféricos y actuadores. La primera fuente alimenta el Arduino. La segunda fuente alimenta el módulo Bluetooth, el transistor y el motor. El transistor NPN será empleado como etapa de potencia, ya que los puertos de salida del Arduino, aunque suministren 5 V, la corriente suministrada es a lo máximo de 20 mA, lo cual es insuficiente para arrancar el motor, pero suficiente para activar el transistor. Las tierras (0 V) de ambas fuentes de poder deben de estar conectadas.

Componentes a emplear en el circuito

Paso 5Se procede a armar el circuito como se muestra en la imagen. Se empleó la librería SoftwareSerial. Por default la comunicación serial y/o Bluetooth, se realiza a través de los puertos 0 y 1 (RX y TX respectivamente). Para emplear otros pines diferentes para la comunicación Bluetooth, se configuran con una utilería de la librería arriba mencionada.

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

Circuito final armado

Paso 6A continuación se  muestra el código para controlar el módulo Bluetooth de manera remota:

// The program is designed to perform the next tasks:// 1. A Bluetooth module (HC-05) will be configured //    and attachet to an Arduino UNO module// 2. A DC motor will be attached to one output of the Arduino board// 3. The DC motor will be remotely controlled using a smartphone// 4. Different speeds will be programmed// Written by AMS

#include <SoftwareSerial.h>                   // serial communication library

SoftwareSerial ConfigurePorts (8, 9);         // Port_8 ==> RX, Port_9 ==> TXint ReceiveInfo;                              // for the received informationint MotorPort=11;                             // Port 13 for the dc motor

 void setup()        {          ConfigurePorts.begin(9600);         // Baud rate          ConfigurePorts.println("0=off, 1=speed 1, 2=speed 2 ...");          pinMode(MotorPort, OUTPUT);        }

       void loop()              {                if(ConfigurePorts.available()>0)                  {                  ReceiveInfo=ConfigurePorts.read();                  switch (ReceiveInfo)                    {                  case '0':                  // off                    analogWrite(MotorPort,0);                    ConfigurePorts.println("off");                    break;                  case '1':                  // speed 1

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

                   analogWrite(MotorPort,40);                    ConfigurePorts.println("1");                    break;                  case '2':                 // speed 2                    analogWrite(MotorPort,60);                    ConfigurePorts.println("2");                    break;                  case '3':                 // speed 3                    analogWrite(MotorPort,80);                    ConfigurePorts.println("3");                    break;                  case '4':                 // speed 4                    analogWrite(MotorPort,100);                    ConfigurePorts.println("4");                    break;                  case '5':                 // speed 5                    analogWrite(MotorPort,120);                    ConfigurePorts.println("5");                    break;                    case '6':              // speed 6                    analogWrite(MotorPort,160);                    ConfigurePorts.println("6");                    break;                    case '7':              // speed 7                    analogWrite(MotorPort,200);                    ConfigurePorts.println("7");                    break;                  case '8':                // speed 8                    analogWrite(MotorPort,240);                    ConfigurePorts.println("8");                    break;                    }                  }              }

PASO 7Ahora se procederá a realizar la conexión con el Smartphone. La aplicación empleada se descargó de Google Play (“Bluetooth Controller”). Los botones tienen que ser configurados. Para este proyecto la configuración es la siguiente:

0 => off1 => velocidad 1 (12.5%)2 => velocidad 2 (25%)3 => velocidad 3 (37.5%)4 => velocidad 4 (50%)5 => velocidad 5 (62.5%)6 => velocidad 6 (75%)7 => velocidad 7 (87.5%)8 => velocidad 8 (100%)

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

Control de un motor DC con arduino y Bluetooth

En esta entrada vamos a realizar algo que tiene mas complejidad como lo es controlar un motor desde un dispositivo móvil Android. Gracias al desarrollo de este proyecto  comprenderemos conceptos de motores, bluetooth y el L293D que es el integrado que define el cambio de giro en el motor. Para este proyecto personalmente use un shield de bluetooth con HC-06 pero pueden usar el modulo sin shield de cualquiera de las dos maneras va a funcionar, únicamente que el shield no se cablea. Importante desconectar el bluetooth cuando se carga el código. 

La aplicación  a usar para control: https://play.google.com/store/apps/details?id=es.pymasde.blueterm

Materiales Arduino Uno Modulo Bluetooth (Modulo o Shield) L293D 1 motor DC Cables Dispositivo Móvil con Android Blueterm

L293D

 Cableado con Shield

 Cableado sin Shield

El cableado se hace invertido el TXD del modulo va en el RXD de arduino y viceversa

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

 

Código para el IDE

int motorPin1 = 3;int motorPin2 = 4;int enablePin = 5;int state;int flag=0;

void setup() {pinMode(motorPin1, OUTPUT);pinMode(motorPin2, OUTPUT);pinMode(enablePin, OUTPUT);digitalWrite(enablePin, HIGH);Serial.begin(9600);}

void loop() {if(Serial.available() > 0){state = Serial.read();flag=0;}if (state == ‘0’) {digitalWrite(motorPin1, LOW);digitalWrite(motorPin2, LOW);if(flag == 0){Serial.println(“Motor: apagado”);

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

flag=1;}}else if (state == ‘1’) {digitalWrite(motorPin1, LOW);digitalWrite(motorPin2, HIGH);if(flag == 0){Serial.println(“Derecha”);flag=1;}}else if (state == ‘2’) {digitalWrite(motorPin1, HIGH);digitalWrite(motorPin2, LOW);if(flag == 0){Serial.println(“Izquierda”);flag=1;}}}

 Video

[youtube]https://www.youtube.com/watch?v=7HiP-mMcAEE&list=UUwGv15N3Gi7Y6_oR-m28mAw[/youtube]

/ * * Control de motor DC con Smartphone vía bluetooth. * creado por Rui Santos, http://randomnerdtutorials.com* /

int motorPin1 = 3; // pin 2 en L293D ICint motorPin2 = 4; // pin 7 en L293D ICint enablePin = 5; // pin 1 en L293D ICestado intbandera de int = 0; // se asegura de que la serie solo imprima una vez que el estado configuración vacía () { // establece los pines como salidas:

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

pinMode (motorPin1, SALIDA); pinMode (motorPin2, SALIDA); pinMode (enablePin, SALIDA); // establece enablePin high para que el motor pueda encenderse: digitalWrite (enablePin, HIGH); // inicializar la comunicación serial a 9600 bits por segundo: Serial.begin (9600);} bucle de vacío () { // si alguna fecha es enviada, la lee y guarda en estado if (Serial.available ()> 0) { state = Serial.read (); flag = 0; } // si el estado es '0' el motor DC se apagará if (estado == '0') { digitalWrite (motorPin1, LOW); // establece el pin 2 en L293D bajo digitalWrite (motorPin2, LOW); // establece el pin 7 en L293D bajo if (flag == 0) { Serial.println ("Motor: apagado"); bandera = 1; } } // si el estado es '1' el motor girará a la derecha si no (estado == '1') { digitalWrite (motorPin1, LOW); // establece el pin 2 en L293D bajo digitalWrite (motorPin2, ALTO); // establece el pin 7 en L293D alto if (flag == 0) { Serial.println ("Motor: right"); bandera = 1; } } // si el estado es '2' el motor girará a la izquierda si no (estado == '2') { digitalWrite (motorPin1, HIGH); // establece el pin 2 en L293D alto digitalWrite (motorPin2, LOW); // establece el pin 7 en L293D bajo if (flag == 0) { Serial.println ("Motor: left"); bandera = 1; } }}

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

Arduino - Control DC Motor a través de Bluetooth

En este proyecto controlaremos un motor de corriente continua con un teléfono inteligente a través de bluetooth.

Este proyecto es genial para aprender más sobre: Motores de corriente continua

Interfaz de Arduino con tu smartphone

Bluetooth

L293D IC

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

Parts required

Arduino UNO  – read Best Arduino Starter Kits 1x Bluetooth Module (for example: HC-05 or 06) 1x Smartphone (any Android will work)

BlueTerm application

1x L293D IC

1x DC motor 1x Breadboard Jumper Cables

You can use the preceding links or go directly to MakerAdvisor.com/tools to find all the parts for your projects at the best price!

SchematicsENROLL IN: Arduino Step-by-step Projects Course -

Build 25 ProjectsI can only TX and RX cables after you upload the Arduino code.

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

Dos errores comunes

• Debes quitar los cables RX y TX cuando estés cargando el boceto en tu Arduino.• A veces las personas conectan el TX del módulo bluetooth al TX del Arduino ... eso es incorrecto y no funciona. Asegúrese de conectarlo correctamente, el TX en RX y el RX en TX.

Nota:Si el módulo Bluetooth HC-05 solicita una contraseña, es ‘1234’.Sube este código a continuación¡Asegúrate de quitar los cables de RX y TX; de lo contrario, el código no se cargará correctamente!/*

 * Control DC motor with Smartphone via bluetooth

 * created by Rui Santos, http://randomnerdtutorials.com

*/

int motorPin1 = 3; // pin 2 on L293D IC

int motorPin2 = 4; // pin 7 on L293D IC

int enablePin = 5; // pin 1 on L293D IC

int state;

int flag=0;        //makes sure that the serial only prints

once the state

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

 

void setup() {

    // sets the pins as outputs:

    pinMode(motorPin1, OUTPUT);

    pinMode(motorPin2, OUTPUT);

    pinMode(enablePin, OUTPUT);

    // sets enablePin high so that motor can turn on:

    digitalWrite(enablePin, HIGH);

    // initialize serial communication at 9600 bits per

second:

    Serial.begin(9600);

}

 

void loop() {

    //if some date is sent, reads it and saves in state

    if(Serial.available() > 0){    

      state = Serial.read();  

      flag=0;

    }  

    // if the state is '0' the DC motor will turn off

    if (state == '0') {

        digitalWrite(motorPin1, LOW); // set pin 2 on L293D

low

        digitalWrite(motorPin2, LOW); // set pin 7 on L293D

low

        if(flag == 0){

          Serial.println("Motor: off");

          flag=1;

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

        }

    }

    // if the state is '1' the motor will turn right

    else if (state == '1') {

        digitalWrite(motorPin1, LOW); // set pin 2 on L293D

low

        digitalWrite(motorPin2, HIGH); // set pin 7 on L293D

high

        if(flag == 0){

          Serial.println("Motor: right");

          bandera = 1 ; } } // si el estado es '2' el motor

gire a la izquierda otra cosa si ( estado == '2' ) {        

digitalWrite ( motorPin1 , ALTO ); // establece el pin 2 en

L293D high         digitalWrite ( motorPin2 , LOW ); //

establece el pin 7 en L293D low if ( flag == 0 ) { Serial .

println ( "Motor: left" );           flag = 1

       

   

   

   

       

         

; } } }

       

   

Prof. Martín Hernández Macías México/noviembre/2018

Módulo II // Submódulo 1Implementa Circuitos Digitales

ver proyectos en bruto / Control_DC_motor_with_Smartphone_via_bluetooth.c

Para la comunicación de Android con nuestro módulo bluetooth, he usado la aplicación BlueTerm, es completamente gratis, así que solo tienes que ir a "Play store" y descargarla. Luego, solo necesita conectar su smarthphone con el módulo bluetooth. Recuerde retirar los cables TX y RX. (Puedes ver en el video de YouTube a continuación cómo se hace).

Solo he configurado 3 comandos para controlar el motor de CC: '0' - apaga el motor de corriente continua

'1' - El motor de corriente continua gira a la derecha

'2' - El motor de corriente continua gira hacia la izquierda

Prof. Martín Hernández Macías México/noviembre/2018