Making things sense-Day 2 (May 2011)

  • 982 views
Uploaded on

Slides for the Edge Workshop

Slides for the Edge Workshop

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
982
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
41
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Making things senseUrban sensing and physical computing Day 2 (7-8 May 2011) Markus Rittenbruch QUT Urban Informatics / FAST & NICTA
  • 2. Schedule - Day 2• 12:00 - 12:10 Introduction• 12:10 - 12:30 Analogue sensors• 12:30 - 13:00 Activity• 13:00 - 14:00 Sharing sensor data• 14:00 - 14:10 Short break• 14:10 - 16:10 Project activity• 16:10 - 16:50 Project presentations• 16:50 - 17:00 Wrap up
  • 3. Making things sense - Day 2
  • 4. Programming
  • 5. ProgrammingData types When variables are made to exceed their maximum capacity they "roll over" back to their minimum capacity, note that this happens in both directions. int x x = -32,768; x = x - 1; // x now contains 32,767 - rolls over in neg. direction x = 32,767; x = x + 1; // x now contains -32,768 - rolls overFloat & casting:
  • 6. ProgrammingFloat & casting: int x; int y; float z; x = 1; y = x / 2; // y now contains 0, ints cant hold fractions z = (float)x / 2.0; // z now contains .5 (you have to use 2.0, not 2)
  • 7. Resources• Language reference: • http://www.arduino.cc/en/Reference/HomePage • http://arduino.cc/en/Reference/Extended • General code library: • http://arduino.cc/en/Reference/Libraries• Interfacing with hardware: • http://www.arduino.cc/playground/Main/InterfacingWithHardware• Examples • http://arduino.cc/en/Tutorial/HomePage
  • 8. Analogue sensors
  • 9. Analogue sensor pins• Use analogue in pins 0-5 for analogRead()• Address as 14-19 when used as digital pins • digitalWrite(), digitalRead()• No pinMode required for analogRead();
  • 10. Analogue sensor input• File/Examples/Analog/AnalogInput
  • 11. Analogue sensor input
  • 12. Programming Conditionals http://www.ladyada.net/learn/arduino/lesson5.html
  • 13. AnalogInput
  • 14. Calibration - part 1
  • 15. Calibration - part 2• map(): remap a number from one range to another • val = map(val, 0, 1023, 0, 255);• constrain(): constrain to a number range
  • 16. Project activity 1 - Calibration
  • 17. Components • RGB LED:
  • 18. Components• LED matrix http://www.sparkfun.com/datasheets/Components/LED/YSM-1288CR3G2C.pdf
  • 19. Components • MAX7219 LED driverhttp://arduino.cc/playground/Main/MAX72XXHardwarehttp://www.arduino.cc/playground/Main/LEDMatrix
  • 20. Project activity II - Projects
  • 21. So, you’ve got an Arduinoand now you want tomake it talk
  • 22. Or, maybe you want totalk to it...
  • 23. ...from the other side of the world
  • 24. This session of the workshop willshow you some ways of doing that.
  • 25. Arduino to the world• Arduino direct to Pachube via ethernet/wifi shield• Or Arduino to PC via serial, then to Pachube/Twitter• We’re taking the second approach in this workshop, since the kits we provided don’t include ethernet/wifi shields
  • 26. Step 1: Register a feed on Pachube
  • 27. Step 2: Write some code
  • 28. Arduino Sketch
  • 29. Ruby “Bridge”: setup
  • 30. Ruby “Bridge”: the loop
  • 31. Step 3: See your data on Pachube
  • 32. Advanced topics• PCB design• Wireless communication • Xbee • Bluetooth • Wifi • Infrared • Radio• Real-time communication• Multi-tasking
  • 33. Resources• http://apiwiki.twitter.com/• http://community.pachube.com/api• http://community.pachube.com/tutorials• http://community.pachube.com/triggers/ twitter
  • 34. What next?• Hackerspace Brisbane • http://hackerspaces.org/wiki/Hackerspace_Brisbane• Living Dolls (The Edge) • http://edgeqld.org.au/blog/2011/04/07/living-dolls/