(Part 2) Best products from r/robotics

We found 27 comments on r/robotics discussing the most recommended products. We ran sentiment analysis on each of these comments to determine how redditors feel about different products. We found 208 products and ranked them based on the amount of positive reactions they received. Here are the products ranked 21-40. You can also go back to the previous section.

Top comments mentioning products on r/robotics:

u/hwillis · 3 pointsr/robotics

Already a lot of great answers by clever people here! I can add a bit on motors and electricals, but I also want to say that you're probably underestimating how big a 3' arm is. Imagine that on your desk- it takes up half a table! Sizing the motors for static torque alone doesn't work well, as the inertia at the end effector increases with length^2 which is proportional to dynamic torque, speed, and vibration. Larger limb sections are also heavier and more complicated to make, which makes them even more heavy. Sizing down a little bit will make the arm dramatically more stable and performant.

> Belts or Gears for the actuators?

For 3 lb @ 35" you're looking at a minimum torque of 12.2 N-m at the shoulder. That will require reduction. Belts are far cheaper than gears, especially if you have a 3d printer- plastic pullys work great, although they need to be well glued to metal shafts (NB that a shaft key will greatly reduce strength and durability). Red loctite is great for that. A single belt reduction can do 5x, although you can do 10x+ with idlers. Mcmaster is a good place for belts, but amazon has a small selection that can be cheaper.

Note that belts can be very rigid: highly tensioned, fiber reinforced belts at moderate torque (otherwise the teeth start pulling out) are actually stiffer than most gears, which have a grease film and a gap between teeth that has a slight initial give/backlash. The reason you switch from belts to gears is because you need to tension the belts more tightly for higher torque. Once the tension becomes hard on the bearings and gearbox frame, you switch to gears. Basically you want to avoid gears if at all possible; they're expensive, hard to find, and hard to mount without metal backplates and the ability to cut bearing mounts. SDP/SI is a good place to get gears.

> Once I know how much torque I need, how do I know which type of motor is best for me? Stepper, Servo, Brushless?

Depends how much you want to spend. Hobby servos won't work for a 35" arm, even the $350 dynamixels. You also don't want to be designing your own brushless drivers, and the range of robotics controllers for bldc is limited. You are basically stuck between NEMA 23 and odrive.

NEMA 23 is the cheap choice- you can get very big NEMA 23s on amazon, hook them up to a single-stage 5x reduction, and have gobs of torque and good control. You can even get NEMA 34 for affordable prices. The drivers are stupidly cheap- for <$70 all-in you can have an arduino-controlled joint with 15 N-m of torque and top out solidly over 500 rpm. Add a couple heat sinks and you can increase that a lot- 500+ watts no problem, or 7 watts per dollar.

Downsides are you don't get any regen (not so important on an arm), low/no backdriveability (although this can be nice since the robot usually holds position when it turns off), very loud operation, low efficiency, and pretty low acceleration. Brushless motors require higher reduction and closed loop control, but are quiet, efficient, and can be used to build very responsive + high regen robots. Driving them is the weak link: the 56 V odrive dual driver cost a whopping $150. However for $70-80 per motor you get 40-90 amps continuous for 2 to 5 kilowatts, WITH regen and accuracy to >512 steps. That can be over 20 watts per dollar for the motor, reduction, sensors and driver. The limiting factor is even finding motors that can handle that power.

If your budget is <$500, go for steppers. If it's >$800, I'd go for brushless. You'll get an immense amount of speed and power, both of which are very good for an arm with a 3' reach. Note that 3' is a very large arm- the weight of the arm itself will be very limiting if you don't used fairly sophisticated techniques. 8"-12" sections are a hassle to 3d print. Rotational inertia increases with reach^2 so you'll need quadratically more power for the same acceleration (and to fight wobble). A 26" arm will require only half the power.

> Do I start my design from the end effector or do I start at the base?

I'd start at the end effector- that will set your payload weight and the torque required at the next joint, and so on back to the shoulder. Doing it the other way requires a lot more iteration.

