[Dprglist] Robotics "Capability Maturity Model" - Thoughts?

Carl Ott carl.ott.jr at gmail.com
Wed Oct 27 08:44:27 PDT 2021


Chris,

What a really great idea!  Borrow from the CMM - I love it.
https://en.wikipedia.org/wiki/Capability_Maturity_Model

Will take a little time to respond with better suggestions -
but as quick feedback -
That maturity path leans heavily on odometry to measure progress - and
presumes a certain set of objectives.
But I can show that my robot can reach a destination and return 'more or
less' to start completely without odometry- using only timed motor commands
- or a little more accurately by using motor velocity control loops.
I think the CMM is/ should be more about range of skills, and ability to
produce consistent results and data driven process and performance
improvement...

So I'm going to chew on this, and come back with something a little more
abstracted, along the lines of

Level 0
no technical background
never wrote a program
never built mechatronics

Level 1
scattered technical skills or some experience
* changing an existing program or writing a program from scratch
* building a kit with software / mechanics and electronics

Levels 2..10 <needs more thought> ...


Level 11
claims personal responsibility for developing best-in-class robots and
robot technologies from scratch at Boston Dynamics / Tesla / CMU Robotics /
etc...

why 11 levels?  simple: This Is Spinal Tap


- Carl

On Wed, Oct 27, 2021 at 10:04 AM Chris N via DPRGlist <
dprglist at lists.dprg.org> wrote:

> So in part because of questions along the line of "where do I get started"
> from Kumar, and others before him, that we occasionally get, I thought it
> might help to have some sort of capability model in mind that can be
> referenced.
>
> That way one can ask "OK - what level are you at currently?  What level
> are you trying to reach in the near term?"
>
> Below is what I mean.  For now this is focused on software and locomotion
> (but starting with Level 8,  perception comes into the picture)
>
> I have more explanation to go along with each item but wanted to keep it
> brief in this e-mail.
>
> The idea is not to explain how to do these things.  This just represents
> milestones along the journey.  This is really more about having an agreed
> upon vocabulary.
>
> Thoughts?   Is something like this helpful to have written down?  Is it
> already written down somewhere ? (I am sure that in some ways, this is
> captured in some of the material that David Anderson has published over the
> years)
>
> Level 0: I have an API through which I can control the speed and direction
> of the individual wheels. My robot can move!
>
> Level 1: I have an API through which I can reliably get the incremental
> encoder counts for each wheel.  When motors are commanded with a certain
> duty cycle, I can measure what that translates to in terms of encoder
> counts per time unit.
>
> Level 2: I am keeping track of my Robot's X, Y and Theta via
> dead-reckoning / odometry
>
> Level 3: I have taken at least basic steps to calibrate my robot's
> odometry calculations.
>
> Level 4: I can command the robot to move, but using more abstract units
> such as "meters/second" or at least "encoder ticks per time unit"
>
> Level 5: My robot actually moves at the linear and angular velocity I tell
> it to, even when battery voltage is lower or surface friction is higher.
> And because I have completed Level 3, it can go in a somewhat straight
> line when I ask it to.
>
> Level 6: My robot moves in a fairly smooth fashion, i.e. it changes speed
> and direction somewhat gradually. Movement is not "robotic"
>
> Level 7:  I can command my robot to go to a certain X,Y coordinate aka
> waypoint relative to its current location,  and the robot more or less
> reaches that location provided nothing is in the way
>
> Level 8:  My robot can reach the target location, even if there are
> obstacles in the way.
>
> Level 9:  My robot can come back after reaching its destination.
>
> Level 10: My robot can do all this, even if the obstacles are moving
> around quite a bit or if there are other sources of possible confusion
>
>
>
>
> _______________________________________________
> DPRGlist mailing list
> DPRGlist at lists.dprg.org
> http://lists.dprg.org/listinfo.cgi/dprglist-dprg.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dprg.org/pipermail/dprglist-dprg.org/attachments/20211027/5acd5ee7/attachment.html>


More information about the DPRGlist mailing list