Meet up arduino madrid: Biicode

Post on 29-Nov-2014

7.114 views 1 download

description

@David_Sanfal speaks at meetup arduino madrid about biicode and how to reuse code.

Transcript of Meet up arduino madrid: Biicode

David (@David_SanFal)david.sanchez@biicode.com

@biicode www.biicode.com

19 - Febrero - 2014

Julia S.Simon
Ni con la lupa esa que quiere montoro que me compre se lee esto :p
Julia S.Simon
Yo creo que para el meetup de 20 min igual el quienes somos y como lo hacemos sobra, asi tienes mas tiempo para ejemplos
Francisco Fernandez
divide

Plataforma de reutilización de código, gestión de dependencias y

configuración de proyectos

¿Qué es biicode?

Analizamos tu código

Descargamos tus dependencias

Construimos tu proyecto

#include “google/gtest/gtest.h”

¿Qué nos motiva?

¿Qué nos motiva?

¿Qué aporta biicode?

¿Con qué funciona?

¿Con qué funcionará?

Como empezar: Arduino1. Registro en la web2. Descarga e instalación del cliente bii3. Descarga e instalación de herramientas de desarrollo4. Definir la placa que utilizas y el puerto usb

$ bii init$ bii newCode as usual$ bii arduino:upload

$ mkdir biicode_workspace

$ cd biicode_workspace~/biicode_workspace$ bii initUsername:

your_user_name

Password for your_user_name: your_password

Would you like to set a default programming language?

(cpp/arduino/None)

Introduce lang: Arduino

Initialization correct, now you can create your first hive

Crea tu Workspace

~/biicode_workspace$ bii new robotica

Select language: (java/node/fortran/python/cpp/arduino/None)

Introduce lang (default:arduino): [ENTER]

Introduce block name: blink

Generate a default firmware? (YES/no) [ENTER]

Creating a main file "main.cpp"

Crea tu Hive

Ej.: Blink #include "Arduino.h"

int led = 13;

void setup(){

pinMode(led, OUTPUT);

}

// bii:#entry_point()

void loop(){

digitalWrite(led, HIGH);

delay(1000);

digitalWrite(led, LOW);

delay(1000);

}

Única diferencia

$ cd domotica

domotica$ bii arduino:usb

USB Devices:

Arduino Uno (COM3)

board: {board: uno, no_autolibs: 'false', port: COM3, programmer: usbtinyisp}

domotica/bii/settings.bii

Define tu Arduino

$ bii

arduino:upload

Code as usual

adapta tu código #include "Arduino.h"

#include "arduino/libraries/servo/servo.h"//

#include “servo.h”

Servo myservo;

void setup(){

myservo.attach(9);

}

// bii:#entry_point()void loop(){

int input = analogRead(0);

input = map(input , 0, 1023, 0, 179);

servo.write(input);

delay(15);

}

Única diferencia

publica tu código

#include "Arduino.h"

void minutos(){

int minutos (millis()/1000))/60;

return minutos;

}

#include

"sabato/time/mitutos.h"#include

"Arduino.h"// bii:#entry_point()

...

void setup(){

...

}

void loop(){

servo.write(minutos());

}

sabato/time/minutos.h sabato/minutero/main.cpp

domotica$ bii publish

block: blockIntroduce tag: STABLE

Introduce msg: My first block

INFO: Successfully published user_name/hello(user_name/master): 0

publica tu código

Reuse like never before #include "david/pid_arduino/pid.h"

#include "Arduino.h"// bii:#entry_point()

void setup(){

PID pid_servo(6.0, 0.0, 0.0, 0, 180);

...

}void loop(){

input = analogRead(pin_input);

input = map(input, 0, 1023, 0, 180);

output = pid_servo.Compute(setpoint,

input);

servo.write(output);

...

}

$ bii find

$ bii find --

update

Regístrate y ...

Concurso Arduino/Raspberry Pi1º Premio

1000€2º Premio

500€3º Premio

300€

Tienes hasta el 1 de Marzo de 2014!

#biicontest2014

¿Taller?

David (@David_SanFal)david.sanchez@biicode.com

@biicode www.biicode.com

19 - Febrero - 2014