Microsoft is a robot whisperer -- with help from Lego, Surface and Windows Phone
Robots are pretty darn cool. For many years, humans have dreamed of a future where robots can do their work and chores, leaving more time for leisure. Unfortunately, many science-fiction books and movies predict that robots will eventually become self aware and kill us all. I don't believe in such ominous predictions, however. No, I think those fictional stories are simply the byproduct of fear of change.
Instead, robots should be a fun use of science and engineering. With that said, Microsoft recently tapped the Xbox Team for the Build for Good LEGO MINDSTORMS Robo Competition. Using three LEGO Mindstorm robots, five Windows Phones, and a Surface Pro, they created a rather epic Zoo Tycoon presentation.
"The exhibit created a real-life version of the Zoo Tycoon video game from Microsoft Studios that used LEGO bricks and robots instead of people. Using a Windows Runtime app (that is, an app that runs on the Windows Runtime APIs, like a Windows Store app) on the Surface, a 'player' built a zoo, exhibit-by-exhibit, by making selections in the app. When the player added a new animal exhibit to the zoo -- a polar bear, for example -- the app sent a simple Bluetooth message to one robot that delivered an exhibit (made of LEGO bricks). That robot then sent a simple message back to the app that the exhibit was delivered. The app next sent another message to a second robot to deliver (by airlift!) an animal to the exhibit. Finally, after the exhibit and animal were securely in place, the app alerted a third robot to feed the animal", says Eric Schmidt, Content Developer 2, Xbox Developer Content.
Schmidt further explains, "from the app's perspective, it connected three separate and distinct Bluetooth-enabled devices to which it sent various messages. The difficulty lay in establishing the Bluetooth connection with each robot and then sending and receiving messages. To accomplish this, the app used several of the Windows Runtime APIs designed for interacting with devices -- including the Windows.Devices.Bluetooth.Rfcommnamespace introduced in Windows 8.1 and Windows Phone 8.1".
As Microsoft continues to reinvent itself, this is the exact type of non-essential project that is needed. The company desperately needs to connect with younger generations and this definitely exudes "cool" -- well, except maybe the employees wearing animal hats...
If you are interested in specific programming examples from the project, you can check them out here.