Jul 17, 2006

Robotics Studio based NXT Remote Control

Remember my earlier posts regarding some tries with Microsoft's Robotics Studio?
Well, it finally resulted in a first version of an application that enables you to remotely control the NXT motors with a simple graphical user interface running on the PC (to be more specific: on the Robotics Studio runtime).

Feel free to have a go at it - feedback is highly appreciated.

9 comments:

Anonymous said...

I may just not be as good with text programming but I can not seem to get the NXT remote control to work. I seek clarification. All I could understand from teh readme instructions was to copy the service files into bin/service. The other directions (changing enviroment etc)were lost on me and I have clicked almost everything that can be clicked. Help.

Matthias Paul Scholz said...

Hi anoymous,

I tried to limit the Readme instructions to the steps that are to my knowledge the required ones to get the service running - in the end, it's actually not more than the copying to the services and the execution of the run.bat.

Didn't that work for you?
What problems are you facing with it?

Regards,
Matthias "likes Brian's idea of adding long middle name comments to his signature" Paul

Anonymous said...

Dear Mathias,
first of all, compliments.
Then I installed everything.
I configured com3 in the xml file, because on my pc it is so.
1) What steps are required to do on the NXT?
2) On PC side, is sufficient only to run your application or is necessary to setup "something" on the bluetooth dongle?
Thanks, Pietro from Italy

Matthias Paul Scholz said...

Ciao Pietro,

> 1) What steps are required to do on the NXT?

Given that Bluetooth communication between your PC and the NXT works in principal (best try it with the NXT-G software) none particularly related to the Robotics Studio that I know of.

> 2) On PC side, is sufficient only to run your application or is necessary to setup "something" on the bluetooth dongle?

Running the Run.bat file should be sufficient.

What is the output on the Robitics Studio shell you get?

Regards,
Matthias Paul

Anonymous said...

Dear Matthias,
thank you for answering (I can "play" with NXT only after dinner, when all my childrens are sleeping).
- I tryed with NXT edu Software and the Bluetooth is working fine.
- The Bluetooth dongle is connected in COM3, so I edited the xml files, as you described and I replaced the number 5 with 3.
- I tryed to run a motor, but without success;
- doing something on your remote-control panel, the output of the Robotics Studio shell is:
Motor A forward
LegoNXT::SendLegoCommandHandler 4 0 False 0 100 1 1 100 32 0 0 0 0
LegoNXTMotor::SetMotorPowerHandler 0 -> 0
LegoNXT::SendLegoCommandHandler 4 0 False 0 0 1 1 100 32 0 0 0 0
Motor A stop
LegoNXTMotor::SetMotorPowerHandler 1 -> 100
LegoNXT::SendLegoCommandHandler 4 0 False 1 100 1 1 100 32 0 0 0 0
Motor B forward
LegoNXTMotor::SetMotorPowerHandler 1 -> 100
LegoNXT::SendLegoCommandHandler 4 0 False 2 100 1 1 100 32 0 0 0Motor C forward
0

Where could be the problem?

viel danke und auf wiedersehen
Pietro Alberti

Satish said...

Here is a link to another NXT Robot controlled using MS Robotic Studio
http://blogs.msdn.com/windowsmobile/archive/2006/07/18/670262.aspx

Matthias Paul Scholz said...

Pietro,

from the console's output you sent I deduce that the bluetooth messages are actually sent ( the "LegoNXT::SendLegoCommandHandler" statements); on the software part there's no error, at least none that gets displayed.
Hence I'm out of my diagnostic means here.
Did you try to run the robotics tutorials already, in particular no. 4? Do they work on your machine?

Anonymous said...

Ciao Matthias,
I'll do a step back on reading the tutorial...
Ciao e grazie, Pietro

Matthias Paul Scholz said...

There have been some problems reported by other people with this one (which works without any issue for me), but I never could figure out what went wrong with it on their machine (people tended to not following this up until the end).

As Robotics Studio is a Technology Preview and beta, it's rather picky on configuration - I noticed that often things do not what they should not because the actual application is broken but because some config files are incompliant or some global settings are incorrect or Bluetooth does not work correctly or the likes.

That's the old great disadvantage of highly configurable, highly flexible, highly generical frameworks: you are relieved from writing the low-level communication code, but pay with an extended configuration effort for that (sometimes with a configuration nightmare), even more on frameworks where tool support for configuration is still low (as with Robotics Studio).
Remember J2EE in its childhood.

So a good strategy when something goes wrong with an RS application is first of all to try out if the samples that come with the preview do work at all.

As a matter of fact, I have lost touch with the evolvements of Rovbotics Studio over the last two months, for I have been so busy with other NXT-related stuff.
Some day I will resume that thread, yet.

Cheers,
Matthias Paul

Related Posts Plugin for WordPress, Blogger...