Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Hola gente!!!!
Hace unos meses postee sobre qué microcontrolador elegir (el post aún está visible en la página principal).
Pues bien, en su día elegí un PIC16F616 para recibir datos de un sensor y transmitirlos por el UART en RS232. El sensor varía en función de la aplicación: puede ser de humedad, de conductividad o de presión.
El caso es que elegí este PIC con algo de prisa por terminar el proyecto y entregarlo, peroi ahora que he vuelto a retomarlo con la intención de implantarlo, vuelvo a requerir de vuestra sabia opinión.
Mi principal duda es porqué ultimamente en los foros parece que los únicos microcontroladores que existen son los PIC. Yo lo poco que he trabajado lo he hecho con Motorola y Atmel y sobretodo los Atmel me han dejado muy buena impresión. ¿Alguien me puede decir que ofrece el trabajar con un PIC que lo haga tan popular?
Por último y un poco continuando o cerrando el post anterior, qué os parece la decisión final? Lo cambiaríais por otro?
Y la última y más importante de las preguntas:
Alguno sabeis donde puedo conseguir un diagrama con el circuito necesario para manejar el microcontrolador? Es decir, instalación del cristal, reset, condesadores, resistencias, conexión de todos los puertos a un zócalo externo, etc. Es que de electrónica ando muy verde.
Gracias y saludos!!
Me alegro que el tema de soft no te asuste.
Dado que eres programador, te recomiendo encarecidamente (y más que eso) que cojas el C. Como no lo tienes claro, te pongo en tesitura, pues algo se de programar estos chismes en C: hay varios niveles, igual que precios. El GNU-GCC es gratis (busca por WinAVR) y se incorpora con el AVRStudio perfectamente, facilitando (y mucho) la tarea de depurar. Despues hay varios compiladores de pago, de los cuales uso el IAR (caro, pero muy potente), y el ImageCraft (precio muy asequible, el más sencillo de usar, buen soporte, e incluye el 'wizzard', que simplifica algunos pasos).
También te recomiendo el uso de un JTAG si es posible. Este te permite acceder a todos los registros internos del micro en el circuito mismo (si tienen prevista la conexión del JTAG, claro), acceder a la RAM, programar el micro, etc. Una vez haces un proyecto con JTAG, no vuelves a los métodos más clásicos.
Otro consejo sobre el programa, es que el ZigBee no se implementa, pues es muy complejo, pero las capas más bajas, que son gratis, y son las que cumplen con el estándar de comunicación del IEEE (que no de ZigBee, que van 'encima') si que se usan. Es decir, mucha gente coge los integrados de ZigBee, usan las dos 'capas bajas' del protocolo, y el resto, es propietario. Esto significa menos tiempo de desarrollo, más facilidad de uso, menos RAM, menos código, menos problemas, etc. Y es la opción que yo escogería, tal y como en realidad han hecho con el XBee.
Miraré de hacerte llegar algún mini esquema tan pronto como pueda apañar algo.
Beamspot.
Hola:
He echado una ojeada al módulo XBee PRO Series 1 (supongo que será el que tienes), y tal y como me parecía, no hace falta que toques para nada el código, ni que te metas en los vericuetos del ZigBee. Mucho menos que programes el micro de Freescale, que igual desconoces.
Basta con que conectes el módulo a una U(S)ART, por ejemplo de un ATmegaQualquiera, y programes algo de puerto serie, y poca cosa más. Mirar el protocolo de comunicación con el módulo, y dejar que este gestione todo el tema de comunicaciones a su aire puede simplificarte mucho el desarrollo, y facilitarte la vida. Intentaré hacerte un pequeño esquemilla de como lo conectaría yo.
Hace un año o así, tuve un rifirafe muy gordo con los señores de Freescale, precisamente a raiz del ZigBee. Les compré un Kit de desarrollo de ZigBee, todo de Freescale. Se suponía que el kit, tal y como venía, me permitía compilar las librerías y poner el firm resultante en el equipo. Luego resultó que no. Que si quería compilar, tenía que pagar más licencias (o sea, que el kit no servía para lo que lo vendían). Y para colmo, los micros necesarios para las aplicaciones en modo Coordinador, Nodo con funcionalidad completa (para redes tipo Mesh), eran enormes, pues las librerías que venían (que creo que son las mismas que te sirven estos señores) eran malísimas y necesitaban una cantidad de recursos ingente (100KB de flash, 32KB de RAM). Para vender micros mucho mas caros, claro, porque otros hacían lo mismo con mucho menos código, memoria, tiempo de procesador, etc.
Dada su prepotencia, y la escasa fiabilidad de las placas que me suministraban, decidimos dejar ir un protocolo a todas luces excesivamente sobremegahipersuperdimensionado para lo que estaba previsto que hiciese (encender luces, un bit, requiere como 16 KB de flash, con sus librerías).
Por eso, si tienes algo que funciona, no lo toques. Intenta usar un micro que ya conozcas (aunque yo solo te puedo ayudar con los AVR) con un puerto serie (a nivell TTL, alimentado a 3V3), e intenta implementar el protocolo de comunicaciones que ellos sirven a ese nivel.
A ver si consigo un ratico para echarte un cable más detallado sobre el hard. Pero si el tiempo es dinero, entonces soy muy pobre. 😉
Beamspot.
Bueno... que decir, una vez más muchas gracias por tu tiempo.
Por supuesto que no tengo ni media intención de ponerme a programar capas de aplicación de ZigBee (solo con leerme la teoría de los Zigbee Objects ya me entraban mareos). Lo que se puede hacer con estos módulos de XBee es configurar parámetros de red y valores del tipo del Sleep Mode, modos de transmisión de datos, meterle beacons o no, meterle control de flujos, etc. Pero todo de forma muy sencilla (tipo "pinta y colorea", como diria un colega mio), ya que el kit de Maxstream vienen con un software para configurar todos los valores, no tienes que tocar nada de código de ninguna clase. En teoría, todo el tema de comprobar energía en canales de frecuencia, tablas de enrutamiento, Ids de la PAN, etc lo hace de forma transparente, aunque es completamente configurable mediante una serie de variables como te comentaba.
De lo que me tengo que enterar es de si los de Maxstream venden módulos ya integrados en placas con conexión al puerto serie y configurables desde éste, al igual que los módulos que venden con el kit de desarrollo, porque ya les he escrito dos e-mails y aún estoy esperando.
Y nada, que muchas gracias por todo. Si haces el diagramilla con el cableado de la placa me lo pasas cuando puedas, si no no pasa nada.
Un saludo!!!
Hola:
Por lo que he visto, estos de ZigBee sí que tienen una placas para enchufar el módulo XBee y el puerto serie (estándar DB9), pero no se que código ni nada, además, sólo lo vi en uno de sus tutoriales, sin fijarme mucho ni nada.
Respecto del esquemilla, miro de hacerte uno sencillito con un ATmega64. Así también yo tendré un punto de partida para probar estas placas algún día.
Beamspot.
Encontré esto.
Son módulos indpendientes de "enchufar y listo", configurables por el puerto serie con un software como el X-CTU que da gratuito Maxstream.
http://www.digi.com/products/wirelessdr ... apters.jsp
y
http://www.digi.com/products/wireless/z ... dapter.jsp
Al parecer el serie 1 es para punto multipunto y el serie 2 admite redes mesh.
Saludos!!!