The recently introduced Oculus Telnet Programming Interface allows one to easily devise scripts that give the robot complex autonomous capabilities. We’ve come up with a Python program, that anyone with an Oculus can try, that puts the robot into surveillance mode when parked in the charging dock. Basic functionality is as follows:
- While docked: run microphone, listen for loud noise
- If a loud noise is heard: optionally send email alert, then back away from dock, and start up camera
- Rotate through 360 degrees, stopping occasionally to watch if motion is detected by camera
- If motion detected: send email alert
- Return to charging dock
- Go back into listening mode
- The un-dock and rotate/motion-detect routine can also be defined to happen periodically, whether or not any sound is heard
If it detects darkness and the OcuLED light is attached, the light will be turned on. If someone logs into the robot via the web or mobile apps, the script will exit and wait until the user is logged out, so there will be no conflict for control.
Sound and motion sensitivity, and other settings, are set as variables at the top of the script.
To give it a try, follow these directions:
- Update to the latest Oculus Java Server software via. the remote control web client software update (or download the full OCULUS JAVA package from here)
- Install Python if you don’t already have it
- Download the program file oculus_surveillance.py (right-click and ‘save as’)
- Change the USER VARIABLES at the top of the file to the appropriate values (see comments next to each variable for explanation)
- Setup your email settings if you haven’t already
- Run Oculus Java server on the robot
- Once it’s running and Oculus is in the charging dock, run ‘oculus_surveillance.py’ on the robot. (It’s difficult to execute a program on the laptop while it’s in the charging dock; you can either run it remotely using VNC or other remote desktop, OR run it while un-docked, login and dock the robot, then logout. The script will wait).
The complete script ‘oculus_surveillance.py’ (with syntax highlighting and extensive comments) can be viewed and downloaded from here
The Economist March 9, 2013 issue has a thorough article on the robotic telepresence market, in the Technology Quarterly section
“Telepresence robots are gradually getting cleverer. Some, like the Oculus, automatically dock themselves to a nearby charging station…”
The latest update to our Oculus-Java server software features the powerful Telnet Programming Interface. It allows programming and automation of the Oculus Robot using virtually any programming language that supports socket connections and text manipulation. Simple scripts can have complete control of the robot by conversing with the server using 70 Oculus Text Commands. A new Programming Oculus section has been added to the documentation, including some example scripts.
With the Telnet Interface you can, for example, write scripts that give Oculus automated surveillance capabilities with the new motion and noise detection command:
setstreamactivitythreshold. If detects anything, it can send an email or post an item to the new Oculus RSS feed.
The update is available for download on our download site, or via. auto-update within the Oculus web-client (go to menu > server menu > check for software update).
New in Release Build 643
- telnet interface incl. output tags, access to all text commands
- ‘help’ command with quick help for individual commands
- ‘oculus text command’ in advanced menu in web client
- argument checking for commands, telnet interface
- improved Linux com port discovery
- Linux support for quit + restart,
- Linux ‘speech’ command binds to espeak
- Linux support for remote system volume, monitor/screensaver on/off
- Linux support for auto software update
- video activity (motion) threshold
- audio activity threshold
- ‘getlightlevel’ command
- ‘email’ command using smtp server settings
- ‘analogwrite’ and ‘digitalread’ commands (ArduinOculus firmware v. 0.5.5+)
- moved autodock vision to java (formerly in actionscript), speed improvements
- improved autodock imaging, reduce false-positive dock detections when not visible
- RSS feed, and ‘rssadd’ command
- key binding ‘M’ to open/close menu in web client
The Oculus TeleOperator app for iOS is now available for download from iTunes! It is a free app, designed for the iPhone, iPad and iPod Touch. This version allows one-way audio and video, and snappy, real-time control of the robot and OcuLed headlight. The on-screen controls can be made ‘always visible’ (recommended for the iPad), by selecting ‘More’ from the main menu, and setting the ‘Controls Always Visible’ check box.
Extended functionality is available by sending Oculus text commands directly — go to the ‘More’ menu, and enter commands in the ‘Send Text Command’ box. A complete reference of commands is listed here.
Android users can download an equivalent version of this app at our google code site.
Xaxxon Technologies made the top 100 list of Entrepreneur Magazine’s “annual look at the brightest ideas, the hottest industries and the most insightful innovators.” We’re under the Invention category
|© 2013 Xaxxon
follow us →