text:
An autonomous untethered fast soft robotic insect driven by low-voltage dielectric elastomer actuators
View ORCID ProfileXiaobin Ji1,
Xinchang Liu2,
View ORCID ProfileVito Cacucciolo1,
View ORCID ProfileMatthias Imboden1,
Yoan Civet2,
View ORCID ProfileAlae El Haitami3,
View ORCID ProfileSophie Cantin3,
View ORCID ProfileYves Perriard2 and
View ORCID ProfileHerbert Shea1,*
1Soft Transducers Laboratory (LMTS), École Polytechnique Fédérale de Lausanne (EPFL), Rue de la Maladière 71B, Neuchâtel 2000, Switzerland.
2Integrated Actuators Laboratory (LAI), École Polytechnique Fédérale de Lausanne (EPFL), Rue de la Maladière 71B, Neuchâtel 2000, Switzerland.
3Laboratoire de Physicochimie des Polymères et des Interfaces (LPPI, EA2528), Institut des Matériaux, Université de Cergy-Pontoise, 5 Mail Gay Lussac, 95031 Cergy-Pontoise, France.
↵*Corresponding author. Email: herbert.shea{at}epfl.ch
Science Robotics 18 Dec 2019:
Vol. 4, Issue 37, eaaz6451
DOI: 10.1126/scirobotics.aaz6451
Xiaobin Ji
ORCID record for Xiaobin Ji
Xinchang Liu
Vito Cacucciolo
ORCID record for Vito Cacucciolo
Matthias Imboden
ORCID record for Matthias Imboden
Yoan Civet
Alae El Haitami
ORCID record for Alae El Haitami
Sophie Cantin
ORCID record for Sophie Cantin
Yves Perriard
ORCID record for Yves Perriard
Herbert Shea
ORCID record for Herbert Shea
For correspondence: herbert.shea@epfl.ch
Insects are a constant source of inspiration for roboticists. Their compliant bodies allow them to squeeze through small openings and be highly resilient to impacts. However, making subgram autonomous soft robots untethered and capable of responding intelligently to the environment is a long-standing challenge. One obstacle is the low power density of soft actuators, leading to small robots unable to carry their sense and control electronics and a power supply. Dielectric elastomer actuators (DEAs), a class of electrostatic electroactive polymers, allow for kilohertz operation with high power density but require typically several kilovolts to reach full strain. The mass of kilovolt supplies has limited DEA robot speed and performance. In this work, we report low-voltage stacked DEAs (LVSDEAs) with an operating voltage below 450 volts and used them to propel an insect-sized (40 millimeters long) soft untethered and autonomous legged robot. The DEAnsect body, with three LVSDEAs to drive its three legs, weighs 190 milligrams and can carry a 950-milligram payload (five times its body weight). The unloaded DEAnsect moves at 30 millimeters/second and is very robust by virtue of its compliance. The sub–500-volt operation voltage enabled us to develop 780-milligram drive electronics, including optical sensors, a microcontroller, and a battery, for two channels to output 450 volts with frequencies up to 1 kilohertz. By integrating this flexible printed circuit board with the DEAnsect, we developed a subgram robot capable of autonomous navigation, independently following printed paths. This work paves the way for new generations of resilient soft and fast untethered robots.
Soft animals have long fascinated humans. Recent progress in soft robots (1, 2) have enabled a broad range of applications, many of them bioinspired, including fish (3), octopus (4), insects (5), hands (6), and grippers (7). Centimeter- to decimeter-scale soft robots today have two major limitations: (i) The low force and power density of most soft actuators means that few soft robots can carry their own power supply and must therefore be tethered, and (ii) the lack of an integrated sensory-action feedback loop prevents soft robots from autonomously responding to the environment (8). Integration of actuators, sensors, computing units, and power supply while preserving the robustness and compliance of soft robots is challenging yet essential for the development of soft robotics (9).
The few examples of fully untethered robots based on compliant actuators are characterized by scaling up the robot body or by exploiting buoyancy in an aquatic environment to compensate for the additional mass of the power supply. Tolley et al. (10) developed a 65-cm-long pneumatic robot able to carry the weight of compressors, battery, and microcontrollers but at the price of a low speed of 0.008 body length/s (BL/s). Marchese et al. (11) demonstrated a 30-cm-long soft robotic fish capable of fast swimming for short escape maneuvers. A similar robot was equipped with acoustic-based remote control for underwater exploration (3). Higher power density with fluidic actuators can be obtained by using chemical reactions, although the integration with digital control becomes challenging. Two examples of explosion-driven jumping robots have been reported (12, 13) where the fuel was mixed into a compliant reaction chamber and ignited with a spark. An alternative approach consists of using controlled chemical reactions, leading to electronics-free moving soft machines. An early example (14) is a crawling hydrogel driven by a self-oscillating chemical reaction, whereas a more recent one is an octopus robot (4) that uses a soft microfluidic logics to control the oscillation of its arms. Reversible electrolysis of water has also been reported for pneumatic actuation (15). Thermal actuators have the advantage of requiring simple electronics, yet their low time constant limits their power density. A caterpillar-inspired robot driven by shape memory alloys (SMAs) was demonstrated by Lin et al. (16). The authors developed a radio-controlled untethered version of the robot, but the low instantaneous power output of the batteries limited its performance. Huang et al. (17) have reported fast SMA-based actuators by using thermally conductive elastomers. The actuator speed is still limited to 0.3 Hz. To date, all untethered soft robots capable of locomotion move following predefined actuation patterns, with no autonomous sensory-action response to the environment.
The main classes of compliant actuators with force and power densities sufficient for mobile robotics (2), as presented above, include pneumatic (18) and hydraulic elastomer actuators (3, 19), SMAs (20), thermal twisted fibers (21), hydraulically amplified self-healing electrostatic (HASEL) actuators (22, 23), and dielectric elastomer actuators (DEAs) (24).
Compared with pneumatic and thermally driven devices, actuators relying on electrostatic force (DEA and HASEL) are particularly well suited to drive autonomous untethered soft robots, because they are fast and allow for ready integration with many sensors and control circuitry. DEAs are particularly promising for driving soft robots in view of high speed (25), large actuation strain (26), high power density (27), and simple materials. There have been impressive demonstrations of compliant grippers (7) and crawling (5, 28) and swimming (29, 30) robots. DEAs consist of an elastomer sandwiched between two compliant electrodes and generally require drive voltages of several kilovolts, typically at milliwatt power levels for millimeter- to centimeter-scale devices. Commercially available kilovolt power supplies and switches are bulky, ranging from several kilograms for laboratory power supplies down to tens of grams for miniaturized devices, which is why all but a few published mobile DEA robots are tethered (9). Untethered soft swimming fishes driven by DEAs (29, 30) have been reported, taking advantage of buoyancy to support the mass of the onboard 2- to 8-kV electronics. An untethered crawling robot has been reported (31), consisting of a central DEA and two pads with tunable friction generated by electrostatic adhesion. However, due to the high voltage (5 kV) needed for the DEA and the high voltage (3 kV) to generate the electroadhesion, the robot was bulky (~20 cm long) and its speed was limited (0.02 BL/s).
Decreasing the operating voltage of DEA is a key step to enable high-performance untethered soft robots. Below 500 V, there exists a vast selection of low-mass, miniature, commodity surface-mount components, enabling complex kilohertz voltage sources weighing only tens or hundreds of milligrams, as shown, for instance, for piezoelectric flapping-wing robotic insects (32–34).
In this work, we present DEAnsect: an insect-size (40 mm long), fast (30 mm/s tethered, 12 mm/s untethered), ultralight (1 g) autonomous legged soft robot (Fig. 1A). Integrated sensors, power units, battery, and control electronics provide autonomous operation in response to the environment. DEAnsect is driven by three LVSDEAs (low-voltage stacked DEAs), each connected to one of its legs. The LVSDEAs operate at 450 V and at more than 600 Hz. The 190-mg ultralight body can carry the 780-mg flexible onboard electronics (including sensors, logics, control, and battery), resulting in a 1-g robot that can autonomously follow a figure "8" path, as shown in Fig. 1B and Movie 1. Because of its flexible body and actuators, the bare DEAnsect keeps working even after being flattened with a fly swatter.
Fig. 1 Autonomous untethered soft robot.
(A) Photo of an autonomous untethered robot driven by three LVSDEAs, carrying its control and power elements, with a total mass of 970 mg. (B) Snapshots of the untethered DEAnsect autonomously navigating a figure 8 path and automatically stopping at the end of the path. Ruler scale is in centimeters. Total elapsed time is 63 s (see Movie 1). (C to E) Soft robot using three LVSDEAs to operate three independent legs based on asymmetrical friction drive. (C) Top view: Photo of flat (as fabricated) DEAnsect robot. (D) Side view photo of flat DEAnsect robot. (E) Side view of deformed DEAnsect with body held in bent shape using tape. The load capacity of the deformed DEAnsect is increased by the enhanced stiffness. The DEAnsect is fully mobile in both flat and deformed configurations.
Movie 1. Untethered DEAnsect autonomously navigating a figure 8.
The onboard microcontroller and two photodiodes enable autonomous path following, steering the DEAnsect to remain on the black path. The DEAnsect stops when both photodiodes are on a white surface. The integrated battery allows for over 14 min of continuous operation.
Design concept and moving principle of DEAnsect
The DEAnsect consists of a flexible frame, 35 mm long, supporting three legs that exploit directional friction for forward motion and independent leg actuation for active steering (Fig. 1, C to E). The front leg is on the central axis of symmetry (Fig. 1C) and can propel the robot forward. The posterior right and left legs are offset by 6 mm from the central axis (Fig. 1, C to E). When the three legs are active, the DEAnsect moves forward. When the front and left legs are active, the DEAnsect turns right. With the front and right legs active, the DEAnsect turns left. The inactive leg serves as a pivot point. It would be possible to achieve similar steering by changing the drive frequency of each leg to operate near or far from resonance, because the reduced leg motion amplitude when off-resonance leads to lower forward motion of that leg. The angle between the left and right legs is 90°; each of them has a 45° angle with the central axis of symmetry. The purpose of this angle is to decrease the turning radius by reducing the distance between the points of contact with the ground of these two legs. With the inactive leg as a pivot point, the turning radius is thus the distance between the points of contact with the ground for the left and right legs. The body of the robot is flexible and can be easily deformed to adjust its configuration. In Fig. 1E, the DEAnsect is held in deformed state using tape to increase the overall structure stiffness, which increases its load-carrying capacity.
Each leg is driven in a back-and-forth motion by its associated LVSDEAs (Fig. 2A). The LVSDEAs are 3 mm in diameter and have a thickness of 18 μm. They expand in plane when powered, thus moving their associated leg (Fig. 2A). The DEA in-plane expansion strain can be approximated as (35)Sx=εV22Yt2(1)where Sx is the diameter strain, ɛ is the dielectric permittivity of the dielectric elastomer, V is the applied voltage, Y is the Young's modulus of the dielectric elastomer, and t is the thickness of the dielectric elastomer.
Fig. 2 DEAnsect motion principle.
(A) Schematic cross section and working principle of an LVSDEA, 18 μm thick, consisting of three layers of 6-μm-thick PDMS membranes alternating with four layers of ultrathin SWCNT electrodes assembled by Langmuir method. Applying a voltage leads to both out-of-plane compression and in-plane expansion. With a 450-V AC driving signal, the LVSDEA actuates and drives the corresponding leg to move. Photos correspond to one robot leg from different views (top right, top view, and bottom right, profile). (B) Simplified schematics of robot leg-body motion. When the LVSDEA expands, the leg is pushed forward. When the LVSDEA contracts, the leg remain nearly static due to directional friction, and the robot body hence moves forward. (C) Measured plot of robot body and leg contact displacement as a function of time, extracted from high-speed camera video (see Movie 2) after the robot achieved steady motion. The average forward step here is 40 μm, corresponding to a forward speed of 18 mm/s.
Each leg contacts the ground with an angle of about 45° (Fig. 2A, bottom right), the same angle used in a previously developed legged robot (36), because it is suitable for generating directional friction on a broad range of surfaces.
The DEAnsect motion principle is illustrated in Fig. 2. Movie 2 shows the motion recorded using a high-speed camera. Figure 2A displays the structure of one leg in top view and profile. Figure 2B illustrates simplified schematics of the motion principle. Because of the angled legs driven close to their resonance frequency by the LVSDEAs, the DEAnsect moves forward by vibration-driven asymmetrical friction forces. Forward locomotion is achieved by driving the three legs with the same signal. A single DEA actuation cycle and the corresponding DEAnsect leg motion consist of two steps (Fig. 2B). At the first step, from states 1 to 2, the voltage is turned on, generating area expansion of the LVSDEA (Fig. 2, A and B) and pulling the leg forward. For the second step, from states 2 to 3, the voltage is turned off and the LVSDEA contracts, pulling the leg back. Because of the 45° contact angle, the leg remains almost static due to the directional friction, and the LVSDEA contraction pulls the body of the robot forward. Each leg cycle is repeated at 450 Hz (resonance frequency of the system, see the "Performance of bare DEAnsect" section). Figure 2C displays the displacement versus time of the DEAnsect body and leg contact point after the robot achieves steady motion, confirming the moving principles described above. The three states described in Fig. 2B are reported in Fig. 2C.
Movie 2. Video taken with a high-speed camera showing the DEAnsect movement slowed down by 140×.
The side view of the DEAnsect body and leg shows the motion principle.
SWCNT stretchable electrodes for LVSDEAs
A key enabling element in the LVSDEAs are the nanometer-thick stretchable conductive SWCNT (single-walled carbon nanotube) electrodes. Different approaches have been tried to decrease the operating voltage of DEAs, principally either increasing the permittivity of the dielectric material (37, 38) or decreasing the thickness of the dielectric membrane (39). When the thickness of the dielectric membrane is decreased to the order of a few micrometers, the mechanical influence of the electrodes becomes nonnegligible. Electrodes for DEAs (40, 41) need to be extremely thin (tens to hundreds of nanometers) and soft (Young's modulus in megapascal range) to limit their stiffening effect on the thin elastomer membrane and keep enough conductivity for fast (>500 Hz) operation. The electrical cutoff frequency fc can be estimated from the RC time constantfc=12π RC=t2π R ε A(2)where fc is the electrical cutoff frequency, R is the total electrical resistance of the electrodes, C is the capacitance of the DEA, t is the thickness of the dielectric membrane, ɛ is the dielectric permittivity of the dielectric elastomer, and A is the DEA active area.
Thin and soft electrodes are generally poor conductors. In our earlier work, we used a 1-μm-thick polydimethylsiloxane (PDMS) layer and 30-nm-thick stretchable electrodes [multiwalled CNTs fabricated with the Langmuir-Schaefer (LS) method] to develop DEAs generating 4% strain at 100 V (corresponding to 400%/kV2) (42). The low stiffness of the electrodes enabled good actuation strain levels. However, because the total electrode surface resistance was about 860 megohms and the capacitance was about 140 pF, the DEA speed was limited to 1 Hz by its RC time constant (Eq. 2).
To improve the DEA speed, here, we developed higher conductivity electrodes based on functionalized SWCNTs using a similar LS method. Targeting a driving voltage below 500 V, we increased the thickness of the dielectric membrane to 6 μm to increase the DEA overall output force, compared with our previous work. For a circular capacitor with a diameter of 3 mm and a 6-μm-thick PDMS dielectric layer, the capacitance was 30 pF. From Eq. 2, we could estimate that the total electrode resistance should be less than 5 megohms to operate at more than 1 kHz. We therefore investigated the SWCNT electrode fabrication parameters to achieve this requirement for the electrode resistance.
During the electrode fabrication using Langmuir method, the density of the SWCNTs at the air-water interface is controlled by the surface pressure, which can be illustrated by the SWCNT Langmuir compression isotherm (see text S1 and fig. S1). Therefore, the influence of the LS transfer surface pressure on the electrode surface resistance was first studied. With 6 as the number of LS transfers and LS transfer surface pressures of 3, 10, and 30 mN/m, the surface resistances of these fabricated SWCNT electrodes presented similar values, with an average value of 0.12 megohm/square (Fig. 3A). LS transfer surface pressure showed little influence on the sheet resistance in the studied range. We selected 3 mN/m as LS transfer surface pressure for this work.
Fig. 3 Characterizations of the ultrathin electrodes fabricated using the Langmuir method developed for the LVSDEAs.
(A) Surface resistance versus LS transfer surface pressure for six LS transfers. The surface resistance remains almost the same for different LS transfer surface pressures in the studied range. The uncertainty corresponds to the SD of measurements on six samples. (B) Surface resistance versus the number of LS transfers with an LS transfer surface pressure of 3 mN/m. The surface resistance decreases when the number of LS transfers increases. The uncertainty corresponds to the SD of measurements on six samples. (C) Surface resistance versus linear strain for electrodes fabricated with six LS transfers at 3 mN/m LS transfer surface pressure. The surface resistance remains below 1 megohm/sq at 125% linear stretch.
Figure 3B shows the influence on electrode resistance of the number of LS transfers. The surface resistance of the electrodes decreased with increasing number of LS transfers. Transferred at a surface pressure of 3 mN/m and with 3 as the number of LS transfers, the electrode surface resistance was about 1 megohm/sq and decreased to 0.2 megohm/sq when the number of LS transfers increased to 6. Electrodes with 12 as the number of LS transfers presented an even lower surface resistance of 0.04 megohm/sq. We selected 6 as the number of LS transfers for this work, because the corresponding surface resistance was low enough for the LVSDEA to operate at more than 1 kHz.
The surface resistance versus strain for the ultrathin electrodes, fabricated with 3 mN/m as the LS transfer surface pressure and 6 as the number of LS transfers, is plotted in Fig. 3C. The electrode surface resistance was 0.3 megohm/sq at 0% strain, which is slightly higher than the values in Fig. 3 (A and B). The difference is possibly caused by the use of a suspended soft substrate for handling the electrode. We observed that, even at 25% linear strain, the electrode surface resistance was still less than 1 megohm/sq, meeting the previously estimated requirements on the resistance of the stretchable electrodes. These parameters enabled the development of the fast LVSDEA for the DEAnsect. The atomic force microscopy (AFM) image of the corresponding SWCNT electrodes is shown in fig. S2 (see text S2). Each LVSDEA (schematic cross section shown in Fig. 2A) consists of three silicone dielectric layers, each 6 μm thick, sandwiched by the SWCNT electrodes. The fabrication process is illustrated in fig. S3.
Influence of DEA parameters on DEAnsect leg displacement
In addition to the LVSDEA, we fabricated three other types of DEAs with the same geometry to compare their performance in driving the DEAnsect leg. We measured the leg in-plane displacements in a suspended configuration (no contact with the ground). The four types of DEAs differ by (i) electrode fabrication method, (ii) electrode materials, (iii) number of PDMS dielectric layers (6 μm thick for one PDMS layer; see Fig. 2A), (iv) number of electrodes, and (v) use or not of oxygen plasma (OP) treatment on the PDMS surface for better electrode adhesion. The four types of DEAs and their corresponding abbreviations are listed in Table 1.
Table 1 The four types of DEAs used to compare their ability to drive the DEAnsect leg.
They differ by (i) electrode fabrication method, (ii) electrode materials, (iii) number of PDMS dielectric layers (6 μm thick for one PDMS layer), (iv) number of electrodes, and (v) use or not of OP treatment on PDMS for better electrode adhesion.
Figure 4A shows the DEAnsect leg displacement driven by the four types of DEAs applying different values of DC voltage. The use of ultrathin SWCNT electrode (less than 60 nm thick) fabricated using LS method led to larger displacement compared with the 2-μm-thick pad-printed electrodes (43), due to lower stiffening on the DEA structure. Comparing LS-No-OP and LS-OP, the latter showed less leg displacement, which was due to the stiffening effect by OP treatment on the PDMS dielectric layer (44). By comparing LS-OP and LS-Stacked-OP, the stacked configuration showed larger displacement, because the stiffening induced by the electrodes and their OP treatment was reduced by having the internal electrodes shared by two adjacent PDMS layers (in total less electrode per PDMS layer).
Fig. 4 DEAnsect leg displacement.
(A and B) Comparison of LVSDEAs (LS-Stacked-OP) with three other types of DEAs made with the conditions listed in Table 1. Each DEA drives a DEAnsect leg in a suspended configuration (no contact with the ground). (A) Leg displacement versus applied DC voltage (after 5 s). The uncertainty corresponds to the SD of five measurements taken on the same sample. (B) Leg displacement versus time for a 450-V step in the drive voltage. (C) In-plane peak-to-peak displacement of a leg driven by an LVSDEA, a function of the driving frequency. The leg-DEA system operates at up to 1 kHz, with two resonance peaks (at 200 and 580 Hz). The 580-Hz peak shows the largest displacement. The uncertainty corresponds to the SD of five measurements per frequency.
Figure 4B plots the leg displacement versus time for the different DEAs. LS-No-OP required the longest time (~5 ms) to achieve full strain. Such response was limited by the surface resistance of the electrodes (RC time constant, see Eq. 2) and was not fast enough to achieve AC actuation more than 100 Hz. We measured a surface resistance 20 times higher for the SWCNT electrode without OP treatment (3 megohm/sq) than the same electrodes with OP treatment (150 kilohm/sq). The OP treatment modified the surface of PDMS from hydrophobic to hydrophilic, improving the quality of the transfer of the SWCNTs from the air-water interface onto the PDMS. The improved LS transfer led to electrodes with lower resistance. For other three types of DEAs, the time to reach full strain was about the same. In their cases, the response times may have been limited by the mechanical properties (viscoelasticity) of the PDMS membranes.
From the results in Fig. 4 (A and B), we can conclude that OP treatment lowered the surface resistance of SWCNT electrodes on PDMS. Meanwhile, the OP treatment stiffened the PDMS, resulting in lower displacement. Among the four types of compared DEAs, the LS-Stacked-OP (LVSDEA) presents the best trade-off performance to drive the DEAnsect legs in terms of displacement and response speed.
Figure 4C plots the leg in-plane displacement as a function of the driving frequency of LVSDEA. We observed two leg displacement peaks between 0 and 1000 Hz, corresponding to two resonance frequencies of the system. The peak at 580 Hz presents the largest leg in-plane displacement of about 115 μm. We could observe the significant amplification in leg displacement by working at resonance, confirming the critical advantage of fast response actuators. On the contrary, the DEA-leg system driven by LS-No-OP was unable to excite any of the resonance modes because its working frequency is limited to 100 Hz. Above 700 Hz, the leg displacement consistently decreases by increasing the driving frequency, due to viscous losses in the PDMS membrane.
Performance of bare DEAnsect
We characterized the motion performance of the DEAnsect without onboard electronics: (i) robot speed versus driving frequency, (ii) robot speed versus voltage amplitude, (iii) robot speed on different terrains, and (iv) robot speed versus payload mass. Tests (i) to (iii) were conducted with the "flat" DEAnsect (Fig. 1D), whereas test (iv) was conducted with the "curved" DEAnsect (Fig. 1E).
Figure 5A plots the DEAnsect speed as a function of the driving frequency (50 Hz to 1 kHz). The voltage was fixed at 450 V. We observed two peaks at around 150 and 450 Hz. The peaks correspond to resonance modes observed in the suspended DEA-leg system (Fig. 4C). The corresponding resonance frequencies shifted to lower values because of the increased mass on the legs given by the DEAnsect body. At 450 Hz, the robot traveled at a speed of 0.5 BL/s, corresponding to a step size of 40 μm. Figure 5B plots the DEAnsect speed as a function of the driving voltage (250 to 450 V). The driving frequency was fixed at 450 Hz. The robot started moving at 300 V. With increasing voltage amplitude, the robot speed increased almost linearly (0.11 mm/s per volt). We show that the robot speed could be controlled by tuning the applied driving voltage. The maximum speed of 18 mm/s (0.5 BL/s) was obtained with a voltage amplitude of 450 V at 450 Hz for the flat DEAnsect.
Fig. 5 Performance of the DEAnsect driven by LVSDEAs.
(A) DEAnsect speed versus drive frequency at a fixed voltage of 450 V applied to all three LVSDEAs. The DEAnsect presents two speed peaks corresponding to resonance at 137 and 457 Hz. At 450-Hz driving frequency (all three DEAs), the flat DEAnsect moves at 18 mm/s. (B) DEAnsect speed versus drive voltage at resonance (450 Hz). The robot speed can be controlled by tuning the driving voltage (about 0.11 mm/s per volt with linear fit). The uncertainty for both graphs corresponds to the SD of five measurements per frequency or voltage.
Table S1 summarizes the effect of different terrains on the robot speed. We tested four different materials with different surface roughnesses: smooth poly(methyl methacrylate) (PMMA) sheets, polyester sheet, office paper, and sandpaper (grit P2500). On PMMA (arithmetic average roughness Ra = 0.2 μm), we observed the fastest speed. In general, the robot moved fast on smooth surfaces: 19 mm/s on PMMA (Ra = 0.2 μm) and 14 mm/s on polyester (Ra = 0.6 μm). In addition to the surface roughness, the robot speed also varied, with surface materials having different friction coefficients. For example, the sandpaper we used (Ra = 2 μm) showed similar Ra with office paper (Ra = 3 μm); the robot could move on office paper with a speed of 12 mm/s but could not move on sandpaper due to the increased friction coefficient.
Table S2 contains the DEAnsect speed with different payload masses. A polyester surface was used for this characterization. The robot with curved body (Fig. 1E) has higher payload-carrying capacity compared with the flat body. This configuration increased the contact angle of the two legs at the back, which increased the stiffness of the whole robot structure, leading to increased load-carrying capacity. For the flat DEAnsect configuration (Fig. 1D), the robot could carry up to a 700-mg load. For the curved configuration (Fig. 1E), the robot could carry 950 mg, five times its own weight (190 mg). When curved, the speed of the robot with no load was doubled, from 14 mm/s (0.4 BL/s) in the flat configuration to 30 mm/s (0.85 BL/s) in the curved one. Increasing the added load decreased the DEAnsect resonance frequencies as well as its step size, leading to lower speed.
The DEAnsect is extremely robust: After being completely flattened by a fly swatter, the robot could be peeled from the moving surface and continue moving forward (Fig. 6 and Movie 3). The robot kept working after eight flattening and peeling-off events. This resilience and ability to sustain very high deformations is one of the core advantages of soft robots.
Fig. 6 DEAnsect continues moving after being flattened by a fly swatter (seeMovie 3).
(A) Moving forward. (B) DEAnsect gets flattened by a fly swatter and sticks to the moving surface (inset, zoom of the deformed soft LVSDEA). (C) DEAnsect is pulled up and detached from the surface. (D) DEAnsect continues moving forward.
Movie 2. Robust DEAnsect surviving being flattened.
While in motion, the DEAnsect is completely flattened by a fly swatter and adheres to the surface. After being peeled off from the surface, the DEAnsect continues moving forward.
Autonomous untethered DEAnsect
The 190-mg bare DEAnsect can carry a 950-mg payload at a speed of 6 mm/s (table S2). We developed miniaturized control electronics to fit within a mass budget of 800 mg, including a rechargeable battery (table S3). Miniaturized voltage conversion circuits for microrobotic applications have been reported (33, 45). Commercially available voltage converters with the required capabilities weigh several grams. The smallest reported stand-alone voltage converter used for a piezoelectric flapping-wing robotic insect is a sub–50-mg voltage converter with high-voltage drivers (without control functionality) with step-up ratios of up to 60 and a working frequency of 120 Hz (33).
Energy efficiency is an important design constraint, because it influences strongly the robot's operating time. Campolo et al. (46) proposed a charge recovery scheme for piezoelectric actuators using additional electronics components. Mottet et al. (47) studied resonating circuits to transfer electrical charge between multiple DEAs, decreasing the wasted energy at each cycle. However, the waveform conditioning stage after the high-voltage output and the current feedback measurement increased the weight and power consumption. As a result, we opted for an open-loop flyback solution to drive our LVSDEAs.
We designed ultralight (780-mg weight) onboard control electronics using commercial components to give the robot untethered and autonomous motion (text S3 and fig. S4). Figure 7 shows photos of the flexible printed circuit board (PCB) driver. The surface of the PCB is 391 mm2. On the top side (Fig. 7A), there are four output pads where the wires of the robot can be soldered. The 3.7-V rechargeable battery and the mechanical switch were also soldered on the PCB at the narrow end. The electronics has two independent output channels, each with an independent waveform, with amplitude up to 480 V and frequency up to 1 kHz, dynamically set by the microcontroller. Using photodiodes as sensory input (Fig. 7B), the microcontroller gives the robot basic intelligence by implementing a finite state machine structure for feedback control. The electronics is 33.5% power efficient. Using an ASIC (application-specific integrated circuit) would allow for further reduction in the mass of the electronics.
Fig. 7 Photo of DEAnsect driver circuit.
(A) Top view. (B) Bottom view.
By integrating the 780-mg onboard electronics with our bare DEAnsect robot, we obtained the untethered version of DEAnsect (Fig. 1A), whose payload-carrying ability decreased to 170 mg. The untethered DEAnsect was programmed to move forward when both the photodiodes sensed black color. When one of the photodiodes sensed black and the other one sensed white, the robot turned to follow the black path. When both photodiodes saw white, the DEAnsect stopped. With this basic intelligence, the DEAnsect autonomously navigated a figure 8 as shown in Fig. 1B, automatically coming to a stop at the end (see Movie 1).
Half of the weight of the onboard electronics is the Li polymer battery (400 mg), which enabled 14 min of continuous operation. As for many electrically powered systems, energy storage is a major bottleneck. Progress in printed lightweight and flexible batteries can further improve the performance of the untethered robot by decreasing the entire body weight.
We developed a small-scale (1-g and 4-cm-long) untethered autonomous robot, DEAnsect, driven by LVSDEAs. DEAnsect is capable of autonomous navigation and illustrates the potential to make smart untethered robots based on DEAs.
Achieving soft autonomous mobile robots at this scale is challenging because the soft actuators need high enough power density to carry the whole system, including power supply, sensors, and computation. From Fig. 4C, we can estimate the power density of our LVSDEA. The elastic strain energy density for the elastomer is (24)Ue=12 Y Sz2(3)where Ue is the elastic strain energy density, Y is the Young's modulus of the elastomer, and Sz is the strain in thickness direction.
The power density of the LVSDEA can be estimated asPe=12 Y Sz2f=12Y(1−1(1+Sx)2)2f=12 Y(1−1(1+xd)2)2f(4)where Pe is the power density, Sx is the diameter strain, d is the initial diameter of the LVSDEA, x is the leg displacement, and f is the operating frequency of the LVSDEA.
The LVSDEA power density is more than 105 W/m3 at 300-Hz resonance and more than 106 W/m3 at 580-Hz resonance. These values correspond to a specific power density of 100 to 1000 W/kg. The total weight of the three active LVSDEAs is about 4 × 10−4 g. The high power density allows the submilligram LVSDEAs to drive the 1-g DEAnsect. The sub–450-V driving voltage allows the whole auxiliary systems to be miniaturized down to 780 mg, which enables the development of a fully untethered autonomous mobile robot. The total cost of transport (CoT) value for the untethered DEAnsect is 1670 (text S4 and fig. S5), which is relatively high compared with other legged robots (48). The high CoT value is mainly due to the relatively low overall DEA efficiency (0.95%), which stems in part from the energy dissipated through the high-resistance DEA electrodes (49 of 63 mW, see text S4) and in part from energy to charge and discharge the DEA capacitor at each cycle (13.4 of 14 mW, see text S4). Methods to improve the DEA efficiency include (i) reducing the resistance of the DEA electrodes; (ii) increasing the mechanical strain Sx=xd (here, 3.8%), because the mechanical work produced at each DEA cycle is (0.5 V2Ci((Sx + 1)4 − 1), which increases with increasing strain (Ci is the capacitance of the DEA at rest); and (ii) implementing electronic circuits to reuse parts of the charge stored in the capacitor (49).
Table 2 compares the locomotion performance of DEAnsect with the other untethered on-land robots capable of continuous locomotion using soft actuators. Our untethered DEAnsect presents a fast moving speed of 0.3 BL/s. With a total weight of less than 1 g, DEAnsect has the highest relative speed/body weight ratio (0.3 BL/s per g), more than one order of magnitude higher than other untethered soft robots in the literature. DEAnsect is also the most agile, with a small turning radius of 6 mm and turning speed of about 30°/s (Movie 1). DEAnsect is the only untethered soft robot with sensory-action response to environmental conditions able to navigate a path fully autonomously.
Table 2 Comparison between this work and the other untethered robots, capable of continuous locomotion on land and driven by soft actuators presented in literature.
The objective of this study is to demonstrate the development of subgram centimeter-scale untethered autonomous soft robots driven by DEAs and to characterize their performance. This achievement is made possible by our developed LVSDEAs with driving voltage below 450 V and capable of operation at more than 600 Hz. The sub–500-V operating voltage enabled onboard power and control electronics weighing only 780 mg. The low driving voltage and high power density of LVSDEAs enabled their use as artificial muscles to drive an autonomous untethered fast soft robotic insect, DEAnsect.
Octadecylamine-functionalized SWCNTs were purchased from Sigma-Aldrich (652482-100MG). Chloroform (≥99.8%) was purchased from Sigma-Aldrich (319988). PDMS (LSR 4305, parts A and B) was ordered from Bluestar (A-221-05). The PDMS solvent (OS-2) was ordered from Dow Corning (Auburn, MI). Poly(acylic acid) solution (PAA) (25%) was purchased from Chemie Brunschwig (00627-50). The silicone transfer adhesive ARclear was ordered from Adhesive Research (ARclear 8932). The polyester sheets were the backside cover of the silicone adhesive ARclear. PMMA plates were ordered from Laumat GmbH. Polyethylene terephthalate (PET) substrates 125 μm thick were purchased from DuPont Teijin (Melinex ST-506).
Fabrication technologies and processes
Fabrication of SWCNT ultrathin stretchable electrodes by LS method
Functionalized SWCNTs were dissolved in chloroform to a concentration of 0.5 g/liter. The solution was sonicated for 3 hours in an ice bath. After the solution was warmed to room temperature, it was ready to be used to form an SWCNT ultrathin electrode by the horizontal LS transfer method. Ultrapure water (resistivity, >18.2 megohm·cm) was produced by an ultrapure water purification system (Werner, EASYpure II). The water was poured inside the Langmuir-Blodgett trough (KSV NIMA, KN 2002). Eighty microliters of the prepared SWCNT solution was deposited drop by drop on the air-water interface. The barriers of the Langmuir trough compressed the SWCNTs to achieve the desired surface pressure. For the LS transfer, the corresponding substrate was horizontally moved toward the SWCNT layer. Once the contact between the substrate and the SWCNT layer was established, the substrate was raised until the transfer was complete.
Surface resistance measurement of SWCNT electrodes
To study the electrode surface resistance as a function of the LS transfer surface pressure and the number of LS transfers, we LS transferred the SWCNT layers onto PET substrates. For the electrode surface resistance versus the LS transfer surface pressure, 6 was selected as the number of LS transfers while varying the LS transfer surface pressure. For the electrode surface resistance versus the number of LS transfer, the LS transfer surface pressure was fixed at 3 mN/m while varying the number of LS transfer. The surface resistance of the fabricated electrodes was measured using a four-probe resistance measurement configuration (Keithley 2000). The corresponding electrode surface resistance variations are plotted in Fig. 3 (A and B).
SWCNT electrodes stretchability test: Surface resistance versus strain
To measure electrical resistance versus strain, we used a 100-μm-thick PDMS membrane as the stretchable substrate onto which the SWCNT electrode was transferred by LS method. The PDMS substrate was treated by OP (OP chamber manufactured by Diener, model ZEPTO). Then, the SWCNT layers compressed at a surface pressure of 3 mN/m were LS transferred in six sequential transfers onto the OP-treated PDMS substrate. To measure the SWCNT electrode electrical resistance, we deposited four gold contacts, 20 nm thick, on the SWCNT electrode using a gold sputter coater (JEOL, JFC-1200). For the resistance versus strain measurement, the SWCNT electrode on PDMS substrate was mounted on a motorized linear stage (Standa, 8MT175-50) to stretch the electrode. The zone with the gold contacts was fixed onto a PMMA rigid support using a silicone adhesive to avoid deformation of the gold connections. The stretchable zone was a suspended PDMS membrane coated with LS-transferred SWCNT electrodes. The electrode was stretched at a speed of 20 μm/s, and the electrode resistance was recorded. A LabVIEW (National Instruments) code was used to control the instruments and record the data. The electrode surface resistance as a function of applied linear stretch is presented in Fig. 3C.
SWCNT electrodes surface topography
To study the surface topography of the ultrathin electrodes, we LS transferred the SWCNT layers onto PET substrate with 6 as the number of LS transfers and 3 mN/m as the LS transfer surface pressure. The topography images were obtained by AFM (BRUKER, Dimension Edge with ScanAsyst) using the tapping mode. The electrode surface topography is presented in fig. S2.
Assembly LVSDEAs for DEAnsect
Parts A and B of the PDMS LSR 4305 were mixed with the silicone solvent OS-2 (Dow Corning), as described in (43), in mass fractions of 25, 25, and 50 weight % using a planetary mixer (Thinky, ARE-250). A 23-μm-thick PDMS membrane was fabricated by casting the uncured PDMS on a PET substrate coated with a PAA sacrificial layer, using an automatic film applicator (Zehntner) set to a blade gap of 100 μm. A suspended PDMS membrane was obtained by dissolving the PAA sacrificial layer in hot water. The 23-μm-thick PDMS membrane was then equibiaxially prestretched by the ratio about 1.8, reducing the membrane thickness to 6.5 μm (fig. S3A). It was fixed on a custom-made PMMA holder. The prestretched PDMS membranes were used as the dielectric layers of the stacked DEAs.
To LS transfer the patterned electrodes on the PDMS dielectric layers, we used masks to define the electrode geometries. The OP treatment needs to be performed only on the bare PDMS zone to ensure good transfer quality. A second sacrificial mask with the same pattern as the mask for the LS transfer was overlapped on the first one for the OP treatment. The second mask protected the first one to avoid OP treatment, because OP treatment on the first mask influenced the SWCNT electrode LS transfer. After the OP treatment (Diener, ZEPTO) with 30-W power for 6 s, the second mask was peeled off (fig. S3B), and the SWCNT layers could be LS transferred on the bare PDMS zones with the first mask for the electrode shape patterning. By peeling off the first mask, the suspended PDMS with patterned SWCNT electrodes was obtained (fig. S3C). The masks were fabricated from 50-μm-thick polyester sheets, and the mask geometries were cut out using a laser engraving machine (Trotec, Speedy 300).
For more reliable electrical interconnects, a 20-nm-thick gold layer was sputtered on the LS-transferred electrodes far from the DEA active region, in a shape patterned using the corresponding masks (fig. S3D). The masks for gold patterning were made from laser-cut paper. While applying the mask for gold patterning, a 1-mm space gap between the mask and the prestretched PDMS membrane was used to avoid direct contact between the two. After the gold layer deposition, the first layer electrode was finished for the first PDMS layer of the stacked DEA. The first PDMS layer was then flipped over to apply the second electrode. This turning over process was done as in (42), by using PDMS membrane holders with different sizes.
The second layer electrode was applied as shown in fig. S3C, with a different mask (fig. S3E). By coating a 20-nm gold layer using a mask on the second LS-transferred electrodes, the first single layer DEA was completed (fig. S3F). Then, by repeating the same process as before with suitable masks, the third DEA electrode was applied onto the second PDMS layer (fig. S3G), and the fourth DEA electrode was applied onto the third PDMS layer (fig. S3H). Last, for the LVSDEA assembly, the three PDMS layers with applied electrodes in fig. S3 (F to H) were assembled together on to the robot frame (fig. S3I).
During the assembly, silicone adhesive was used to ensure the adhesion between the PDMS layers. Conductive silver epoxy drops were applied on each patterned gold layer. After lamination of all layers, fine copper wires were used to puncture through predefined holes on the body frame and mechanically fixed and electrically connected using silver epoxy (fig. S3I). The final assembled stacked layers were vacuum-treated to remove any air bubbles from the lamination step. After degassing, the stacked layers were placed in an oven at 80°C for 2 hours to cure the conductive silver epoxy. The LVSDEAs were then complete.
The legs of the DEAnsect robot were composed of laser-cut PET and PMMA, attached by ARclear adhesive. The assembly was mounted to the membrane in close proximity to the actuator electrodes (Fig. 1C).
Characterization of LVSDEAs and DEAnsect robots
The motion data were obtained by analyzing the images, photos, or video frames. For the data in Fig. 4A, the photos were taken by optical microscope (Dino-Lite). For the data in Fig. 4 (B and C), the photos were taken by a high-speed camera (Phantom v210) with a frame rate of 7000 frames per second. For the robot performance data in Fig. 5, the data were obtained from the corresponding video frames. All the images were analyzed using Vision Assistant (National Instruments) and the Fiji distribution of ImageJ.
robotics.sciencemag.org/cgi/content/full/4/37/eaaz6451/DC1
Text S1. SWCNT Langmuir compression isotherm
Text S2. AFM image of the SWCNT electrode
Text S3. Onboard electronic design concept and performance
Text S4. DEAnsect CoT calculation
Fig. S1. SWCNT Langmuir compression isotherm.
Fig. S2. AFM image of the SWCNT electrode.
Fig. S3. DEAnsect soft robot fabrication process.
Fig. S4. DEAnsect onboard electronics design and performance.
Fig. S5. Power flow in the DEAnsect, with number for motion at 12 mm/s.
Table S1. Bare DEAnsect robot speed on different material surfaces.
Table S2. Bare DEAnsect speed versus payload.
Table S3. Components of the 780-mg onboard DEAnsect electronics.
M. T. Tolley
, Design, fabrication and control of soft robots. Nature 521, 467–475 (2015).
L. Hines,
K. Petersen,
G. Z. Lum,
M. Sitti
, Soft actuators for small-scale robotics. Adv. Mater. 29, 1603483 (2017).
R. K. Katzschmann,
J. DelPreto,
R. MacCurdy,
, Exploration of underwater life with an acoustically controlled soft robotic fish. Sci. Robot. 3, eaar3449 (2018).
T. Li,
Z. Zou,
G. Mao,
X. Yang,
Y. Liang,
C. Li,
S. Qu,
W. Yang
, Agile and resilient insect-scale robot. Soft Robot. 6, 133–141 (2019).
S. Terryn,
J. Brancart,
D. Lefeber,
G. Van Assche,
B. Vanderborght
, Self-healing soft pneumatic robots. Sci. Robot. 2, eaan4268 (2017).
J. Shintake,
B. Schubert,
D. Floreano,
H. Shea
, Versatile soft grippers with intrinsic electroadhesion based on multifunctional polymer actuators. Adv. Mater. 28, 231–238 (2016).
G. Soter,
A. T. Conn,
, A soft matter computer for soft robots. Sci. Robot. 4, eaaw6060 (2019).
S. I. Rich,
, Untethered soft robotics. Nat. Electron. 1, 102–112 (2018).
M. T. Tolley, R. F. Shepherd, M. Karpelson, N. W. Bartlett, K. C. Galloway, M. Wehner, R. Nunes, G. M. Whitesides, R. J. Wood, An untethered jumping soft robot, in 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems (IEEE, 2014), pp. 561–566.
J. T. B. Overvelde,
K. Bertoldi,
, A 3D-printed, functionally graded soft robot powered by combustion. Science 349, 161–165 (2015).
S. Maeda,
Y. Hara,
T. Sakai,
R. Yoshida,
S. Hashimoto
, Self-walking gel. Adv. Mater. 19, 3480–3484 (2007).
T. Kitamori, A. Wada, H. Nabae, K. Suzumori, Untethered three-arm pneumatic robot using hose-free pneumatic actuator, in 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE, 2016), pp. 543–548.
H.-T. Lin,
G. G. Leisk,
, GoQBot: A caterpillar-inspired soft-bodied rolling robot. Bioinspir. Biomim. 6, 026007 (2011).
X. Huang,
K. Kumar,
M. K. Jawed,
A. Mohammadi Nasab,
Z. Ye,
W. Shan,
, Highly dynamic shape memory alloy actuator for fast moving soft robots. Adv. Mater. Technol. 4, 1800540 (2019).
F. Ilievski,
W. Choi,
S. A. Morin,
A. A. Stokes,
A. D. Mazzeo,
M. Wang,
, Multigait soft robot. Proc. Natl. Acad. Sci. U.S.A. 108, 20400–20403 (2011).
V. Cacucciolo,
Y. Kuwajima,
, Stretchable pumps for soft machines. Nature 572, 516–519 (2019).
J. Mohd Jani,
M. Leary,
A. Subic,
M. A. Gibson
, A review of shape memory alloy research, applications and opportunities. Mater. Des. 56, 1078–1113 (2014).
M. Jung de Andrade,
O. Göktepe,
X. Lepro,
E. Acome,
S. K. Mitchell,
T. G. Morrissey,
M. B. Emmett,
C. Benjamin,
M. King,
M. Radakovitz,
C. Keplinger
, Hydraulically amplified self-healing electrostatic actuators with muscle-like performance. Science 359, 61–65 (2018).
T. Martin,
K. Ly,
N. Kellaris,
V. G. Venkata,
, An easy-to-implement toolkit to create versatile and high-performance HASEL actuators for untethered soft robots. Adv. Sci. 6, 1900178 (2019).
R. Pelrine
, High-speed electrically actuated elastomers with strain greater than 100%. Science 287, 836–839 (2000).
L. Maffli,
M. Ghilardi,
F. Carpi,
, Ultrafast all-polymer electrically tunable silicone lenses. Adv. Funct. Mater. 25, 1656–1665 (2015).
J. Huang,
C. Chiang Foo,
J. Zhu,
D. R. Clarke,
Z. Suo
, Giant, voltage-actuated deformation of a dielectric elastomer under dead load. Appl. Phys. Lett. 100, 041911 (2012).
M. Duduta,
E. Hajiesmaili,
H. Zhao,
D. R. Clarke
, Realizing the potential of dielectric elastomer artificial muscles. Proc. Natl. Acad. Sci. U.S.A. 116, 2476–2481 (2019).
M. Duduta, D. R. Clarke, R. J. Wood, A high speed soft robot based on dielectric elastomer actuators, in 2017 IEEE International Conference on Robotics and Automation (ICRA) (IEEE, 2017), pp. 4346–4351.
G. Li,
T. Cheng,
J. Dai,
B. Liu,
Z. Zeng,
Z. Huang,
Y. Luo,
T. Xie,
, Fast-moving soft electronic fish. Sci. Adv. 3, e1602045 (2017).
F. Berlinger, M. Duduta, H. Gloria, D. Clarke, R. Nagpal, R. Wood, A modular dielectric elastomer actuator to drive miniature autonomous underwater vehicles, in 2018 IEEE International Conference on Robotics and Automation (ICRA) (IEEE, 2018), pp. 3429–3435.
J. Cao,
L. Qin,
J. Liu,
Q. Ren,
C. C. Foo,
H. Wang,
H. P. Lee,
J. Zhu
, Untethered soft robot capable of stable locomotion using soft electrostatic actuators. Extreme Mech. Lett. 21, 9–16 (2018).
K. Y. Ma,
P. Chirarattananon,
S. B. Fuller,
, Controlled flight of a biologically inspired, insect-scale robot. Science 340, 603–607 (2013).
G.-Y. Wei,
, Driving high voltage piezoelectric actuators in microrobotic applications. Sens. Actuators A Phys. 176, 78–89 (2012).
N. T. Jafferis,
E. F. Helbling,
, Untethered flight of an insect-sized flapping-wing microscale aerial vehicle. Nature 570, 491–495 (2019).
R. E. Pelrine,
R. D. Kornbluh,
J. P. Joseph
, Electrostriction of polymer dielectrics with compliant electrodes as a means of actuation. Sens. Actuators A Phys. 64, 77–85 (1998).
S. Martel
, Fundamental principles and issues of high-speed piezoactuated three-legged motion for miniature robots designed for nanometer-scale operations. Int. J. Rob. Res. 24, 575–588 (2005).
F. B. Madsen,
A. E. Daugaard,
S. Hvilsted,
A. L. Skov
, The current state of silicone-based dielectric elastomer transducers. Macromol. Rapid Commun. 37, 378–413 (2016).
D. M. Opris
, Polar elastomers as novel materials for electromechanical actuator applications. Adv. Mater. 30, 1703678 (2018).
A. Poulin,
, Printing low-voltage dielectric elastomer actuators. Appl. Phys. Lett. 107, 244104 (2015).
D. McCoul,
W. Hu,
M. Gao,
V. Mehta,
Q. Pei
, Recent advances in stretchable and transparent electronic materials. Adv. Electron. Mater. 2, 1500407 (2016).
X. Ji,
A. El Haitami,
F. Sorba,
G. T. M. Nguyen,
C. Plesse,
F. Vidal,
H. R. Shea,
S. Cantin
, Stretchable composite monolayer electrodes for low voltage dielectric elastomer actuators. Sens. Actuators B 261, 135–143 (2018).
O. A. Araromi,
S. Schlatter,
, Fabrication process of silicone-based dielectric elastomer actuators. J. Vis. Exp. e53423 (2016).
S. Béfahy,
P. Lipnik,
T. Pardoen,
C. Nascimento,
B. Patris,
P. Bertrand,
S. Yunus
, Thickness and elastic modulus of plasma treated PDMS silica-like surface layer. Langmuir 26, 3372–3375 (2010).
E. Steltz, M. Seeman, S. Avadhanula, R. S. Fearing, Power electronics design choice for piezoelectric microrobots, in 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems (IEEE, 2006), pp. 1322–1328.
D. Campolo,
M. Sitti,
R. S. Fearing
, Efficient charge recovery method for driving piezoelectric actuators with quasi-square waves. IEEE Trans. Ultrason. Ferroelectr. Freq. Control 50, 237–244 (2003).
R. Mottet, J. Chavanne, A. Boegli, Y. Perriard, Power electronics design choice for piezoelectric microrobots, in 2018 21st International Conference on Electrical Machines and Systems (ICEMS) (IEEE, 2018), pp. 2408–2413.
P. M. Wensing
, Design of dynamic legged robots. Found. Trends Robot. 5, 117–190 (2017).
J.-P. L. Bigue,
J.-S. Plante
, Experimental study of dielectric elastomer actuator energy conversion efficiency. IEEE ASME Trans. Mechatron. 18, 169–177 (2013).
A. M. Nasab,
, Chasing biomimetic locomotion speeds: Creating untethered soft robots with shape memory alloy actuators. Sci. Robot. 3, eaau7557 (2018).
I. Must,
F. Kaasik,
I. Põldsalu,
L. Mihkels,
U. Johanson,
A. Punning,
A. Aabloo
, Ionic and capacitive artificial muscle for biomimetic soft robotics. Adv. Eng. Mater. 17, 84–94 (2015).
Acknowledgments: We thank J. Shintake for the advice on the mobile robot and A. Boegli for help in designing the portable electronics. Funding: This work was funded, in part, by the European Union's Horizon 2020 research and innovation program under Marie Skłodowska-Curie grant agreement no. 641822-MICACT via the Swiss State Secretariat for Education, Research and Innovation and Swiss National Science Foundation grant no. 200020_165993. Author contributions: X.J. and H.S. designed the research. H.S. supervised the overall project. X.J., A.E.H., and S.C. developed the ultrathin SWCNT electrodes using Langmuir technology. X.J. designed, fabricated, and characterized the LVSDEAs and the bare DEAnsect robots. X.J. and M.I. analyzed the robot motion. Y.P. and Y.C. supervised the electronics and embedded software development. X.L. designed, fabricated, tested, and programmed the flexible electronics for the DEAnsect robots. X.L. and X.J. characterized the equivalent circuits. X.L. and Y.C. wrote the Supplementary Materials on the low-mass electronics. X.J. wrote the rest of the Supplementary Materials. X.J., V.C., and H.S. wrote the manuscript. All authors edited and agreed with the manuscript. Competing interests: The authors declare that they have no competing interests. Data and materials availability: All data needed to evaluate the conclusions of the paper are available in the paper or the Supplementary Materials.
You are going to email the following An autonomous untethered fast soft robotic insect driven by low-voltage dielectric elastomer actuators
By Xiaobin Ji, Xinchang Liu, Vito Cacucciolo, Matthias Imboden, Yoan Civet, Alae El Haitami, Sophie Cantin, Yves Perriard, Herbert Shea
Science Robotics 18 Dec 2019
Low-voltage dielectric elastomer actuators propel an autonomous untethered subgram robust soft legged robot along complex paths.


text:
Report of the working group on possible approaches to the integration of demographic, social and related economic statistics in development planning in Africa
Bib-51843.pdf (1.740Mb)
The Working Group on Possible Approaches to the integration of demographic, social and related economic statistics in development planning in Africa met in Moscow, USSR, from 7 to 14 September 1987, The meeting was convened with the financial support of the USSR Government through the United Nations Regular Programme of Technical Cooperation. The First Vice-Chairman of the State Committee of USSR for Statistics opened the meeting. Messages from the Director of Statistics Division of the ECU and from the Chief of External Relations, State Committee of the USSR for External Economic relations were communicated at the opening session
"United Nations. Economic and Social Council; United Nations. Economic Commission for Africa (1987-12). Report of the working group on possible approaches to the integration of demographic, social and related economic statistics in development planning in Africa. UN. ECA Joint Conference of African Planners, Statisticians and Demographers (5th Session : 1987, March, 21-28 : Addis Ababa, Ethiopia). Addis Ababa :. © UN. ECA,. http://hdl.handle.net/10855/11002"
UN. ECA Joint Conference of African Planners, Statisticians and Demographers (5th Session : 1987, March, 21-28 : Addis Ababa, Ethiopia)
Organizational Management [4904]
Social Development [5842]
Framework for a set of e-government core indicators
United Nations. Economic Commission for Africa.; United Nations. Economic Commission for Latin America and the Caribbean; United Nations. Economic and Social Commission for Asia and the Pacific; United Nations. Economic and Social Commission for Western Asia; Statistical Office of the European Union; International Telecommunication Union; Organisation for Economic Co-operation and Development; United Nations Conference on Trade and Development
"United Nations. Economic Commission for Africa.; United Nations. Economic Commission for Latin America and the Caribbean; United Nations. Economic and Social Commission for Asia and the Pacific; United Nations. Economic and Social Commission for Western Asia; Statistical Office of the European Union; International Telecommunication Union; Organisation for Economic Co-operation and Development; United Nations Conference on Trade and Development (2012). Framework for a set of e-government core indicators. Addis Ababa :. © UN. ECA,. http://hdl.handle.net/10855/25669"
Aperçu de l'évolution récente de la situation économique et sociale en Afrique
United Nations. Economic Commission for Africa. African Institute for Economic Development and Planning(IDEP); Nations Unies. Commission Economique pour l'Afrique; Nations Unies. Conseil Economique et Social; United Nations. Economic Commission for Africa. African Institute for Economic Development and Planning(IDEP); Nations Unies. Commission Economique pour l'Afrique; Nations Unies. Conseil Economique et Social
"United Nations. Economic Commission for Africa. African Institute for Economic Development and Planning(IDEP); Nations Unies. Commission Economique pour l'Afrique; Nations Unies. Conseil Economique et Social; United Nations. Economic Commission for Africa. African Institute for Economic Development and Planning(IDEP); Nations Unies. Commission Economique pour l'Afrique; Nations Unies. Conseil Economique et Social (2018-05). Aperçu de l'évolution récente de la situation économique et sociale en Afrique. NU. CEA Comité d'experts de la Conférence des ministres africains des finances, de la planification et du développement économique (37ème: 11-12 mai, 2018: Addis Abeba, Ethiopie). Addis Abeba:. © NU. CEA,. "
Economic and social information systems in support of sustainable development and regional integration in Africa
"United Nations. Economic and Social Council; United Nations. Economic Commission for Africa (1994-02). Economic and social information systems in support of sustainable development and regional integration in Africa. UN. ECA Joint Conference of African Planners, Statisticans and Demographers (8th session : 1994, Mar. 21 - 26 : Addis Ababa, Ethiopia). Addis Ababa :. © UN. ECA,. http://hdl.handle.net/10855/14606"

redpajama_set_name: RedPajamaCommonCrawl


If you haven't heard by now, Pyeongchang, the mountainous South Korean town located in Gangwon Province, 112 miles outside of Seoul, has won the bid to host the 2018 Winter Olympics. Helping secure the win was the $1.4 billion dollar, 1,240-acre Alpensia Resort, which was completed in 2009. It will become home to the Olympic Village, several competitions and the opening and closing ceremonies. Nicknamed "Alps in Asia", the alpine-style village was designed as an all-season, year-round destination with the help of Cuningham Group Architecture, whose LA office oversaw the design and master planning.
While not exclusively built for the Winter Games, Alpensia boasts Olympic-grade facilities, including, ski jumping, biathlon, and cross-country skiing venues. Other amenities include five-star hotels, private residences, golf courses, a water park, and convention and concert centers.
"From the start, Alpensia was conceived as an international resort and recreation destination," said Cuningham Group Principal Jim Scheidel AIA, LEED AP, who supervised the design. At the heart of the village is a retail and entertainment pedestrian promenade. Adjacent to it is a factory outlet shopping street, one of the first of its kind in Korea.
For Olympic-bound travelers, a new high-speed rail link from Seoul's international airport to Pyeonchang is scheduled to open ahead of the Games and will zip visitors to the slopes in about an hour.


American Water Works Company (NYSE:AWK) announced that its board of directors increased its quarterly cash dividend payment from 45.5 cents to 50.0 cents per share, a 9.9% percent increase. The increased dividend will be payable on June 4, 2019, to all shareholders of record as of May 13, 2019.
Sonoco (NYSE:SON) declared a $.43 per share quarterly common stock dividend, an approximately 5 percent increase from the previous quarterly dividend of $.41 per share. The dividend will be paid on June 10, 2019, to shareholders of record as of May 10, 2019.
CIT Group (NYSE:CIT) has declared a quarterly cash dividend of $0.35 per common share on its outstanding common stock, which represents an increase of 40 percent over the prior quarter's $0.25 per common share dividend. The common stock dividend is payable on May 24, 2019 to common shareholders of record as of May 10, 2019.


The Rescator Resort holiday complex offers an affordable family vacation in one of Spain´s most beautiful and diverse regions: Catalonia. The residential complex has 68 apartments, with capacity for 4 to 6 persons. It offers facilities like gardens, swimming pools including children´s pool, playground, tennis court, football, volleyball, petanque, bar, laundry service, reception, WIFI zone, bicycle rental and animation team. It is located at 2 km from the beautiful sandy beaches of Roses, 1.50 km from the town center, 1.50 km from the bus station, 1.50 km from the supermarket, 20 km from the railway station, 69 km from Girona Airport and 170 km from Barcelona Airport.
- 2 single beds, 1 double sofa bed.
- Fridge, microwave, crockery / cutlery, kitchen utensils, coffee machine.
- garden furniture, terrace, iron, central heating, swimming pool, outdoor parking.


text:
One in five cannot name a single author of literature, survey shows
A section of society is 'shut off' from literature, one author warned Credit: Alamy
Rozina Sabur
1 March 2017 • 12:31am
One in five British people cannot name a single author of literature, a survey has revealed, as writers warn there is a section of society that is "shut off" from the benefits of reading.
The study, from the Royal Society of Literature, revealed that 15 per cent of those surveyed believe that literature is too difficult to understand.
That was despite the fact that 67 per cent of people saying that literature brought comfort in times of stress.
Shakespeare was the most popular name cited as an author of literature Credit: The Art Archive /Alamy
It included a publicly-voted chart of literary authors, where almost 2,000 British people were asked to name a writer they considered to be a writer of literature.
A substantial minority of the population were found to have little or no knowledge of literature, with 20 per cent saying they could not name a single one.
30 great opening lines in literature
Moreover a quarter of those surveyed said they had not read any literature in the last six months.
However, more than half (56 per cent) of those who do not currently read literature said they would like to in the future.
Michael Morpurgo said a minority of people 'do not know or value or love literature' Credit: Andrew Crowley
Children's writer and author of War Horse, Michael Morpurgo, warned against minimising "the significance in our society of the vast numbers, albeit a minority, who do not know or value or love literature.
"There seems to be a gulf that shuts off 20 per cent of people from the benefits of literature, a gulf that I know the RSL and others are determined to bridge."
The most commonly named writer was William Shakespeare, while Charles Dickens came a close second.
Shakespeare quiz


Tampico - Ora E. Newman, age 91, of Tampico, Illinois died Thursday, November 28, 2013 at Prophets Good Samaritan Center in Prophetstown, Illinois.
He was preceded in death by his parents, wife, one son Mark, three brothers Vernon, Warren, and Keith.
Funeral services will be held on Monday at 1 p.m. at Garland Funeral Home in Tampico Burial will be in Riverside Cemetery in Prophetstown, Illinois with Isaac Newman, officiating. Condolences may be sent to www.garlandfuneralhome.com.


text:
Young 'Ben' gives up a few spoilers for Lost
Share Young 'Ben' gives up a few spoilers for Lost on Facebook
Share Young 'Ben' gives up a few spoilers for Lost on Twitter
Share Young 'Ben' gives up a few spoilers for Lost on Reddit
Tag: Lost
Sterling Beaumon—the 13-year-old actor who played young Ben Linus in the third-season Lost episode "The Man Behind the Curtain"—will kick off a multi-episode arc on the ABC sci-fi series starting with this Wednesday's episode, "Namaste."
SCI FI Wire recently spoke with Beaumon about his Lost experience and his latest episodes. Following are edited excerpts of the exclusive conversation. Lost airs Wednesdays at 9 p.m. ET/PT.
More Lost
119 things Lost did (and didn't) answer
Lost questions and answers: What happened to Claire!
Go back a step. How did they first hire you?
Beaumon: I actually look hardly anything like Michael Emerson [who plays the adult version of Ben], besides the eyes. I guess I do; a lot of people say I do. But what really got it for me was I could cry. I could cry on cue. And in the first episode I did I had to cry in every scene.
When you did that first episode, did they tell you the role might be recurring?
Beaumon: They don't tell anyone anything, but everyone said, "Your character is so big, and your first episode is so big, they have to bring you back." Little did I know that after two years they'd bring me back.
We know that Lost has that crazy veil of secrecy over it, but give us a hint as to what you'll be up to in your episodes.
Beaumon: You're going to find out how Ben became the mean, cruel Ben that he is today. And you're going to find out about the roots of the island and how the island became the island. ... In two of the episodes, I'm really not doing a lot, but you just see me a lot, and you'll see what I mean by that.
Do you get a lot of people coming up to you, asking what's going to happen?
Beaumon: Yeah. It's kind of nice, and it's kind of hard. It's nice because the secrecy gets people to watch, because they want to know what's going to happen. And, in a way, it's hard, because you want to tell people what you do, but now I have to wait months to tell people how fun it was to do this or do that [in an episode], or to show people pictures from the set.
Did you go back and watch any of Michael Emerson's performances as Ben in order to help you play a natural extension of the character?
Beaumon: After I did my first episode [a couple of years ago], we became hooked on Lost, and I watched every single episode. Actually, ["Namaste" director] Jack Bender told me, "You do anything like Michael, and it'll ruin what's coming up." I didn't know what he meant, because I hadn't gotten the next script. And then I [read the next script and thought], "Oh, wow, I see why I can't act like Michael." Because you'll see why Michael starts acting like Ben within these episodes.
What are the chances you'll be back again after these episodes?
Beaumon: Everyone says, "Oh, gosh, you've got to come back again." What I'm hoping is that Annie, supposedly Ben's childhood friend, comes back [in a subsequent episode]. The girl who plays Annie [Madeline Carroll] is actually a close friend of mine.


AP Environmental Science Students from Byrnes Collegiate School learned about landfills and ways to reduce waste at Sonoco Recycling's Education Center.
Congratulations to South Pointe High School Environmental Science teacher, Susan Fields, 1 of 5 South Carolina State Finalist in the Samsung "Solve For Tomorrow" Contest. During their Tiny House Project, her students learned about sustainable living, land use and alternative energies. The students also researched the Tiny House movement happening in Rock Hill, including learning about the city's zoning ordinance, which states the size requirements for homes. Fields received a free Samsung Tablet, which she can incorporate into future problem based learning projects.
Barclay School Students write about their favorite activities for their monthly "Barclay Chronical" Nate wrote, "In science, we dissected a rotten log and made a birdfeeder. It was fun because the log was full of bugs. Now we are learning about soil." Students also worked to build a new rabbit hutch for their pets.
Students at White Knoll HS painted cans and other upcycled containers for plants to improve air quality in classrooms.
Put your school garden on the map by building and registering your climate victory garden.
Students at Dent Middle School learned about soil with Green Steps mentor, Karen Jackson, testing infiltration rates and estimating the percent of sand, silt, and clay before building their new rain garden.


text:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Contrib.Taxonomies.Models;
using Orchard;
using Orchard.Autoroute.Models;
using Orchard.ContentManagement;
using Orchard.ContentManagement.Aspects;
using Orchard.ContentManagement.MetaData;
using Orchard.Core.Common.Models;
using Orchard.Core.Title.Models;
using Orchard.Data;
using Orchard.Localization;
using Orchard.Logging;
using Orchard.Security;
using Orchard.UI.Notify;

namespace Contrib.Taxonomies.Services {

    public class TaxonomyService : ITaxonomyService {
        private readonly IRepository<TermContentItem> _termContentItemRepository;
        private readonly IContentManager _contentManager;
        private readonly INotifier _notifier;
        private readonly IAuthorizationService _authorizationService;
        private readonly IContentDefinitionManager _contentDefinitionManager;
        private readonly IOrchardServices _services;

        public TaxonomyService(
            IRepository<TermContentItem> termContentItemRepository,
            IContentManager contentManager,
            INotifier notifier,
            IContentDefinitionManager contentDefinitionManager,
            IAuthorizationService authorizationService,
            IOrchardServices services) {
            _termContentItemRepository = termContentItemRepository;
            _contentManager = contentManager;
            _notifier = notifier;
            _authorizationService = authorizationService;
            _contentDefinitionManager = contentDefinitionManager;
            _services = services;

            Logger = NullLogger.Instance;
            T = NullLocalizer.Instance;
        }

        public ILogger Logger { get; set; }
        public Localizer T { get; set; }

        public IEnumerable<TaxonomyPart> GetTaxonomies() {
            return _contentManager.Query<TaxonomyPart, TaxonomyPartRecord>().WithQueryHints(new QueryHints().ExpandParts<AutoroutePart, TitlePart>()).List();
        }

        public TaxonomyPart GetTaxonomy(int id) {
            return _contentManager.Get(id, VersionOptions.Published, new QueryHints().ExpandParts<TaxonomyPart, AutoroutePart, TitlePart>()).As<TaxonomyPart>();
        }

        public TaxonomyPart GetTaxonomyByName(string name) {
            if (String.IsNullOrWhiteSpace(name)) {
                throw new ArgumentNullException("name");
            }

            return _contentManager
                .Query<TaxonomyPart>()
                .Join<TitlePartRecord>()
                .Where(r => r.Title == name)
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, CommonPartRecord>())
                .List()
                .FirstOrDefault();
        }

        public TaxonomyPart GetTaxonomyBySlug(string slug) {
            if (String.IsNullOrWhiteSpace(slug)) {
                throw new ArgumentNullException("slug");
            }

            return _contentManager
                .Query<TaxonomyPart, TaxonomyPartRecord>()
                .Join<TitlePartRecord>()
                .Join<AutoroutePartRecord>()
                .Where(r => r.DisplayAlias == slug)
                .List()
                .FirstOrDefault();
        }

        public void CreateTermContentType(TaxonomyPart taxonomy) {
            // create the associated term's content type
            taxonomy.TermTypeName = GenerateTermTypeName(taxonomy.Name);

            _contentDefinitionManager.AlterTypeDefinition(taxonomy.TermTypeName,
                cfg => cfg
                    .WithSetting("Taxonomy", taxonomy.Name)
                    .WithPart("TermPart")
                    .WithPart("TitlePart")
                    .WithPart("AutoroutePart", builder => builder
                        .WithSetting("AutorouteSettings.AllowCustomPattern", "true")
                        .WithSetting("AutorouteSettings.AutomaticAdjustmentOnEdit", "false")
                        .WithSetting("AutorouteSettings.PatternDefinitions", "[{Name:'Taxonomy and Title', Pattern: '{Content.Container.Path}/{Content.Slug}', Description: 'my-taxonomy/my-term/sub-term'}]")
                        .WithSetting("AutorouteSettings.DefaultPatternIndex", "0"))
                    .WithPart("CommonPart")
                    .DisplayedAs(taxonomy.Name + " Term")
                );

        }

        public void EditTaxonomy(TaxonomyPart taxonomy, string oldName) {
            // rename term definition
            _contentDefinitionManager.AlterTypeDefinition(taxonomy.TermTypeName,
                cfg => cfg
                    .WithSetting("Taxonomy", taxonomy.Name)
                    .DisplayedAs(taxonomy.Name + " Term")
                );
        }

        public void DeleteTaxonomy(TaxonomyPart taxonomy) {
            _contentManager.Remove(taxonomy.ContentItem);

            // removing terms
            foreach (var term in GetTerms(taxonomy.Id)) {
                DeleteTerm(term);
            }

            _contentDefinitionManager.DeleteTypeDefinition(taxonomy.TermTypeName);
        }

        public string GenerateTermTypeName(string taxonomyName) {
            var disallowed = new Regex(@"[^\w]+");
            return disallowed.Replace(taxonomyName, "-");
        }

        public TermPart NewTerm(TaxonomyPart taxonomy) {
            var term = _contentManager.New<TermPart>(taxonomy.TermTypeName);
            term.TaxonomyId = taxonomy.Id;

            return term;
        }

        public IEnumerable<TermPart> GetTerms(int taxonomyId) {
            var result = _contentManager.Query<TermPart, TermPartRecord>()
                .Where(x => x.TaxonomyId == taxonomyId)
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>())
                .List();

            return TermPart.Sort(result);
        }

        public TermPart GetTermByPath(string path) {
            return _contentManager.Query<TermPart, TermPartRecord>()
                .Join<AutoroutePartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<TitlePartRecord, CommonPartRecord>())
                .Where(rr => rr.DisplayAlias == path)
                .List()
                .FirstOrDefault();
        }

        public IEnumerable<TermPart> GetAllTerms() {
            var result = _contentManager
                .Query<TermPart, TermPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>())
                .List();
            return TermPart.Sort(result);
        }

        public TermPart GetTerm(int id) {
            return _contentManager
                .Query<TermPart, TermPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>())
                .Where(x => x.Id == id).List().FirstOrDefault();
        }

        public IEnumerable<TermPart> GetTermsForContentItem(int contentItemId, string field = null) {
            return String.IsNullOrEmpty(field)
                ? _termContentItemRepository.Fetch(x => x.TermsPartRecord.ContentItemRecord.Id == contentItemId).Select(t => GetTerm(t.TermRecord.Id))
                : _termContentItemRepository.Fetch(x => x.TermsPartRecord.Id == contentItemId && x.Field == field).Select(t => GetTerm(t.TermRecord.Id));
        }

        public TermPart GetTermByName(int taxonomyId, string name) {
            return _contentManager
                .Query<TermPart, TermPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>())
                .Where(t => t.TaxonomyId == taxonomyId)
                .Join<TitlePartRecord>()
                .Where(r => r.Title == name)
                .List()
                .FirstOrDefault();
        }

        public void CreateTerm(TermPart termPart) {
            if (GetTermByName(termPart.TaxonomyId, termPart.Name) == null) {
                _authorizationService.CheckAccess(Permissions.CreateTerm, _services.WorkContext.CurrentUser, null);

                termPart.As<ICommonPart>().Container = GetTaxonomy(termPart.TaxonomyId).ContentItem;
                _contentManager.Create(termPart);
            }
            else {
                _notifier.Warning(T("The term {0} already exists in this taxonomy", termPart.Name));
            }
        }

        public void DeleteTerm(TermPart termPart) {
            _contentManager.Remove(termPart.ContentItem);

            foreach(var childTerm in GetChildren(termPart)) {
                _contentManager.Remove(childTerm.ContentItem);
            }

            // delete termContentItems
            var termContentItems = _termContentItemRepository
                .Fetch(t => t.TermRecord == termPart.Record)
                .ToList();

            foreach (var termContentItem in termContentItems) {
                _termContentItemRepository.Delete(termContentItem);
            }
        }

        public void DeleteAssociatedTerms(ContentItem contentItem) {
            var termContentItems = _termContentItemRepository
                .Fetch(t => t.TermsPartRecord.ContentItemRecord == contentItem.Record)
                .ToList();

            foreach(var termContentItem in termContentItems) {
                _termContentItemRepository.Delete(termContentItem);
            }
        }

        public void UpdateTerms(ContentItem contentItem, IEnumerable<TermPart> terms, string field) {
            var termsPart = contentItem.As<TermsPart>();

            // removing current terms for specific field
            var fieldIndexes = termsPart.Terms
                .Where(t => t.Field == field)
                .Select((t, i) => i)
                .OrderByDescending(i => i)
                .ToList();

            foreach(var x in fieldIndexes) {
                termsPart.Terms.RemoveAt(x);
            }

            // adding new terms list
            foreach(var term in terms) {
                termsPart.Terms.Add(
                    new TermContentItem {
                        TermsPartRecord = termsPart.Record,
                        TermRecord = term.Record, Field = field
                    });
            }
        }

        public IContentQuery<TermsPart, TermsPartRecord> GetContentItemsQuery(TermPart term, string fieldName = null)
        {
            var rootPath = term.FullPath + "/";

            var query = _contentManager
                .Query<TermsPart, TermsPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>());

            if (String.IsNullOrWhiteSpace(fieldName)) {
                query = query.Where(
                    tpr => tpr.Terms.Any(tr =>
                        tr.TermRecord.Id == term.Id
                        || tr.TermRecord.Path.StartsWith(rootPath)));
            } else {
                query = query.Where(
                    tpr => tpr.Terms.Any(tr =>
                        tr.Field == fieldName
                         && (tr.TermRecord.Id == term.Id || tr.TermRecord.Path.StartsWith(rootPath))));
            }

            return query;
        }

        public long GetContentItemsCount(TermPart term, string fieldName = null) {
            return GetContentItemsQuery(term, fieldName).Count();
        }

        public IEnumerable<IContent> GetContentItems(TermPart term,
            int skip = 0,
            int count = 0,
            string fieldName = null)
        {

            return
                GetContentItemsQuery(term, fieldName)
                    .Join<CommonPartRecord>()
                    .OrderByDescending(x => x.CreatedUtc)
                    .Slice(skip, count);
        }

        public IEnumerable<TermPart> GetChildren(TermPart term){
            var rootPath = term.FullPath + "/";

            var result = _contentManager.Query<TermPart, TermPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>())
                .Where(x => x.Path.StartsWith(rootPath))
                .List();

            return TermPart.Sort(result);
        }

        public IEnumerable<TermPart> GetParents(TermPart term) {
            return term.Path.Split(new [] {'/'}, StringSplitOptions.RemoveEmptyEntries).Select(id => GetTerm(int.Parse(id)));
        }

        public IEnumerable<string> GetSlugs() {
            return _contentManager
                .Query<TaxonomyPart, TaxonomyPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>())
                .List()
                .Select(t => t.Slug);
        }

        public IEnumerable<string> GetTermPaths() {
            return _contentManager
                .Query<TermPart, TermPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>())
                .List()
                .Select(t => t.Slug);
        }

        public void MoveTerm(TaxonomyPart taxonomy, TermPart term, TermPart parentTerm) {
            var children = GetChildren(term);
            term.Container = parentTerm == null ? taxonomy.ContentItem : parentTerm.ContentItem;
            ProcessPath(term);

            var contentItem = _contentManager.Get(term.ContentItem.Id, VersionOptions.DraftRequired);
            _contentManager.Publish(contentItem);

            foreach (var childTerm in children) {
                ProcessPath(childTerm);

                contentItem = _contentManager.Get(childTerm.ContentItem.Id, VersionOptions.DraftRequired);
                _contentManager.Publish(contentItem);
            }
        }

        public void ProcessPath(TermPart term) {
            var parentTerm = term.Container.As<TermPart>();
            term.Path = parentTerm != null ? parentTerm.FullPath + "/": "/";
        }
    }
}

