How to setup the serial port to communicate with an ARCOS robot?
The concrete case I am describing here is a MobileRobots Pioneer 3 DX robot, but I think this applies to any ARCOS based robot.
Interfacing with the Pioneer 3 DX hardware via Microsoft Robotics Studio requires some configuration. For instance, the first problem I faced was to setup the correct serial port. Some P3 DX setups include an embedded computer; however that is not my case. Instead, I am using a regular laptop connected to the serial port of the robot (actually using a USB to RS232 adaptor). This means that the laptop will communicate with the robot through com3, com4 or whatever comX that Windows driver assigns to the USB to RS232 adaptor. For initial testing I was using the Robotics Tutorial 5 included in the Robotics Studio distribution.
In my case, the port was COM4, so how could I tell MSRS to use laptop’s COM4 port to communicate with the robot? I asked that question and this is the answer from Microsoft:
You will want to check the DriverState section and adjust the connection settings...
You can create it as follows: 1. Run VPL 2. Drag the "Arcos Core" service on to the pallette 3. In the properties tab, change Configuration to "Set initial configuration" 4. Update the DriverState section with the appropriate config 5. Save the diagram 6. Find the ArcosCore.Config.xml in the directory where you saved the diagram and copy it to [1], making sure to change the name to "ArcosCoreService.xml". 7. Run your service again.
[1] C:\Microsoft Robotics Studio 1.5 (CTP May 2007)\store\ArcosCoreService.xml
Take into account that this applies to Microsot Robotics Studio 1.5 CTP May 2007 (and I have done it with the official 1.5 release as well). I don’t know whether or not this will work for future releases.
The ArcosCoreService.xml file contains more configuration settings that can be altered either using the VPL or editing the XML file directly.
The following is an example of the ArcosCoreService.xml file: