Diseño de balizas con PIC para cuartel de Bomberos

Perfecto, ya mañana realizo las placas y me armo el programador para pics.
Voy a armar el tipo JDM si no me equivoco, con conexion por puerto serial. Es recomendable?
Ademas que software de programacion me pueden recomendar? Tengo conocimientos en C como para aplicar sobre este proyecto, aunque estuve mirando tutoriales de PICbasic, como para usar otro lenguaje, pero no me convence del todo su uso.
Mi gran duda es si programando con un lenguaje en base C, voy a poder realizar la programacion de los leds en modo binario, por ejemplo: Portb=%(rb7)(rb6)(rb5)(rb4)(rb3)(rb2)(rb1)(rb0); o mejor dicho: Portb=%0000000;
 
En cuanto a la programadora esta bien, yo uso la misma. En cuanto al lenguaje yo comence con asambler y ahora algo de C, esta bueno saber los 2, para cuando tienes que hacer optimizacion de codigo, ya que a veces la conversion de C a binario no es del todo eficiente, pero para este proyecto no tenes que tener problemas con el C.
Yo uso el MPLAB que se puede descargar gratuito de Microchip y luego puedes programar el micro con WinPic800.
Espero me comentes como te ha funcionado, saludos.
 
Perfecto, muchas gracias por la ayuda de todos. Ya tengo hechas las placas tanto del programador como del controlador. Ya para mañana agujereo todo, sueldo, y a probar programar, a ver que tal sale de todo esto jaja. De nuevo muchas gracias a todos, y seguramente les vaya avisando por consejos para la programacion
Saludos!

Editado:

Como andan gente? les comento que ya realize la placa, pero estoy teniendo problemas. Cargue un programa que encontre en un sitio al PIC, y al realizar la grabacion de da un error. Lo ignoro y procedo a probar, y al darle alimentacion, a veces arranca el codigo y a veces no. Tocando los pines de el PIC, hay veces que lo empieza a ejecutar, pero cuando saco los dedos de los pines deja inmediatamente de ejecutarlo. Tendra algun problema por que lo estoy alimentando de una fuente switching?
 
Última edición:
Que tal chicos? Traigo noticias. Tanto programador como interfaz funcionan perfecto, ya pude empezar a hacer mis primeras pruebas.
Queria hacerles una consulta con respecto a la declaracion de las salidas. Yo actualmente estoy usando el programa MikroC Pro para realizar las compilaciones. Ahora, por ejemplo estoy con este codigo:
Código:
void main() {
TRISB0_bit=0;
TRISB1_bit=0;
TRISB2_bit=0;
TRISB3_bit=0;
TRISB4_bit=0;
TRISB5_bit=0;
TRISB6_bit=0;
TRISB7_bit=0;
while (1)
 {
 RB0_bit=1;
 Delay_ms(1000);
 RB0_bit=0;
 RB1_bit=1;
 Delay_ms(1000);
 RB1_bit=0;
 RB2_bit=1;
 Delay_ms(1000);
 RB2_bit=0;
 RB3_bit=1;
 Delay_ms(1000);
 RB3_bit=0;
 RB4_bit=1;
 Delay_ms(1000);
 RB4_bit=0;
 RB5_bit=1;
 Delay_ms(1000);
 RB5_bit=0;
 RB6_bit=1;
 Delay_ms(1000);
 RB6_bit=0;
 RB7_bit=1;
 Delay_ms(1000);
 RB7_bit=0;
 }
}
Queria saber si existe alguna manera diferente de declarar las salidas, de manera que pueda poner por ejemplo: RB=0011001100, en vez de tener que declarar salida por salida el nivel logico en bits que esta teniendo. Mas alla de eso las placas estan perfectas. Muchas gracias a todos por sus ayudas!
 
Última edición por un moderador:
Pues para hacer lo que tu quieres se hace asi, PORTB=0b11001100, fijate que se coloca un cero primero y luego se pone una B para indicar que el numero que sigue va a ser en formato binario y la cantidad de bits que debes poner es 8, ni mas ni menos, de lo contrario el compilador te daria error. Otra forma de hacer lo mismo seria escribiendo el numero en hexadecimal, PORTB=0xCC.
Si queres ver ejemplos de codigos u otros proyectos sobre MikroC fijate aca: http://www.mikroe.com/chapters/view/82/
Saludos.
 
Muchisimas gracias a todos ustedes, no me quedan mas que palabras de agradecimiento por su ayuda. El barral ya esta funcionando perfectamente, con la programacion hecha perfecta.
Les dejo un video de como quedo su secuencia. Esta montado por ahora para pruebas en una base para tubos fluorescentes. Cuando realize la colocacion en el barral del camion y este funcionando completamente, lo vuelvo a filmar y les paso el video!.
Nuevamente muchas gracias a todos ustedes por su gran ayuda
Saludos

http://www.youtube.com/watch?v=a3Eh-lBzLG0&feature=youtu.be
 
En el lugar de los transistores colocale irf 630 y en la entrada de tension donde se alimenta el 7805 coloca un diodo 4007 para que no lo puedan conectar al reves y la tencion positiva que va a los led mandala directa, yo te digo que estoy armando balizas para los bomberos, policias y el servicio de seguridad de la ciudad y hasta ahora no volvio ninguna por problemas de placa pero si por rotura de acrilicos, pone una resstencia de 47k al source i otra de 330 Oh al gate y uni la otra parte de la resistencia a un 4148 y a la pata de salida del pic.
El drain va a los led eso es todo
 
Hola.

Antes que nada, te quiero felicitar por darles una mano a los bomberos, en este país hay poca gente que lo haga, incluso por plata.

Ahora, respecto al circuito; según tengo entendido, es: Un PIC que controla salidas en secuencia, que prenda LEDs, cuya corriente es manejada por transistores. Eso, alimentado por 24V, regulado a 12 y después a 5.

La parte de la alimentación la hiciste bien, para no calentar al regulador.

La parte de los drivers, no creo que esté bien.

Qué corriente manejan los LEDs? Hay transistores que bancan hasta 800mA y son muy baratos, accesibles, y se la bancan bastante bien.

El cálculo de la resistencia de polarización, según entendí, para la R de base, está mal.

Vos hiciste ley de ohm, V de salida del PIC, menos la VBE, sobre la I que querés por los LEDs; lo cual está mal, porque sería Rb=VPIC-VBE/(ILed/hFEmin).

Esos 220 ohms exigen mucha corriente al PIC. Se la va a bancar, sí, pero es mejor no pedirle tanto.

El hFE del transistor que uses, si la corriente que circule por él es algo cercana a la máxima, va a bajar consderablemente. Vas a tener que usar la curva de la variación del hFE con la corriente, que como una depende de la otra y viceversa, es un circulo vicioso. Vas a tener que partir de un valor de corriente, sacar el hFE, sacar la corriente que tendrías con ese hFE, que te va a dar distinta a la anterior. Ese nuevo valor, lo tomás en el gráfico, y sacás el nuevo hFE, y así hasta que te de más o menos lo mismo una vez de otra.

Con ese hFE sacás la R de base.

Respecto a los transistores, puede que usar MOSFET te sea mejor, ya que puede manejar cargas elevadas (depende del modelo), y la gate no consume corriente, salvo en el instante inicial, que es por un período corto, y te puede quemar el micro. Con una resistencia de 33 ohms en serie a la gate, estás bien.
 
Atrás
Arriba