Turtlebot 3 battery state unknown

asked 2021-01-04 14:59:49 -0500

traemand gravatar image

Hi there,

I'm dabbling in ROS, and I've set up my Turtlebot 3 succesfully, running Linux Mate 18.04 with ROS Melodic on it. My remote PC. Thinkpad W530 with Ubuntu 20.04 and ROS Noetic.

I've been following the ROBOTIS E-manual, and made it to about this page: https://emanual.robotis.com/docs/en/p...

I ssh to the turtlebot in one terminal, then run roscore from my remote pc in a second terminal. Then i run the following from the turtlebot:

roslaunch turtlebot3_bringup turtlebot3_robot.launch

Which gives the following output:

SUMMARY
========

PARAMETERS
 * /rosdistro: melodic
 * /rosversion: 1.14.10
 * /turtlebot3_core/baud: 115200
 * /turtlebot3_core/port: /dev/ttyACM0
 * /turtlebot3_core/tf_prefix: 
 * /turtlebot3_lds/frame_id: base_scan
 * /turtlebot3_lds/port: /dev/ttyUSB0

NODES
  /
    turtlebot3_core (rosserial_python/serial_node.py)
    turtlebot3_diagnostics (turtlebot3_bringup/turtlebot3_diagnostics)
    turtlebot3_lds (hls_lfcd_lds_driver/hlds_laser_publisher)

ROS_MASTER_URI=http://192.168.8.109:11311

process[turtlebot3_core-1]: started with pid [2253]
process[turtlebot3_lds-2]: started with pid [2254]
process[turtlebot3_diagnostics-3]: started with pid [2255]
[INFO] [1609792735.960484]: ROS Serial Python Node
[INFO] [1609792735.994411]: Connecting to /dev/ttyACM0 at 115200 baud
[INFO] [1609792738.111848]: Requesting topics...
[INFO] [1609792738.170644]: Note: publish buffer size is 1024 bytes
[INFO] [1609792738.179111]: Setup publisher on sensor_state [turtlebot3_msgs/SensorState]
[INFO] [1609792738.195000]: Setup publisher on firmware_version [turtlebot3_msgs/VersionInfo]
[INFO] [1609792738.752105]: Setup publisher on imu [sensor_msgs/Imu]
[INFO] [1609792738.775121]: Setup publisher on cmd_vel_rc100 [geometry_msgs/Twist]
[INFO] [1609792738.986430]: Setup publisher on odom [nav_msgs/Odometry]
[INFO] [1609792739.003819]: Setup publisher on joint_states [sensor_msgs/JointState]
[INFO] [1609792739.021323]: Setup publisher on battery_state [sensor_msgs/BatteryState]
[INFO] [1609792739.039647]: Setup publisher on magnetic_field [sensor_msgs/MagneticField]
[INFO] [1609792740.933934]: Setup publisher on /tf [tf/tfMessage]
[INFO] [1609792740.954239]: Note: subscribe buffer size is 1024 bytes
[INFO] [1609792740.961914]: Setup subscriber on cmd_vel [geometry_msgs/Twist]
[INFO] [1609792740.982794]: Setup subscriber on sound [turtlebot3_msgs/Sound]
[INFO] [1609792741.006511]: Setup subscriber on motor_power [std_msgs/Bool]
[INFO] [1609792741.029355]: Setup subscriber on reset [std_msgs/Empty]
[INFO] [1609792741.222812]: Setup TF on Odometry [odom]
[INFO] [1609792741.234805]: Setup TF on IMU [imu_link]
[INFO] [1609792741.245217]: Setup TF on MagneticField [mag_link]
[INFO] [1609792741.256716]: Setup TF on JointState [base_link]
[INFO] [1609792741.274696]: --------------------------
[INFO] [1609792741.285424]: Connected to OpenCR board!
[INFO] [1609792741.295706]: This core(v1.2.3) is compatible with TB3 Burger
[INFO] [1609792741.304958]: --------------------------
[INFO] [1609792741.314260]: Start Calibration of Gyro
[INFO] [1609792743.784214]: Calibration End

Then, when running rqt in a third terminal i get "unknown" in both Bandwidth and Hz, even ticked. The rest of the topics send and receive data with no issues. I should say that i received the Turtlebot in used condition, and the battery that came with it was toasted, so i've been using a Brainergy Lipo 11,1v 1800mAh 45C Tplug. Also, teleop and SLAM with gmapping works well.

It's kind of a bugger to not be able to monitor the battery state, as i'm worried about over-discharging it.

How can i monitor the battery state from my remote pc, and warn me when battery is low?

edit retag flag offensive close merge delete