Aller au contenu


TNERA

Inscrit(e) (le) 01 nov. 2021
Déconnecté Dernière activité mars 25 2025 09:12
-----

#121929 Introducing MinOne: My MVP Robot for SLAM Exploration

Posté par TNERA - 19 février 2025 - 06:11

Hey everyone,

 

I wanted to share the start of my new robotics project, Minone, which is my MVP (Minimum Viable Prototype) for an exploration-focused robot. My goal with this build is to learn and refine SLAM (Simultaneous Localization and Mapping) using simple sensors, focusing on the fundamentals before scaling up.

 

Instead of jumping straight into complex sensor suites like LiDAR, I’m starting with basic ultrasonic and IR sensors to tackle obstacle detection and mapping. The idea is to deeply understand SLAM implementation—both from a theoretical and practical perspective—before adding more sophisticated hardware.

 

Right now, I’m putting the basics of the physical robot together using components I already have lying around. The chassis? A wine box top. The drive system? Two old Roomba motors bolted to it, with a recycled caster wheel from a trashed piece of luggage. It’s a real scrap yard robot, but that’s part of the fun—keeping it simple, functional, and iterative.

 

For the microcontroller, I’m going with an ESP-32S, and motor control will be handled by an L298N H-Bridge, which should handle the voltage needs of the Roomba motors just fine.

 

For initial sensing, I’m starting with a single Ultrasonic HC-SR04. Yes, it’s extremely underpowered for SLAM, and that’s completely intentional. My goal isn’t to throw advanced hardware at the problem but to push minimal sensors as far as possible. That way, I can deeply understand how to extract useful mapping data before moving on to more capable sensors.

 

I’d love to hear any feedback on my approach so far—especially if you have thoughts on driving a two-wheeled robot with a trailing caster wheel. I’m already second-guessing the design due to stability issues and occasional tipping forward, so if you’ve dealt with this before, let me know what worked for you. Also, this is my first project using an ESP-32S, so any tips on working with it—particularly for motor control and encoder integration—would be much appreciated!

 

Minone:

IMG_0830.jpeg

 

Underside of Minone:

IMG_0832.jpeg

 

Roomba wheel (DC motor control, and Encoder)

IMG_0824.jpeg




#121896 Au bistrot du coin ...

Posté par TNERA - 02 février 2025 - 11:09

Here is a Sidewalk Chalk Drawing Robot, direct from the American Suburbs.

 

the guy jokingly cites "Keeping up with the Joneses" as his motivation. I think you would understand :), essentially “faire comme les voisins” or “courir après le standing”. It is really about the how he designed the robot. ;)

 




#121855 Paris 2025

Posté par TNERA - 19 janvier 2025 - 11:53

Bonjour Parisian Robot Makers,

 

Apologies for the slightly off-topic post!

 

I have a potential opportunity to work in Paris and would really appreciate your advice on the best areas to live. My office will be in Saint-Lazare, and I’m searching for a neighborhood where I could find a 1-2 bedroom apartment with reasonable rent and a convenient commute.

 

Any tips on things like cost of living (I’m currently based in Germany), apartment availability, or neighborhoods to avoid—or highly. recommended—would be great! I’m also eager to connect with the local robotics scene, so if you know of any great meetups or communities, please let me know. Learning French is already on my to-do list (though my German-learning adventure didn’t go quite as planned!).

 

Feel free to DM me if you’d prefer to share privately.

Thanks so much for your help!

 

TNERA




#121840 Moteur à encodeur ou servomoteur continu ?

Posté par TNERA - 16 janvier 2025 - 11:19

What is the question? 

If you want a "smart wheel" yes you can have the wheel with the motor, encoders and motor driver...  

But using a DC motor with an encoder is not the only working solution...

  • You can also try "smart servomotors" that have 360° endless feature like the feetech I have, 
  • find some smart wheels (something like a smart servo with the wheel integrated ...)
  • brushless motors ...
  • Stepper or BLDC with and without external encoders ...

Each solutions have pros and cons ... price, weight, power, size, speed, torque, life time, complexity...

Thanks! Yes, my question is about experiences and other options out there for purposes of motor odometry. My goal is to build a platform to explore Localization and Mapping (SLAM). I am thinking more rugged outdoor locations requiring good torque, life time, power. I would tend away from servo motors and steppers, only because I sense that outdoors is not the best environment for that. Brushless with encoders might be interesting in this scenario. My base thoughts are DC Motor and Encoder. I have no experience with the encoders, that is part of my question.

 

Currently, I am considering 'recycling' roomba motors. These motors assemblies have an encoder contained on the motor/gearbox. I just need to decode the signals needed. For the motor driver, I will need to provide a new solution as the roomba driver is built into the roomba main board.  

 

roomba_wheels_distant.png

 

My interest is similar to @ppmd, so this is a great topic. And interesting to follow to learn more. For my project, my preference is to try to reuse these roomba motors if that is feasible, and save my money for the sensors (lidars!)




#121827 Mon nouveau Quadrupède

Posté par TNERA - 13 janvier 2025 - 10:51

Hi @pmdd, I feel your frustration! You still had a very productive design run, the robot looks great!
 
It is really too bad about the servos failing like that. I am impressed with having the ability to repair some of them. That should help identify some of the failure modes.
 
One concern I have with quadruped design is having the complete load of the leg/robot on the servo motor directly. Do you think this could have reduced the lifecycle of the servos?  The trade off would require a pin or bearing that connected the load to the chassis, and have the servos act to lift/push the leg pieces. This would reduce some, but not all of the load that is present on the servo. Although, it does introduce a new friction and requires transferring some of the torque.  
 
This is of course all present in @oracid's designs.   :) maybe!  ;)



