The field of soft robotics has been rapidly gaining traction due to the deformable and compliant nature of structural components of soft robots. These qualities allow for improved adaptability in unstructured environments when compared to the capabilities of conventional, rigid robots. Soft robots show promise with applications related to rehabilitation devices, wearable devices, implantable devices, surgical tools, manufacturing, and search-and-rescue technology, among other potential contexts. As the field has continued to grow over the past few decades, several methods of actuation have been proposed for soft robots, including electrostatic, hydraulic and microhydraulic, pneumatic, magnetic and electromagnetic, and shape memory alloy (SMA) based actuation. One type of actuator that has been proposed and that is referenced in the present disclosure are folded Hydraulically Amplified Self-Healing ELectrostatic (HASEL) Actuators. Example HASEL actuators are described in U.S. Pat. Pub. No. 2020/0032822, which is incorporated by reference in its entirety.
HASEL electrohydraulic actuators may present advantages in soft robotics because of an available high actuation frequency, large strains (e.g., of up to 124%), high peak power (e.g., greater than 600 W/kg peak specific power), and ease of manufacturing. In the domain of both traditional and soft robotics, integrating a reliable sensing mechanism with the actuation method is beneficial for the robot to interact with its environment. HASEL actuators have self-sensing abilities, which have been utilized to control a HASEL-powered robotic arm. In addition to using a capacitive self-sensing method, a high-speed camera, a laser position sensor, and a capacitive soft strain sensor have all been proposed in HASEL-based closed-loop systems. However, improved sensing capability for soft robot actuators is needed for new form factors and control methodologies.
Accordingly, the present disclosure generally relates to a magnetic sensing system that may be utilized to sense actuation of a soft robotic actuator. The magnetic sensing system includes an electrostatic soft actuator comprising a flexible actuator body that is actuatable upon application of a drive voltage to the electrostatic soft actuator. The system also includes a magnetometer disposed relative to the electrostatic soft actuator for measurement of a magnetic field within a task space of the electrostatic soft actuator and a magnetic member disposed relative to the electrostatic soft actuator to undergo a displacement within the task space upon displacement of the electrostatic soft actuator within the task space to affect the magnetic field. The system also includes a control module in operative communication with the magnetometer. The control module is operative to generate a position characterization of the electrostatic soft actuator in response to the measurement of the magnetic field upon the displacement of the magnetic member within the task space.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
Other implementations are also described and recited herein.
While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and are herein described in detail. It should be understood, however, that it is not intended to limit the invention to the particular form disclosed, but rather, the invention is to cover all modifications, equivalents, and alternatives falling within the scope of the invention as defined by the claims.
For many robotic applications, the sensing of robotic actuators may be used for controlling the operation of a robot. While previously proposed sensing mechanisms for robotic actuators have been proposed, when integrated in a system with HASEL actuators, each of the previously proposed sensing mechanisms, which are discussed below, all present several problems worth highlighting.
Initially, some remotely located, or “off-board” sensors, have been proposed rather than an “on-board sensor” that is disposed at the actuator or robot. For instance, on-board sensors may travel with the robot rather than being remote and not undergoing co-movement with the robot. Having on-board sensing is beneficial for creating compact, untethered systems. Therefore using off-board sensors, such as a high-speed camera or laser position sensor, are only useful for a single-actuator system in controlled, stationary environments.
On-board sensors have been proposed that include capacitive stretch sensors and/or self-sensing capabilities of HASEL actuators. However, developing on-board sensing mechanisms for HASEL actuators has proven to be difficult. Specifically, to reduce the coupled noise effects due to both a large electric field produced by folded HASEL actuators and pre-stretch of the sensor, proposed capacitive stretch sensors may require a low pass filter applied to the sensor signal. Furthermore, physical constraints may be required such as use of silicone blocks separating the sensor from the actuator. Thus, the accommodations needed to reduce noise in these sensors also reduce the overall performance of the actuator. The capacitive stretch sensor design is also specific to the actuator in use, which limits the versatility of the sensor as each sensor may be customized to a given actuator. Use of the self-sensing nature of HASEL actuators may only work for low-frequency applications in which actuation frequencies are less than about 3 Hz due to sensor lag. Additionally, both self-sensing and capacitive stretch sensors are difficult to use in a larger, multi-actuator system due to the complicated filtering methods and circuitry.
To facilitate improvements to at least some of the shortcomings of current sensing methods used for electrohydraulic actuators, such as HASELs, this disclosure discusses using a magnetic sensing approach to measure a change in shape of an actuator. The change in shape of an actuator may in turn be characterized as a position characterization of an actuator. One specific example may include measuring linear displacement of a folded HASEL actuator. HASEL actuators may be driven by a very low current, which emits a negligible magnetic field. By sandwiching an actuator between a magnetometer and a magnetic component changes in magnetic field strength may be mapped or otherwise correlated to changes in the actuator shape. The magnetic measurement systems described herein may be used at high frequencies and a high resolution. Moreover, a system may provide such measurement with sufficiently low levels of noise from the actuator and without a reduction in performance.
One example of a magnetic sensing mechanism is a system 100 of
While
With returned reference to
The MCU may be mounted in a circuitry housing 212 of the robotic platform 200. The MCU may communicate to an external host (e.g., broader area controller such as a laptop or other computing device) via serial communication. The magnetic sensing mechanism may include a magnetometer (e.g., LIS3MDL, ST Electronics) on a Pololu breakout board to sense the change of the field generated by a magnetic block. The magnetometer and the magnetic block may be disposed on opposite sides of each actuator unit 314. For example,
As noted above, the present disclosure discusses use of folded HASEL actuators, although the disclosure is not so limited. In an example, a HASEL actuator may be comprised of twelve actuator pouches stacked on top of each other in order to create a displacement along a displacement axis when the pouches deform under an applied voltage. Two layers of polyester Lidding Film (e.g., L0WS, Multi-Plastics) may be heat-sealed together using a modified CNC machine (e.g., Shapeoko 3XL, Carbide 3D) to create separation of the individual actuator pouches. A thin flexible layer of conductive ink (e.g., CI-2051, Engineered Materials System) may be screen-printed on both sides of the sealed film before filling the pouches with a silicone liquid dielectric (e.g., PSF-5cSt, Clearco). Once filled and fully sealed using a soldering iron (e.g., WE1010NA, Weller), the string of actuator pouches may be folded using an accordion fold and secured using thin strips of transfer tape (e.g., 924, 3M).
Returning to the tilting robotic platform 200 shown in
The voltage applied to each actuator 314 in the tilting platform 200 may be independently provided via a single power source. Components used for the example of the tilting robotic platform may include a power supply, a microcontroller, six magnetometers, six magnetic blocks, six high voltage switch boards, and six folded actuators. In this regard, the power supply may deliver a constant 8 kV supply to the platform 200. The voltage delivered to each actuator 314 may be varied by a corresponding high voltage (HV) switch board for each actuator 314. An output photoresistor may be provided at a fixed 15% duty cycle to improve the relaxation time of the actuators. The duty cycle of the input photoresistor varies based on the error between the measured height and the desired height of each actuator.
To establish a control scheme for the platform 200, motion capture information of the end effector 210 and sensor data may be used to map a change in magnetic field of each actuator 314 to a given position of the end effector 210 as determined using motion capture. In turn, parametric equations may be applied to get the height of the center of the actuator 314 instead of the height of the motion capture ball. An inverse cubic relationship may be used to get the mapping between magnetic data and end effector 210 position as the correlation may be slightly different for all the calibrations due to differences in manufacturing the magnetic blocks. That is, a characterization of the relationship between the various sensed magnetic fields of the actuator units 312 of the actuator portions 210 and the position of the platform 208 may be established such that the controller may achieve desired platform 208 by appropriately controlling the various actuator units 312.
The magnetic sensor systems described herein may use a soft tactile sensor that includes a soft, flexible magnetic substrate instead of includes rigid permanent magnets. The intrinsic coercivity of a magnetic, soft substrate may not be as large as that of a rigid permanent magnet, which may limit the distance between the sensor and the magnetic component. However, using a soft substrate with embedded magnetic particles may improve the durability and robustness of the material compared to embedding rigid permanent magnets in a soft material. Using a soft substrate with magnetic particles may allow for any type of shape or thickness. In this regard, the shape or thickness of the soft substrate magnet may depend on the distance between the sensor and the magnetic material. This may be useful when using an array of magnetic sensors to localize an applied force on a continuous tactile surface.
In this regard, the magnetic components of the sensing mechanism may comprise flexible, silicone blocks (e.g., Ecoflex 00-30, Smooth On) suffused with bonded neo-powder (e.g., NQP-B+20441, Neo Magnequench). In a first step, the Ecoflex Part A and Part B rubbers may be hand mixed using a 1:1 weight ratio. After mixing the Ecoflex 00-30 for approximately 30 second, 1.67 wt. % of neo-powder may be added and mixed with the Ecoflex 00-30. Once most of the powder is roughly distributed in the Ecoflex 00-30, the mixture may be placed into a planetary mixer (e.g., ARV-310, Thinky). The mixture may be degassed in a vacuum (˜0.2 kPa) for 1 minute, then mixed at a speed of 2000 rpm for 30 s, before the speed decreases to 200 rpm at 10.5 kPa for 1 min.
After the mixing and degassing process is complete, the power may be fully shear-mixed into the Ecoflex 00-30. The mixture may be poured into an acrylic mold with the desired dimensions. For example, a 5 mm thickness may be chosen to level the change in height of the foldable HASEL and properly separate a capacitive stretch sensor from the actuator as described in greater detail below. While using neo-powder in Ecoflex 00-30 may allow for a thinner material than just embedding a Neodymium magnet in a silicone substrate, a block 402 was desired that was sufficiently heavy to level out the stroke of the folded HASEL actuator, while still maintaining mechanical integrity. However, other configurations of magnetic sensors may be used without limitation.
After filling the mold with the mixture, the mold may be placed in the center of two permanent magnets (e.g., CMS Magnetics) spaced 5 cm away from each other. The mixture may be cured for about 2.5 hrs before being removed from the acrylic mold. This process, shown in
After having described examples of how a magnetic sensing mechanism may be used to characterize actuator actuation, it may be useful to understand how measurement resolution of the actuator displacement changes as a function of distance between the magnetometer and the magnetic block. Specifically, this may be characterized for displacements beyond the folded HASEL actuator's maximum height. This information may be indicative of how the resolution will change for a variety of actuators with varying maximum heights. Therefore, a fully mechanical stand 500 was designed to change the distance between the sensor 502 and the block 504 at sub-millimeter increments as shown in
With further details regarding the mechanical stand 500 used to produce the data in
The sensor 502 may be mounted directly below the center of the magnetic block 504 and data may be read by a MCU (e.g., Teensy 3.6, PJRC, not shown). The laser position sensor 512 (e.g., LK-H157, Keyence) may be used to track the movement of the magnetic block 504 and measure the change in distance between the magnetic block 504 and sensor 502 for validation of the magnetic readings. The output voltage of the laser position sensor 512 may be sent through a 12-bit ADC on the MCU and scaled at a value of 1 V:5 mm. The units of the data 510 may include time in microseconds, magnetometer data in milligauss, and the laser position sensor in millimeters, which are all sampled at 1 kHz.
The data 510 comprises ten tests conducted by moving the magnetic block 502 from a distance of 2 mm away from the sensor 504 to a distance of 25 mm away at both 0.05 mm and 0.1 mm increments. The data also includes ten more tests conducted by moving the block 502 at 0.1 mm increments from 2 mm to 60 mm.
In turn, a characterization relating the sensed magnetic field and the displacement may be created. The magnetic field strength along the z-axis may be mapped to the change in vertical distance using a least squares polynomial curve fitting function.
Evaluation of the fit of the resulting curve that corresponds to mapped displacement and magnetic field may be provided. Based on the magnetostatic theory, it is reasoned that the change in distance would have an inverse cubic relationship with the change in magnetic field strength. The resulting 3rd degree polynomial was:
h=p
3
×B
z
3
+p
2
×B
z
2
+p
1
×B
z
+p
0
where h is the height between the block 504 and the sensor 502 in mm, Bz is the change in magnetic field strength along the z-axis in mG, and the polynomial coefficients [p3, p2, p1, p0] are [−9.332×10−10, 1.041×10−5, −0.044, 85.618] for the example test. Fitting this polynomial to obtain displacement data from the magnetometer data resulted in an R-squared value of 0.9959, demonstrating a good fit and accurate measurement. For validation,
The baseline height of a folded HASEL is about 11 mm, which determines the baseline gap between the magnetic block 504 and the sensor 502. As the actuator height increases to its maximum height, then the distance between the magnetic block 504 and the sensor 502 subsequently increases to a maximum distance of about 23 mm. Based on the actuator's resting height and fully actuated height, an optimized range 516 that the magnetometers needed to sense a change in magnetic field strength at a high resolution is determined, which is shown as the shaded portion 516 in
In addition, a magnetic sensing system such as those described above was tested for determining performance at different drive frequencies of the actuators.
Because HASEL actuators operate on low current, it is expected that the output of the magnetic sensing mechanism may be independent of the current driving the folded HASEL actuator. Therefore, the magnetometer is preferably able to accurately measure the change in height of an actuator receiving a high voltage (HV) sine wave input at varying frequencies by tracking the change in magnetic field strength. The mapped displacement data 600 from the magnetic sensing method is compared to the laser position sensor data while the block is placed on top of the active HASEL actuator. The input voltage was sent through a waveform generator (e.g., 33509B, KEYSIGHT) to a high voltage amplifier (e.g., TrekModel 50/12, TREK), which attached to the electrodes of the actuator.
In further validating the performance of a magnetic sensing system, tests to determine the affect by changes in the environment were performed. Such changes may be due to the material properties of most soft sensors. It may be desired to verify that temperature and humidity changes in the environment do not affect the readings from the magnetometer. Accordingly, a series of tests were performed in different environmental conditions; the ambient temperature and relative humidity around the test setup are measured using a low-power humidity and temperature sensor evaluation board (e.g., HDC1080EVM, Texas Instruments). To vary the ambient temperature and relative humidity, table fans, heat guns, and/or humidifiers are used, allowing the temperature to range from 18-56° C. and the relative humidity from 3.1-53.2%.
The input voltages were defined by 4 kV offset sine waves with a 4 kV amplitude and frequencies that ranged from 0.01 Hz-30 Hz. The laser displacement data and the magnetic field strength data were sampled at 1 kHz using an MCU (e.g., Teensy 3.6, PJRC), which sends data to a computer via serial communication. The TREK was turned off between each test to reduce or prevent the charge retention in the HASEL from compounding, effectively limiting the maximum stroke of the actuator. A thin, 100 um, Ecoflex sheet was placed around the magnetic block and the actuator to reduce or prevent the magnetic block from shifting off the top of the actuator as it moves at high frequencies. The laser position sensor probed the center of the magnetic block to accurately record the movement of the block on top of the actuator. It was found the magnetic sensing method is able to sufficiently monitor the movement of the actuator, even at larger frequencies when the actuator barely moves.
As noted above, capacitive stretch sensors have been proposed for use as on-board sensors of soft robotic actuators. However, given the susceptibility of such sensors to noise, it has been found that the magnetic sensing systems described herein provide benefits. However, it was desired to compare the magnetic sensing method to a capacitive stretch sensor to quantify the relative performance of such sensors.
As such,
It was desired to directly compare the magnetic sensing method's ability to track the movement of the folded HASEL actuator with the capacitive stretch sensor's ability to highlight the improved results. A capacitive stretch sensor 802 is wrapped around a folded actuator 808 sandwiched in between the magnetic block 804 and a 5 mm dielectric block 804 (e.g., DragonSkin30, SmoothOn). The dielectric block 804 is the same dimension as the magnetic block 804 and placed under the actuator to separate the capacitive stretch sensor 802 from the actuator 808. This added space from the dielectric block 804 helps reduce the coupled noise between the stretch sensor 802 and the actuator 808. A 555-timer circuit and second-order low pass filter is used to measure the output square wave of the 555-timer circuit, which is directly related to the change in capacitance of the capacitive stretch sensors. An MCU (e.g., Teensy 3.6, PJRC) measured the on-time in milliseconds of the output square wave in tandem with the change in magnetic field strength in milligauss and the laser displacement data in millimeters. This data was timestamped in microseconds and sent to a computer via serial connection and is plotted as data 808. The input to the actuator is a series of 10 s step functions starting at 2 kV and increasing by 1 kV to 8 kV. This input is sent to the actuator through the high voltage amplifier.
Thus, while capacitive stretch sensors have been proposed for use in soft robotic applications to look at deformations of an actuator or a surface, the noise shown in
Other robotic form factors may also utilize HASEL actuators and the magnetic sensing approach described herein. For example, a rolling robot may be provided as described in detail below. Unlike other robotic locomotion methods including legged, crawling, and hopping, rolling locomotion exhibits high degree of mobility, inherent stability, and self-recovery from collision; also, rolling is much more energy-efficient, since a rolling robot does not need to expend energy lifting up its body for movement. In addition to these inherent advantages, rolling may improve a robots' abilities to carry payloads, provide protections to internal electrical and mechanical components, and navigate difficult environments. Such favorable traits make robotic rolling locomotion a widely investigated subject for space exploration, search and rescue, and military applications.
Robots with rolling locomotion can be further categorized based on three operating principles. The most popular form of rolling is shift of the center of mass (COM) of a wheel or sphere away from its neutral position, causing the wheel or sphere to fall in that direction and thus roll along. These robots are commonly characterized by rigid cylindrical or spherical outer shell and internal components such as gears, servos, and motors, which allows for simple design, modeling, and control. While the robots achieved great speed to size ratio. their ability to navigate on uneven surfaces or absorb collision energy have not been demonstrated.
Another cohort of rolling robots are distinguished for the ability to deform their geometry to induce the rolling motion. A notable subclass of these designs is rolling of tensegrity structures that has been targeted for space exploration research. These designs are often characterized by their modular links (rigid or not) that can interact with one another to create global deformed shapes for rolling. Geometry-deformable rolling robots have demonstrated single-mode (only rolling) and multi-mode (rolling and hopping) locomotion, which is useful for navigating through rough terrain and tall obstacles. Some designs incorporate semi-rigid links to further allow for impact energy absorption capability. However, due to the structural intricacy, most robots with deformable geometry require more complex designs, fabrication procedures, and kinematic and dynamic models, thus making the systems difficult to control.
Finally, several developments of rolling robots have been based on local activation of the robots' shell elements. These designs often have soft shell segments that can independently protrude and generate forces that propel the robots forward. Among the previous works on rolling robots, soft robots have bodies made from intrinsically soft and extensible materials that can deform and absorb much of the energy arising from a collision. A completely soft and deformable robot may be a desirable platform for traversing unrehearsed terrains. Therefore, the main advantages of soft robot which is relevant to locomotion may be its ability to absorb impact energy and the ability to conform to the surface at contact thus improving stability on rough terrain. Compared to geometry-deformable rolling robots, whose dynamics are fully discrete by design, shell-bulging soft robots are hybrid dynamical systems whose inputs are discrete and output velocities are continuous. Despite the interesting dynamics and mentioned inherent advantageous traits, most shell-bulging soft robots are pneumatic-based, hydraulic-based, shape-memory-alloy-based, and electrostatic-based, which have significantly low power-to-weight ratio due to bulky external driving components; these robots therefore may be limited in terms of fast dynamics. Furthermore, most proposed approaches for existing shell-bulging soft rolling robots lack mathematical descriptions of the rolling behavior and as to how the robots can regulate their rolling speeds.
In this disclosure, a shell-bulging locomotion rolling soft robot is described that may be powered by folded electro-hydraulic (HASEL) actuators. The HASEL-powered rolling robot may facilitate much faster rolling characteristics, for example, attaining a rolling maximum speed of 0.7 m/s (1.56 miles per hour), thanks to a hybrid structure of soft actuators placed around a circular rigid skeletal frame. First, the present disclosure describes the electromechanical design of an example of a self-propelled soft robot. Secondly, a mathematical model is presented, and an example of the robot's operating principle is explained. Thirdly, the system rolling characteristics are analyzed. A closed-loop control algorithm may be provided that regulates the wheel rolling velocity. This work therefore represents 1) the design of an example soft mobile robots with integrated hardware based on electro-hydraulic-actuator, 2) development of an example mathematical hybrid-dynamic model and 3) the implementation of an example speed-regulating controller for robots with shell-bulging rolling mechanism.
The folded-HASEL actuator may use a 20-μm-thick polyester film (e.g., LOWS, Multi-Plastics) with an inner heat-sealing layer and corona-treated outer layer for ink adhesion. The actuator pouches are sealed using a heated tip temperature of 195° C. with a tip sealing speed of 400 mm/min. A small fill port is left unsealed in each pouch to provide a means to fill the pouches with a liquid dielectric during the last fabrication step. Electrodes may be made from a carbon ink (e.g., CI-2051, Engineered Materials Systems, Inc.) and were deposited on the outer layer of the films using a screen-printing method. Finally, the pouches are filled with a dielectric silicone fluid (e.g., PSF-5cSt, Clearco) using a syringe and needle inserted into the fill port of the pouch. After filling, a soldering iron (e.g., WE1010NA, Weller) heated to 176° C. may be used to seal the fill port. Fabrication of the HASEL actuators may be according to any of the foregoing incorporated documents describing HASEL actuators and/or PCT Application No. PCT/US2020/020986, the entirety of which is incorporated by reference herein.
Each actuator may include 12 pouches and folded into the dimension of 50 mm×55 mm×12 mm using 5 mm×1 mm transfer tapes (e.g., 924, 3M). Under the application of high voltage (HV) in kV range on one electrode and a low voltage (LV) connection on the other, the actuator's electrodes may zip together, displacing the liquid dielectric to the surrounding volumes inside the actuators, resulting the overall change in the actuators' strokes.
Several factors may influence the number of actuators used for the wheel's design: actuator's dimensions, wheel's stride duration, defined by the duration between the activations of two adjacent folded-HASEL actuators, overall wheel's size and weight, and safety distance between any high voltage (HV) point and any low voltage (LV) point to prevent arcing and HV breakdown on the circuit board. For the same wheel's rim diameter, stride duration decreases with increasing number of actuators mounted on the wheel. However, from observation, the increase in number of actuators 1002 for the same wheel frame 1004 requires actuators with smaller footprints. Besides, scaling up the actuators' quantity also requires more HV driving components, thus increasing the system overall weight, and reducing the safety distance between HV points and LV points on the circuit board. On the other hand, decreasing the number of actuators reduces both the wheel's weight and size, allowing for faster rotational speed. However, this increases the stride duration, which causes the wheel rolls in a more discretized manner, making the wheel's velocity and acceleration harder to regulate. While an in-depth optimization study is needed to balance all design parameters for the HASEL-powered wheel, it has been found that an example overall wheel frame of 313.54 mm diameter with 16 folded-HASEL actuators is sufficient to demonstrate the wheel's closed-loop control.
The platform on which the HASEL robot rolls may be characterized using a hybrid dynamic model validation, and model predictive control of the wheel. It is therefore beneficial that the wheel can roll continuously for long-duration experiments. As such, a rolling platform 1100 may be provided such that not only mitigates the complexity of the experimental setups and provide lateral stability to the wheel 1000, but it also allows the wheel 1000 to roll as long as required for experiments. The rolling platform 1100 may include a platform 1102. To prevent the wheel 1000 from toppling on its side and enforce the circular travelling path, the wheel 1000 may be mounted to a pivot arm whose other end is mounted to the center of the platform but free to rotate both horizontally and vertically using a bearing 1106 on a pivot shaft. The pivot arm 1104 is connected to the wheel rim 1000 via a U-mount 1110. One side of the U-mount 1110 may connect to a slip ring that provides electrical interfaces with the wheel PCB. The U-mount 1110 may also align a rotary encoder's shaft with the wheel's center of geometry.
The onboard printed circuit board (PCB) that drives the HASEL actuators may include three groups: the power delivery group, the driving and control group, and the sensing group. The block diagram of the three groups is shown in
The power delivery group may include an 8-to-24 V step-up DC-DC converter 1214 (e.g., U3V50F24, Pololu), an 8-to-5 V step-down linear dropout regulator 1216 (e.g., REG113NA-5/3K, Texas Instruments), and an 8-to-3.3V step-down linear dropout regulator 1218 (e.g., REG113NA-3.3/3K, Texas Instruments). The step-up DC-DC converter 1214 provides the required 24 V to the high voltage DC-DC converter 1204 (e.g., 10A24-P30, Advanced Energy), which generates a constant 9 KV output. The 5 V and 3.3 V regulators 1216, 1218 provide power to both the driving and control group and the sensing group.
The driving and control group may include a microcontroller 1210 (e.g., Teensy 3.6, PJRC) that has a two-way communication via full-speed Universal Serial Bus (USB) with a personal computer. The microcontroller 1210 may process sensing data and send them to a personal computer, which, depending on the data, generates either open-loop or closed-loop commands. The commands may then be forwarded to the microcontroller 1210 for HV switching of the actuators 1208.
The design of the HV switching circuit 1206 for each actuator 1208 may influence how well each actuator 1208 performs and how fast the robot can roll.
Based on the circuit of choice, the onboard HV switching subgroup may include of 16 optocouplers 1206 for 16 actuators 1208 on the wheel. Instead of implementing 16 N-channel MOSFETs for 16 IR-LEDs, the optocouplers 1206 may be controlled by two 8-bit IR-LED drivers 1212 (e.g., TPIC6C596, Texas Instrument) in daisy-chain and placed radially at the edge of the PCB to facilitate connection to the HV electrodes of the actuators 1208. The shift registers can sink 200 mA of current from the IR-LEDs and easily controlled by receiving two required bytes from the microcontroller 1210. The PCB signal integrity may be improved by placing HV components and the LV components on the opposite faces of the circuit board. As the microcontroller 1210 turns on an IR-LED by sending correct bytes to the IR-LED drivers 1212, the corresponding optodiode of an optocoupler 1206 becomes conductive, allowing charges to flow from the HV DC-DC converter 1204 to the respective actuators 1208. The actuator 1208 then increases its stroke and, if it is in contact with the ground, exerts a force to roll the wheel in a certain direction. When the IR-LED turns off, the actuator 1208 passively drains itself and relaxes thanks to a drain resistor 1404 that is connected to the actuator's electrodes. The value of the drain resistor 1404 is determined as described below.
The sensing group may include a single-supply operational amplifier (e.g., TLV4172IDR, Texas Instruments) for HV monitor and current monitor and an absolute rotary encoder 1220 (e.g., EMS22A, Bourns). The HV DC-DC converter 1204 may have two analog pins that monitor the output HV and its corresponding current values. Since these values are above the microcontroller's ADC range of 0 to 3.3 V, they may be stepped down by using two resistor dividers and two respective voltage buffers from the operational amplifier. While the HV monitor and current monitor are beneficial for HV fail-safe prevention, the absolute rotary encoder 1220 (e.g., EMS22A50, Bourns) may be provided for the robot's speed regulation. The encoder 1220 sends the digital bytes corresponding to the wheel's absolute angular position to the microcontroller 1210. The microcontroller 1210 then forwards these converted data via the USB to the computer for further processing.
Due to the overall constraints of the board space and the placements of electrical components (to promote safe distances from the HV points), the circuit board may have asymmetric component placements, resulting in the robot's center of mass (COM) and geometric center (GC) not being the same. The robot's frame may contain four pins on which custom weights can be added, allowing the robot's COM to be the same as its GC; from trial-and-error, a combination of 0.88 g and 3.58 g of weights on the appropriate pins (not shown).
With returned reference to
In addition, the performance of the actuator may be optimized by using Ecoflex wraps and drain resistors. With further reference to
To reduce or prevent the relaxed actuators from extending beyond the wheel's rim, and to help the actuator contract faster when HV is switched off, an Ecoflex wrap 1502 (00-30 Ecoflex, Smooth-On) may be wrapped (with 50% pre-stretch) around each actuator 1500 to bias the actuator in the deactuated or relaxed position. Since the choice of a drain resistor 1504 may also affects how quickly each actuator 1500 relaxes, an actuator's performance may be evaluated with respect to both different Ecoflex wrap 1502 thickness and drain resistor 1504 value.
Since the choice of Ecoflex wrap 1502 and drain resistor 1504 may also influence the actuator maximum stroke and output force, the two parameters' effect on the wheel's ability to roll was evaluated. That is, the amount of force applied may be determined indirectly by the amount of angle traveled of the robot from a predetermined initial angular position. An experimental setup is provided as shown in
As such, with reference to
As noted above, kinematics and dynamics of a robotic platform may be determined for a system as illustrated in
The dynamic modeling of the wheel of radius r and pivot arm of length L may be provided.
The angular velocity of frame with respect to an observer in frame is:
={dot over (ψ)}·{circumflex over (p)}3={dot over (ψ)}·Êz (1)
The angular velocity of frame with respect to an observer in frame is:
={dot over (φ)}·{circumflex over (p)}1={dot over (φ)}·{circumflex over (p)}1 (2)
From (1) and (2), the angular velocity of the wheel as viewed by an observer in frame is:
=+ (3)
={dot over (ψ)}sin (100 )·ê2+{dot over (ψ)}cos(φ)·ê3+{dot over (φ)}·ê1 (4)
The position of point A relative to point O in frame is
{right arrow over (r)}
A
=x
A
·Ê
x
+y
A
·Ê
y (5)
The position of point C (COM of the robot) relative to point B in is:
{right arrow over (r)}
C
−{right arrow over (r)}
B
=−r·{circumflex over (p)}
3 (6)
Assuming the wheel rolls without slip, the velocity of contact point B of rigid body as observed in fixed frame is provided as:
={right arrow over (0)} (7)
From (5), (6), and (7), the velocity of the wheel's COM (point C) as viewed from is:
=+×({right arrow over (r)}C−{right arrow over (r)}B) (8)
=r{dot over (φ)}{circumflex over (p)}2 (9)
Therefore, the acceleration of the wheel's COM as viewed from is:
Point G may be denoted as the center of mass of the pivot arm. Due to its complex geometry, point G does not locate on the pivot arm itself as shown in
By taking derivatives on both sides of (13), the velocity of the pivot arm (with U-mount) as viewed from is:
Therefore, the acceleration of the pivot arm with U-mount as viewed from can be obtained using the rate of change transport theorem as follows:
Since it may be assumed the robot rolls without slip, kinematic constraints may be established as follow:
where zDA is the distance between point D and A. But it may be known that =r{dot over (φ)}·{circumflex over (p)}2, therefore
Turning to the kinetics of the pivot arm with U-mount, the forces and torques associated with the free body diagram (FBD) of the U-mount (shown in
{right arrow over (R)}1: Reaction force at the pivot elbow
{right arrow over (R)}
1
=R
11
·{circumflex over (p)}
1
+R
12
·{circumflex over (p)}
2 (22)
m{right arrow over (g)}: Weight of the pivot arm (with u-mount) along {circumflex over (p)}3
{right arrow over (R)}2: Resultant reaction force from the wheel on the arm
{right arrow over (R)}2=R21·{circumflex over (p)}1+R22·{circumflex over (P)}2+R23·{circumflex over (p)}3 (23)
{right arrow over (τ)}f: Pure bearing friction torque opposite to {circumflex over (p)}3.
{right arrow over (τ)}f=τf·{circumflex over (p)}3 (24)
Since there may be no translational motion for the pivot arm, Euler's 1st law may be ignored. According to Euler 2nd law:
Given that:
({right arrow over (r)}G−{right arrow over (r)}D)=({right arrow over (r)}G−{right arrow over (r)}A)−({right arrow over (r)}D−{right arrow over (r)}A) (27)
({right arrow over (r)}G−{right arrow over (r)}D)=xGA·{circumflex over (p)}1+(zGA−zGD)·{circumflex over (p)}3 (28)
({right arrow over (r)}C−{right arrow over (r)}D)=L·{circumflex over (p)}1 (29)
where (26) can be simplified as:
{right arrow over (M)}
D=(−mgxGA−LR2,3)·{circumflex over (p)}2+(LR2,2−)·{circumflex over (p)}3 (30)
Where {right arrow over (r)}G−{right arrow over (r)}D is the position of point G relative to point D in , {right arrow over (r)}C−{right arrow over (r)}D is the position of point C relative to point D in .
Considering the angular momentum of the pivot arm with U-mount:
{right arrow over (H)}
D=ID· (31)
where ID is the moment of inertia tensor of the pivot arm (with U-mount) relative to point D on the pivot arm. Expanding (31):
Applying rate of change transport theorem to (33):
Equating (30) and (35) and without the detailed derivation, obtains the following:
0=I13 {umlaut over (ψ)}−I23{umlaut over (ψ)}2 (36)
−mgxGA−LR23=I23{umlaut over (ψ)}+I13{dot over (ψ)}2 (37)
LR
22−τf=I33{umlaut over (ψ)} (38)
Expanding the kinetics of the HASEL soft robot, for simplicity, the wheel geometry may be treated as a cylinder. Based on the free body diagram illustrated in
M{right arrow over (g)}: Weight of the wheel along {circumflex over (p)}3
{right arrow over (N)}: Reaction force of the ground on the wheel
{right arrow over (N)}=N
1
·{circumflex over (p)}
1
+N
3
·{circumflex over (p)}
3 (39)
{right arrow over (R)}2: Resultant, simplified reaction force from the pivot arm on the wheel
−{right arrow over (R)}2=R21 ·{circumflex over (p)}1−R22·{circumflex over (p)}2−R23·{circumflex over (p)}3 (40)
{right arrow over (τ)}f: Pure bearing friction torque opposite to ê1
{right arrow over (R)}f: Static friction force between the wheel and the ground opposite to direction {circumflex over (p)}2
{right arrow over (F)}a: Actuator force exerting on the robot
{right arrow over (F)}
a
=F
a,2
·{circumflex over (p)}
2
+F
a,3
·{circumflex over (p)}
3 (41)
Since the soft robot may involve both translational and rotational motion, two Euler's laws may be required to describe its dynamics. Applying Euler 1st law:
Σ{right arrow over (F)}=M·{right arrow over (a)}C (42)
Mg·{circumflex over (p)}
3
−R
21
·{circumflex over (p)}
1
−R
22
·{circumflex over (p)}
2
−R
23
·{circumflex over (p)}
3
−R
f
·{circumflex over (p)}
2
+N
3
·{circumflex over (p)}
3
+N
1
·{circumflex over (p)}
1
+F
a,2
·{circumflex over (p)}
2
+F
a,3
·{circumflex over (p)}
3
=M·(r{umlaut over (φ)}·{circumflex over (p)}2−r{dot over (ψ)}{dot over (φ)}·{circumflex over (p)}1) (43)
Equating the left and right sides of (43) with respect to the orthogonal basis vectors, the following is obtained:
−R
21
+N
1
=Mr{dot over (ψ)}{dot over (φ)} (44)
−Rf+Fa,2=Mr{umlaut over (φ)} (45)
Mg−R
23
+N
3
+F
a,3=0 (46)
According to Euler 2nd law:
First, consider the left side of (47):
{right arrow over (M)}
C=({right arrow over (r)}B−{right arrow over (r)}C)×({right arrow over (N)}+{right arrow over (R)}f)+{right arrow over (τ)}f (48)
{right arrow over (M)}
C=(rRf−τf)·ê1+rN1(cos(φ)·ê2−sin(φ)·ê3)
Then, consider the right side of (47):
{right arrow over (H)}
C=IC· (50)
Where IC is the moment of inertia tensor of the pivot arm with U-mount relative to the COM (point C) of the robot While 3D modeling of the HASEL soft robot shows that the product of inertias for IC may be non-zero, these values may be negligible compared to the diagonal components. For this reason, it may be assumed that {ê1, ê2, ê3 } are the principal axis basis vectors and COM is the reference point and the product of inertias are treated as zeros. Given:
={dot over (ψ)}·{circumflex over (P)}3+{dot over (φ)}·{circumflex over (p)}1 (51)
={dot over (φ)}·ê1+{dot over (ψ)}sin(φ)·ê2+{dot over (ψ)}cos(φ)·ê3 (52)
it may be stated:
Applying rate of change transport theorem:
Equation (55) may be simplified to:
Equating (49) and (56) with respect to the orthogonal basis vectors:
From equations (36), (38), (45), (57), and the kinematic constraint (21), the following differential equation may be obtained:
The equation contains only one variable φ but is nonlinear due to the term {umlaut over (φ)}sin(φ) cos(φ). However, since I3−I2≈0, this term may be dropped. The friction torques of the bearing may be treated as constants and its direction depend on the direction of the wheel angular velocity. Therefore, (60) can be simplified as:
From (61), the continuous-time state-space model during activation periods can be written as follow:
where ξ1: =φ∈ is the angular position of the HASEL wheel, and ξ2: ={dot over (φ)}∈ is the angular velocity of the HASEL wheel.
The variable ξ1 may represents the angular position of the rolling soft robot with respect to time and may also track the relative position of 16 actuators with respect to the ground. The actuator index 0th to 15th may be associated to 16 actuators. The angle ξ1 of 0 to π/8 radian may correspond to the actuator 0th; the angle ξ1 of i·π/8 to (i+1)·π/8 radian corresponds to the actuator ith. Furthermore, the state space model may track the current actuator index, η, that is within 0 and π/8 angle from vertical plane. This plane may be defined by three points A, B and C as seen in
η=└ξ1/(π/8┘ (63)
Based on the wheel angle ξ1 and the contact actuator index η, the contact angle may be defined as the current angle of the actuator ηth with respect to the vertical plane that is defined by three points A, B and C in
ξc=ξ1−θ·π/8 (64)
When and for how long the actuation force is applied to the robot by each actuator may depend on three inputs. The activation angle, φa, is the contact angle ξc of the actuator θth that the actuator ηth activates. Based on this definition, φa∈[0, π/8). The deactivation angle of actuator ηth, φd, is the contact angle ξs of the actuator ηth that the actuator ηth deactivates. Therefore, φd∈[0, π/8) and φd>φa. Finally, the target actuator, na, may be the next actuator to be activated. Therefore, the following input may be provided:
To conveniently track the status of the actuator ηth, a state q∈{0,1} may be introduced, with q=0 means the actuator ηth is not activated, and q=1 means the actuator ηth is activated. Since the robot's performance may depend on the contact angles at which the HV optocoupler is turned on and at which the HV optocoupler is turned off, two additional non-physical states may be introduced to track these angles: activation-angle down counter, Δ, and deactivation-angle down counter, δ. The activation-angle down counter decrements from the last moment q switches from 1 to 0 to the next moment q switches from 0 to 1. In other words, this variable decreases its value, at which the HV optocoupler of the current actuator turns off, to zero. When zero is reached, the HV optocoupler of the next actuator, determined by input na, may be turned on. The deactivation-angle down counter may begin decreasing when the last time q switches from 1 to 0 to zero. The zero-valued deactivation-angle down counter signals the robot to switch q from 1 to 0 again, and the process repeats. These down counters may decrement at the same rate as the angular velocity as follow: =−(1−q) ξ2 and {dot over (δ)}=−ξ2.
The force applied between the robot and the ground may not be instantaneous or constant over its activation duration. The force with respect to the contact angle ξc may be dependent on the actuation status, the activation angle φa, and the angular speed ξ2z. It may be assumed the actuation force function to have the following form.
The shape of the actuation force Fa may depend on the six parameters σ1, σ2, σ3, σ4, σ5, and σ6, four states ξ1, ξ2, q, and η, and one input φa. It can be seen from
Since Fa,2 is the magnitude of {circumflex over (p)}2 component of {right arrow over (F)}a:
F
a,2
=F
a·sin(ξc) (67)
The state-space model may be continuous in the entire duration of activation or deactivation of an actuator. Therefore, during these periods, the actuation status, q, and the actuator of interest, η, may not change their states ({dot over (q)}=0, {dot over (η)}=0). The continuous state-space model (62) of the HASEL wheel may be rewritten as follows:
What happens at the moments q switches from 0 to 1 or q switches from 1 to 0 can be modeled using a hybrid dynamic framework. Given state x∈n, input u∈m, and output y∈p, the framework may have the following form:
where f is flow map, C is flow set, g is jump map, and D is jump set. The flow component of the model, {dot over (x)}=f(x, u), is introduced in (67). The jump component, x+=g(x, u), represents a discrete jump of the state x to x+ based on the function g(x, u). The superscripts + indicates that the states x change instantaneously into x+. The function g(x, u) serves two purposes: It is in which the inputs are implemented to update the states of the system and toggle the actuator status q. The following section explains what happen to all six states during jumps.
Firstly, the jump map may not discretely change the state of the wheel angular position and angular velocity; therefore ξ1 and ξ2 remain constant during jumps. Secondly, the status of the actuator of interest, q, may be binary from 0 to 1 or from 1 to 0. Therefore,
q
+=1−q (71)
Thirdly, the updated activation-angle down counter may be calculated based on the sum of the activation angle of the next actuator and its actuator index multiplied by π/8 (the angle between every two adjacent actuators), minus the current angular position of the wheel as follow:
Fourthly, the updated deactivation-angle down counter may be calculated based on the addition of the deactivation angle of the next actuator and its actuator index multiplied by π/8, minus the current angular position of the wheel as follow:
The main difference between the jump equations for the activation-angle down counter and the deactivation-angle down counter may be that the activation-angle down counter only decrements during the duration of q=0. As soon as it becomes zero, q=0 turns into q+=1−q=1 and remains zero since =−(1−q)·ξ2) (with q=1 after the jump), causing the PCB to switch on the corresponding optodiode, thus activating the actuator However, the deactivation-angle down counter may become zero at the moment ξ1=φd+na(π/8), causing q=1 to turn into q+=0. The change of state q=1 to q+=0 notifies the PCB to switch off the corresponding optodiode, thus deactivating the actuator η. Finally, the switching rule for the current actuator index η depends on the actuation status q right before the jump. In the first scenario where q=1 becomes q+=0, the current actuator η has just deactivated, the jump rule determines that the next actuator index η equals the target actuator index na obtained from the input u: η+=na. In the second scenario where q=0 becomes q+=1, the current actuator η starts to activate. Therefore, the jump rule determines that there should be no changes in the actuator index: η+=η. Combining the two scenarios:
η+=qna+(1−q)η (74)
From equations (71), (72), (73), and (74):
Finally, the flow and jump sets describe the jump and flow conditions. These conditions determine which mapping function (jump or flow) is applied to the dynamics. Since flow and jump may not happen simultaneously, these sets are exclusive from one another. Specifically, jump set is satisfied as soon as (=0∧δ≠0∧q=0)∨(=0∧δ=0∧q=1). Flow set is satisfied whenever jump set is not satisfied. When the jump set is satisfied, the model follows the jump map x+=g(x, u). When flow set is satisfied, the hybrid dynamic model follows the flow map {dot over (x)}=f(x, u). These sets also describe the feasible values of states x during flow and jump, respectively. Therefore:
Initially, the HASEL rolling robot may have activation status q=0, activation-angle down counter =0, deactivation-angle down counter δ=0, and current actuator index η=0 (
The cycles of activation-deactivation repeats as long as Δ and δ alternatively decrement to zero. For a relatively slow angular speed and certain target actuator na, it is possible that the robot reaches a complete stop (ξ2=0) before =0 or δ=0 and before the target actuator na is in contact with the ground. If the problem causes the robot to reach a complete stop, it can simply restart by using (63) to determines its current actuator index η and contact angle ξc, turn on the HV to the current actuator, and begin rolling again. However, there are certain angular positions ξ1 for a resting robot that the actuator corresponding to the actuator index η cannot produce sufficient a horizontal force component to move the robot.
Turning to braking rules for the robot, unlike traditional axle-based and torque-based wheels, the rolling soft robot may achieve braking by activating the actuator in the direction that its force component Fa,2 opposes the rolling direction. In the control problem of speed regulation, the robot can lower its speed by passively decelerate thanks to the system's frictions; however, active decelerations via braking allows the robot to react more quickly to the environment and reaches target angular speed more effectively. For this reason, incorporating braking in the control of the wheel may be desired.
When the robot is in motion, the current actuator ith in contact with the ground is described in the hybrid dynamic model as η=i. The braking behavior is achieved by selecting the next actuator to be activated as na=i+2 instead of i+1, which results in a negative contact angle since ξc=ξ1−(i+2) π/8<0. As the wheel continues to roll, ξ1 increases, causing the contact angle to increase from a negative value to zero. The activation and deactivation angles corresponding to the actuator (i+2)th are therefore negative. Specifically, the activation angle and the deactivation angles are between −22.5° and 0° with the activation angle is closer to −22.5° and the deactivation angle is closer to 0° . The negative activation-angle down counter Δ and deactivation-angle down counter δ, when multiplied with −ξ2, as seen in (72) and (73), become up counters from negative values to zero. With this setup, the jump map, flow map, jump set, and flow set for active deceleration are identical to those for acceleration. The braking behavior is therefore achieved by simply selecting the appropriate inputs na, φa, and φd. The force function generated by braking motion might resemble that by acceleration motion.
To quantify the location and orientation of the electro-hydraulic rolling soft robot on the platform, a motion capture system (e.g., OptiTrack, NaturalPoint Inc.) may be used that consists of 8 infrared cameras (e.g., Primex 22, NatruralPoint Inc.) with a 3D accuracy of +/−0.15 mm and a sampling rate of 360 Hz. The data is collected to CSV format and then post-processed using MATLAB (e.g., MATLAB R2020a, MathWorks).
Furthermore, the continuous dynamic equation {dot over (x)}=f(x, u) is discretized using Runge-Kutta 4th order method with a step size h=0.00333 (s) in both the parameter estimation section and the real-time control section.
Due to the wheel's large inertias, contact frictions, and the bearings' frictions, at certain initial contact angles for an arbitrary actuator that is in contact with the ground, the HASEL soft robot that is initially at rest may be unable to exert sufficient horizontal force component to push itself forward. These contact angles may be referred to as the dead angles. To address the limitation, the wheel may rock slightly backward by activating the adjacent actuators so that the wheel can move out of the dead angles.
Specifically, for an actuator ith in contact with the ground, the following initial contact angles that make the robot impossible to roll forward are: 0 degrees to 2 degrees and 17 degrees to 22.5 degrees. From 0 degrees to 2 degrees, the activated actuator ith applies an almost-vertical force which may have insufficient horizontal force component for the wheel to roll forward. From 17 degrees to 22.5 degrees, the activated actuator is in contact with the ground near its maximum stroke, resulting in minimal output force. This problem arises due to the actuator's force exponentially diminishes with an increasing stroke. Since our folded-HASEL actuator may have a maximum stroke of 12 mm, the closer the actuator reaches the stroke of 12 mm, the weaker the output force becomes, resulting diminishing horizontal force component.
At the dead angles for a particular actuator ith, the robot activates the actuator (i+1)th to rock the wheel backward and out of the dead-angle regions. For example,
Based on all scenarios,
The HASEL rolling robot may be powered by an external power supply with a constant voltage of 8 V. The robot's power consumption may be measured during the idle state and rolling state using an analog current sensor (e.g., ACS723, Sparkfun) and multiply the measured current with 8 V to get the respective power values.
While most parameters for an accurate hybrid dynamic model of the wheel's motion are presented in TABLE 2, the friction torque's of the two set of bearings on the pivot and the wheel are unavailable from the supplier. For simplicity, the friction torques are treated as constants. Their values can be estimated by performing an optimization procedure.
Firstly, thirty set of angular position and angular velocity of the wheel, with arbitrary initial angular velocity and angular position, are captured using the motion capture system. The first twenty training data set may be used to estimate the friction torque by minimizing the sum of squared of the error between the estimated states and the measured states (angular positions and velocities). The result is τf=0.0104 (kg m2s−2). The wheel's dynamics may be simulated using this τf value and compare the R-squared results with the remaining ten test sets. The goodness of fit values for the angular position of the wheel range between 0.962 and 0.999 with an average of 0.987. The goodness of fit values for the angular velocity of the wheel range between 0.793 and 0.9890 with an average of 0.938.
The fluctuation in goodness of fits value for the angular velocity may be explained by the design of the bearings and the rolling soft robot. At very low velocity (less than 0.3 rad/s), the friction torques become nonlinear and affect the dynamics of the wheel. Besides, some actuators slightly protrude from the edge of the rim due to the hysteretic stretches of the Ecoflex wrap due to the repeated activation-deactivation cycles. These two effects result in some variation in the observed wheel's velocities. However, the value τf=0.0104 (kg m2s−2) is sufficiently good for the subsequent experiments.
The effect of the forces generated by the actuators may be observed indirectly based on whether the robot accelerates or decelerates. As previously mentioned, the actuator force may depend on the robot's dynamic states, including the contact angle ξc, the current angular speed ξ2 and the actuator's status q, and the control input u, which includes the activation angle φa, and the deactivation angle φd. Since it may be assumed that all actuators are identical, the actuation force should not depend on which actuator (na) being activated.
To estimate the actuation force function, the first six actuators may activate at the activation angle φa=3° to ensure the robot has sufficient momentum for continuous rolling. In the subsequent activations, the wheel's angular speed may be determined with respect to a combination of activation angle φa ranging from 1° to 11°, and the deactivation angle φd ranging from 12° to 22°. Specifically, all actuators past the initial six actuators may be activated sequentially, thus removing the influence of input na from the experiment, and all actuators have the same predetermined activation and deactivation angles throughout the 60-second-long trials. The activation and deactivation angles are the same for all actuators in a trial and are only varied across different trials. The influences of the activation angles and deactivation angles on the wheel speed rise-time tr (s) and steady-state value ξ2ss (m/s) are documented in Table 3. Any combination of activation angle and deactivation angles shown in the gray region of Table 3 result in the robot's discrete rolling behavior.
Based on this table, for the same activation angle, varying the deactivation angle has little influences on the wheel's steady state linear speed, as seen by the unclear patterns of the steady state linear speed with respect to increasing the deactivation angle. This behavior agrees with the general form of the force function as the force diminishes rapidly as the distance between the actuator and ground increases (due to increasing in activation angle).
For the same activation angle, varying deactivation angles does not significantly influence the steady state speed of the robot. The fluctuation of the linear speed for the same activation can be explained by the actuator's charge retention, which occurs after applying high electric fields for a period of time and causes the actuator's performance to worsen over time. This may be related to space charge creation in the thin-film dielectrics, caused by ionization of low-molecular-weight impurities under application of high electric fields. Since the order of experiences for the Table 3 is randomized, the experiments that are conducted earlier result in greater steady-state linear speed.
For the same deactivation angle, increasing the activation angle results in smaller actuation force, which in turn results in smaller steady-state linear speed. This is consistent with the shape of the force function. However, there are no clear trends for the rise time of the angular speed of the wheel with respect to either the activation angle or the de-activation angle. The process of estimating the force function's parameters may be simplified by fixing the deactivation angle to its maximum value of 22° and only varying the activation angles. With the input na simply incrementing based on na=16 mod (η+1) and the input φd=22°, the 3-input-6-state hybrid dynamics model becomes 1-input-6-state model. Due to the nonlinear problem of the force function's parameter estimation that contains containing both continuous and discrete components, particle swarm optimization (PSO) algorithm thanks to both of its simplicity and independence of optimization problem's nonlinearity. The algorithm solves an optimization problem by having a population of candidate solutions, dubbed particles, and moving these particles around in the search-space according to simple mathematical formula over the particle's position and velocity. Since PSO is a metaheuristic as it makes few or no assumptions about the problem being optimized and can search very large spaces of candidate solutions, and PSO does not use the gradient of the problem being optimized, the algorithm is ideal for the estimation of actuation force's parameters.
The candidate solutions are the set of force function's parameters {σ1, σ2, σ3, σ4, σ5, σ6}, as shown in (66). The force function is generated based on these parameters and applied to the hybrid dynamics model to simulate the robot's angular position and angular speed. The objective function is to minimize the sum of squared errors between the simulated linear speed and the measured linear speed for all trials with different activation angles from 1° to 9° with an increment of 2° and same deactivation angle of 22°. Specifically, xik={σ1, σ2, σ3, σ4, σ5, σ6}ik is called as a set of parameters in the search space 6. i=1, . . . , N with N is the total number of candidate solutions, or particles, in the search space. k=1, . . . , M represents the increment of time step with M is the final time at which either an optimal solution is reached (its corresponding sum of squared errors is lower than a predetermined threshold) or the number of search iterations of the PSO algorithm is reached.
The new position and velocity of each particle after each search iteration are updated by the following rules:
x
i
k+1
=x
i
k+νik+1 (78)
νik+1=wνik+c1r1(pik−xik)+crr2(pgk−xik) (79)
where w is the inertia term, r1 and r2 are random values between 0 and 1, and c1 and c2 represent the cognitive and social scaling parameters. Here, w is selected to be 0.5, c1 and c2 to be 1 and 2 respectively. Due to the computation intensity of the algorithm, the sub-solution may be selected after 10 search iterations.
TABLE 4 illustrates fitting performance between the simulated linear speed using the hybrid dynamic model with the estimated force function and the measured linear speed of the robot using motion capture system.
The result of the PSO algorithm described in the previous section is as follow: {σ1, σ2, σ3, σ4, σ5, σ6}={1.214, 1.997, 3.836, −1.004, −0.1009, 22.357}, for 5 trials (shown in
From
There are several reasons for the imperfect R-squared values and steady-state errors in some experiments. Firstly, as the wheel rolls more slowly due to larger activation angles, the robot's linear speed becomes more discrete, resulting more fluctuation in the speed profile. Furthermore, at lower speed, platform vibrations and contact surface irregularities result in more pronounced jitters in the speed profile, making the measured data noisier. Secondly, the order of trials is random: the trial with activation angle φa=7° is conducted before the trials with activation angles φa=1°, φa=5°, and φa=9°, which are conducted before the trial with activation angle φa=3°. The later experiments result in more noticeable charge retention on the actuators that cause the actuation forces to be weaker than that of the same experiment but if conducted earlier. Finally, the optimization solution is suboptimal, and the form of the force function may be more complex, especially in the sophisticated hybrid dynamic interaction between the actuators and the ground while the robot continuously changes its position and speed.
From this experiment, it may be observed that the maximum and minimum controllable range of linear speed may be 0.2 to 0.7 m/s. While it is possible for the wheel to roll at slower speed than 0.2 m/s, the wheel's motion becomes fully discrete, and the speed has a saw-tooth profile (not shown). On the other hand, achieving a linear speed above 0.7 m/s may be possible (e.g., for a lighter robot, or with redesigned folded-HASEL actuators).
The actuation force model may be improved by one of the two following methods. Firstly, the experimental value of the actuator force can be measured directly using a force sensor placed between the actuator and the actuator pad for each actuator. While this method is reliable to acquire the force information, it may significantly increase the weight of the robot. Secondly, the actuation force depends on several factors, including the HV switching circuit, the viscosity of the dielectric fluid, the dimension and shape of each actuator's pouch, the friction between the dielectric fluid and the inner surface of the plastic pouch, to name a few. An accurate mathematical model of the actuator's force can be developed to better capture the wheel's dynamics and improve the controller's performance.
Despite the mentioned limitations, as the main goal of the force estimation is for the control of the robot's stead-state linear speed, the changes in the dynamics and unmodeled disturbances may be compensated for in real-time using a disturbance estimator that is explained below.
Unlike traditional continuous dynamic system, the HASEL powered rolling soft robot has state jumps that are state dependent and discrete input u that remains constant for the entire duration of activation-deactivation of a target actuator. The problem of both state-dependent state jumps and discrete inputs in the dynamics make it challenging to use conventional controller approaches. The model predictive controller and the particle swarm optimization algorithm are used to implement the optimal input to regulate the robot's angular speed.
The controlled system (
The robot's state observer simply receives the updated angular position of the robot, computes its derivative to obtain the angular speed, and maintain or update the remaining four non-physical states based on the jump map, flow map, jump set, and flow set. The outputs of the state observers consist of full states that are used for the next MPC iteration and the estimated angular speed that is used for the disturbance estimator.
The disturbance estimator, or error accumulator, is implemented to account for the real-time error in the dynamic modeling, unmodeled external disturbances, and fabrication and computation errors that result in deviations in the measured angular speed and the simulated angular speed using the hybrid dynamic equations. Since a focus on steady-state control of the angular speed may be desired, the disturbance estimator is not used during the transient period of robot's angular speed. When the predicted angular speed of the robot is within 0.1 m/s of the referenced angular speed, the estimator is turned on, allowing for the controller to gradually correct for the constant angular speed offset. The disturbance estimator has the follow discrete form:
{circumflex over (d)}(k+1)+{circumflex over (d)}(k)+Kess(k) (80)
ss(k)=ξ2,m(k)−ξ2,p(k) (81)
where:
{circumflex over (d)}(k+1): the updated estimated disturbance term
{circumflex over (d)}(k): the current estimated disturbance term
ξ2,m(k): the measured angular speed
ξ2,p(k): the current predicted speed based on the MPC algorithm
K: the positive valued tunning constant
A larger K results in faster build-up in error and more responsive correction for the control offset. However, too large K also amplifies noises in the measured speed and cause the controller to generate an oscillatory speed around the referenced speed.
The controller has two operating modes: acceleration and active deceleration. In the acceleration mode, the controller uses MPC algorithm with PSO algorithm to determine the optimal input to activate the next actuator such that the predicted speed ξ2,p(k) is closest to the referenced speed ξ2,r(k). If ξ2,p(k)<(k)+0.3, the controller will maintain the acceleration mode. If ξ2,p(k)≥ξ2,r(k)+0.3, the controller will switch to the active deceleration mode. In this mode, the controller applies the braking input with a target actuator na=16 mod (i+2) and predetermined activation angle of −22° and deactivation angle of −6°.
The model predictive controller involves a cost function J, defined as:
Since the reference speed in the future may not be known, it may be assumed that it is a constant throughout each MPC iteration: ξ2,r(k)=ξ2,r(k+1)= . . . =ξ2,r(k+n). The cost function J(x, u) is the mean squared error between the predicted speed and the referenced speed during the entire activation-deactivation cycle (duration of q=0 and q=1) which corresponds to the jump step incrementing thrice from right after j to right after j+3 (
Minimize (x, u)
Subject to: (x, u)∈ŜH(x0)
x(T,J)∈X
(T,J)∈T
u∈U
where SH(x0) is the set of solution pairs (x, u) of satisfying x(0,0)=x0, and (T, J) denotes the terminal time of (x, u).
The terminal times of the feasible solution pairs belong to a set ⊂≥0×≥0, called the prediction horizon.
for some τ∈{1,2, . . . } and δ>0, where fs is the sampling rate of the controller. The prediction horizon for a given control input may be the entire duration of activation-deactivation cycle that is previously mentioned.
The optimal input u may be computed at the beginning of every period q=0 for the target actuator na which is always the adjacent actuator of the current actuator η (na=16 mode(η+1)). Each input u is fixed for the entire activation-deactivation cycle of the target actuator. Since the input is fully discrete and remain constant for the entire activation-deactivation cycle, the concept of control horizon does not apply.
To solve for the optimal input for the minimized cost function in real-time, the PSO algorithm may be used. Optimization-based controller designs not only have difficulties with nonlinear, nonconvex, and discrete cost functions but also their real-time computation capability. The next section describes how the controller is implemented in real-time.
The controller's varying computation time may utilize multi-threaded implementation to isolate the MPC thread from the periodic S data collector thread, whose sampling rate may beat 600 Hz, that collects the motion capture and embedded microcontroller data in real-time (
A personal computer with a powerful processor (e.g., Ryzen 5 5600X, Advanced Micro Devices) is used for the C++ multi-threaded implementation. The program is centered around a shared data map that all threads can have access to. This data map contains the latest update of the motion capture data and embedded microcontroller (e.g., Teensy 3.6, PJRC) data. The first thread, the data collector, continuously samples the motion capture and microcontroller data and write them to the shared data map at 600 Hz. The data logger thread obtains a copy of the shared data map and write it to a text file at the rate of 300 Hz for post processing and plotting. The MPC thread keeps polling the content of the shared data map; as soon as the robot is activated (q+=1), MPC computes an optimal control command input and send it to the embedded microcontroller via the data collector thread. The embedded microcontroller continues to send angular position from the rotary encoder, the actuation status q, and the current actuator index η over serial and check for new control command input at 300 Hz. If there are updated input, the controller waits until the current actuator η finishes activating then applies the command to the target actuator accordingly.
A typical step tracking performance of the closed-loop system may include a reference linear speed has three steps from 0.3 m/s to 0.6 m/s then 0.9 m/s, a step down to 0.4 m/s then a step up to 0.8 m/s, with 15 seconds between step changes.
While there is an embedded hardware to drive each of the 16 actuators, the robot may be fully untethered and intelligent by integrating both the computational hardware that is sufficiently fast (either an FPGA or ASIC processor) and including an on-board battery. The feedback sensors such as the rotary encoder and the motion capture hardware can be also replaced by an onboard inertial measurement unit.
The robot's steering and lateral stability concerns may be addressed by converting the wheel-shaped robot into a spherical robot or including an additional wheel-shaped robot such that two wheels are connected by an axle.
One or more applications 3312 are loaded in the memory 3304 and executed on the operating system 3310 by the processor unit(s) 3302. Applications 3312 may receive input from various input local devices such as a microphone 3334, input accessory 3335 (e.g., keypad, mouse, stylus, touchpad, joystick, instrument mounted input, or the like). Additionally, the applications 3312 may receive input from one or more remote devices such as remotely-located smart devices by communicating with such devices over a wired or wireless network using more communication transceivers 3330 and an antenna 3338 to provide network connectivity (e.g., a mobile phone network, Wi-Fi®, Bluetooth®). The computing device 3300 may also include various other components, such as a positioning system (e.g., a global positioning satellite transceiver), one or more accelerometers, one or more cameras, an audio interface (e.g., the microphone 3334, an audio amplifier and speaker and/or audio jack), and storage devices 3328. Other configurations may also be employed.
The computing device 3300 further includes a power supply 3316, which is powered by one or more batteries or other power sources, and which provides power to other components of the computing device 3300. The power supply 3316 may also be connected to an external power source (not shown) that overrides or recharges the built-in batteries or other power sources.
In an example implementation, the computing device 3300 comprises hardware and/or software embodied by instructions stored in the memory 3304 and/or the storage devices 3328 and processed by the processor unit(s) 3302. The memory 3304 may be the memory of a host device or of an accessory that couples to the host. Additionally or alternatively, the computing device 3300 may comprise one or more field programmable gate arrays (FGPAs), application specific integrated circuits (ASIC), or other hardware/software/firmware capable of providing the functionality described herein.
The computing device 3300 may include a variety of tangible processor-readable storage media and intangible processor-readable communication signals. Tangible processor-readable storage can be embodied by any available media that can be accessed by the computing device 3300 and includes both volatile and nonvolatile storage media, removable and non-removable storage media. Tangible processor-readable storage media excludes intangible communications signals and includes volatile and nonvolatile, removable and non-removable storage media implemented in any method or technology for storage of information such as processor-readable instructions, data structures, program modules or other data. Tangible processor-readable storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CDROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other tangible medium which can be used to store the desired information, and which can be accessed by the computing device 3300. In contrast to tangible processor-readable storage media, intangible processor-readable communication signals may embody processor-readable instructions, data structures, program modules or other data resident in a modulated data signal, such as a carrier wave or other signal transport mechanism. The term “modulated data signal” means an intangible communications signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, intangible communication signals include signals traveling through wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media.
Some implementations may comprise an article of manufacture. An article of manufacture may comprise a tangible storage medium to store logic. Examples of a storage medium may include one or more types of processor-readable storage media capable of storing electronic data, including volatile memory or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writeable or re-writeable memory, and so forth. Examples of the logic may include various software elements, such as software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, operation segments, methods, procedures, software interfaces, application program interfaces (API), instruction sets, computing code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. In one implementation, for example, an article of manufacture may store executable computer program instructions that, when executed by a computer, cause the computer to perform methods and/or operations in accordance with the described implementations. The executable computer program instructions may include any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, and the like. The executable computer program instructions may be implemented according to a predefined computer language, manner or syntax, for instructing a computer to perform a certain operation segment. The instructions may be implemented using any suitable high-level, low-level, object-oriented, visual, compiled and/or interpreted programming language.
The implementations described herein are implemented as logical steps in one or more computer systems. The logical operations may be implemented (1) as a sequence of processor-implemented steps executing in one or more computer systems and (2) as interconnected machine or circuit modules within one or more computer systems. The implementation is a matter of choice, dependent on the performance requirements of the computer system being utilized. Accordingly, the logical operations making up the implementations described herein are referred to variously as operations, steps, objects, or modules. Furthermore, it should be understood that logical operations may be performed in any order, unless explicitly claimed otherwise or a specific order is inherently necessitated by the claim language.
While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description is to be considered as exemplary and not restrictive in character. For example, certain embodiments described hereinabove may be combinable with other described embodiments and/or arranged in other ways (e.g., process elements may be performed in other sequences). Accordingly, it should be understood that only the preferred embodiment and variants thereof have been shown and described and that all changes and modifications that come within the spirit of the invention are desired to be protected.
The present application claims benefit of priority to U.S. Provisional Patent Application No. 63/189,571, entitled “EMBEDDED MAGNETIC SENSING METHOD FOR SOFT ACTUATORS” and filed on May 17, 2021, which is specifically incorporated by reference herein for all that it discloses or teaches.
This invention was made with government support under grant number 1739452 awarded by the National Science Foundation. The government has certain rights in the invention.
Number | Date | Country | |
---|---|---|---|
63189571 | May 2021 | US |