Need advice for best solution for "follow me" robot

I'm working on a project where I would need to implement "follow me" functionality, but I have a few project constraints.

  1. Needs to work indoors - so no gps following
  2. No CV/AI. It needs to be a simpler solution than creating computer vision algorithm.

Ideally I would like to have some RF device that the robot could pick up and follow the signal.
So far the only solution I have came up with in my research is using some UWB device (like DW1000/BU01) they basically work as localised GPS devices. With two anchors it could give me the angle and distance of tracked object - even when going around corners. Thou this might be a bit of overkill for the project.
I really don't need such precise data, it would be enough with just a general direction and distance.

I appreciate any input you might have.

This video claims to achieve it with 433Mhz transmitters Intelligent Tracking Robot System Based on Radio Frequency Passive Location - YouTube

1 Like

Two of the DW1000 devices are all you need, although three are better.

With only two, the "follow me" algorithm would have to zigzag to find the direction of travel that reduces the distance to the target.

But two devices would only give me the distance. I wouldn't have any angle information. Well I guess it would work, but not smoothly. It would need to do offshoot course correction quite often.

If your conclusion is that using two DW1000s would not be "the best solution", then you are on the right track!

This is not a simple problem.

With a rotating 'robot' and highly directional antennas that can scan for the strongest signal (easier using 2.4Ghz RF devices) it might be possible. Not tried it however.

But not a simple problem to solve at all.

1 Like

Good point about antenna directionality.

The DW1000 modules with the PCB antenna are directional to some extent, and the module could be mounted on a stepper or servo for rough direction finding.

Well to me it seems pretty spot on. I have seen some examples with other methods, but can't find any details. Like the video I put in the original post - 433Mhz signal with four, what seems to be omnidirectional, antennas.

String.

Tie one end to the robot and the other end around your waist or wrist.

This will enable the robot to follow you even when it's batteries are flat.

You may have heard that using String in arduino sketches can cause issues, but in this case it will be fine.

2 Likes

Yes, what 'appears' to be omnidirectional antennas.

Very suspicous.

If the string attached to the robot, was threaded through a loop in the end of a long stiff wire, switches on the robot end of the wire could be used to detect if the robot was veering off to one side.

Or use elastic instead of string and tie it to a joystick mounted on the top of the robot.

Yes this is something I might try out. Thou at this point it seems that DW1000 would be the most straightforward way to go. It seems to have a lot of issues of its own, like not appreciating other objects next to it, but I really don't need high accuracy in this application.

The video has no useful information, and the author refuses to reveal the types of RF modules in use or the code, except to comment "ordinary FSK transmitters" and "phase and magnitude detection". There is no reason to believe any of it.

What does this mean?

It seems to have a lot of issues of its own, like not appreciating other objects next to it

Pololu makes an IR beacon, which allows pairs of robots to locate and chase each other directionally: Pololu IR Beacon Transceiver

1 Like

I considered using IR. It could work, but would be sub optimal solution. The "leader" needs to always be visible, so you can't just stick it in your pocket and go. And follower can easily get lost if there is human traffic or some clutter. You could try to solve it with software to just continue to the last known location and hope to find it.
And it seems that this IR module wouldn't work in collision mode with multiple pairs, it would need to be a lot more advanced by sending some actual information in the signal, and even that would probably have some limits. Not to mention all the real world interference IR would have.

This definitely is an interesting problem.

Directional radio has "real world interference" and is line of sight only.

I'm far from a radio signal expert, why would directional 2.4Ghz'ish receiver wouldn't detect a signal? I was under the impression that it penetrates objects relatively well.

Why does directional receiver makes it line of sight only?

Its the opposite.

The higher the frequency the worse the absorbsion and penetration.

Why does directional receiver makes it line of sight only?

Indoors, where there is no objects, doors, walls etc between TX and RX then there is 'line of sight' and you can use directional antennas.

As soon as objects get in the way, then the strongest signal might well come from a different direction due to reflections etc. This is a particular problem indoors.

You need to get some radio modules and experiment, your designing the project after all.

Yes that much I know that low frequency goes thru things better.

But how am I using wifi right not that is in my house going thru 2 walls?

But isn't this a race condition? There might be stronger signal, but they would arrive later. As long as the signal that is going thru object is good enough to detect and decode then the stronger reflection shouldn't matter? I'm purely speculating here and probably wrong in all my beliefs.

I ordered both DW1000 and some 2.4GHz modules to experiment with.

You were asking about directional antennas.

And why would an attenuated signal 'arrive later' ?

Relatively high power transmitter (typically 1 to 5 W), decent antennas, wood or thin sheet rock walls.

BTW I use and recommend these MakerFabs modules: ESP32 UWB(Ultra Wideband) | Makerfabs

DW1000 "ranging" distance is about 33 meters maximum, line of sight, outdoors, using the default settings.

1 Like