Nomenclature
1. Introduction
Flexible continuum robots due to their inherent compliance, better maneuverability, lightweight construction and ability to work in constricted environments in the presence of obstacles are being increasingly used in many applications. A flexible continuum robot is characterized by a main elastic element termed as the ‘backbone’, which can be actuated by various means [Reference Webster and Jones1] such as pneumatics [Reference Trivedi, Lotfi and Rahn2], shape-memory alloy [Reference Yang, Geng, Walker, Branson, Liu, Dai and Kang3], pre-curved beams [Reference Rucker, Jones and Webster4] and cables [Reference Starke, Amanov, Chikhaoui and Burgner-Kahrs5], each with their own advantages and disadvantages. This paper focuses on flexible continuum robots actuated by cables, known as ‘Cable-driven Continuum Robot’ (CCR) for their simple construction and ease of operation. CCRs find use in many fields such as medical devices [Reference Yi Chen and Hunter6], space applications [Reference Tonapi, Godage, Vijaykumar and Walker7], search and rescue [Reference Walker8] and biomimetics [Reference Renda, Cianchetti, Giorelli, Arienti and Laschi9] to name a few.
Figure 1 shows a commonly used configuration of a CCR with multiple circular disks attached to the flexible backbone. Each disk contains holes spaced equally around the periphery of a circle (see inset in Fig. 1), and one or more cables are routed through these holes from the base to the disk at the tip – Fig. 1 shows one such cable routed in a general manner through the holes in the disks. When a cable is pulled (actuated) from the base, the entire CCR deforms and attains a different pose – the right side of Fig. 1 shows the shape obtained when the cable is pulled. The shape of the deformed backbone depends on the routing of the cable and the initial shape of the backbone – a general routing and a pre-bent backbone configuration will lead to more complex shapes and poses, which may not be possible with a straight routing and straight backbone configuration. It is of interest to obtain models of CCRs for accurate estimation of the pose after actuation, visualization of their motion and model-based control.
Various models are available in the literature to predict the pose of the CCR after actuation. A detailed review of the models can be found in [Reference Webster and Jones1, Reference Rao, Peyron, Lilge and Burgner-Kahrs10, Reference Armanini, Boyer, Mathew, Duriez and Renda11]. The earliest and simplest known models are based on geometry and assume constant curvature approximations for single section [Reference Gravagne and Walker12] and multiple sections [Reference Chitrakaran, Behal, Dawson and Walker13, Reference Cobos-Guzman, Palmer and Axinte14]. More sophisticated mechanics-based models using the finite element method (FEM) for a multi-section CCR mimicking a skeletal spine are presented in ref. [Reference Bieze, Kruszewski, Carrez and Duriez15]. FEM, along with Cosserat rod theory [Reference Grazioso, Di Gironimo and Siciliano16], has been used in models, and this shows good accuracy. A statics model based on Euler-Bernoulli beam theory is presented for a multi-section CCR, including the effect of friction and gravity [Reference Yuan, Zhou and Xu17]. Cosserat rod models [Reference Starke, Amanov, Chikhaoui and Burgner-Kahrs5, Reference Rucker and Webster18, Reference Till, Aloi and Rucker19] have been shown to have good accuracy in the prediction of CCR pose with general cable routings and in the presence of external loading. Energy-based methods such as virtual-power based [Reference Yang, Geng, Walker, Branson, Liu, Dai and Kang3, Reference Liu, Zhang, Cai, Peng and Wu20], virtual-work based [Reference Rone and Ben-Tzvi21] and Euler-Lagrange formulation [Reference Gravagne and Walker12, Reference Ehsani-Seresht and Moosavi22] have also been used in the past. Dexterity analysis of multi-segmented CCR has also been explored by observing the Jacobian matrices [Reference Wang and Lau23]. More recently, fuzzy reinforcement learning [Reference Goharimanesh, Mehrkish and Janabi-Sharifi24], control using computer-vision-based image recognition [Reference Na, Lee and Park25] and forward as well as inverse dynamics including obstacle avoidance [Reference Parvaresh and Moosavian26] have also been proposed. It is also of interest to predict the behavior of a CCR when the CCR is in contact with an obstacle and to predict the contact force – see, for example, using rigid body assumption in ref. [Reference Venkiteswaran, Sikorski and Misra27], using screw theory in ref. [Reference Bajo and Simaan28], using geometry and bounding boxes [Reference Li and Xiao29] and using an optimization-based approach in ref. [Reference Ashwin, Mahapatra and Ghosal30].
Most available literature and models focus on CCRs with straight routing due to ease of modeling and faster simulations. However, straight routings and an initial straight backbone configuration cannot achieve all the complex shapes a generally routed CCR or a pre-bent backbone shape can achieve. This paper focuses on a geometry-based optimization technique applicable to a generally routed cable in a CCR and a CCR with a pre-bent backbone. The approach is based on minimizing strain energy due to bending and torsion and only uses Poisson’s ratio of the backbone material. Experimental validation with 3D-printed CCRs with various routings demonstrates good agreement between numerical simulations and experimental results for the CCR shape and pose when the CCR is in contact with an obstacle. An algorithm is developed using the forward kinematics model that can generate pre-bent backbone shapes that can attain a desired shape on actuation. Using the algorithm, a three-fingered gripper, made of three CCRs, is shown to be able to grip a spherical ball, and a separate gripper is shown to orient a cube. The rest of the paper is organized as follows: Section 2 contains the formulation of the proposed optimization-based method. The proposed method is then validated experimentally in Section 3. In Section 4, the algorithm to obtain CCR backbone shapes is presented along with an application to a three-fingered gripper. Finally, in Section 5, concluding remarks and scopes of future work are presented.
2. Methodology
In this section, we present the mathematical formulation of the optimization-based method used for a CCR with a single generally routed cable along the backbone from the base to the tip. This work extends the work on straight routed cable (Ashwin et al. [Reference Ashwin, Mahapatra and Ghosal30]) to include both bending and torsion of the flexible backbone and a pre-bent initial shape of the flexible backbone. A description of the symbols used in this paper is given in Nomenclature at the beginning.
2.1. Optimization-based kinematics of CCR: Theory
The backbone is the main element that determines the pose of the CCR after actuation and can be modeled as a slender beam. For straight cable routing and an undeformed straight beam, the deformed shape of the beam subjected to pure bending can be obtained by using minimization of strain energy. In the case of a general cable routing or a pre-bent shape of the backbone, the strain energy will be contributed by bending along $X$ and $Y$ directions (assuming $Z$ to be tangent to the backbone) and torsion applied on the backbone at the disk attachment points. The strain energy can then be represented mathematically as:
where, $L_0$ is the total length of the backbone, $s$ is the arc-length parameter, $\theta _x (=dx/ds)$ and $\theta _y (=dy/ds)$ are the slope angles of the beam with $x$ and $y$ the displacement in the transverse directions and $\phi$ is the change in angle due to torsion. For the two strain energies due to bending, we assume that the bending is along the plane formed by the local tangents and thus replace it with only one term. With this assumption, the strain energy minimization equation reduces to:
where $\theta$ is the change in the angle made by the tangent vector locally and $I = I_{xx} = I_{yy}$ .
For an isotropic backbone material with constant cross-section, the material and geometrical properties, $E$ , $I$ , $G$ and $J$ , can be taken out of the integration. A further simplification can be done by discretizing the backbone into $n$ equal segments, with the disk numbered from $0$ (base) to $n$ (tip), to arrive at a finite difference form:
where $C$ and $D$ are constants related to $I$ , $J$ $E$ and $G$ . From the relation $E = 2G(1+\nu )$ , $D$ can be shown to be only dependent on the Poisson’s ratio, $\nu$ and the minimizing the strain energy of the backbone is equivalent to minimizing the weighted sum of squared changes in slope angles and torsion angles.
Figure 2 shows the $i^{\textrm{th}}$ section of CCR in between the disk labeled $\{i-1\}$ and, $\{i\}$ before and after an iteration with the backbone curve shown in dashed magenta line. The disks are always perpendicular to the backbone. The tangents to the backbone curve at the center of the disks $\{i\}$ is denoted by $\mathbf{t}_i$ and the normal vector from the center of the disk to the location of the hole (through which the cable passes) is denoted by $\mathbf{n}_i$ – in Fig. 2, $\mathbf{n}_i$ and $\mathbf{n}_{i-1}$ are not parallel due to the general cable routing. Hence, the minimization in Eq. (3) is equivalent to minimizing the weighted sum of squares of change in the angle made by the tangent and normal vectors.
The position vectors $\mathbf{X}_0^i$ and $\mathbf{X}_a^i$ denote the location (from the base) of the center of the disk and the cable on the $i^{\textrm{th}}$ disk and $\mathbf{X}_{(\cdot )}^i$ change to $\mathbf{x}_{(\cdot )}^i$ after an iteration. The tangent vector, $\mathbf{t}_i$ is approximated as the unit vector along $\left (\mathbf{(\cdot )}_0^{i} - \mathbf{(\cdot )}_0^{i-1}\right )$ where $(\cdot )$ can be $\mathbf{x}$ or $\mathbf{X}$ . The position vector for the cable at the $i^{\textrm{th}}$ disk, $\mathbf{X}_a^i$ and $\mathbf{x}_a^i$ are along the normal to the backbone curve at $\mathbf{X}_0^i$ and $\mathbf{x}_0^i$ , respectively. The change in bending and torsional angles, $\Delta \theta$ and $\Delta \phi$ , is found by comparing $\mathbf{x}_a$ (or $\mathbf{x}_0$ ) and its values in the previous iteration, making the change in angles more accurate and local in nature. The change in the bending angle, $\Delta \theta$ , is given by the angle between unit vectors along $\left ( \mathbf{x}_0^i - \mathbf{x}_0^{i-1} \right )$ and $\left ( \mathbf{X}_0^i - \mathbf{X}_0^{i-1} \right )$ , and likewise the change in the torsion angle $\Delta \phi$ can be obtained from the angle between the unit vectors along $\left ( \mathbf{x}_a^i - \mathbf{x}_0^{i} \right )$ and $\left ( \mathbf{X}_a^i - \mathbf{X}_0^{i} \right )$ (see Fig. 2).
The discretized minimization problem in Eq. (3) to find the pose of a CCR ( $\textbf{x}_0, \, \textbf{x}_a$ ) with general cable routing can thus be written as:
Subject to:
Given data: $l_0$ , $l_a^{i}$ , $a$ , $\mathbf{X}_0$ , $\mathbf{X}_a$ and $D$ .
The output of the optimization is the position vectors of the center of all $n$ disks $\mathbf{x}_0^i$ and cables $\mathbf{x}_a^i$ after deformation.
It may be noted that to preserve the length of the CCR and to maintain its geometry, the length between the center of two disks, $l_0$ ( $= L_0/n$ with $L_0$ being the total length of the CCR) and radial distance of the cable, $a$ , remains constant. The minimization is performed iteratively by decreasing $l_a^i$ (length of cable inside the $i^{\textrm{th}}$ section), each iteration using results of previous iteration as $\mathbf{X}_0$ and $\mathbf{X}_a$ values and iterating until the final value of $l_a^i$ is reached.
It may also be noted that the effect of gravity and friction is ignored in this formulation. These are reasonable assumptions since the CCR is lightweight, and we are only interested in kinematics and the friction force at the cable-disk interface is expected to be very small as the motion of the cable itself is small.
2.2. Kinematics of CCR with initially straight backbone
In this section, the kinematics for a CCR is presented, assuming the backbone is initially straight prior to actuation.
2.2.1. Straight cable routing
When the cable is routed straight from the bottom to the tip (parallel to the backbone), the CCR bends in a plane formed by the backbone and the cable. In this case, the length of the cable inside each of the sections is equal. Therefore, if $L$ is the total length of the cable inside the CCR, the length of cable inside each section $l_a^i = L/n = l_a$ . The second constraint in Eq. (5) can be modified to
2.2.2. General cable routing
In the case of general routing, a cable can be routed in an arbitrary path through the holes from the base to the tip. After deformation, the vector from the centers of the disk to the position of the hole through which the cable passes in the same disk remains normal to the backbone curve, and we can write, $(\mathbf{t}_i \cdot (\mathbf{x}_0^i - \mathbf{x}_a^i)) =0$ . It may be noted that the length of the cable between two disks need not be equal but can be found out in the undeformed state from geometry. When the cable is pulled, the lengths in each segment are reduced proportionately.
2.3. Kinematics of CCR with pre-bent backbone
For a backbone that is initially pre-bent (without any pre-tension), with a straight routing of the cable and the backbone curve assumed to be continuous and smooth, the optimization problem remains similar. The key difference is in the choice of $\mathbf{X}_0^i$ and $\mathbf{X}_a^i$ . In this case, initially, both $\mathbf{X}_0^i$ and $\mathbf{X}_a^i$ are chosen the same as the pre-bent shape, unlike straight for the previous cases.
2.4. Kinematics of CCR with obstacles
The kinematics of CCR in contact with obstacles can be easily incorporated by adding inequality constraints [Reference Ashwin, Mahapatra and Ghosal30]. The optimization problem is thus modified by adding the following to the constraints in (5)
where $\mathbf{f}(\mathbf{x})$ is a given data representing the boundary of the obstacle, and $\mathbf{x}_b=2 \mathbf{x}_0 - \mathbf{x}_a$ . The inequality constraints in Eq. (6) ensure that the CCR is never inside the obstacles. The non-zero Lagrange multipliers corresponding to the inequality constraints in Eq. (6) during the optimization procedure will indicate location of contact.
3. Results and discussion
In this section, we present numerical simulation results for a CCR with straight and general cable routing and a pre-bent CCR. The section also presents a comparison with experimental results obtained from 3D-printed CCRs.
3.1. Numerical simulation
The optimization problems given by Eqs. (4)–(5) (along with (6) – if in presence of obstacles) were numerically solved using fmincon function with interior-point algorithm available in MATLAB $^{\circledR}$ . The backbone is assumed to be a smooth $\mathcal{C}^2$ cubic spline and the normals and tangents are obtained from the equation of the spline. Each step involved solving 18 coordinate points simultaneously. The variable $l_a^i$ was gradually decreased, and the solution from the previous iteration served as the initial guess for the next iteration till the final $l_a^i$ is reached. The simulations were conducted on a PC with an Intel processor (2.60 GHz) and 24 gigabytes of RAM. Details of the dimensions of different CCRs and their cases are presented in the following section. The average simulation time for each simulation is listed in Table I. A sample simulation result corresponding to case – General 1 is shown in Fig 3. For the case of pre-bent CCR, the experiments and the optimization problem were solved in 2D for ease of construction and computation.
The accompanying simulation Video 1 (Link at the end) shows the movement of the CCR for various cases when the cable is pulled gradually. In each case, the optimization-based forward kinematics equation (4)–(6) is solved starting with undeformed value of $l^i_a$ , gradually decreasing the value linearly and obtaining the backbone positions, $\mathbf{x}_0^i$ and the cable positions, $\mathbf{x}_a^i$ . In each case, the previous position is kept as the initial guess to the optimization problem.
3.2. Prototype
For the purpose of validation of the optimization-based method, prototypes were 3D printed using Acrylonitrile Butadiene Styrene (ABS) and Polylactic Acid (PLA) materials (see Fig. 4(a) for one such prototype). Poisson’s ratio ( $\nu$ ) of $0.39$ for ABS and $0.35$ for PLA, close to literature-reported values [Reference Zou, Xia, Liu, Hu, Hou, Hu and Shan31, Reference Tognana, Montecinos, Gastien and Salgueiro32], was used. The prototype is 182 mm long, with $9$ sections ( $10$ disks) and with a 2.5 mm diameter backbone. Each disk is 2 mm thick and contains $12$ holes of 1.25 mm diameter arranged around the periphery of a circle of radius 8 mm centered at the disk center. For the pre-bent CCR, feasible backbone shapes, ensuring $\mathcal{C}^2$ continuity of the backbone and perpendicularity of disks to the backbone at attachment points, were chosen.
Thin high-strength nylon wires are used as cables, which are routed via the holes, and standard weights (see inset of Fig. 4(a)) were used for pulling (actuating) the cable. The numerical results of the model are compared with $9$ experiments with different cable routings and pre-bent shapes. The details of the routings are listed in Table I where the ‘Cable position’ denotes the hole number through which the cable passes according to Fig. 4(b) starting from the base till the tip and $l_a^i$ is measured by using an image processing system.
3.3. Experimental validation
Experiments on each case listed in Table I are carried out on the prototypes. An image is captured using a camera before and after deformation – one from the front and one from the side for 3D views. The undeformed CCR image is then used to calculate the appropriate scaling and calibration. The results obtained from the simulations (solution of the optimization problem) were then superimposed on the captured images (after deformation) using proper calibration and scaling (obtained using image processing), taking the base as the origin. The process is repeated for both views, facilitating comparison in 3D. The simulated points on the backbone are marked using red squares, and that of the cables using blue squares. The root mean square (RMS) errors for the backbone (centers of the disks) are presented in Table I.
3.3.1. Straight and general cable routing
For the case of straight and general cable routings (Figures 5(a)–(e)), the simulated results match very closely with the experiments. The maximum RMS error in these cases is 3.02 mm, which is less than 1.68 $\%$ of the total length of the CCR. It is to be noted that the result for helical cable routing is shown with two views. For the rest, only the front view is presented.
3.3.2. Pre-bent backbone
For the case with a pre-bent backbone, two pre-bent shapes of the backbone were chosen as mentioned in Table I (see Figures 6(b) and 7(b)). It was ensured that the disks were perpendicular to the backbone at the interface. The experiments were repeated for both sides of the backbone, which are shown in Figs. 6 and 7. In both the figures, the image in the middle is the unactuated state of the CCR (cables are seen to be slack), the figure to the right and left is the CCR actuated using the cable to the right and left, respectively – the actuated cable is not slack. As seen from the figures, the simulated results are in good agreement with the experiments with a maximum RMS error in the position of the backbone of 1.21 mm, which is less than 0.68 $\%$ of the total length of the CCR.
To validate the pose of the CCR with a pre-bent backbone in contact with an obstacle, a cylindrical obstacle of 30 mm diameter is placed in the plane of motion of the CCR with the backbone for the case - Pre-bent 2. The center of the cylinder is at a distance of 16 mm to the left and 136 mm above the base disk center. Upon actuation, the 3rd disk from the top comes in contact with an obstacle, as seen in Fig. 8(b). The Lagrange multipliers, corresponding to the inequality constraint of the third disk from the top, show a significantly large non-zero value (see Fig. 8(c)) and are thus consistent with the experimental observation. It can also be seen that the simulation results (blue and red squares) match the experimental profile very closely with an RMS error of 0.79 mm in the position of the backbone, which is less than 0.44 $\%$ of the total length of the CCR.
Potential sources of error in the experiments include cable extensions due to loads, surface defects, material anisotropy in 3D printing, friction between cables and disks and setup errors in the image capture system.
4. Algorithm to generate desired pre-bent shapes of CCR
Starting with the formulation from Section 2, the desired final shape of the CCR is defined by backbone node points $\mathbf{x}_{0d}$ (disk centers). The cable’s desired location, $\mathbf{x}_{ad}$ , is determined based on normals. The error between $\mathbf{x}_{0d}$ and $\mathbf{x}_{0}$ (output from the forward kinematics model) is minimized by an optimization routine, for the specified cable pull ${\Delta }_l$ . The main steps to generate pre-bent shapes of a CCR that can attain a desired shape upon cable actuation are presented in the algorithm below.
Algorithm Pre-bent
-
1. Input the desired shape of the backbone as a space curve originating from the origin $\left ( 0, 0, 0\right )^T$ with arc length $L_0$ .
-
2. Select appropriate values for disk radius $a$ , number of segments $n$ , desired error $e_d$ and the cable pull $\Delta _l$ .
-
3. Starting from the origin, find points on the curve separated by a distance $l_0$ (= $L_0/n$ ) from each other, which are the desired positions ( $\mathbf{x}_{0d}$ ) of the disk on backbone.
-
4. Obtain the normal vector to the given space curve at the disk centers, find the positions for the cable on the disk $\left ( \mathbf{x}_{ad} \right )$ at a distance $a$ from the disk center lying along the normal.
-
5. Minimize
(7) \begin{equation} \mathop{\textrm{arg min}}\limits_{\mathbf{X}_{0}}\,\, \displaystyle{e = \sum _{i=0}^{n}\,\lVert \mathbf{x}_{0d}^i-\mathbf{x}_{0}^i\rVert ^2} \end{equation}where $\mathbf{x}_0$ is found from the forward kinematics equations (4) – (6), which also require the initial shape of the backbone denoted by $\mathbf{X}_{0}$ .Subject to:
(8) \begin{equation} \sum _{i=0}^{n}\,\Vert \mathbf{x}_{0d}^i-\mathbf{x}_{0}^i\Vert ^2 \leq e_d \end{equation}Given data: $a$ , $n$ , $l_0$ , $\mathbf{x}_{0d}$ , $\mathbf{x}_{ad}$ , $\Delta _l$ and $e_d$ .
-
6. Output – Desired pre-bent shape $\mathbf{X}_{0}$
The algorithm Pre-bent enables accurate modeling of CCRs for gripping or following obstacle contours as shown for the case of a three-fingered gripper, with each finger pre-bent, for gripping a sphere (see Section 4.1). The algorithm Pre-bent is shown schematically in Fig. 9.
Fig. 10 shows the results obtained for one implementation of the algorithm Pre-bent. The desired shape is shown in black, and two different solutions of the algorithm are shown for the same initial guess and desired shapes, but with a change in $\Delta _l$ .
4.1. Application of pre-bent, and generally routed CCRs to three-fingered grippers
For demonstration, the algorithm is used to design a CCR that can grip a sphere of diameter 112 mm (chosen arbitrarily). Three identical CCRs are designed such that the final shape matches with the contour of the sphere and are placed ${120}^{\circ }$ apart, 42 mm from the center. The sphere’s center is located 110 mm from the base. The ${\Delta }_l$ was chosen to be 3 $\%$ and $e_d$ was set to 1 $\times 10^{-10}$ $\textrm{mm}^2$ . Snapshots in Figure 11(a)–(b) show the simulation at the start and at the end. Simulations used fmincon from MATLAB, taking approximately $214$ seconds. The initial guess was a straight backbone with a circular obstacle representing the ball’s position.
For experimental validation, 3D-printed CCRs and a sphere were positioned according to the calculated locations. Servo motors were used to actuate the cables in the CCRs. The accompanying Video 2 showcases the experimental setup, gripper motion range, successful gripping, holding and timed release of the ball. Snapshots from the video are displayed in Figure 11(c)–(d). It was observed that the CCR closely followed the ball’s contour, as intended by the algorithm, with contact location determined by monitoring Lagrange multipliers associated with obstacles. Additionally, the algorithm is versatile in designing an appropriate number of CCRs for gripping asymmetrical objects, ensuring multiple points of contact for improved grasping.
Figure 12 shows a three-fingered CCR-based gripper used to grip a cube and manipulate the gripped cube (see accompanying Video 3). In this case, the cables are routed in a general manner, and more than one cable is pulled in one of the CCRs. For this demonstration, the cube is assumed to be in a pre-determined position and possible points of contact are identified. Using this point of contact, an optimal configuration for the CCR is derived to ensure effective gripping. Using this desired shape and the algorithm provided in ref. [Reference Mahapatra, Ghosal and Okada33], a valid general cable routing is obtained. Using the cable routing, the motion of the CCR is determined similar to Video 1 and checked if the motion will result in a twist of the cube once the cables are actuated beyond contact. A general algorithm to obtain the actuation of the cable to obtain the desired position and orientation of a gripped object is a work in progress.
5. Conclusion and future work
In this paper, a geometry-based optimization method for obtaining the kinematics of a CCR with general cable routing, pre-bent backbone shape and the presence of obstacles is presented. Only the geometrical parameters and the Poisson’s ratio of the material are used – avoiding the need to obtain or estimate other material parameters. The input to the formulation is the amount of cable actuation, which is much easier to measure than the applied load, used in most formulations. The optimization approach allows one to locate the contact with an obstacle by observing the Lagrange multipliers corresponding to the obstacle. The formulation is validated by experiments performed on 3D-printed CCR prototypes. The simulated results are in good agreement with the experiments with a maximum RMS error (for the backbone) of less than 1.68 $\%$ of the total length of the CCR. The formulation can accurately predict the kinematics of CCR post-contact with an obstacle, as shown in the experiments.
An algorithm utilizing forward kinematics for pre-bent CCR is presented to generate backbone shapes that achieve prescribed shapes upon actuation. This algorithm accurately models CCRs that closely follow object contours and enable effective grasping with multiple contact points. Experimental validation demonstrates a three-fingered gripper successfully grasping and holding a spherical ball and different shaped objects. Work is ongoing to develop an algorithm for determining actuation for desired object position and orientation. Obtaining the configuration of the robot (routing) when a desired shape needs to be achieved is also a work in progress.
Acknowledgment
The authors thank Dr. K. P. Ashwin from BITS Pilani K.K. Birla Goa Campus for many discussions and suggestions during this work. The 3D printing of the CCRs was done at the Smart Factory at the Center for Product Design and Manufacturing, and the Makery Lab at the Robert Bosch Center of Cyber Physical Systems at the Indian Institute of Science, Bangalore.
Author contributions
SKM and AG conceived the idea and devised the formulation. SKM conducted the simulations and experiments. SKM and AG wrote the article. AG supervised the work.
Financial support
This research received no specific grant from any funding agency, commercial or not-for-profit sectors.
Competing interests
The authors declare no competing interests exist.
Ethical approval
None.
Supplementary material
The supplementary material for this article can be found at http://doi.org/10.1017/S0263574724000651.