Robotics Engineer for Touch-Labour Robotic Applications

R.O.B.O. 

📍 Leuven, Flemish Region, Belgium, Belgium 🇧🇪

full-time
mid-level
Posted —

Key Skills

roboticscontrolvisionmanipulationC++

Industry

RoboticsAerospace

Job Description

Common Sense Robotics is an young startup based in Leuven, Belgium. We build robot systems for

"touch labour" tasks in the manufacturing industries where the cost of failure is high and products and

processes can be severely regulated; for example, aerospace, automotive and construction. These

industries expect every robot decision to be traceable, auditable, and explainable. We now need extra

brains to develop the lower control levels of our "Task Execution System": a white-box, ontology-driven robotic skill stack designed from the ground up as a fully explainable "foundation model" for task specification, world modelling, skill generation, motion control and task-directed active perception. The stack is built on the solid foundations of advanced control theory of force sensing and real-time computer vision for robotic manipulation, exploiting state of the art that in some cases dates back already five decades. That approach allows us to integrate deep and reinforcement learning policies with time-proven control theory and symbolic reasoning, to realise highly reliable touch labour task executions that are fully predictable, inspectable, traceable and explainable.


Your Role: You will work in a small team of junior/medior robotics engineers directly under the

supervision of our senior robotics engineer CTO. The team develops a repository of dozens of

"force/vision motion primitives" in the form of small-granularity components, for a growing number of

task envelopes that have "vision-guided touch labour" at their core. The targeted applications are

complex but high added value (dis)assemblies in manufacturing, aerospace and construction, aiming

at 100% success guarantees, traceability, and per and post factum explainability. Each implementation

of a motion primitive must also be 100% instrumentable (via automatic tooling developed by the

company's Software Engineers) such that they can be reconfigured, inspected and monitored at

runtime. The motion primitives are designed to be composed together (semi automatically) into

multi-level, multi-agent application architectures, with one, two,..., a dozen robotic arms and mobile

platforms that continuously and consistently share their workspaces, their task execution progress,

their perception, and their shared semantic world model. Each motion primitive implementation must

be "aware" of its role in, and contribution to, the progress in the task executions in which it participates. That situation awareness must work on multiple levels of abstraction: starting with awareness about the capabilities and the status of the electrical actuators, linked closely to the awareness of the capabilities and the status of the robotics hardware and the force and vision perception, all interpreted in, and configured by, the awareness of the properties, requirements, intentions and constraints of the executed task and the application's policies of safety, progress, explainability, and traceability.


In summary, you will:


● Design, implement, document and formalize kinematic and dynamic control loops, with force and

vision as the two most important and highly integrated sensing modalities.

● Take lead responsibility for the development and documentation of a dozen or so "motion

primitives", in one or two "task envelopes", and with maximum "explainability".

● Integrate your work with that of your colleagues responsible for the symbolic reasoning, the

automatic code generation tools, the multi-agent and real time software architectures, and the

development of applications and products.


Your ideal skill set consists of, in the order of importance:


● You have implemented cascaded control loops for manipulator and mobile robotic systems, from

torque controlled Quasi-Direct Drive motors to hybrid vision-force based object manipulation on a

mobile manipulator.

● You know how to interface cobots and Quasi-Direct Drive robots, via USB, CAN, Ethernet or EtherCat,

inside a multi-threaded C process.

● You can identify the effects or friction, mechanical play, and compliance from time series data

traces of a motion controller, and you can compensate for them in feedforward, to the extend that is

feasible, predictable and necessary.

● You know the ins and outs of kinematic solvers for under- and over-actuated robots; preferably also

the ins and outs of recursive Newton-Euler dynamics solvers.

● You know how to implement three-level robotic architectures (with tactical, reactive and motion

control levels) as hybrid-event dynamical systems, linking continuous time and space Model

Predictive Controllers, Moving Horizon Estimators, Sliding Mode and Energy Shaping algorithms, to

discrete decision making via Finite State Machines and Petri Nets.

● You are experienced in Git, C/C++, and Python, with implementations in realtime, low-latency, and

distributed software architectures.

● You can assess the impact of adverse lighting conditions, shadows, occlusions, and specular

reflections on computer vision algorithms integrated in a low-latency motion control loop.

● You know what the impact is on distributed control systems of the "CAP Theorem" and the

"Fallacies of distributed computing".

● You can explain, with concrete hands-on experience examples, the limitations of the myopic use of

only convex QP solvers in control and estimation.

● You can convince opinionated customers, in five minutes and with unrefutable technical arguments,

that ROS is never part of the solution, but always the start of the problems.

● You use Linux and other industry-grade open source software in all of your professional activities.

You can tell the difference between a professional and an amateur software project.

● You can write documentation in semantic HTML.


If this matches your expertise and ambitions, we look forward to your application.


How to apply: We don't review generic CVs. Instead, send us a short application document, written

specifically for this role, explaining why you're a good fit and proposing concretely how you would

approach one or two of the challenges described above. email: [email protected]