
8 minute read
Inside Viam’s cloud-based robotics development platform
INTRODUCING THE WORLD’S SMALLEST MULTI-TURN KIT ENCODER
Miniature Package for Servomotors, Stepper Motors, Microdrives
22 mm diameter, 23 mm depth
Full multi-turn functionality with maintenance-free rotation counter - no backup batteries needed!
17-bit resolution, 32-bit rotation measurement range
Self-calibration simplifies assembly
SSI and BiSS C interfaces - no license fees
Miniaturized versions of POSITAL’s 36 mm IXARC absolute kit encoders
See us at the Rockwell Automation Fair, Chicago November 16-17 Booth 1018
Software

Tying it all together is robotics’ implicit reliance on Linux. Linux has kept up with the times remarkably well and is now used on most smart and autonomous devices. It is and will remain the preferred platform for robotics for the foreseeable future; furthermore, Linux’s adoption of Rust in the Kernel signals that it welcomes a future beyond C and wants to engage the wider community. There’s a huge ecosystem of robotics tools and paradigms like ROS and OpenCV that operate best within the Linux ecosystem, and like it or not, most robotics engineers get their start playing around in these sandboxes. Whole companies have based their work on these tools and have done very well for themselves. However, I can attest (anecdotally) that a growing number of engineers in the robotics fi eld are recognizing the need for more powerful, more reliable so ware and are looking for alternative solutions. Those that do are turning to Rust more o en than not. This has led to a budding robotics ecosystem full of enthusiastic developers who just want to write better tools in the most loved programming language around. As enthusiastic as these developers might be, though, these tools by and large aren’t ready for prime-time. They are missing features that most engineers take for granted, or haven’t been used enough to be trusted by the larger community. This means many older robotics companies are still playing it safe, still working in the sandbox full of familiar so ware. Some simply loathe leaving the comfort of C++, Python, or whatever the senior engineer on staff believes is the right language. It’s certainly still early days for Rust in robotics, and it takes an enterprising team to take it on. Yet those who have ventured out beyond the familiar and invested the time have been rewarded for their eff orts with better products. In fact, for the newest generation of engineers, Rust is familiar. And that’s great news. Between old tools, new programming languages, and the rise of automation, robotics is in a time of change. The inclusion of Rust into the Linux Kernel might seem like a small detail, but it couldn’t have come at a better time. The robotics community has been pushing Rust development for years now; for Linux to support, and be supported by, these eff orts is a tide that li s all boats. For the curious: survey a full catalog of open-source robotics solutions in Rust at https://robotics.rs/. RR
About the Author
Brandon Minor is the founder and CEO of Tangram Vision, a sensor fusion company. The Tangram Vision Platform approaches sensors holistically, knitting together LiDAR, CMOS, IMU and depth data all at once. This allows users to stop dealing with sensor support over and over, and instead focus on building what makes their product stand out.
Software
Inside Viam’s cloud-based
robotics development Eliot Horowitz, the co-founder of MongoDB, describes platformhis new venture that aims to simplify the robotics development process.
Mike Oitzman • Editor, The Robot Report
New York-based startup Viam recently announced the public beta release of its new cloud-based robotics development platform. Viam is building a one-stop, cloud-based repository for the tools required to prototype, code, deploy and scale robots. Viam de-veloped its system to be hardware and language agnostic. Viam was founded in 2020 by Eliot Horowitz, who is a co-founder and former chief technology o cer of MongoDB. MongoDB is a popular open-source, cross-platform, and distributed document-based database designed to ease application development. Horowitz was a recent guest on The Robot Report Podcast, where he described in depth what Viam is building. The full interview with Horowitz can be found anywhere you listen to your podcasts. The text below is om that interview and has been edited for brevity and clarity. Why did you start Viam? I le MongoDB in early 2020. As I was looking for the next big thing to work on, everything that interested me kept coming back to robotics, whether it was cleaning oceans, helping forests, fi x-ing potholes in New York or cleaning dishes. Eliot Horowitz co-founded MongoDB, a so -ware company that develops and provides commercial support for the open source NoSQL database. The company went public in 2017.
| Viam

Software
| Viam

So I did what most normal people would do and bought a collaborative robot arm, put it in my liv-ing room, and tried to make it play chess against me. I consider myself a pretty good programmer, but this was a fairly frustrating experience. The robot arm was quite impressive, but writing the software to make it play chess against me was pretty hard. The chess part was easy, but the robotics side was challenging.
I hired a few people and started trying to understand why this was so hard. We were talking to a lot of people in the robotics space, doing research on the kinds of problems people are having. And about 6–12 months after we started, we came up with the thesis that formed Viam.
Is Viam building an operating system or a programming language? Describe the layers of the solution being put together.
It has to be easier for people who are comfortable with hardware and less comfortable with soft-ware to work with software engineers who are less comfortable with hardware. And not just from a communication standpoint, but even from a process standpoint. We’ve got to make it easier for those sorts of lifecycles, too.
We want to be very unopinionated about the software, the languages people use to write code for robots and how they deploy them, and very opinionated about the things that matter. It’s incredibly important that the basic building blocks are clean, it’s simple to use APIs for soft-ware engineers to do everything from basic low-level control to higher-level robotic features.
We also think security and privacy have to be baked in from the beginning. If you’re going to have robots running around your house with cameras that can interact with you and your family, if those things aren’t secure and have good privacy controls, we’re going to have all sorts of problems and adoption will never really happen.
And last but not least, all of these things need to work easily with the cloud and machine learning tools so that you can do things like fleet management and deploy new code without having to rewrite a lot of those building blocks.
Do you envision this as a universal software solution for all types of robots? We think the building blocks are the same whether the robot is in a warehouse, a forest, a house or running around New York. Obviously, the hardware is different, and the software you have to write as the engineer building that solution is different.
A lot of code, infrastructure and plumbing are the same. Our job is to make all the undifferentiated code those companies have to write today go out the window. We’ll handle that. We want the person thinking about washing dishes or picking up trash in New York to only think about the problem.
Think about what’s happened in the web development space. Twenty years ago, if you wanted to build a small e-commerce website, you had to build a lot of this yourself, as well as credit card processing and security. Today, you can go to Shopify and build a website in a day.
The robotics space needs that sort of evolution. We all want the robotics industry to grow 100x. But how do we enable that? How do we provide the tools that make more engineers excited about the space and less scared about starting a robotics company? If you get three 25-year-olds together today, they’re probably not thinking about starting a robotics company. It’s too hard. There aren’t enough success stories. We want to change that.
What types of computing will Viam interact with? We’re very hardware flexible. We’ll run on almost anything, but I think we’ll see a lot of Raspberry Pis, NVIDIA Jetsons and some of the higher-end Arduinos. That’s what people have — they’re affordable and accessible.
What programming languages can developers use on Viam’s platform? For every component, let’s use an arm or a motor, there’s a gRPC protocol specification that we have as open source. With that, you can use it in any language that gRPC supports, which is basically all of them.
This is true both on the hardware integration side and on the software developer side. So let’s say that you have a new robotic arm coming in, and you are building your arm in Rust. You want to use Rust? Great. You want to use C++? Great. You can write to our API and implement the server side of the API in whatever language you want.
On the other hand, the client using the robot can write in any language they want — whether it’s Python, C++, ROS, Go, TypeScript, JavaScript.














