Abstract

In this paper, the grasping operation of CubeSat microsatellites is analyzed with a topological study of grasping strategies as functions of CubeSat geometry. Grasping conditions and limitations are introduced for the square-profiled bodies of CubeSats of 1U and 12U sizes. A topology search defines fingertip forms and configurations to fulfill requirements, and operational limitations are presented in terms of geometry and dynamic parameters. The grasping performance is then analyzed in the side grasp and corner grasp cases and validated with a numerical case study.

Graphical Abstract Figure
Graphical Abstract Figure
Close modal

1 Introduction

Earth orbit is declared as a limited resource. According to Ref. [1], most satellites are placed in low earth orbit (LEO). The fuel is a limited resource for the spacecraft, and after the dedicated mission time, it becomes a passive object. The passive object on the actively used attitude of the orbit is a threat to the functioning satellites. The collision of the satellites in orbit creates many particles with uncontrollable trajectories, which can damage other satellites, causing a chain reaction. The Kessler effect [2,3] was discussed more than 50 years ago, and the probability of this event is only increasing over time.

Mitigation measures are aimed at reducing the amount of space debris. Most current space missions are planned to be finished out of so-called “protected orbits” [1], which are LEO and the geostationary orbit (GEO). Two different approaches to interacting with space debris are in use. The first approach considers passive objects in orbit as “useless” and to be aimed to deorbit with technologies based on laser [4,5], tethers [6] and nets [7], sails [8,9], ion beams [10], and others [1113].

Another approach is dedicated to prolonging the satellite's lifetime. On-orbit servicing operations are developed to refill or repair the satellites. The satellite- and manipulator-based technologies are used in both approaches. ETS-VII space robot mission [14,15] was dedicated to test the approach of rendezvous and free-floating space targets. The German mission DEOS [16] was testing the technology of deorbiting the non-cooperative satellite. Other projects, such as TECSAS [17] or SMART-OLEV [18], tested the technologies for the life extension of the satellites. The International Space Station (ISS) has become a polygon for testing on-orbit servicing (OOS) technologies. Three manipulators are in use: JEMRMS [19], ERA [20], and Canadarm2 [21], which work together with the dexterous manipulator Dextre [22]. These large manipulators can hold up to 116,000 kg, reach the 15 m distance [23], and are used for berthing and replacing the spacecraft modules.

Over time, the satellites tend to be lighter, smaller, and launched in constellations [1]. Miniaturization and standardization for the small satellites made cube-shape satellite form CubeSat [24] one of the most used standards. These factors reduced manufacturing and testing prices and made it possible to manufacture by small satellite building startups and institutions. Although different technologies are being tested for CubeSats' OOS [2528], most of them are not designed for being docked/berthed and maintained. The currently used manipulators on the ISS [23] are overengineered for such small satellites and not cost-efficient for their life extension. The current docking and berthing systems are usually based on peg-and-hole or latch systems [29,30]. The other technologies for capturing satellites are outlined in the review [31]. Formulations of geometrical grasping can be found in Refs. [32,33] but represent a strategy that has not been applied to satellites.

Therefore, CubeSats are generally abandoned as debris when damaged or at their end of life since current space manipulators have not been designed for their collection. To avoid issues caused by debris cluttering, as well as extend CubeSat life and efficiency by enabling refurbishing and maintenance, this research aims at proposing new designs to address the challenge of CubeSat berthing. In the previous works [34,35], the requirements and problems have been discussed for the berthing system dedicated especially to CubeSats. The idea of geometry-based grasping was introduced there, and the design for the berthing end-effector was discussed in Ref. [36] at the MeTrApp conference.

This paper outlines geometry aspects of berthing toward proper grasping. The gripper design is discussed in terms of grasping square- and rectangle-profiled bodies of CubeSats. The performance characteristic is outlined according to space conditions, geometry shape, and physical properties of CubeSats.

2 Requirements

The requirements for grasping in the berthing operation can be described in Fig. 1. The fixed parameters are the known dimensions of the CubeSats and their masses. The berthing box is a preset zone where the CubeSat should arrive to be grasped. The size of this zone is theoretically limited by the working zone of the manipulator. According to Ref. [37], the berthing box is limited by the size of the berthing interface plus the distance needed for the manipulator to stop. As for geometry-based berthing without any interfaces on the satellite, the berthing box size is assumed 1.5 times larger than the CubeSats' size. The maximal forces that can be applied to grasp CubeSat depend on the strength properties of the satellite and its parts. It is assumed that the ribs of the CubeSat are much stronger than its surfaces because usually solar panels and fragile sensors are installed on the surfaces. CubeSat is designed to withdraw forces up to 10 N applied to the solar panels. Instead, the skeleton of the CubeSat is designed to handle a critical compression load up to 1320 N [38]. According to these hypotheses, grasping by ribs was chosen in the previous works [3436]. Nevertheless, surface grasping is also should be researched as a way requiring less accuracy. In real conditions, CubeSat cannot be fixed inside the berthing box, but its velocities and accelerations should be limited for berthing and realizable to reach. The linear velocity is assumed as 10 mm/s or 0.01 m/s, as 10% of the 1U CubeSat's size. Angular velocity is assumed 5 deg/s referring to the recommendations for berthing operation [37]. Accelerations are assumed small, such as 5 mm/s2 and 0.5 deg/s2.

Fig. 1
Requirements for the grasping operation
Fig. 1
Requirements for the grasping operation
Close modal

Grasping operation is assumed 1 s, as it should be fast, but the impact is desired to be zero. The dynamic parameters, such as relative velocities and accelerations, will be validated later.

The overview of a CubeSat and a grasping zone is in Fig. 2. Although the berthing operation is supposed to be done with CubeSats without specific adaptation and only using their geometry, some assumptions to the properties are essential. In the described berthing task, CubeSats without folding parts are considered. The solar panels and sensors are placed on the surfaces. Top and bottom surfaces can be occupied by sensors no more than 10% of the longest size, or hCS. Side surfaces can be occupied by solar panels or sensors, which are made aligned with the surface. CubeSat is represented with dimensions aCS, bCS, and hCS, and the dimensions of the berthing box are aBB, bBB, and hBB.

Fig. 2
Requirements for CubeSat and a berthing box
Fig. 2
Requirements for CubeSat and a berthing box
Close modal

The numerical parameters from Fig. 2 are shown in Table 1, as referenced from [24,37,38] and assumed above.

Table 1

