== B21 == The B21 is a robot which uses the [[rflex|RFlex]] driver. == Features == * Ring of 24 sonar sensors on its base * Ring of 24 sonar sensors on its body * Ring of 24 IR sensors on its body * 2 bumps sensors per panel * 12 on body, 16 on base {{{ #!clearsilver CS/NodeAPI name = B21 desc = Controls B21 type robots. Awesomely. sub { 0.name = ~cmd_vel 0.type = geometry_msgs/Twist 0.desc = Motor Commands 1.name = ~cmd_accel 1.type = std_msgs/Float32 1.desc = Translational acceleration 2.name = ~cmd_sonar_power 2.type = std_msgs/Bool 2.desc = Turns the sonar on and off 3.name = ~cmd_brake_power 3.type = std_msgs/Bool 3.desc = Turns the brake on and off } pub { 0.name = ~sonar_cloud_base 0.type = sensor_msgs/PointCloud 0.desc = Point Cloud from Base. Uses base reference frame. 1.name = ~sonar_cloud_body 1.type = sensor_msgs/PointCloud 1.desc = Point Cloud from Body. Uses body reference frame. 2.name = ~sonar_power 2.type = std_msgs/Bool 2.desc = Broadcasts whether sonar is on 3.name = ~brake_power 3.type = std_msgs/Bool 3.desc = Broadcasts whether brake is on 4.name = ~voltage 4.type = std_msgs/Float32 4.desc = Current battery voltage 5.name = ~odom 5.type = nav_msgs/Odometry 5.desc = Current odometry 6.name = ~plugged_in 6.type = std_msgs/Bool 6.desc = Whether or not the robot's battery is plugged in } param { 0.name = ~port 0.type = String 0.desc = Filename of port that the robot is connected on 0.default = /dev/ttyUSB0 1.name = ~rate 1.type = Integer 1.desc = Main loop rate in hertz 1.default = 10 } }}}