PC-Bot with .NET

July 17, 2007
Whitebox Robotic’s PC-Bot supports a range of software platforms including Microsoft’s .NET framework. Technology Editor Bill Wong takes a look at the .NET controls.

This is the first of a series of articles examining software platforms that work with Whitebox Robotic’s PC-Bot including .NET components, Microsoft’s Robotics Studio (See DK Targets Emerging Robotics Market) and the open source Player Stage project. The .NET components are specific to the PC-Bot like the BRIAN control program Real Robots: White Box Robotics PC-BOT While the latter provides immediate control of the PC-Bot, it tends to be used for basic testing of the hardware. Likewise, the .NET components provide basic access to the hardware. They do not provide a framework like the Robotics Studio or Player Stage but the components are simpler and easier to start with. Likewise, they can be used to build different robotic software frameworks. The two articles that will follow this look at the Robotics Studio and Player Stage. These have drivers that are comparable to the .NET components examined here but they are just part of a larger framework designed to simplify complex robotic applications. This article concentrates on the .NET components. PC-Bot.NET Components Whitebox Robotics provides five .NET components, which can be integrated into an application using Microsoft’s Visual Studio 2005. The components include: M3 Drive Sensor Message Toolbar The M3 .NET component is the real control system. It provides access to the features of the M3 control hardware in the PC-Bot. The others provide useful user interface features that work with the M3 control. The M3 component can drive the wheel motors, read the odometer and the sensors attached to the M3 hardware. The latter include the Sharp IR sensors that ring the PC-Bot. They come in 80cm and 150cm versions. The values are from the ADC (analog-to-digital converter) inputs connected to the analog IR sensors. The Drive, Sensor, and Message controls provide a graphical presentation designed to work with applications like the samples provided. These are linked to the M3 control that actually provides feedback from the sensors and activates the drive motors. Finally, the Toolbar provides another interactive link to the M3 control. In particular, it allows the user interface to connect and disconnect with the PC-Bot. It can also calibrate and reset the PC-Bot. The latter is very handy software kill switch. Whitebox Robotics provides a pair of DLLs (dynamic link libraries) for the controls. These can be distributed with an application. The single, online document is short but more than sufficient to describe the functionality of the .NET controls. The .NET components were easy to get up-and-running with Visual Studio but that is when the real work starts. The sample application highlights the basics and it may be more than sufficient for many developers especially those migrating robotic applications or frameworks from other platforms. For others, it is a way to learn about the capabilities of the PC-Bot and how to control them without having to figure out the complexities of Microsoft’s other platform, the Microsoft Robotics Studio. Related Links Microsoft Microsoft SourceForge Whitebox Robotics

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!