Saturday, January 13, 2024

A more RUGGED robot platform for Exploration

continuing on the these of robotic design, with the help of AI (robotics) tools... 

 It seems our last attempts resulted in an unexpected robot! The broad pink and white stripes, soft lighting, and big goofy grin resulted in a "Total Adorable Robot".

Extra Adorable, Totally Not Evil Robot

However, I do not think that that Robot would survive very long in the Sonoran Desert!  There for, back to the discussion, and lets add some design that would work in a sandy, rocky region:

The first in the conversation, when reminded that the robot needed operate in rocky or sandy environments, it added broad wheels in an awkward arrangement.  I could imagine this also as a treaded solution. The bigger innovation perhaps is having the sensor platform as a (potentially) pivoting top component over the drive chassis. The streamlined frame looks like it would handle wind storms much better. The front sensors and display may need some protection and covering. overall, this is a much more robust robot.  But where is the manipulator arm?

The next variation of the prompt placed the robot in an icy, rocky environment and requested it have a manipulator that inspects geology:

The wheels of this Robot are considerably more realistic. It is also quite plausible that this robot would fall over. If you examine closely, there is a suggestion of the manipulator arm jutting out between wheels, but it gets blended into the axel and is lost. 

The next request required that the manipulator be the focus of the image.

This version has even more rugged wheels and a top structre that looks like it could support a wide variety of payload. The manipulator arm is placed in a difficult position, but looks robust and effective.

The Rugged, Wheeled Hexapod:

What if the Wheels of the robot were replaced with rugged manipulators with wheels? The robot could crawl over rocks. Here is a potential variant:

I like this concept robot a lot. It would require very strong actuators and some compliant joints. By having some wheel motion capability at the end of the manipulators, the robot could roll and climb in difficult terrain. The top structure has the appearance of a turret, to move to present its sensors in all directions.

There is a lot of potential with a robot design like this.

For those interested in learning how OpenAI's ChatGPT and DALLE-3 work, the last three images were all generated using the exact same prompt. Here you can see how variation is introduced when executing the same prompt.

and once again:

A robust, medium-sized exploration robot designed for rugged terrains, now uniquely featuring six multipurpose manipulator arms, used for both agile movement and examination. The robot has no wheels and moves by crawling on these manipulator arms. The body of the robot is adorned with broad pink and white stripes, presenting a friendly appearance. It has smooth, rounded contours, similar to an animal-like form. A digital display on the front shows a goofy grin, adding to its welcoming demeanor. The manipulator arms are made of strong, lightweight material, matching the robot's color scheme. These arms are intricately designed, demonstrating their flexibility and dexterity as the robot crawls across a challenging landscape, using them to navigate as well as examine geological features. Soft, warm lighting and clear branding with labels like 'Research Robot' and 'TOTALLY Not Evil!' are included in the design, with a focus on the unique functionality and design of the manipulator arms in the rugged environment.

Interesting what might actual make these images unique.  Once rendered it would be almost impossible to re-render the exact same picture.  See for yourself how very different they are drawn, given the same instructions.

Of course, they are all supposed to have six arms, and the last two only have four! They are also each supposed to have "Research Robot" and "Totally Not Evil!" stickers on them. It seems we stil have some more learning and progress to get DALLE3 on task, even when it was in a moderated thread with ChatGPT.

Friday, January 12, 2024

A Robotic Platform for Remote Exploration

A Robotic Platform for Remote Exploration, Sensing, and Monitoring

Earth Exploring robot concept that is "Totally" Not Evil!

Me and another Robot (LLM), design a robot for earth exploring!

let's design a robot platform for remote exploration, sensing, and monitoring.  What components would it need?

Designing a robot for remote exploration, sensing, and monitoring involves a combination of hardware and software components, each tailored to the specific requirements of the environment it will operate in and the tasks it will perform. Here's a detailed breakdown:

Hardware Components

1. Mobility System: 

   - Type: Depends on the terrain. Wheeled or tracked systems for ground, propellers for aerial, or thrusters for underwater exploration.

   - Material: Durable and lightweight, like carbon fiber or reinforced plastics.

[x] let us consider going for a rocky, sandy terrain with some vegetation, should be able to climb up a moderate slope.

2. Power Source:

   - Options: Solar panels, rechargeable batteries, or fuel cells.

   - Consideration: Longevity and environmental impact.

[x] electric and rechargeable, certainly. perhaps with multiple ports, incase someone wants to share a few watts of power.

3. Sensors:

   - Environmental Sensors: Temperature, humidity, atmospheric pressure.

   - Navigation Sensors: GPS, IMU (Inertial Measurement Units), lidar, sonar.

   - Specialized Sensors: Chemical sensors, radiation detectors, biological sensors.

