Thanks Brian. That is so cool. This is what I've got. I will be looking to integrate some of your ideas onto it.
Thanks Brian. That is so cool. This is what I've got. I will be looking to integrate some of your ideas onto it.
Hi @jonnyr
Your chassis looks great, how is are your wheels setup? Do you have another 2 wheels in the back (and if so are they mecanum?), or is a 3 wheel / caster setup?
Also I wanted to let everyone know that the family and I have returned from vacation and I am getting the next set of videos ready. I have been struggling a bit with the best approach for the next topic since we are not getting to the meat of the matter for potential fields. Specifically localization and go-to-goal behavior. I have these two broken out into separate videos, but there are still a few "prerequisites" that are making the video feel like it is jumping around and bloated. I have decided to break out at least Degrees of Freedom as it's own video and will be trying to get that one up soon. It is not a "follow along" coding video, but know that the others will be right behind it.
-Brian
/Brian
Hi Brian,
There are two wheels at the front as well. I followed Bill pretty much to the letter in building my chassis. Except the motors I got were a bit wider, so I had to rearrange some of the channel. So, I'm glad that I can pick up with Henry IX where DB1 left off. At the moment, I'm using three esp32's. One for each motor and one for the brains. They are communicating via esp-now. I'm using multi-threading, so I can run one command and listen for others. I haven't got them connected to the motors yet because I'm testing the code with leds.
I'm following your video on the potential fields at the moment. I've got an old Arduino robot car with the wheel thingies that you can attach hall sensors to. So I'm going to use that as a rotary sensor. It's a bit slow going for me; I work on it when I get the chance. My aim is to build a robot where not all parts are physically connected if that makes sense.
Looking forward to your upcoming videos.
I have looked around but do not see a link for the potential field discussions. Can someone provide?
Many thanx
I think this thread has completely died. I have been waiting weeks for some updates and even contacted the individual doing all the heavy lifting, including making a monthly donation to his GitHub account (but not for much longer!) and there has been absolutely no forward progress.
SteveG
I am working on something at the moment with the potential fields for a small robot car. I will put my code up on github when it's finished. I am just working on it between work and kids and led projects. So, my estimate is around 1 month before I have anything worth showing.
I think this thread has completely died.
Well thats a bugger. As it appears you have reached out to @briang and have not got a response it does look like another robot build project shuffles off into the wilderness. Whilst I'm undertaking some other DIY projects I was hoping this robot project would garner a few tips for when I actually get back to building mine.
I'm not sure just how much this Henry project, being an indoor bot, would translate into being of use for an outdoor bot, but I would have followed along, and like you I did join up to give a donation.
The use of RTK GPS for navigating an outdoor bot is a likely way forward for me and @dronebot-workshop has given a hint of working on this. @huckOhio appears to be having a go at an outdoor bot to go on a chicken inspection patrol. And now @jonnyr may get to have some insights into potential fields. Maybe some more interesting 'how to' bot stuff will be penned to the forum pages yet 😀
I think we have to acknowledge the fact the the contributors here can only do this part time and it is a time-consuming effort to get it right.
I will just offer a site that I have found to be very useful and the guy knows his business. It is AutomaticAddison. Here is a link to the final tutorial to implement ROS Mapping and Navigation:
https://automaticaddison.com/how-to-set-up-the-ros-navigation-stack-on-a-robot/
There are numerous tutorial that he has for each element along the way. He does a good job of explaining what does what, much needed when you are dealing with ROS. Steep learning curve, but he does it step by step.
I have been able to use Hector-Slam w/o odometry (lidar only) to generate a map of my house and save it. The map is then used as part of the ROS Navigation Stack where you define an initial pose and a goal. The program automatically generates a path and sends commands to your robot to execute.
I have built a robot based on DB1, with my own additions/modifications and use an Arduino and Jetson Nano for the brains.
It works pretty well but I am still tuning the navigation up. Lots of parameters to get right.
I just offer this an an alternative if you want to get to ROS navigation right away. I'm sure the other contributors will come up with their own approaches when they can and we can learn from them as well.
John
@codecage
@jonnyr
@byron
@bigbadjohn
I am sure given distance data from a lidar as the robot base moves about the house I can figure out how to represent a map of the house for navigation purposes without ROS. I don't actually have a lidar instead my intention is to rely on vision and other sensors.
The biggest obstacle so far is getting motivated! The last year or so I haven't done anything much while the robot test base collects dust.
Most of these issues are found in virtual agents navigating a virtual world, something I have played around with. These agents have behaviours and they must navigate their world. The non player agents have to "think for themselves" just like robots. For a single agent I just use the ASTAR algorithm to plot a path from current position to goal position. I think the "fields" are used to control groups of agents like an army in a computer game.
Virtual agents might scan their surroundings just like LIDAR or a sonar but also return the kind of information you might get from a visual scanner like what that obstacle is.
There is more to a practical robot than navigating, it must do something useful like water the pot plants, vacuum the floor or fetch you a beer, collect the kids toys off the floor, bring in the firewood and so on.
Certainly GPS seems to be the most simple way of navigating outdoors and is used in farm robots. Still there are other actions apart from seeding and ploughing or reaping wheat that might be useful like using vision to detect weeds to spot spray or a piece of fruit to pick or an animal or child in the path of the robot which doesn't show up with GPS.
The biggest obstacle so far is getting motivated!
My biggest obstacle is taking on too many DIY projects. In my 'garden room' I've got to the stage of having to paint it. I HATE painting and now long to get it all done to get back to bots.
So it maybe best to give the appearance of being busy and inundated with important bot activity before the boss makes you paint the house. That should give motivation enough 😀
I do rather agree that the bot should have a good practical goal, and chasing rabbits away is my particular one, but what's yours I wonder.
Come on @robotbuilder find your mojo and create your series of articles on 'how to build a really useful bot'. No need for a bot to bring you a beer, I propose we all fund a crate of beer for the first to build a fully working useful bot, and that could be you.
PS I would also prefer not to use ROS, but just don't program it in that archaic Basic programming malarky.
I HATE painting and now long to get it all done to get back to bots.
Painting, a job for a robot 🙂
I do rather agree that the bot should have a good practical goal, and chasing rabbits away is my particular one, but what's yours I wonder.
A dog would be good at chasing rabbits. Actually we once had a cat that would bring home a dead half eaten rabbit.
Come on @robotbuilder find your mojo and create your series of articles on 'how to build a really useful bot'. No need for a bot to bring you a beer, I propose we all fund a crate of beer for the first to build a fully working useful bot, and that could be you.
Ouch! A reality check 🙂 You realise I am all talk no do beyond playing about with ideas in code and imagining what kind of robot I could build. Actually a practical robot would cost a fortune which has been a severe limitation. The mechanics and electronics is essentially a question of cost, the real work is in the software to control it. I sense that most see ROS or OpenCV or deep learning as doing all the magic. Just follow the how to build instructions and then teach it to do what you want it to do. Maybe that is what building a robot in the future will be like.
PS I would also prefer not to use ROS, but just don't program it in that archaic Basic programming malarky.
Sorry but I was weaned on BASIC it is my native language. I like my code easy to read like a human language. FreeBASIC is not malarky it is a powerful language that compiles to fast code and offers all of what I had with the early versions of c++ but easier to read. I can translate it to c++ if need be although it is not so easy to translate from c++ to FreeBASIC. The other language I like is the Processing language which is based on or uses Java and reads like c++ but without the complex set up to use graphics and so on.
However it is essential to be able to read and write Python programs in this hobby.
byron wrote:
I HATE painting and now long to get it all done to get back to bots.
Now this would be a nice robot base to play with wonder what it would cost.
This looks more affordable and seems to be the base similar to Bill's and other examples I have seen on this forum
Now this would be a nice robot base to play with wonder what it would cost.
I could do with one of those, but as they say if you need to ask the cost you cannot afford one. And I would need to ask the cost. 😟
A dog would be good at chasing rabbits
Sigh, yes I would like a dog, but the missus does not want one complaining she has enough to look after with me, and reminds me that dogs are not cheap. The cost of food, vet bills, etc. would fund a nice big bot.
However it is essential to be able to read and write Python programs in this hobby.
Well you said it 😀. You will probably also have to throw in a bit of C / C++ too when the need for speed arises.
Apart from some C programming too long ago to remember when, Visual Basic was my main programming experience until I retired, got a Rpi and learnt python. (not to an expert level, but enough for my purposes). I also got reacquainted with C and learnt some C++ but python is my preferred coding language. And, as you can already program (in an antiquated language 😱 ) to an advanced level, you will surely take to python like a duck to water.
But maybe you could ask @codecage how he found it as, if I'm not mistaken, he started his python journey quite recently following along the the Paul McWhorter video's. You are but a week away from python expertise if you apply yourself. Just one week.... go for it. Then all your upcoming tutorials will be very readable 👍
Actually a practical robot would cost a fortune which has been a severe limitation.
A reasonably sized outdoor bot about the size of a small kiddies ride on car soon mounts up even when getting the parts second hand. I've been looking at getting old wheelchair motors and wheels but these are still quite expensive in the UK. I look with envy at all the robot mechanical stuff one can get in the USA for cheap $ (as compared to what is available in the UK).
But to quote from St. Byron
To build, and not to count the cost
To labour, and not to ask for any reward
Except that of knowing I am doing thine will.
Just one week.... go for it. Then all your upcoming tutorials will be very readable 👍
I have spent time programming in Python including using opencv but I will leave the tutorials to the professionals 🙂 I am as antiquated as you imagine FreeBASIC to be.
There are Python tutorials a plenty on the internet and a large number of books (expensive) using Python for robot relevant things like vision.
I wonder if Henry IX will be given a pair of eyes (webcams).
I am as antiquated as you imagine FreeBASIC to be.
Blimey, that old 😲, I hope the nurses treat you well. I think our 'enry should have eight eyes, all the better to see what may be sneaking up on him.