redpajama_set_name: RedPajamaGithub


text:
package fatcat;
import java.util.List;
import java.util.Map;

import net.minecraft.client.Minecraft;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack;
import net.minecraft.util.WeightedRandomChestContent;
import net.minecraft.util.WeightedRandomFishable;
import net.minecraftforge.common.ChestGenHooks;
import net.minecraftforge.common.FishingHooks;
import net.minecraftforge.common.config.Configuration;
import net.minecraftforge.common.config.Property;
import net.minecraftforge.fml.client.registry.RenderingRegistry;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.Mod.Instance;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.network.IGuiHandler;
import net.minecraftforge.fml.common.network.NetworkRegistry;
import net.minecraftforge.fml.common.registry.EntityRegistry;
import net.minecraftforge.fml.common.registry.GameRegistry;
import fatcat.gui.GuiStatusHandler;
import fatcat.model.CatSkinLoader;

@Mod(modid = FatCatMod.MODID, version = FatCatMod.VERSION)
public class FatCatMod {
    public static final String MODID = "fatcat";
    public static final String VERSION = "1.1.0";
	public static final int STATUS_GUI_ID = 0;
    public static Item egg;
    public static Item unko;
    public static Item brush;
    public static Item furball;
    public static Item feather_toy;

    /* デバッグモード */
	public static boolean DEBUG = true;

