Society of Robots - Robot Forum

Software => Software => Topic started by: lemontree on December 11, 2009, 04:17:11 AM

Title: <Processing> programming language - good for robotics?
Post by: lemontree on December 11, 2009, 04:17:11 AM
Processing is a rare example of a programming language with an easy learning curve.  I am investigating it at the moment and it seems that it would be a very good language for someone testing out code and algorithms for robotics.  If you like the simplicity and ability of Basic to get small projects done quickly then you will like Processing.  In addition Processing should scale better to large projects.  It comes complete with an uncluttered IDE and there are several books about it.  It seems to be easy to communicate with the serial port using it. 
You can download it here:

http://www.processing.org/ (http://www.processing.org/)

There is a processor board that seems to use it here:
http://www.arduino.cc/ (http://www.arduino.cc/)
And an IO board here:
http://www.wiring.org.co/ (http://www.wiring.org.co/)



Title: Re: <Processing> programming language - good for robotics?
Post by: Razor Concepts on December 11, 2009, 04:33:02 AM
Just a note - processing can be very slow. There is lots of stuff going on in the background that seems to slow it down. I prefer Java (processing is coded in Java as well) for the speed, but I guess for learning Processing is good.
Title: Re: <Processing> programming language - good for robotics?
Post by: Weird Fishes on December 13, 2009, 05:23:33 PM
I like processing for quick visualizations of stuff.

I'll do simulations in it because the animation is so easy. No overhead of setting up the gui or anything.

Most recently I've been working out the best way to do inverse kinematics on it. Just about 5 lines of GUI related code makes an animated view of what would happen to the robot. The rest of the code is math and physical part classes(arms/joints/etc).

I also made a quick program to do visualizations of adding waves and standing waves when I was bored a few weeks back.

Also, the page you linked to is the Arduino, which if you'll read is based on Wiring. It's just the IDE that's based on Processing. Strangely enough, you posted a link to that site as well.
Title: Re: <Processing> programming language - good for robotics?
Post by: lemontree on December 15, 2009, 06:45:25 PM
Anyway I am happy I found the <processing> programming language even if my ignorance about the hardware boards is obvious.  It has also gotten me interested in Java again.
I abandoned Java about 5 years ago for a variety of reasons.  Mainly the difficulties in displaying visual information and communicating with non-Java code.
However I see that things have moved on a bit.  This time however I am going to heavily use the Java Native Interface so that I can write core algorithms in C and x86 assembly language.
I just did a Java JNI binding for Agner Fog's random number library.  That was an intense learning experience for me.  It's here:
http://code.google.com/p/lemontree/downloads/list (http://code.google.com/p/lemontree/downloads/list)