I downloaded myrobotlab 14.9 and ran the bat file. The application worked fine but when I am trying to install/download services like arduino there are some errors like: need to reinstall processing. I'm just wondering if that version of myrobotlab is supported in 64 bit version OS/machine. BTW, my OS is Windows 7 Ultimate 64 bit. Anyway, I will try to use it in windows xp 32 bit.
Hello michael96_27,Yes, it
Hello michael96_27,
Yes, it appears rather "goofed up" in 14.9 on Windows. It's the integration of the Arduino GUI which is causing the problem. I looked into fixing it correctly, but got side tracked with the Kinect stuff.
Give me a few days and I'll make a new release. Fortunately, I can test with Windows 7 64 bit now .. (although this particular issue spans more than just that version of the OS)
GroG
Okay :)
Thanks GroG!
BTW, is downloading/installing services errors will be fixed too? I do have an internet connection but some errors show in installing services.
Thanks again,
Michael
Yes... I'm hammering on it
Yes... I'm hammering on it now :)
BTW - change your picture ... Don't be a scared gopher !
Just so you know, I've got to
Just so you know, I've got to move all the options in the Arduino editor - here listed as "editor" to a non-Arduino editor named at the moment "editor2".
After this is done, it should be easy to enhance the new "editor2" with functionality like autocompletion...
Thanks!
Thank You!
Btw, I just want you to let you know that 14.9 worked on win7 32bit. Sadly, it's not my machine. So, my option know is to wait for your update. Thanks Again!
michael.
Updates?
Hey GroG,
Any updates in myrobotlab to work on 64bit machines?
Thanks,
Michael
Still working on it.
Still working on it. Regrettably, a lot of the source code initially put in for the Arduino editor is very "messy" - it will need to be removed or refactored.
I'm curious how you plan to use MRL, could you mind elaborating? Just so you know, the Arduino part which does not work on 64 bit currently is the graphics editor. The actual "Arduino Service", which does not have a graphical part runs fine on 64 bit machines. To use it you would need to use the official Arduino IDE to load a PDE/INO on the Arduino - and then run MRL headless...
Some Help?
Can you help me in my project? Maybe some tips?
Here's my plan:
I do have a fully functional rover controlled by an arduino. It uses bluetooth shield for wireless communication together with some sensors. Currently, I made my personal GUI for my robot created in Visual Basic then I found MRL in the net. At first, I was trying to learn OpenCV but the problem is I don't have much knowledge in programming. So, my option now is to try MRL for Ball/Color and Face Tracking.
Could you help me in my project? For now, I want to try color tracking with my arduino rover. I can setup the camera in a pan/tilt and the rover will follow the color as well. I hope you can help me with this :)
Thanks, Michael
Would you?
Hi again Grog,
I would just like to ask again if you can help me in my project. or maybe just give me some tips.
Thanks,
Michael
Sure Michael, I'd be glad
Sure Michael,
I'd be glad to help. First thing - change your profile picture, You don't need to be a scared gopher :D (http://myrobotlab.org/user/295/edit)
It looks like you have a great project started. I assume, the camera mounted on the rover is wireless? Is this correct? What is the lag like? What is the type/model of camera? What is the format of the video stream? Do you have a camera on the laptop? Can you upload a picture of what your project is, so far? Sometimes a picture is worth 1000 words or more.
I checked the OpenCV service in 14.9 and it's not compatible with windows 64 bit... I'm working on that now....
The OpenCV & JavaCV parts
The OpenCV & JavaCV parts were recently updated to the latest releases. In the process - some things broke (of course). Right now, I've got stuff working again on Windows 7 64 bit with the latest OpenCV - There is some cleanup to do, but it does not look like it's in too bad shape..
Here's a Canny filter...
If your doing color tracking you might want to look over this tutorial in preperation - http://myrobotlab.org/content/opencv-how-isolate-object-hue-saturation-and-value
Here's a HSV filter - Oh my, don't I look scary !
To start with you might want to keep it simple..
For color tracking you should get a well defined uniform color target in a uncluttered background..
Thanks! :)
First, thanks for helping me here :)
Now, for your questions:
"I assume, the camera mounted on the rover is wireless?"
-For now, the camera isn't wireless but i'm planning to buy an ip camera.
"What is the type/model of camera?"
-Type of camera is webcam. Genius iLook 300 is the model.
The pictures will follow soon. :)
So, how will the program look like in MRL? I mean, is it full of programming(typing codes) or icon based programming?
BTW, I have read your tutorial. it's GREAT! I can't wait for the time it will be used for my rover :))
Python will be the scripting
Python will be the scripting used to control your bot.
Basically, a very short script is needed to start the OpenCV service - add the appropriate filters for HSV tracking, and tell the OpenCV service to publish the tracking point to the Arduino. Actually, it will publish to a Differential Drive service, which will publish commands to the Arduino. The differential drive is a general purpose service which can track points.
So is your bot working now? Is it a differential drive i.e. a motor on each wheel, or does it have some other configuration. This is where pictures help..
Alrighty, I just tested it
Alrighty,
I just tested it on Windows 7 64 bit...
The repo is patched up..
And OpenCV & JavaCV have been updated.
You can download this "Bleeding Edge" Version by clicking the "All files in zip" on the build server's distribution page :
here -> http://myrobotlab.dyndns.org:8080/job/myrobotlab/ws/myrobotlab/dist/intermediate.729.20120820.0631/
Going forward:
For things which don't work - please attach the myrobotlab.log file and try to provide as much information as possible. Answer my previous question : "So is your bot working now? Is it a differential drive i.e. a motor on each wheel, or does it have some other configuration. This is where pictures help.."
Will keep you posted
Hi Grog!
I will update you on my progress by Saturday. Our exams are on going and I need to review XD.
I promise to answer all your questions and post pics of MRL running on my system.
PS: Is arduino service is now working in MRL on 64bit?. I didn't test it yet XD
Thanks,
Michael
Good luck on your exams ! No,
Good luck on your exams !
No, the 64 bit support is not done yet, a lot of scope was added. If you subscribe to http://myrobotlab.org/releasenotes - you'll be sent an email when the next release is out, or I believe the RSS feed still works.
Regards,
GroG
I think there's a problem.....
When I tried to install OpenCV Service from MRL, I assume it's downloading. But it took minutes, hours..... still it's not yet done. The problem can't be my internet because it is consistent and fast. Here's some pic.
BTW, how to attach files here? XD
That seems correct. The
That seems correct.
The OpenCV binaries are at least 48 Megs... so yes, it would take a while.
You can attach a file to your original forum post, by editing it then scrolling to the end to "file attachments" - send the myrobotlab.log if it did not complete sucessfully.
I tried installing again
I tried installing again OpenCV service but with no luck again. I tried installing it again and left my laptop open since last night. Is it normal for downloading this service? :|
BTW, this is my robot for now.(I didn't included pan and tilt platform.. And sorry for the low quality XD. I've taken it from a webcam.)
Great !
Looks great.
No, it shouldn't take that long. You don't go through a proxy server do you? What kind of connection do you have? Were you going to attach the myrobotlab.log to this post?
No. I don't go through a
No. I don't go through a proxy server. I am using internet from wifi connected to a DSL connection.
I've attached the log file. It's in .zip format cause .log files are not supported. :))
1st thing - don't use 14.9
1st thing - don't use 14.9 release !
get the "Bleeding Edge" - the link is on the download page -
http://myrobotlab.dyndns.org:8080/job/myrobotlab/ws/myrobotlab/dist/
Find the latest and greatest ....
Looks like SwedKonsult checked in a bunch of Jython GUI updates (Yay!) ... so the latest is here
intermediate.737.20120823.0406/
click the download as zip - and try again... good luck :)
I've donwloaded
I've donwloaded intermediate.737 release and tried again installing OpenCV service - with no luck again.
I've attached another log file("latest log file") in my post. Maybe the problem is in my system somehow isn't it?. However, I will try to donwload it in other system/laptop. :)
Thanks for the log file...
Thanks for the log file...
The first thing I've noticed is your running Java 7 (which has not been tested), I also have noticed that there should be more logging around the download... I'll download Java 7 and start looking for the issue.
What version of Java should I
What version of Java should I use?
I've downloaded Java 1.7.6 -
I've downloaded Java 1.7.6 - and it still works on my system... :P
I'm looking at the logs in detail now..
Your system appears to download all the other dependencies - but it seems to be getting stuck when it hits the dlls...
Perhaps virus checking software which doesn't allow .dlls to be downloaded ?
What virus checking software?
What virus checking software? I am using AVG security :)
Here's your log snippet
Here's your log snippet :
33324 [gui] DEBUG org.myrobotlab.framework.Outbox - msgBox size 1 msg [resolveSuccess(String)]33324 [gui] DEBUG org.myrobotlab.framework.Outbox - msgBox size 1 msg [resolveSuccess(String)]
Notice you can successfully download .jar files but not .dll
Oh, Now it's a problem XD
Oh, Now it's a problem XD
I suspect that is it... The
I suspect that is it...
The dlls as well as all serice dependencies are on codegoogle.com -
I'm curious what happens if you try to manually download it ...
http://code.google.com/p/myrobotlab/source/browse/#svn%2Ftrunk%2Fmyrobotlab%2FthirdParty%2Frepo%2Fnet.sourceforge.opencv%2Fopencv%2F2.4.2%2Fx86.64.windows
click on one of the dlls .. do you get a popup or warning from the AVG software ?
No, there isn't a popup or
No, there isn't a popup or warning come from the AVG. However, I've successfully downloaded a dll.
Is there a way on how can I manually install these dlls?
BTW, Thank you very much for your help. And, sorry to disturb you XD
It's possible, but a bit of a
It's possible, but a bit of a pain - that is why its done "automatically"
There's a couple of possible workarounds -
1. temporarily turn off the virus checking software
2. download the .dlls manually
The problems with #2 is - it will not update the local Ivy files - which means MRL will not understand that all the OpenCV dependencies are available, and you will not be able to start the service graphically. However, if you choose to go with #2 - you will need to make the following sub-directories under your
unzipped - intermediate.737.20120823.0406 directory
libraries\native\x86.64.windows
This is what it looks like on my system...
I'll try to turn off my
I'll try to turn off my firewall and try again to install openCV service. Hope it works(crossed fingers XD) If this doesn't resolve the problem i'll try it manually. How can I start OpenCV?
If you get it downloaded
If you get it downloaded automatically - it's trivial - right click - start ... (you just have to name it something)
If you install manually - you'll need to use the Jython service
Copy - paste the following in the Jython IDE & hit execute (the button with the gear), when the dlls are in place...
--------------------------------
It WORKED! YEEHEE XD
It FINALLY WORKED! Here's the pic. I tried shutting down my firewall and it worked XD. Truly, it's the virus checking software s the problem
Mystery Solved ! That's great
Mystery Solved !
That's great - now the next step ....
is your camera supported by OpenCV ?
Does the capture button work :P
Yes it's supported ;)
Here's a screenshot of me XD
--It's dark there but I will BUY a new webcam cause' it's just only the webcam from the laptop.
How can I set the width and
How can I set the width and height for the video stream?
Success !
You can't set format directly on the camera - there is a format parameter which can be set through Python - but some models & makes of cameras ignore it anyway.
You can resize the stream by using the PyramidDown PyramidUp to halve or double (respectively) the stream.
What's the next step :)
I've got OpenCV service running, purchased a new webcam, and made a pan and tilt with servos for the camera. What should be the next step :) For this project I want color tracking first :))
BTW, What's the joystick service? Can it be used to control arduino robots?
Alrighty, Let's color track
Alrighty,
Let's color track something
1. Make your experiment simple at first. Find a clear and non-cluttered area to setup your system. Have a monotone wall or floor in the background.
2. Run through the HSV tutorial with a colored object.
3. When your satisfied with the values you got from the GUI - let me know them - the next step would be making a small & simple Jython with OpenCV and the HSV values your interested in. This makes startup much quicker
Going forward you can use the script to start and configure all services quickly, including starting the camera capture, loading the approriate filter, etc. After the service start up and begin tracking, the OpenCV service will be configured to publish a tracking "point" - you'll send this point to a Tracking Service of a PID Service - The point of this middle service is to re-translate the OpenCV graphical 2D point into correction values sent to the Arduino & Servos..
Clear as mud?
Alrighty, I am working on it
Alrighty, I am working on it now. I'll post pictures as soon as I'm satisfied with the values. :)
Here it is!
GroG here's the pic :
BTW, Can I use the joystick service to control robots?
Excellent work Michael ! Very
Excellent work Michael !
Very nice - now send me the values that you set up for the InRange filter.
Nice work ! Seems like you caught on quickly...
As for the Joystick - yes, its just another input device - its coordinates would need to be remapped in a service such that they are translated to command sent to the Arduino, Motors, or Servos - but most definately .. the Joystick service can be used to control robots. Do you have a joystick or PS2/3 controller?
I usually make them an "override" to autonomous bots, such that if I don't like what the bot is doing autonomously, then I take control with the joystick, or keyboard...
send me the InRange values and I'll send you a starter Jython script...
BTW - thanks for uploading pictures, I like visualizations - but if you could just right-click - image properties - width = 600 (height should auto-adjust) - that way it doesn't blow out the comment format.. Thanks.. :)
Here are the value in InRange
Here are the value in InRange filter:
hue: 3, 33
saturation: 87, 256
value: 230, 256
Alrighty..... The "next
Alrighty.....
The "next step" - is to begin incorporating what you want into a script - I created this one so that you can get an idea of the possibilities.
You will need the latest bleeding edge build - since there was some filter stuff I had to fix. Additionally, there is probably a memory leak in FindContours, or the Jython console logging - I'll figure that out later, since my current focus is fixing up the Arduino service
What this script does :
Here is what happens on my laptop.
You'll noticed the 4 filters are not displayed, this is because the service is not notifying the gui that new filters have been added, although, they were added programmatically. At the moment, if you add a filter programmatically, you'll have to remove it programmatically. Some gui notification details are low on my priority list. So, whatever filter values you have assigned, I had something which fit the criteria,.Strangely, I think it was my hair :D
It found 1 polygon and sent it back to the jython service.
So the polygon's center is printed out in the jython service's "jython console".
here you can see the x,y location of that polygon at (228,87)
Now, the Jython service could take those two values, adjust or modify them, and send them to an Arduino service which has 2 Servo's attached .... and viola ! you have color tracking :)
Hope this makes sense.
BTW - this is getting very off topic, if you wouldn't mind could you create another forum entry if you have another question or preferrably create a page and post your Robot Project ! For an example look at DancesWithRobots' Houston entry - http://myrobotlab.org/content/houston
Disregard
Disregard the
"
<
/
sending><
/
sending>"
tags at the end of the script... This is being added by Drupal for some incorrect reason...The script is not yet sending
The coordinates (288,87) can be mapped/adjusted to fit servos' angle isn't it? :D
The (x,y) represents the
The (x,y) represents the pixel location of the center of the polygon found, yes it can be re-mapped to servo angle.
Yes, you can change color by changing the filter configuration values...
If you get the Sphinx service to working, with a bit more logic added to the script, you could get it to recognize the word "red" and set the filter configuration to appropriate "red" settings, or have it recognize the word "blue" and set the appropriate "blue" filter settings, etc....
The jython console is not
The jython console is not printing x,y coordinates, Why is that? Do I need to download/install jython service? cause it's says "not installed" in the menu but it's in the tab. :)