Eating Fruit - Combining Robots & Apps

2,295 views

Published on

RobotGrrl's presentation for SecondConf 2012. Thanks for the great conference everyone! :)

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,295
On SlideShare
0
From Embeds
0
Number of Embeds
1,718
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • Hello there! Let’s talk about eating fruit. Or more like, combining robots and apps together to create a blended reality.\n
  • So we will talk about two things: Apps for Arduino and RoboBrrd. In this talk I aim to introduce what these are, describe how they work, and show you them in action. Hopefully by the end of it you will be convinced that robots are cool and will want to try your own experiments!\n
  • [Show slider] Here’s a good way to illustrate the things that I work with. They’re real, physical objects. They almost work like how they work in software (haha). Except these are electrical components that can be used.\n
  • In order to make a robot, many of these components will be used. Especially to be able to sense and interact with the world. Here is my robot MANOI, it is a typical humanoid robot that enjoys dancing more than functioning.\n
  • It has 18 servos, a gyro and accelerometer, and a LED bling necklace that was added in later. MANOI is a hockey player of sorts. {2 more}\n
  • It used light sensors to detect the ball, and thereby shoot the stick. It was also controllable via a Wii nunchuck. {1 more}\n
  • The ping-pong ball LED indicators could be used to light up based off of various sensor readings. What MANOI uses for its brain is an Arduino microcontroller. {Last one}\n
  • This is an Arduino microcontroller.\n
  • One of the popular microprocessor for physical computing type projects is an Arduino. How many people here have heard of an Arduino? It is a great way to get started with learning about hardware. It’s really widespread across many fields, as it has great documentation and a straight-forward IDE.\n
  • This leads into Apps for Arduino. If hardware is the heart of a project, then software is its soul. I think SJ said something similar to this at WWDC’11. He probably wasn’t talking about Arduinos, but it fits.\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Turns out this is a huge question for hobbyists. We do have some options\n
  • \n
  • \n
  • \n
  • So, if you noticed, Meters for Arduino is really simple\n
  • \n
  • \n
  • \n
  • Switching gears a little bit, another cool thing that software can do is\n
  • \n
  • \n
  • [...] Summary next.\n
  • [...] Okay, now onto RoboBrrd!\n
  • \n
  • Now let’s talk about RoboBrrd!\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • [...] This board and all the components will be in the RoboBrrd Kit.\n
  • So let’s talk about the RoboBrrd kit. [...] The main goal with RoboBrrd is to make fun interactive stuff.\n
  • How people interact with RoboBrrd is a key element to it. RoboBrrd isn’t like other robots, so interacting with it usually isn’t done on a ‘command’ basis. At Maker Faire a lot of kids enjoy interacting with RoboBrrd. There’s a few different ways to interact with it, let’s dive in.\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • As you can see here, RoboBrrd has many friends.\n
  • Speaking of friends, it’s really important to have a community around that you can share the excitement with. This here is Chris the Carpenter from LetsMakeRobots.com. He’s standing besice a CNC that he created from scratch, to create more robots.\n
  • Each week I host a Google+ Hangout called the Robot Party! This here is Ro-Bot-X. He builds really cool robots.\n
  • Ro-Bot-X is a pretty crazy robot builder!\n
  • We even have a FIRST Lego League team join in sometimes. This here was NEON NOODLES, and they were showing off their Food Factor challenge robot.\n
  • Sometimes we even have really believable robots.\n
  • Nao 1337 tried to do face detection with Google+ Hangouts. It was a fun idea!\n
  • Here’s an Ostrich Eggbot, it’s a robot that can create designs on large round objects, such as an ostich egg!\n
  • Here is Joey showing off an Android app that he made to do some OpenSCAD calculations. It was pretty cool!\n
  • And here’s another cool robot, OddBot’s Chopsticks robot.\n
  • Here was a party that we had to broadcast the LMR v4 drawing, live! It was pretty crazy, the robot to do the drawing used a pendulum with a light sensor to generate the random numbers, which were then displayed at the top. Oh yeah, and that person was up at 2AM to do this because he’s from Europe!\n
  • Here’s some other cool robots, Super Awesome Sylvia showing off a BOEbot.\n
  • You’re all invited to join us at the Robot Party each week! It’s a lot of fun, and sometimes we all try and remotely control a robot to clean off my desk. It actually works, so how cool is that?!\n
  • Thanks for taking the time to listen to my talk!\n
  • \n
  • Eating Fruit - Combining Robots & Apps

    1. 1. Eating FruitCombining robots and apps SecondConf 2012 robotgrrl.com @RobotGrrl / +Erin RobotGrrl
    2. 2. Apps for Arduino & RoboBrrd
    3. 3. UISliderIRLSlider
    4. 4. MANOI
    5. 5. Arduino• Open source prototyping platform• Bootloader on ATmega328• Arduino IDE• Turn on LEDs, spin motors, sense the world• Use it to interact with things around you• Projects usually use Arduino in combination with software
    6. 6. Apps for Arduino If hardware is the heart of a project, then software is its soul
    7. 7. Apps for Arduino• Makes your Arduino work with your computer and iOS device• Incredibly simple concepts• Action based rather than pin based• Plug it in, add in the code, and it does it• Open Source Framework: Matatino
    8. 8. Matatino• Connect to a serial device• Set baud rate, connection, parity, stop bits• RX & TX• Wrapper for termios and ioctl commands
    9. 9. Baud speed_t newSpeed = 9600;ioctl(fileDescriptor, IOSSIOSPEED, &newSpeed); 8 options->c_cflag |= CS8; N options->c_cflag &= ~PARENB; 1 options->c_cflag &= ~CSTOPB;
    10. 10. io_object_t serialService = IOIteratorNext(serialPortIterator);! if (serialService != 0) { ! ! CFStringRef modemName = (CFStringRef)IORegistryEntryCreateCFProperty(serialService, CFSTR(kIOTTYDeviceKey), kCFAllocatorDefault, 0); ! ! CFStringRef bsdPath = (CFStringRef)IORegistryEntryCreateCFProperty(serialService, CFSTR(kIOCalloutDeviceKey), kCFAllocatorDefault, 0); ! ! CFStringRef serviceType = (CFStringRef)IORegistryEntryCreateCFProperty(serialService, CFSTR(kIOSerialBSDTypeKey), kCFAllocatorDefault, 0); }
    11. 11. Meters
    12. 12. What about iOS?• MFi? What’s that?• Redpark apps can’t go into the app store• Headphone jack is quite slow• TouchOSC• Wifi• BLE didn’t exist in the phones at the time
    13. 13. Wijourno• Wifi with Bonjour & TCP sockets• Needs app on the computer running • For many home automation projects, this isn’t too big of an issue• No buttons to press to connect• No IP address to enter to connect• Zippy
    14. 14. Meters iOS
    15. 15. Feature Creep• Many of the Arduino users are quite technical• Want lots of features, customizability• Turns out lack of feature creep is our best feature
    16. 16. Ideas and Learning• Users start out using the apps for the main purpose• They get ideas about how it can be extended• Learn about what all this ‘app stuff’ is all about• Eventually implement their idea
    17. 17. Open Source• Entire Arduino community is built around open source• Make something cool, tell people about it• Post the design files / source files• Help others make it• So, Apps for Arduino are open source!
    18. 18. Contributions• Spawns new ideas• Really cool for getting fixes to the code• People get to add their features that they needed!
    19. 19. Prototypability• Use software to try out different modules• Example: Sliding potentiometer• Handy for trying out more expensive modules• Example: speech synthesis
    20. 20. Speech• Some text-to-speech chips out there• Or, Pre-record phrases and play them• Make the same functionality in software • Faster, easier, less expensive• Try it out with your project first
    21. 21. Summary• Interact with your Arduino projects• No feature creep• Actions rather than pins• Open source• appsforarduino.com
    22. 22. RoboBrrdDo-it-yourself educational robotic pet
    23. 23. RoboBrrd• Ended up not making that many videos• People enjoyed how it interacted• Won WyoLum Open Hardware grant• Design became smaller, and better each time
    24. 24. Mechanical Design• Autodesk Inventor 2013 • Free for FIRST Robotics mentors & students• Different pieces• Multiple sub assemblies• Really cool iPad App
    25. 25. Laser Cutting!• Coolest thing on the planet (in my opinion)• XYZ table with mirrors• Laser tubes 45W/60W/100W• Different sizes of cutting area• Power, speed, frequency, DPI• Vector & Raster modes• Use various materials
    26. 26. http://www.evilmadscientist.com/2008/now-thats-an-apple-pie/
    27. 27. Electrical Design• gEDA Suite • gschem, pcb, gerbv • Schematics, PCB, Gerber viewer• Small-run board fab: OSH Park • High quality boards: purple solder mask & gold plating
    28. 28. RoboBrrd Kit• Takes too long to build RoboBrrd by hand• Kit with precut pieces will be easier!• 15 different laser cut pieces• 1 RoboBrrd Brain Board (Arduino compatible)• Kit version available in upcoming months• Learn programming, mechanical, and electrical• Aimed towards 10-16 year olds interested
    29. 29. Hats• Different hats have different behaviours• Really fun and simple interaction• Uses NFC• Tags on hat, sensor inside robot• First bytes are different
    30. 30. Google+ Hangouts• Maker Camp on Google+• Collective action towards a goal• Press buttons, see RoboBrrd’s actions• node.js app, with websockets• Really zippy, lag is hardly noticable• http://www.youtube.com/watch? v=mMwNaA3sgsU
    31. 31. Food• RoboBrrd eats virtual food• Big beak, lots of fruit• Drag and drop• See RoboBrrd’s actions in real life
    32. 32. Future• RoboBrrd with Bluetooth Low Energy!• Interesting uses for education• Could work with both iOS and Android• Highly customizable• Interesting uses for education
    33. 33. Summary• Robots don’t always have to be as they seem• Design parametrically for future modification• Interaction in different and obvious ways• Robots with friends is fun!
    34. 34. erin@robotgrrl.com @RobotGrrl +Erin RobotGrrl
    35. 35. Resources• robotgrrl.com - my website• appsforarduino.com - the apps that work with arduino• robobrrd.com - robobrrd’s nest on the web• arduino.cc - all about the arduino• blog.makezine.com - cool projects• evilmadscientist.com - cool projects• adafruit.com/blog - cool projects

    ×