I've been using ROS for a few years now, and I'm stoked to see one of my favourite youtubers also getting into it. Can't wait to see the openDog doing cool autonomous stuff using ROS.
@jamesbruton4 жыл бұрын
thanks, that is the eventual aim.
@aryaanand7594 жыл бұрын
can you suggest some free tutorials
@benjaminc57574 жыл бұрын
Same here !
@marklagana27694 жыл бұрын
@@aryaanand759 do the ros tutorials!
@davidalbertopozaaguilar46984 жыл бұрын
I had been trying to get into ROS and couldn’t find my way into it. Thanks to you I have now started in RoboIgnite Academy. This series has just become more fascinating! What an amazing display of software abilities.
@gregoryskaltsas18584 жыл бұрын
Excellent! You covered a semester in a few minutes. I will recommend your videos to students.
@CodeBUNNY3 жыл бұрын
He should put a biting head on it
@mikeydk4 жыл бұрын
Can't stop hearing it as ROSberry Pi :D
@SCU3A_S7EVE4 жыл бұрын
I hear it as “green needle.”
@cmacks953 жыл бұрын
Rosberry Pi is the Ros image for raspberry pi 4
@patrickjdarrow4 жыл бұрын
Graduating soon(ish), COVID willing, and I can't help but thank you for your awesome work which has been a huge part of what inspired my to pursue engineering. Cheers James.
@sammflynn67514 жыл бұрын
This series will become the most view robotics realated video on youtube crystal clear explnation
@jamesbruton4 жыл бұрын
thanks!, Part 2 gets a bit more hectic though ;-)
@sammflynn67514 жыл бұрын
@@jamesbruton Are you allright? everything ok? no video this week ? :(
@marianaurel2 жыл бұрын
i'm not sure if people realize and appreciate enough the work you do, in the sense that just reducing the gear ration from the motors, converting that into code, calibrate the 2 motors (which are opposite to each other) to match each other's speed, get the accurate reading from the encoders, and this is not even talking about the communication and translation between devices when you are using ros or electronics, etc, is just talking about that small part on wheels+encoders+arduino IDE. Well done!
@Takon_pilot4 жыл бұрын
When open dog v2 can walk properly he should put a lidar scanner on it
@BurningApple4 жыл бұрын
Yes! OpenDog 2 with full autonomy would be epic!
@dafoex4 жыл бұрын
Maybe one of those OpenNI depth cameras, too. I think Orbec is the company that makes the "Astra" one I've seen and liked the look of before.
@adamwishneusky4 жыл бұрын
I love how you build things up one chunk and interface at a time, debugging each before moving to the next
@binukanishadbamunuge63894 жыл бұрын
Thumbs up for the crystal clear explanation.. Waiting for part 2 🤘
@bennedictbyy4 жыл бұрын
This video is really informative. I had a similar project a year ago for a University subject. However seeing how you done it makes me want to improve so so more! Thanks for sharing!
@dafoex4 жыл бұрын
If it helps anyone, the way I think of ROS topics is less "pipes" and more "pigeon-hole message box". A ROS node can theoretically subscribe to any topic it wants and go to collect the latest data whenever required.
@anglerfish614 жыл бұрын
man you got me into Arduino, then I got interested in pi, and now you introduce ROS. Im gonna go bankrupt this way lol. I actually applied for different jobs for the sole purpose of funding this hobby xD. Thanks haha
@finallyfunctional4 жыл бұрын
Awesome. Correct me if I'm wrong, but ROS essentially looks like a standardized communication API for robotics. Can't wait to see more and what useful robots you can make with this!
@jamesbruton4 жыл бұрын
Pretty much, the main advantage for me is that there are so many ready-made nodes that can immediately make the robot intelligent.
@CerebralDad4 жыл бұрын
Congrats on getting through that James - I know how hard ROS is to learn! This is very exciting to see this developed.
@jamesbruton4 жыл бұрын
thanks, part 2 is a bit more hectic!
@CerebralDad4 жыл бұрын
Systems Planet Unless you’re trying to be innovative. The competitor would have had to learn that which was hard to learn in order to make it easier to learn
@ToddChevrier4 жыл бұрын
Ooo...I love this! This will be PERFECT for an autonomous lawn mower / Weed wacker! Actually I have been thinking and designing one already...LIDAR is what I am missing.
@jamesbruton4 жыл бұрын
The challenge with lawns is that there's lots of open space, so the LIDAR might not see anything
@travisash81804 жыл бұрын
@@jamesbruton Not even a toothbrush ?
@ToddChevrier4 жыл бұрын
@@jamesbruton I was thinking using the sonar you get from Adafruit and then once it detects, then kick on the LIDAR. That should work?
@emoutraspalavras-marloncou44593 жыл бұрын
I don't if you take it as compliment (I hope so), but you're far better than Iron Man himself! Thank you for the lesson!
@nathaniellangston51304 жыл бұрын
I'm usually sad when you work on projects that aren't your spectacular robot dogs! But I love the idea of one of these on the dog that I'm going to be even more thrilled if it works out really well!!
@NathanBuildsRobots4 жыл бұрын
I’m looking forward to your video on ROS with a laser scanner for mapping. I just ordered a laser scanner but I have no idea how to use it yet!
@eekee60342 жыл бұрын
Oh I want that T-Shirt! :D _checks description..._ Ooh goodie! There's a store.
@RupertBruce4 жыл бұрын
I like your debug setup!
@bgrant15124 жыл бұрын
Fantastic coverage of ROS. Looking forward to the next video on this
@jamesbruton4 жыл бұрын
The next one is not as straight forward ;-)
@bgrant15124 жыл бұрын
@@jamesbruton Ive been working on a tracked rover and looking at ROS. This video unlocked a couple issues I was stuck on. Im using the same LIDAR you are so Im going to be following very closely
@rverm1000 Жыл бұрын
nice i didnt know there was so much learning courses on the subject. definitely going to check it out.
@tiporari4 жыл бұрын
You could easily build up an optical mouse style sensing apparatus to determine ground travel direction and velocity. Whether using "mouse" type circuits or a camera and computer vision it's a straightforward way to establish accurate ground tracking.
@jamesbruton4 жыл бұрын
I was hoping I could do it with the lidar...
@GeorgeHawkins10 ай бұрын
The site for the free ROS book seems to have gone offline. But the actual book was always on Dropbox and is still available there - unfortunately, KZfaq usually censors comments with links so, I'll just say you can find everything via the Wayback Machine. In any case, the book covers ROS Kinetic Kame which came out in 2016 and belongs to the old ROS 1 series of releases. ROS 2 came out in 2017 and has been stable for a long time - so, it's probably best to start on a book or tutorial that covers it. James's videos are still a great place to get a high-level intro to the general ideas.
@avejst4 жыл бұрын
Great update video Great update project Thanks for sharing 👍😀
@jamesbruton4 жыл бұрын
thanks!
@offbeatrobotics4 жыл бұрын
For a rolling vehicle on a flat surface the static traction (tires not slipping) is solely determined by the coefficient of friction of the tires and the force (weight) applied to those tires. This is because as the contact patch is increased in size the relative pressure is decreased proportionally and therefore grip remains the same. If you need more traction and wear isn't a concern you can just switch to a softer durometer gripper tire. If wear is a concern then a softer durometer and a wider tire. This all gets way more complicated when considering something like a race car going around a track with contact patches changing size dynamically, uneven road surfaces, changing coefficient of friction with temperature and track surface. But for slow robots things are nice and simple.
@smartsensingandroboticslab7893 ай бұрын
Please help to answer a few quiz questions for this video: 1: What is the purpose of a ROS-enabled robot? A. To play music B. To do mapping and navigation C. To cook food D. To clean windows 2: Which Arduino board was used in the robot setup? A. Arduino Uno B. Arduino Mega C. Arduino Nano D. Arduino Due 3: What type of power bank was used to power the Raspberry Pi? A. 10 amp hour B. 15 amp hour C. 20 amp hour D. 25 amp hour 4: What is the purpose of a PID controller in robotics? A. To regulate motor speed B. To control temperature C. To measure humidity D. To adjust lighting 5: Which Linux distribution was used in the setup? A. Ubuntu Mate B. Fedora C. Arch Linux D. Debian 6: What is the purpose of a catkin workspace in ROS? A. To store cat pictures B. To organize source code C. To manage hardware components D. To control robot movement 7: Which topic is used for driving robots around in ROS? A. Velocity topic B. Acceleration topic C. Position topic D. Rotation topic 8: What is the purpose of the ROS serial node in the setup? A. To send messages to the Arduino B. To control the laser scanner C. To communicate with the Raspberry Pi D. To debug data from the Arduino 9: Which tool was used for PCB manufacturing and assembly? A. PCB Maker B. Circuit Builder C. PCB Way D. Electronics Pro 10: What is the purpose of the tf transform in ROS? A. To transform images B. To control motor speed C. To provide odometry data D. To debug Arduino code
@marknaeem4 жыл бұрын
This will be the best series ever! Just read a comment about the VM for ROS. It's not really the best option. neither is the other workstation xD. You can switch to ROS2 which can run on windows (it's newer than ROS and does not have much documentation and support as ROS so it's a good step to start with ROS). Or you can use dual boot. you will get both windows and ubuntu running on the same machine (you get to choose which OS to load when booting).
@clonkex4 жыл бұрын
18:15 "It is Captain Speed, as I say..." lol
@chromosundrift4 жыл бұрын
“Capped in speed” heh
@gerokatseros4 жыл бұрын
so interesting! ty ... looking forward for next part
@Seth-mb9nt4 жыл бұрын
When I was at University I started out studying MechE, but was particularly interested in robotics, so I was curious if maybe software was a better route. I managed to get a job in the Robotics and Artificial Intelligence Lab for a summer where I had to learn to work with ROS for 3 months. After that, I was 100% confident MechE was the right choice for me! Even as someone who knows their way around Python and a bit of C, that was a gauntlet of fire... Even other people I know who are software developers tell me they hate working with ROS.
@dgb5820 Жыл бұрын
Hi James Fantastic video, really appreciate it
@adog83554 жыл бұрын
Just subscribed Came from Mark Rober
@TheRealFrankWizza4 жыл бұрын
Great video! I appreciate the detail.
@christophermacier4 жыл бұрын
You are so smart it blows my mind.
@cerebralm4 жыл бұрын
Ever consider doing an ROV/submersible robot? Doing optical/photogrammetric SLAM in short-visibility with an ROV seems like a really interesting challenge :D would be super useful for archeology, cheap, safe, automated photogrammetry of underwater sites.
@jamesbruton4 жыл бұрын
Yes I'm doing research for that now.
@Techn0man1ac2 жыл бұрын
Меня так умиляет, когда он говорит "йЭбАнтУ"
@simonvandenbossche98043 жыл бұрын
I can't find the code of the project, what"s the name of the repository on Github?
@munimshafi25435 ай бұрын
did you find it, i also couldn't find it
@twobob4 жыл бұрын
To be fair the resources at wiki.ros.org/ROS/Tutorials are well worth working through. by the time you make it to wiki.ros.org/ROS/Tutorials/ExaminingServiceClient you have all the knowledge required to "understand" what James is talking about here. In /some/ depth if you actually build and follow through the code examples as the wiki suggests. Certainly enough to follow along so far. Hope that helps.
@pimhan4 жыл бұрын
I like this video with more of a software focus!
@bakonuroff44483 жыл бұрын
hello from Qazaqstan!
@ed.puckett4 жыл бұрын
Very impressive. As usual....
@myoldskoolmixedwhits4 жыл бұрын
Robots will make our human society better! Please make them more and more !Just learn it if u want u will find information!Believe your self those who are reading this message.
@LucasHartmann4 жыл бұрын
VirtualBox is an open source alternative to VMware Player.
@SLLabsKamilion4 жыл бұрын
It's not fully open source, and Oracle's been chasing people down to pay for the PUEL licenced extension pack. If you want open source, go with Xen or qemu.
@NASTYcraftX4 жыл бұрын
Man my boss would be so happy if I commented my code like James lol
@zenithparsec4 жыл бұрын
I think he'd be disappointed if you coded your code like James though.
@SLLabsKamilion4 жыл бұрын
I'd certainly be disappointed. Needs more comments, all over.
@sarthaknimbalkar58684 жыл бұрын
Hey buddy your work is awesome :D
@TheRealFrankWizza3 жыл бұрын
FYI, I have compiled ros from source on a pi0w. Just the build time alone was almost 30 hours.
@twobob4 жыл бұрын
First! LUL , Oh baby. You the man James. This series is the best
@jamesbruton4 жыл бұрын
thanks!
@chromosundrift4 жыл бұрын
Nice job explaining a much more complex set of abstractions than usual. I notice you don’t tend to use diagrams. Have you considered a bit of white boarding for this Ros stuff?
@steubens7 Жыл бұрын
rosserial doesn't work in ROS2 & everything is quite a bit different, but each participant is a full node & there's auto discovery. so it's harder to use an 8 bit part, but something slightly bigger like an esp32 or pi pico is a first class node. i dunno if you got the returns you were looking for in your ROS videos but i'd love to see more. mundane stuff like buttons and LEDs got a lot tougher to just throw in there
@TimB334 жыл бұрын
There's a cmd_vel publisher in Android store called 'ros control'. Which means you can use your phone to steer it if you want
@jamesbruton4 жыл бұрын
I tried it but it won't go forwards?
@KevinToppenberg4 жыл бұрын
I'd like to see this turned into super roomba vacuum
@kyootfox4 жыл бұрын
Use cssh to connect to sets of servers and run the same command on all of them at the same time.
@BlackMax884 жыл бұрын
I've got always the problem with episodes that include a lot of talking about coding because I just know basic english. But thats of course no critiscm, it's just the reason I prefer the videos with focus on building the actual robot
@cool20guitar4 жыл бұрын
Loved the video
@jeffGordon852 Жыл бұрын
I like your tshirt man
@sanjuansteve3 жыл бұрын
I'd like to make a similar robot able to roll around a home or business mapping the walls, ceilings, doors, windows, base trim, etc and then paint the space autonomously.
@cyberstar2514 жыл бұрын
i hade an idea for your next robot, a telepresence robot that can go a fair distance from your home if needed.
@dsbupadrasta23854 жыл бұрын
Thanks for sharing ebook
@HERETIC5294 жыл бұрын
Love the series keep it up :)
@Alex_Lotor4 жыл бұрын
Awesome video! Any chance of a future VR project? You did some great ones in the past. Wandering if it was possible to create a really cheap and light strap on exoskeleton for full body tracking without any external detection systems...
@Shadow__X4 жыл бұрын
you should make a channel for this stuff that's called Ros Creations
@JohnDlugosz4 жыл бұрын
Even in future projects that don't use ROS, studying software in general will help you. As a software engineer, I've noticed that your coding skill is nowhere near the same level as your hardware and design.
@Xhand712z Жыл бұрын
Why do you need the 5 V regulator , already having the l298 like motor controllers? Confusing only because there are no schematics .Thanks.
@dw36953 жыл бұрын
Hello James, thank you for making this video. Do you have the code for this particular robot uploaded to github? I can't seem to find it any where.
@usamazaheer31098 ай бұрын
did anyone find the code??
@lets.make.robots4 жыл бұрын
Cool. I am trying to do something similar in my native language as well
@curiouslittledroid12344 жыл бұрын
Looks like you are using classic ROS I think. For us ROS newbies, Would be great to understand why you chose classic ROS over ROS2.
@jamesbruton4 жыл бұрын
Documentation and existing examples mainly.
@TheRealFrankWizza3 жыл бұрын
This is what I need I think .
@batuturhan8784 жыл бұрын
This what am ı looking for, thanks!
@ViniciusCZanini4 жыл бұрын
Nice video! Thank you 🙏🏻
@JasonLuksTech4 жыл бұрын
Hi Bouton, this is a nice work on your video. I am working on a project with serial communication between Raspberry Pi and Arduino as well. However I discovered there is a half second delay for sending a letter, and 3~5 second delay for sending a string. I glad to know how would you going to solve it.
@underlecht2 жыл бұрын
Crazy. Wow.
@pedroparamodelvalle67514 жыл бұрын
You know it is easier to build a velocity controller on the wheels and use the differential robot kinematic model to work out the velocity vectors. Meaning your node computes the wheels velocity from the kinematic model and the Arduino simply runs the PID controller
@jamesbruton4 жыл бұрын
Yes it possibly is. Part 2 gets even more hectic and then I'll be taking what I learned to build a much better V2 from the hardware up.
@dodoonlineshop7973 Жыл бұрын
What's the best and cheapest raspberry pi alternate? Because I can't seem to find them at a good price anywhere.
@ramanabotta62854 жыл бұрын
Thank you really helpful.
@giosamera81297 ай бұрын
Hi sir, can you display the codes and the packages of ros in the libraries with proper arrangements?
@gooddaytodiy13494 жыл бұрын
Thank you really helpful
@RobReynolds4 жыл бұрын
It would be interesting to hear why you're adding in the Arduino Mega and not driving the motors from the pi itself. (Not critiquing what you've done, interested in hearing your analysis of pros Vs cons)
@jamesbruton4 жыл бұрын
Mainly because I'm better at Arduino and most of my projects have been Arduino based. That said, I also prefer handling hardware like encoders without the o/s in the way.
@zenithparsec4 жыл бұрын
@@jamesbruton Use the Teensy then... same code, faster processor. You already know this though... and could get the encoders working at high speed, which means you could put them on the correct side of the gearing, which means you wouldn't need to do the integral hack with the PIDs, and if you also put a thicker tire on the wheel, you could have made it work pretty much perfectly, and the whole video would have made things a lot easier to understand. Obviously. (And people stop saying obviously when things might not be obvious to people. Obviously not everyone knows as much as you do, or comes so the obvious thing to do is not make them feel stupid. But obviously you already know that.)
@r0nam1454 жыл бұрын
Raspian is built off of Debian (Which Ubuntu is also built off of) and everything Debian already uses Aptitude as its package manager, the thing that changes which packages are available for the system is the architecture of the processor the package is compiled for and the source list for APT. As far as I can see ROS is available on Raspian by default, so I wonder what went wrong when you tried it?
@jamesbruton4 жыл бұрын
It also won't let me install ROS kinetic on Ubuntu 18.04 or Melodic on 16.04 by default. So this was the easiest way to do it. Bear in mind that my experience in limited.
@akshatsrivastava3050 Жыл бұрын
Unable to find the repo for this exact project. Can you help me ?
@DEADB33F4 жыл бұрын
How do these LIDAR thingys work outdoors around foliage and other obstacles not composed of hard flat surfaces?
@jstro-hobbytech Жыл бұрын
Is the board on the previous kit that reads the arduino sensors based on the stm32?
@user-ik2yd4uz7o10 ай бұрын
awesome
@munimshafi25435 ай бұрын
From where I can source the code for wheel encoder testing? i can not find it on your github
@carlwestman93433 жыл бұрын
I didn´t quite get the part where you made a connection between the raspberry pi and the workstation. Did you set the ROS_MASTER_URI to the workstation and ROS_IP to the raspberry IP on the robot?
@SarahKchannel3 жыл бұрын
sounds a bit like ROS works with MQTT internally to link and Node-Red to form the logic...
@lambsauce54453 жыл бұрын
What a pro. Win 7 huh? I use Win XP.
@germimonte4 жыл бұрын
2 interrupts per encoder? is that wrong or is there some advantage over using an interrupt and a normal pin and polling the non interrupt pin on interrupt?
@jamesbruton4 жыл бұрын
There are two phases on each one?
@nishantsharma44654 жыл бұрын
can you please make a more detailed video on setting up the pi and the remote system
@awosog573 жыл бұрын
Do you still have the code from this video? I don't see it on GitHub.
@wilgarcia14 жыл бұрын
Awesome
@nishantsharma44654 жыл бұрын
you are the best
@BadalKumar-fk9iz3 жыл бұрын
can you please tell me about motor driver , what motor driver are you using for it . i am getting motor driver with only one pwm and one DIR pin confg. but in your case each pin is getting directly PWM pulses.
@jertdw3646 Жыл бұрын
I don't know waht the link is for the arduino playground.
@hadiyaebrahim1680 Жыл бұрын
I'm having trouble finding the playground code, can I get a link?
@Thuliolima20084 жыл бұрын
very Good!
@lemmonsinmyeyes4 жыл бұрын
If you are limiting the speed of the motors, then could the encoders be attached directly to the motors? You said you didn’t because they were moving too fast (unregulated/limited) but now that they are, is it feasible?
@jamesbruton4 жыл бұрын
from experience it's on the edge of the MEGA being able to read them accurately.
@lemmonsinmyeyes4 жыл бұрын
James Bruton ah just curious. Thanks for awesome content dude !
@leroidelabagarre4 жыл бұрын
Great again! What if you put the rotary encoders on non powered wheel to avoid bad encoder data when powered wheels drifted on the floor ?
@staberas4 жыл бұрын
no James i wont judge you for still using Win7.
@modogthedev4 жыл бұрын
But windows 10 is nice :(
@muhammadshazaib96013 жыл бұрын
Hi there I am following your code to differential drive a robot but my robot does not stop it follows all the command related to drive forward, rotate but its does not stop.