Shop OBEX P1 Docs P2 Docs Learn Events
RoboCam - My version of a telepresence robot — Parallax Forums

RoboCam - My version of a telepresence robot

norris56norris56 Posts: 69
edited 2008-06-15 21:09 in Robotics
I recently completed construction of RoboCam which is my web-based telepresence camera platform built using the Propeller and·the iRobot Create. Using a web browser, RoboCam can be remotely controlled from any location that has internet access. A simple set of web controls and a live video feed allow you to drive RoboCam around as though you were actually there. When you’re done exploring you simply drive back to within the vicinity of the recharging station and press Dock. Using the built-in docking capability the Create will automatically maneuver and dock itself. Once the Create has docked the station it will recharge completely depleted batteries in less than three hours. In order for the user to keep an eye on the RoboCam’s health the robot continually sends back telemetry. This includes battery capacity, temperature, voltage, and current drain which are displayed in the web browser.
·
I posted a video of RoboCam in action on YouTube. It is taken from the point of view of the remote user and shows the web based user interface.
·
http://www.youtube.com/watch?v=K1Ap9V2ICag
·
The Create provides all the necessary sensors and docking/charging capabilities. It uses the built-in cliff and bumper sensors to protect itself from falling down stairs and avoiding objects. For distance measuring a Ping is used. This complemented the Create’s own sensors and provided a less violent method of detecting objects as opposed to the way the Create does it by crashing into it first and then sensing it with a bumper switch. Like many of my robots the Propeller chip was used as the main controller.
·
Most of RoboCam’s components are mounted in or on a 10 x 8 electronics case mounted onto the Create’s four hard points located around the cargo bay. It is mounted slightly forward to keep the Create’s center of gravity over its main driving wheels. Two voltage regulators were used to reduce the Create’s 14.4 volt battery down to 12 volts for the camera and 9 volts for the electronics.
·
RoboCam uses an off the shelf Panasonic Wireless Network Camera (BL-C30A) for video. This keeps the design simple and eliminates the need to get into complex streaming video. Optionally audio could be included by selecting a more advanced (and more expensive) model. The camera is mounted on top of a 2 foot length of PVC pipe. This puts the camera about 36 inches above the floor which is the optimal height for driving as well as checking out your surroundings. As an added bonus, the camera’s built-in pan and scan allow you to look from the floor to the ceiling and nearly 180 degrees from left to right.
·
To establish the connection between the RoboCam and the Internet a separate web server using the PINK (Parallax Internet Netburner Kit) is used. You can·control multiple robots from this one server. Using a Parallax Propeller chip, commands from the remote·user are received by the PINK and are then transmitted to the RoboCam using a pair of Parallax 912 MHz wireless transceivers. You can read about a simpler version of this web server (sorry it doesn’t use a Propeller) that is used by my robot “Romey” in the next issue of Robot Magazine.
·
RoboCam could be used for serious applications like security, summer home monitoring and even elder care but I’m currently using it for something far more important. I use it to check up on our cat while we are on vacation!
·
Below are a few pictures and the system diagram. I’ll post the schematics and Spin source code to my web site shortly.
·
http://www.norrislabs.com

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The angels have the phone box!

Steve Norris
400 x 600 - 36K
800 x 532 - 20K
971 x 771 - 14K