[x] leave lots of room for sensors, that is what this is all about.

4. Communication System:

   - Options: Satellite communication for remote areas, Wi-Fi or Bluetooth for urban environments.

   - Redundancy: Essential to ensure constant communication.

[x] multiple options, use them all. perhaps even piggybacking on someone's iphone like an airtag?

5. Data Storage and Processing Unit:

   - Type: Onboard computer with robust processing capabilities.

   - Requirement: Must handle large amounts of data from sensors.

[x] bigger the better. just put it in a safe environment.

6. Robotic Arm or Manipulator: (why not?)

   - Capabilities: Picking, sampling, or minor manipulation tasks.

   - Design: Lightweight and flexible.

[x] absolute!  what is a robot without a manipulator or two, three...

7. Protective Casing:

   - Purpose: Protect against environmental conditions like temperature extremes, water, dust, etc.

   - Material: Dependent on the environment (e.g., waterproof materials for underwater robots).

[x] this will be extreme use them all.

8. Camera System:

   - Types: High-resolution visual, infrared for night vision, possibly 3D cameras.

[x] need cameras, many! we are all watchers for where this robot can go.

9. Emergency Systems:

   - Components: Emergency shut-off, self-diagnostic capabilities, fault-tolerant design.

[x] this robot is on its own, it will need to be self-reliant. not sure on the shut-off though?

Software Components

1. Operating System:

   - Type: Real-time operating system for immediate response to sensor inputs.

[x] both OS and controller, ROS2 is a good start, with subcomponents and watchdogs on controller circuits.

2. Navigation and Mapping Software:

   - Function: Path planning, obstacle avoidance, and real-time map generation.

[x] SLAM! Bam, thankyou mam!

3. Data Analysis Software:

   - Purpose: Process sensor data to extract meaningful information.

[x] let us do some on site, and send the rest to the mothership.

4. Communication Protocol:

   - Design: Secure and reliable, able to handle varying signal strengths.

[x] assume sparse and periodic communications, this is reality really.

5. AI and Machine Learning Algorithms:

   - Application: Autonomous decision making, pattern recognition, predictive maintenance.

[x] the fun part!

6. User Interface:

   - Features: Remote control capabilities, data visualization tools, alerts and notifications system.

[x] all of the above. lets give it some on-board UI, as well as the remote operations.

Additional Considerations

- Modularity: Designing the robot with interchangeable parts can enhance versatility and ease of maintenance.

[x] done!

- Scalability: The design should allow for easy updates and integration of new technologies.

[x] absolute

- Sustainability: Consider the environmental impact of the robot during its lifecycle.

[x] be kind to earth.

- Legal and Ethical Compliance: Ensure compliance with regulations in areas of operation, especially for data handling and privacy.

[x] don't hurt Hooomans!  after all it must be TOTALLY Not Evil!

- Safety Features: Crucial if the robot operates in public spaces or near humans.

[x] hey, don't hurt the meatbags!

Speculative Technologies

- Swarm Intelligence: For tasks that require large-scale monitoring, using a group of smaller robots working in a coordinated fashion.

[x] oh yeah! Robots that have robots!

- Advanced AI: For autonomous decision-making in unpredictable environments.

[o] so easy to say, what does this even mean anymore?

- Wireless Power Transfer: To recharge without physical connectors, enhancing the robot's autonomy.

[x] or better yet, lets harvest it from 'sources'

I think it would need to look friendly so that it is not abused by Hooomans that find it. 

Absolutely, the robot's appearance plays a crucial role in how it's perceived and treated by the public, especially if it's operating in areas where it might encounter people. A friendly, non-threatening design can help to mitigate the risk of abuse or vandalism. Here are some design aspects to consider for a friendly appearance:

Design Elements for a Friendly Appearance

1. Color Scheme:

   - Selection: Choose soft, approachable colors. Pastels or bright, non-intimidating colors like light blue, green, or yellow can convey friendliness.

   - Purpose: Avoid aggressive or military-like colors that might be perceived as threatening.

[x] lets go with broad Pink and White stripes.

2. Shape and Form:

   - Design: Rounded edges and smooth contours are generally seen as more friendly and less aggressive than sharp angles and points.

   - Inspiration: Take cues from popular consumer electronics or characters in family-friendly media that are known for their approachable designs.

[x] Animals have rounded edges too.

3. Size and Scale:

   - Proportion: Not too large to be intimidating, but not so small as to be easily tampered with. A medium-sized build can be optimal.

   - Aspect: Humanoid or animal-like features can be engaging and relatable.

