Diferencia entre revisiones de «Butia-C»

De Proyecto Butiá
Saltar a: navegación, buscar
(Página creada con «Butia-C es una interfaz para comunicarse con la placa USB4Butia escrita en el [https://es.wikipedia.org/wiki/C_(lenguaje_de_programaci%C3%B3n) Lenguaje de programación C]....»)
 
 
(No se muestra una edición intermedia del mismo usuario)
Línea 1: Línea 1:
 
Butia-C es una interfaz para comunicarse con la placa USB4Butia escrita en el [https://es.wikipedia.org/wiki/C_(lenguaje_de_programaci%C3%B3n) Lenguaje de programación C]. Esta basada en [[PyBot]] pero esta enfocada a ser mas simple y directa para proveer una acceso de mas bajo nivel a la placa.
 
Butia-C es una interfaz para comunicarse con la placa USB4Butia escrita en el [https://es.wikipedia.org/wiki/C_(lenguaje_de_programaci%C3%B3n) Lenguaje de programación C]. Esta basada en [[PyBot]] pero esta enfocada a ser mas simple y directa para proveer una acceso de mas bajo nivel a la placa.
  
Aun esta en las primeras etapas de desarrollo.
+
El código puede ser obtenido clonando el repositorio:
 +
  git clone https://github.com/Darthkpo/butiac.git
  
[https://github.com/Darthkpo/butiac Repositorio]
+
[https://github.com/Darthkpo/butiac Repositorio web.]
 +
 
 +
 
 +
==Diseño==
 +
[[Archivo:Butiac0.1.png|thumb|Diagrama logico de la API]]
 +
Estos son los headers de Butia-C cada uno con su archivo .c correspondiente.
 +
 
 +
  com_usb.h  //Wrapper de libusb para facilitar el input / output.
 +
  board.h    //Contiene una estructura de datos que representa a cada placa
 +
  module.h  //Contiene una estructura de datos que representa a cada modulo conectado.
 +
  butiac.h  //Core de la API (Aun no implementado).
 +
 
 +
  debug.h /*
 +
          * Implementa macros para checkeo de errores y loggeo de información.
 +
          * Se pueden hacer builds de Butia-C sin checkeo de errores o loggeo
 +
          * de info para maximizar la velocidad.
 +
          */
 +
 
 +
==Pruebas de rendimiento==
 +
 
 +
Primera prueba:
 +
 
 +
Obteniendo el valor de un sensor de distancia 1000 veces y luego hallando el promedio.
 +
 
 +
PyBot(CPython):  [http://i.imgur.com/uOO6kgR.png imagen] 528 microsegundos
 +
 
 +
Butia-C: [http://i.imgur.com/GJ39jtv.png imagen] 273 microsegundos
 +
 
 +
[https://gist.github.com/Darthkpo/4f44322d097c9d5fc122fd41d0e21f35 Link] a los dos códigos usados.
 +
 
 +
==Metas==
 +
 
 +
Proxima version 0.1:
 +
 
 +
-Soportar todos los modulos hotplug.
 +
 
 +
-Soportar shield de motores.
 +
 
 +
-Implementar modo singleboard y multiboard.

Revisión actual del 13:47 16 jul 2016

Butia-C es una interfaz para comunicarse con la placa USB4Butia escrita en el Lenguaje de programación C. Esta basada en PyBot pero esta enfocada a ser mas simple y directa para proveer una acceso de mas bajo nivel a la placa.

El código puede ser obtenido clonando el repositorio:

 git clone https://github.com/Darthkpo/butiac.git

Repositorio web.


Diseño

Diagrama logico de la API

Estos son los headers de Butia-C cada uno con su archivo .c correspondiente.

 com_usb.h  //Wrapper de libusb para facilitar el input / output.
 board.h    //Contiene una estructura de datos que representa a cada placa
 module.h   //Contiene una estructura de datos que representa a cada modulo conectado.
 butiac.h   //Core de la API (Aun no implementado).
 debug.h /*
          * Implementa macros para checkeo de errores y loggeo de información.
          * Se pueden hacer builds de Butia-C sin checkeo de errores o loggeo
          * de info para maximizar la velocidad.
          */

Pruebas de rendimiento

Primera prueba:

Obteniendo el valor de un sensor de distancia 1000 veces y luego hallando el promedio.

PyBot(CPython): imagen 528 microsegundos

Butia-C: imagen 273 microsegundos

Link a los dos códigos usados.

Metas

Proxima version 0.1:

-Soportar todos los modulos hotplug.

-Soportar shield de motores.

-Implementar modo singleboard y multiboard.