Key numerical parameters for CubeSat grasping operation

CubeSat dimensions [24]:minmax
aCS (mm)100226.3
bCS (mm)100226.3
hCS (mm)100366
Berthing box size [37]:
aBB (mm)150340
bBB (mm)150340
hBB (mm)150550
 CubeSat mass (kg) [24]124
CubeSat max velocities:
 Linear (m/s)0.01
 Angular (deg/s)5
CubeSat max accelerations:
 Linear (m/s2)0.005
 Angular (deg/s2)0.5
 Operation time (s)60
 Grasping time (s)1
Grasping force:
 Surface grasp (N)10
 Rail grasp (N)1320
CubeSat dimensions [24]:minmax
aCS (mm)100226.3
bCS (mm)100226.3
hCS (mm)100366
Berthing box size [37]:
aBB (mm)150340
bBB (mm)150340
hBB (mm)150550
 CubeSat mass (kg) [24]124
CubeSat max velocities:
 Linear (m/s)0.01
 Angular (deg/s)5
CubeSat max accelerations:
 Linear (m/s2)0.005
 Angular (deg/s2)0.5
 Operation time (s)60
 Grasping time (s)1
Grasping force:
 Surface grasp (N)10
 Rail grasp (N)1320

3 Grasping Topology

The task for grasping can consist of planar and spatial cases. Planar case can consist of square and rectangle formulation. Planar grasping of a square body is discussed here.

Grasping of the square body can be presented in two ways, such as corner grasping (C) and side grasping (S) fingertips. These ways are represented in Fig. 3.

Fig. 3
Contact types for a square body: (a) corner contact and (b) side contact
Fig. 3
Contact types for a square body: (a) corner contact and (b) side contact
Close modal

The square body has four equal sides and four axes of symmetry, two of them come through the centers of the opposite sides, and two others connect two opposite corners of the square. For two fingertips, six combinations are represented: the first two are “corner–corner” contacts or C-C, the second two are “corner–side” contacts or C-S, and the last are “side–side” or S-S, as represented in Fig. 4. Only relative positions are considered; others can be taken from the presented combinations by rotating both fingertips around the square's center or reflecting from one of the symmetry axes, which is shown in Fig. 5.

Fig. 4
Contact combinations for a square body
Fig. 4
Contact combinations for a square body
Close modal
Fig. 5
Equivalent combinations: (a) central symmetry and (b) axial symmetry
Fig. 5
Equivalent combinations: (a) central symmetry and (b) axial symmetry
Close modal

The parameters of the contact are shown in Figs. 6 and 7. Figure 6(a) represents the side contact. For convenience of the representation, the square body is named A1A2A3A4 with the coordinate system Oxy and symmetry axes A12A34 and A23A34. The fingertip with the length equal to h is represented as B1B2. It contacts one of the sides of the square with the force equal to Fsy in the case of a contact with the horizontal side of the square. The index sy indicates the Y component of force for side contact. The distance between the coordinate center O of the square and the center of the fingertip is equal to Δa, and it is measured along the side of the contact. The position of the fingertip related to the center, as in Fig. 7, matters when contact combinations from Fig. 4 are considered. When describing the contact, it does not matter what side of the square is used, because they are equal. Corner fingertip is parametrized in Fig. 6(b). For the grasping task, fingertips are considered of equal lengths, so the corner fingertip consists of two halves equal to h/2. For the corner fingertip, contact force is represented as Fcx and Fcy with respect to the x and y axes.

Fig. 6
A model of the contact: (a) side contact and (b) corner contact
Fig. 6
A model of the contact: (a) side contact and (b) corner contact
Close modal
Fig. 7
A model for side contact as a function of the contact position: (a) Δa < 0, (b) Δa = 0, and (c) Δa > 0
Fig. 7
A model for side contact as a function of the contact position: (a) Δa < 0, (b) Δa = 0, and (c) Δa > 0
Close modal

4 Definition of the Grasping Zone

The grasping zone is the area limited by the ends of the fingertips. It is defined that the fingertip cannot be inside the grasping body. The grasping zone for the side fingertips (indexed as gs) and the square body is defined by the length Lgs and width hgs. The Cartesian coordinate system Ogsxgsygs is placed in the center of the zone, and xgs is directed to the middle of the fingertip. The square body (indexed as sq) is defined with the side equal to a, diagonal dsq, and the coordinate system Osqsxsqsysqs, where index sqs is related to the square body being grasped by side fingertips, in the center of the square. Let's fix the square body and move the grasping zone around it to find the limits where the square body can be grasped. The general case in Fig. 8(a) assumes the general position of the grasping zone related to the square body. Figure 8(b) is the “border” case of rotation where the square body can still be grasped. The grasping zone center Ogs is shifted from the square body center Osqs by the distances Δx and Δy along corresponding axes xsqs and ysqs and rotated by the angle α, which is measured between the axes xsqs and xgs of the square body and the grasping zone, respectively. For the static case, the side grasping is assumed successful if only two counter sides intersect the grasping zone. Six different cases of positioning are represented in Fig. 9. The square body in Fig. 9(a) is out of the grasping zone. In Fig. 9(b), the square body enters the grasping zone, but two adjacent sides do not intersect the grasping zone. In Fig. 9(c), two adjacent sides of the square body intersect the grasping zone. Figures 9(a)9(c) show the failure conditions where the square body cannot be grasped. Figures 9(d) and 9(e) show three and four sides of the body in the grasping zone. The counter sides of the body are in the grasping zone. In Fig. 9(d), one of the sides is not fully in the grasping zone, which can give nonsymmetric force distribution, and grasping will not be ensured. On another hand, the grasping zone in Fig. 9(e) also includes the corners of the square body, and concentrated reaction forces can affect negatively the fingertips during the grasping process. Instead, Fig. 9(f) shows the desired way of grasping, where only two counter sides intersect the grasping zone. This figure is highlighted to stand for it as the only satisfactory grasping condition.