The one thing I always say on posts like this is to learn how to use bearings. Bearings are the #1 cause of wobble in poorly designed arms, and the easiest way to tell if the designer had any clue what they were doing. Use 608 bearings for everything you can. They're incredibly cheap and precise because they're used in skateboards- 20 to 50 cents each. They're deep groove bearings, which are excellent for machinery, and can take 300 lbs radial and 150 lbs axial static load and 2-3x that for dynamic load. They're easily a 50x better value than any other types of bearings. If you want other bearings (maybe very large thin section) go to onlinebearingstore, despite having a 2000s era website/name they're really great. Unrelated, theoringstore is also really great.

The most important thing to know about bearings is that they always, always need a preload. The bearing will not meet specs if it does not have some axial force. It will have a very noticeable play and will wear out quickly. This is why you always use bearings in pairs- not because they can't take it, but because you can't preload a single bearing. You need two bearings to be pressed together. I like disc springs for this, but shims and even just bolts also work well for providing the axial force. You can usually just set your preload by feel (so make it possible to bolt down one bearing closer to the other), but if you want to do the math it's good to aim for an axial force of 50% of the maximum radial force you expect. That can come from static load, or torque from twisting the bearing.

u/schrodingerwarnedme · 5 pointsr/robotics

Depends if you're just trying to tinker and make projects. If that is the case, read tutorials and watch youtube videos to do that. If not, read on.

At the basic level, you would want to have working knowledge of electrical engineering, embedded system programming and some mechanical engineering and some microprocessor architecture knowledge would be helpful.

Learning Resources

I recommend Introduction to Mechatronic Design by Ed Carryer (you might be able to find a cheaper international edition if you google around). This book should cover the aforementioned concepts to a good level of depth. Carryer's book is a good general robotics book. If you want to get deeper into kinematics and dynamics of robots, I recommend Robotics, Vision and Control. If you're interested in control theory side of things, the Brian Douglas Youtube Channel is a fantastic resource.
Also art of electronics is a really good reference book to have around. It's considered the bible of electrical engineering and I've found the book to be really useful.

You should also brush up on probability, multi-variable calculus, linear algebra and discrete mathematics.

If you're interested in motion planning, computer vision, sensor fusion etc., coursera has some good classes that you can find. UPenn has a robotics series that looks good (I haven't personally taken those courses.)

Learning Philosophy

In my opinion, a good chunk of learning happens when you have a problem at hand that you're trying to solve so project based learning is a good idea. Taking free online classes to tackle the more technical subjects can also be a good approach. Make sure you're learning actively. If you're reading a book about control systems and you aren't working with the material, it'll fade away quickly and the best way to remember it is to apply it. It might make sense to split your time between simulating robots (ROS), building robots (systems using rasPi, arduino, pic32 etc with sensors and actuators) and taking online classes.

Also, once you have a good level of understanding and are wanting to move to more cutting edge robotics work, you can start reading some research papers (IROS and ICRA papers can be a good place to start).

Let me know if you have any more questions. Happy to help.

u/grumpy_technologist · 5 pointsr/robotics

OK. ModernRonin did a great job. Read his first. Also I'd like to put out the theory that you didn't receive many replies on /r/programming because that is typically a forum for high-level programming, not down-in-the-metal like this.

I've done this plenty of times, and let me tell you from experience, it can be done on the cheap, and pretty easy. Where ModernRonin provided specific answers, I'll try to provide examples of how it might work.

Something like this:

Temp Sensor --> Sensor control board --> PC.

The link between temp sensor and the board is probably I2C (eye-squared-see) or serial port. If it's serial port, you can technically skip the control board directly to the PC. If you're PC doesn't have a serial port (a 9-pin port that looks like a monitor plugin), then you'll have to buy this, which provides a serial port over a USB connection. If you manage that, then you can move on to adding other sensors to the control board. Typically, these extra sensors will all communicate with the control board, which then relays the data all at once to the PC.

Dont' worry about accessing ports, concentrate on the connections (I2C or USB? Serial or Xbee?), then learn how to access what you have.

Start with the control board, I'd recommend something pre-built like an adruino. Then build your own after a month or so. It's so easy you'll never believe it.

"Choosing" ports won't be an issue, each has a purpose, and typically you won't have a lot of flexibility.

Accessing ports is easy. Start with a terminal program. Realterm is the shit. Be friends with it. It'll dump anything coming in over a serial port, which makes debugging really easy.

