Robot Bin that comes to YOU
Вставка
- Опубліковано 23 сер 2024
- AD: Applications for Pipedream are live at www.pipedreaml... Reach out to garrett@pipedreamlabs.co with any questions
I decided it was time to make an automatic robot bin that can come to you when you ask it to! It used both dead reckoning and vision-assisted guidance to make it navigate autonomously. I used an NVIDIA Jetson Nano to do the vision recognition, re-training the deep learning model with transfer learning. I also used Deepgram for speech recognition. There's an Arduino controlling the motors and reading the encoders.
CAD and Code: github.com/XRo...
You can support me on Patreon, join my Discord, or buy my Merchandise:
***************************
Discord: / discord
Patreon: / xrobots
Merchandise: teespring.com/...
***************************
Other socials:
***************************
Instagram: / xrobotsuk
Facebook: / xrobotsuk
Twitter: / xrobotsuk
***************************
Affiliate links - I will get some money of you use them to sign up or buy something:
***************************
10% off at www.3dfuel.com/ - use code XROBOTS at the cart screen.
Music for your UA-cam videos: share.epidemics...
***************************
CAD and Code for my projects: github.com/XRo...
Huge thanks to my Patrons, without whom my standard of living would drastically decline. Like, inside out-Farm Foods bag decline. Plus a very special shoutout to Lulzbot, Inc who keep me in LulzBot 3D printers and support me via Patreon.
HARDWARE/SOFTWARE
Below you can also find a lot of the typical tools, equipment and supplies used in my projects:
Filament from: www.3dfuel.com/
Lulzbot 3D Printers: bit.ly/2Sj6nil
Bearings from: simplybearings...
Lincoln Electric Welder: bit.ly/2Rqhqos
CNC Router: bit.ly/2QdsNjt
Ryobi Tools: bit.ly/2RhArcD
Axminster Micro Lathe: bit.ly/2Sj6eeN
3D Printer Filament: bit.ly/2PdcdUu
Soldering Iron: bit.ly/2DrNWDR
Vectric CNC Software: bit.ly/2zxpZqv
Why not join my community, who are mostly made up of actual geniuses. There’s a Facebook group and everything: / 287089964833488
XROBOTS
Former toy designer, current UA-cam maker and general robotics, electrical and mechanical engineer, I’m a fan of doing it yourself and innovation by trial and error. My channel is where I share some of my useful and not-so-useful inventions, designs and maker advice. Iron Man is my go-to cosplay, and 3D printing can solve most issues - broken bolts, missing parts, world hunger, you name it.
XRobots is the community around my content where you can get in touch, share tips and advice, and more build FAQs, schematics and designs are also available.
Robot that delivers beer from the fridge next? Join my Discord to suggest ideas (there's a specific section for that) discord.com/invite/fc6MedG7eW
That would be cool! I love the video of the PR2 robot doing that! And you could use ROS! You are the one that got me started with Ros!
I've had that idea for years. Didn't have the time and you're skills to make it yet...
I think there is an easier way to do the same effect using only 3 microphones and triangulating their volume.
probably have less precision but it is possible.
I am inspired by your videos 👨🚀🤙🤙🔼🔼🔼✅💪✅
classic
Beer recognition and voice control of same.
I can't remember if you were the one that mentioned it, or if I just found it independently, but I once saw a racing robot that used light fixtures as a method of localisation - tracking how they moved in the camera to guesstimate how far it moved. It was surprisingly robust as it managed to race around an office with regular and identical, square lights in a tiled ceiling.
Pipedream sounds a bit like the vacuum transfer pipes of the 20th century, but then with tiny bots and a lot more flexibility. 😍
PROtip: whenever you have something like those wheels where you need an access hole (for the shaft affixing screw/nut), rather than print with the hole, print without it, just print a plug inside the wheel where it should be and then drill it out later. A stronger wheel will result and it will also print with less distortion as well. If set up right, it's also faster, you just have to tweak the code to print circular and "lay a bead" whenever it's on top of the plug. Not all cases i've printed, since some had some particular interactions with the reinforcement (usually whenever i use square patterns instead of hex or the spiral + ray pattern) but with most of them i've had it print faster than having the printer altogether stop to turn around and print either around the hole or print with scaffolding. One can make these modifications using their modeling software. It's easier in something like SketchUp (at least i find it simpler to just group things in a particular fashion) but there's also ways to trick the slicer into printing something as one from two. Caveat, you need to know your program well, but the effort is worth it.
whenever you need a somewhat decently accurate hole 3D printed, it's always a good idea to print it at a smaller diameter then drill it to the right diameter, as this ensures a circular hole and a correct diameter.
passing holes for screws that are no big deal, you can always hammer the problem away if you need to, but axle holes should always be drilled afterward if you don't have access to brass/aluminium tubes, and if you do have access to brass/aluminium pipes, insert them into the 3D print rather than directly putting the axle on the PLA, it will decrease friction by a lot.
Huh, I follow that it would be faster (although it then takes time to drill the hole) but I don’t follow why it would be stronger? If you drill the hole, the cylindrical faces of the hole will not be solid plastic but rather voids and infill. In a thought experiment where infill was 0% I’d say that the part would be stronger if you modeled that access hole in.
@@Trent-tr2nx yeah I don't understand how it would make it stronger either. making a smaller hole then finishing it afterward for precision sure, but totally removing it just seems stupid.
Look at using ArUco markers, e.g. available in OpenCV. They're fiducial markers, so you can get size = distance and angle information from them. Recognition is pretty fast and works from quite far away.
I was about to make this same suggestion, but fortunately read down the comments before I did. I agree. AR targets should give more identifiable locations, along with the other information that should help out the Arduino's positioning algorithms.
Try to use qr codes to encode location around the house. You might even be able to make them invisible if you could have them be viewable only in ir
Not QR codes. You want fiducial markers so you can easily get distance and angle information out of them. QR codes don't do that.
@@jfolz Both Aruco markers as well QR codes (for targeting, the Micro QR codes might be more interesting) obviously allow for distance and angle information. And why wouldn't you - they have a defined "up" side, and they are supposed to be square, so any deviation from square means you're viewing it from an angle. Distance requires them to be printed at consistent size, obviously.
@@jfolz the two are not exclusive
Im using apriltags for that,from my understanding they are fairly easy to identify at a distance plus give you distance and rotation to the camera
Sure it doesnt let you encode strings and such but you can assign meanings to the specific id and family of the tag
@@graealex note that I wrote "easily". You can get this information from QR codes, but they are not meant for this sort of application. One clue should be that each QR code effectively contains three markers at its corners to locate it first. Fiducial markers encode less information, so they can be much simpler and can thus be detected with higher accuracy or from a greater distance and with less processing.
Light fixtures and vents might provide some decent markers in a wide FOV ceiling based vision system. And they're on a very low detail background so perhaps that helps.
My guess is that he doesn't have vents, since he's not in NA.
I was thinking light switches and windows since they're permanent/immovable. Overhead lights are good too.
Openings would likely be a fairly good reference point to use. Train it to identify cabinets, door frames, windows, things like that. they don't move, and so long as you can successfully identify 2-3 of them at any given point, it should be able to know its location. You generally try to keep door frames, windows and cabinets unobstructed, so it's unlikely to interfere with anything you would do normally.
This is easily one of the coolest channels on all of UA-cam and it's a crime that this great man doesn't have millions of views on every single video.
I love the practical, simple use of AI here. Almost as much as i love the googley eyes on that hungry boy.
So this is basically junkbot, except with wheels, from the classic internet Lego game “Junkbot” and “Junkbot Undercover”. Sounds satisfying 😊 No more walking around to throw garbage away!
"What is my purpose?"
"You collect rubbish!"
"Oh my god!"
wow! the only ad segment i was interested in in forever! very interesting if somewhat hyperloopy and mad
What a glorious example of encapsulation - the jetson containing enormous amount of machine vision complexity, state of the art (as of a couple of years ago, at least) cutting edge stuff... which Just Works and sends you "a little to the left" "a little to the right" messages to an arduino and some motors that someone poking at a 1980 Logo Turtle Bot would still find pretty familiar. (The idea that "training an updated machine vision model" is simpler than "configuring RoS at all" is as horrifying as it is accurate :-)
What is RoS?
With that amount of onboard processing power you could get it to find your voice via the time difference between 2 microphones
I'm impressed how you build new projects each week. Great complexity and variety.
Machine Learning vision just feel like a unnecessary 'catch-all" solution that "just works" but not necessarily well.
LiDar sounds cool. Perhaps you should build more stuff with those.
Aruco marker or an April Tage is the way to go with visual localisation application! Very Interesting project none the less.
For the beer robot, replace the targets with super simple block patterns/QR/ArUco codes made with retro-reflective paint/tape. Use infrared light to identify the retroreflectors even in the dark. Face the camera up with a wide lens to see a decent number of targets placed on the ceiling for reasonable use (and to triangulate more exact positioning). Delivery while watching a movie? Yes, please.
We need an "Instant Party" robot that quickly deploys streamers, confetti, balloons, music, lights and a laser projected banner
Next project: A robot that follows you around and deploys a folding lawn chair whenever you stop walking.
It’s no Dusty Bin xD
Quite enjoyed this. Maybe James could make a mini desk version that uses Alexa or Google etc !
You’ve accomplished something extraordinary here. This is pretty useful ! Thanks
The sound of it pleases me (IDK why I like things that sound like hydraulics)
Great video, as always!
Would it be possible to use nfc tags to trigger location data when you don't need the precision of a target?
Just thinking they could be easily hidden in all sorts of places and could help the robot keep it's bearings. Idk though...
That is very inspiring!
All those technology... Just to collect litters. And the whole process looks fun, too!
It is awesome!
When I clicked on this, after youtube recommended it 3 times, i expected it to be a lot more... shit. But it's quite the impressive robot. subbed.
Dude, I am building the future of waste management on my channel and its the Trash Train!
If you are just building the cold drink robot for your house then that's simple. the stuff that it can carry is very small, like a soda can so all you need is a high def camera and a turntable then have the cans or anything else on the turntable and start taking multiple shots per second (i am assuming high grade cameras like the ones you use do that)or take a video and use the frames of the video to train the AI to recognize the stuff you want carried, the rest is lidar or radar to locate large items like chairs since all the AI needs to know is just that they are obstacles and to avoid them. with that you can build a robot that can bring you drinks just by saying the name of the drink and no need for targets, although the targets do make it look boston dynamics-esque so that's cool too. also for the floor plan, you can use an open AI for something like road navigation software. you have the dimensions of the room and you have the paths that it can use to travel to the fridge and to you so if a new obstacle is put in its way, it can recalculate using existing dimensions to plot a new course to the fridge as long as it knows where everything is and it can learn how to add new things and remove things from the original map.
I'd love to see what you could do with eye tracking. I could certainly see you controlling an RC car or a ridable car simply by looking where you want to go.
Excellent project
“Here I am, brain the size of a planet and they ask me to pick up a piece of paper. Call that job satisfaction? ‘Cos I don’t.” -Marvin
Amazing! The motor control could however use some smoothing. The wheels seem to change rotational speed from 0 to full speed as fast as they can. Maybe introduce some acceleration instead? :)
Before 40 years ago: "or, you could get up and walk to the bin"
Seriously, I'm now amazed at the programming in my roborock V6 vacuum
The infomercial opening was really nice.
Thanks, I've got more of those.
You can see a direct line from James' creations to the robots in Star Wars.
Video idea, I want a robot that takes down trash can for me and brings it back up
Your projects are absolutely AWESOME!
"What is my purpose?"
"You collect trash"
Love the nod to shitty infomercials with the intro. Also, my favorite James is the one that stares the camera down while he moves robots manually.
Thank you for being inspired by my comment a month ago although the result is different than expected! ♥
Might I suggest using a xxx movie music theme while the printers are doin' their thang. I know the PLA nerds are all turned on anyway. Set the mood
respect 💀
but I think that home button should be on top of the bin
reminds me of a much more elaborate version of Colin Furze' robot bin he made years ago. Cool project
I can't believe that with all the design and planning that went into that project, you did not put the buttons at a place where you can access them without bending over behind the machine. Probably the worst place imaginable apart from right underneath the carriage! ;-)
How to make a beer assistant, without making a beer assistant! 😂
next
Good robot. This will be cool if robot will coming on charger + - reils automaticly. And if it will have a hand to quick storage of children toys in room. It will save a lot of nervos.
Love your socks, James. I love how you make these projects look so easy. My experience is that getting servo motors and power supplies and controllers working is dauntingly difficult. Any advice?
The Adafruit tutorials are a good place to start: learn.adafruit.com/category/learn-arduino
he does make it look easy and always amazed how clean the demo rooms are. I would have bits of swarf aetc everywhere after all the tweaks, and remakes.
Use QR looking codes on the floor, they are called fiducials, Amazon uses them for robot navigation.
I don’t know how you have time for all these projects. I’d be happy getting one done never mind 8999 other bins before this!
Now I feel a lot better about my experiences with ROS hearing that even you found the version miss match issue frustrating.
Yeah, took me over a year to work out how to do it, using courses, other projects (which often didn't work well) and also buying a Robotis Turtlebot that worked out of the box to look at.
Could you feasibly use wake words with this system? You could say "Bin Bot, come to the table", and it'll come to that location, instead of having to remember location numbers. And then "Thank you, Bin Bot!" to send it back home :D
I was about to comment that. He could’ve used any phrase in the world and he chose location 1 and location 2. Made me laugh
of course, you can integrate with Pycroft Mycroft, where you can easily create a new skill. Digikey has made a video about with Shawn. Or you could integrate GLPT-3 with it or its open source version GLPT-JT (or even only Whisper or Whyper.cpp from GLPT team).
Know I'm late.
Could have it recognize art or photos. That way you can have it understand which room it's in or plot a path without having QR codes or circles etc.
I don't know why James, but you remind me of Rick Moranis building awesome things i love it 😁
Somewhere between Colin Furze, and "Stuff I Made"
Cool gadget. I want one! 😁
But I half expected there to be a "Like Comment Subscribe" poster under the lid, when it opened at position 1, in the end. Missed opportunity there. 😉
It looks like the shopping troly bot from wallace and gromit lol
In New Jersey, that robot might have an unfortunate accident trying to move in on the "waste management" racket.
You might need to make it able to take sports bets and carry a gun.
That’s freaking genius.
Well lately I've been feeling pretty smart with my current project of a radio controlled snowblower... but looking at this makes me feel like a kid playing with Legos!!!
you are really throwing everything you have in this one
There was a robot in the movie 'Ice Pirates' that was just a rolling garbage can like this that would just come up and want trash from people. I think that getting a robot that you could call and would "eat" the trash and then go back home would actually be useful and well within what current robotics technology is at.
This one is actually a useful idea
I think you sort missed an opportunity here. The annoying part of kitchen bins is not the fixed location. That's actually a good thing because throwing rubbish in a bin is basically a habit / muscle memory. Moving a bin around would disrupt that. The annoying thing is emptying the bastards when they are full. Can you make a bit bot that seals the bag and takes it out and dumps it in the trash? People would pay good money for that.
Elon rolls out spandex, James rolls out a novel wheely bin, that we can all watch the build , download CAD and code, rebuild and enhance. Thanks James.
it would be a cool idea if a robot could make you a cup of tea and also travel upstairs. I like the lidar videos you do
Binbot "What is my purpose?"
James "You collect the trash, your sole purpose is to come when called, collect the trash, then return to your corner until there is more trash."
Binbot "Oh."
The sponsor has about 900 years to make people sized pipes before Fry unfreezes
I look forward to seeing this cleaning up EMFCamp 2024, autonomously.
I may have made some other things by then!
Funny how in lidar video you had wind bottles in the narrow cupboard in the kitchen and now we can see mason jars :-)
Now I want this robot!
For speech you can also look at OpenAI's Whisper!
It could wait by the door when it thinks it's full. Or follow you around flapping the lid annoyingly for you to empty it, lol.
Beers? How about a ceiling claw on cable-cam pulley system like in stadiums or those room scale 3d printers with a pulleyed motor in each corner. Could adapt it to deliver outdoors with a clothesline to keep mum tipsy in the garden, lol.
Might be interesting to program, eh? Cheers.
Won't be long now before our robot overlords take over.
Origin Shaper Tools supplies that funky tape so its very clever handheld CNC can map its world. So perhaps similar dots on the roof. I have no idea how they use the dots.
I could use a few of those, or maybe just one if it could climb stairs!
HOLY SHIT BINS!
You know, you could take this concept to the next level. How about the bin autonomously moving to the front of the house on garbage day... and detaching itself from the drivetrain so the garbage collector can empty the bin.
before you know it you'll be living with Wallace and Grommit
How about a "swarm" of bins individual bins for each room which then empty into a central bin, and this is the one that goes out on bin day, so you still have somewhere to put rubbish on bin day
Awesome robot.
I really want to built it thanks to you.
Have a nice day.
:)
Do you want Daleks, because THIS is how you get Daleks!
Binbot becomes a nihilist and concludes that nothing truly has value, everything is trash and must be eliminated. Except instead of death lasers or even more formidable forward facing plungers, he only follows you with the lid open politely suggesting that you should just give up and jump in.
Great build. How come you decided to have it turn around and go home, rather than just reverse back and therefore just requiring one target? It could reverse home until the target is small enough, rather than the other way around?
Gah! Give us back the 3D printing music we all love!
Put 3M reflective markers on the ceiling and track them using IR light and a camera
Please do a trash bot that can move towards a trash object that has been detected and identified as glass, plastic, paper etc and sweep it up into a bin. It’s got to be aware of its environment,where it is and avoid hitting people.
Is that all? what's the problem lol, I actually will be able to do that. You make a very good point for a product. Making it cost effective is another story.
Just an idea: maybe use one of those cheap RFID receivers, code in about 10 cards and glue them down to the floor (with silver tape ofc ;) Mount the receiver on the bottom of your robot facing down. Then teach the robot their relative positions in encoder counts and bam - you have el'cheapo marker system just like in a modern warehouse:)) Not flawless but it'd be fun to see it in action :)
I love the googly eyes!
James. Get yourself a bullseye shirt. BinBot will come find you. 🙂
and, of course... a solution looking for a problem. haha..
Next you should invent a robot that can hem your drapes so they don't drag on the floor.
You should commission someone to write the software stack. Hopefully something that you can use across multiple robot projects.
Where do you mount the chainsaw?
I feel like you should be able to have an app that makes the robot come to you and open, or go to the curb and wait for trash pickup.
A robot that goes around to water the plants with a watering can next
May I offer an idea? Do you know those key finders? They operate on BlueTooth. Suppose you have 10 of them. Or 50, I don't know. Put those around your house, and now you can very easily navigate in between them using the RSSI (signal strength I mean) for your location. It is very cheap, and the battery in the keyfinder (BLE) runs for certainly a year. O, and you can even let them 'beep' by 'talking back' to them.
in the movie Back to the Future 2 they had robots trash cans rooming around the street
Have you got an estimate of how many miles of printing filament you've gone through?
Now you just need it to put it out at bin night
Awesome trash bin! any reason you didn't use a grid of QR-codes/April-tags on the floor? That's what a lot of warehouse robots use now. (i.e. the Keva robots and clones)
have you think to use ARuco markers instead of the two circle one inside the other?
Amazing work as usual!
You could use qr codes instead of targets so that I can register where it is by seeing more than 1