Multiple NXT communication
10 years
Hi there,

I will be undertaking a large scale project soon, and will need to make multiple robots to be controlled by the input from a webcam........much like robosoccer. Each robot will have some autonomy(a system in its own right), but if the larger system (the camera attached to a pc) sees something it doesn't like, then it will take over control of the robots and attempt to 'correct' them.

I was just wondering whether this system sounds possible using 1 pc, 3 nxt modules and one occurence of roborealm running. How would the 'mailbox' system work with 3 robots?

Cheers for now

Ian :)
Multiple NXT Robots
10 years

Sounds like that is possible using an overhead camera. The tricky part will be to get the communication system working well. We checked the Lego NXT bluetooth direct command documentation and there is no way for a PC (given the current interface) to write a message to more than the directly connected Lego NXT. Thus you will probably have to use on of the Lego NXT robots as a relay .. i.e. it is in direct communication with the PC and receives all messages from the PC and will forward them to the other Lego NXT robots. The GUI block builder's message write block DOES have the ability to send messages to a total of 4 connections (read different Lego NXT bots). Thus with 1 pc it appears that you would have a max limit of 4 lego robots in this scenario. Not sure if that is enough for your application.

Regardless, the first task would be to verify that a single lego NXT can operate as a relay to the other NXT robots. As we only have one Lego NXT we unfortunately cannot test this capability.

Let us know how it goes.

If anyone else reads this post and knows better please let us know!


Anonymous 10 years
See, the thing is that, as with most cases we are wanting to know whether things will work before we fork out, as you can understand :)

We are actually envisaging using 3 NXTs,so from that aspect things seem ok. I am not quite sure how NXT works, but I guess as long as one NXT can be the master, then relay the information on then this could be ok. I found this on another forum

"The problem (I think; somebody want to prove me wrong?) is that the “master” NXT can send messages to at most three “slave” NXTs, but the “slaves” can not then act as BT masters to still more units. In other words, it seems very very easy to link four NXT together via BT, but very difficult to extend this using single NXT units. You could dynamicly switch the BT net around if a NXT-G program could set up new BT connections on its own, but this is a functionality that you do from the menu system. I’m certain there’s a way to do it - but I’ve not found it yet in NXT-G. Then again, most of us don’t have 4+ NXT units to play with (OK, almost none of us), so it may be interesting to see what gets learned at BrickFest.

-- Brian Davis "

Er, so we are actually only thinking about this at the moment.

My group was under the impression (sorry if it sounds stupid!) that RoboRealm only works with modules/robots you have specified, such as the RCX,, The NXT and Surveyor modules, just to name a few....

But, say if we were to develop our own robots, using Maxstream's Zigbee module (such as on the surveyor)..........would it be a good idea / possible to develop code using RoboRealm still?

We are trying to use RoboRealm as there is only 1 software engineer in our group and he has never used computer vision before.

Essentially our project, as I said, is about autonomy, and the computer taking control or implementing code into the autonomous robots to stop them doing things wrong. And, as you guessed, we are using an overhead camera. We have developed robots before, but not to this extent..........especially with the use of cameras and wireless coding/control implementations.

I guess we could call them swarm robots, as there has to be more than 2 robots.
Anonymous 10 years
Oh, and cheers for your original reply by the way! ;)
Anonymous 10 years

Yes it is possible for RoboRealm to be used with other Robots, that is the reason the RoboRealm API exists in so many languages. There are several cases where the system is used as an Image Processing Server just talking to cameras and serving up resulting variables to other programs.



This forum thread has been closed due to inactivity (more than 4 months) or number of replies (more than 50 messages). Please start a New Post and enter a new forum thread with the appropriate title.

 New Post   Forum Index