Slide 1

Slide 1 text

revealinghour.in Ruby Arduino Revealing Hour Creations @nishantmodak

Slide 2

Slide 2 text

revealinghour.in

Slide 3

Slide 3 text

Talk Physical Computing #electronics #ruby #arduino #sensors revealinghour.in

Slide 4

Slide 4 text

revealinghour.in

Slide 5

Slide 5 text

revealinghour.in Image Source : IBM Smarter Planet

Slide 6

Slide 6 text

revealinghour.in Image Source : IBM Smarter Planet IFTTT + Hardware

Slide 7

Slide 7 text

What is Arduino? revealinghour.in

Slide 8

Slide 8 text

What is Arduino? revealinghour.in

Slide 9

Slide 9 text

What is Arduino? revealinghour.in

Slide 10

Slide 10 text

What is Arduino? revealinghour.in

Slide 11

Slide 11 text

What is Arduino? revealinghour.in

Slide 12

Slide 12 text

Program via USB External Power 9v 14 Digital IO Pins µ controller 6 Analog IO Pins revealinghour.in

Slide 13

Slide 13 text

revealinghour.in Ethernet Shield

Slide 14

Slide 14 text

Why Arduino? revealinghour.in MIT's Handyboard Phidgets Netmedia's BX-24

Slide 15

Slide 15 text

It is inexpensive cross-platform ide open-source s/h/w revealinghour.in

Slide 16

Slide 16 text

Hardware Software Docs Brand CC-SA-BY CC-SA-BY GPL TM revealinghour.in

Slide 17

Slide 17 text

InduinoX revealinghour.in

Slide 18

Slide 18 text

What can YOU do with an Arduino? revealinghour.in

Slide 19

Slide 19 text

revealinghour.in

Slide 20

Slide 20 text

revealinghour.in

Slide 21

Slide 21 text

revealinghour.in

Slide 22

Slide 22 text

revealinghour.in

Slide 23

Slide 23 text

revealinghour.in

Slide 24

Slide 24 text

revealinghour.in

Slide 25

Slide 25 text

revealinghour.in TDD

Slide 26

Slide 26 text

revealinghour.in

Slide 27

Slide 27 text

How can YOU work with an Arduino? revealinghour.in

Slide 28

Slide 28 text

revealinghour.in upload Serial monitor console

Slide 29

Slide 29 text

revealinghour.in

Slide 30

Slide 30 text

int led = 13; void setup() { // initialize the digital pin as an output. pinMode(led, OUTPUT); } void loop() { digitalWrite(led, HIGH); // turn the LED on delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off delay(1000); // wait for a second } revealinghour.in

Slide 31

Slide 31 text

Options in RUBY for arduino ? revealinghour.in

Slide 32

Slide 32 text

1 Serial Port Gem • Ruby library • RS-232 serial ports sp = SerialPort.new(port_str, baud_rate, data_bits, stop_bits, parity) while sp.gets.chomp do ... end revealinghour.in

Slide 33

Slide 33 text

2 RAD = Ruby Arduino Dev +Rake Task revealinghour.in

Slide 34

Slide 34 text

Program Sketch Arduino Class Methods RubyToC Assembly Arduino C++ Rake tasks AVR GCC/Dude revealinghour.in

Slide 35

Slide 35 text

revealinghour.in • Standalone • Small • Service

Slide 36

Slide 36 text

3 Dino revealinghour.in

Slide 37

Slide 37 text

revealinghour.in Logical equivalent of the arduino board

Slide 38

Slide 38 text

revealinghour.in Finds Arduino Communicates with the world

Slide 39

Slide 39 text

revealinghour.in

Slide 40

Slide 40 text

revealinghour.in Write

Slide 41

Slide 41 text

revealinghour.in Read

Slide 42

Slide 42 text

revealinghour.in

Slide 43

Slide 43 text

revealinghour.in • Stepper Motor • DC Motor • LDR • Temperature • RGB LEDs

Slide 44

Slide 44 text

Arduino & Web revealinghour.in

Slide 45

Slide 45 text

revealinghour.in • Arduino Hosted • Web sockets • Serial to Net • Rails • Sinatra

Slide 46

Slide 46 text

revealinghour.in board=Dino::Board.new(Dino::TxRx::Serial.new) led = Dino::Components::Led.new(pin: 13, board: board) put ‘/forward’ do led.on end Sinatra

Slide 47

Slide 47 text

revealinghour.in

Slide 48

Slide 48 text

revealinghour.in

Slide 49

Slide 49 text

revealinghour.in  

Slide 50

Slide 50 text

revealinghour.in

Slide 51

Slide 51 text

Thanks • Pratik Chaudhari (@c_pratik) • Siddharth Bhagwan • Prashant • @austinbv – Creator of Dino revealinghour.in

Slide 52

Slide 52 text

References bit.ly/arduinolinks revealinghour.in

Slide 53

Slide 53 text

revealinghour.in PUSH TO DEPLOY