Most programs will handle accessing the port for you. However, if you want to build your own program (and you will, probably), you'll have to learn how to do this with code. Luckily, libraries will exist to help you, and you won't be inventing anything so much as tweaking pre-existing examples.

Now the hard part is getting the control board set up. This is where people get frustrated and give up. That's why I strongly recommend paying money for this part. The control board will probably be something like an ardruino. I prefer using Microchip's sample program, which gives you access to cheap chips (but you have to know something about laying out a board).

Once you get this down, you can start building your own sensors if you want. Most control boards will have ADC and DAC which will help you with that. However, you probably will NEVER have to build a sensor.

OK. now a list of literature to get you started.

Programming Interactivity

making things talk -- the BEST book for beginners. I loved this book. If I still had my copy I'd mail it to you right now.

Practical Ardruino

And web sites:

Sparkfun -- hobbyist electrical engineering with tutorials

Microchip -- sign up for their free samples when you want to build your own boards

http://www.arduino.cc -- Excellent Beginner Boards

http://beagleboard.org -- Higher level control board, suitable for larger (but still small) embedded projects

Digikey -- catch-all supplier of all things electrical

Oh finally, do send me an msg if you have specific questions.

u/mantrap2 · 3 pointsr/robotics

Well, sort of.

But also consider: the first company to actually TRY to handle the dynamics of animal walking with any success was Boston Dynamics and they still are only on dogs and primitive human-like physical dynamics/kinematics.

Why did it take so long? The same reason why smart phones and IoT could never have happened sooner than it did or are now: the technology was either not available at all and its cost were not cheap enough or there was a "special" cognitive barrier to the "right solution".

How does Boston Dynamic do what they do? They looked (in many ways for the first time) at how animals actually walk. The key part is "muscle memory" which is strictly called "distributed computing" in a EE/CS sense.

The key part of this: the Cartesian philosophic model of Brain and Body being two separate things is 100% wrong - humans and animals are NOT two binary parts: mind and body. So they got out of the box on that and looked to biological systems which clearly proved it's a distributed system, not a binary system.

BTW is which also why "Singularity/Transhumanism" is also a lie and will be a very long time, if not forever, out of reach. And never even mind Moore's Law's new monkey wrench in that aspiration.

Animal bodies are NOT primarily controlled by the brain but instead use distributed computing of many "small brains" throughout the body. Muscle memory is a local muscle-nerve phenomena where the local nerves sense muscle flexion/position to "know" what the physical positions, forces and loads are doing as part of a "macro" function for achieving things like standing and walking. That's why you can "walk" without having to consciously think about it (except when you are just learning to walk).

You brain does NOT micromanaged the muscles for most movement. It can do so but only clumsily. Notice when you start a new exercise or sport routine: your brain sucks at movement but you eventually train the muscles and distributed nerves themselves with local feedback paths. Then your brain is out of the picture and everything works far better.

Boston Dynamics uses local electronic sensors, actuators and local microcontrollers to mimic this distributed control. Microcontrollers only got cheap enough yet powerful enough in recent years.

This radically reduces the computational load on the "brain" or top level computing in both their robots and in all (biological) animals.

And because this is biomimicry of a 100s-million-year-evolved-and-proven system, it actually works better than anything man has ever hacked together over the last 20-40 years. So we are only seeing this now.

Combined this though with the fact that most robotic applications that actually pay money are industrial applications or "B2B" which have healthy to great profit margins.

Consumer markets (and thus consumer robotics) are "B2C, which are the worst profit margin product classes. The only worse ones are charity which have zero profit.

So you can not build an industry around consumer robots until you already have something mature that someone else has paid the development costs for. There's never been a humanoid robot market demand so they've never been developed because there's never been money in doing so.

Industrial markets simply do NOT NEED and have never needed humanoid robots. They need practical automation that does NOT need to be pretty or aesthetic but does need to be cheap by their standards and do a specific job well. So that's what most robots looks like today: the market with the money doesn't need humanoid robots; they only need minimally practical and effective robots.

Boston Dynamics primary customers are not consumer (and not industrial): their primary customers are military! DARPA funded especially.