Fig. 8
Static task definition for the side grasp: (a) all parameters in general case and (b) parameters for search maximal angular deviation α with zero linear deviations
Fig. 8
Static task definition for the side grasp: (a) all parameters in general case and (b) parameters for search maximal angular deviation α with zero linear deviations
Close modal
Fig. 9
Relative side fingertips and square body positioning: (a) out of the grasping zone, (b) two adjacent sides are partially in the grasping zone, (c) grasping zone intersects two adjacent sides, (d) grasping zone intersects one side fully and two others partially, (e) “ready to grasp case” or grasping zone intersects two counter sides, and (f) all four sides are partially in the grasping zone
Fig. 9
Relative side fingertips and square body positioning: (a) out of the grasping zone, (b) two adjacent sides are partially in the grasping zone, (c) grasping zone intersects two adjacent sides, (d) grasping zone intersects one side fully and two others partially, (e) “ready to grasp case” or grasping zone intersects two counter sides, and (f) all four sides are partially in the grasping zone
Close modal

For the grasping task, it is important to know the limits where the square body can be grasped. Grasping zone length Lgs is chosen in such a way as to allow the body to enter the grasping zone by any angle. The other limitation of Lgs is the minimization of the size of the end-effector. Lgs can be assumed as the size of the berthing box from Table 1 or 1.5 a. The difference between Lgs and the side of the square is the maximal linear deviation Δx. It is shown in Eq. (1). Linear deviation Δy and angular deviation α depend on the width of the grasping zone hgs and the size of the square body a in the form of Eqs. (2) and (3).

To be grasped, the sum of linear and angular deviations for the square body should be in the limits to be defined.
(1)
(2)
(3)

Equations (1) and (2) are used to find maximal linear deviation Δy and angular deviation α analytically, but there is another way to find the grasping zone deviations in coordinates Δy–α. The grasping zone rotates consequently around its center for 5 deg, as shown in Fig. 10(a). The shortest distance from the corner of the square body to the grasping zone border is drawn. These lines are used for the phase portrait in Fig. 10(b).

Fig. 10
Grasping zone limitations for side grasp in coordinates Δy–α: (a) points for phase portrait and (b) phase portrait of maximal angular deviations α from linear deviations Δy
Fig. 10
Grasping zone limitations for side grasp in coordinates Δy–α: (a) points for phase portrait and (b) phase portrait of maximal angular deviations α from linear deviations Δy
Close modal

The same way can be used to draw the phase portrait in coordinates Δxα.

The grasping by the corners is shown in Fig. 11. Parameters of the grasping zone are defined by its length Lgc, width hgc, and coordinate system Ogcxgcygc, where index gc represents grasping by corners. Coordinate system of the square body for corner grasp (indexed as sqc) Osqcxsqcysqc is directed to its corners. The grasping zone for corner fingertips, which are defined with two halves of lengths h/2, is narrower than the grasping zone for side fingertips with lengths equal to h, and Eq. (4) is used to find it.
(4)
Fig. 11
Static task definition for the corner grasp
Fig. 11
Static task definition for the corner grasp
Close modal

According to the notion, corner grasping can be considered successful if the body can be grasped by its corners. The possible relative positions are represented in Fig. 12. Two sides intersecting the grasping zone, as in Figs. 12(a) and 12(c), do not satisfy the condition of corner grasp. Contact forces would be concentrated on the fingertips' ends and related sides, which can damage either the fingertips or the body. For Fig. 12(b), where only one corner is inside the grasping zone, the undesired reaction forces will affect the side of the body and half of the fingertip, which is in contact with the corner. Figure 12(c) is the case where two non-opposite corners are inside the grasping zone. In this case, contact forces would affect not the corners but the opposite sides. Also, the fingertips should be able to adjust themselves by rotating to be parallel to the contact sides. Therefore, the only satisfactory option for corner grasping is presented in Fig. 12(e) with the background highlighted.

Fig. 12
Relative positioning of the grasping zone and the square body: (a) two adjacent sides intersect the grasping zone, (b) one corner is in the grasping zone, (c) two opposite sides intersect the grasping zone, (d) two opposite angles are inside the grasping zone, and (e) “ready to grasp” or two counter angles are inside the grasping zone
Fig. 12
Relative positioning of the grasping zone and the square body: (a) two adjacent sides intersect the grasping zone, (b) one corner is in the grasping zone, (c) two opposite sides intersect the grasping zone, (d) two opposite angles are inside the grasping zone, and (e) “ready to grasp” or two counter angles are inside the grasping zone
Close modal

It is possible to find the grasping zone limits for corner grasp in Fig. 11 by using the same procedures. Two counter corners of the square body must be placed inside the grasping zone for successful grasping. In this way, grasping is limited by the width of the grasping zone and not by the side of the square body, which is considered greater than the grasping zone width. Therefore, angular and linear deviations are smaller than for the side grasp. The phase portrait for the corner grasp in Fig. 13 has been created similarly to the side grasp described in the procedure in Fig. 10.

Fig. 13
Grasping zone limitations for corner grasp in coordinates Δy–α: (a) points for phase portrait and (b) phase portrait of maximal angular deviations α from linear deviations Δy
Fig. 13
Grasping zone limitations for corner grasp in coordinates Δy–α: (a) points for phase portrait and (b) phase portrait of maximal angular deviations α from linear deviations Δy
Close modal

Phase portraits for side grasp in Fig. 10 and for corner grasp in Fig. 13 show the differences in linear and angular deviations. To represent these differences, the plots have been combined with the same scale. In polar coordinates, the phase portrait for corner grasp is almost invisible, so the phase portrait has been redrawn in Cartesian coordinates, where the horizontal axis represents the linear deviation Δy, and the vertical axis is for angular deviation α. The lengths of projections to the rotated grasping zone are drawn parallel to the horizontal axis of the linear deviation. For side grasp, the projections are done for each 5 deg, for corner grasp, the projections are each 0.5 deg. The phase portraits in Cartesian coordinates are both visible, so it is possible to estimate the significant difference in precision requirements for each way of grasp (Fig. 14).

Fig. 14
Phase portraits comparison: (a) polar coordinates and (b) Cartesian coordinates
Fig. 14
Phase portraits comparison: (a) polar coordinates and (b) Cartesian coordinates
Close modal

The body is 100 × 100 mm in size, side fingertips are 10 mm, and corner fingertips are 5 × 5 mm. A comparison of maximal linear deviations for each way of grasping is presented in Table 2. Despite the higher strength of the skeleton of the CubeSats allowing a higher force in the corner grasp, these results highlight how grasping tolerances impose harsh positional constraints for the corner grasp configuration when compared to the side grasp, making the latter significantly easier to achieve.

Table 2

Grasping zone limits for side and corner grasps

Side graspCorner grasp
Maximal linear deviation Δymax (mm)453.54
Maximal angular deviation αmax (deg)40.973.01
Side graspCorner grasp
Maximal linear deviation Δymax (mm)453.54
Maximal angular deviation αmax (deg)40.973.01