[x] medium is good.

4. Facial Features or Equivalent:

   - Display: If applicable, incorporate a simple, digital face or emotive lights. Expressions like a smile or blinking lights can create a sense of friendliness and approachability.

   - Interaction: Features that react to human presence (like turning towards someone when they speak) can foster a sense of interaction.

[x] true! maybe with a goofy grin on it.

5. Sound and Voice:

   - Tone: A friendly, non-threatening voice for any audio communication.

   - Sound Effects: Gentle, pleasant beeps or musical tones instead of harsh or alarming sounds.

[x] beep bop! Hello!   -- thanks R2D2!

6. Branding and Signage:

   - Labels: Clear, friendly branding with logos or mascots that suggest helpfulness and positivity.

   - Information: Displaying its purpose (“Research Robot”, “Environmental Monitoring”, etc.) can help people understand its presence and mission.

[x] should clearly state that it is "TOTALLY Not Evil!"

Saturday, July 29, 2023

Mojo5 - First concepts and Franken-prototype (#2)

Mojo5: Building a New Robot!

To kick off the design process, the main concept behind Mojo5 was to closely bind the servos together while using an unconventional material – chopsticks(!) – to create a minimalistic chassis.

Initial CAD Drawings:

The journey started with creating initial CAD drawings to visualize the robot's structure and mechanics.

Servo mount is binding the two leg servos together

(Blue) knee servo arm, linkage, and co-axial cam
(Yello) Upper-Leg also co-axial, servo connected

Microcontroller and Servo Driver:

For Mojo5, a major change was adopting the ESP32 controller instead of the simpler Arduino mini-pro used in previous Mojo variants. The ESP32 provides added functionality, including built-in Wi-Fi and Bluetooth connectivity, and ample I/O pins to accommodate future expansions.

Mojo5: ESP32 Micro-controller connected to PCA9586 Servo Driver

To drive the servos, I chose the PCA9685 servo driver, utilizing I2C communications. Although my existing 11kg servos are not the most powerful, the PCA9685 still manages to control them effectively. Furthermore, my familiarity with this driver makes it a suitable choice for use with the ESP32.

The Franken-Prototype:

To quickly test the concept feasibility, an initial prototype was assembled. It consisted of a newly designed 'upper-leg' or 'femur' and a knee-cam sharing the same axis as the upper-leg. Other parts were recycled from earlier robots, giving birth to what we affectionately call a 'franken-prototype'. Franken-prototyping is a common and pragmatic approach to quickly determining the feasibility of an idea.

The first test was crucial – connecting the servos to the PCA9685 and ESP32. I taped the servos together and assembled the required components. Powering the system with a 5V source, I eagerly sought to witness the initial motion and validate the success of this build. And to my delight, it worked! This promising outcome lays a solid foundation for the upcoming design iterations.

Mojo5: Franken-Prototype

In addition to the Prototype, I was able to set up a new repository for the Mojo5 code, and test out the basic set up, communications, and loops.

With Mojo5's initial movements validated, I'm excited to delve deeper into refining and enhancing its capabilities for even greater achievements in the future!

Sunday, July 16, 2023

Mojo5 - Minimal Viable Mojo


Lately, I've been on a bit of a hiatus from robot building, due to the stresses of life and my role as the technical lead in a startup. Yet my thoughts have never strayed from the topic, frequently returning to many different types of robots. But quadrupeds – they have a special place in my heart. You always go back to your first love.

In recent times, there have been numerous discussions about the prerequisites for a good, affordable quadruped. Since embarking on this journey, I've seen a few open-source designs come into existence, such as the Stanford Puppers. To me, the real thrill lies in creating my own, even though I do keep an eye on the work of others in this field.

Looking back, the primary challenges with my previous designs stemmed from the strength of the servos and the overall weight of the robot. To be successful, you need 25+ kg/cm servos with speeds of less than 0.2 seconds for 60 degrees. These servos typically cost $20-25 each (when on sale), and a basic 8-degree-of-freedom quadruped would need eight of them. Before I take the plunge and invest in these high-end servos, I want to try one more design to see if it might be possible to work with the 11 kg/cm servos I currently have.

Enter the Minimal Viable Mojo - Mojo5.

For my Mojo5 design, I aim to strip everything down to the bare minimum necessary to create a walking quadruped.

Minimal parts:

  • 4 leg assemblies
  • 4 quadrant servo mounts
  • 8x MG995 servos (60g each) 480g
  • Light weight wooden dowels connecting the parts
  • Arduino nano pro
  • 7.4v battery for servos
  • 9v battery for controller

This MVM - minimal viable mojo will be a mini-mini quadruped.

Moving forward with this reduced configuration, we have to address several fundamental challenges, the foremost being power optimization. Lighter and less powerful servos mean we have to be extra diligent about weight distribution and energy efficiency.

We're dealing with MG995 servos that are a bit less powerful than the ideal 25+ kg/cm servos, hence the need to maintain a weight that falls within their operating parameters. Every gram of weight matters in our design, hence the decision to use lightweight wooden dowels as linkages.

The Arduino Nano Pro will be the brain of the Mojo5, controlling the servos and coordinating their movement to achieve walking and possible turning. It's a cost-effective and well-documented controller, which makes it ideal for this type of application. However, there will be some limitations due to the lower processing power compared to higher-end controllers.

Power-wise, we're going with a 7.4v battery for the servos and a separate 9v battery for the controller. This dual power source approach is necessary to avoid a brownout scenario when the servos draw a significant amount of current, which could lead to a temporary loss of control.

One innovative aspect of the Mojo5's design will be its cam, pushrod-controlled lower leg. This type of mechanism can provide the torque needed for locomotion without adding much weight, but it does introduce some complexity into the design and programming.

For the leg assemblies, we're starting with 70cm sections. This is a reasonable starting point, but it's likely that we'll have to iterate and adjust these dimensions as we move forward with the project and start testing the prototype. It's going to be a careful balancing act to ensure the legs are long enough for effective locomotion, yet not so long as to place too much strain on our MG995 servos.

Overall, the Mojo5 design will be a journey of continuous iteration and improvement. Each step will likely present new challenges, from structural tweaks to software adjustments, but that's part of the excitement of building our own quadruped from scratch. Stay tuned as we start prototyping and begin to bring Mojo5 to life. We're looking forward to sharing this journey with you.

Tuesday, July 11, 2023

Robots in the Wild!

Have you ever heard the phrase "as rare as seeing a unicorn in the wild"? Well, the times they are a-changing, and a new, equally exciting creature is becoming more and more common in our everyday lives - robots. As you know, they're leaving the labs and factories and starting to roam free in our streets, our parks, and even our homes! This is a just migration, not an invasion, let's not panic. It's "Totally" Not Evil, I promise.

Earlier this year, I was taking a leisurely stroll around the magnificent grounds of the Belvedere in Vienna. I was there to admire the exquisite Baroque architecture and to gaze at the mesmerizing works of Klimt. However, I spotted something extraordinary, a Robot in the Wild. A Husqvarna robot, completely autonomous, humming a silent tune as it meticulously trimmed the luscious green carpet surrounding the palace. It's quite something to see these machines tending the gardens of such historic landmarks - as if the future decided to pay a visit to the past. Who needs garden gnomes when you have lawn-mowing robots?

Robot mowing the gardens at the Belvedere, Vienna

As I continued my travels, this time to an airport in Phuket, Thailand, the robots made their presence felt yet again. As I waited for my flight, a cute, round robot diligently scrubbed the floors, tirelessly ensuring cleanliness for the thousands of footfalls it would encounter every day. While we all were busy staring at our screens, this little robo-janitor was doing its part to keep our world a tad cleaner and shinier. 

Airport floor cleaner - Phuket, Thailand

Remember how I mentioned special purpose robots? Well, let's turn the spotlight to the solar industry. At a recent convention, there were 4-5 solar robot cleaner companies exhibiting. These little machines, like well-trained bees in a hive, were cleaning the dust off solar panels, making sure the path for sunlight was as clear as day. Why climb up the roof under the scorching sun when you can delegate it to these handy helpers?

Solar panel cleaner robot at InterSOLAR

two models - Solar panel cleaner robot at InterSOLAR

Finally, at a Power and Energy AWS convention, I spotted the ANYMAL robot. This four-legged, dog-like creation is something out of a science fiction movie. They are designed to operate in challenging environments, like inspecting offshore oil rigs, navigating through disaster-stricken areas, or simply delivering packages - your personal mechanical courier!

The ANYmal robot

Every day, the presence of robots in our world becomes less of a novelty and more of a norm. Some might find this unsettling, but remember, they're here to help us, to make our lives easier, safer, and more efficient. So, the next time you spot a robot in the wild, give them a nod, a wave, or a friendly beep-boop-beep in their language. Its best to be friends with them! ;)

In this thrilling time of transformation, we'll continue to document these mechanical marvels in their new habitats – our world. So, stay tuned for more chronicles of Robots in the Wild. You may think it's unusual to see a robot in your daily surroundings, but take a moment and observe. Are they becoming more common? Are they quietly blending into our everyday lives? You might be surprised.