Yes, the military literally wants Terminator robots and Star War Clone Warriors. They LOVED the Terminator movies and the Empire's military capabilities in the Star Wars movies because they imagined having them under their command. They simply dismiss the possibility of the negative storyline or of being "the Baddies" because their lust is so strong they can ignore the cognitive dissonance. "It's just a movie; we far smarter than that! It would never happen like that!"

Technophilia a uniquely American quality and military technophilia is off the charts. It's technology for its own religious sake and concerns about actual efficacy, need or side-effects are not important to them.

(I used to work in a military technology think tank so I know the mindset all too well.)

No other market can support the salaries of the engineers required to do what Boston Dynamics does. Certainly NOT consumers (who are cheap as hell because they really don't have money - at the scale of industry markets or military markets).

Always look at the money required and consider who could actually afford such things. That tells you more about if or why a technology has or hasn't been created yet!

The other issue: energy. The amount of energy required for a human is about 90W. However non-biological robots take FAR MORE energy: literally KWs. There are lots of reasons (read this book to grok why - we don't yet know how to design "fractal" though what Boston Dynamics is doing is sort of that with its "nervous system")

In general humanoid robots are energy pigs to the point of being nearly impractical. Batteries with sufficient capacitor to drive mobile computing only arrived in the last 20 years. And even then, your average lithium battery pack has an energy density comparable to a hand grenade! That's why the TSA has restrictions on them in checked luggage.

The robots that Boston Dynamics eventually deploys to military use will likely required either: 1) a small nuclear reactor or 2) gasoline/Jet-A fuel with turbine. These are required to generate the required electricity to operate them (you saw this detail in Avatar - very insightful and technically correct in terms of required energy and likely fuel source).


u/MITranger · 3 pointsr/robotics

Mechanical engineer, here. There is no substitute for actually building something, which it seems you're already doing. Outside of coursework and training, I would recommend the following resources:

FUNdaMENTALS of Design: You can download the PDF here. Tons of pictures and equations. This was the "course book" I used in undergrad @ MIT, and you can get it for free! Not really organized, per se, but one cool thing about it is that it's meant to be flipped through and printed double-sided. One side is always a birds-eye or holistic view, and the opposite side is always an in-depth and theoretical treatment of the topics. This is a great way to find out, "Wow! This exists, and here's what it's called!"

Mechanical Engineering Design: This is a pretty good primer on mechanical "stuff."

Mechanisms and Mechanical Devices Sourcebook: This is a great resource to keep handy. I look at this ALL the time, especially when I hit brick walls and need inspiration or fresh ideas.

Misumi: Pretty good place to get industrial-grade mechanical components... not sure about the prices for hobby-level stuff. They also have some good literature and tutorials here.


Hope it helps, and feel free to PM me if you have any questions.

Edit: primary != primer

u/schorhr · 61 pointsr/robotics

Hello :-)

Do you have any programming experience? At 11 a bit of guiding is probably required.

While some things can be programmed with a tablet, perhaps even with a graphical / block-based command interface, a "real" computer will be much more versatile. Even a ten year old computer for $20 will be capable of running the tools required. The learning curve might be a bit more steep, but in the long run it will be more flexible to develop own ideas.

There are tons of robot kits; Some are more or less mechanical sets that will run after assembling them.
Then there are simpler electronic kits, e.g. analog circuit line followers. These kits will have limited learning effect, as she won't be able to create own logic, behavior.

Other kits with modules are really nice, e.g. Mindstorms, or one of the Kickstarter projects with modular robot components, but these are rather expensive and that can limit creativity as well.



There's an Arduino Scifi book with very mixed ratings (I read through parts of it, the concept is nice, but it's a bit cheesy), and then there's Sylvia's Arduino guide.

There are also wearables (e.g. Sew Electric; Lilypad), which can be nice.

I am currently working with students age 10 to 17, and I am building simple 2wd robots with them ($8-$9 at Aliexpress). When ordering overseas you can get the micro-controller board, sensor, motor driver and the 2wd chassis for under $15 total. It can be programmed in the Arduino IDE or using a graphical interface (Ardublock, Scratch...). I've posted a part list over there the other day, it's rather simple to connect. It requires only 10 lines of code (or six Ardublock-blocks) to get the robot running and avoiding obstacles.