	// 育成モードをオフにするオプション
	public static boolean breeding_mode = true;

	// ロギング
	public static boolean logging = false;

    /** This is the starting index for all of our mod's item IDs */
    private static int modEntityIndex = 0;

	@Instance(MODID)
	public static FatCatMod instance;
	@SidedProxy(clientSide = "fatcat.ClientProxy", serverSide = "fatcat.CommonProxy")
	public static CommonProxy proxy;

	private Map<String, String> skinMap;
	private List<String> skinTypes;
	private CatSkinLoader skinLoader;

    @EventHandler
	public void preInit(FMLPreInitializationEvent event)
	{
    	egg = new ItemFatCatEgg().setUnlocalizedName("fatcat_egg");
    	unko = new ItemFatCatUnko().setUnlocalizedName("fatcat_unko");
    	brush = new ItemCatBrush().setUnlocalizedName("fatcat_brush");
    	furball = new ItemFurball().setUnlocalizedName("furball");
    	feather_toy = new ItemFeatherToy().setUnlocalizedName("fatcat_feather_toy");
    	GameRegistry.registerItem(egg, egg.getUnlocalizedName().substring(5));
    	GameRegistry.registerItem(unko, unko.getUnlocalizedName().substring(5));
    	GameRegistry.registerItem(brush, brush.getUnlocalizedName().substring(5));
    	GameRegistry.registerItem(furball, furball.getUnlocalizedName().substring(5));
    	GameRegistry.registerItem(feather_toy, feather_toy.getUnlocalizedName().substring(5));

    	EntityRegistry.registerModEntity(EntityFatCat.class, "FatCat", ++modEntityIndex, this, 64, 10, true);
    	EntityRegistry.registerModEntity(EntityItemUnko.class, "FatCatUnko", ++modEntityIndex, this, 64, 10, true);

    	GameRegistry.addRecipe(
    			new ItemStack(brush, 1),
    			"BT ", "BT ", " T ",
    			'B', Blocks.hay_block, 'T', Items.stick);
    	GameRegistry.addRecipe(
    			new ItemStack(feather_toy, 1),
    			" F ", " F ", " T ",
    			'F', furball, 'T', Items.stick);

    	// Get a fatcat egg via fishing.
    	FishingHooks.addTreasure(new WeightedRandomFishable(new ItemStack(egg), 1));
    	ChestGenHooks.addItem(ChestGenHooks.PYRAMID_DESERT_CHEST, new WeightedRandomChestContent(new ItemStack(egg, 1, 0), 1, 1, 15));
    	ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_CHEST, new WeightedRandomChestContent(new ItemStack(egg, 1, 0), 1, 1, 15));
    	ChestGenHooks.addItem(ChestGenHooks.MINESHAFT_CORRIDOR, new WeightedRandomChestContent(new ItemStack(egg, 1, 0), 1, 1, 7));

