Software

Bram Demeulenaere – Software

Time-optimal trajectory planning for robots

Diederik Verscheure has developed a free matlab code that implements some of the research results concerning time-optimal and time-energy-optimal path planning for industrial robots. Please contact us if you need support to implement these results in an industrial context.

pyKurv, a stand-alone Python software for cam design

Based on our extensive experience in cam design, we have developed a stand-alone software for the design and analysis of cam mechanisms.

current status

in beta-release and being tested by one of our industrial partners. Currently it can be thought of as a trimmed-down version of the software WTCM/CAM , but with an intuitive graphical user interface. WTCM/CAM was previously the cam design software standard in Belgium, but development has stopped since five years or so.

license policy

We have not really decided yet: it looks as though the basic version will be free, while specific developments for companies will be licensed.

programming language

Python was chosen as a programming language since it is free and platform-independent, offers strong support for integration with other languages and tools (such as CVXOPT, a free Python package for convex optimization, and CVXMOD, a free Python-based tool for expressing and solving convex optimization problems), comes with extensive standard libraries, and can be learned in a few days.

features

Click here for a few screenshots.

  • motion law module: creation of cam curves based on standard cam curves: cycloid, 3-4-5 and 4-5-6-7 polynomial, (modified) trapezoidal acceleration, modified sine, Fourier segments (Gutman, Weber)

  • kinematics module: determination of cam contour, cutter path, pressure angle, radius of curvature for

    • rotating cams with translating roller follower

    • rotating cams with oscillating roller follower

  • inverse dynamics module: determination of contact force, driving torque, Hertzian pressure and contact patch dimensions, bearing life for

    • rotating cams with translating roller follower (force and form closed)

    • rotating cams with oscillating roller follower (form closed)

development plans
  • adding additional features to kinematics and inverse dynamics modules based on industrial demand;

  • extending motion law module with recent results concerning design of dynamically optimal motion trajectories for cam and servo systems;

  • creating a fourth, forward dynamics module to verify vibration of the follower train, based on 1-DOF or 2-DOF models.

what’s in a name
  • “py”: a prefix, typically used for Python-based applications

  • “Kurv”: the German word for ’cam mechanism’ is Kurvengetriebe, while it also refers to our plan to add advanced spline-based motion law (curve) optimization