I'm working in a computer vision project and I'm having problems with the comunication between the robot and me. I'm working with the robot called robuLAB 10 and I can't find anywhere a tutorial or something similar which explains how it works.
The robot uses Robubox, which is built at the top of MRDS. The robot has an OS (Windows CE XP).
My actual problem is that I don't know how to program it:
- What exactly am I supposed to do in order to get the information from the sensors and give information to the motors in the programm? Because I have done the tutorials form MRDS but they are done for lego robots, and I dont know what services I have to put in each sensor or actuator, and what is more important, where are they.
- When I finally finish the program, What I have to do?, should I copy it in the store folder of the robot and launch it from the control panel in the page localhost:50000?
Please help me. I'm so Lost!! and Thank you!!
robuBOX is meant to support Robosoft robots. So it is not directly supported by Microsoft.
If you understood the Lego examples, it should be quite easy to get you to work with the robuLAB10.
(By the way, I saw you sent us a support request, we would need the serial number written on the back of the robot to give you more accurate answers).
To give direct speed commands to the robuLAB, you need to use the "Differential" contract. You can write a service that partners with the robuBOX "Differential" contract (available in RobuBOX.Core.Proxy.dll, in the namespace RobuBOX.Core.Devices.Differential.Proxy).
Once this is done, you can use one of the manifest that we provide that will "wire" your service to a real robot or to a simulation.
Also, if you can give some details on what you need to do, I can write the structure of a service for you and indicate where you should put your processing code.
First of all, thank you a lot for your availability.
Yes, I sent you an email. Tomorrow I'll go to the lab in order to look for the serial number of the robot so I can email you again with all the requested information you asked me.
I also can tell you in the e-mail what I exactly need, but anyway I'm going to write it here too.
I have done the Lego tutorials as you said, but theres one point in the tutorial when it sais, "try it out" and it simply says that I have to debug it and try it with the real robot. Well, when I finish the program I dont know what to do, I dont know which files must I put in the robot, and where I have to put them, and how to start the programs I do. Also, I dont know which manifest I have to put in the program if I want to access to the sensors, motors and so on, because it is ok for the lego example (/m:"samples/config/LEGO.NXT.MotorTouchSensor.manifest.xml"), but which ones do I need for the robuLAB10?
I know that it must be really easy to do and the most basic task, but I need help because I have no idea of how to do it, and I have tried so many things. I really appreciate your help!!
Do you have the robuBOX development package?
You can download it here:
The documentation explains how to install it on top of an MSRDS install.
It also explains how to run the example manifests in the Tutorial section.
Once this works, you can use the source code of a provided service to develop your own algorithms.
For example, you can start with the differential gamepad control to see how to send linear and angular speed targets to the robot.
After it depends on the robot options you have. Some are delivered with a tabletPC, on which you can deploy an application.
Some others only have the low level controller, but you can connect through the robto wireless network and run applications on your computer.
Yes, I have the robubox development package, but I couldnt see clearly how to run aplications in the user's manual...
I have just sent you an e-mail but until monday I m not going to be able to check the serial number, I explain in the e-mail why.
Anyway, I have noticed that applications are launched with de cmd writting: (dsshost.exe -p:50000 -t:50001 -d:example.dll) Is that correct?
Im afraid Im gonna have more doubts...
thank you a lot again for your patience... :)
Yes this is a possible way to start a service.
The usual way is to use a manifest file (the -m option), which is basically just a list of services to start, with some additional parameters, like which partners should be used and what configuration file to load.
With the -d option, it will just search for a service in the dll and start it with default settings.
With a manifest file, you only give the services names and parameters, and dsshost will find the corresponding dll and setup everything according to your parameters.
Thank you a lot.
After all the problem was that when I opened the internet explorer and the page localhost:50000 was launched, I looked for the services availables but there were nothing. at last, a noticed that it was a bug and now I have a solution to fix it.
I have just sent the e mail with the serial number. Basically what I need is a service with acces to the us sensors, the laser and the differential drive in order to put in that program my navigation algorithms. Im trying to do it with the robuBOX samples, but Im having strange errors when I try to compile...
If you could make a service with acces to the sensors (US and laser) and to the motors (differential drive) in which I could introduce the algorithms it would be great!
thank you again.
I am using a kompai robot robot base (robulab 10) which uses mrds 4 and robuLAB, however, there are not samples that reply to my needs. I am using a C++ rest SDK to program and send requests.
Do you have any sample code or examples, that you would like to share?
Thanks in advance