Hoverboard Robotics Tutorial Part 3A: Hoverboard Robot Drive with ROS (Robot Operating System)
If you find my videos helpful, you can say thank you and help me to make more tutorials with a cup of coffee or by picking up a copy of Practical Robotics in C++. Thank you for your support!
www.buymeacoff...
Practical Robotics in C++: amzn.to/3CJAqHs
Joystick: amzn.to/3qvE579
ST-Link V2 programmer: amzn.to/3wb43R0
FTDI: amzn.to/3fSTWKh
USB Extension (1 Meter / 3.3 Feet): amzn.to/3SUdjBq
USB Extension (3 Meter / 9.9 Feet): amzn.to/3rNL0IW
Hoverboard Robotics Tutorial Part 3A: Hoverboard Robot Drive with ROS (Robot Operating System)
****************************************
UPDATE: Alex Makarov has made a minor change to the ROS hoverboard driver. You can still change the serial port in /include/config.h if you want, but it is now also possible to simply pass the port as a parameter. (Bonus: This makes it easier to run two boards so you can have 4 wheel drive) See the front page README.md in the Alex Makarov Hoverboard ROS Driver project for an example and of course, reference my book Practical Robotics in C++ if ROS and launch files are something you need more guidance on.
****************************************
In this video, we apply the skills we learned in the last video and configure and flash the control board with new firmware for use with a ROS robot. Then we learn how to wire the board to your Raspberry Pi or other computer, and finally how to install, set up, and use the Hoverboard ROS driver so you have a mobile base that response to standard movement commands and publishes odometry in ROS.
** LINKS FROM THE VIDEO **
Part 2 of this series - in case you still need to understand how to flash the firmware on the hoverboard control board: • Hoverboard Robotics Tu...
Alex Makarov hoverboard Firmware fork: github.com/ale...
Alex Makarov Hoverboard ROS Driver: github.com/ale...
********************************
Practical Robotics in C++ : learn to build autonomous robots. Now available on Amazon in most markets, or the publisher's web store!
Amazon U.S.: www.amazon.com...
Barnes and Noble:
www.barnesandn...
BPB Publications:
bpbonline.com/...
Amazon Canada:
www.amazon.ca/...
Amazon UK:
www.amazon.co....
Amazon Germany:
www.amazon.de/...
Amazon Italy:
www.amazon.it/...
Amazon Mexico:
www.amazon.com...
Amazon Japan:
www.amazon.co....
Amazon Australia:
www.amazon.com...
Practical Robotics in C++ teaches real autonomous robotics without the reader needing a university degree to follow the tutorials. Features the Raspberry Pi. Topics covered include:
- Choosing and setting up a computer for robotics
- Electronics for Robotics
- Buying, building, and hacking robots
- Motors: Different types, how to control them
- Communications with sensors and other devices
- Robot control theory and controller design
- Mapping and Autonomous Path-Planning
- Autonomous motion
- Robot tracking and localization
- Sensors for robotics
- Computer Vision
- Sensor Fusion
- Final project: Build and program a complete autonomous robot!
*****************************************************************************
Пікірлер: 60
UPDATE: Alex Makarov has made a minor change to the ROS hoverboard driver. You can still change the serial port in /include/config.h if you want, but it is now also possible to simply pass the port as a parameter. See the front page README.md in the project for an example and of course, reference my book Practical Robotics in C++ if ROS and launch files are something you need more guidance on.
you are doing great work really, your videos and the book help me a lot as PhD students beginner in building things by hands
after days of research i thankfully found this channel! thank you man!
@chamontabassum7138
2 жыл бұрын
where to get this single control board? now most of them have 2 separate control boards. did not find anything in ebay.
Thanks for your hard work. Looking forward to the next one.
@PracticalRobotics
2 жыл бұрын
@Tjaart Kotze - Sorry for the wait but 3B is finally done! kzread.info/dash/bejne/o2hpk7mddbPRmtI.html
@tjaartkotze4394
2 жыл бұрын
@@PracticalRobotics Thanks, watched it. Also bought your book, will be reading through it. You haven't got dual inputs working with the USART variant, have you?
@PracticalRobotics
2 жыл бұрын
@@tjaartkotze4394 It seems pretty straightforward but I have not had a chance to try it and have just used a joystick via ROS to get the joystick convenience on my robot, although sometimes it would be nice to not have to have the computer on at all so ADC would be helpful. From what I see in the documentation (github.com/EFeru/hoverboard-firmware-hack-FOC/wiki/Dual-Inputs) you would want to flash the ADC variant with dual input selected and that would give you ADC on the left input and serial on the right input. I have wanted to try it but haven't had time so if you try it please let me know how well it works and anything else you learn while getting it going.
Man !!! This is amazing !
I follow your videos and they are really excellent. I am interested in increasing the torque in the firmware and reducing the speed of the wheels, because I am making a lawnmower with remote control, I installed big tires and now I have a problem when I want it to go slower, then the wheels have no power and with at higher speeds it is difficult and inappropriate to steer. Thank you, I hope you will be able to help me and other viewers.
Amazing work, I followed your tutorial and perfectly work for me; I see you added battery state, I'would like to make a node that read your battery topic and publish to original ros sensor_msgs/BatteryState Message; Can you help me?
Thank you. I am studying Ros2 foxy. could teach with ros2 foxy?
Nice work
Danke Lloyd
LB , link to buy the control board ->/?
I installed hoverboard driver on raspberry pi. I am not clear the running the hoverboard with ros (rosrun rqt_robot_streering rqt_robot_streering). could you please make another tutorial. I bought your book today. is that in the book regarding the control hoverboard with ros rqt??
@PracticalRobotics
2 жыл бұрын
Hi and thank you, I hope you enjoy it! I'm afraid the book does not cover the hoverboard specifically, but chapter 5 covers the basics of serial communication and chapter 9 covers the basics of how ROS works in general. Once you install the hoverboard driver and flash the firmware on the hoverboard, driving the hoverboard is the same as driving the turtle in the chapter 9 tutorial. I am afraid my publishing contract prohibits me from making tutorials that cover the same material that can be found in the book.
Any recommendations for doing this without using the hoverboard PCB, some sort of off the shelf driver I can buy?
@PracticalRobotics
Жыл бұрын
Sure, you can find different BLDC motor drivers online, although most won't provide feedback to odometry and stuff. There are a couple that have ROS drivers for publishing odometry and stuff, but I've no experience with any of them.
@marinilsonmoreira
3 ай бұрын
procure por zs-x11h
did you use encoder value to calculate odom and if you have use it how can you get it from hoverboard via UART protocol
@PracticalRobotics
Жыл бұрын
No need to fuss over the details - Alex Makarov's firmware fork and ROS driver already publish it as a ROS message.
You are a naturally very good teacher. When is 3b coming out?
@PracticalRobotics
2 жыл бұрын
Thank you! The last semester really tried to kill me but I'm still here and finally editing 3b. I hope to have it up in a couple days! (shooting for 11 Jan 2022)
@PracticalRobotics
2 жыл бұрын
@justtestingonce I'm happy to say that it is finally done/ kzread.info/dash/bejne/o2hpk7mddbPRmtI.html
Hey do i need to git clone the alex makarov git on my raspberry or on the pc master ?
@PracticalRobotics
Жыл бұрын
It needs to be on whichever computer is physically connected to the hoverboard main board by the serial wires. It seems that's most likely the Raspberry Pi, in your case.
hey thank you for the video it is helping me a lot ! just one question can you send me the exact serial uart cable that you are using and also the ftdi thank you
@PracticalRobotics
Жыл бұрын
Happy that you are enjoying the videos. I have added links to those items to the description.
where to get this single control board? now most of them have 2 separate control boards. did not find anything in ebay.
@PracticalRobotics
2 жыл бұрын
I have bought this one a number of times: www.ebay.com/itm/282885047793?_trkparms=amclksrc%3DITM%26aid%3D111001%26algo%3DREC.SEED%26ao%3D1%26asc%3D20160908105057%26meid%3Db63d1a17bae74224982e3b07c528b94c%26pid%3D100675%26rk%3D3%26rkt%3D12%26sd%3D165516639752%26itm%3D282885047793%26pmt%3D1%26noa%3D1%26pg%3D2380057%26brand%3DUnbranded%2FGeneric&_trksid=p2380057.c100675.m4236&_trkparms=pageci%3Abbee6884-1121-11ed-8a75-7206a4110a26%7Cparentrq%3A566ab5eb1820acd89d2c5871fffdb518%7Ciid%3A1
Thanks for the great video and I like your book. I have a question. I would like to change the firmware for the shutdown voltage from 38 volt to 34 volt. Do you know where to modify this change in the firmware?
@PracticalRobotics
2 жыл бұрын
Sure, you can change the battery-related voltages in config.h. In the Feru firmware, that section starts around line 70. These settings currently don't shut it down until 33.7 volts, though. If you are shutting down sooner than you think you should perhaps you have a battery that can't supply enough current? Anyway, I have lowered these to allow the motors to work with a 24 volt battery so this is the correct section.
@chamontabassum7138
2 жыл бұрын
@@PracticalRobotics where to get this single control board? now most of them have 2 separate control boards. did not find anything in ebay.
Practical Rotics in C++ is included ROS2???
@PracticalRobotics
2 жыл бұрын
Not unless there has been a big update that I missed. I believe you would have to run a bridge between ros1 and ros2 in order to use the hoverboard_driver with ros2 github.com/ros2/ros1_bridge
even below error and warning and port issue ... rostopic echo -n1 /hoverboard/connected data: True --- working rostopic
@chamontabassum7138
2 жыл бұрын
where to get this single control board? now most of them have 2 separate control boards. did not find anything in ebay.
i got this error after roslaunch hoverboard_driver hoverboard.launch : ... logging to /home/hadha/.ros/log/a19d87d8-e023-11ec-86c1-b9f1ec130109/roslaunch-hadha-NUC8i3BEH-9841.log Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is
@yudhobaskoro8033
2 жыл бұрын
BTW I'm using FTDI with ROS noetic installation
@PracticalRobotics
2 жыл бұрын
@@yudhobaskoro8033 Have you cloned the hoverboard_driver to your catkin workspace/src the compiled it with catkin_make or catkin build?
@yudhobaskoro8033
2 жыл бұрын
@@PracticalRobotics both with catkin_make and catkin build
@yudhobaskoro8033
2 жыл бұрын
@@PracticalRobotics i even tried deleting devel and build and do it all over again just to be sure
@PracticalRobotics
2 жыл бұрын
@@yudhobaskoro8033 That's really odd. Just to be sure, is it in the correct workspace? I see that you have robot_medis_ws sourced but not "catkin_ws" which is common in many tutorials. I ask just to be sure because plenty of my students and even I occasionally forget that I'm in an incorrect workspace when I have more than one. If you have it in catkin_ws or some other, it does not look like that other workspace is sourced in your .bashrc.
[ERROR] [1650454047.704424888]: Missing parameter '//port'. [ WARN] [1650454047.705156012]: Port is not set in config, using default /dev/ttyUSB0 during roslaunch hoverboard-driver hoverboard.launch using FDTI
@PracticalRobotics
2 жыл бұрын
If that is the correct port, the warning means nothing. If it is not the correct port, you have to set the port to match your correct port in the launch file (see my pinned comment). There is an example on the front page of the hoverboard_driver documentation.
@mogamadtromp9374
10 ай бұрын
I'm getting the same error and the wheels don't want to move using the (rosrun rqt_robot_streering rqt_robot_streering) command. Is there perhaps another way to steer the wheels?
also warning [ WARN] [1650691436.702131090]: Hoverboard checksum mismatch: 53774 vs 11287 [ WARN] [1650691437.432108098]: Hoverboard checksum mismatch: 53774 vs 11287 .........Many....Many
@PracticalRobotics
2 жыл бұрын
Aside from this error are you getting data that looks reasonable?
@johnnam7225
2 жыл бұрын
@@PracticalRobotics no reasonable - wheels spins are not continus and bit slow and fast and the stop button in rqt_robot_steering clicked but both wheels are little move around a second after stop button clicked