Memoria Proyecto DAMCarmen Torrent Iruela
Ciclo Desarrollo de Aplicaciones MultiplataformaMemoria del Proyecto de DAMIES Abastos. Curso 2015/16. Grupo7U. 31 de mayo de 2016
Tutor : Ema Oliva Migotto
Sistema de control y visualización de mensajes para un microscopio motorizado
Índice
1. Introducción2. Planificación del Proyecto3. Diseño del Proyecto4. Desarrollo del Proyecto5. Evaluación y Conclusiones
1.Introducción● La Empresa● Justificación y Objetivos del Proyecto
La empresa
Micro CounterContadores celulares
Microscopio motorizado
Justificación y objetivos
◎ Necesidad de otras formas de comunicación además de la interfaz gráfica○ Pantalla LCD
◎ Sustituir botones de la interfaz por un joystick
2.Planificación
Cómo organizar tareas:Scrum
◎ Iteraciones de duración fija “Sprints”◎ Prioridades recogidas en el “Product Backlog”◎ ¿Qué podemos hacer? “Sprint Backlog”◎ Seguimiento: reuniones y “Scrum Board”.
Análisis, desarrollo, prueba, integración, validación y despliegue en ciclos semanales
Cómo organiza tareasnuestro equipo
documen-tación
pruebashow
todo
Ejecución
descripción
Repositorio
IPU’s
3.Diseño● Hardware● Software
Hardware
◎ Arduino Uno◎ LCD◎ Joystick◎ Motores paso a paso (steppers)◎ Arduino dual L6470 Stepper Motor Shield
Arduino Uno
Steppers y controladores
Software
◎ Arduino Uno◎ Controlando un LCD◎ Utilizando un Joystick◎ Arduino master/slave◎ Motores con Arduino ◎ Comandos de comunicación con Arduino
Algunas funciones
#include <LiquidCrystal.h>
int ledPin = 13;
digitalWrite ( ledPin, VALUE)
pinMode( ledPin, MODE)
delay (milisegundos)
Controlando un LCD
Utilizando un joystick
Serial
Montajes Master/Slave
Wire
Libreria StepperControl de motores a través de chip con H-Brige
Motores con Arduino
Libreria SPIComunicación SPI(Serial Peripheral Interface)
◎ MISO◎ MOSI◎ SCK◎ SS /CS
Comandos de Comunicación con Arduino
C# Serial PortObjeto SerialPortAbre puerto Serial
Envío y recepción desde ordenador- Construcción trama- SerialPort.Write(s)- SerialPort.
ReadExisting()
Envío y recepción desde arduino- Serial.begin(9600)- Leer del Serial y guarda la trama- Extrae partes y comprueba- Ejecuta el comando dSPIN-Serial.print al ordenador
4.Desarrollo● Conexión con LCD● Control de movimiento con Joystick
Elementos previos
Planteamiento
L6470 Shield
Arduino Master
Arduino Slave
Tx Rx
Comandos:“HOLAA” “JOYON” “MOV_X”
JOYONdSPIN_Move (MOV_X)HOLAA?? lcd.Print(“...”)
Conexión con LCD
C#InterfazComandos propios“LCDR”“HOLAA”“CLEAR”Construye y envía la trama, mensaje = com + arg + CRC
Arduino MasterAbrir comunicación Serial.begin(9600)Recibe la trama Para reenviar al slave es necesarioSerial.print (mensaje) Posición dentro del intérprete de comandos.
Arduino SlaveLiquidCrystal.hAbrir comunicación Serial.begin(9600)Recibe el mensajeEn el intérprete de añadir los comandos propios y/o reinterpretar los existenteslcd.print(“Hola Celeromics!”)Evitar serial.print(“”)
Control de movimiento con Joystick
MicroscopioEjes X e YPuntos de parada pines SW en L6470Límites por software
C#Comandos joystickAl activar (JOYON)sendCMD(arduino,
“JOY_X”, coordXPosition)
Al desactivar(JOYOF), mandar comando y esperar respuesta. Se recoge el número de pasos que ha dado el motor y se establece la nueva posición.
Arduino Se recibe el comando, y se activa la lectura de valores del joystickSe crea la función control de motores con joystick en un nuevo sketchEl comando JOYOF desactiva el joystic y devuelve los pasos recorridos
5.Evaluación y Conclusiones