    	Configuration config = new Configuration(event.getSuggestedConfigurationFile());

    	config.load();
    	Property breeding_mode_property = config.get(Configuration.CATEGORY_GENERAL, "BreedingMode", true);
    	breeding_mode_property.comment = "Breeding MODE(true/false): FatCat status is fixed if you disable this option";
    	breeding_mode = breeding_mode_property.getBoolean(true);
    	Property logging_mode_property = config.get(Configuration.CATEGORY_GENERAL, "Logging", false);
    	logging_mode_property.comment = "logging for debug";
    	logging = logging_mode_property.getBoolean(false);
     	Property debug_property = config.get(Configuration.CATEGORY_GENERAL, "Debug", false);
    	debug_property.comment = "debugging mode for development";
    	DEBUG = debug_property.getBoolean(false);
    	config.save();
	}

    @EventHandler
    public void init(FMLInitializationEvent event)
    {
    }

    @EventHandler
    public void load(FMLInitializationEvent event) {
    	proxy.registerRenderers();
    	NetworkRegistry.INSTANCE.registerGuiHandler(this, new GuiStatusHandler());
    }

	public List<String> getSkinTypes() {
		return skinLoader.getSkinTypes();
	}

	public Map<String, String> getSkinMap() {
		return skinLoader.getSkinMap();
	}

	public void setSkinLoader(CatSkinLoader loader) {
		this.skinLoader = loader;
	}
}


