Let's Make Robots!

RC Car managed by Java leJOS NXJ

esmetaman's picture
Drive with an autonomous systems using ultrasonic sensors and GPS
AttachmentSize
CIMG0045.JPG30.44 KB

This project tries to manage any RC Car which you can purchase in your city using a NXT brick and a Lattebox NXTe.

2009/06/07
I am finishing a preliminar GPS navigation solution for leJOS project, but I have a problem to understand some value, azimuth.
In my tests I had some problems to understand the azimuth value which is returned by the method AzimuthTo in a Coordinates Object. AzimuthTo return an angle which is referenced with North pole.

In my tests I use a GPS point as goal:

Goal: 40.445049309324573,-3.4673066139221191
http://maps.google.com/maps?q=40.445049309324573,-3.4673066139221191

I give you a GPS point which is located on the street where I did my tests:

Current: 40.445049309324573,-3.4673066139221191
http://maps.google.com/maps?q=40.445049309324573,-3.4673066139221191

If you make a line bettween the both points, the line is on the street but azimuth give a value 144º so if the robot change the course to angle 144, so the robot would leave the street. I don't understand how to use the value 144. Is it neccessary to make any trigonomical calculation to find the solution?

I have made a doc about the problem and some questions:
http://www.juanantonio.info/jab_pdf_reader.php?pdf=COORDINATES.pdf&year=2009

I made some videos about the system:
http://www.youtube.com/watch?v=3nA0v8rrpXU
http://www.youtube.com/watch?v=FKh1TRWzigU
http://www.youtube.com/watch?v=ZJN38XfvmPo

Do you have an alternative calculus to make the azimuth calculus?
Do you undertand my problem?

2009/06/06
Today I begun to test my first GPS Navigator. Besides I have to improve the system which manage the steering maybe using PID or another technique...

http://www.youtube.com/watch?v=ZJN38XfvmPo

If you take a look the prototype, I have uploaded some pics in my Flirck account:

http://www.flickr.com/photos/esmetaman/sets/72157619259589605/

2009/02/29
This year I will use a new RC Car chassis, Maverick Strada model which I replaced some pieces, for example the speed controller. With this model, the place where is located NXT brick is more stable.

I have released a new gallery about this model:
http://picasaweb.google.es/esmetaman/LEJOSRCCAR2

NXTe allows me to control RC Servos and DC Motors easily. Currently I can go forward and backward. leJOS project has worked so hard to improve garbaje collector, to manage with NXT's CPU complex Java Programs.

I have released a new RC Controller. I am working on this tasks:

  1. Integrate GPS Subsystem
  2. Integrate Google Earth Support
  3. Improve autonomous subsystem
  4. Develop GPS Navigation
  5. Research Kalman Filter to make sensor fusion

I have published a map where you can see the place where I am doing the tests. I need a large area to test algorithms.

http://www.juanantonio.info/research/robotics/lejos/nxj/leJOSTrainingArea.htm

Further information here: http://www.juanantonio.info/jab_cms.php?id=228

Note: In my website, in the previous URL, it is possible to download a paper about the project.

 

Juan Antonio Breña Moral
www.juanantonio.info

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Hello,

 It looks like you have a very interesting project.  I am wondering about the accuracy of GPS.  It is my rough understanding that you can only expect 3-5 meter accuracy for GPS.   If you are trying to follow a path, it could easily be 5 meters to one side or the other.  Am I incorrect in understanding today's GPS accuracy, or is that good enough for your project? 

Tron

esmetaman's picture

Yes, you have reason, but i will incorporate a functions to improve the accuracy.

Cheers

Rudolph's picture

I took the first question to mean "Why did you (esmetaman) replace the NXT OS with leJOS?". I replied that standard NXT probably doesn't do the things you wanted the hardware to do. But it can accomplish those tasks with leJOS instead.

To put it another way; Instead of asking things like "WHYYYYYYYYYYYYYYYYY!!!!!!!!!" would you "skewer the perfectly fine NXT", perhaps people should consider that other people may have different requirements. It's just like the classic religious wars; emacs vs vi, windows vs mac, picaxe vs arduino... Neither party is wrong (except the emacs guys ;) )

 

I wholeheartedly agree, Lego (both the original RCX and the NXT) and Arduino, and others like them, are wonderful educational platforms. I started with Lego Mindstorms years ago, and played with leJOS some years ago (and have since concluded I personally don't really like Java, but that's neither here nor there).

 

edit = oops, failed to click 'reply' so typed in wrong box. this post is a reply to http://letsmakerobots.com/node/1865#comment-19406

esmetaman's picture

Hi Rudolph I replaced standard NXT firmware because I like to develop robots with NXT using Java. I have serious doubts about your phrase: "But it can accomplish those tasks with leJOS instead." what does standard firmware better than leJOS firmware?

I agree with you. I like that people like differents technologies, but in my opinion, Java offers serious advantages in relation to others programming languajes. why don't you like Java?

Rudolph's picture

I think you and I are just at a misunderstanding. I'm saying, to the other guy, you can do more with leJOS than with standard firmware. The other dude seemed unhappy you picked leJOS over stock. Basically I'm on your side.

I honestly can't say why I don't like Java anymore. I started playing with it like ten+ years ago, and something I can't recall now turned me off of it. Thinking on it, that was back when everybody was embedding java applets into their webpages and crashing my browser :) Admittedly I probably haven't given it a fair chance since. Now I've gone off on a C tangent with AVRs, so Java isn't high on my list of programming languages to revisit. One of these days I may give it a look over again.

esmetaman's picture

hehehe, yes in previous post I didnt understand you. :)

cheers

I dont get why people skewer the perfectally fine (not to mention understandable) NXT program.....
Rudolph's picture

Um, perhaps because the standard NXT OS won't do half (or more) of the things he wanted it to?

At least I'm 99.9% sure the regular NXT won't touch GPS, kalman filters or google earth.

esmetaman's picture

It is possible rudolph but respect the another % greater than your estimation. NXT, Arduino and others educational platforms are perfect to start in robotics field.

what is your problem?

If you know leJOS and NXT, i recommend the following presentation which I did in Madrid some weeks ago

http://www.juanantonio.info/jab_pdf_reader.php?pdf=DorkBot35.pdf&year=2009

esmetaman's picture

Hi,

NXT Brick make a BT connection with the GPS. I have to make another video with GPS Features. but now in spain the weather is bad, but no problem. Besides I have to write a paper about GPS with leJOS.

I have posted some papers about leJOS here:

http://www.juanantonio.info/jab_cms.php?id=146

 

Cheers

Juan Antonio Breña Moral
http://www.juanantonio.info