#121773 Mon nouveau Quadrupède

Posté par TNERA - 06 janvier 2025 - 09:32

Oui, c'est bien là, le problème.

 

Perso, j'essayerais bien, ça : 

 

Ah!  but THAT gait is easy to take down with Harpoon and Tow Cables!!    :laugh1:

 

The Tölt looks very interesting. I think you can do this by just advancing (making earlier) the movement sequence of the front legs from a trot/diagonal sequence.  It could be adjusted by just a couple of timesteps perhaps.  I think it would have to be a 'mid speed' gait, after the momentum of the robot is gained.

 

good luck!




#121753 Mon nouveau Quadrupède

Posté par TNERA - 01 janvier 2025 - 05:45

Very nice analysis!

 

I think your conclusions are consistent with the empirical observatios on other Quadrupeds.

 

especially:  "regarding speed (0.06 s/60°) but they would need to be even faster to obtain a greater stride at high frequency. "

 

at some point, we will have to design it to go beyond the "trot" to the bounding "gallup" to get more speed.




#121723 Mon nouveau Quadrupède

Posté par TNERA - 22 décembre 2024 - 10:27

Hey Jagbot II looks fantastic!!

 

The treadmill was an excellent thought.  The universities also use this approach when looking at Quadruped gates.  It would be possilbe too, given good lighting and a stable run, to use your video app to track the leg motion.

 

In my design process, I also had concerns around the stride length and the Chassis dimensions. I print the chassis as three parts, back, front, and middle.  That allows me to change the middle length based on need.  I use M3 bolts/nuts to secure them together. The downside is the increased weight of the chassis, as the connecting surfaces are doubled.




#121707 Mon nouveau Quadrupède

Posté par TNERA - 17 décembre 2024 - 02:56

JagBot II est très rigide, beaucoup plus que JagBot I, peut-être trop, il faudra probablement amortir les chocs au niveau des pattes, leur revêtement reste à définir.

 

JagBot II n'est pas opérationnel pour l'instant, je travaille sur le banc fixe pour optimiser le mouvement. Je sais que probablement il y aura des versions ultérieures qui prendront en compte les problèmes qui ne vont pas manquer de se produire.

 

Hi pmdd,  That looks very nice, and nice to see your leg/foot combo.

I have a special request, you mention that is not operational just yet and needs optimization.  Would it be possible for you to show a 'fail video'? 

Most of the time the internet only show the successes. It would be good to see what you are experiencing in the failures.  Questions, like does it 'shuffle' too much, or slip, or fall over.  It would be interesting to see from others if they experience the problems I have encountered. It might spur some recognition in the failure modes.  I know it is not typical to show off failures - so entirely up to you!

 

From my own account:  My last quadruped attempt is sitting on the side of my desk. My design didn't account for very weak 'z' axis control (the abductors in a 12 dof quadruped). Sadly I didn't make a video of it - to get others opinion.

 

Thanks for sharing your progress - it is looking fantastic.




#121663 Comment attirer par un fromage (factice) une souris (factice) ?

Posté par TNERA - 09 décembre 2024 - 02:12

Hi pmdd, here is another "mouse" design, recently in the news.  :laugh1: 

 

I think yours is much nicer! :D

 




#121647 Mon nouveau Quadrupède

Posté par TNERA - 02 décembre 2024 - 06:41

Agreed!
 

Problème supplémentaire, les trous des bras des servos sont inférieurs à 2mm...  :angry22:

 

I've hit that exact problem as well! It makes for difficult 3D prints as well.  You found a good work around. 

I also like the Lego pin - nice and simple and works well for this leg design type.




#121616 Comment attirer par un fromage (factice) une souris (factice) ?

Posté par TNERA - 23 novembre 2024 - 09:39

Yes, I would think IR as well, like the beacons used with robot vacuums.

 

Obviously, I would share concern with the size and types of materials used for a 1 year old child.

I'm not sure how 'we' survived as kids! :D




#121494 Au bistrot du coin ...

Posté par TNERA - 17 octobre 2024 - 01:12

Voici une très intéressante vidéo de notre ami TNERA.

Le lien vers son blog, https://www.totallyn...lrobotarmy.com/

 

 

Aw, shucks!  :blush:

thanks @Oracid!

I am starting to experiment with SLAM - Simultaneous Localization and Mapping. I find the concept fascinating for robotics, and not a very widely shared topic. I am sure there are a few experts here! ;)  I would like to start a post or topic on SLAM.  @mike, what would be the best section for that?




#121452 Au bistrot du coin ...

Posté par TNERA - 02 octobre 2024 - 08:40

Drone pour crottes de chien

 

Here is a video of a guy who has built a drone to collect dog poop from his grass lawn.  

 

He speaks very 'American', but there is a transcript available to translate.

 

 

That is an innovative method for opening and closing the 'scoop'.




#121296 Problème avec mon shield...

Posté par TNERA - 08 septembre 2024 - 12:22

Hi Sharklove,

 

I use the PCA9685 for many projects.  Here are a couple of thoughts. 

Yes, the LED on the board lights up when the PCA9685 is receiving power/ground for the logic (not ther servo power).  This means that it is receiving the 5V and gnd from your Arduino.
Your wiring for the PCA9685 looks correct. The SCL and SDA are connected correctly.

 

The one thing I can not verify in the pictures are the connectors and wires.  Be sure they are tightly connected.  Also, perhaps try different jumpers? The ones used may be defective or loose.

given that the issue is the I2C detection, i would focus on those connections.

 

I have not encountered this problem in my experience. One suggestion from other sources, suggests slowing down the I2C timing since your Arduino board is relativitly new. This can be done with:

 

In your setup() of your scanning code.

Wire.setClock(100000);

good luck!