5 Dynamics of the Grasping Task

It is important to know the grasping zone limits to grasp the body during its movement. The square body moves with the linear velocity V and angular velocity ω. For Figs. 15(a) and 15(b), it intersects the grasping zone. Figure 15(a) is related to Fig. 9(e) and can be grasped. Figure 15(b) corresponds to Fig. 12(b) and cannot be grasped, but it can change its position to the acceptable one, as in Fig. 12(e). The fingertips are placed on the gripper, and gripper closure means the movement of the fingertips toward the grasping zone center. If not correct the position of the gripper (and, consequently, the position of the grasping zone), the body will fly away from grasping. Fingertips move toward each other with the closure speed Vcl until they both touch and hold the square body. This process is called closing the gripper. Grasping zone size, velocities of the square body, and the closing speed are the parameters for grasping to be defined.

Fig. 15
Dynamic task definitions: (a) for side grasp and (b) for corner grasp
Fig. 15
Dynamic task definitions: (a) for side grasp and (b) for corner grasp
Close modal

Two options are available to grasp the body. The first approach is to close the gripper when the body is in the grasping zone. In this way, the gripper starts to close when the body is in the ready-to-grasp configuration, as in Figs. 9(e) and 12(e).

Another approach is to consider the dynamic parameters of the body when it is not yet ready to be grasped. In this way, the gripper starts closing before the body arrives in the proper position. For this case, grasping is conducted with less closure speeds Vcl, which means less dynamic impact during the contact. The drawback of this approach is the grasping zone width can become too narrow for the body to enter, resulting in failure.

6 Grasping Model Numerical Examples

6.1 Example 1: A square CubeSat Is Grasped by Side Fingertips.

It is given that the square body with a side equal to a is placed in the center of the grasping zone, and it moves with the constant velocity V parallel to the axis ygs. The grasping zone Lgs is equal to the width of the grasping box, or 1.5·a. The task is to find the maximal velocity V and closure speed Vcl knowing the time of grasping tgrasp.

The first step is to find the travel distance Δymax for the square body for being grasped. From Eq. (1), Δymax=(a/2)h. The travel distance for each fingertip is half of difference between the grasping zone width and the side of the square body, or Δxmax:
(5)
To find the velocities, the found distances are divided by grasping time, as in Eqs. (6) and (7):
(6)
(7)
The relation between Vcl and V can be represented as follows:
(8)
or

The grasping time tgrasp and the dimensions for the smallest and biggest square bodies representing CubeSat 1U and 12U, respectively, are taken from Table 1 to prove the maximal velocity of the square body V and to find the required closure speed Vcl. The numerical results are represented in Table 3 as V(1U), V(12U), Vcl(1U), and Vcl(12U), respectively.

Table 3

Numerical results for the dynamic task of example 1

h (mm)tgrasp (s)a(1U) (mm)a(12U) (mm)V(1U) (mm/s)V(12U) (mm/s)Vcl(1U) (mm/s)Vcl(12U) (mm/s)
101100226.340103.152556.575
h (mm)tgrasp (s)a(1U) (mm)a(12U) (mm)V(1U) (mm/s)V(12U) (mm/s)Vcl(1U) (mm/s)Vcl(12U) (mm/s)
101100226.340103.152556.575

The maximal velocity V of the square body movement depends on the closure speed Vcl, as shown in Eq. (9). With the limited grasping time set in Table 1, the maximal velocity of the square body is more than mentioned in Table 1. It means that the CubeSat can move faster, and anyway, it will be grasped with the related time.

6.2 Example 2: A square CubeSat Is Grasped by Corner Fingertips.

The square body with side a and diagonal dsq is placed in the center of the grasping zone of the gripper with corner fingertips. The square body moves with constant velocity V parallel to the axis ygc. The width of the grasping zone Lgc is limited by the berthing box size aBB × aBB, which is equal to 1.5a. The time of grasp tgrasp is set to 1 s. The task is to find the maximal velocity V and the closure speed Vcl.

Here, the grasping zone width Lgc is not set explicitly. It can be found in Eq. (9).
(9)
The next step is to find the travel distance Δymax. From the grasping zone center, the square body can move only on half of the width of the grasping zone. Using Eq. (4), the travel distance of the body is shown in Eq. (10).
(10)
The travel distance Δxmax can be found in a similar way, as in example 1. It is equal to half of the difference between the grasping zone width and the square body diagonal, as in Eq. (11).
(11)
The velocities V and Vcl can be found by dividing these distances by the grasping time tgrasp, as in Eqs. (12) and (13).
(12)
(13)
The relation between these velocities is represented in Eq. (14).
(14)
or

Square bodies with the dimensions of CubeSats 1U and 12U with a = 100 mm and 226.3 mm are used, respectively. The grasping time tgrasp = 1 s is taken from Table 1. The values of V and Vcl are represented in Table 4.

Table 4

Numerical results for the dynamic task of Example 2

h (mm)tgrasp (s)a(1U) (mm)a(12U) (mm)V(1U) (mm/s)V(12U) (mm/s)Vcl(1U) (mm/s)Vcl(12U) (mm/s)
101100226.33.53.535.480
h (mm)tgrasp (s)a(1U) (mm)a(12U) (mm)V(1U) (mm/s)V(12U) (mm/s)Vcl(1U) (mm/s)Vcl(12U) (mm/s)
101100226.33.53.535.480

The maximal velocity V for the square body is less than the required 10 mm/s in Table 1. It means that with tgrasp = 1 s and V = 10 mm/s, the square body will go out of the grasping zone. The solutions can be to reduce tgrasp or to start grasping before the square body enters the grasping zone but moving toward it.

Solution 1: Find tgrasp to successfully grasp the square body with corner fingertips.

The closure speed Vcl is expressed from Eq. (14) in the form of Eq. (15).
(15)
With V = 10 mm/s, the closure speeds Vcl are equal to 100 mm/s and 226.3 mm/s, with respect to 1U and 12U CubeSat sizes. From Eq. (13), tgrasp is expressed in the form of Eq. (16).
(16)

From Eq. (16), the tgrasp for CubeSat 1U and 12U is equal to 0.353 s.

Solution 2: Start grasping before the square body enters the grasping zone.

