I'm very intrigued by your project - well done! One possible refinement to turning, if being used on a common roadside sidewalk or on a street, might be to use a GPS "bread crumb" path so the drone doesn't turn too sharply through corners and consequently going off the path of a sidewalk or street. BTW this project would be outstanding workshop for aspiring follow-me drone coders (drone being anything that moves about autonomously ). Cheers from Austin TX.
Look at the suspension on that car!!!! Wow!!! Not only does it has the spring shocks, but it has two more shocks coming from underneath it looks like. I need to go watch your other videos to see how you made that or where you bought it from. That had to be pretty expensive. I have seen some RC cars with some pretty amazing suspensions but this one like like it all metal. ...those shocks underneath, and on all 4 wheels. They are probably not called shocks. Cool car.
It would be a fun project to do this with mag, acc, gyro, gps, all on a vehicle like a HPI savage flux or an Axial yeti xl, a vehicle that can handle some terrain! Then code it to stay under say 20% throttle until x meters is between antennas, then increase throttle up to value y until becoming within x meters again, these vehicles are capable of some serious speed if needed. Woukd make it interesting...
Very impressive!! I know this was recorded years ago...I've been considering buying an animatronic Grogu "The Child." The Mattel one that has remote control functions and follows is so noisy I was thinking I might just get the Hasbro one that doesn't move, and then buy a remote control truck or something less noisy to create the follow-me function. :) Your video showed up when I did a search. Alas, I do not have your skills to create my own mode of transportation for a Hasbro Grogu, but I enjoyed your video! ❤ ❤
At this point, I don't know if you solved the pin header problem or not. Simple fix might be to solder a jumper from a linked pad on the bottom to the pin that is soldered on the Arduino. Also useful, might be to heat that pin enough to adjust it in the header plastic. I really enjoyed the video, especially the kids in the earlier one :-)
Great project, can you set it up to follow you at a right angle? So record video from the side? I plan on using something like this to record RC Sailboat Racing on a boat in the water. Cheers!
Glad I found your video, I was thinking of doing something similar but using my mobile as the beacon and an old mobile with a usb-otg link to the Arduino.
Instead of programming it to navigate in a straight line to the tracking device, you should program it to follow the path of the tracking device. That way, it'll be less likely to bump into things. Obviously, you can implement this very easily by storing the tracking device's coordinates every second or fraction of a second so that the car can plot a route.
Yes, although with a total of 2kb of ram this is not really the board to use for that :) With it heading straight for the target, it's a lot easier to debug and clearly see how accurate the performance is.
This is great -- I have a question about your filming technique, how do you get the computer screen to pop up while you're talking and show the code and camera at the same time? Loved your explanation and of course the "lessons learned" sharing because no project goes perfect the first time, does it?! Not for me, for sure! Thanks for sharing
What a excellent work! I really want to build one like this, but I have no ideal to start. Could you please show the materials needed to use. It'll be great. Thank you!!
Hi ! I'm trying do to the same project, can you share the isketch ? How you set up the servo for direction control ? Amazing man, if you can help me i appreciate. Big Thanks!
Very cool, intersting stuff! most of it goes right over my head though ha ha Funny how it was still trying to follow you when it's upside down under the bench (-:
Hi iforce2d I love your project! Id like to make my own one and have fun with it. Could you please make a list of the materials needed to replicate it? Thank you in advance!
Raúl Almirón Were you able to replicate the project ? If yes could you please help me with circuit design part of it. How you Assembled everythingeverything
Very impressive Mr iforce and you didn't even break a sweat. If it's not too boring and you feel it's not too over my head or useful for other subscribers would you mind doing a short video on what code you changed or added in the multiwii sketch? I'm super interested but also aware that I am very very far removed from being competent code money and even tuning PIDs is hard work for me. Still really juicy and inspring all the same. I did love the confused kid in the background though I'm sure he was impressed too when you rode away and it followed, probably thought you were a bit of a fruit loop before that :) Can you set a minimum distance it will stop at and slow down/speed up when hitting min or max distances? What other steps would you need to implement it into a quad running a multiwii sketch already?
MicroRCFiend This is nothing to do with multiwii, I linked to the sketches in the description if it helps. If you have a quad running multiwii and using the nRF24 for radio control, it would be very easy to just overwrite the GPS hold location with the location of the TX. I may try that sometime but I'm not that satisfied with the current GPS hold performance of my quad yet, and I don't really have a good place to try it - the groundskeepers in this area already complained when I was driving a car there, I'd hate to think what would happen if I was wandering around with a quadcopter. Officially no radio-control stuff is allowed here, but they usually ignore us when we fly in that first area I was at there with the long grass, and I would hate to be the one to ruin that fragile situation for the other guys who fly there. Here in Japan "drones" have just been banned from public parks after some fuckwit landed a phantom2 on the prime ministers office or something stupid, and laws are in the works with 1 year prison terms for flying around government buildings, so it's not a good time to be attracting attention, even if you're causing no harm.
Hi Sir.I want to understand your code about the project.In your code,especially in CarRecvDrive code,you defined Home_location_reading 10.I think you use digital pin 10 for CSN (nrf module).Isn't it?And also I saw your ublox protocol for reduce number of microcontroller and increase speed but I can use 3 arduninos(because I have constrain materials).Specially at the GPStoI2C code, you used Tinygps++ library ,so compile error realized.Why?Which type tinygps++.h library is used?Can you share the library?Last question is how to control dc motor(what is the name of the dc motor in code?)?For example;stop,wait ,continuous?Which pin of code is controled the dc motor?Can you share same examples about the controlled a dc motor? Thank you for the video.
Can you tell me, in as simple a way as you can, what is the basic setup for how youre doing this(quadcopter also) . Am i right in saying, youre using an nrf... module, to write script onto, using it as a reciever, and inputting it onto that, and it then in turn can respond to your Tx? If so, how do you know how to write these scripts? And what programme do you use? Possibly a video in and unto itself? In the future, showing globally, how all that works, in one place? Id love to start working on getting my newly working quadcopter(450) to follow, circle, etc
I think I explained all this in the video, or at least in the previous video I mentioned (ua-cam.com/video/tPJg1y0IdHs/v-deo.html). I am holding a GPS and nRF module which transmits my current location. The car has an nRF module to receive my location. The car also has a GPS so it knows where it is, and a compass so it knows which direction it needs to go to move toward me. How I know how to write these scripts, is I spend days, weeks or even months reading the instructions and practicing :) I use the arduino IDE, all source code is linked to in the description. There is a ton of information about this all over the net already, otherwise I wouldn't have any instructions to read myself.
I, understand, but i think, what i find hard to grasp, and yet am in aw of, is how the lines of code(sketches), you've written, are actually talking between modules, to create the actual physical outcomes that we seek here. I downloaded some of your sketches to my tab, and i can see, how eventually, you can make sense of it. I may do so in small amounts at a time, i def want to get my quad following and orbitting. I've just so much going on, i'm like a juggling act on steroids.
owenkilleen you can open the serial monitor on the arduino IDE and see what's being exchanged. In this case (i would guess) the hand held homing beacon is spitting out its location and the car receives that and does a comparison with its location.
Nice work. Is it possible to rig an RC boat to follow me while kayak fishing? I've been struggling to find a solution for shooting video of myself. Landing a drone on my kayak on the open ocean isn't exactly wise.
Hi Mate, How about some ultrasound sensors? I was thinking about a very similar project to this but using also some obstacle avoidance method to avoid the car to ends up under my feet or like in your video, under your bike tires lol. Would you have a better solution than the Ultrasound? Cheers. Chris.
It's a nice concept, the follow me concept, but GPS seems not quite up to the job. I think you do need it, but it needs to be supplemented with something else for the close range positioning. I have not looked at the sketch to see what else you have hanging off the arduino, but it seems like some kind of radar scanner looking for radio waves coming from the "me" in follow me.
How much accuracy you really require? GPS is good for a few meters and is pretty cheap, but anything better than that quickly gets expensive and complicated. You can try assisted GPS with local ground station (around $400 for one roaming module), or UWB time-of-flight (around $10,000 for a dev-kit with four modules).
Thanks for replying. I think you are wrong. I think there is a way. I think you put a tiny military style rotating dish pointing up at the probable angle of the runner, ...and not really rotating, but moving from left to right in front of the RC car toward the runner or walker. It would just go back and forth and scan for the direction with the biggest signal. Ah, but if you could swing it, you could put 3 sensors on the front and then have no moving parts, and just have one sensor in the middle pointing dead ahead in front of the car, and two sensors on each side of that pointing outward at say a 45 degree angle from the middle radio receiver. The RF receiver that has the strongest signal helps point the car in that direction. It is still not wonderful I admit, but it could really tight up the way this thing works so it could follow the runner with more precision. ....if it would work. I do not know that it would work at all. You'd have RF flying all over the place. In certain situations you might be able to use 3 microphones sensing where the noise of the runners footsteps are the loudest. I think there is a $3 to $10 way to do it. What do you think? Do you think the 3 RF sensors following an RF coming from your phone, or 3 microphones sensing your footsteps in a quiet testing place, ...do you think any of those ideas would work at all? I look forward to your response. Thanks. Cool project btw. But some of us are too cheap for GPS. ...ah!! They are cheap now! Really cheap. I have not looked in a while. Still, I think a little bit more technology could be added to make it follow closely and more precisely and responsively. But I have not tried to do it either.
So do you think either of those ideas might work? Have you ever played around with trying to get some signal and devise a measure which direction the signal is strongest or coming from? Why couldn't you put 3 ultransonic recievers on the car, and an ultrasonic transmitter on the runner somehow. I guess the runner would have to point it at the car. Yeah, ... I hear what you are saying. The whole thing would be a mess, but I promise you there is some way to do it. AHA!!!! I got it!!! Tie a string to the car. That'll work for sure. No batteries. No electronics. In fact, the car does not even need wheels. You could just drag it along. However, this probably violates the spirit of what you were trying to accomplish. But still. What a great simple solution to the whole non-problem.
can u tell me where u ordered this frame.. See some frames in bangood but they dont show finished body and not sure where to get a strong one like yours?
It is amazing toy! I want one of those. Btw, what you think what happened near end of the video? Is maybe compass picking up magnetized steel stuff arround, and make mistake? Or, it is just an unhappy accident?
***** Okay. I am thinking about something, and this bothers me (since I am not good programmer), but you may give me some insight... Is it possible to make program so that when it follows you, it actually use GPS data of your past location and path you drive the bike? I mean, if you driving bike in semi-circle, car trying to get as shorter path as possible to your location. But, what if it can follow your path exactly? It will be useful to follow you on curved road (or curved path, sorry my bad English). What you think? Is this possible?
***** I saw one documentary about programming robots for car manufacturing, where people move robots 'hand' so that robot 'learn' movements. It will be also VERY COOL to do the same with a car (not a 'follow me' exactly) - go to the driving site, record GPS data while driving bike (or walking), then transfer data to the car (by RF link, or by memory card). Is it possible that car will follow exact (or close to exact) path you did with your bike or walking route?
***** Can you recommend me, which arduino has sufficient memory for this task? Arduino nano or mini maybe not, but I am pretty 'newbie' in this programming 'sport', so need some guide line for starting. Again, thank you in advance.
Good Day! I have implemented your amazing sketch. The only problem I have is getting the Ublox GPS/Compass to communicate via serial on the GPSToI2C sketch. I get a read but it comes up invalid...? Am I missing something to get the info from the GPS/Compass to read to the serial port? I do get the compass readings so that works great, just missing the GPS coordinates. Can you suggest anything? Thank you!!! Dave
Are you testing it outside with clear view of the sky and waiting ten minutes or so to give it a chance to fix? The name of the sketch "GPSToI2C" should give you the clue that the final goal is to output the info over I2C, not serial. I'm guessing you are looking at some debugging output I printed for the serial monitor, but I don't recall if it is printing all info, or just some info.
nice project :D You could make it calibrate compass by itself, by driving in tight circles ;) And how about adding some sensors to avoid obstacles like trees, curbs, people.. benches..
206LaKi That's true, the most important part of the calibration is the rotation in the 'z' axis. Ideally you turn it over in each axis so the magnetometer can feel the magnitude in each direction, that way when it's going up or down slopes it doesn't get skewed.
Hey, I am doing the same but I'm using just an arduino with bluethooth and then a celphone with gps and compass. Did you have problems with the compass ? did the motors and eletronics of the car interfeer with it ? and just by curiosity how long does your car lasts following you?
The uno is usually a good first start. The nano is smaller and still has an onboard USB to serial. Pro-mini is even smaller but you'd need a separate USB to serial adapter. Functionally they're all the same.
Hello iforce2d, I really like your RC car GPS follow-me project! GPS it's a good tool to get distance, but it seems that it doesn't have high accuracy. Do you know any other GPS boards to improve it? Do you know other ways to calculate distances? I've heard about HC-SR04 Ultrasonic sensors but they have to be in front of each other (15º angle limit). Did you try getting distances from ping of Wifi or Bluetooth signal? Thank you, Good luck in your project! Hector
hrcnlz You don't think this is good accuracy? Consider what is happening here... two separate modules are receiving signals from multiple satellites out in space, and they still come up with a location within about 2-3 meters of each other, for any location on the planet (and for a total cost of about $40 for both modules). There are other methods for calculating distance of course, but I think you'll find they are nowhere near this value for money. Just how much accuracy do you need? If you are interested in distance and not location, then a GPS is not what you want anyway. You could try looking into laser rangefinders. ua-cam.com/video/SYZVOF4ERHQ/v-deo.html
***** Thank you iforce2d for replying soon. You're right, GPS modules may be the best quality/price option. I appreciate your suggestion, but maybe laser rangefinders wouldn't work for the application that I want (I'm not sure). My idea is a RC car that autonomously follows a person and stays 1,5-3 meters next to him/her (right or left side). What could be the best solution for that? Thank you in advance, Hector
+hrcnlz i think instead of following, you might have to reduce the gps cordinates to make it at same dist as you are but move it to the side. Take an eg of ur cordinates and you can make a position minus or plus some value to find ur side
The CarRecvDrive and GPSToI2c works perfect, I'm able to get the devices to communicate, however im not able to get the followMeTag to populate the current GPS position over to the CarRecvDrive. I have a feeling it may be the model GPS I'm using on the FollowMeTag and/or the configuration setings. Can you please provide the model and/or name of GPS your using on the FollowMeTag? Thank you!!!!
"get the followMeTag to populate the current GPS position over to the CarRecvDrive" sounds more like a radio communication issue from that description. I think I was using a ublox neo6m but it shouldn't make any difference.
Hi, thanx for the reply....I believe the communication is fine. I added some gps coordinates manually to the FollowMeTag and they are transmitted and show up on the CarRecvDrive serial output. So the communication appears to be working it's just the FollowMeTag that's not calculating the gps coordinates in "processGPS". The formula "data.lat = posllh.lat / 1000000.0f" outputs "0.00" for a gps location. So I know that the "processGPS" loop is not outputing any data for "data.lat" and "data.lon". I understand your position and realize I'm asking you to share your expertise with me, please just let me know and I'll stop asking for your help. Thank you Dave
Is this a GPS module you know to be working ok? Did you wait a good long while, outdoors, for it to get a solid fix? I don't recall if I left it in that sketch, but at some point I would most certainly have had some debugging output to the serial connection. Maybe you can find it commented out in the source code.
Impossible to say without knowing what those procedures are :) I read a blog post somewhere and made my own if I remember correctly. It's in my code that I mentioned before if you take a look...
Your old uploads are still very good tutorials. I have copied your FollowMeMk2 FollowMeTag and CarRecvDrive but don't understand how to switch between the two sources of control. The FollowMeTag nRF24L01 sends its position to the car. The nRF24L01 of the car receives the position ok. But how can I take over the control?
+Lars Carlen if you look in the main loop() function of the CarRecvDrive sketch you will see where it decides whether to do manual control or auto control. That was used when I was doing the 'return-to-home' feature testing - I would drive the car some distance away and then flip the switch to auto mode (video: ua-cam.com/video/Zr5rmsaoo5Q/v-deo.html). In this video though, the switching between modes is not used.
Sir hi.I ask a question.You shared 3 codes.If we use UBLOX protocol,we don't need GpstoI2c .Ok .Well ,You used 2 arduino pro mini on rc car.How did you send data your hand sensor?Or how to send data from your hand sensor ?and also can you give information connection about gps module with compass?
No data is sent to the hand sensor. The hand sensor sends data to the car, see the FollowMeTag sketch for details, and this video for more details: ua-cam.com/video/eVnyPSAefxU/v-deo.html And this page for basic info on using nRF24l01 modules: arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo The compass is an I2C device, so the connections are the same as for any other I2C device: www.arduino.cc/en/Reference/Wire
Can you share transmitter code from your hand gps sensor(ublox 6m)?There is not transmitter code your shared file.I saw arduino rc transmitter video but the project is not same .Specificly,other code is not consist of parts of "void loop,void autocontrol and void manuelcontrol" function.I think in the file,2 codes manage gps data receiver and servo motor control.Do you agree?
All the code can be found at the link in the description. Of course the other project is not the same. I showed you that to help you learn how it works, so you can make things yourself.
Which project works with the code?(just rc car follow me?)Because you used compass module in rc car follow me project but I did not see compass library in code.Does the code work for driving rc car with gps?Is it certain for normal work?In the code,which gps module you used?(gps module or gps module with compass?)Could you use u center protocol with compass gps module?And you are legend so help about this subject.
I have two questions and a problem, I hope your help. My problem in Code CarRecvDrive I did not know where found the word "bearing" in code float turn = bearing - heading; My first question: you have identified two waypoints river and shibuya. Can I set one waypoint to go the target My second question : Can I insert a waypoint from outside the program Thank you.
The 'bearing' variable is declared and used in the 'Compass.h' file. There are no waypoints in this code. There is just a current location and a target (destination) location. The car will always go directly to the target. Whatever you set targetLoc to is the destination.
Michael O'Donnell I think it's the typical HMC5883L, in this case mounted with the GPS in the same shell: www.banggood.com/CRIUS-NEO-GPS-MAG-V2-NEO-7M-Module-With-Compass-p-951898.html
***** Ahhh, I must have missed that in your earlier videos. I was under the impression that was a GPS unit only. Do you find the HMC5883L to be fairly accurate? I am torn between that and the MAG3110 in my own project which is very similar to yours! On a side note, I have enjoyed very much watching through your build process and it has helped me with quite a few issues I have been having.
hello iforce2d, This is great project. But why you use 2 arduino minis instead of 1 arduino mini on the car. Can i use one arduino nano on my car??? Thank you so much!
This was my old method, where I use NMEA messages from the GPS. Those messages are text strings which take up a lot of memory, too much memory for one arduino to manage both the GPS and the rest of the processing together. So I split up the work into two arduinos. These days, I use the UBX protocol to get information from the GPS, it's much faster and requires very little program space and memory: ua-cam.com/video/TwhCX0c8Xe0/v-deo.html
No, the time and date is not necessary. But when the GPS is searching for a fix, the time/date is the first data to appear. So it's useful to check if the GPS is connected to the arduino properly, without waiting for a full 3d fix which can take 5 minutes or more.
If you wanted something simpler than an accelerometer to detect a flipped state, you could add a "tilt ball switch" (or mercury switch) and add a timeout counter in the main loop. learn.adafruit.com/tilt-sensor/ Cheaper (ebay +"Xpcs") and likely easier on code and resources. Thanks a ton for your videos, they keep me thinking.
iforce2d Do you have any advice that i can use in indoor? It will be a lot of help in my project that has a remote and also has a function of "follow me" and manual control in short distance Thanks
I don't think there are any reasonable options. All I can think of is infra-red tracking like they use with these quadcopters: ua-cam.com/video/w2itwFJCgFQ/v-deo.html (look at the cameras in the ceiling and the little gray/white balls stuck onto the quads). This would only work in a single room and is incredibly expensive.
+alex wright what do you mean by "connect wireless connectivity with the control circuit"... I have no idea, but like I said, it's probably more than I feel like explaining at this point. This is not a tutorial video.
iforce2d in my school project, I need to make some electronic project that need pid control, so if I add some pid to control motor speed, faster when the distance further, then slow until reach its set point (ex:1m from user), can it be done?
why did you use mini's in this project if you are having memory problems run all of the crazy stuff on a mega and then your i2c slave can remain the same.
Mostly because I didn't have any megas around. Keep in mind when you watch my videos that they were uploaded over a period of two years or so, not really 'willy nilly' and there are things that I didn't know at the time that I discover later.
Hi there, Congrats on the work! You've done a great job. I have a small robot that I've built to carry my golf clubs around the course for me. With your permission, would it be okay for me to experiment with your system to drive my bot(RoboCaddy). I'm currently using a Sabertooth driver, do you know what your motor driver output is using on your system? Thanx again for all your video's!!!!
Sure, of course! The 'servo' output is a repeated pulse of length 1000-2000us to represent the full range. That is, in this case having the steering straight ahead motor off would be 1500us. Steering fully left and full speed reverse would be 1000us etc.
I'm very intrigued by your project - well done! One possible refinement to turning, if being used on a common roadside sidewalk or on a street, might be to use a GPS "bread crumb" path so the drone doesn't turn too sharply through corners and consequently going off the path of a sidewalk or street. BTW this project would be outstanding workshop for aspiring follow-me drone coders (drone being anything that moves about autonomously ). Cheers from Austin TX.
Look at the suspension on that car!!!! Wow!!! Not only does it has the spring shocks, but it has two more shocks coming from underneath it looks like. I need to go watch your other videos to see how you made that or where you bought it from. That had to be pretty expensive. I have seen some RC cars with some pretty amazing suspensions but this one like like it all metal. ...those shocks underneath, and on all 4 wheels. They are probably not called shocks. Cool car.
It would be a fun project to do this with mag, acc, gyro, gps, all on a vehicle like a HPI savage flux or an Axial yeti xl, a vehicle that can handle some terrain! Then code it to stay under say 20% throttle until x meters is between antennas, then increase throttle up to value y until becoming within x meters again, these vehicles are capable of some serious speed if needed. Woukd make it interesting...
I'm still working on my robocaddy project and was wondering if you could possibly share your schematic or parts list you used?
Thank you!!
Very impressive!! I know this was recorded years ago...I've been considering buying an animatronic Grogu "The Child." The Mattel one that has remote control functions and follows is so noisy I was thinking I might just get the Hasbro one that doesn't move, and then buy a remote control truck or something less noisy to create the follow-me function. :) Your video showed up when I did a search. Alas, I do not have your skills to create my own mode of transportation for a Hasbro Grogu, but I enjoyed your video! ❤ ❤
At this point, I don't know if you solved the pin header problem or not. Simple fix might be to solder a jumper from a linked pad on the bottom to the pin that is soldered on the Arduino. Also useful, might be to heat that pin enough to adjust it in the header plastic.
I really enjoyed the video, especially the kids in the earlier one :-)
Great project, can you set it up to follow you at a right angle? So record video from the side? I plan on using something like this to record RC Sailboat Racing on a boat in the water. Cheers!
Glad I found your video, I was thinking of doing something similar but using my mobile as the beacon and an old mobile with a usb-otg link to the Arduino.
Have you done it.cause I also thinking to start
can it follow you at the exactly same path that you ride the bike or walking? nice idea!
U should also include infrared sensor for better navigation to avoid obstacles
Very nice result! Did you compensate the compass for the magnetic declination?
Joop Brokking Yes, I did that.
I really need to contact you! I love watching these videos and I have the perfect idea for this concept!
Instead of programming it to navigate in a straight line to the tracking device, you should program it to follow the path of the tracking device. That way, it'll be less likely to bump into things. Obviously, you can implement this very easily by storing the tracking device's coordinates every second or fraction of a second so that the car can plot a route.
Yes, although with a total of 2kb of ram this is not really the board to use for that :) With it heading straight for the target, it's a lot easier to debug and clearly see how accurate the performance is.
I think there was a film called Runaway in the 80's with a devices very similar to these. You didn't want them to drive under your car :-(
This is great -- I have a question about your filming technique, how do you get the computer screen to pop up while you're talking and show the code and camera at the same time? Loved your explanation and of course the "lessons learned" sharing because no project goes perfect the first time, does it?! Not for me, for sure! Thanks for sharing
***** The computer screen is there all the time, I'm recording a screencast, the camera view is my webcam display window.
What a excellent work! I really want to build one like this, but I have no ideal to start. Could you please show the materials needed to use. It'll be great. Thank you!!
Hi ! I'm trying do to the same project, can you share the isketch ? How you set up the servo for direction control ? Amazing man, if you can help me i appreciate. Big Thanks!
Hi mate, are you in Sydney? I have just picked up a golf bag caddy from curbside pickup and want to convert it into a follow me drone
Very cool, intersting stuff! most of it goes right over my head though ha ha
Funny how it was still trying to follow you when it's upside down under the bench (-:
Hi iforce2d
I love your project! Id like to make my own one and have fun with it.
Could you please make a list of the materials needed to replicate it?
Thank you in advance!
please give BOM .. Even 1 want to make 1 . Easier since lesser crashes compared to quad.
Raúl Almirón Were you able to replicate the project ? If yes could you please help me with circuit design part of it. How you Assembled everythingeverything
Very impressive Mr iforce and you didn't even break a sweat. If it's not too boring and you feel it's not too over my head or useful for other subscribers would you mind doing a short video on what code you changed or added in the multiwii sketch? I'm super interested but also aware that I am very very far removed from being competent code money and even tuning PIDs is hard work for me. Still really juicy and inspring all the same.
I did love the confused kid in the background though I'm sure he was impressed too when you rode away and it followed, probably thought you were a bit of a fruit loop before that :)
Can you set a minimum distance it will stop at and slow down/speed up when hitting min or max distances? What other steps would you need to implement it into a quad running a multiwii sketch already?
MicroRCFiend This is nothing to do with multiwii, I linked to the sketches in the description if it helps. If you have a quad running multiwii and using the nRF24 for radio control, it would be very easy to just overwrite the GPS hold location with the location of the TX. I may try that sometime but I'm not that satisfied with the current GPS hold performance of my quad yet, and I don't really have a good place to try it - the groundskeepers in this area already complained when I was driving a car there, I'd hate to think what would happen if I was wandering around with a quadcopter. Officially no radio-control stuff is allowed here, but they usually ignore us when we fly in that first area I was at there with the long grass, and I would hate to be the one to ruin that fragile situation for the other guys who fly there. Here in Japan "drones" have just been banned from public parks after some fuckwit landed a phantom2 on the prime ministers office or something stupid, and laws are in the works with 1 year prison terms for flying around government buildings, so it's not a good time to be attracting attention, even if you're causing no harm.
Great design! Really enjoyed that. Have you tried to just enable the internal pull-up for the problem you were describing at the start of the video?
Hi Sir.I want to understand your code about the project.In your code,especially in CarRecvDrive code,you defined Home_location_reading 10.I think you use digital pin 10 for CSN (nrf module).Isn't it?And also I saw your ublox protocol for reduce number of microcontroller and increase speed but I can use 3 arduninos(because I have constrain materials).Specially at the GPStoI2C code, you used Tinygps++ library ,so compile error realized.Why?Which type tinygps++.h library is used?Can you share the library?Last question is how to control dc motor(what is the name of the dc motor in code?)?For example;stop,wait ,continuous?Which pin of code is controled the dc motor?Can you share same examples about the controlled a dc motor?
Thank you for the video.
Your invention is so clever and cool! Keep it up
Où peut-on trouver les plans et les programmes ?
can you share the photographic diagram for wiring connections and the complete code?? i love to make it just like that please
This is excellent. Are you planning to do this for a quad copter ?
Can you tell me, in as simple a way as you can, what is the basic setup for how youre doing this(quadcopter also) . Am i right in saying, youre using an nrf... module, to write script onto, using it as a reciever, and inputting it onto that, and it then in turn can respond to your Tx? If so, how do you know how to write these scripts? And what programme do you use? Possibly a video in and unto itself? In the future, showing globally, how all that works, in one place? Id love to start working on getting my newly working quadcopter(450) to follow, circle, etc
I think I explained all this in the video, or at least in the previous video I mentioned (ua-cam.com/video/tPJg1y0IdHs/v-deo.html). I am holding a GPS and nRF module which transmits my current location. The car has an nRF module to receive my location. The car also has a GPS so it knows where it is, and a compass so it knows which direction it needs to go to move toward me. How I know how to write these scripts, is I spend days, weeks or even months reading the instructions and practicing :) I use the arduino IDE, all source code is linked to in the description. There is a ton of information about this all over the net already, otherwise I wouldn't have any instructions to read myself.
I, understand, but i think, what i find hard to grasp, and yet am in aw of, is how the lines of code(sketches), you've written, are actually talking between modules, to create the actual physical outcomes that we seek here. I downloaded some of your sketches to my tab, and i can see, how eventually, you can make sense of it. I may do so in small amounts at a time, i def want to get my quad following and orbitting. I've just so much going on, i'm like a juggling act on steroids.
owenkilleen you can open the serial monitor on the arduino IDE and see what's being exchanged. In this case (i would guess) the hand held homing beacon is spitting out its location and the car receives that and does a comparison with its location.
Nice work. Is it possible to rig an RC boat to follow me while kayak fishing? I've been struggling to find a solution for shooting video of myself. Landing a drone on my kayak on the open ocean isn't exactly wise.
Yes, it should be exactly the same I think.
Hello sir! Very impressive, is there a way to contact you?
Hi Mate,
How about some ultrasound sensors? I was thinking about a very similar project to this but using also some obstacle avoidance method to avoid the car to ends up under my feet or like in your video, under your bike tires lol. Would you have a better solution than the Ultrasound? Cheers. Chris.
Although I haven't tried it more than just for a quick "hello world" sketch, I think ultrasound would be a pretty good way to do it.
It's a nice concept, the follow me concept, but GPS seems not quite up to the job. I think you do need it, but it needs to be supplemented with something else for the close range positioning. I have not looked at the sketch to see what else you have hanging off the arduino,
but it seems like some kind of radar scanner looking for radio waves coming from the "me" in follow me.
How much accuracy you really require? GPS is good for a few meters and is pretty cheap, but anything better than that quickly gets expensive and complicated. You can try assisted GPS with local ground station (around $400 for one roaming module), or UWB time-of-flight (around $10,000 for a dev-kit with four modules).
Thanks for replying. I think you are wrong. I think there is a way. I think you put a tiny military style rotating dish pointing up at the probable angle of the runner, ...and not really rotating, but moving from left to right in front of the RC car toward the runner or walker. It would just go back and forth and scan for the direction with the biggest signal. Ah, but if you could swing it, you could put 3 sensors on the front and then have no moving parts, and just have one sensor in the middle pointing dead ahead in front of the car, and two sensors on each side of that pointing outward at say a 45 degree angle from the middle radio receiver. The RF receiver that has the strongest signal helps point the car in that direction. It is still not wonderful I admit, but it could really tight up the way this thing works so it could follow the runner with more precision. ....if it would work. I do not know that it would work at all. You'd have RF flying all over the place. In certain situations you might be able to use 3 microphones sensing where the noise of the runners footsteps are the loudest. I think there is a $3 to $10 way to do it. What do you think? Do you think the 3 RF sensors following an RF coming from your phone, or 3 microphones sensing your footsteps in a quiet testing place, ...do you think any of those ideas would work at all? I look forward to your response. Thanks. Cool project btw. But some of us are too cheap for GPS. ...ah!! They are cheap now! Really cheap. I have not looked in a while. Still, I think a little bit more technology could be added to make it follow closely and more precisely and responsively. But I have not tried to do it either.
Sounds awesome. Be sure to make a video about it when you're finished :p
So do you think either of those ideas might work? Have you ever played around with trying to get some signal and devise a measure which direction the signal is strongest or coming from? Why couldn't you put 3 ultransonic recievers on the car, and an ultrasonic transmitter on the runner somehow. I guess the runner would have to point it at the car. Yeah, ... I hear what you are saying. The whole thing would be a mess, but I promise you there is some way to do it. AHA!!!!
I got it!!! Tie a string to the car. That'll work for sure. No batteries. No electronics. In fact, the car does not even need wheels. You could just drag it along. However, this probably violates the spirit of what you were trying to accomplish. But still. What a great simple solution to the whole non-problem.
It is all so beautiful.
can u tell me where u ordered this frame.. See some frames in bangood but they dont show finished body and not sure where to get a strong one like yours?
+cochin007 It's a Tamiya CR-01 chassis, I bought it at a local shop. You can probably find them on amazon or ebay.
It is amazing toy! I want one of those.
Btw, what you think what happened near end of the video? Is maybe compass picking up magnetized steel stuff arround, and make mistake? Or, it is just an unhappy accident?
***** Just a coincidence I think.
***** Okay. I am thinking about something, and this bothers me (since I am not good programmer), but you may give me some insight... Is it possible to make program so that when it follows you, it actually use GPS data of your past location and path you drive the bike? I mean, if you driving bike in semi-circle, car trying to get as shorter path as possible to your location. But, what if it can follow your path exactly? It will be useful to follow you on curved road (or curved path, sorry my bad English). What you think? Is this possible?
***** I saw one documentary about programming robots for car manufacturing, where people move robots 'hand' so that robot 'learn' movements. It will be also VERY COOL to do the same with a car (not a 'follow me' exactly) - go to the driving site, record GPS data while driving bike (or walking), then transfer data to the car (by RF link, or by memory card). Is it possible that car will follow exact (or close to exact) path you did with your bike or walking route?
***** Yes, if you have memory to store all the locations you need, it's pretty easy. The arduinos I am using here have no space for that though.
***** Can you recommend me, which arduino has sufficient memory for this task? Arduino nano or mini maybe not, but I am pretty 'newbie' in this programming 'sport', so need some guide line for starting. Again, thank you in advance.
Good Day!
I have implemented your amazing sketch. The only problem I have is getting the Ublox GPS/Compass to communicate via serial on the GPSToI2C sketch. I get a read but it comes up invalid...? Am I missing something to get the info from the GPS/Compass to read to the serial port? I do get the compass readings so that works great, just missing the GPS coordinates.
Can you suggest anything?
Thank you!!!
Dave
Are you testing it outside with clear view of the sky and waiting ten minutes or so to give it a chance to fix? The name of the sketch "GPSToI2C" should give you the clue that the final goal is to output the info over I2C, not serial. I'm guessing you are looking at some debugging output I printed for the serial monitor, but I don't recall if it is printing all info, or just some info.
Yes your right, I was looking for the serial output to verify, no problem thank you very much for your relply.....i'll
keep trying!..:)
tuxedo movie ?
nice project :D
You could make it calibrate compass by itself, by driving in tight circles ;)
And how about adding some sensors to avoid obstacles like trees, curbs, people.. benches..
206LaKi That's true, the most important part of the calibration is the rotation in the 'z' axis. Ideally you turn it over in each axis so the magnetometer can feel the magnitude in each direction, that way when it's going up or down slopes it doesn't get skewed.
***** Very cool indeed! Or perhaps as a first step just cut the throttle when it's on its side? Can the magnetometer detect this?
a esbj no, but an accelerometer could. There's none on there right now though :)
I love the chassis! Could you please share a link to it?
LeoTheHuman yeah I love it too :) Search for "Tamiya CR-01"
Hey, I am doing the same but I'm using just an arduino with bluethooth and then a celphone with gps and compass.
Did you have problems with the compass ? did the motors and eletronics of the car interfeer with it ? and just by curiosity how long does your car lasts following you?
Yes, that's why I put the compass way up on that funny-looking shelf :) I suppose it would last until the battery died.
What arduino should i buy in order to start learning about arduino, and get a rc car to drive waypoints?
The uno is usually a good first start. The nano is smaller and still has an onboard USB to serial. Pro-mini is even smaller but you'd need a separate USB to serial adapter. Functionally they're all the same.
Hello, im really interested on how you do this. Any other item that i need buy to build this? @@iforce2d
Hey dude can you give me more information of your project, code schematic? Thank you , i really need it
I may have missed something but could you not set the internal pull-up on pin 7 so that it is not floating?
Philip Stubbs yes, could do that too. Never tried that but I have heard about it :)
Hello iforce2d,
I really like your RC car GPS follow-me project! GPS it's a good tool to get distance, but it seems that it doesn't have high accuracy.
Do you know any other GPS boards to improve it?
Do you know other ways to calculate distances? I've heard about HC-SR04 Ultrasonic sensors but they have to be in front of each other (15º angle limit).
Did you try getting distances from ping of Wifi or Bluetooth signal?
Thank you,
Good luck in your project!
Hector
hrcnlz You don't think this is good accuracy? Consider what is happening here... two separate modules are receiving signals from multiple satellites out in space, and they still come up with a location within about 2-3 meters of each other, for any location on the planet (and for a total cost of about $40 for both modules). There are other methods for calculating distance of course, but I think you'll find they are nowhere near this value for money. Just how much accuracy do you need? If you are interested in distance and not location, then a GPS is not what you want anyway. You could try looking into laser rangefinders. ua-cam.com/video/SYZVOF4ERHQ/v-deo.html
***** Thank you iforce2d for replying soon.
You're right, GPS modules may be the best quality/price option. I appreciate your suggestion, but maybe laser rangefinders wouldn't work for the application that I want (I'm not sure).
My idea is a RC car that autonomously follows a person and stays 1,5-3 meters next to him/her (right or left side). What could be the best solution for that?
Thank you in advance,
Hector
+hrcnlz i think instead of following, you might have to reduce the gps cordinates to make it at same dist as you are but move it to the side.
Take an eg of ur cordinates and you can make a position minus or plus some value to find ur side
does the receiver also need a gps module too?
You mean does the car need a GPS module? Of course, otherwise how would it know where it is?
@@iforce2d i use GPS Neo module, can itu Will work?
@@iforce2ddoes the both device need compass ?
great bro but we can use raspberry Pi also with this
The CarRecvDrive and GPSToI2c works perfect, I'm able to get the devices to communicate, however im not able to get the followMeTag to populate the current GPS position over to the CarRecvDrive. I have a feeling it may be the model GPS I'm using on the FollowMeTag and/or the configuration setings. Can you please provide the model and/or name of GPS your using on the FollowMeTag? Thank you!!!!
"get the followMeTag to populate the current GPS position over to the CarRecvDrive" sounds more like a radio communication issue from that description. I think I was using a ublox neo6m but it shouldn't make any difference.
Hi, thanx for the reply....I believe the communication is fine. I added some gps coordinates manually to the FollowMeTag and they are transmitted and show up on the CarRecvDrive serial output. So the communication appears to be working it's just the FollowMeTag that's not calculating the gps coordinates in "processGPS". The formula "data.lat = posllh.lat / 1000000.0f" outputs "0.00"
for a gps location. So I know that the "processGPS" loop is not outputing any data for "data.lat" and "data.lon".
I understand your position and realize I'm asking you to share your expertise with me, please just let me know and I'll stop asking for your help.
Thank you
Dave
Is this a GPS module you know to be working ok? Did you wait a good long while, outdoors, for it to get a solid fix? I don't recall if I left it in that sketch, but at some point I would most certainly have had some debugging output to the serial connection. Maybe you can find it commented out in the source code.
Hi. It is me again. I found in web at least 2 magnetometer calibration procedures. Which of them You are using?
Impossible to say without knowing what those procedures are :)
I read a blog post somewhere and made my own if I remember correctly. It's in my code that I mentioned before if you take a look...
WICKED idea keep up the great work :)
Your old uploads are still very good tutorials. I have copied your FollowMeMk2 FollowMeTag and CarRecvDrive but don't understand how to switch between the two sources of control. The FollowMeTag nRF24L01 sends its position to the car. The nRF24L01 of the car receives the position ok. But how can I take over the control?
You don't. There is only one source of control here.
+iforce2d OK, I saw the problems with high speed communication between 3 nRF24. I will try to solve it!
+Lars Carlen if you look in the main loop() function of the CarRecvDrive sketch you will see where it decides whether to do manual control or auto control. That was used when I was doing the 'return-to-home' feature testing - I would drive the car some distance away and then flip the switch to auto mode (video: ua-cam.com/video/Zr5rmsaoo5Q/v-deo.html).
In this video though, the switching between modes is not used.
Sir hi.I ask a question.You shared 3 codes.If we use UBLOX protocol,we don't need GpstoI2c .Ok .Well ,You used 2 arduino pro mini on rc car.How did you send data your hand sensor?Or how to send data from your hand sensor ?and also can you give information connection about gps module with compass?
No data is sent to the hand sensor. The hand sensor sends data to the car, see the FollowMeTag sketch for details, and this video for more details:
ua-cam.com/video/eVnyPSAefxU/v-deo.html
And this page for basic info on using nRF24l01 modules:
arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo
The compass is an I2C device, so the connections are the same as for any other I2C device:
www.arduino.cc/en/Reference/Wire
thank you
Can you share transmitter code from your hand gps sensor(ublox 6m)?There is not transmitter code your shared file.I saw arduino rc transmitter video but the project is not same .Specificly,other code is not consist of parts of "void loop,void autocontrol and void manuelcontrol" function.I think in the file,2 codes manage gps data receiver and servo motor control.Do you agree?
All the code can be found at the link in the description.
Of course the other project is not the same. I showed you that to help you learn how it works, so you can make things yourself.
Which project works with the code?(just rc car follow me?)Because you used compass module in rc car follow me project but I did not see compass library in code.Does the code work for driving rc car with gps?Is it certain for normal work?In the code,which gps module you used?(gps module or gps module with compass?)Could you use u center protocol with compass gps module?And you are legend so help about this subject.
I have two questions and a problem, I hope your help.
My problem in Code CarRecvDrive
I did not know where found the word "bearing" in code
float turn = bearing - heading;
My first question: you have identified two waypoints
river and shibuya. Can I set one waypoint to go the target
My second question : Can I insert a waypoint from outside the program
Thank you.
The 'bearing' variable is declared and used in the 'Compass.h' file.
There are no waypoints in this code. There is just a current location and a target (destination) location. The car will always go directly to the target. Whatever you set targetLoc to is the destination.
What compass are you using for this?
Michael O'Donnell I think it's the typical HMC5883L, in this case mounted with the GPS in the same shell: www.banggood.com/CRIUS-NEO-GPS-MAG-V2-NEO-7M-Module-With-Compass-p-951898.html
***** Ahhh, I must have missed that in your earlier videos. I was under the impression that was a GPS unit only. Do you find the HMC5883L to be fairly accurate? I am torn between that and the MAG3110 in my own project which is very similar to yours!
On a side note, I have enjoyed very much watching through your build process and it has helped me with quite a few issues I have been having.
Michael O'Donnell yes it seems to be doing a fairly good job.
hello iforce2d,
This is great project. But why you use 2 arduino minis instead of 1 arduino mini on the car.
Can i use one arduino nano on my car???
Thank you so much!
This was my old method, where I use NMEA messages from the GPS. Those messages are text strings which take up a lot of memory, too much memory for one arduino to manage both the GPS and the rest of the processing together. So I split up the work into two arduinos. These days, I use the UBX protocol to get information from the GPS, it's much faster and requires very little program space and memory: ua-cam.com/video/TwhCX0c8Xe0/v-deo.html
Oh oh, Thank you for helping! Can you send me your proteus??? :)
this is my email huuhung.luyt@gmail.com
Excuse! I have some questions... Really need get time and date from GPS???
No, the time and date is not necessary. But when the GPS is searching for a fix, the time/date is the first data to appear. So it's useful to check if the GPS is connected to the arduino properly, without waiting for a full 3d fix which can take 5 minutes or more.
Friend I need some help with connections with pro mini of ur follow me mk2 car
If you wanted something simpler than an accelerometer to detect a flipped state, you could add a "tilt ball switch" (or mercury switch) and add a timeout counter in the main loop. learn.adafruit.com/tilt-sensor/ Cheaper (ebay +"Xpcs") and likely easier on code and resources. Thanks a ton for your videos, they keep me thinking.
That’s awesome
Reminds me of a rc car that follow other car and explodes from a movie. I got a gps..etc im still in the process, gonna do that with a airlane.
hello, does it work in indoor activity?
No, GPS uses signals from satellites. The signals are quite weak and require a good clear line of sight to the sky, in order to be accurate.
iforce2d
Do you have any advice that i can use in indoor? It will be a lot of help in my project that has a remote and also has a function of "follow me" and manual control in short distance
Thanks
I don't think there are any reasonable options. All I can think of is infra-red tracking like they use with these quadcopters: ua-cam.com/video/w2itwFJCgFQ/v-deo.html
(look at the cameras in the ceiling and the little gray/white balls stuck onto the quads). This would only work in a single room and is incredibly expensive.
thanks
hi sir , i'm don't understand anything about how collected all this pieces together . please give us the plan to help us and the name all this pieces
+alex wright I explained the basic idea and shared the arduino sketches. Any more than that is more complicated than I feel like explaining in detail.
+iforce2d Sir : I do not mean this, but I want to know how to connect wireless connectivity ( gps compass and neo 7m ) with the control circuit
+alex wright what do you mean by "connect wireless connectivity with the control circuit"... I have no idea, but like I said, it's probably more than I feel like explaining at this point. This is not a tutorial video.
the way
+iforce2d the name of all pieces
Is this project using PID control?
No, not really necessary.
iforce2d can I implement PID on this project to control motor speed?
I guess so, but I don't see why it is necessary.
iforce2d in my school project, I need to make some electronic project that need pid control, so if I add some pid to control motor speed, faster when the distance further, then slow until reach its set point (ex:1m from user), can it be done?
Like I said, I guess so. But this project is quite complex. It would be like building a house, just to show your teacher you can make a doorknob.
Hello. Are you connect compass to arduino at pin A4, A5??? How to connect 2 arduino mini, same as compass ???
Yes, the compass is an I2C device, and the two arduinos are also communicating by I2C.
that mean compass connect at pin A4, A5 of main arduino and helper arduino connect at pin A4, A5 òf main arduino too
yes
Okie, Can you tell me how to put the compass please, compass dỉrection??? Please
Place it so that it reads zero when facing north.
why did you use mini's in this project if you are having memory problems run all of the crazy stuff on a mega and then your i2c slave can remain the same.
Mostly because I didn't have any megas around. Keep in mind when you watch my videos that they were uploaded over a period of two years or so, not really 'willy nilly' and there are things that I didn't know at the time that I discover later.
iforce2d oh ok. thanks for the reply
could you please provide me with circuit design sketch
there is no "layout PNG" attached to followmemk2
how complicated is the code ?
+Sebastian Becker the code is at the link in the description (FollowMeMk2)
Thanks
thakz for sharing
Please someone help me, please provide circuit diagram
where we will get code
by reading the video description..........................................................
its too cool ;3
hi .can u please mail me the working code of follow me part
please look at the link in the description
Amazing can u send me the projet plss
Hi there, Congrats on the work! You've done a great job. I have a small robot that I've built to carry my golf clubs around the course for me. With your permission, would it be okay for me to experiment with your system to drive my bot(RoboCaddy).
I'm currently using a Sabertooth driver, do you know what your motor driver output is using on your system?
Thanx again for all your video's!!!!
Sure, of course! The 'servo' output is a repeated pulse of length 1000-2000us to represent the full range. That is, in this case having the steering straight ahead motor off would be 1500us. Steering fully left and full speed reverse would be 1000us etc.
is there any possibility you would share the schematic with me?
Thanx again!
It is not schematic :(