Gps Navigation Using Waypoint Control With Six

srikanthkvs11

USA

I'm currently working on a project in which I would like to do GPS waypoint control using the Six hexapod. I have an adafruit Ultimate GPS Breakout v3, that gives me the NMEA lines. I want the robot to go to each GPS location perform a particular task and then proceed to the next location. It is a proof of concept project and I do not need precision, a few meters is acceptable. I'm obviously going to do this outdoors. I would later may be have a differential GPS subscription for precision. I'm new to the forum and to the best of my understanding the there are no commands to obtain Latitude and Longitude from a GPS. I would add the 4in 1 sensor, for obtaining orientation.

I'm new to the forum and to the best of my understanding the there are no commands to obtain Latitude and Longitude from a GPS.

How do I go about solving this problem.

Thank you all in advance!

By — Last update

ARC Pro

Upgrade to ARC Pro

Discover the limitless potential of robot programming with Synthiam ARC Pro – where innovation and creativity meet seamlessly.

PRO
Canada
#1  

Hi @srikanthkvs11 welcome to the forum!

Actually we have something that should help you out, check out this plug-in!

#2  

This is awesome thank you @Jeremie. The plugin seems to work with my adafruit GPS system.:D How do I use the information from the plugin in a script to obtain closed loop control? The way I see it is, I could input a specific location and the hexapod can use the GPS peripheral to interpret it's current location and the compass for it's heading and then move towards the target GPS location. Once it is within a circle of error it could stop and move to to the next location.

PRO
Synthiam
#3  

You have a huge number of contradictory thread tags selected for this post - with c++ being one of them, and project showcase (for some reason). The question I have is what actually are you using for this? Can you expand on what technology you are actually using? Is it c++ with sdk? Is it ezscript in ARC?

The solution would be different based on the technology that you're using. Because if you need a solution for c++, it's significantly different than ezscript.

Let me know and we'll set you up:)

#4  

I'm really sorry about the tags. I would careful next time @DJ Sures.

I would like to start with ezscript if it is possible to accomplish my task.

I would like the hexapod to start at random location, given a GPS target location I would like the hexapod to crawl to that location. It then has a bunch of sensors that it uses to sense the surrounding and obtain data that could be stored on board or transmitted to the computer. After the sensing it should obtain a new GPS location to which it has to crawl and do the sensing again. This is an iterative process.

Thank you for your help!

PRO
Synthiam
#5  

Perfect! That means jeremies response is on the right track for your needs. It's great to hear that the gps plugin works with your hardware.

The next step would be to have the author of the gps plugin assign the values to ezscript.

#6  

Thank you @DJ Sures. But can I also create a plugin that would be able to do the proposed task?

#7  

You can create a plugin to do almost anything, but what you are describing should be easily achievable in EZ-Script. Really depends on your existing programming knowledge which would be easier for you. If you are a C# programmer, a plugin may be easier for you. If you don't have a programming background, or your background is in another language, then EZ-Script is very easy to learn and work with, and you will have more resources on the forum to help you (we have a few "real" programmers, but many more script writers).

Once they start shipping again, you may want to get the 4in1 orientation sensor. One of the issues with GPS is that it can't tell you what direction you are facing unless you are moving at least 1km/hour. The 4in1 sensor has a compass, so you could calculate which direction to move from the GPS waypoint, then head that way based on the compass reading.

Alan

#8  

Six is an awesome robot for sure... but is it a good choice to use with GPS? I would have to say Roli would be a better choice... GPS is only accurate to within 10ft, and Six doesn't have the "legs" so to speak for much distance... To top it off GPS is practically useless indoors... Also Roli would probably cover more ground than Six on a single battery charge I would think...

I did exactly what you are attempting to do several years ago... However my robot was a heavy duty wheeled outdoor bot that had the battery capacity to do close to a kilometer... I was able to create a waypoint with my Garmin GPS and have the robot navigate to it in an open field...

What you want to do with Six sounds like you need more precision than a just a common consumer based GPS..... Just my opinion but hopefully you will at least get a proof of concept out of this...

#9  

@srikanthkvs11 You should be able to access the longitude, latitude, altitude, speed, etc... provided by the plugin using EZ-Script since they are stored in variables. I can't remember the variable names off the top of my head, but if you add a variable watcher to your project and connect to your GPS, you should be able to see them.

To add a variable watcher control to your project go to Project -> Add Controls -> Scripting -> Variable Watcher

#10  

@Richard, just a few fyi's about GPS for future. The OP mentioned investing in differential GPS if the proof of concept works. DGPS combines the gps data with localized corrections for atmospheric error as well as another "truth" point from precisely located ground stations. With a long enough sample, you can get centimeter accuracy.

With a clear view of the southern sky, and within about 100 km of a major airport, most current commercial GPS can get 1 to 2 meter accuracy (except altitude which is still 3 to 6) using WAAS which is similar to DGPS except that the ground stations send the data to a geosynchronous satellite that the gps sees.

Cell phone GPS is also accurate to about 1 meter and has very fast time to first fix by combining cell tower triangulation with gps data. Also works inside single story buildings or on upper floors with little loss of accuracy. Works whether or not cell serice is active on the phone, just needs the radio on amd in range of at least one tower, so an old iPhone and the EZ-B Sensor Stream object and Sensor Stream app makes a great GPS (still want an Android version of the sensor stream object. Several similar apps, but none exactly compatible. Need to write a plugin I guess, since I habe several Android devices but no iPhones). Also has electronic compass as one of the sensors so no need for the 4in1.

I do agree that ROLI is the right platform for this vs Six.

Alan

#11  

@Alan Missed that part about DGPS, thanks.... One of my handheld Garmins has it and it does increase accuracy a fair amount... Still to me using GPS in a "small setting" where we are talking about feet instead of yards or miles is like trying to thread a needle with boxing gloves on... Now if the OP could use a high end Trimble and get it accurate within an inch or so, well then now we're talking...

Been reading that new GPS technologies coming (for cars) will make GPS accurate to within mm... Now if it works indoors then we will have the indoor nav system that most of us always wanted...

#12  

ok, so here is my little story...

goto(avoid the long story)

Once upon a time, there was this French hobbyist who found out a way to use his iphone as a gps data source, using an app and something on his computer receiving the data so ARC could know at all times where the robot was heading. This was great because he finally had found a way for indoors navigation... well, so he thought. However the only old iphones he had were simply too hold to work with the app, therefore he had to wait for his current iphone 6 to get old.

But here is what happened, several months later his wife broke her iphone and although she didn't understand why that made him happy, she gladly got a new one. So now this big guy has an iphone 6 ready to be used for indoor navigation on his super smart (or meant to be) rover.

:avoid the long story

Only the thing is that he TOTALLY FORGOT WHICH APP he used at the time and HOW TO make it work in ARC. So if anybody remembers the link to the forum that explained it, you'd make a guy very happy!:) Can't find how I did it... really, that's so stupid. I should take notes...

Elfège.

#13  

Ok so I remembered, so far, that I can use iphone stream sensor... need to find the app now, shouldn't take long but if you have the name and I didn't update since then, just post it.:) Thanks a lot.

Maybe I should have a coffee... I got up to work on this without having had my coffee yet... :):):P

#14  

Ok I got it... Sorry every body, all this was due to a lack of coffee...