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.
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.
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.
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!
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
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.
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!
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!
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, UA-cam 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.
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).
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
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.
@@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
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.
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.
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.
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.
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
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?
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
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!!
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.
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.
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?
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.
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.
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.
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?
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...
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
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.
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)
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.
@@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.)
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.
Thank you very much for this video. May you please upload the Arduino code? I know you have uploaded the updated version but I need this code specifically. Thank you very much.
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
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?
The videos is really great!! Thank you for the information. I'm already working on ROS I have connected RPlidar and Arduino Mega to Jetson nano. The /dev/ttyUSB0 and 1 continuously switches between Mega and Nano causes error. How can I define particular port to Mega and Nano. Or How can i read wheather its a Mega or Nano. Please if possible mention the same in the next video. Thank you.
Hi, you can write a small udev rule to assign a given 'device' name to your USB serial device (Arduino or else). Link: unix.stackexchange.com/questions/66901/how-to-bind-usb-device-under-a-static-name
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.
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?
What version of Ubuntu Mate are you using? Just pulled down bionic (18.04) both 32 and 64, and when starting my Raspberry Pi it's just black screen and red/green lights. Tried starting it up with a different distro and everything started up fine, so don't think it's a hardware issue.
@@jamesbruton I figured out the issue. I ordered motors without encoders. I have been able to successfully read the new motors output now! Time to create my PID system!
Can't stop hearing it as ROSberry Pi :D
I hear it as “green needle.”
Rosberry Pi is the Ros image for raspberry pi 4
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.
Excellent! You covered a semester in a few minutes. I will recommend your videos to students.
He should put a biting head on it
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.
thanks, that is the eventual aim.
can you suggest some free tutorials
Same here !
@@aryaanand759 do the ros tutorials!
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.
This series will become the most view robotics realated video on youtube crystal clear explnation
thanks!, Part 2 gets a bit more hectic though ;-)
@@jamesbruton Are you allright? everything ok? no video this week ? :(
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!
When open dog v2 can walk properly he should put a lidar scanner on it
Yes! OpenDog 2 with full autonomy would be epic!
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.
I love how you build things up one chunk and interface at a time, debugging each before moving to the next
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
Thumbs up for the crystal clear explanation.. Waiting for part 2 🤘
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.
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!
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!
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!
Pretty much, the main advantage for me is that there are so many ready-made nodes that can immediately make the robot intelligent.
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, UA-cam 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.
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!
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).
Congrats on getting through that James - I know how hard ROS is to learn! This is very exciting to see this developed.
thanks, part 2 is a bit more hectic!
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
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.
Fantastic coverage of ROS. Looking forward to the next video on this
The next one is not as straight forward ;-)
@@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
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.
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.
Oh I want that T-Shirt! :D _checks description..._ Ooh goodie! There's a store.
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.
The challenge with lawns is that there's lots of open space, so the LIDAR might not see anything
@@jamesbruton Not even a toothbrush ?
@@jamesbruton I was thinking using the sonar you get from Adafruit and then once it detects, then kick on the LIDAR. That should work?
I like your debug setup!
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.
I was hoping I could do it with the lidar...
I can't find the code of the project, what"s the name of the repository on Github?
did you find it, i also couldn't find it
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
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?
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
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!!
Unable to find the repo for this exact project. Can you help me ?
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.
did anyone find the code??
Great update video
Great update project
Thanks for sharing 👍😀
thanks!
nice i didnt know there was so much learning courses on the subject. definitely going to check it out.
Hi James
Fantastic video, really appreciate it
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.
Yes I'm doing research for that now.
Just subscribed
Came from Mark Rober
FYI, I have compiled ros from source on a pi0w. Just the build time alone was almost 30 hours.
From where I can source the code for wheel encoder testing? i can not find it on your github
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.
so interesting! ty ... looking forward for next part
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?
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.
VirtualBox is an open source alternative to VMware Player.
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.
18:15 "It is Captain Speed, as I say..."
lol
“Capped in speed” heh
How do these LIDAR thingys work outdoors around foliage and other obstacles not composed of hard flat surfaces?
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.
Меня так умиляет, когда он говорит "йЭбАнтУ"
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?
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...
You are so smart it blows my mind.
I like this video with more of a software focus!
Use cssh to connect to sets of servers and run the same command on all of them at the same time.
Why do you need the 5 V regulator , already having the l298 like motor controllers? Confusing only because there are no schematics .Thanks.
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
I tried it but it won't go forwards?
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.
Documentation and existing examples mainly.
Great video! I appreciate the detail.
Since you built a perfect Hulkbuster armour could you build a mark 38 also known as the igor armour?
hello from Qazaqstan!
What's the best and cheapest raspberry pi alternate? Because I can't seem to find them at a good price anywhere.
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
Hi sir, can you display the codes and the packages of ros in the libraries with proper arrangements?
Hey buddy your work is awesome :D
you should make a channel for this stuff that's called Ros Creations
can you please make a more detailed video on setting up the pi and the remote system
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.
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)
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.
@@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.)
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 ?
Hello I really live your work can i ask under what name did you upload your package in the github link
i hade an idea for your next robot, a telepresence robot that can go a fair distance from your home if needed.
sounds a bit like ROS works with MQTT internally to link and Node-Red to form the logic...
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.
Thank you very much for this video. May you please upload the Arduino code? I know you have uploaded the updated version but I need this code specifically. Thank you very much.
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
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.
Is the board on the previous kit that reads the arduino sensors based on the stm32?
do you think a Raspberry Pi zero W can work with the same setup?
Do you still have the code from this video? I don't see it on GitHub.
That's great work, but I can't find the project in GitHub, so pleas lead me to the project especially the Arduino code. .... Thank you
Very impressive. As usual....
Do you use other types of control aside from PID?
What motors and encoders are you using please?
trying to build my robot on Raspberry pie; C++, Python, ROS, SLAM which should I start with, how do I progress?
First! LUL , Oh baby. You the man James. This series is the best
thanks!
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?
from experience it's on the edge of the MEGA being able to read them accurately.
James Bruton ah just curious. Thanks for awesome content dude !
Reference components used in this nice platform, please
I'd like to see this turned into super roomba vacuum
hello from India....I am not able to find the complete code for wheel encoder. kindly provide
The videos is really great!! Thank you for the information.
I'm already working on ROS I have connected RPlidar and Arduino Mega to Jetson nano. The /dev/ttyUSB0 and 1 continuously switches between Mega and Nano causes error. How can I define particular port to Mega and Nano. Or How can i read wheather its a Mega or Nano.
Please if possible mention the same in the next video.
Thank you.
Hi, you can write a small udev rule to assign a given 'device' name to your USB serial device (Arduino or else). Link: unix.stackexchange.com/questions/66901/how-to-bind-usb-device-under-a-static-name
@@jcugnoni Thank you sir !!
I'll try the same
Great work, but i did not find arduino + ROS code in github. please give the direct link.
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.
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?
There are two phases on each one?
I don't know waht the link is for the arduino playground.
Man my boss would be so happy if I commented my code like James lol
I think he'd be disappointed if you coded your code like James though.
I'd certainly be disappointed. Needs more comments, all over.
Do it more about ROS!!!!))
Does it really ROS don't works in Raspbian?
It works, but you have to compile it yourself. And you don't want to do that, believe me.
I'm having trouble finding the playground code, can I get a link?
can you tell me what type of encoder you are using please?
how did you connect the 2 ros nodes to the same roscore?
What version of Ubuntu Mate are you using? Just pulled down bionic (18.04) both 32 and 64, and when starting my Raspberry Pi it's just black screen and red/green lights. Tried starting it up with a different distro and everything started up fine, so don't think it's a hardware issue.
Link to a helpful video is in the description
Hello sir, I couldn't find this project in your github account, can you send the link of the project directly?
Is there a good tutorial somewhere where I can learn how to set up the motor controls the way they were in this video?
Check out my Really Useful Robot series. That one works much better and the code is on Github.
@@jamesbruton I figured out the issue. I ordered motors without encoders. I have been able to successfully read the new motors output now! Time to create my PID system!