A shape control and object manipulation technique based on function approximation for robotic surfaces
Yuchen Zhao, Yuxin Chen

TL;DR
This paper introduces a new control method for robotic surfaces that maintains constant refresh times regardless of the number of actuators, enabling efficient shape control and object manipulation.
Contribution
A novel control method with constant refresh time and a modeling strategy for robot-object interaction forces are introduced.
Findings
The proposed method achieves system size-independent refresh times through distributed control.
Experiments show good agreement between theoretical predictions and shape approximation results.
The feedback controller effectively validates the model for object transportation tasks.
Abstract
Robotic surfaces consisting of many actuators can change shape to perform tasks, such as object transportation and sorting. Increasing the number of actuators can enhance the robot’s capacity, but controlling a large number of actuators is a challenging problem that includes issues such as the increased system-wide refresh time. We propose a novel control method that has constant refresh times, no matter how many actuators are in the robot. Having a distributed nature, the method first approximates target shapes, then broadcasts the approximation coefficients to the actuators and relies on itself to compute the inputs. To confirm the system size-independent scaling, we build a robot surface and measure the refresh time as a function of the number of actuators. We also perform experiments to approximate target shapes, and a good agreement between the experiments and theoretical…
Genes, proteins, chemicals, diseases, species, mutations and cell lines named across the full text — each resolved to its canonical identifier and authoritative record.
Click any figure to enlarge with its caption.
FIGURE 1
FIGURE 2
FIGURE 3
FIGURE 4
FIGURE 5
FIGURE 6
FIGURE 7
FIGURE 8
FIGURE 9
FIGURE 10| Name | Expression | Name | Expression |
|---|---|---|---|
| Identity | a | Plane |
|
| Parabola |
| Checkers | Checkerboard pattern |
| Peak | raise a single module at | Random | Random uniform distribution |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsRobot Manipulation and Learning · Soft Robotics and Applications · Modular Robots and Swarm Intelligence
Introduction
1
Robotic surfaces (Liu et al., 2021; Walker, 2017) typically consist of many actuation modules arranged in an array and can serve as intelligent conveyors (Uriarte et al., 2019; Chen et al., 2024), adaptive structures (Wang et al., 2019; Salerno et al., 2020), molding tools (Tian et al., 2022), treadmills (Smoot et al., 2019), shape displays, or haptic interfaces (Leithinger et al., 2014; Nakagaki et al., 2019). The capability of a robotic surface is related to the number of actuators it has as the robot can perform multiple tasks in parallel with more actuators. Developments in soft robotics also bring new solutions to meet the demand of actuators (Liu et al., 2021; Johnson et al., 2023; Robertson et al., 2019). However, coordinating many actuators is challenging. Generating control commands for them requires a large amount of resources, such as physical space, equipment, and communication bandwidth (Winck and Book, 2013). A noticeable quantity is the time delay between the first and the last actuator when updating the system to a new shape, which we note as the refresh time . A small is preferable in real-time tasks. Standard communication methods send control messages to each actuator in a sequential fashion (Follmer et al., 2013; Xue et al., 2024; Siu et al., 2018; Stanley et al., 2016; Leithinger and Ishii, 2010), so has an scaling where is the number of actuators. To control more actuators, strategies such as using multiple communication channels, sharing one motion controller in a small group of motors, or performing multithreading in the central computer have been employed (Johnson et al., 2023; Follmer et al., 2013; Xue et al., 2024; Siu et al., 2018). By optimizing system architectures, these methods are helpful in reducing refresh time, but the fundamental scaling relation of the refresh time remains unchanged, and the scalability can be improved.
A non-sequential and more scalable approach is to drive each row and column of the actuator array, similar to the matrix drive technique used in LED displays (Chen et al., 2011). This method simultaneously controls all actuators on the same row or column. Early works from Zhu, Winck, and Book et al. show that the scaling of can be reduced to . They developed a control loop structure based on singular value decomposition that can drive a hydraulic cylinder robotic array to any shape via row and column controllers (Zhu and Book, 2004; 2006; Winck and Book, 2012; Winck et al., 2012; Winck and Book, 2017). In this method, a “control coupler” valve is needed for each cylinder to couple the row and column control signals (Ferguson et al., 2020). In soft robotics, a compact fluidic logic module is designed to regulate the input row and column pressures for a pneumatic soft linear actuator array (Jadhav et al., 2023). In addition, a robotic surface is fabricated with ionic polymer stripes and controlled using peripheral voltages (Wang et al., 2023). However, these methods also lack scalability because the is still dependent on system size. The scaling issue can become more severe when the area density of actuators increases.
We propose a novel control method for robotic surfaces that has a system size-independent refresh time. In general, a continuous surface profile is first discretized, and the relevant actuation commands are passed to each actuator. Our method focuses on the second part of shape control, so we simply discretize the surface profile on a square lattice representing the pin array. When approximating the discretized surface profile, it is worth noting that (1) neighboring actuators usually have similar inputs, so there is no need to send the inputs to every one of them; (2) the discretized surface profile may be simply parameterized, such as Gaussian function-like patterns used in object manipulation tasks (Johnson et al., 2023), in which only two center coordinates are important. Therefore, in our method, a central computer broadcasts features of the target shape to individual actuation modules and allows them to calculate their inputs. Our method is illustrated in Figure 1. This approach results in a size-independent scaling of the refresh time, and the residual error of shape approximation becomes dependent on the target shape and approximation algorithm. We experimentally validate the refresh time scaling on a pin array setup and compare it to the sequential control method. In order to achieve any shape, we use function forms with universal approximation properties and employ the discrete cosine transform (DCT) and the matching pursuit (MP) algorithms (Mallat and Zhang, 1993) to compute shape features. We further characterize shape change capability by displaying six distinct shapes and measuring their height profiles. In addition to the improvement in the refresh time scaling, our control method allows an interpretable modeling procedure for the complex robot–object interaction force . Based on the force model, we design a feedback controller for object transportation tasks and perform experiments to confirm its validity.
An illustration of our control method. At time t , the control message γt is broadcast to all modules. In the nth module, the reference input is calculated via a function f and its arguments γt and xn . This input is sent to an actuator subsystem that generates a targeted position.
The rest of the article is organized as follows. In Section 2, we present the control method and algorithms to compute the shape features, derive equations for the object manipulation problem, and describe the robot setup. In Section 3, we present our experimental results on the time-delay scaling, quantification of shape-changing capacity, and object manipulation tasks. Section 4 contains a discussion and concluding remarks.
Materials and methods
2
Control message calculation
2.1
Our control method is illustrated in Figure 1. One highlight is that the control messages are broadcast to all actuation modules at each time step to eliminate communication time delays between the modules. In our case, an actuation module refers to an independent system that includes an actuator, a sensor, and microcontrollers (see Section 2.3). The actuator control subsystem is responsible for regulating the state of each actuator to a given reference so that all actuators can represent a given surface shape. is a set of shape feature parameters used by each module to compute the reference input for the actuator control subsystem. To be able to generate any target shape using broadcast control message , we utilize function forms with universal approximation ability. To be more specific, once the modules receive the same , they can use a single function form with universal approximation properties and a local parameter to compute their inputs, making it possible for the robot to approximate any target shape. In practice, the function forms are stored on each module microcontroller board for computing the input, and is an identification value stored on the nth module.
The universal approximation ability guarantees that any target shape can be exactly represented by a set of . Depending on the function forms, different algorithms exist for computing . We use two function forms to test the refresh time scaling and shape-changing ability. We first choose the cosine function because we can use off-the-shelf discrete cosine transform (DCT) algorithms to compute the shape features as . The input to the actuator control subsystem in the nth module is represented as:
where and are the amplitude and the wave vector at time , and . The shape features and are computed using the DCT algorithm from the Scipy package fftpack. To construct an accurate target shape, several are broadcast to all modules. Upon receiving the messages, each module computes the input according to Equation 1 with its own . There is no system size-dependent refresh time because all modules can simultaneously receive and compute in parallel.
Considering that the cosine function may not be efficient in representing localized patterns, we use time–frequency functions to capture both extended and localized patterns:
where is a Gaussian function made periodically on the domain . The coefficients in are the amplitude, scale, position, frequency, and phase of the time–frequency function, respectively. If is large, and over all in the domain, then Equation 2 reduces to the cosine functions in Equation 1. To compute for any target shape, we use the matching pursuit algorithm (MP) for a dictionary of time-frequency atoms. The details of the algorithm can be found in Mallat and Zhang (1993). We implement the MP algorithm in Python. It takes a given pattern and computes sequentially to some prescribed . The reconstructed pattern using finite terms converges to the original one exponentially fast, as proven in Mallat and Zhang (1993). In practice, we find that only a few terms are needed to approximate a pattern with good accuracy (see Section 3.2).
For object manipulation tasks, we use the Gaussian radial basis function (GRBF):
where the coefficients in are the amplitude, width, and center coordinates of each Gaussian function. are two identification values stored on the nth module, representing the 2D physical coordinates of the module in the array. Although the GRBF is capable of universal approximation (Park and Sandberg, 1991), algorithms computing may require time-consuming optimization. For this reason, we do not use this function form in shape-changing experiments. Instead, we use the GRBF in object manipulation tasks, and one term in Equation 3 is sufficient.
Force model and controller design
2.2
Generally speaking, an object is governed by the equation of motion of its center of mass , where is the object mass, and is the total force acting on the object. includes the object’s gravity, and, importantly, the nonlinear interactions between the object and the robotic surface. Because the surface usually involves many degrees of freedom, determining a sequence of shapes to manipulate an object is a difficult task. Previous works achieve object manipulations with empirical relations (Johnson et al., 2023; Chen et al., 2021) or black-box machine learning models (Wang et al., 2023; Xue et al., 2024), both of which require data for calibration. Our proposed control method utilizes shape features to generate surfaces, therefore effectively reducing the computational burden of searching for the right shapes. Furthermore, the shape we used allows us to build a reasonable force model to guide feedback controller design for object manipulation tasks; hence, no training data are needed to design the controller.
In this work, we manipulate an object with a shape defined by one concave GRBF in Equation 3 and a time-varying center coordinate . The robot shape control problem is drastically reduced to determining two scalars contained in . We first derive the force model. We assume that the surface is smooth, the object is always in contact with the surface, and the net force is purely determined by the static geometric configurations of the shape and the object. The case is illustrated in Figure 2. Depending on the local shape gradient, the object experiences a small net force either near or far away from the shape center , and a large net force when is comparable to the width of the Gaussian . Hence, the magnitude of can be expressed as
where is a single-peak function that takes the maximum value at and remains zero when and . Furthermore, because the GRBF has radial symmetry, the direction of points to the shape center :
An illustration of the idealized object–robot surface interaction.
Equations 4, 5 together provide a force model when using a single GRBF to generate the shape.
The force model is obtained via order-of-magnitude analysis and a symmetry consideration; hence, many realistic details are not captured, such as the discreteness of the robot shape due to finite actuator size, object rotation, friction, and visco-elastic force at contact. We also focus on the planar movement of the object and ignore its vertical motion.
The feedback controller needs to compute the shape center based on the object center and the target location . Based on the force model in Equation 6, two heuristics can be used to guide the design of the controller. First, we want to maintain the net force direction toward the target position , so the object will not go elsewhere. Moreover, we should keep next to , so the driving force does not vanish. Mathematically, we first demand that point toward . This constraint is expressed as
where determines the magnitude of . Based on the assumption that takes the maximum value at , we can demand
so that attains its greatest value. Equations 7, 8 together determine :
The first and second terms (Equation 9) are the proportional feedback and feed-forward control, respectively. The control loop is shown in Figure 3.
A control block diagram for the object manipulation task.
To ensure control process stability when approaches and becomes large, we restrict to [0,1], so that whenever . This nonlinear constraint replaces (10) and can be expressed as
The controller only has one parameter to tune. In fact, should be comparable to the characteristic size of the object, leaving no additional parameter to adjust. Even though the force model is under many assumptions, the controller derived from it can accomplish object transportation tasks, as demonstrated in the experiments (Section 3.3), showing that this procedure is effective. However, as there is no explicit incorporation of disturbance rejection mechanisms, its performance may be compromised if the object–surface interactions largely deviate from ideal assumptions, as shown in Section 3.3. In practice, the control loop functions as follows: first, the position of the object is captured by a camera, and this information is sent to the central computer to compute the shape center according to Equations 9, 11. The central computer then sends along with other shape features required by the GRBF (Equation 3) to the robot, and the robot displays the shape to manipulate the object. The GRBF is not used in the feedback controller. Details of the hardware implementation are described in Section 2.3.
Experimental setup
2.3
The robot has a modular design and consists of 16 identically built linear actuation modules arranged in an 85-mm-long square area. As shown in Figure 4A, the module is approximately 47 mm wide and 200 mm long. A lead screw of 100 mm in length and 2.5 mm in pitch converts the rotary motion of a DC motor to linear motion. The screw is attached to a slider with two additional guide rails parallel to the lead screw to reduce friction. Two limit switches are installed at the two ends to prevent overshoot that may damage the motor, and the overall arrangement of mechanical parts results in a linear stroke of 70 mm. A complete module also has a rectangular cover attached to the slider (see Figure 4C). The DC motor (Tianqu Motor, N20VA, 1:10) has a rated maximum speed of 50 revolutions per second, leading to a nominal speed of 125 mm/s of the linear motion. The motor’s tail has a Hall rotary encoder to measure the angular position of the shaft, defined as for the nth module. The vertical position of the linear actuator is proportional to . All mechanical components and electronics are mounted on 3D printed frames, and the modules are mounted on a portable aluminum frame. When varying the system size , we simply connect or disconnect modules from the robot.
(A) A picture of a single linear actuation module. The rectangular cover is removed to expose mechanical components. (B) Block diagram of the electronic system. The arrows indicate information flows. (C) The robot and vision servo system for object manipulation.
The electronics block diagram is shown in Figure 4B. The controller of the actuator is an Arduino Nano board, which is programmed as a closed-loop control system for shaft position and can receive control messages from a central computer. A PID controller running every 16 ms (62.5 Hz) is in use. Two additional modules are connected to the controller board. A DRV8871 board is used to drive the motor with the standard pulse width modulation (PWM) technique. An MCP2515 CAN bus board is used for receiving control messages. All actuation modules are on one CAN bus, and the protocol is CAN 2.0B. While identical in hardware, there is a unique identification variable ranging from 0 to 15 in the nth module’s software. This variable is involved in reference input calculation in Equations 1–3, or acts as the CAN message identifier in the sequential control method. A central computer (Raspberry Pi 4B) is used to generate target shapes and the control messages to drive the modules. In our method, we broadcast a single in one standard CAN data frame (which holds 8 bytes of data), meaning the coefficients are represented with limited resolution. The data frame also contains information on which function form to use, so we can switch between different approximation methods. An additional Arduino Nano and an MCP2515 module serve as the CAN bus sender that interfaces with the central computer and the modules.
For the object manipulation tasks, a simple vision servo system is built to track the object and compute the control output to drive the robot. The setup is shown in Figure 4C. A web camera (Raspberry Pi Camera V1) is mounted above the robot and faces downward to capture an image sequence at a rate about Hz. Each image contains a colored object and the actuation modules as the background. The object coordinate is the center of mass of the largest connected component in a binarized image, and we use a color threshold to identify the object. All images are processed with OpenCV in Python. A calibrated 2D affine transform is used to relate the object coordinates in images to those in the lab. Given and the target position , the new shape center position is computed according to Equations 9, 11. We reduce noise in with a moving average filter of size 15 to reduce actuator jittering. The smoothed is sent to the robot for actuation, and the control loop update frequency is the same as that of the image.
Results
3
Experiments on refresh time
3.1
We first perform an experiment to measure the refresh time where there is no actuator dynamics and only communication delay between the central computer and the actuator modules. The robot is refreshed between two uniform patterns and at a constant rate using either the standard sequential control or our method described in (1). Note that because all actuators have equal values, only one CAN message is needed. To measure on each actuator, we correlate the variable with a PWM output on the controller board and convert the PWM output using a digital-to-analog converter based on an LCR low-pass circuit. The signals of the first and the Nth actuation module are simultaneously measured on an oscilloscope (Rigol DS1202EZ), and the time delay is extracted. We vary from 2 to 16. Typical signals are shown in Figure 5A and (B) for a system with actuators. We extract the refresh time using normalized cross-correlation and average over at least 20 values.
Experimental refresh time scaling without actuator dynamics. (A) The reference inputs of two actuators when using a sequential control method. The yellow (blue) line is the first (last) actuator in a two-actuator system; (B) the reference inputs of the same actuators when using our control method; (C) the averaged refresh time is plotted as a function of the number of actuators for the two control methods and at different communication rates (expressed in Tmsg ). Each point is an average of at least 20 refresh time values observed in (A) or (B). The darker color represents larger Tmsg . The triangles (circles) are experimentally measured refresh times with the sequential (our) control method, and the dashed lines are theoretical predictions.
The average refresh time is plotted as a function of for both methods in Figure 5C. As expected, for the sequential control method, the refresh time shows a linear increasing trend, and the slope equals the time period to send one control message. We vary from 5 ms to 20 ms, and the predicted trends agree well with experimental results. In contrast, for our method, the refresh time remains at zero for all and all , showing that there is no time delay among the modules due to system size or communication delay. Therefore, we confirm that our method indeed achieves a system size-independent refresh time when no actuator dynamics is present.
In the second experiment, we take the actuator dynamics into account by measuring the refresh time between the shaft positions of the first and the last actuator. In addition to the above, the robot is refreshed with a traveling wave pattern, so the refresh time is also determined by the wave speed . The traveling wave is a quarter of a moving sinusoid over actuators, given by
where is the system-size-dependent wave vector chosen such that the last actuator always has a quarter phase, . is the current time. The control message is sent every ms from the central computer. For the sequential control method, is computed and transmitted to each actuator. For our method, we express using a simplified version of Equation 2 because Equation 12 can be rewritten as , where and . The coefficients , , and are broadcast to all modules in one CAN data frame. The observed traveling waves for both methods are shown in Figures 6A,B, and the average refresh time as a function of the number of actuators is shown in Figure 6C. For our method, stays constant for all , hence validating the system size-independent refresh time when both signal transmission and actuator dynamics are present. According to Equation 12, the refresh time between the first and the last actuator should be the time to catch up their phase difference, that is, . In all experiments, we set and ms, so ms. Our experimental results in Figure 6C agree with this value, with a relative error less than 1% for all , and the discrepancy is likely due to random errors. For the sequential control method, is larger than the theoretical 750 ms and linearly increases as increases. When one module is added to the system, it takes an additional amount of time to transmit control messages to that module, so the refresh time for the sequential control method is . This prediction is plotted as a dashed line in Figure 6C, which also agrees with the experimental results.
Experimental refresh time scaling with actuator dynamics. (A) The motor shaft angular position when using the sequential control method. The yellow (blue) trace is the first (last) actuator in a 16-actuator system, with its refresh time indicated in the dashed line; (B) the shaft position of the same actuators when using our control method. (C) Refresh time is plotted as a function of the number of actuators for the two control methods. The triangles and circles are experimentally measured refresh times using the sequential and our control methods, respectively. Each point is an average of at least six refresh times, and the error bar is one standard deviation. The dashed lines are theoretical predictions.
Characterization of shape change
3.2
To quantify the approximation accuracy of our control method, we drive the robot to six distinct shapes and quantify the errors between the target and the measured shapes. The shape measurement apparatus is shown in Figure 7A. A laser distance meter (Shanghai Kedi, KG01) is used to measure the height change of each actuator, and the scan process is automated via a homemade Cartesian robot. The system has an accuracy of 0.2 mm. The six shapes are listed in Table 1. All shapes are represented as a matrix, where the elements are actuator vertical positions . The actuation module’s planar coordinates are taken from , and we stretch the vertical scale so that each shape can fill the entire 70-mm stroke of the actuator. The parabola shape displayed by the robot is shown in Figure 7B, and all shapes are illustrated as the insets in Figures 7C–H. For each run of the experiment, we start with the robot leveled at half stroke length. Then, the robot is actuated through a series of intermediate shapes. Following each shape actuation, we perform a height scan to track the shape change and compute the relative error between the intermediate shape and the target shape using root mean squared error. The intermediate shape is achieved incrementally with additional information from one control message that contains all coefficients in one approximation term in Equations 1, 2. For the sequential control method, the term is the reference vertical position of a single actuator. For our method, we test both function approximation formulas in Equations 1, 2. To compute the coefficients, we reshape the shape matrix into a vector and apply the DCT or MP algorithm. For the order of shape actuation, we prioritize terms with a higher amplitude or values.
Characterization of shape-changing ability. (A) The experimental setup for shape measurement; (B) the parabola shape displayed by the robot; (C–H) the relative error of the shape is plotted as a function of the number of terms used to approximate the shape. The triangles (circles) are from the sequential (our) control method. The orange and blue colors of the circles correspond to the DCT and MP algorithms, respectively. Each data point is an average of three independent runs. The error bar is smaller than the marker size, so it is not shown. The dashed lines are theoretical predictions calculated with 64-bit floating point numbers, and the dotted blue lines are calculated with 16- and 8-bit resolution-limited numbers. The inset displays the target shape.
The relative error as a function of the number of terms (or equivalently, the number of control messages) is shown in Figures 7C–H. Our control method with the MP algorithm can outperform the sequential control method in the sense that it requires fewer terms to approximate the target shape for the same error. For example, it takes 11 terms for the sequential method to approximate the parabola shape to a relative error, while it takes six and seven terms for the MP and DCT algorithms, respectively (Figure 7D). We also find that within our methods, MP can approximate both extended and localized patterns with fewer terms, while DCT approximates extended patterns better than localized patterns. The DCT algorithm outperforms the sequential method in three target shapes (plane, parabola, and checker) but can be worse for localized patterns. For example, for the peak shape, it takes only one term for MP to reach a perfect match, while DCT needs all 16 terms. The relative errors obtained from experiments are well captured by theoretical predictions based on Equations 1, 2, except in the parabola, checker, and random cases, where MP leads to residual errors that are not captured by Equation 2. These residual errors are due to the limited coefficient resolution used in computing the approximation terms. To include the five coefficients from Equation 2 into one CAN data frame, and are allocated with 2 bytes each, and , , and are 1 byte each. By recalculating intermediate shapes using these less precise numbers, we can match the experimental results, as shown by the dotted lines in Figures 7D–F.
Closed-loop object manipulation
3.3
We demonstrate the object manipulation capability of the robot based on our closed-loop control method derived in Section 2.2. Motion videos are provided in the Supplementary Material. The objects are 3D printed light-weight spheres of diameter cm and cubes of edge length cm. A spherical cap is attached to the top of each rectangular cover to prevent the object from stabilizing itself on the cover. A single GRBF generates robot shape to drive the object, and its amplitude and width , where is the object’s characteristic size and equals or , so that the robot shape is comparable to the object size. A negative implies a concave valley for holding the object. Although the object can remain stable inside the valley when the shape is frozen, our controller always changes the shape such that the object never establishes force equilibrium until the target position is reached. Note that our controller does not assume the shape of the object, and the only tunable parameter in the controller is , which we set to .
The initial and target position of the object are at opposite corners of the robot, and the snapshots of typical transportation processes are shown in Figures 8A,B. The objects can be repeatedly transported to their target positions, showing our closed-loop control method is robust. We collect 10 independent runs for each object, and the trajectories are visualized in Figure 8C and (E) for spheres and cubes, respectively. For the cm sphere, at the beginning of the transportation, different trajectories are close to each other, as shown by the thin blue lines in Figure 8C. They start to diverge when the object hits the cover of an actuation module, marked by a dashed blue square region. Despite this random disturbance, our closed-loop control method can manipulate the sphere to the target position , shown by the converging trajectories towards marked by a black dot. For the cm sphere, the trajectories diverge less than the smaller sphere. This trend is likely due to the fact that the object-to-actuator size ratio is greater for the larger sphere; hence, the disturbance due to the finite size effect is smaller, and the force model in Equation 6 is more applicable. We also compare the dynamics of the shape center with the object center , and the relative distance to as a function of time is shown in Figure 8D. Initially, remains constant, presumably due to the response time of the actuator and the inertia of the object. Then, the cm sphere undergoes rapid movement with an average speed of about 8.8 cm/s. Finally, the object is stabilized near the target position, and a constant offset of approximately 0.75 cm persists. This offset is likely due to the fact that steady-state errors cannot be eliminated by the proportional feedback controller we designed in Equation 9. The convergence of is similar to , and it converges to around s, effectively stops the motion of the shape center. For the cm sphere, the convergence is faster, and the constant offset is also presented.
Object transportation experiments. (A) Snapshots of transportation processes of a sphere with Dsphere=8 cm. The target position is marked by a red dot in each image; (B) the same plot as (A) except for cubes with Dcube=6 cm. (C) trajectories of 10 independent runs for each sphere. The thin blue (thick green) lines are for spheres with Dsphere=6 (8) cm. The target position is marked by a black dot. The blue dashed square region indicates an actuation module, which corresponds to the blue shaded region in the first image of (A). (D) The distance between the object center X(t) (shape center Xc(t) ) and the target position Xref is plotted as a function of time in solid (dashed) line. The blue (green) lines are for spheres with Dsphere=6 (8) cm; (E) the same plot as (C) except for cubes. The star markers indicate the end of the trajectories; (F) the same plot as (D) except for cubes.
Similar analysis can be performed for the cubic objects, and the results are shown in Figures 8E,F. The trajectories of cubes are much more scattered than those of the spheres. This can be understood as cubes are more irregular than spheres and experience more random forces during transportation. In addition, the trajectories of the larger cube diverge less than those of the smaller cube. The convergence of the distance to the target position is also less smooth, and sometimes cubes can go away from the target, as shown by the increasing trend in Figure 8F. The cm cube may not converge to a stable final position, as indicated by the nonzero . This may be due to its small size and shape so that the force disturbance is relatively large.
To further test the robustness of the design controller, we change the surface property by removing all spherical caps attached to the pins, so the surface becomes flat. This modification increases the randomness during object manipulation, as the objects can sometimes stabilize themselves on the pins or roll away quickly on the flat surface. In addition, the pins are sharper and stiffer, giving greater force disturbance than the soft spherical cap. Without modifying any control parameter, we perform the same object transportation experiments for two spheres and collect 10 independent runs for each object. The resulting trajectories are shown in Figure 9. As expected, the trajectories are more scattered than those in Figure 8. For the cm sphere, the all 10 tested trajectories can still converge to the target position (the same), while for the cm sphere, four of ten trajectories fail to get close the target. The closest position is where the cm sphere falls onto a single pin next to the target position, and that creates a distance gap in Figure 9 because the two positions do not coincide. This failure is likely due to the net effect of small sphere size and the removal of the spherical cap so that the total disturbance is large, and the controller is incapable of transporting the object. We also note that the flat surface makes it difficult to control the two cubes in the current parameter setting. The cubes can sit perfectly on the flat surface, even if the shape is generated; hence, no experimental result is shown. Based on the comparison experiment, it is clear that the spherical caps should be used in practice. This robustness test on the controller suggests that it is still capable of transporting objects under increased disturbance but needs improvements such as additional sensors or advanced feedback methods to estimate and reduce the disturbance when the object stabilizes itself on the surface before reaching the target position.
Object transportation experiments without the spherical caps. The target position is marked by a circle, and the end position of each trajectory is marked by a star. (A) and (B) are trajectories of 10 independent runs for the Dsphere=8 cm and Dsphere=6 cm spheres, respectively.
It is worth noting that our proposed controller does not explicitly require any constraint on the object shape. The ideal object–surface interaction model in Equation 6 considers the object as a point mass, and the robotic surface being smooth. In this regard, a smooth spherical object would be close to the ideal model. In other words, the controller is more applicable to spherical objects. The effects of shape or surface irregularities are shown in Figure 8 or Figure 9, respectively. Irregularities in object shapes and the robotic surface are both considered disturbances and can lead to unstable trajectories, as the interaction force can have greater fluctuations via unstable contacts, rolling, or slipping, etc.
Finally, to showcase the object manipulation capability of the robot, we have the robot continuously controlling the cm sphere along a bowtie-shaped trajectory (with the spherical caps installed). The bowtie shape consists of four linear segments, two of which are the diagonals and the other two are the edges of the 4-by-4 pin array, and we let the sphere trace out of the shape 10 times without stopping. The whole trajectory is shown in Figure 10, and except for the beginning of the first time, all trajectories stay close and track out the bowtie shape.
The robot continuously controls the D=8 cm sphere along a bowtie-shaped trajectory.
Discussion
4
We present a novel control method for robotic surfaces that can substantially reduce the number of independent inputs. The control method has size-independent refresh time and can lead to an effective object manipulation controller when a suitable approximation function is used. We implement the control method in a robotic surface and experimentally confirm the system size-independent refresh time. In addition, the presence of actuator dynamics does not affect this refresh time scaling behavior. Based on the discrete cosine transform and the matching pursuit algorithm, different shapes are efficiently approximated because fewer control messages are required when compared to the standard sequential method. Hence, our control method is more scalable and has the potential to control robotic surfaces with more actuators. Note that the practical upper limit depends on whether the communication technology can reliably broadcast signals to every module in time. Based on our control method, we also provide a modeling method for object manipulation tasks. Using the GRBF as the shape generator, we simplify the complex interaction force with reasonable assumptions based on order-of-magnitude analysis and symmetry considerations and derive a compact feedback controller for object transportation tasks. The validity of the force model and controller is confirmed by the successful transportation of objects of different sizes and shapes.
Because all modules receive the same control message every time step, our control method can update the state of all modules simultaneously. Alternatively, one may design a schedule procedure that updates only relevant modules at a time and hence saves communication bandwidth even if serial communication is used. In this regard, the advantage of our method is that the schedule step is implicitly performed in computing the control message. For example, if only one module is determined to be actuated, a sufficiently small width parameter (such as in Equation 2 or Equation 3) will lead to the same control objective, thereby effectively performing the schedule procedure. This is the case in Section 3.2 for the “peak” shape. For cases when the shape of the robot requires changes in a few modules, our method and the schedule-based procedure can perform equally well. However, for complex tasks requiring control over a fraction of the system, our method is more scalable because it uses a system size-independent number of control messages to coordinate the robot. In practice, a hybrid control strategy that can alternate between the scheduled sequential control and a broadcast control method may be suitable to deploy various shapes quickly. Alternatively, one can switch between the DCT and MP algorithms at runtime by setting a threshold value for the fraction of pins that need to have noticeable movements. When the fraction is large, the DCT algorithm is preferable to the MP because it can handle extended patterns. When the fraction is small, MP can be used to actuate a few pins quickly.
As a multi-actuator system, robotic surfaces benefit from a large number of actuators working together to accomplish various tasks, while suffering from the cost and complexity of coordinating many actuators. In essence, our method sends compressed coordination commands to all actuators. A trade-off may exist between the complication due to system size and the complexity of the commands. Although the refresh time scaling is only validated on a small set of actuation modules, and the closed-loop controller is quite simple, we demonstrate its scalable performance. It can be interesting to achieve shape control and object manipulation with distributed control methods, such as designing a sparse state-feedback gain matrix (Chanfreut et al., 2021; Babazadeh and Nobakhti, 2017), and compare with our method. In our work, each module has its own microcontroller for processing incoming signals, computing function approximations, and performing position servoing. It may also be interesting to design simpler circuits or even mechanical components, such as the fluidic coupler (Jadhav et al., 2023), for the function approximation purposes. Ongoing work focuses on theoretical controllability and closed-loop stability of this control method, as well as more advanced controllers to handle the disturbance when manipulating deformable or irregular geometries.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1Babazadeh M. Nobakhti A. (2017). Sparsity promotion in state feedback controller design. IEEE Trans. Automatic Control 62, 4066–4072. 10.1109/TAC.2016.2626371 · doi ↗
- 2Chanfreut P. Maestre J. M. Camacho E. F. (2021). A survey on clustering methods for distributed and networked control systems. Annu. Rev. Control 52, 75–90. 10.1016/j.arcontrol.2021.08.002 · doi ↗
- 3Chen J. Cranton W. Fihn M. (2011). Handbook of visual display technology. Incorporated: Springer Publishing Company.
- 4Chen Z. Deng Z. Dhupia J. S. Stommel M. Xu W. (2021). Motion modeling and trajectory tracking control for a soft robotic table. IEEE/ASME Trans. Mechatronics, 1–11. 10.1109/TMECH.2021.3120436 · doi ↗
- 5Chen Z. Deng Z. Dhupia J. S. Stommel M. Xu W. (2024). Trajectory planning and tracking of multiple objects on a soft robotic table using a hierarchical search on time-varying potential fields. IEEE Trans. Robotics 40, 351–363. 10.1109/tro.2023.3337291 · doi ↗
- 6Ferguson K. M. Tong D. Winck R. C. (2020). “Multiplicative valve to control many cylinders,” in 2020 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM) (Boston, MA, USA: IEEE), 673–678.
- 7Follmer S. Leithinger D. Olwal A. Hogge A. Ishii H. (2013). “in FORM: dynamic physical affordances and constraints through shape and object actuation,” in Proceedings of the 26th annual ACM symposium on user interface software and technology (New York, NY, USA: Association for Computing Machinery), 417–426.
- 8Jadhav S. Glick P. E. Ishida M. Chan C. Adibnazari I. Schulze J. P. (2023). Scalable fluidic matrix circuits for controlling large arrays of individually addressable actuators. Adv. Intell. Syst. 5, 2300011. 10.1002/aisy.202300011 · doi ↗