Comments

  • nebonatnebonat Posts: 3
    edited 2008-03-28 03:19
    wow, that's amazing
  • sam_sam_samsam_sam_sam Posts: 2,286
    edited 2008-03-28 12:32
    Steve Norris

    . Using a web browser, RoboCam can be remotely controlled from any location that has internet access. A simple set of web controls and a live video feed allow you to drive RoboCam around as though you were actually there



    VERY COOL

    NICE idea.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    ··Thanks for any·idea.gif·that you may have and all of your time finding them

    ·
    ·
    ·
    ·
    Sam
  • DgswanerDgswaner Posts: 795
    edited 2008-03-28 20:01
    very cool! would love to see some code! both SPIN and HTML. or even a test drive!

    I'm curious, how often are you "pinging" the Pink for variable changes? I had issues where my pink would lock up in this situation. Have you had these issues? your web server can handle more than one bot, is that at the same time?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "A complex design is the sign of an inferior designer." - Jamie Hyneman, Myth Buster

    DGSwaner
  • norris56norris56 Posts: 69
    edited 2008-03-29 16:28
    DGSwaner said...
    I'm curious, how often are you "pinging" the Pink for variable changes? I had issues where my pink would lock up in this situation. Have you had these issues? your web server can handle more than one bot, is that at the same time?
    I'm polling the PINK in a continous loop with no delays and I have not had any hang issues. I do miss an
    occasional post (1 out of 20 maybe) but I'm not sure if this the PINK or my bug.

    The server currently handles only one robot at a time but I'm working on a new version which makes it possible to switch between several robots that are running at the same time.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The angels have the phone box!

    Steve Norris
  • Steve JoblinSteve Joblin Posts: 784
    edited 2008-03-29 19:15
    I just completed my first "robo-cam"... I'm using one of those wireless spy cams and an inexpensive wireless TX/RX link to communicate between my boe-bot and my PC. The PC is running RoboRealm which provides webserver functionality. My web page is not nearly as nice as yours... I would love to see your HTML!
  • WhitWhit Posts: 4,191
    edited 2008-03-30 16:27
    Norris56 - very nice! Dgswaner has a similar project going - I know he will enjoy seeing this.

    Dgswaner - When I read this, I was going to send you link. Glad you found it already! How is you project going?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Whit+


    "We keep moving forward, opening new doors, and doing new things, because we're curious and curiosity keeps leading us down new paths." - Walt Disney
  • DgswanerDgswaner Posts: 795
    edited 2008-03-31 16:24
    Hey Whit, long time no talk! I don't want to steal this thread, but hopefully this week I'll have some info!

    norris56, I like the dock idea. I'll definitely put that on the list!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "A complex design is the sign of an inferior designer." - Jamie Hyneman, Myth Buster

    DGSwaner
  • norris56norris56 Posts: 69
    edited 2008-04-09 18:27
    I just completed a series of upgrades to RoboCam. I added a laser pointer to aid in depth perception and steering. It is focused 3 feet in front of the bumper. It’s amazing how this helps when driving RoboCam from the web.
    ·
    The other big change is the addition of a telescoping neck. The camera can be positioned anywhere from 24 to 36 inches above the floor. It’s great for checking up on a cat snoozing on the bed. I’m using a 12v linear actuator from Servo City.
    ·
    Below are the pictures of RoboCam in the full down and up positions. I’ll update my site soon as well.
    ·
    http://www.norrislabs.com
    ·

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The angels have the phone box!

    Steve Norris
    600 x 902 - 32K
    600 x 902 - 28K
  • DiablodeMorteDiablodeMorte Posts: 238
    edited 2008-04-10 02:58
    Hello Norris56, I just wanted to compliment you on a job well done! I'm actually working on my own library for the create and if it wasn't for the fact that I like to do things myself I'm tempted to drop what I've done and just use yours. Your code really helped me.

    I realize this might be considered a hijack - but if you wouldn't mind giving me a simple reason for the [noparse][[/noparse] 0 ] in the following code:

    Link.tx(~~RightVelocity >> 8)
    Link.tx(RightVelocity)

    Link.tx(~~LeftVelocity >> 8)
    Link.tx(LeftVelocity[noparse][[/noparse]0])

    You don't use it at any other time even in similar situations(such as the .tx(RightVelocity)above it. Maybe include your answer as a PS of a longer post?

    EDIT: It really is a beautiful robot.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Current Projects:
    Robot Control Via Skype API - Dev Stage(50% Complete) - Total(25%)
    Robot Localization Via Xbee's - Research Stage
    IR Tracking with Propeller - Research Stage
  • norris56norris56 Posts: 69
    edited 2008-04-10 04:00
    DiablodeMorte said...
    I realize this might be considered a hijack - but if you wouldn't mind giving me a simple reason for the [noparse][[/noparse] 0 ] in the following code:
    Interesting, must be a remnant from some prior version. You can remove it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The angels have the phone box!

    Steve Norris
  • epicjr77epicjr77 Posts: 29
    edited 2008-04-30 02:38
    kind of like the irobot connectR
  • StampNut2StampNut2 Posts: 224
    edited 2008-05-14 07:34
    A very nice project Norris56, I would like to do this to my Lynxmotion J5

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Never give up when things go wrong, Just work them out.

    robosapienv2-4mem8.page.tl/
  • Jon4RoboticsJon4Robotics Posts: 1
    edited 2008-06-15 21:09
    What a great job! The laser pointer is a good idea because looks can be deceiving when driving around remotely.
Sign In or Register to comment.