Grasping time tgrasp is set to 1 s. Knowing the travel distance Δxmax for each fingertip, it is possible to calculate the closure speed Vcl, as in Eq. (11). If to fix the velocity of the square body V, the distance Δymax can be found from Eq. (12) in the form of Eq. (17).
(17)
In this case, Δymax> h, which means the square body will leave the grasping zone before being grasped. To satisfy the grasping condition, Δyout is used as the difference between the travel distance Δymax and the width of the grasping zone h, as shown in Eq. (18).
(18)

The gripper should start grasping when the square body arrives at the position Δyout. Simplified cases with symmetrical contact were discussed in this work when both fingertips contact the surface or corners of the square body. However, the body cannot be perfectly aligned between the fingertips. The situation of nonsymmetrical contact is partially covered in Ref. [35]. With the small velocities of CubeSat, nonsymmetrical contact changes its translational and rotation speed, but in such a way that it does not go out of the grasping zone and, therefore, still in the position ready to be grasped. Another thing that is necessary to be considered is the length of the grasping zone Lgs or Lgc for the side and corner grasps, respectively, which is equal to the distance between the fingertips, and it is equal to 1.5 of the size of the CubeSat, or 1.5 a in planar task. This distance is small enough, and the CubeSat does not go out from the grasping zone but is constrained between the fingers.

The impact can be reduced by lowering the gripping speed, but requirements for the accuracy and/or the speeds of the microsatellite in this case would be higher. Instead of lowering the gripping speed, the impact can be reduced by using damping in the construction of the gripper or the damping materials for the fingertip.

7 Experimental Validation

To observe the effects during grasping, the grasping operation has been performed with a prototype. The experimental setup is represented in Fig. 16. It can be divided into active and sensor parts. The active part consists of the gripper (1) and the CubeSat model (2). Corner fingertips are designed with the size 25 × 25 mm and a length of 70 mm; the CubeSat model is a cardboard box 210 × 210 × 50 mm, which is close to 12U CubeSat size. The gripper motor is connected to the PC (3) via a motor interface (4). Also, it requires an external power supply (5). Capron threads (6) are attached to the stand (7) and hold the gripper and the CubeSat model: one for the gripper and two for the CubeSat model. The platform (8) helps in positioning the gripper toward the CubeSat model. The sensor part of the experimental setup consists of two inertial measurement unit (IMU) sensors (9, 10) and two force sensor resistors (FSR) (11, 12), which are connected to the Arduino board (13) placed on the gripper. Arduino takes the data from the sensors and sends it to the PC with the highest frequency available with the I2C connection and the provided library called DFRobot_BMI160 [39].

Fig. 16
Testing setup scheme: gripper (1), CubeSat model (2), PC (3), motor interface (4), power supply (5), capron threads (6), stand (7), fixed platform (8), IMU sensors (9, 10), FSR (11, 12), and Arduino board (13)
Fig. 16
Testing setup scheme: gripper (1), CubeSat model (2), PC (3), motor interface (4), power supply (5), capron threads (6), stand (7), fixed platform (8), IMU sensors (9, 10), FSR (11, 12), and Arduino board (13)
Close modal

The snapshot from the video is represented in Fig. 17. The CubeSat model is aimed to be grasped by the corner fingertips. The printed model of the gripper is the improved version of the double slider-crank mechanism. Two counter diagonals are placed toward the fingertips of the gripper inside the imaginary grasping zone of the gripper. Both the CubeSat model and gripper are hung on a capron thread.

Fig. 17
The snapshot of the grasping operation: (a) ready-to-grasp position, (b) the CubeSat model body is grasped, and (c) released position
Fig. 17
The snapshot of the grasping operation: (a) ready-to-grasp position, (b) the CubeSat model body is grasped, and (c) released position
Close modal

The CubeSat model is hung on two threads, which come from the centers of two opposite square sides. This placement allows it to rotate freely along the axis parallel to the CubeSat model's ribs for grasping and through its center of mass. The gripper model is held by one capron thread connected to the adjustment platform. CubeSat model body is a cardboard box 210 × 210 × 50 mm, which is close to the dimensions of CubeSat 12U. The larger surface 210 × 210 mm is placed parallel to the gripper mechanism. The distance between the central gripper link and the surface of the CubeSat model is set to 40 mm.

The frame of the snapshot in Fig. 17(a) represents the start of the grasping. The CubeSat model is not yet grasped, but the gripper starts to move its fingertips toward the ribs of the CubeSat model. In Fig. 17(b), the CubeSat model is grasped, which means the contact forces between the surface of the fingertips and the CubeSat model are strong enough to keep the weight of the CubeSat model without falling. It was proven in the way shown in Fig. 18. The gripper with the grasped CubeSat model has been taken with the human's hand and turned in such a way the gripper is over the CubeSat model with fingertips looking at the ground, so the gravity force would make the CubeSat model slide down from the fingertips if the gravity force is more than the holding force. It did not happen; therefore, the holding force of the gripper is more than the gravity force acting on the CubeSat model. In Fig. 17(c), the released gripper is shown.

Fig. 18
Manual checking of the grasping force
Fig. 18
Manual checking of the grasping force
Close modal

The central link of the gripper is rotated 113.9 deg at the beginning of the test as the default configuration for the open position. For grasping and holding, it rotates to 59.2 deg. The commands of grasping and releasing are given by a user using dynamixel wizard 2.0 software.

The acquired data from the grasping test are shown in Figs. 19 and 20 in terms of angular velocities and linear accelerations, respectively. IMU1 is the sensor installed on the central link of the gripper, and IMU2 is the sensor on the fingertip. In Fig. 19, angular velocities in the upper plot are shown for IMU1, corresponding to the results of the angular velocities and linear accelerations of IMU2, which are the second plots in Figs. 19 and 20, and also corresponding to the acquired results from the force sensors represented in the bottom plots for Figs. 19 and 20. The angular velocities data from IMU sensors are represented as three components along the x, y, and z axes, which are named as g1x, g1y, g1z, g2x, g2y, and g2z for IMU1 and IMU2, respectively. Angular velocities g1 and g2 are represented as the vector sum in Eq. (19), and the value of the angular velocity is calculated as in Eq. (20):

(19)
(20)
Fig. 19
Acquired data of angular velocities during grasping
Fig. 19
Acquired data of angular velocities during grasping
Close modal
Fig. 20
Acquired data of linear accelerations of gripper points from the IMU
Fig. 20
Acquired data of linear accelerations of gripper points from the IMU
Close modal

