Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Venom: All Terrain Autonomous Quadruped (github.com/chinmaynehate)
134 points by ameschin on May 27, 2020 | hide | past | favorite | 55 comments


It has the wrong kind of motors to be interesting. Servos are a dead end, imo.

The interesting robot projects now are the ones embracing brushless motors with encoders and dynamic walking gaits. It’s the same components that are used in drones.


A brushless motor with an encoder and a feedback loop is a servo. It's just not a crappy integrated RC model servo motor assembly.

The (ab)use of the term "servo" is a major pet-peeve of mine.


Sure. I should have written "rc-servo". But in this context it was not ambiguous and the point stands - anything that uses rc-servos is a dead end. Personally I'm also skeptical of series elastic actuators - it seems like a half-assed solution where the proper solution is to embrace full direct-drive digital control of electrical <-> force conversion.


The "problem" I've seen with a lot of walking robot projects is, where an RC car needs 2 motors and a quadcopter 4, most "interesting" walking robots need 12 - which means they instantly have to start making compromises due to cost and weight.

This robot ain't exactly large - but it's already needed $450 worth of Dynaixel AX-12A servos.


We have a hexapod (18 Dynapixels) at work ... apart from giving demos to visitors it's not used at all. Gait patterns and (inverse) kinematics are a solved problem ... dynamic gaits are becoming more mainstream now, but those require motors that are reasonably backdrivable. Maybe the Dynapixels can be configured to do that, but I think the high gear ratio will prevent that.


I'm interested in Robotics (I made a simple ping-pong ball collector a while back https://sendcat.com/dl/D9DI15MAOjhKMFJYLJLADj64ywyU2qGWaKMSl...). Are there places I should go or things I should read to find out more about the latest developments in robotics in general, or the use of brushless motors with encoders/dynamic walking gaits specifically?


Nice build :) Have you checked out EasyEDA + jlcpcb? It can improve the electronics aspects of robot projects.

I searched a bit now to see if any new projects have shown up. Came across this one: https://hackaday.io/project/167845-mjbots-quad Could maybe be interesting, but I haven't looked into it.

Here is a chinese motor manufacturer that makes more sane motors: http://www.gyems.cn/product.html

Getting a drone or gimbal working properly from scratch is a lot of work. And these dynamic walking systems are more complex endeavors because there is less info out there. So I would recommend to find some project with people who seems talented and has a nice atmosphere and then get building :)

edit: Ratholed on this, here is a nice blog with inspiration (scroll for lots of awesome) https://build-its-inprogress.blogspot.com/


> Nice build :) Have you checked out EasyEDA + jlcpcb? It can improve the electronics aspects of robot projects.

Thanks! Yeah, the electronics is a bit gross. This build was probably 6 years ago perhaps? I got it to the point that it worked and then it was kinda "done" and all that was left was polish, but it was really a toy so there wasn't much point and I left it.

Planning on building something for slug and snail control (NW UK, they can be a problem), and cat/badger/squirrel scaring in my garden (they dig up things). Will likely make use of PCBs with this so will check out the links.

> Here is a chinese motor manufacturer that makes more sane motors: http://www.gyems.cn/product.html

So I did some digging and found this guy:

https://www.youtube.com/user/SkyentificTube/videos

