Hello,
I have the following error in section 3 of the new galactic course “The robot did not reach the correct final position”, even though the robot is passing through the opening in the wall, and then stops. What is the exact final expected position? (which is not specified)
After the error appears, the gradebot freezes and doesn’t give me any grades.
Hi @jorge_rd ,
Welcome to the Community!
Are you sure you are in ROS2 and not ROS1?
Your post’s title course tag states ROS Basics in 5 Days (Python) but you have mentioned Galactic in your post content which is ROS2. ROS and ROS2 are NOT the same. Please change the Post’s title course tag to reflect the exact course you are doing.
Regards,
Girish
I changed the tag to ROS2.
Thank you.
You currently seem to have two problems:
- The masrks are not showing up in your autograder - that will be fixed by The Construct team / staff.
- Regarding your grading problem - robot did not reach correct final position: Did you try running it without the autograder, that is, by using the usual
ros2 launch ...
command? Did it reach the final position correctly?
Regards,
Girish
Yes it reaches the supossed final position by running the command
ros2 launch topics_quiz topics_quiz.launch.py
The robot stops at the following position.
Try going a little further (say another grid or grid-and-a-half and stop there). The sensors are probably catching up some closeness to the wall.
Let me know if this fixes your problem!
Regards,
Girish
I still having the same error. I have tried 1, 2, 4 ,and 10 grids further and then stop there.
I was starting the next section while waiting for response on this topic. Nevertheless, now I am having a different error in section 4 (which I suspect is somehow related).
Suddenly when I try to run the command
->source install/setup.bash
I get the following messages
ROS_DISTRO was set to ‘galactic’ before. Please make sure that the environment does not mix paths from different distributions.
ROS_DISTRO was set to ‘noetic’ before. Please make sure that the environment does not mix paths from different distributions.
Now I can’t launch my files using
->ros2 launch topics_quiz topics_quiz.launch.py
I get the following error message
AttributeError: type object ‘type’ has no attribute ‘_TYPE_SUPPORT’ This might be a ROS 1 message type but it should be a ROS 2 message type. Make sure to source your ROS 2 workspace after your ROS 1 workspace.
I have run several times the command to try source my ros2 workspace, but nothing changes.
->source /opt/ros/galactic/setup.bash
I am not pretty sure if this happend beacuse I ran the first command of section 4 (-> source /opt/ros/galactic/setup.sh) whith extention .sh instead of .bash, which I belive is an error of section 4.
I have faced the same issue. You must source ROS1 and then source ROS2 and then do colcon build followed by source install/setup.bash
cd ~
source /opt/ros/noetic/setup.bash
source /opt/ros/galactic/setup.bash
cd ~/ros2_ws
colcon build --packages-select <your_package_name>
source install/setup.bash
ros2 launch <your_package_name> <your_launch_file>.launch.py
You can ignore the lines that say about ROS_DISTRO changed. It just indicates what the ROS_DISTRO environment variable points to.
These steps should fix that problem.
Regards,
Girish
After following the steps I still having the same problem.
Try to close all your webshells by clicking on the red X button on each webshell tab and wait for each webshell to reset. Then try the above commands. Remember: Every new webshell you use, you must source ROS2 and install/setup.bash
Regards,
Girish
Ok, that fixed just the issue of the ros noetic distro.
I think I found what is happening.
-
Every thing is normal and working good.
-
I try to run the Gradebot to pass the section 3 quiz
-
The Gradebot freezes in the error “Robot did not reach the correct final position”
-
I have to refresh the webpage (I am using Firefox) to scape from the freezed Gradebot.
-
After refreshing the page I cant launch any file as the ros noetic distro is sourced somehow insted of the ros2 galactic distro. So I have to kill the webshell to fix the problem.
Thank you for your help.
It seems that the gradebot is the problem here.
Yeah, its usually one thing or the other. Glad you got something working.
The Construct team could help you fix the autograder evaluation.
Regards,
Girish
Hi The Construct team,
I have a very similar error in Unit 4 (Understanding ROS2 Services),“The robot did NOT fully perform the expected turn” altough the robot is actually doing the expected turn. After receive the error message the gradebot freezes. I see @eyaleyal reported the same problem I reported of unit 3 in
The error mesage I receive is
Hello @jorge_rd ,
I’m currently looking into these issues.I’ll come back to you as soon as I have it fixed. Sorry for the inconveniences.
Hello @jorge_rd ,
I fixed a bug in the system and now the autocorrection script should work ok. I tested with your topic’s quiz code, and the final step is still failing because you have to STOP the robot once you go past the opening. In your code, the robot never stops and keeps moving forward.
Hi Alberto,
Thanks for your help. The gradebot is working better now. It does not get stuck anymore, and I am receiving marks now. Nevertheless, it stills giving me the error “The robot did NOT reach the correct final position” although it is passing the wall opening and stopping after that.
When you tested my code the stopping condition was at 10 grids (to test if the distance was the problem), that’s why you probably tough it was moving forward forever. I changed the stopping condition to 2 grids and It stills giving the error.
@albertoezquerro also, in unit 5 understanding actions. There is another error. The gradebot gives me an error of “Could not launch actions_quiz server successfully” although I can run the command “ros2 launch actions_quiz actions_quiz_server.launch.py”
Hello @jorge_rd ,
About the Topics Quiz, If the robot is stopping after 2 grids, it’s probably going to fail. Please try stopping the robot after only 1 grid. I’ve added a new comment in the Quiz to clarify this:
About the Actions Quiz, I’ve checked the logs and your error is that you are using a custom interface defined in another package (which is not part of the Quiz): from custom_interfaces.msg import TotDist
. If you use custom interfaces defined in external packages, the correction is going to fail. I’ve also updated the specifications to clarify this. If you change this, it should work.