Turtlebot 3 battery state unknown
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?