physical computing with ruby and arduino

Post on 13-May-2015

9.931 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Matthew Williams's talk on the Arduino at the Orlando Ruby Users Group on October 17th, 2008

TRANSCRIPT

Physical Computing with Ruby and Arduino

Matthew Williams @mwilliams

Orlando Ruby Users Group

Barcamp Orlando Anyone?

What's Arduino?

http://www.arduino.cc

Arduino haz Flavor?

http://rad.rubyforge.org/ http://github.com/atduskgreg/rad/

Arduino •14 Digital I/O (6 PWM) •6 Analog In •16kb Flash Memory •2kb for boot loader

•16MHz Clock Speed •Serial Communication •USB Powered (or AC) •I2C

Arduino IDE

RAD IDE

Ruby + Physical Computing

•Control an Arduino with Ruby •RubyToC •AVR­GCC

•Most of the Arduino API ported to Ruby •Additional libraries •Serial communications •Servos

Arduino Code int ledPin = 13; void setup() pinMode(ledPin, OUTPUT); void loop() digitalWrite(ledPin, HIGH); delay(1000); digitalWrite(ledPin, LOW); delay(1000);

RAD Code class HelloWorld < ArduinoSketch output_pin 7, :as => :led def loop blink led, 1000 end end

RAD Methods •input_pin(s) •output_pin(s) •digitalWrite| digitalRead •analogWrite | analogRead •serial_print | serial_read •Keeping it simple •It's all about the hardware

Coming Soon •Testing •Arduino Simulator •Better RubyToC Support •More "Out of the Box Support" •LCD's •OLED Displays •Motors

Arduino Shields

http://www.nycresistor.com/2008/04/21/zach­ smith­demos­his­danger­shield/

http://www.liquidware.com/projects/8/Pin+Visualizer

Buy an Arduino

http://www.sparkfun.com http://ww.makezine.com

$34.95 (or cheaper)

Awesome Resources •http://makezine.com/getstartedarduino/ •http://blog.makezine.com/archive/arduino/ •http://arduino.cc/playground

Barduino

http://github.com/mwilliams/barduino

The Barduino •Arduino •Breadboard + Wire •Transistors •Relays •Windshield Washer Fluid Pumps •~$60 Total? •2 pumps, could handle 14+

Barduino­tender

http://github.com/mwilliams/barduino­tender

Barduino­tender Recipe drink 'Screwdriver' do serve_in 'Highball Glass' ingredients do 2.ounces :vodka 5.ounces :orange_juice end end

Want More? •RubyConf 2008 •Friday •10:25 ­ 11:05 •Room 3

•Greg Borenstein •(Big help with this demo)

Let's Serve Some Drinks (and look at code)

top related