At the end, it depends a bit on your budget and what you are trying to achieve. For a larger budget with a polished robot kit, instructions and using just a tablet, a Mindstorm or similar kit will be the way to go.

If you have some programming experience yourself, pick up the Arduino robot parts, a book, a part kit 1 2

Most books/tutorials use these components (For example: 1 2 3 [4](https://www.youtube.com/playlist?list=PLYutciIGBqC34bfijBdYch49oyU-B_ttH
) 5 6), they are more or less standard. On the Arduino site or on instructables, examples for each part can be found.

While most guides mention a few basics about circuits, a bit more in-depth knowledge is beneficial :-)

  • "Getting started in Electronics" (kid-friendly and very intuitive, drawings, experiments, circuits; Great for beginners of all ages)

  • or "Practical electronics for inventors" (more in-depth and background information)

    While most things can be made using wireless breadboards and connectors, a soldering iron is always a good idea :-) A good guide makes it easy and fun, and sometimes you don't get around it (e.g. repairing something or soldering two wires to the motor tabs).

    A multimeter to check connections, battery voltage, sensors and such can reduce headaches, and is great for reading resistor values the lazy way :-) A cheap $3 multimeter will do for low-current & low-voltage tasks, but are dangerous around mains. There are also part testers for $10 which can be useful for beginners. Plug a random capacitor, transistor, resitor, LED into the slots, and it will tell you what pin does what, what value the part has, and so on.
u/supracedent · 5 pointsr/robotics

To start out with, use whatever operating system you're most comfortable with. Linux is the most prevalent, but you can do lots of things from Windows or Mac OS if you're more used to one of those.

The best way to familiarize yourself with hardware is just to start playing with it. Get an Inventor's Kit from SparkFun. Learn how to wire it up, make the LEDs blink, the motors spin, and all sorts of stuff.

As far as classes go, learn analog electronics, digital circuits, programming, and some mechanical engineering. Since you want to do neuroprosthetics work, you might also try to sneak in some biology-related from kinesiology, biomechanics, or neuroscience.

Since you said you want to do hardware/software interface, I'd strongly suggest you learn C. Where hardware meets software, it's mostly C or assembly language. Once you move higher up into software side, then you have a lot more freedom with what programming languages you can use.

u/dansni · 8 pointsr/robotics

Hi,

​

I recommend this book "Programming Robots with ROS" by O'Reilly, I've PMed you a copy. You can BUY the bat book new on amazon too for only $40 (link).

Once you know how to use ROS, you can quickly pull together other people's code for perception, manipulation, etc. and build stuff quick!! ROS is like lego for robotics. Learn how to search http://wiki.ros.org/ for existing code and hardware for you to integrate with.

​

Also, don't do it alone! The other thing that really helped me was joining the closest university/college robotics engineering design competition team. Lookup clubs near you. Even though I wasn't a student, they wanted all the help they could find, so I showed up, offered to help and they accepted! I worked with them for 15 hours a week (sometimes more) for a year. It went really well: https://github.com/danielsnider/ros-rover

​

The other key thing is finding the time. I worked part-time, so that I could focus on this on the side, pretty significantly focus.

​

​

u/cr0sh · 1 pointr/robotics

