roverrobotics / roverrobotics_ros2 Goto Github PK
View Code? Open in Web Editor NEWRover Robotics ROS2 Packages
Home Page: https://roverrobotics.com/
License: Apache License 2.0
Rover Robotics ROS2 Packages
Home Page: https://roverrobotics.com/
License: Apache License 2.0
Is the Zero 3 ROS2 compatible? I have followed the installation and communication instructions found here and in the tools repository, but I have been unable to connect to the robot when using the zero2.launch.py file. I installed the tools for Rover Zero 2, as this was seemingly the closest model to the Zero 3, which I am using.
https://github.com/RoverRobotics/roverrobotics_ros2/tree/main/roverrobotics_driver/udev udev rules by convention start with a number between (I believe) 1 and 99 rated by importance. This numbering is important in case of colliding udev rules such that the highest priority rules override lower ones in case of conflict. May I suggest something in the mid-30s to 60s.
So users have instant feedback if something's wrong via log files
Seems like an old artifact, should this metapackage be removed or renamed? Given the number of packages in here, I might suggest removing it for now and readding a metapackage if/when you have more roverrobotics_*
packages (like nav configurations, etc)
The rpm received from UART suddenly changes to a negative value when speed of 1.6m/s or more is passed to the topic of cmd_vel.
We think that Rover Pro will send an invalid rpm when the motor speed exceeds the maximum value of 32,767 of "signed unsigned char" type
[protocol_pro.cpp]
void ProProtocolObject::unpack_comm_response(std::vector<uint8_t> robotmsg) {
..
int16_t b = (data1 << 8) + data2;
switch (int(dataNO)) {
case REG_PWR_TOTAL_CURRENT:
break;
case REG_MOTOR_FB_RPM_LEFT:
robotstatus_.motor1_rpm = b;
RCLCPP_INFO(rclcpp::get_logger("librover"), "motor1 : %d", robotstatus_.motor1_rpm); <== HERE
break;
case REG_MOTOR_FB_RPM_RIGHT: // motor2_rpm;
robotstatus_.motor2_rpm = b;
RCLCPP_INFO(rclcpp::get_logger("librover"), "motor2 : %d", robotstatus_.motor2_rpm); <== HERE
break;
[roverrobotics_driver-2] [INFO] [1627352670.935052496] [librover]: write 253 215 215 125 10 2 198
[roverrobotics_driver-2] [INFO] [1627352670.936004152] [librover]: write 253 215 215 125 10 4 196
[roverrobotics_driver-2] [INFO] [1627352670.947495799] [librover]: motor1 : 27758
[roverrobotics_driver-2] [INFO] [1627352670.947623064] [librover]: motor2 : 24019
[roverrobotics_driver-2] [INFO] [1627352670.969478827] [librover]: write 253 214 216 125 10 2 198
[roverrobotics_driver-2] [INFO] [1627352670.970326930] [librover]: write 253 214 216 125 10 4 196
[roverrobotics_driver-2] [INFO] [1627352670.979489694] [librover]: motor1 : 24019
[roverrobotics_driver-2] [INFO] [1627352670.979624927] [librover]: motor2 : -32661 <==Here is the issue log!!
roverrobotics_description
try/catch statements when constructing the protocol object currently check values -1, -2 etc.
These should be enumerated in librover.
I met the problem when rebuild ,how to solves it? thank you
https://github.com/RoverRobotics/roverrobotics_ros2/blob/main/roverrobotics_driver/launch/pro.launch.py#L11 right now there's no way of giving a different parameter file to override this default. Also the Path()
is unnecessary
To make sure the data is valid before publishing things so that if there's a connection error, you know before being able to continue with startup.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.