The force sensors were calibrated in the lab by using standard weights, and the raw data from the sensors with values 0–1023 were converted to Newtons in the form of Eq. (21):

(21)
where k1 = −1000, k2 = −1023, and k3 = −0.97 are the coefficients found empirically during the calibration.

Figure 19 shows the behavior of the system during a grasping operation with data on angular velocities from both IMU sensors corresponding to data from the force sensors.

For IMU1 installed on the center of the gripper, the maximal angular velocities come around the z axis, and the summary angular velocity g1 is almost the same as g1z. This is because the sensor is installed on the central link of the gripper, which rotates along the z axis for conducting the grasping operation. Instead, angular velocities of IMU2 installed on the fingertip do not show “clear rotation” along one of the axes but oscillations.

For all the components of g2, the sign of the value changes from positive to negative and back. The maximal value of angular velocities of 22.07 deg/s is around the y axis and has a negative sign.

This experiment shows the dynamics of grasping between first contact and final grasp, highlighting how the proposed model leads to a successful and stable grasp. Successful operation is further demonstrated by Fig. 20, which shows the accelerations of the gripper during the grasp, such as frame point O on IMU1 (on the upper plot), fingertip point C on IMU2 (on the middle plot), corresponding to the force data from two force sensors, as f1 and f2, which is on the bottom plot.

The acquired data for the linear accelerations of two points on IMU sensors in Fig. 20 are represented in the time interval from 0 to 10 s. With the Arduino library for the BMI160 sensor, data are acquired by default in the unit of gravitational acceleration g, which is equal to 9.81 m/s2. To avoid extra calculations during the test and increase the frequency of data acquisition, accelerations are converted in m/s2 after the test in matlab [40] by multiplying acceleration data by 9.81.

The absolute value of acceleration is calculated as shown in Eq. (22):
(22)

Figure 20 shows the values of linear velocities in “stable” parts of the test. The results a1x, a1y, and a1z are the components of acceleration of point O on the first IMU sensor, which is shown in Table 5. a2x, a2y, and a2z are the components of the acceleration for point C on the second IMU sensor, respectively; a1 and a2 are the vector sum of the corresponding components during its idle time. Results for a2 are nearer to zero; they are expected as the oscillations of the gripper after grasping.

Table 5

Acceleration data from two IMU sensors

aO (IMU1) (m/s2)aC (IMU2) (m/s2)
Time (s)a1xa1ya1za1a2xa2ya2za2
0.1591.56969.02520.1962−0.6472−6.76890.3924−6.9651−0.0897
2.0826.8676.5727−0.3924−0.2963−6.8670.5886−6.867−0.0808
7.4256.96516.5727−0.2943−0.2288−6.76890.6867−6.867−0.1433
9.5593.04118.8290.0981−0.4714−7.06320.4905−6.96510.1219
aO (IMU1) (m/s2)aC (IMU2) (m/s2)
Time (s)a1xa1ya1za1a2xa2ya2za2
0.1591.56969.02520.1962−0.6472−6.76890.3924−6.9651−0.0897
2.0826.8676.5727−0.3924−0.2963−6.8670.5886−6.867−0.0808
7.4256.96516.5727−0.2943−0.2288−6.76890.6867−6.867−0.1433
9.5593.04118.8290.0981−0.4714−7.06320.4905−6.96510.1219

More information about the end-effector's structural design and drive torque calculations are published in Refs. [35,36]. The procedure of the gripper parametrization was proposed and discussed in Ref. [36] for the specified CubeSat types of microsatellites. Also, the optimization of the end-effector structure according to the grasp model presented in this paper is under development, and the full methodology will be published in future works.

8 Conclusions

A geometry-based grasping analysis of cube-shaped microsatellites called CubeSat was presented. A general grasping operation was discussed as a planar task for square bodies. Although corner grasp resulted better in terms of forces that can be applied to the body of CubeSat, side grasp has also been considered. The latter requires less accuracy for grasping. Maximal linear and angular deviations for the side grasp depend on the size of the CubeSat, which is defined as more than the size of a grasping fingertip. Instead, these deviations for corner grasp depend on the size of the grasping fingertip. Therefore, more linear and angular accuracy is required. In terms of grasping operational time, it takes more time for the CubeSat to go out of the grasping zone for side fingertips than for corner ones. That means, side fingertips can operate with lower velocities, which can also reduce the impact and the potential damage to the CubeSat due to it. Future works will be dedicated to expanding the proposed grasping analysis to rectangle profiles. The results will be also used in improvements to the gripper design.

Conflict of Interest

There are no conflicts of interest.

Data Availability Statement

The authors attest that all data for this study are included in the paper.

Nomenclature

a =

side of the square body in the planar task

h =

length of the side fingertip

V =

linear velocity value of the square body related to the grasping zone

V = 

linear velocity vector of the square body related to the grasping zone

hgc =

width of the grasping zone for the corner fingertip

hgs =

width of the grasping zone for the side fingertip

aBB =

width of the berthing box

aCS =

width of the CubeSat

bBB =

length of the berthing box

bCS =

length of the CubeSat

cBB =

height of the berthing box

cCS =

height of the CubeSat

dsq =

diagonal of the square body in the planar task

tgrasp =

time of grasping

Lgc =

length of the grasping zone for the corner fingertip, defined by the distance between the corners

Lgs =

length of the grasping zone for the side fingertip

Ogc =

center of the Cartesian coordinate system of the grasping zone for the corner fingertip

Ogs =

center of the Cartesian coordinate system of the grasping zone for the side fingertip

Osqs =

center of the Cartesian coordinate system for the square body being grasped by its side

Vcl= 

closure speed vector

h/2 =

length of the corner fingertip part that touches the side of the square body

Ogcxgcygc =

Cartesian coordinate system of the grasping zone for the corner fingertip

Ogsxgsygs =

Cartesian coordinate system of the grasping zone for the side fingertip

Osqsxsqsysqs =

Cartesian coordinate system for the square body being grasped by its side

α =

angular deviation measured between horizontal axis of the square body Osqsxsqs or Osqcxsqc and horizontal axis of the grasping zone Ogsxgs or Ogcxgc

αmax =

maximal angular deviation measured between horizontal axis of the square body Osqsxsqs or Osqcxsqc and horizontal axis of the grasping zone Ogsxgs or Ogcxgc

ω =

angular velocity of the square body related to the grasping zone

Δx =

linear deviation of the square body center related to the grasping zone center along horizontal axis x