You might be able to mount a small plumbing flange to the four bolts on the wheel (on the side opposite the bearing, perhaps? That, or extend those bolts. Use a flange with a pipe diameter larger than the hub (so it will slip over), and screw a piece of pipe (a pipe nipple, perhaps) in place, and screw another flange on the other side. Mount the whole thing on a steel rod with the ends drilled for cotter pins (to keep the wheels from falling off). On the other flange, mount a pulley or bicycle sprocket. Run a belt or chain to the drill motors (keep the chuck attached, and use that to hold a shaft to mount a smaller pulley or sprocket).

That all probably didn't make any sense - but I hope something came through. You might want to pick up an old first or second edition of "Robot Builder's Bonanza" (3rd and 4th editions don't have the old stuff in them - but they do have go info - I have all the editions, well worth it for the library).

You might also want to pick up this book:

http://www.amazon.com/Building-Robot-Drive-Trains-Robotics/dp/0071408509

u/RKSchultz · 1 pointr/robotics

I recommend this book: https://www.amazon.com/Introduction-Robotics-Analysis-Control-Applications/dp/0470604468

I read it.

Excellent treatment of forward and inverse kinematics, motion planning, etc needed for robotic arm manipulators.

u/shiftposter · 1 pointr/robotics

No, the adafruit PWM board by itself cannot run a stepper motor. It is only capable of producing the signals to drive a motor controller. You will need it to generate ~8 (depending on phases) high resolution PWM signals to run two stepper motors.

For a best performance setup I would recommend this:

STEPPERONLINE CNC Stepper Motor Driver (1/128 micro step) x2 ~$78https://www.amazon.com/STEPPERONLINE-1-0-4-2A-20-50VDC-Micro-step-Resolutions/dp/B06Y5VPSFN/ref=sr_1_3?keywords=stepper+motor+driver+micro+step&qid=1555450028&s=gateway&sr=8-3

NEMA 23 Stepper Motor x2 ~$160

https://www.amazon.com/MOONS-Stepper-Stepping-Cable01891-ML23HS8P4150/dp/B071YZDMPB/ref=sr_1_2_sspa?keywords=nema+23+stepper+motor&qid=1555450115&s=gateway&sr=8-2-spons&psc=1

There are cheaper ones with less resolution (1/32 microstep) and torque like this x2 = ~ $54https://www.amazon.com/Longruner-Stepper-Printer-Segments-LD09/dp/B07FK8NRKL/ref=sr_1_27?keywords=stepper%2Bmotor%2Bcontroller&qid=1555449504&s=gateway&sr=8-27&th=1

​

but moving 15lb with a stepper is solidly moving in on 3D printer / CNChardware territory.

You need to calculate how much rotational torque and holding torque your project needs. Then you will know how much stepper you need. Also how much resolution you are willing to pay for.

u/Dangerzone812 · 5 pointsr/robotics

Here's my 2 cents on ROS.

No. You technically don't need it to do robotics. At all. I will say however that aside from a set of pretty well maintained software packages and a meta operating system...it's a community and a set of standardizations that the field of robotics is starting to need.

As a roboticist, I don't want to constantly have to write low level controllers if I'm trying to develop higher level deep learning. It's the ability to use tools that conform to a community standard that allows others in the community focus on new and more interesting problems. It's what's holding a lot of progress back...because companies and research groups need to constantly write the same stuff in different ways with every project. It's a waste of time.

That being said. Knowing how to survive without ROS will make you a better roboticist. I say it's akin to a mechanical engineer who can order gears and some smaller mechanisms. I don't want to have to design and machine them every project...I want to build bigger systems.

That being said. This is a book that I have read and can suggest. ROS has a really high learning curve. I struggled for a while at first.

https://www.amazon.com/gp/aw/d/1449323898/ref=mp_s_a_1_2?ie=UTF8&qid=1497723319&sr=8-2&pi=AC_SX236_SY340_FMwebp_QL65&keywords=introduction+to+ros+robotics&dpPl=1&dpID=51edbxoCA8L&ref=plSrch

u/ScotticusMaximus · 1 pointr/robotics

If you look around the tech subreddits I know I've seen posts asking this and some good replies of lists of things to get,
but as far as kits of parts, I don't specifically know of any.

I do know of Arduino kits though that come with a few cool sensors and stuff, just google around for "Arduino Kit" and you'll find all kinds,

They can get a bit pricey though.

u/Automation_Elliot · 1 pointr/robotics

Motion is just a generic term.

Trajectory Planning on the other hand is quite the topic, ranging from autonomous navigation, obstacle avoidance, robot poses and transitions, and even G code interpretation.
If your technically minded and ready to take the plunge i would recommend the book "Trajectory Planning for Automatic Machines and Robots" by Luigi Biagiotti and Claudio Melchiorri.

Amazon link below:

https://www.amazon.co.uk/Trajectory-Planning-Automatic-Machines-Robots/dp/3642099238/

​

u/_Qubit · 2 pointsr/robotics

For manipulators, I liked Niku. It's decent, and if you look around the solutions for the exercises are available online.