How to make a Follow-me robot - Page 1
Forum section: electronics / projects

author: praveen_khm
author_rank: Contributor
timestamp: January 12, 2016, 03:41:50 pm
content: Hi,I am looking to make a wheeled robot which follows me. Few things I know and am interested in :I know how to make a wheeled robot, run the motors, configure Sonar (Ultrasonic Sensor) and measure distance. However, what I do not know is how to make it follow me. I am less interested in Sonar, IR as they have issues with range, line of sight and multiple sensor requirement.So, is there any way to use bluetooth or RF technology to make it follow me? Is there a way we can find out distance from bluetooth and rf? I am good with AVR microcontrollers and any related suggestion would help me more though other supportive suggestion is welcome. While checking online, found "budgee robot" from 5elementsrobotics which seem to fit my requirement. However, they have not provided any code, microcontrollers used, or any relevant information. Kindly help...Thanks,Praveen

author: Skimask
author_rank: Super Contributor
timestamp: January 12, 2016, 03:45:19 pm
content: Two words...Google

author: praveen_khm
author_rank: Contributor
timestamp: January 12, 2016, 04:22:44 pm
content: For the quick response, Two words...Thank you...I did checkout the video and it does follow nicely. However, as mentioned earlier, I am off with ultrasonic for a couple of reasons. 1. It requires the person to be right in front of the robot. I am looking for a solution which makes the robot identify whether the person is in front or back or anywhere near. Secondly, the ultrasonic sensors should be clearly visible (it does go through a layer or two layers of fabric, but it should be in line).I have added a rough sketch of what the robot has to do. Irrespective of the direction, it should move towards him/her. Camera is another option, but it should still be visible. Wifi is not possible as it should be used outdoors. So, possible solutions are Radio Frequency (RF) or Bluetooth or any other magical technology which you guys should suggest. GPS is also good, but it points way too much away from the location (few meters to 10's of meters). Any more suggestions?

author: rrinker
author_rank: Super Contributor
timestamp: January 12, 2016, 04:49:56 pm
content: Quote from: Skimask on January 12, 2016, 03:45:19 pmOK, that's nice. Now make it walk on dozens of little legs......

author: Connoiseur
author_rank: Regular Contributor
timestamp: January 12, 2016, 04:59:34 pm
content: You can carry around a source of radio waves (pure sine) and mount a yagi antenna on your bot, rotating around 360 degrees. The direction in which you get the maximum signal is the direction of source.

author: praveen_khm
author_rank: Contributor
timestamp: January 12, 2016, 05:10:41 pm
content: With all the responses, is it impossible to use RF or bluetooth to find distance? Yeah Antenna is a good suggestion, but I can't imagine it rotating it around. All I require is something which hides inside and not keep rotating around.

author: Marco
author_rank: Super Contributor
timestamp: January 13, 2016, 12:27:11 am
content: It's possible by determining the time of flight, but I'm not aware of any COTS solutions to do it with RF. It would be easier to do everything with ultrasonics, the errors for non direct paths aren't really much of a problem in this case AFAICS.So you'd put a receiver array and one transmitter on the front, and one receiver on each other side of the luggage. You carry a device with you which sends a pong if it receives the ranging ping from the luggage. This allows the luggage to determine the approximate distance and direction you are, it can also use the ultrasonics for obstacle avoidance.

author: praveen_khm
author_rank: Contributor
timestamp: January 14, 2016, 08:12:50 am
content: Hi,After researching a lot on follow me golf carts, there is one known as "X9 Follow - Stewart Golf" which follows a person using bluetooth technology. It seems to have two Bluetooth modules on each wheel and some kind of a triangulation to find the distance and direction of the remote.The remote seems to have another Bluetooth module or a RF transmitter which controls the direction and speed of the cart. To find distance, they seem to get bluetooth RSSI (not documented anywhere) and based on the amount of signal received, find the distance from the remote as well as a comparison between two bluetooth gives the direction of the robot.With this information, I am sure I will go nowhere near to make one myself. Any further help with getting this information to a microcontroller and controlling should be helpful.

author: Mechatrommer
author_rank: Super Contributor
timestamp: January 14, 2016, 03:51:46 pm
content: triangulation need some distance to estimate more accurately, the closer the 2 receiver modules the more challenging the task will be esp near light speed transmission. i havent studied more closely but its yours, afaik RSSI is signal quality. from the difference level of signal quality at 2 points, you can estimate the location of the transmitter using simple trigonometry taken the fact that rssi level is proportional to transmitting distance. but the devil is in the details.

author: DmitryL
author_rank: Regular Contributor
timestamp: January 14, 2016, 03:53:51 pm
content: Quote from: praveen_khm on January 12, 2016, 03:41:50 pmErrr... Take a piece of rope. Tie it to your robot and the other end to the belt on your pants. Done!

author: Mechatrommer
author_rank: Super Contributor
timestamp: January 14, 2016, 04:07:01 pm
content: Quote from: DmitryL on January 14, 2016, 03:53:51 pmmy thought exactly about 24 hours ago but that would not be a brilliant suggestion would it? but this ancient method will prohibits passers by from crossing over usually found in crowded area which an issue for anything wireless including ultrasonic or radio transmission, rssi reading may go off in the situation rendering triangulation gone whacky, not much defference from ultrasonic but.. ymmv.

author: DmitryL
author_rank: Regular Contributor
timestamp: January 14, 2016, 04:16:03 pm
content: ... I would like to see how some robot will follow its master in a very dynamic crowded environment...

author: Marco
author_rank: Super Contributor
timestamp: January 14, 2016, 04:18:40 pm
content: Quote from: praveen_khm on January 14, 2016, 08:12:50 amThat's asking for trouble in an obstructed environment with lots of metal, like say an airport lobby, ultrasonics make the whole thing easier and also provide some obstacle avoidance. Why are you hung up on RF?

author: praveen_khm
author_rank: Contributor
timestamp: January 15, 2016, 10:24:03 am
content: QuoteNo. Not really. I am ok to use ultrasonic sensors, but there are few issues with ultrasonic sensors.1. It should be visible unlike bluetooth which can be hidden inside the robot2. I would need a minimum of 6 sensors to cover all four sides (all visible though). If I need to adjust the height of the user, then add another 3-4 sensors to check signals coming from different sides (4 on 4 sides, flat to the ground, few pointing downwards and few pointing upwards to make sure remote signal is captured. Never know if the user wears it on his hat, belt, or worst on the shoes).3. Bluetooth/any Radio waves covers circular radius and a single or two modules are enough to cover all sides.Ofcourse in terms of object avoidance, I still have ideas to implement ultrasonic sensors.

author: tggzzz
author_rank: Super Contributor
timestamp: January 15, 2016, 01:14:51 pm
content: Quote from: Connoiseur on January 12, 2016, 04:59:34 pmClearly you don't understand radio propagation

author: janoc
author_rank: Super Contributor
timestamp: January 15, 2016, 03:19:57 pm
content: Ultrasonic sensor will have difficulty identifying the "rightful owner". You don't want your luggage/robot wander off with someone else because it has picked up some high-pitched noise, do you?For a "serious" application I would probably use a camera and some sort of computer vision based system instead. There are plenty of various autonomous paintball turrets and such using cameras to track the movement and guide the gun, so a similar approach would probably work here as well.The "authentication" of the owner could be done by teaching the machine how the owner looks (color, shape, face if visible, etc.) and then searching for that pattern in the image.BTW, the simplest way to implement such robot is two photoresistors/diodes with an opaque divider between them. The user carries a beacon (a flashlight for example). When the left sensor sees the light, it will turn on the right wheel, when the right sensor sees light, it will turn on the left wheel.When the light is visible by both sensors, both wheels will be turning and the robot drives straight, otherwise it will turn towards the light until both sensors see it and then it will drive towards it. The longer the divider is, the more accurately will the robot drive toward the target. The robot drives straight only when the beacon is exactly on the divider axis, otherwise only one sensor will see it and the robot will zig-zag towards it. It is a good lesson from control theory.This sort of scheme can be implemented using purely discrete components - about 3 transistors per side. Toys of this kind were really popular back in the 70s - if you heard about a "turtle", it likely was this kind of robot - typically equipped with "feelers" and bumper sensors too to give them some way to avoid obstacles. A fun experiment is to build two of these, put a beacon on each and have them chase each other.Of course, you would likely want to use some sort of modulated light or IR to avoid problems with ambient light. It is actually very similar to what was used by Germans in WWII to guide bombers on target and to help them land in poor visibility, they just used radio signals instead of light. The same idea is used by the ILS today for landing approach (again RF). PAPI lights used to guide planes vertically use this principle too. And also the Roomba uses this technique with 2 IR signals to guide itself back on its charger.

author: Bud
author_rank: Super Contributor
timestamp: January 15, 2016, 05:26:14 pm
content: A small drone with a camera may be, tracking the user from above, guiding the land robot where to go.If environmental/legal allow use of a drone, certainly.Edit: yes the user may need to wear an orange hat

author: Marco
author_rank: Super Contributor
timestamp: January 15, 2016, 08:05:41 pm
content: Quote from: janoc on January 15, 2016, 03:19:57 pmYou'd have a device on you ponging to its ping.

author: janoc
author_rank: Super Contributor
timestamp: January 16, 2016, 04:18:10 pm
content: Quote from: Marco on January 15, 2016, 08:05:41 pmYeah, but then such sensor is unusable for ranging/obstacle avoidance. Ultrasound is not very practical for this purpose.

author: Marco
author_rank: Super Contributor
timestamp: January 16, 2016, 04:33:01 pm
content: I don't see why, the pong can be delayed a bit so it won't interfere with reflections.

author: janoc
author_rank: Super Contributor
timestamp: January 18, 2016, 11:39:56 pm
content: Quote from: Marco on January 16, 2016, 04:33:01 pmDon't underestimate the time it takes to get an echo from a distant wall. Wall 10m away and you have 60ms (10m/342ms^-1 = 0.0292s time of flight one way, so 30ms ping going out and 30ms echo coming back) between the ping and the echo coming back already. How long is that "bit of delay" going to have to be? That is going to massively slow down the navigation/obstacle avoidance - especially when you consider that you want the robot driving at a reasonable speed to keep up with the person.This isn't a practical solution, IMO.

author: Marco
author_rank: Super Contributor
timestamp: January 19, 2016, 02:08:49 am
content: Shrug, can use a slightly different frequency or modulation for the pings too (or simply synchronize them and use a counter). So only 1 out of X pings gets responded to.