I have 2 computer named A and B. Both can move. Both can be connected in peer-to-peer network using wifi. Additional sensor and camera can also be added in one computer which is raspberry pi (computer B). I want to add some formation driving functionality so that computer B always try to follow computer A. if computer A starts moving away, computer B also follows A in same direction. I don’t want to maintain some constant distance between them. Computer B’s objective is to reach computer A. there can be another moving computer C but B should only follow A not C.

I could have used GPS if I want to test it outside in big ground, however in indoors I think GPS approach wont work.

Any feasible ideas which can be implemented without much complexity.

  • Accelerometer? They're not particularly expensive. – goldilocks Sep 2 '13 at 13:02
  • accelerometers won't work without the external reference, that could be GPS or WiFi triangulation or visual recognition, but all these technologies are very much beyond "much complexity". – lenik Sep 2 '13 at 23:18
  • Not really about Pi. Go an try Robotics Exchange instead. – Piotr Kula Sep 3 '13 at 10:25

You can try to use Bluetooth on both ends and check RSSI (Received signal strength indication) for an indicator of their distance. Simple instructions of how to do this can be found here.

| improve this answer | |
  • BUt direction can be a serious problem though. And it could cause the it to behave really spastic. Going back and forward trying to find bearing, sharp and sudden stops and turns. The stalker will never actually find the victim because 100% signal can be anywhere from a few centimetres to metres depending on the surrounding and antenna orientation plus the power used on the Bluetooth might be tweaked and over rated to increase distance. That will severely affect orientation. Triangulation is much more precise though! +1 for a unique idea that can be improoved. – Piotr Kula Sep 3 '13 at 13:13

Not really a specific question, more a call for help. But anyway, because it's fun to think how to do things...

If you don't want to use GPS, then yes an accelerometer would be best. This would give you readings as to what type of movement A has done. You would then replicate the movements with B. The trouble with the accelerometer is that it has no idea of where A physically 'is' - just that it has moved in X direction for an amount of time. You could look at something simple like the XLoBorg from PiBorg (http://www.piborg.com/xloborg) if you didn't want to mess around too much - it's a GPIO plugin board that monitors motion and direction. You will potentially need accelerometer boards on both Pis so that B knows what ground it has covered (you could of course just take it's word for it).

You would then need a way of A communicating with B. Either do this over wifi or you can probably use something like http://shop.ciseco.co.uk/slice-of-radio-wireless-rf-transceiver-for-the-raspberry-pi/ to communicate wirelessly over serial. Either way you'll need to write the software to both send and receive.

There is complexity here that I don't think you can get away from and possibly some tricky maths if you're not careful.

The only other option is to get A to tell B what it has just done. So if A moves forward 5, turns left 90 degrees and moves forward 5 again, it could just tell B that information and B could replicate it. This would give a master-slave configuration which could be just the ticket if you needed simplicity.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.