hello friends, by projecting my ROV but I started by electornics control and then turn to the physical part .
I have been guided by http://bluerov.readthedocs.org/
but i have problems when launch roslaunch bluerov serial.launch
I anticipate that my skills are very limited in linux I copied the terminal response to this command
viki@c3po:~ roslaunch bluerov serial.launch
[serial.launch] is neither a launch file in package [bluerov] nor is [bluerov] a launch file name
The traceback for the exception was written to the log file
Traceback (most recent call last):
File "/opt/ros/indigo/bin/roslaunch", line 35, in <module>
roslaunch.main()
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/__init__.py", line 308, in main
logger.error(traceback.format_exc())
UnboundLocalError: local variable 'logger' referenced before assignment
viki@c3po:~
Are you able to do roscd bluerov without issue? (The result of the command should change your shell directory to the bluerov package directory.)
I common pitfall with ROS is folks not setting their ROS distribution and ROS workspace in their path, which could be the root cause here. A line is usually stuck in the user’s ~/.bashrc file to automatically adjust the path for new shell instances.
Also, we will likely share a clone of our SD card in the future, however we aren’t ready to support that just yet. Stay tuned!
I decided to start again placing each step carefully.
and not processing any additional command to be sure that every process is ok
I have reached the end of the installation part of ROS on Raspberry with raspibian.
and when I go to enter the path
You should not have permission issues and you should not need to use sudo for ~/.bashrc. You have a bunch of extra spaces in the commands in your last post. If these spaces are actually showing up in the terminal when you type/paste the commands, you will definitely have issues. If it is not the spacing issue, then I’m not sure what the problem is.
Thanks Josh.
I followed your advice to installation on ubuntu 14.04
The reason was that Raspibian try on ubuntu I can not install my usb wifi module (a problem with the version of the kernel and driver.
In short, everything went well until
Install the Bluerov package rebuild
I have an error response that you copy
[ 61%] Built target bluerov_generate_messages_lisp
[ 69%] Generating Python msg init.py for bluerov
[ 76%] Generating C++ code from bluerov/Thruster.msg
[ 76%] [ 76%] Built target bluerov_generate_messages_py
Built target bluerov_generate_messages_cpp
Scanning dependencies of target teleop_xbox
Scanning dependencies of target pilot
[ 84%] Scanning dependencies of target simple_pilot
Building CXX object bluerov/CMakeFiles/teleop_xbox.dir/src/teleop_xbox.cpp.o
[ 92%] Building CXX object bluerov/CMakeFiles/pilot.dir/src/pilot.cpp.o
[100%] Building CXX object bluerov/CMakeFiles/simple_pilot.dir/src/simple_pilot.cpp.o
/home/ubuntu/catkin_ws/src/bluerov/src/simple_pilot.cpp: In member function ‘void Pilot::setServo (int, float)’:
/home/ubuntu/catkin_ws/src/bluerov/src/simple_pilot.cpp:79:25: error: ‘CMD_DO_SET_SERVO’ is not a member of ‘mavros::CommandLongRequest’
srv.request.command = mavros::CommandLongRequest::CMD_DO_SET_SERVO;
^
make[2]: *** [bluerov/CMakeFiles/simple_pilot.dir/src/simple_pilot.cpp.o] Error 1
make[1]: *** [bluerov/CMakeFiles/simple_pilot.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs…
Linking CXX executable /home/ubuntu/catkin_ws/devel/lib/bluerov/controller
Linking CXX executable /home/ubuntu/catkin_ws/devel/lib/bluerov/teleop_xbox
Linking CXX executable /home/ubuntu/catkin_ws/devel/lib/bluerov/pilot
[100%] Built target pilot
[100%] Built target controller
[100%] Built target teleop_xbox
make: *** [all] Error 2
Invoking “make -j4 -l4” failed
ubuntu@bluerov:~/catkin_ws$
I will make a clone of the SD at this point and I will try again point
Hmm. This error is a bit more interesting. Did you install mavros? The tutorial includes ros-indigo-mavros and ros-indigo-mavros-extras to install among other packages.
If you did install both of those before building, that I might need to do a bit more research. Maybe mavros changed their code since we set up the BlueROV?
I tend to think that you can make any changes in mavros that conflicts with CMD_DO_SET_SERVO command seems mavros :: CommandLongRequest not recognize maybe it can be corrected with a small correction in simple_pilot.cpp
But you are the master.
ros-indigo-mavros and ros-indigo-mavros-extras They are installed correctly
I wish I could contribute.
Unfortunately I have no knowledge or programming or linux so I would not know where to start.
However, I will try to discharge me on Github and put the error to see if anyone of those who collaborate with you on this project and they know of robotics and programming give the source of the error.
Share a copy of a working SD card is a great detail of you and I thank you deeply. So we have half the difficulty resolved, it will be only to overcome the error in the workstation, for as you have seen, the error is reproduced in both.
If not abuse too, it would be very grateful if also an image of the workstation would share in addition to the SD of Raspberry.
Thank you so much.
Note: I find it a little difficult to express in English, so I apologize in advance asking if the translation or the tone of my words does not seem of great appreciation and deep gratitude to your generosity.
No worries, chapulino1000 ., I thought you had already identified the issue. No need to post anything on GitHub then.
I do think you stumble on a problem with the setup instructions. It is likely something very simple (like a missing dependency install), but I won’t have a chance to debug until this weekend at the earliest.
We’ll do our best to get the SD card image up and running soon. However, we are not planning on making an image for the desktop ROS setup at this time. Once we find this issue in the setup script, the desktop install should be very smooth.
Hi Josh.
I understand that this is a hobby, not an obligation, but would appreciate if you have a moment, you could edit the code so that we can continue.
Personally I am hoping to have operational, the software part and verify the operation to move to buy the ROV.
I worry have expensive equipment and then not be able to operate properly.
I am still working on the SD card image, but I have a fix for the original problem. In line 79 of src/simple_pilot.cpp, replace CommandLongRequest::CMD_DO_SET_SERVO with 183. The full like should look line this:
srv.request.command = 183;
I haven’t identified the root cause of why this is happening, but this should unblock you and allow you to continue developing with the BlueROV ros package.
Please let me know if you have an additional questions and I’ll let you know when I am able to complete the SD card image in the next couple of days.