# Proyecto Carrito Seguidor de lineas



## javier112 (Abr 28, 2012)

Buenas les presento mi proyecto seguidor de lineas, aunque es muy teorico por si podriais encontrar fallas en mi diseño.

El programa esta echo en Flowcode ya que al no saber nada de programacion fue la via mas grafica que encontre para realizarlo

el S3 esta leyendo el estado esperando hasta que le llegue un 1 para activar los 2 motores
el S2 esta cuando le llegue un 1 activara un motor siempre que el S3 no este activo
el S1 esta cuando le llegue un 1 activara un motor siempre que el S3 no este activo

Como Programador de PICs como estoi iniciandome en este campo encontre un esquema bastante sencillo el COM84 el cual me decian que usara el prog84 para grabar el pic pero e tenido problemas por que me dice que esta obsoleto el que me descargue sabeis de alguno que pudiera funcionar? con este esquema? algun consejo?

Ante todo gracias por cualquier aporte


----------



## xmatrix (Abr 28, 2012)

mira en cuanto al diseño de tu parte de control lo veo bien pero en cuanto a la parte de potencia esta mal ya que el pic no podra alimentar los motores y por ende los quemaras usa un optoacoplador o usa algun transistor darlignton o un punte h para esto y con ello podras controlar incluso con el punte x muchos movimientos en dichos motores


----------



## javier112 (Abr 29, 2012)

Muxas gracias por el apunte de la etapa de potencia sabrias si variando las resistencias de los cny70 se podria mejorar el alcance dado que con este montage solo me actuan a 5mm de distancia, lei por algun lugar que podria incrementarse a 1cm / 2cm¿?¿?


----------



## elprofetellez (Abr 30, 2012)

si quieres mayor alcance olvidate de los cny, y utiliza led infrarrojo pareado con fototransistor con filtro lus de dia, es mejor hacer estos sensores que comprar los cny.
por otro lado, vi tu programa, o lo que pusiste de él, y esta incompleto, ademas de incorrecto. que haces con dos ordenes de ingreso dentro de la rama NO de la desición?, y solo mandas a encender una salida en la rama SI, ademas, que hay del macro de componenete que está fuera del bucle y en blanco???. asi solo va a dar vueltas el movil sin ir a ningun lado.
por ultimo, como bien te lo dijeron, utiliza transistores, o uln2803 o l293d para la interfaz motor-pic o lo vas a quemar.
de programador utiliza el ECIO de Matrix o el PICKIT ya se el 2 o el 3. Saludos!


----------



## javier112 (Abr 30, 2012)

A lo Referente al programa si lo siento lo que esta fuera del bucle me colado no pinta nada ayi ni me di cuenta que me habia colado.

El programa es mediante flowcode te explico un poco  el primer interruptor que simula al sensor
Esta en Read State esperando un 0 o un 1.

Si es un 1 Pasa a lo siguiente que es encender los 2 LeD's 
Si es un 0 Pasa a la parte No de la desicion que indica que lea todo el puerto A donde situo las entradas si hay un 0 o 1 y me lo indique a las salidas mediante Led's
si hay un 1 en el RA0 Sacara un 1 por RB0 si hay un 1 en RA1 sacara un 1 en RB1

no se mucho de programacion hay que reconocerlo e estado recibiendo cursos de un hombre que me manda ejercicios mediante flowcode.

En la simulacion que trae el propio programa lo e probado y funciona como te e explicado no se si quiza en la practica no serviria ???

Por lo del programador probare  esos.

Ante todo muchas gracais por los aportes


----------



## elprofetellez (Abr 30, 2012)

javier112 dijo:


> A lo Referente al programa si lo siento lo que esta fuera del bucle me colado no pinta nada ayi ni me di cuenta que me habia colado.
> 
> El programa es mediante flowcode te explico un poco  el primer interruptor que simula al sensor
> Esta en Read State esperando un 0 o un 1.
> ...



Ya veo, estás un poco confundido en el uso del programa, para empezar, no requieres el macro de componente led (de momento), y mucho menos leer el puerto A completo, y menos reflejarlo en el puerto B de esa manera. por otro lado, entonces...., cuantos sensores tienes??

Lo más simple posible:

Dos sensores, dos motores:

Variables: LF  ,   RG  tipo Bit
salidas, RB0 y RB1 (simuladas con led)
Entradas, RA0 y RA1 (simuladas con switch)

INICIO

BUCLE -mientras 1-
Dentro del bucle:

1.- orden de ingreso  variable LF, Bit único RA0
2.- orden de ingreso variable RG, Bit único RA1

DECISION:
si LF=1?
CASO SI:  orden de salida RB0=1 , orden de salida RB1=0
CASO NO: pasa a nueva DECISION: si RG=1?
CASO SI: oden de salida RB0=0, orden de salida RB1=1
CASO NO: orden de salida RB0=1, orden de salida RB1=1
CIERRA BUCLE