He does a some testing of some Turnigy motors (a bit like this: https://hobbyking.com/en_us/turnigy-aerodrive-sk3-6374-149kv..., there's a whole range) which looked cool, and he was using an odrive controller https://odriverobotics.com/ which also looked pretty handy, so there's some stuff to check out there, but he also did some tests with some gyems motors and they looked great:

https://www.youtube.com/watch?v=smQJeg87ff8

> dynamic walking systems are more complex

Given the speed of slugs and snails I am going to probably go for a less dynamic movement style. Less force, smaller motors, longer battery life. Though I like the idea of trying to program dynamic movement. The physical build for my more static movement style shouldn't be too hard to do.

> https://build-its-inprogress.blogspot.com/

Thanks, this is great!


Just going to share a YouTube channel (Skyentific) that I have learned a ton from when it comes to the considerations of sizing and power consumption when selecting motors for robotics. https://www.youtube.com/channel/UCcgqJ1blFKqbC2bWGY4Opmg


Servos (hobbyist level) are a dead end in this application, but even marginal quality BLDCs are quite a bit more expensive. These servos can be swapped out for BLDCs in a retrofit, so I think this is a good starting point that can be expanded on.


Can you do without an encoder for legs? Maybe attach an IMU like you do for gimbals? Or measure current?


No. For these motors to do their job at these low speeds you need to know where the windings are relative to the magnets so you can apply a controlled force instantaneously.

Btw, this is true for gimbals too, and good gimbals use sensors.


Could you provide some examples of these projects?



Here is an open-source, 3D-printable quadruped with (almost) direct-drive actuation:

https://open-dynamic-robot-initiative.github.io

Paper: https://arxiv.org/pdf/1910.00093.pdf

Videos: https://www.youtube.com/watch?v=MkXU-5Oupg4


Here are two:

MIT Cheetah: https://biomimetics.mit.edu/

Unitree/laikago: http://www.unitree.cc/


Why are they a dead end?


Too slow, too weak, too inefficient, too much backlash, not backdrivable, no energy regeneration, no built in force sensing.


Add sloppy controls to the list.


They aren’t sexy, isn’t that it — you want a sexy robot and RC servos don’t cut it


It's not that rc-servos are not sexy. It't that they suck. For a number of specific reasons well listed in other posts here.

RC-servos are very cheap and very easy to use, so there are many projects using them. But there is no way to make a good robot out of them. It's a local maximum.


All true. But they are cheap, available, and have well understood limitations. Which means you can design and build your project quickly and cheaply, then upgrade to brushless motors with encoders or whatever when you have the time and funds. I think from that aspect they are a great way to get a project started without flinging cash at it.


IMO the only inherent issues with hobby-style servos are lack of feedback (force and position) and lack of direct torque control. The rest of the complaints are features of all cheap positioning elements and aren't unique to hobby servos.


A video of it in action: https://youtu.be/NFO0sFC34yE?t=112


Reminds me of Genghis [1], the granddaddy of walking insect-bots made by Rodnay Brooks back in 1989. Brooks' robot had a vary cool approach to learning to walk where he "removed all cognition processors from Genghis and left only the sensors and the code/hardware to allow it to walk"

[1] https://en.wikipedia.org/wiki/Genghis_(robot)


Cool project! Code is quite easy to follow, IMO.

Somewhat off-topic, but I find the name somewhat amusing. I would never seriously hold a name against a project, but I’m always curious when one is named something a bit...edgy, without an obvious reason - and at the expense of making it harder to find!


On the front page at the moment are projects named:

Bear - minimal blogging platform - it's a play on bare

Venom - all terrain quadruped - snakes are all terrain?

Zoox - self-driving-car tech - half the other self-driving-car companies have nonsense names

Facebook - I still find this a smart name for the service

Looking Glass - 3D display - confused me for a second with https://en.wikipedia.org/wiki/Looking_Glass_server

Surfboard - audio feature extraction using ML - nonsense name

Plywood - cross-platform C++ framework - nonsense name, okay I sort of get it

I work in the steel fabrication / construction industry, so the material / construction technology related names catch my attention a lot and I wonder about them.

Naming things is hard. Naming things that didn't exist last week must be even harder!


Meanwhile in hardware we're sitting around with German-esque word trains like Multi-pixel photon counter (MPPC), successive-approximation to digital converter (SAR-ADC), parallel-multidimensional digital signal processing (mD-DSP).

It seems to be the software engineering world, out of all the engineering disciplines, that loves to draw upon fanciful names the most.

I used to troll an old housemate who was in web frontend by making up framework names. "Oh you're using Node.JS? Was talking to someone who's migrating to Polenta, with Shibboleth on the backend." He never did quite catch on.


The 4kW laser cutter I operate at my regular employment is aptly named by the manufacturer:

The Laser


You’d have to be pretty quick off the mark to respond with:

Shibboleth? Isn’t that still in private beta?


I realized after a while that any name I made up would invariably be an actual JS package, perhaps even a full fledged framework. Shibboleth is in fact v0.1.4, available via npm. https://www.npmjs.com/package/shibboleth


Baaaaahaha

0_____0‘s Law of Software Framework Names


> Venom - all terrain quadruped - snakes are all terrain?

More like a [venomous] spider than a snake I think.


Obvious now you point it out.


"Naming things is hard. Naming things that didn't exist last week must be even harder!"

Indeed, this is not something many people appreciate...

Salute!


Heh, I guess you’re right. I’m certainly no better at naming things. My recent personal projects seem to be named of fictional characters - I’m not sure why Ollie, from The Thick of It, reminded me of Python error handling, but that is now the name of a class that un-catches exceptions, so you can handle them yourself, like an anti-fuckitpy.


I think a lot of the SV/YC/"Startup" things deliberately choose nonsense names because it will make it "easier to pivot" when they decide that actually AI middleware for generating Hawaiian shirt patterns is a dead end and they should be making a cloud service for taco recipes instead.


Eh, I don't really care about 'edgy' but it bothers me that so many projects, especially when those projects are computer commands, are hard to search on. Like, ss or ip. I mean, in those cases, they're central enough to my world (I'm a sysadmin) that it's worth just memorizing to the point where I rarely need to look it up, but looking up an 'ip' command is way harder than looking up an 'ifconfig' command. Not everyone writes "Iproute" before pasting their 'ip' command.

I mean, I think it's less of a problem for projects that are not commands... really my whole complaint is that a lot of the commands in my universe used to be super unique; you aren't going to get a lot of off the wall results for lsof or ifconfig; but ss and ip? yeah, even when you limit it to my work context, you get conflicts on those.


I'm not the best at this Linux foo, but wouldn't aliasing certain commands that you need be helpful?

I mean if your going to go through the hassle of looking up that certain command, might as well make it easier on future you to alias that foo while you have it fresh in you mind.


This is where it’d be great to be able to limit the context of a search.

IP but not Intelectual Property

SS but not Secret Service


In DuckDuckGo:

    IP -"Intellectual property"


What works for me on the world’s most popular search engine is “linux” + name of command. YMMV.


Not to mention the acronym for all-terrain autonomous quadruped is pronounced 'attack'!


this seems pretty much a copy of the Metabot: http://www.metabot.fr/ which is also open-source and has existed for more than half a decade


There are a whole load of very similar looking robots out there, an image search for "quadruped robot" or "hexapod robot" will yield loads of them.

It's great that someone is getting into robotics, but this does have the vibe of someone over-selling a hobby project.


Yeah the front page definitely tries to sound like they just invented the quadruped.

I’m all for people getting into robotics, but I’d much prefer a more natural/honest intro to projects like this. “I saw all these cool quadruped projects and wanted to make my own to learn more about them”.


Very interesting. This might have some military applications as well. Could be used for recon footage in difficult environments. Such as, mountains and deserts.


what is "all terrain" eg. snow, I guess if the snow is packed

still that's an arm chair comment from me, I have not personally built my own walking robot


In this case I think it means "a slight incline" https://youtu.be/NFO0sFC34yE?t=111 :)


Nice project. The code is well written.


I want one to carry my groceries :D


Why does it move so slowly?


probably because it's not using special brushless actuators rather regular servos also the platform design does not seem fast eg. compared to the shape of a dog or a human


There are definitely faster actuators but I'd guess it's also the control loop(s) filtering out transients from the stepping motion. The backlash in the geartrain, flex in the body and gritty/chunky motion from the servos probably makes a mess in a typical six axis imu.


I guess what is "fast" though, I suppose it is not impossible for this particular design(that looks like it would wiggle/swivel?) due to the horizontal moving main joints. But I have not done calculations to prove that(which would be faster horizontal or vertical swing)

edit: which is interesting arguable horizontal join/swing design is less work




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: