Source for a water rocket data logging
References for some code: https://github.com/mjs513/FreeIMU-Updates
Se sugiere usar windows o linux (no probado en MAC) Requiere las librerías de arduino, Pyqt4, Pyside, Python
Programado con Arduino y las librerías en la carpeta: ./arduino/libraries/ Archivo con el programa: ./arduino/baales_rocket/
Interfaz gráfica editada con IDLE, Sublime Text, QTcreator (Para elementos gréficos)
En la carpeta ./gui/ python main.py O correr el programa con IDLE.
En la carpeta ./gui/
- main.py : instancia la interfáz gráfica (clase de ventana)
- setup.py : crea un instalador para el programa resultante
- brocketui/mainwindows.py : es la clase principal con los métodos para utilización del programa
- brocketui/uifiles/mainwindows.ui : es el fichero editable con QTcreator que tiene la especificaciones de los elementos gráficos
- brocketui/uimodules/ui_mainwindows.py : es el fichero resultante de la conversión de archivos .ui a .py y luego instanciarlos en los módulos previamente utilzados
Se abren los archivos .ui con QTcreator y despues de editar se ejecuta el refresh.bat o refresh.sh (windows o linux/mac respectivamente) que genera la clase ventana utilizable en python.
- Microcontrolador Arduino
- Sensor IMU 10 dof de dfRobot
- ADXL345 (acelerómetro)
- ITG3200 (giroscópio)
- HMC5883L (magnetómetro - compass)
- BMP085 (barómetro - termometro)
- Módulo bluetooth utilizado: Grove BLE v1.0
- Este módulo tiene gran alcance y poco consumo
El protocolo utilizado es simple, se envía información por byte en un encapsulado simple de frames
255 | 'Instrucción' | 'tamaño' | data1 | data2 | ... |
---|