FIN

Te invito a que te des una vuelta por el hilo de FLOWCODE 4.

Saludos!


----------



## javier112 (May 1, 2012)

Vale al principio no entendia nada de lo que tratavas de decirme.

despues de cotejar con varios tutoriales de el link que me dijiste quedaria ago como esto?

luego una pregunta la configuracion del chip el oscilador RC / XTAL que significa? 

y el watchdog ?

i varios parametros de advanced no entiendo muy bien


----------



## elprofetellez (May 1, 2012)

en ese caso solo aumentas una variable, una orden de ingreso, y una orden de salida, ademas de una decisión.

sigues ocupando lo mismo.

saludos!


----------



## javier112 (May 13, 2012)

Buenas e estado estos dias adaptando la etapa de potencia con el ULN2803 y tengo 2 preguntas

1ª

El conexionado de este driver se basa basicamente en entrada salida llevar la comun de los diodos a VCC y GND? no? por que no me acaba de dar la suficiente chicha para que el motor funcione fluidamente y entonces se dispara el consumo se amorra la fuente de alimentacion que estoi usando para hacer las pruebas y el pic enpieza a calentarse bastante.

2ª estoi usando 16f84 my pregunta es viendo los datasheet e visto que este pic entrega una salida TTL con un maximo de 20mA si no estoi equivocado mi pregunta es ultimamente e estado midiendo y en la salida me da sobre 2.7v - 3.20v es esto normal? no es baja? no deveria darme de alrededor de 5v?


----------



## elprofetellez (May 13, 2012)

javier112 dijo:


> Buenas e estado estos dias adaptando la etapa de potencia con el ULN2803 y tengo 2 preguntas
> 
> 1ª
> 
> ...




Necesitaríamos ver tu diagrama de conexiones para decirte bien cual es el problema, de otra forma solo estariamos adivinando.

Sin embargo, estoy casi seguro, que no estas conectando la salida del PIC a la entrada del ULN por medio de una resistencia de al menos 10K, con lo cuál NO estás limitando la corriente que el PIC esta suministrando, por eso el calentamiento.

Por lo demas, el ULN es un array de 8 transistores darlington en colector abierto; las patillas de la 1 a la 8 son entradas (en realidad son la base de cada transistor), la patilla 9 es GND, la patilla 10 es Vcc, y las patillas de la 11 a la 18 son salidas (en realidad son los colectores de los transistores).

Sube el diagrama y veremos.


----------



## javier112 (May 14, 2012)

Bueno te subo el esquema que me digiste que subiera.

Una R de 10k no le puse mirando los datasheets me salio una grafica que para tener una salida de 300mA devia tener una entrada de 0,6mA y como el pic me da una salida de 3V puse una resistencia e 4k7 para limitarla.

antetodo gracias por todos los aportes


----------



## javier112 (May 23, 2012)

Buenas de nuevo 

estoi detectando un problema ahora el motor me funciona bien pero me surgio un problema que no entiendo con el pic quiza el problema ya venga de mas atras dado que quiza no me di cuenta el problema que me ocurre es que si no tengo el dedo ( aunque sin tocar nada en el protoboard ) es como si dejara de funcionar el pic. 

me explico ice como una especie de apantallado con mi tester con papel de plata para que yo no induciera ninguna señal al circuito cuando me acercara a medir y cuando media me salian 0  en todas las patas de los puertos del pic sobre 2,4v ( los 1 son de unos 4 - 4,5v )

El caso es que yo soi nuevo y investigando encontre algo de que las patas libres del pic que no uso tendria que conectarlas en modo sumidero ( resistencia de 10k VCC ) o en modo Source ( Resistencia en 10k Masa )

El otro caso que encontre que era posible que el cristal de cuardo podia ser sensible a frecuencias externas y que se solucionava soldando una cable en la carcasa del cristal de cuarzo que valla a masa.

Luego la patilla de MCLR la tengo al aire sin usar deveria poner la resistencia y enviarlo a positivo?

Luego cuando programe el pic desactive el Wachdog eso podria afectar?

Gracias por todos los aportes y ayuda que me aportasteis antetodo.

PD: me kede alucinado con lo de que si me alejava o me acercava al pic sin tocarlo funcionaba el motor mas intensamente y si me alejava cada vez iva mas lento hasta llegar apagarse pero todo esto a una distancia de unos 20 cm si no exagero.


----------



## elprofetellez (May 23, 2012)

Son puras leyendas urbanas.

Lo cierto es, que NADA puede operar correctamente si no conectas el MCLR a positivo!
Le pones una R de unos 10K y un microsiwtch a tierra.

Tu cristal de 4MHz se comporta mejor con 22pF.

Saludos!


----------

