Upload
others
View
35
Download
0
Embed Size (px)
Citation preview
0
PROYECTO VELOCISTA
BARRA_PAN
ALUMNO: ALEJANDRO PÉREZ SÁNCHEZ
INSTITUTO: I.E.S.JOAN MIRO
LOCALIDAD: SAN SEBASTIAN DE LOS REYES
CURSO: 2º DPE
1
INDICE
1. INTRODUCCIÓN
2. ESQUEMA ELÉCTRICO DE SIMULACIÓN DEL RASTREADOR
3. PROGRAMAS DEL ROBOT
3.1. PROGRAMAS DE TEST
3.1.1. DIAGRAMA FLUJO LEDS
3.1.2. PROGRAMA LEDS
3.1.3. DIAGRAMA FLUJO MOTOR DERECHO
3.1.4. PROGRAMA MOTOR DERECHO
3.1.5. DIAGRAMA FLUJO MOTOR IZQUIERDO
3.1.6. PROGRAMA MOTOR IZQUIERDO
3.1.7. DIAGRAMA FLUJO CONTROL MOTOR DERECHO
3.1.8. PROGRAMA CONTROL MOTOR DERECHO
3.1.9. DIAGRAMA DE FLUJO CONTROL MOTOR IZQUIERDO
3.1.10. PROGRAMA CONTROL MOTOR IZQUIERDO
3.1.11. DIAGRAMA DE FLUJO SENSORES
3.1.12. PROGRAMA SENSORES
4. VELOCISTA BARRA_PAN
4.1. ESQUEMA ELÉCTRICO DE SIMULACIÓN
4.2. DIAGRAMA DE FLUJO BARRA_PAN
4.3. PROGRAMA VELOCISTA BARRA_PAN
5. DIAGRAMA DE BLOQUES
5.1. ESQUEMA ELÉCTRICO DEL ROBOT
5.2. FUENTE DE ALIMENTACIÓN
5.3. SISTEMA DE CONTROL
5.4. CONTROL DE POTENCIA
5.5. SENSORES
6. DISEÑO DE PLACAS
6.1. FUENTE ALIMENTACIÓN
6.2. SISTEMA DE CONTROL
6.3. CONTROL DE POTENCIA
6.4. SENSORES
7. DISEÑO MECÁNICO
8. LISTA DE COMPONENTES Y COSTE ECONÓMICO
9. COSTE TOTAL DEL PROYECTO
10. ANEXO
2
1. INTRODUCCIÓN
Este proyecto consiste en el diseño y montaje de un robot capaz de seguir
una línea negra sobre un fondo blanco. El robot debe seguir un recorrido
con forma ovalada, lo más rápido posible con el fin de alcanzar al
contrario, si lo hace, este será eliminado.
El robot tiene tres apoyos un soporte en la parte delantera y dos motores
en la parte posterior. Los motores se controlan a través de 8 sensores
infrarrojos colocados estratégicamente en la parte delantera del robot,
dependiendo de la posición del robot conforme a la línea negra estos
rectificaran la dirección del robot con el fin de no perderse.
El control se realiza a través de un microcontrolador de microchips (PIC
16F876A). Además se ha dotado al robot con unos leds que nos indicarán
la posición respecto a la línea negra para saber en cada momento en la
posición de lectura que nos encontramos. También se ha dotado al robot
con la posibilidad de usarlo de forma teledirigida, mediante un mando de
radiofrecuencia.
Para llevar a cabo el diseño del proyecto me he ayudado en una
herramienta llamada Proteus, que nos permite realizar la simulación tanto
de hardware como de software conjuntamente, permitiendo realizar
pruebas paso a paso. Además este programa nos ha permitido desarrollar
las placas del proyecto junto con la carrocería del mismo.
Hemos preparado al robot para poder cargar el software directamente
sobre el microcontrolador sin necesidad de extraerlo del robot. Para ello
utilizaremos una herramienta llamada PICdownloader. Los micros tienen
que tener previamente cargados un programa para poder comunicarnos
con el ordenador personal.
5
3.1.2 PROGRAMA DE LEDS
//*******************PRUEBAS LEDS *********************
#include <16F876A.h>
#FUSES XT,NOWDT
#use delay(clock=1000000)
#BYTE TRISA = 0x85 // TRISA en 85h.
#BYTE portA = 0x05 // PORTA en 05h.
#BIT OD1 = 0x05.0
#BIT OD2 = 0x05.1
#BIT OD3 = 0x05.2
#BIT OD4 = 0x05.3
#BIT OI1 = 0x05.4
#BIT OI2 = 0x05.5
#BYTE TRISB = 0x86 // TRISB en 86h.
#BYTE portB = 0x06 // PORTB en 06h.
#BIT rb0 = 0x06.0
6
#BIT rb1 = 0x06.1
#BIT rb2 = 0x06.2
#BIT rb3 = 0x06.3
#BIT O1 = 0x06.4
#BIT O2 = 0x06.5
#BIT O3 = 0x06.6
#BIT O4 = 0x06.7
#BYTE TRISC = 0x87 // TRISC en 87h.
#BYTE portC = 0x07 // PORTC en 07h.
#BIT OI3 = 0x07.0
#BIT OS5 = 0x07.1
#BIT OS6 = 0x07.2
#BIT BUS1 = 0x07.3
#BIT BUS2 = 0x07.4
#BIT OI4 = 0x07.5
#BIT rc6 = 0x07.6
#BIT rc7 = 0x07.7
// ********** Función principal o programa principal ********** ***
void main()
7
{
TRISA = 0B11111111;
TRISB = 0B00000011;
TRISC = 0B00100111;
rb2 = 1;
rb3 = 1;
O1 = 0;
O2 = 0;
O3 = 0;
O4 = 0;
BUS1 = 0;
BUS1 = 0;
rc6 = 0;
rc7 = 0;
while(TRUE){
rb2 = 0;
delay_ms(500);
rb2 = 1;
8
delay_ms(500);
rb3 = 0;
delay_ms(500);
rb3 = 1;
delay_ms(500);
rb2 = 0;
rb3 = 0;
delay_ms(500);
rb2 = 1;
rb3 = 1;
delay_ms(500);
}
}
10
3.1.4 PROGRAMA MOTOR DERECHO
//********************Motor derecho **********************
#include <16F876A.h>
#FUSES XT,NOWDT
#use delay(clock=1000000)
#BYTE TRISA = 0x85 // TRISA en 85h.
#BYTE portA = 0x05 // PORTA en 05h.
#BIT OD1 = 0x05.0
#BIT OD2 = 0x05.1
#BIT OD3 = 0x05.2
#BIT OD4 = 0x05.3
#BIT OI1 = 0x05.4
#BIT OI2 = 0x05.5
#BYTE TRISB = 0x86 // TRISB en 86h.
#BYTE portB = 0x06 // PORTB en 06h.
#BIT rb0 = 0x06.0
#BIT rb1 = 0x06.1
11
#BIT rb2 = 0x06.2
#BIT rb3 = 0x06.3
#BIT O1 = 0x06.4
#BIT O2 = 0x06.5
#BIT O3 = 0x06.6
#BIT O4 = 0x06.7
#BYTE TRISC = 0x87 // TRISC en 87h.
#BYTE portC = 0x07 // PORTC en 07h.
#BIT OI3 = 0x07.0
#BIT OS5 = 0x07.1
#BIT OS6 = 0x07.2
#BIT BUS1 = 0x07.3
#BIT BUS2 = 0x07.4
#BIT OI4 = 0x07.5
#BIT rc6 = 0x07.6
#BIT rc7 = 0x07.7
12
// *********** Función principal o programa principal **************
void main()
{
TRISA = 0B11111111;
TRISB = 0B00000011;
TRISC = 0B00100111;
rb2 = 1;
rb3 = 1;
O1 = 0;
O2 = 0;
O3 = 0;
O4 = 0;
BUS1 = 0;
BUS1 = 0;
rc6 = 0;
rc7 = 0;
13
while(TRUE){
OS5 = 1;
O1 = 0;
O2 = 0;
delay_ms(1000);
OS5 = 1;
O1 = 0;
O2 = 1;
delay_ms(1000);
OS5 = 1;
O1 = 1;
O2 = 1;
delay_ms(1000);
OS5 = 1;
O1 = 1;
O2 = 0;
16
3.1.6 PROGRAMA MOTOR IZQUIERDO
//**************Motor IZQUIERDO *****************************
#include <16F876A.h>
#FUSES XT,NOWDT
#use delay(clock=1000000)
#BYTE TRISA = 0x85 // TRISA en 85h.
#BYTE portA = 0x05 // PORTA en 05h.
#BIT OD1 = 0x05.0
#BIT OD2 = 0x05.1
#BIT OD3 = 0x05.2
#BIT OD4 = 0x05.3
#BIT OI1 = 0x05.4
#BIT OI2 = 0x05.5
#BYTE TRISB = 0x86 // TRISB en 86h.
#BYTE portB = 0x06 // PORTB en 06h.
#BIT rb0 = 0x06.0
#BIT rb1 = 0x06.1
#BIT rb2 = 0x06.2
17
#BIT rb3 = 0x06.3
#BIT O1 = 0x06.4
#BIT O2 = 0x06.5
#BIT O3 = 0x06.6
#BIT O4 = 0x06.7
#BYTE TRISC = 0x87 // TRISC en 87h.
#BYTE portC = 0x07 // PORTC en 07h.
#BIT OI3 = 0x07.0
#BIT OS5 = 0x07.1
#BIT OS6 = 0x07.2
#BIT BUS1 = 0x07.3
#BIT BUS2 = 0x07.4
#BIT OI4 = 0x07.5
#BIT rc6 = 0x07.6
#BIT rc7 = 0x07.7
// ************* Función principal o programa principal ***********
void main()
{
TRISA = 0B11111111;
18
TRISB = 0B00000011;
TRISC = 0B00100111;
rb2 = 1;
rb3 = 1;
O1 = 0;
O2 = 0;
O3 = 0;
O4 = 0;
BUS1 = 0;
BUS1 = 0;
rc6 = 0;
rc7 = 0;
while(TRUE){
OS6 = 1;
O3 = 0;
O4 = 0;
delay_ms(1000);
OS6 = 1;
O3 = 0;
19
O4 = 1;
delay_ms(1000);
OS6 = 1;
O3 = 1;
O4 = 1;
delay_ms(1000);
OS6 = 1;
O3 = 1;
O4 = 0;
delay_ms(1000);
OS6 = 1;
O3 = 1;
O4 = 1;
delay_ms(1000);
}
}
21
3.1.8 PROGRAMA CONTROL MOTOR DERECHO
//*********************Motor derecho *********************
#include <16F876A.h>
#FUSES XT,NOWDT
#use delay(clock=1000000)
#BYTE TRISA = 0x85 // TRISA en 85h.
#BYTE portB = 0x05 // PORTA en 05h.
#BIT OD1 = 0x05.0
#BIT OD2 = 0x05.1
#BIT OD3 = 0x05.2
#BIT OD4 = 0x05.3
#BIT OI1 = 0x05.4
#BIT OI2 = 0x05.5
#BYTE TRISB = 0x86 // TRISB en 86h.
#BYTE portB = 0x06 // PORTB en 06h.
#BIT rb0 = 0x06.0
22
#BIT rb1 = 0x06.1
#BIT rb2 = 0x06.2
#BIT rb3 = 0x06.3
#BIT O1 = 0x06.4
#BIT O2 = 0x06.5
#BIT O3 = 0x06.6
#BIT O4 = 0x06.7
#BYTE TRISC = 0x87 // TRISC en 87h.
#BYTE portC = 0x07 // PORTC en 07h.
#BIT OI3 = 0x07.0
#BIT OS5 = 0x07.1
#BIT OS6 = 0x07.2
#BIT BUS1 = 0x07.3
#BIT BUS2 = 0x07.4
#BIT OI4 = 0x07.5
#BIT rc6 = 0x07.6
#BIT rc7 = 0x07.7
int16 TH =65535;
23
// *************** Función principal o programa principal ***********
void main()
{
TRISA = 0B11111111;
TRISB = 0B00000011;
TRISC = 0B00100111;
rb2 = 1;
rb3 = 1;
O1 = 0;
O2 = 0;
O3 = 0;
O4 = 0;
BUS1 = 0;
BUS1 = 0;
rc6 = 0;
rc7 = 0;
setup_timer_2(T2_DIV_BY_16,249,1);
setup_ccp2(CCP_PWM);
24
while (true)
{
O1 = 1;
O2 = 0;
delay_ms(200);
TH = 0;
set_pwm2_duty(TH);
delay_ms(1000);
TH = 150;
set_pwm2_duty(TH);
delay_ms(1000);
TH = 300;
set_pwm2_duty(TH);
25
delay_ms(1000);
TH = 450;
set_pwm2_duty(TH);
delay_ms(1000);
TH = 600;
set_pwm2_duty(TH);
delay_ms(1000);
TH = 750;
set_pwm2_duty(TH);
delay_ms(1000);
TH = 950;
set_pwm2_duty(TH);
delay_ms(1000);
26
TH = 1000;
set_pwm2_duty(TH);
delay_ms(1000);
}
}
3.1.9 DIAGRAMA DE FLUJO CONTROL MOTOR IZQUIERDO
27
3.1.10 PROGRAMA CONTROL MOTOR IZQUIERDO
//**************Motor Izquierdo *******************
#include <16F876A.h>
#FUSES XT,NOWDT
#use delay(clock=1000000)
#BYTE TRISA = 0x85 // TRISA en 85h.
#BYTE portA = 0x05 // PORTA en 05h.
#BIT OD1 = 0x05.0
#BIT OD2 = 0x05.1
#BIT OD3 = 0x05.2
#BIT OD4 = 0x05.3
#BIT OI1 = 0x05.4
#BIT OI2 = 0x05.5
#BYTE TRISB = 0x86 // TRISB en 86h.
#BYTE portB = 0x06 // PORTB en 06h.
#BIT rb0 = 0x06.0
28
#BIT rb1 = 0x06.1
#BIT rb2 = 0x06.2
#BIT rb3 = 0x06.3
#BIT O1 = 0x06.4
#BIT O2 = 0x06.5
#BIT O3 = 0x06.6
#BIT O4 = 0x06.7
#BYTE TRISC = 0x87 // TRISC en 87h.
#BYTE portC = 0x07 // PORTC en 07h.
#BIT OI3 = 0x07.0
#BIT OS5 = 0x07.1
#BIT OS6 = 0x07.2
#BIT BUS1 = 0x07.3
#BIT BUS2 = 0x07.4
#BIT OI4 = 0x07.5
#BIT rc6 = 0x07.6
#BIT rc7 = 0x07.7
int16 TH =65535;
29
// ******************** Función principal o programa principal ******
void main()
{
TRISA = 0B11111111;
TRISB = 0B00000011;
TRISC = 0B00100111;
rb2 = 1;
rb3 = 1;
O1 = 0;
O2 = 0;
O3 = 0;
O4 = 0;
BUS1 = 0;
BUS1 = 0;
rc6 = 0;
rc7 = 0;
setup_timer_2(T2_DIV_BY_16,249,1);
setup_ccp1(CCP_PWM);
30
while (true) // Bucle infinito.
{
O3 = 1;
O4 = 0;
delay_ms(200);
TH = 0;
set_pwm1_duty(TH);
delay_ms(1000);
TH = 150;
set_pwm1_duty(TH);
delay_ms(1000);
TH = 300;
set_pwm1_duty(TH);
delay_ms(1000);
31
TH = 450;
set_pwm1_duty(TH);
delay_ms(1000);
TH = 600;
set_pwm1_duty(TH);
delay_ms(1000);
TH = 750;
set_pwm1_duty(TH);
delay_ms(1000);
TH = 950;
set_pwm1_duty(TH);
delay_ms(1000);
33
3.1.12 PROGRAMA SENSORES
// ****************** sensores ***************************
#include <16F876A.h>
#FUSES XT,NOWDT
#use delay(clock=1000000)
#BYTE TRISA = 0x85 // TRISA en 85h.
#BYTE portA = 0x05 // PORTA en 05h.
#BIT OD1 = 0x05.0
#BIT OD2 = 0x05.1
#BIT OD3 = 0x05.2
#BIT OD4 = 0x05.3
#BIT OI1 = 0x05.4
#BIT OI2 = 0x05.5
#BYTE TRISB = 0x86 // TRISB en 86h.
#BYTE portB = 0x06 // PORTB en 06h.
#BIT rb0 = 0x06.0
34
#BIT rb1 = 0x06.1
#BIT rb2 = 0x06.2
#BIT rb3 = 0x06.3
#BIT O1 = 0x06.4
#BIT O2 = 0x06.5
#BIT O3 = 0x06.6
#BIT O4 = 0x06.7
#BYTE TRISC = 0x87 // TRISC en 87h.
#BYTE portC = 0x07 // PORTC en 07h.
#BIT OI3 = 0x07.0
#BIT OS5 = 0x07.1
#BIT OS6 = 0x07.2
#BIT BUS1 = 0x07.3
#BIT BUS2 = 0x07.4
#BIT OI4 = 0x07.5
#BIT rc6 = 0x07.6
#BIT rc7 = 0x07.7
// *************** Función principal o programa principal ***********
void main()
35
{
TRISA = 0B11111111; // Defines Puerto B como entrada de
datos.
TRISB = 0B00000011; // Defines Puerto B como entrada de
datos.
TRISC = 0B00100111; // Defines Puerto B como entrada de
datos.
rb2 = 1;
rb3 = 1;
O1 = 0;
O2 = 0;
O3 = 0;
O4 = 0;
BUS1 = 0;
BUS1 = 0;
rc6 = 0;
rc7 = 0;
while(TRUE){
if (OD1 == 1)
rb2 = 0;
else {
rb2 = 1;
43
La fuente de alimentación se divide en dos partes:
-Adaptador de señales PC-UC: esta parte es la que comunica el
ordenador personal (PC) con el microcontrolador PIC16F876A.
Consiste en un circuito que intercambia niveles TTL a RS-232 donde:
Un 0 en TTL equivale a 0V en RS-232, equivalente a una tensión
comprendida entre 3 y 15 V.
Un 1 en TTL equivale a 5V en RS-232, equivalente a una tensión
comprendida entre -3 y -15V.
-Regulador 9v/5v: la fuente de alimentación es un circuito que se
encarga de obtener un voltaje de 5V a partir de una tensión
superior a 9V, para ello utiliza el regulador 7805 que nos puede dar
una corriente máxima de 1 A.
Los condensadores C1, C2, C3, C4 y C15 son condensadores de filtro
que utilizaremos para quitar ruido a la señal.
El diodo D1 tiene la misión de proteger el circuito en caso de
alimentar al revés el circuito.
Mientras que el diodo led D3 únicamente nos indica si el circuito
está en funcionamiento, estando limitada su corriente a 20 mA por
la resistencia R1.
45
El microcontrolador PIC16F876A se encarga de realizar el control del robot
empleando control de velocidad (PWM), sentido de giro de los motores,
lectura de los sensores e indicación de posición mediante los leds. El
microcotrolador trabaja a una frecuencia de 1 MHz y ejecuta una
instrucción en 4uS.
Como podemos observar en el esquema tenemos un interruptor SW3 que
nos sirve para cargar el programa procedente de PC .
En cambio SW2 servirá como un botón de inicio para el funcionamiento
del robot.
Cuando el robot este colocado correctamente, esto quiere decir que D15 y
D14 han de estar encendidos, podremos activar el interruptor SW2, que
junto con R31, R32 y C17 sirven a su vez para resetear el robot.
Los condensadores C13 y C14 junto con el condensador de cuarzo X1 se
encargan de marcar la frecuencia de trabajo del micro.
La tarjeta receptora CEBEK C-0504, es un híbrido encargado de recibir vía
radiofrecuencia, los datos digitales procedentes del mando. La señal
digital tiene que tener una frecuencia entre 20 Hz < f0 < 4KHz y una
portadora de 433,92 MHz. Este circuito demodula la señal de AM
obteniendo los datos transmitidos. Sirve para realizar un coche
teledirigido.
Los bornier J4 al J11 son conectores preparados para poder conectar
todos los sensores mediante buses I2C. Para activar los sensores en el
modo I2C se debe activar colocando un jumper en JUM4.
46
5.4 CONTROL DE POTENCIA
Este circuito tiene la función de alimentar los motores de forma
controlada y a su vez controlar el sentido de giro de los mismos.
O1 y O2 controlan el sentido de giro del MOT1 mientras que O3 y O4
controlan el giro de MOT2.
Las entradas OS5 y OS6 habilitaran el funcionamiento de los
optoacopladores U7(para el motor izquierdo) y U8( para el motor
derecho), los transistores Q1, Q2, Q3 y Q4 funcionaran como
interruptores dependiendo de la señal introducida por OS5 y OS6.
47
EL optoacoplador tiene la misión de aislar eléctricamente el circuito de
control con el de potencia. Se obtiene una tensión VCE proporcional a la
luz que incide en la base del TRT (en caso de rotura del motor, la barrera
de luz protege el sistema de control ya que esta aguanta más de 2000V.
Dependiendo de la señal PWM que metamos por OS5 y OS6 variara la
velocidad con la que giraran los motores y esto se emplea para que el
robot gire en las curvas.
49
El sensor infrarrojo CNY70 funciona de la siguiente manera:
El diodo emite una señal infrarroja sobre una superficie, si es blanca la luz
rebota y si es negra la luz se absorbe.
Un optotransistor recibe la luz infrarroja, este se satura y obtiene un 0
lógico.
Si el optotransistor no recibe la luz infrarroja este se corta y se obtiene un
1 lógico. U11 y U12 son dos integrados 74HC14 que funcionan como
puertas inversoras para acondicionar la señal que procede de los sensores.
Las salidas de los infrarrojos se dividen en OD1, OD2, OD3, OD4 por un
lado ya que corresponden a los sensores de la parte derecha colocados de
menor a mayor de adentro hacia afuera, es decir, OD1 seria interior y OD4
el exterior. Y por otro lado OI1, OI2, OI3 y OI4.
6. DISEÑO DE PLACAS DE CIRCUITO IMPRESO
6.1 FUENTE DE ALIMENTACIÓN
50
En esta imagen se observa la cara componentes y la cara pistas
top_copper de la fuente de alimentación.
Esta placa tiene unas dimensiones de 70x75mm y tres agujeros colocados
estratégicamente para fijar las placas al chasis del coche.
En esta otra imagen vemos la cara pistas botton copper.
6.2 SISTEMA DE CONTROL
51
En esta imagen se observa la cara componentes y la cara pistas
top_copper del sistema de control del robot.
Esta placa tiene unas dimensiones de 70x75mm y tres agujeros colocados
estratégicamente para fijar las placas al chasis del coche.
En esta otra imagen vemos la cara pistas botton copper.
52
6.3 CONTROL DE POTENCIA
En esta imagen se observa la cara componentes y la cara pistas
top_copper de control de potencia del robot.
Esta placa tiene unas dimensiones de 70x75mm y tres agujeros colocados
estratégicamente para fijar las placas al chasis del coche.
En esta otra imagen vemos la cara pistas botton copper.
53
6.4 SENSORES
En esta imagen se observa la cara componentes y la cara pistas
top_copper de sensores del robot.
Esta placa tiene unas dimensiones de 48x110mm y cuatro agujeros
colocados estratégicamente para fijar las placas al chasis del coche.
En esta otra imagen vemos la cara pistas botton copper.
55
8. LISTA DE COMPONENTES Y COSTE ECONÓMICO
RESISTENCIAS
CANTIDAD COMPONENTES VALOR PRECIO
18 R1,R3,R4,R7,R9,R11,R13,R23,R24,R28,R29,R30,R35,R37,R42,R44,R46,R50 220 0.05
17 R2,R4,R6,R8,10,R12,R17,R22,R25,R27,R28,R33,R34,R38,R41,R43,R45 10K 0.05
1 R31 100 0.05
1 RV1 1K 0.05
CONDENSADORES
CANTIDAD COMPONENTES VALOR PRECIO
7 C1,C3,C5,C6,C7,C8,C15 1uF 0,1
5 C2,C4,C9,C10,C11 100nF 0.05
TRANSISTORES
CANTIDAD COMPONENTES VALOR PRECIO
4 Q1,Q2,Q3,Q4 BD139 0.35
INTEGRADOS
CANTIDAD COMPONENTES VALOR PRECIO
6 U3,U4,U5,U6,U7,U8 OPTO-NPN 0.35
1 U12 PIC 4.5
1 U9 L298 3.5
1 U1 7805 1
1 U2 MAX232 1.5
2 U11,U21 74HC14 0.5
DIODOS
CANTIDAD COMPONENTES VALOR PRECIO
11 D1,D2,D4,D5,D6,D7,D8,D9,D10,D11 1N4007 0.2
2 LED MODO,D3 LED-GR 0.15
2 D14,D15 LED-YE 0.15
56
COMPONENTES VARIOS
8 J4,J5,J6,J7,J8,J9,J10,J11 BORNIER4 0.6
2 MO1,MO2, JP,BAT BORNIER2 0.3
2 SW2,SW3 PULSADORES 0.4
6 J1,J1A,J2,J2A,J3,J3A BORNIER10 1
4 CON1, MASA2,MASA3,MASA4 BORNIER1 0.01
1 RF1 CEBEK 7
1 S SOPORTE PLASTICO 1.5
2 RU RUEDAS 2.5
1 X1 CRYSTAL 0.45
3 SMH2 SEPARADOR 2CM 0.3
7 SMH1.5 SEPARADOR 1.5CM 0.3
3 SMH1 SEPARADOR 1CM 0.3
4 JUMPER1,2,3,4 CONN-SIL3 0.15
3 T3 TUERCAS METRICA
3 0.02
7 TOR TORNILLOS M3 0.1
1 BAT BAT9V 12
3 PL1,2,3 PLACA CI 70X75 5
1 PL4 PLACA CI 48X110 5
4 BR BRIDAS 0.1
1 INT INTERRUPTOR 1
8 OD1,OD2,OD3,OD4,OI1,OI2,OI3,OI4 CNY70 0.35
PRECIO TOTAL DE LOS COMPONENTES 49€
9. COSTE TOTAL DEL PROYECTO
PROYECTO BARRA_PAN
TAREAS HORAS PRECIO/HORA TOTAL
DESARROLLO HARDWARE 10 20 200
DESARROLLO SOFTWARE 25 30 750
BUSQUEDA DE MATERIALES 5 10 50
MONTAJE PROTOTIPO 8 15 120
PRUEBAS PROTOTIPO 12 30 360
COSTE DE COMPONENTES - - 49
DOCUMENTACION 12 15 180
1709
57
10. ANEXO
En esta página se puede ver las características del PIC16F827:
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010239