> the heap space for the Memory Pool PS|Surviver space.
Space is get fully filled and the processing stop with the error.
org.apache.uima.cas.CASRuntimeException: "Preexisting FS encountered but not allowed. "xmi:id=1797"
reason so that I can resolve this.


Mrs. Smith came to the school for approximately 8 month's ago as the new principal of the New Wikiwood Secondary School.
Here is a picture of Mrs. Smith.
In fact Mrs. Smith works as the leader of the big striping bar "Tha Strip Market" two blocks away from the school, and we are so greatful of haveing such a great resours.


text:
Woman pleads guilty to Hurricane pharmacy robbery
Kevin Jenkins
kevin@thespectrum.com
A woman charged in the June robbery of a Hurricane pharmacy pleaded guilty Tuesday to counts of aggravated (armed) robbery, forgery and vehicle burglary.
Elizabeth Lynn Richards, 33, is being held at the Purgatory Correctional Facility and appeared in 5th District Court alongside her attorney, Ryan Stout, to resolve the case – the third armed robbery the business has experienced in the last three years.
"I'm ready to enter my pleas," Richards told Judge Eric Ludlow.
The aggravated robbery charge is a felony that carries the potential of up to 15 years in prison, while the forgery charge carries a potential penalty of up to five years.
Sentencing is scheduled for Oct. 31.
Richards, who was an employee of a Montessori-style school for young children at the time of her arrest, was accused of participating with her husband in the Hurricane Family Pharmacy robbery to obtain drugs shortly before the business closed June 21.
Richards' husband, Kevin Scott Richards, 37, allegedly entered the business wearing a mask and armed with a .38 caliber revolver, which he allegedly pointed "directly at five employees" while demanding Oxycodone and beginning a countdown in an apparent attempt to frighten the employees into acting quickly.
Husband-and-wife robbery suspects appear in court
The couple then left the pharmacy, but their Nissan sedan was stopped by Hurricane Police officers several blocks away and the officers reported finding the stolen drugs in the vehicle. The gun allegedly used in the robbery was found along the roadside where it had apparently been thrown from the Richards' car.
Stout said his client's guilty plea acknowledged the elements of the crime but "our version … was that her soon-to-be-ex-husband went in to the pharmacy with that intention but she didn't know he was going to do that."
She did, however, drive away from the pharmacy after the robbery, aiding and abetting the crime after the fact, Stout acknowledged. His client was cooperative with police once the couple was apprehended, he added.
Richards' guilty pleas to the vehicle burglary and forgery charges stem from incidents reported in June in which the couple reportedly confessed to officers they had broken into several cars to take items for their own profit. Kevin Richards allegedly removed a checkbook from one of the vehicles and wrote out a check to his wife, which she admitted to cashing at a local bank.
During subsequent investigation, detectives allegedly found a stolen gun in the couple's home and learned that a laptop computer had been stolen and pawned during the vehicle break-ins.
Stout told Ludlow the plea agreement in the armed robbery case was reached after the defense and prosecution met for a somewhat unusual "criminal mediation" in which Elizabeth Lynn Richards, Stout, the prosecutor and a certified mediator visited with the pharmacy owner so the inmate and the victim could "communicate with each other and say whatever they wanted to" about the incident.
Pharmacy owner Cliff Holt was active during sentencing for the previous robberies in advocating for his employees and said following the June incident, no one was physically injured but "it is a scary time for everybody."
Pharmacy robbery suspects facing additional charges
A review of the charges against Kevin Richards is scheduled next week. He was also charged earlier this month with federal counts of interference with commerce by threat or violence, unlawful transport of firearms, and violent crime involving drugs and a firearm in connection to the Hurricane pharmacy robbery.
The federal robbery charge was filed under the Hobbs Act because of the effect on interstate commerce and drugs, and has a potential penalty of up to 20 years in prison, Assistant U.S. Attorney Paul Kohler said. The second charge involving illegal gun possession has a penalty of up to 10 years in prison, he said.
The third charge, which relates to brandishing the firearm during a violent crime, carries a mandatory seven-year sentence that would be added consecutively to any other sentence, Kohler said.
A two-day trial in the federal case is scheduled to begin Nov. 7.
Follow reporter Kevin Jenkins on Twitter, @SpectrumJenkins. Call him at 435-674-6253.