Friday, 1 November 2024

 Robbie now with torso


I wanted to test the navigation system with the whole robot I'm looking at the acceleration profiles and how the robot handles doorways and corridors and just driving in general





Wednesday, 30 October 2024

 Docking Server

Here is a clip showing the nav2 docking server Robbie is docking forward so we can work on the other systems. I have mapped the un/dock sequence to the joystick this seems to make a good natural work flow. the undock should be called from the BT server before the start of navigation



Tuesday, 29 October 2024

 October update


Time for another update on robbie after changing the the drive base to the omni_bot base it showed potential but also a lot of short comings the base was to large to consistently go through corridors the structural integrity was compromised. The base was designed with tighter tolerances and greater rigidity also smaller. We now use stepper motors for the steering system with magnetic encoders. and I2C controller motor drivers with encoders . The motor drivers were from the old design and the python driver was a legacy design. The big change was the odometery function using wheel angles and wheel velocity coupled with a gyro, magnetometer that gave a 20cm accuracy after a 16 meter drive. The successful test of the new omometery node I was able to remover the dead encoder wheel and use ROS nav2 with a MPPI controller in OMNI mode using the nav2 docking server the auto dock works with greater reliability and comes with a undock function all this is mapped the joy stick controller. The python controller was starting to be a bottle neck so I rewrote it in CPP with a noticeable speed improvement. 

this is a video of the the base using navi2 to chase the videographer https://youtu.be/5DKG3iNSfLM

and some build photos






 

 

Thursday, 18 May 2023

Intergrating Omni_bot and Robbie

I have merged the omni_bot base with the torso of Robbie

The integration of three omni wheels with encoders has significantly enhanced and simplified the robot's odometry. Precise measurements of wheel rotations from the encoders enable accurate localization and mapping of the environment, resulting in more reliable navigation.

By leveraging Nav2 and slam_toolbox for navigation, the robot benefits from powerful out-of-the-box navigation capabilities. These robust ROS packages facilitate autonomous path planning, obstacle avoidance, and efficient goal-reaching, minimizing the need for extensive modifications.

The adoption of the differential drive plugin for navigation has greatly reduced fishing motion in the Y-space, resulting in smoother and more fluid movement

Replacing the RPI4 with an I5 mini PC running Ubuntu 22.4 and ROS Humble significantly boosts computing power and reliability. The I5 mini PC offers faster processing speeds, improved multitasking capabilities, and better software compatibility, simplifying installation and ensuring a stable platform. Eliminating the Timing Issues by Centralizing Nodes on I5: Centralizing all nodes on the I5 mini PC resolves timing issues observed in the previous setup. Improved synchronization and coordination between nodes result in smoother communication and minimized delays, enhancing performance and responsiveness.

Autodock functionality now incorporates strafing moves, enabling precise alignment with the docking beacon. This refinement enhances the accuracy and efficiency of the docking process.

The low power monitor program has been enhanced to incorporate additional functionality. Utilizing a QR marker and the rear-facing camera, the robot can accurately rotate to the correct angle before initiating Autodock. This improvement ensures precise alignment and eliminates potential errors during docking.

Control and day-to-day operation of the robot are seamlessly achieved using the existing chat bot, which now supports custom commands. Unknown commands are recorded for further integration into AIML, continuously improving the system's understanding and response capabilities. Text-based input simplifies interaction, enabling smooth communication between users and the robot platform.

 

 

 


Monday, 26 December 2022

Robbie update

 I haven't done a update in a while Robbie now runs ROS2 humble on a single RPI4

ROS2 humble is at last at the same level as ROS1, but in general it works much better. Navigation is much more stable and works out of the box the ability to do mapping and use move_base at the same time makes mapping quicker. the work flow is now 

  • start the robot , 
  • launch slam and navigation 
  • set points in RVIZ until the map is complete
  • save the map in RVIZ

using the way point navigator feature in RVIZ you can set the way points you would

like the robot to traverse press run and the robot moves the course. very little effort required. 

 

 

 


 

Sunday, 24 March 2019

Gizmo Update

The last couple of weeks Gizmo has continued testing, the goal has been to make it more reliable and autonomous and we are making progress in that part. The biggest change has been the addition of a microphone array on his head. This was not easy the software only runs on the latest Rasbian, and ROS needs to be installed from source  it took about a week before it was all running.
Gizmos current status is
  1. navigation works but still passes to close to objects if we set way points Gizmo will navigate through doors and narrow corridors and still be localized correctly at the end.
  2. Moveit will move the arms to a location and track a moving target but the dynamixels servos will overheat after a short time.
  3. Auto-docking and battery management work in semi automatic mode only
 The new external microphone opens a lot of potential ideas in a quite room Gizmo will recognize voices out to 2.5 meters with the TV running we are down to about 1 meter. We are using python speech recognizer and Google STT in default mode, snowboy for hot work recognition. it take about 8 seconds from start of command to returned text. the text is passed to a python chatbot for response and action requests are passed to the behavior tree.

Friday, 11 January 2019

Gizmo the new Robbie


Gizmo is a merger of 3 robots
Bentley a smallish robot
Robbie a big Inmoov style robot
Max a navigation test robot
All 3 had design problems Bentley was too small, Robbie was too big and had trouble navigating around the house and Max was a good size but the drive train was fragile. And last of all 3 robots was just too much. Time for a rethink, so I combined the best features of all. The basic style of Bentley the size of Max and the systems and parts of Robbie.
Gizmo was designed
  • to be lifted to a workbench for maintenance
  • small enough to navigate with low resolution sensors
  • big enough to hold the components with easy access
  • 5 hour run time
  • and not look like a box with appendages
The first version was made with tubing to check for fits and clearances
Version 2 was mostly 3D printed and a new drive train using sprocket and chain