Mecanum Wheel Robot Car & ESP-NOW Remote
Вставка
- Опубліковано 29 тра 2024
- Build a Mecanum Wheel Robot and control it with a remote joystick and display using a couple of ESP32 boards.
Article with code: dronebotworkshop.com/mecanum
More articles and tutorials: dronebotworkshop.com
Join the conversation on the forum: forum.dronebotworkshop.com
Subscribe to the newsletter and stay in touch: dronebotworkshop.com/subscribe/
Lilygo TTGO Display info on Volos Projects - / @volosprojects
Today, we will be working with Mecanum Wheels. These unique wheels allow a vehicle to be propelled in any direction. Our design will use the ESP32 and will be complemented by an ESP32-based remote control that features a Joystick, a TFT color display, and a rechargeable battery.
The car even has some large NeoPixel LEDs, so you can see what direction the Mecanum wheels are moving, so it’s both an educational and fun “toy.” And the design can be expanded to include other components and sensors.
The remote control is based on a Lilygo TTGO T-Display module. This ESP32 module has an integrated TFT display, as well as a couple of switches and a connector for a LiPo battery (which can be recharged from the module).
The car and remote communicate via ESP-NOW protocol. This arrangement allows information to be sent in both directions, so we can display some critical parameters from the car on the display of the remote control. The design is very easy to upgrade, so you can add more sensors to your car or more functions to the remote.
Of course, before we build the robot, we will need to learn a bit about Mecanum Wheels. So we’ll start by doing a few experiments to see how to code for them.
Then we will move on to the NeoPixels, bright, colorful addressable RGB LEDs. The design uses five of them, yet as these are addressable LEDs, they only consume one GPIO pin on the ESP32.
Moving on to the remote, we will learn about the features of the Lilygo TTGO T-Display. After that, wiring it up is a simple thing.
Here is the table of contents for today's video:
00:00 - Introduction
02:29 - Mecanum Wheels
06:17 - Testing Mecanum Wheels
25:15 - Neopixels
36:21 - Robot Construction
43:19 - Controller Construction
53:15 - Get MAC Address
55:47 - Robot Sketch
1:07:34 - Controller Sketch
1:20:27 - Robot Demo
1:24:13 - Conclusion
If you want to know more about ESP-NOW, you should check out the video I did on it - • ESP-NOW - Peer to Peer...
And for more info regarding the TTGO T-Display, you should definitely check out Volos Projects - / @volosprojects
Hope that you enjoy the video!
Bill - Навчання та стиль
Hi everyone - It's come to my attention that there has been someone masquerading as myself, responding to some comments here with a link to a Telegram chat to win a prize from me. THIS IS A SCAM, I am not holding a contest, nor do I have a Telegram account. PLEASE DO NOT RESPOND TO THESE MESSAGES!!
It's happening on a lot of my videos, I'm taking steps to remove them manually, but as I have 162 videos, it will take some time. If you do run across a suspicious comment, I would appreciate you letting me know at info@dronebotworkshop.com.
Thanks!
Bill (The real one!)
Making this video was somewhat of a "comedy of errors", despite it being almost 90 minutes long, I actually filmed about twice as much and deleted it as I redesigned the project about three times!
If you're subscribed to my newsletter, you can read all the gory details in the one I'm sending out tomorrow (Dec 5).
Thank you so much for sharing your wealth of information. It has got me into robotics
Thank You Bill for all your hard work and sharing it with us! This robot and particularly the unique wheel design opens up ALL kinds of possibilities!
Well Done Sir! (As we have come to expect). Always Excellent. 🤩🤖❤
For such a complicated project, you did a wonderful job of explaining how to build it. As if understanding how to maneuver with the mecanum wheels wasn't difficult enough, your incorporating the WiFi Now to control its movement was an incredible feat. Thank you for all your fine work!
Thank you. I was about to go into DTs!!! And I love that I can still learn stuff beyond the 38th anniversary of my 29th birthday!! LOVE your posts!
If I do the math correctly, we're about the same age. I've just never described it that way!
@@Dronebotworkshop See, we both get to learn! I learn about electronics; you learn about . . . well . . . deception. :)
This is a great way to start my Sunday morning. It’s been so long 🎉
Yes I know - getting this one together was a comedy of errors. Should have another one much sooner, hope you enjoy it!
Glad to hear your on the mends Bill, what a great project that covers so much. I like you incorporated the TTGO in it also, ran across volos project while trying to get a LILYGO S3 T display up and running . Between you, Paul McWhorter and Volos you're keeping be broke in electronic projects. Thanks for everything and sharing your wealth of knowledge.
Clearly explained and easy to follow. One of the best teachers on UA-cam.
I always learn on two different levels from your videos: The first is the subject material itself, and the second is how to present and explain technical concepts -- you're extremely good at both. Thanks for all your great work!
Bill,
I want to express my great appreciation for this project. I just got done building my own ESP32 RC car. Your power pack design for this car helped me improve the battery pack so that I only needed a single battery pack instead of two. I was not aware of the neopixel package that you used on your car until watching this video. Thank you for making me aware of that. I cut 4 WS2812B LEDs off of a strip and soldered extension wires between for my neopixels. Your approach required less tricky soldering. I really enjoyed seeing the mecanum wheels in action. I can tell how much work you put into this project. You did a fantastic job explaining it. Thank you so much!
Please keep making such wonderful videos and be healthy
Good to see you well after quite a while.Beautiful work. This is a fantastic, wholesome build that covers almost all the aspects of robot control. Am thoroughly delighted and thank you greatly for that. Please stay well too.
Really an EXCELLENT full system workshop. Applause. Having the inclusion of ESP-NOW and the slick way you did the error screen and watchdog are really smart items that less experienced hobbiests and engineers can learn from. Again - well done. Impressive.
Wie immer ein sehr schönes und informatives Video. Insbesondere die Vorstellung der Mecanum Räder war hervorragend. Danke - As always, a very nice and informative video. In particular, the presentation of the Mecanum wheels was outstanding. Thanks
Love the combo of EspNow and robots.
This channel GOLD 🙂💛
Wow! What a genius project! Thanks for sharing your knowledge & skills and for the polished presentation! I can’t wait to implement some of this in my own projects! Bless you Bill you’re a treasure!
Quite a project ! Very well done ! 👍👍👍
Brilliant project! Thank you for sharing it!
Very nice project, so much detail in the whole build. I am very interested in robot projects as I have a couple that I have built myself. They are not as advanced as what you have created, but I am learning. Thank you, Bill for this very informative video as I will be watching it again and will also be reading your article. Thanks again.
Thank you for this. Excellent video! 🚀
Thank you, Winter just started and this time of year i do more within this hobby.
Wow, this is so impressive and really easy to follow for an old timer like me. I've never built anything like this before although a novice with ESP32's etc. This is a must do project. Many thanks.
Great project. I just ordered a kit to try this one myself. Thanks!
i found a toy rc car without control but with these wheels in a thrift store(+ lipo battery included) so this is my new project for the week. thanks for the excellent job explaining how it works
Bill you have done a fantastic job. Very interesting on all design aspects. So detailed, your code was done very well. Completely commented. A+ grade.
Welcome back !
Thanks for the nice video
What another wonderful video. I am in the process of building up my own Mecanum 4 wheeled robot using your fantastic video and article. I accidentally ordered the DRV8833 Dual Motor Driver. As you mentioned in your "Driving DC Motors with Microcontrollers" this reduces the number of control lines. I managed to get the same base you have for the robot, but needed to drill some holes to attach the optical rotation sensors. To try and reduce complexity I am wiring the motor power directly to the ESP Dev Module which has an onboard voltage regulator. I then use the 3.3V from the ESP32 to drive the optical sensors etc. This may have some issues down the line, but worth a shot to reduce the number of modules.
Glad you are back, looking forward to this 😊
As always a great video. Thank you very much for sharing your knowledge.
That’s awesome. I don’t have much use for a robot car, but this would be a good kick off place to run a nema a motor to twist a curtain rod for vertical blinds.
Huh… That was a lot, but as usual, very well explained.Thank you.
Great video! Just started my own project with a mecanum wheel robot 👍
Thanks for all the great videos. Every time I have a question about MCU projects I check your videos, you've usually covered it already.
Great video,I loved it. I will now have to buy all the parts to build it.
Volos is great. LilyGo sent him a new T-Display called T-Embed and it has a dial. Iz wonder if that would make a good remote for this. He wasnt sure what to do with it I see that he turned it into a radio. He's teaching microcontrollers to his students They're young, around 10, I think. It's good for them no matter what they do later on. I'm sure that they would love your robot car.
great video, never hear of menanum wheel, great explaine, easy to understand, thx
Very, very good work! Just looking now for the materials to make my own
Cool project and excellent prepared video! Seems to be a lot of effort behind it.
Excellent presentation, Thanks sir.
Wow, lots of info here... I think it'll take a couple+ times to absorb all that you packed into this video. Certainly tons of work and elements that can be leveraged into other projects as well
I from VN. I fllow the teacher, I well become a talented engineer😆😆😆. Thank you Teacher!
This is such a fantastic tutorial and very detailed yet easy to follow, very keen to dive into the code and give this a try with my mecanum robot kit and esp32 module.
I have a larger touch screen and raspberry pi zero W that I might try to create a controller with camera feed based on some of your work
Thank you! Great work.
That was a huge project!
Excellent explanation, I really enjoyed.
👍🏻what a great job! Kudos 🙏🏻
Super Project ! Very well explan !
this project was really cool ,
thankyou very much ,
I really learnt lot
Awesome!!!! gonna make one 4 sure!
Bill, Thanks for another excellent tutorial, you made the subject come alive with your accurate descriptions and clear thinking. I did have a question. Small vehicles are easily prone to getting stuck so designing a way to work around this seems like a good challenge. Do you or any of your loyal subscribers have any thoughts on how to augment your design to mitigate this? Thanks.
Another great video, I’m going to try one of these out. Thanks!
Thank you, that's very nice of you!
@@Dronebotworkshop glad to do it. I appreciate your videos and they always inspire me. Just found and ordered a car like yours on Aliexpress so I’ll have fun when it gets here. Thanks again Bill I enjoy your channel and website.
Great job!
Great video. IMHO it would have been easier to follow without the added complication of the LED's.
Wow! Great project Bill...been an avid fan of your channel,,/ How I wish you could consider integrating Orange Pi as a single on board computer for being a cheaper affordable alternative for the expansion capability of this project. 😊 Really looking forward to this tutorial. Thanks!
very educatonal. thank you😀
Amazing job !!👌
I omitted an important instruction for getting the LilyGo TTGO T-Display to work with the TFT_eSPI Library; there is a file you need to edit to make this display work. I have updated the article to include the instructions for making this simple edit - dronebotworkshop.com/mecanum/#TFT-eSPI_Library_Modifications.
Thank you to Steve (Code-Cage on the DroneBot Workshop Forum) for bringing this to my attention!
I like these wheels!
I love your content, and I have learned so much from you. I wished you had shorter videos as well. Something for some quick projects or simpler projects for getting started. The information you provide is beyond wonderful, but sometimes it would be nice to see some instructional video from someone like you that has great content.
Wonderful!
Thanks
You only need the caps for the 8mm neopixels if you're stringing over 20 or so. If you use a teensy 4.1 to drive them you don't need caps for any of them.
Thanks!
And thank you too Dave!
Very nice
Thanks for your interesting content, very useful and clear.
Please explain, is it possible to use touchscreen with mounted esp32 as a normal remote control unit? There is wt32-sc01 plus board, so looks like it could be used for controlling instead of smartphone, but dont know with streaming video or without... is it possible? Thx!
thank U i'ts magnifique..........
I like it !!
Bill, wow. How would this ESP32 LillyGo board compare to using a Basic RC remote like you used on one of your other videos (Flysky FR6 IIRC). For reliability and robot control. I need to control a large robot (T-shirt cannon) in a school gym. Thanks , Scott
I love your content, by which software or platform you use to make circuit diagrams for videos.
Omniwheel is the older name (depending on patented) of these kind of wheels ;)
Wow! You said it took a while, and it's not hard to see why. This project is fantastic. I've been working on something a little bit similar using an Espruino 1.4, but I didn't know about Mecanum Wheels, and oh boy will they solve some problems.
Will your final solution involve proximity sensors? I'm trying to develop a device that senses and learns about it's environment (using proximity sensors and counting stepper motor rotations), and stores a plan of where it can go (and where it cannot), so that it can subsequently navigate autonomously. Strategically placed QR codes seem to be necessary to recalibrate position from time to time (to allow for wheel slip).
In case you have not already done so, could you please tell us the supplier and part numbers of the frame, wheels, and motors you used for this project?
Adafruit want like 5 bucks a piece for them. They're pl9823 and while still pricey cost me over 100 for 600 of them. They are by far the nicest color addressable leds you can buy.
11:25 I always wonder, how do you choose which pins of the ESP32 to use - it shouldn't matter that much, right? wouldn't it be nicer to use 34/35 instead of 23/19 to have the pins for the first driver all next to each other?
This is by far the most interesting project I've seen on your channel. I love them all but finally some one has covered info on the Mecanum wheel. I've been struggling with these wheels for a while and now you've given me a fresh prospective on my own robotic project going forward. Thanks for teaching me the basic functions to get these wheels to work properly.
It's so instructive video. Thank you dear professor. I'd like to know if you can give me a 3D design of macanum wheels which I can use it with yellow motors. I Wanna print it because it's too cost
How are you?
Thank you for asking, I am getting better.
@@Dronebotworkshop hey what happened? Are you alright? Wishing for your speedy recovery.
Awesome robot! Currently building something similar with my daughter. Question; why did you choose the bit mode for determining drive control rather than running a vector to speed calc for each wheel? Doing so would allow fully dynamic movement of translation without having to switch modes and Ecam Eurobot covers it well. Using two joystick allows full control; left being FWD/BCK & L/R while the right for yaw.
Design Cell: Do you have a specific link to the Ecam work? I am also interested in the dynamic approach. TIA.
@@tonyjohnson4572 Looks like links are getting moderated which is why I didn't link it in my original comment. Searching 'Ecam Mecanum' should bring up ecam eurobot's github tutorial.
One difference I would make is to use rgb leds with 6 pins, 6 independent LEDs. Then you van wire one across the motor in one polarity wirh current limiting resistor, one the other way, and yhe third perhaps across a bridge rectifier on the motor so that when either direction is energized the LED lights. No code to add those features.
Off topic. What is the theme of your code coloring called? Very easy on the eyes.
Good morning, Bill. I am from Brazil. I would like to ask you a question. I'm new to this area of robotics and electronics. The question is: why did you place the negative on the project chassis? Is the battery no longer negative? Can I connect the battery negative to the same wiring as the chassis negative? Could you explain it to me?
Thanks in advance.
Att,
Bill, Could you make your articles available in PDF form along with web-based? My internet connection isn't always good in my workshop (not connected to my house) and a PDF would permit me (and others?) to "play along at home" when out there. This is a very educational video and is a project that I'll end up building as $$ comes available!
Actually, I'm giving the website a "facelift" at the end of December, and PDF versions of the articles are on the list (as are parts lists as well). It's in the works right now, and I'll probably be "off the air" in the last week of December to implement it.
@@Dronebotworkshop Thank you very much!
Great video! Question.....
I have the notification bell set in UA-cam, however I did not receive anything regarding your videos. I only came by this thru your email. Why does this happen?
Hi, I wanted to ask what softwares I can use to design a circuit board (on a Mac).
Sir, how do you brake a dc brush-type motor electrically, meaning holding the shaft without rotation?
short the wires together.
@@thomasmaiden3356 My mistake, hold or lock the shaft electrically.
Where did you get your kit?
Hi Bill
Nice videos
I wrote to you in the comments section of your ATX Construction video and I wanted some clarifications, I would greatly appreciate a reply from you in that regard as I built a bench supply according to your instructions but I have some problems So please refer to that video and let me know what to do to solve that
Thanks and looking forward to you reply
hi i was wondering if there are any plans for a video about reading encoders using the mcp23(s/0)17 using the adafruit library (im stuck and no clue whats happening anymore lmao)
What I wonder is how to use a flysky controller to communicate with the esp32
Can you make a Video about how to use NTP servers and how to work with its data?
Or is there an existing Video where you explain that?
Best regards
Hello Mr. DroneBot, I'm trying to find an opensource receiver with the same size and functionality as the Radiolink R4FGM to use in my DIY RC Hotwheels projects.
It measures 25*13mm, has 4 channels AND a built-in gyro! Do you think this is a project you would be interested in doing?
Hello esp now can you make ds18b20 sensor combi room thermostat?
Is there a reason that stopMotors() doesn't automatically call ledAllStop()?
Have not checked your content since a while. I wanted to ask what happened to that DB1 robot. Guess you named that DB1
Plz build a ROS2-based robot.
what programing language are you using ?
The Arduino Programming Language is basically a framework built on top of C++. You can argue that it’s not a real programming language in the traditional term, but I think this helps avoiding confusion for beginners.
It’s neat, but I’m not a fan of the controls. Two analog joysticks would be better. Left analog Forward/reverse/strafe left/strafe right. Right analog turn left/turn right + 2 others like shift front left/shift right.
2 joysticks and 4 switches (like a PlayStation controller) could give our all of the different controls.
Left analog Forward/reverse while strafing left right
Right analog Forward/reverse while turning left/turn right
L1+Left analog R/L = shift front only R/L
L2+Left analog R/L = shift Rear only R/L
R1+Right analog R/L = turn front only R/L
R2+Right analog R/L = turn rear only R/L
You would have so much control without having to scroll through switching modes. Even just the one joystick with momentary buttons for the modes on the bottom of the joystick controller would allow almost seamless transitions while driving it. It would be more of a learning curve than a console controller, but it would be very cool to have it all be in one hand.
I would only want to have 5 modes of
No buttons pressed, index, middle, ring, pinky, but you could do 15…. Or more 😳
None
Index
Index middle
Index middle ring
Index middle pinky
Index middle ring pinky
Index ring
Index ring pinky
Index pinky
Middle
Middle ring
Middle ring pinky
Middle pinky
Ring
Ring pinky
You could go more by the order that they are pressed, and the number of times that they are pressed before they are held down and the joystick is used all the way to an infinite number of modes 🤯, but it would never be easy to instinctively learn more than about 5 modes of using an analog joystick.
With it only being 4 motors that can either go forward or reverse you could even just use 4 analog switches that move in two directions, one for each wheel.
I still think that a PlayStation or Xbox controller would be the most instinctive thing to learn and the easiest thing to build and map the controls for.
What software do you use to make your sketch please let me know. Thanks
It looks like he used Arduino IDE 2.0
Thanks
Hello! We are from Ukraine. Is it possible to make an mp3 player based on the esp 32 cam chip? It is necessary to implement access to the sd to delete and add mp3 files. It is very necessary to implement. Thanks for the tips !
Hi. I'm having problems with the Arduino ide 2.0.3(on my Mac-intel). Its stuck on the loading screen.