Δy =

linear deviation of the square body center related to the grasping zone center along horizontal axis x

Δxmax =

maximal linear deviation of the square body center related to the grasping zone center along horizontal axis x

Δymax =

maximal linear deviation of the square body center related to the grasping zone center along horizontal axis x

References

1.
Krag
,
H.
,
2022
, “
ESA's Annual Space Environment Report
,” GEN-DB-LOG-00288-OPS-SD, ESA Space Debris Office, Darmstadt, Germany.
2.
Kessler
,
D. J.
, and
Cour-Palais
,
B. G.
,
1978
, “
Collision Frequency of Artificial Satellites: The Creation of a Debris Belt
,”
J. Geophys. Res. A: Space Phys.
,
83
(
A6
), pp.
2637
2646
.
3.
Kessler
,
D. J.
,
1991
, “
Collisional Cascading: The Limits of Population Growth in Low Earth Orbit
,”
Adv. Space Res.
,
11
(
12
), pp.
63
66
.
4.
Phipps
,
C. R.
,
Baker
,
K. L.
,
Libby
,
S. B.
,
Liedahl
,
D. A.
,
Olivier
,
S. S.
,
Pleasance
,
L. D.
,
Rubenchik
,
A.
, et al
,
2012
, “
Removing Orbital Debris With Lasers
,”
Adv. Space Res.
,
49
(
9
), pp.
1283
1300
.
5.
Soulard
,
R.
,
Quinn
,
M. N.
,
Tajima
,
T.
, and
Mourou
,
G.
,
2014
, “
ICAN: A Novel Laser Architecture for Space Debris Removal
,”
Acta Astronaut.
,
105
(
1
), pp.
192
200
.
6.
Kawamoto
,
S.
,
Ohkawa
,
Y.
,
Kitamura
,
S.
, and
Nishida
,
S.
,
2009
, “
Strategy for Active Debris Removal Using Electrodynamic Tether
,”
Trans. Jpn. Soc. Aeronaut. Space Sci. Space Technol. Jpn.
,
7
(
ists26
), pp.
Pr_2_7
Pr_2_12
.
7.
Sharf
,
I.
,
Thomsen
,
B.
,
Botta
,
E. M.
, and
Misra
,
A. K.
,
2017
, “
Experiments and Simulation of a Net Closing Mechanism for Tether-Net Capture of Space Debris
,”
Acta Astronaut.
,
139
, pp.
332
343
.
8.
Pfisterer
,
M.
,
Schillo
,
K.
,
Valle
,
C.
,
Lin
,
K.-C.
, and
Ham
,
C.
, “
The Development of a Propellantless Space Debris Mitigation Drag Sail for LEO Satellites
,”
WMSCI – 15th World Multi-Conference on Systemics, Cybernetics and Informatics
,
Orlando, FL
,
June 19–22
, pp.
19
22
.
9.
Visagie
,
L.
,
Lappas
,
V.
, and
Erb
,
S.
,
2015
, “
Drag Sails for Space Debris Mitigation
,”
Acta Astronaut.
,
109
, pp.
65
75
.
10.
Bombardelli
,
C.
, and
Pelaez
,
J.
,
2011
, “
Ion Beam Shepherd for Contactless Space Debris Removal
,”
J. Guid. Control Dyn.
,
34
(
3
), pp.
916
920
.
11.
Di Mella
,
G.
,
Pergola
,
P.
,
Ruggiero
,
A.
, and
Andrenucci
,
M.
,
2012
, “
Foam-Based Method for Active Space Debris Removal: Foam Characterization, Modeling and Testing
,”
IAASS A Safer Space for Safer World
,
Versailles, France
,
Oct. 17–19
, Vol. 699, p.
5
.
12.
Ganguli
,
G.
,
Crabtree
,
C.
,
Rudakov
,
L.
, and
Chappie
,
S.
,
2012
, “
Active Debris Removal by Micron-Scale Dust Injection
,”
2012 IEEE Aerospace Conference
,
Big Sky, MT
,
Mar. 3–10
, pp.
1
9
.
13.
Chopra
,
C.
, and
Chandra
,
R.
,
2018
, “
Small Satellite Deorbital System Using Magnetic Field Controlled Plasma
,”
2018 SpaceOps Conference, American Institute of Aeronautics and Astronautics
,
Marseille, France
.
14.
Oda
,
M.
,
2000
, “
Summary of NASDA's ETS-VII Robot Satellite Mission
,”
J. Robot. Mechatron.
,
12
(
4
), pp.
417
424
.
15.
Yoshida
,
K.
,
Hashizume
,
K.
, and
Abiko
,
S.
,
2001
, “
Zero Reaction Maneuver: Flight Validation With ETS-VII Space Robot and Extension to Kinematically Redundant Arm
,”
Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation
,
Seoul, South Korea
,
May 21–26
, Vol. 1, pp.
441
446
..
16.
Rupp
,
T.
,
Boge
,
T.
,
Kiehling
,
R.
, and
Sellmaier
,
F.
,
2009
, “
Flight Dynamics Challenges Of The German On-Orbit Servicing Mission DEOS
,”
21st International Symposium on Space Flight Dynamics
,
Toulouse, France
,
Sept. 28–Oct. 2
.
17.
Sommer
,
B.
, “
Automation and Robotics in the German Space Program—Unmanned On-Orbit Servicing (OOS) & the TECSAS Mission
,”
55th International Astronautical Congress of the International Astronautical Federation, the International Academy of Astronautics, and the International Institute of Space Law
,
Vancouver, Canada
,
Oct. 4–8
.
18.
Kaiser
,
C.
,
Sjöberg
,
F.
,
Delcura
,
J. M.
, and
Eilertsen
,
B.
,
2008
, “
SMART-OLEV—An Orbital Life Extension Vehicle for Servicing Commercial Spacecrafts in GEO
,”
Acta Astronaut.
,
63
(
1–4
), pp.
400
410
.
19.
Kuwao
,
F.
,
Otsuka
,
A.
,
Hayashi
,
M.
,
Aiko
,
Y.
,
Wakabayashi
,
Y.
,
Sato
,
N.
, and
Doi
,
S.
,
2003
, “
Operation Concept of JEMRMS
,”
Proceeding of the 7th International Symposium on Artificial Intelligence, Robotics and Automation in Space: I-SAIRAS 2003
,
Nara, Japan
,
May 19–23
.
20.
Boumans
,
R.
, and
Heemskerk
,
C.
,
1998
, “
The European Robotic Arm for the International Space Station
,”
Robot. Auton. Syst.
,
23
(
1–2
), pp.
17
27
.
21.
Xu
,
W.
,
Zhang
,
J.
,
Qian
,
H.
,
Chen
,
Y.
, and
Xu
,
Y.
,
2013
, “
Identifying the Singularity Conditions of Canadarm2 Based on Elementary Jacobian Transformation
,”
IEEE International Conference on Intelligent Robots and Systems
,
Tokyo, Japan
,
Nov. 3–7
, pp.
795
800
.
22.
Coleshill
,
E.
,
Oshinowo
,
L.
,
Rembala
,
R.
,
Bina
,
B.
,
Rey
,
D.
, and
Sindelar
,
S.
,
2009
, “
Dextre: Improving Maintenance Operations on the International Space Station
,”
Acta Astronaut.
,
64
(
9–10
), pp.
869
874
.
23.
Laryssa
,
P.
,
Lindsay
,
E.
,
Layi
,
O.
,
Marius
,
O.
,
Nara
,
K.
,
Aris
,
L.
, and
Ed
,
T.
,
2002
, “
International Space Station Robotics: A Comparative Study of ERA, JEMRMS and MSS
,”
7th ESA Workshop Adv. Space Technol. Robot. Autom. ASTRA 2002
,
Noordwijk, The Netherlands
,
Nov. 19–21
, pp.
1
8
.
24.
Johnstone
,
A.
,
2022
, “
CubeSat Design Specification (1U-12U)
,” CP-CDS-R14.1. Cal Poly SLO, San Luis Obispo, CA.
25.
Griesbach
,
J. D.
,
Westphal
,
J.
,
Hawes
,
D.
, and
Carrico
,
J.
,
2013
, “
Force Modeling and State Propagation for Navigation and Maneuver Planning for CubeSat Rendezvous, Proximity Operations, and Docking
,”
Adv. Astronaut. Sci.
,
150
, pp.
573
590
.
26.
Underwood
,
C.
,
Pellegrino
,
S.
,
Lappas
,
V. J.
,
Bridges
,
C. P.
, and
Baker
,
J.
,
2015
, “
Using CubeSat/Micro-Satellite Technology to Demonstrate the Autonomous Assembly of a Reconfigurable Space Telescope (AAReST)
,”
Acta Astronaut.
,
114
, pp.
112
122
.
27.
Kunito
,
S.
,
2018
, “
CubeSat Docking and Resource Sharing Mechanism
,” Master’s thesis,
Florida Institute of Technology
.
28.
Branz
,
F.
,
Olivieri
,
L.
,
Sansone
,
F.
, and
Francesconi
,
A.
,
2020
, “
Miniature Docking Mechanism for CubeSats
,”
Acta Astronaut.
,
176
, pp.
510
519
.
29.
Bonivento
,
C.
,
Melchiorri
,
C.
,
Vassura
,
G.
,
Ferretti
,
G.
,
Maffezzoni
,
C.
,
Magnani
,
G.
,
Beccari
,
G.
,
Caselli
,
S.
, and
Zanichelli
,
F.
,
1999
, “
A Dexterious Gripper for Space Robotics
,”
5th International Symposium on Artificial Intelligence, Robotics and Automation in Space
,
Montreal, Canada
,
May 23
, Vol. 440, pp.
637
643
.
30.
Gerstenmaier
,
W. H.
,
Krikalev
,
S.
,
Parker
,
D.
,
Leclerc
,
G.
, and
Shirama
,
R.
,
2016
, “IDSS International Docking System Standard (IDSS) Interface Definition Document (IDD) Revision E, Revision E.”
31.
Man
,
W.
,
Li
,
X.
,
Zhang
,
Z.
,
An
,
J.
,
Zhang
,
G.
, and
Yu
,
D.
,
2021
, “
Research on Space Target On-Orbit Capturing Methods
,”
International Conference on Mechanical Design
,
Singapore
,
June 17–20
, pp.
321
343
.
32.
Ceccarelli
,
M.
,
2004
, “Fundamentals of the Mechanics of Grasp,”
Fundamentals of Mechanics of Robotic Manipulation
,
M.
Ceccarelli
, ed.,
Springer
,
Dordrecht, Netherlands
, pp.
241
304
.
33.
Monkman
,
G. J.
,
Hesse
,
S.
,
Steinmann
,
R.
, and
Schunk
,
H.
,
2007
,
Robot Grippers
,
Wiley-VCH Verlag GmbH & Co. KGaA
,
Weinheim
.
34.
Titov
,
A.
, and
Ceccarelli
,
M.
,
2023
, “Requirements and Problems for Space Berthing System,”
Proceedings of Syrom 2022 & Robotics 2022
,
I.
Doroftei
,
M.
Nitulescu
,
D.
Pisla
, and
E.-C.
Lovasz
, eds.,
Springer International Publishing
,
Cham
, pp.
127
135
.
35.
Titov
,
A.
, and
Ceccarelli
,
M.
,
2023
, “Design and Performance of a Berthing Space Manipulator,”
Design Advances in Aerospace Robotics
,
Springer Nature
,
Dordrecht
.
36.
Titov
,
A.
, and
Ceccarelli
,
M.
,
2023
, “Design and Performance Characterization of a Gripper End-Effector for a Space Berthing Manipulator,”
New Advances in Mechanisms, Transmissions and Applications
,
M. A.
Laribi
,
C. A.
Nelson
,
M.
Ceccarelli
, and
S.
Zeghloul
, eds.,
Springer Nature
,
Dordrecht
, pp.
15
22
.
37.
Fehse
,
W.
,
2003
,
Automated Rendezvous and Docking of Spacecraft
,
Cambridge University Press
,
New York
.
38.
Zhu
,
F.
,
2023
, “A Guide to CubeSat Mission and Bus Design,” Guide CubeSat Mission Bus Des, https://pressbooks-dev.oer.hawaii.edu/epet302/, Accessed July 4, 2023.
39.
Hao
,
J.
,
2023
, “DFRobot_BMI160 Library,” DFRobot_BMI160, https://github.com/DFRobot/DFRobot_BMI160, Accessed December 12, 2023.
40.
The MathWorks, Inc.
,
2023
, “MATLAB Documentation,” https://www.mathworks.com/help/matlab/index.html, Accessed October 12, 2023.