Configuration of a Nanometric Positioning Robot
Veritas & Research, Vol. 3 N° 1 2021
Configuration of a Nanometric Positioning Robot
Jaime Fernando CárdenasGarcía^{1}^{,} ^{a }
Recibido: 20/03/2021 Aceptado: 15/05/2021 Publicado: 01/07/2021
Citar como: CárdenasGarcía, J. (2021). Configuration of a Nanometric Positioning Robot. Veritas & Research, 3(1), 6072. 
Abstract
The use of a circularwedge link pair as a manipulator joint allows for versatility and flexibility in positioning. In particular, its use allows for repeatable, precise, and versatile alignment of mechanical components and has the potential for the configuration and development of adaptable serpentine robots. This paper explores the feasibility of using macrometric circularwedge links to attain nanometric capable positioners. The forward and inverse kinematics of these positioners configured with two macroscopic circularwedge links is described. The results show that the workspace defined by these rotationally constrained positioners is essentially planar in nature. The achievable planar range of motion is three orders of magnitude greater than the nanometric motion in the outofplane direction. This novel positioner has the potential to satisfy the need for nanometric capable positioning and motion where accuracy, repeatability and versatility are required.
Keywords: Circularwedge; serpentine robots; nanometric capable positioner
Configuración de un Posicionador Robótico Nanométrico
Resumen
El uso de un par de cuñascirculares como una articulación de un manipulador permite lograr versatilidad y flexibilidad en posicionamiento. En particular, su uso permite lograr la alineación de componentes mecánicos con repetitividad, precisión y versatilidad, teniendo el potencial para la configuración y desarrollo de robots serpentinos adaptables. Este articulo explora la factibilidad de usar cuñas circulares macrométricas articuladas para obtener posicionadores capaces de movimientos nanométricos. Se describe la cinemática directa e inversa de estos posicionadores con dos cuñas circulares. Los resultados demuestran que el espacio de trabajo definidos por estos posicionadores constreñidos rotacionalmente es esencialmente plano. El movimiento realizable en el plano es tres órdenes de magnitud mayor, que el movimiento nanométrico en la dirección fuera del plano. Este novedoso posicionador tiene el potencial de satisfacer las necesidades para posicionamiento nanométrico y movimiento en donde se requiere precisión, repetitividad y versatilidad.
Palabras clave: Cuñacircular; robots serpentinos; posicionador nanométrico
Configuração de um robô de posicionamento nanométrico
Resumo
O uso de um par de cunhas circulares como uma junta de uma alça permite versatilidade e flexibilidade no posicionamento. Em particular, seu uso permite alcançar oalinhamentodos mechanicos com repetitividade, precisão e versatilidade, tendo o potencial para a configuração e desenvolvimento de robôs serpentinos adaptativos. Este artigo explora a viabilidade do uso de cunhas circulares macrométricas articuladaspara obter posicionadores capazes de movimentos nanométricos. Descreve acinemática direta e inver sadesses posicionadores com duas cunhas circulares. Os resultados mostram que o espaço de trabalho definido por esses posicionadores com restrição rotativa é essencialmente plano. O movimento executável no avião é trêsprovações de magnitude maior, do que o movimento nanométrico narecção difora do plano. Este posicionador inovador tem o potencial de atender às necessidades de posicionamento e movimento nanométricos onde precisão, repetibilidade e versatilidade são necessárias.
Palabras clave: Cunha circular; robôs serpentinas; posicionamento nanométrico
Introduction and Objectives
The use of circularwedge links in a remotely controllable actuator system (Harwood 1973) is known. Also, previous work by the author shows that the use of a duplicate pair of dissimilar wedged discs to achieve alignment of surfaces is an approach that satisfies the need for repeatable, accurate, precise, versatile and inexpensive alignment of mechanical components (CardenasGarcia, Suryanarayan, and Ingalls 1999). A natural extension is to use a large number of circularwedge links to structure a highly versatile and flexible serpentine robot (CardenasGarcia and Preidikman 2005). Numerous applications for serpentine robots exist in spacebased maintenance; inspections of enclosed areas which are difficult to examine requiring enhanced flexibility and reachability, especially in convoluted environments; search and rescue operations; exploring rough terrain; swimming in contaminated water; and manipulation in places too dangerous for humans. These serpentine structures are robust to mechanical failure if designed to be modular and highly redundant (Hirose 1993; McKerrow 1991).
The main objective of this paper is to explore the feasibility of using macroscale circularwedge links to achieve nanometric positioning.
Theoretical Background
This section outlines the forward kinematics of the positioner by means of homogenous transformations (Bejczy 1975; Denavit and Hartenberg 1955; Gutkowski and Kinzel 1995) and the inverse kinematics of a twolink positioner by an algebraic approach (Kucuk and Bingul 2006).
The Basic Assembly Element: The Forward Kinematics of the
CircularWedge Link
Figure 1 shows a single circularwedge link and the associated coordinate systems. Three different coordinate systems are identified in order to transfer the local description of vector P_{L} in coordinate system (x_{2}, y_{2}, z_{2}) to the global coordinate system (x, y, z) described by vector P_{G}. In equation form,
(1)
Figure 1. The Coordinate Systems Associated with a Single Circularwedge Link 
What this requires is that several homogeneous transformations be performed on the local vector P_{L} to arrive at the global vector P_{G}, i.e., the forward kinematics for a single circularwedge link is given by,
(2)
where represents the homogeneous transformation for rotation about the yaxis, which is used to rotate Link 1 about said axis; the homogeneous transformation for translation along the y_{}y_{1}axis, which is used to account for the thickness of Link 1 at its center; and is the homogeneous transformation for rotation about the z_{1}z_{2}axis, which is used to account for the wedge angle inclination of Link 1. These homogeneous transformations take the form for Link 1 of the [4 x 4] matrices defined as follows:
(3a)
(3b)
(3c)
Note that the sine and cosine of the alluded angles are represented in abbreviated notation as , and , respectively. Additionally, the translational distance h_{1} is the vertical distance that separates the O(x, y, z) from the O_{1}(x_{1}, y_{1}, z_{1})O_{2}(x_{2}, y_{2}, z_{2}) set of axes. If the radius of the circumference that defines the bottom surface of Link 1 is R, then the distance h_{1} takes the form
(4)
where is the thickness of the circularwedge link at its narrowest, and is the circularwedge link angle. Additionally, for the geometry shown in Figure 1, P_{L}_{ }= {P_{x} P_{y} P_{z} 1}^{T} with respect to the local O_{2}(x_{2}, y_{2}, z_{2})axis.
2(a) Increments of 0.5degrees 
2(b) Increments of 1.0degrees 
Figure 2. Trajectory of a Point P_{L} = {0 1E3 0 1} m for a Single Circularwedge Link System 
Figures 2(a) and 2(b) show the 5bit or 32point circular trajectory, for a full rotation of a circularwedge link (), of the tip of P_{L} with local coordinates (0, 1E3, 0) m in the Global O(x, y, z) coordinate system, for the single circularwedge link with dimensions R = 10E3 m and (h_{0})_{1} = 1E3 m shown in Figure 1.
Figure 2(a) shows the variation of the trajectory for five wedge angle increments of , starting at a value of 0.5 deg. Figure 2(b) shows the variation of the trajectory for five wedge angle increments of , starting at a value of 1.0 deg. An overlapping square symbol shows the position at which the motion of the trajectory begins, in each case. In effect, Figures 2(a) and 2(b) show the comparison of the motion that is achievable by 12 different circularwedge links reflecting different wedge angles. Since the limits of the x, y and zaxes of both Figures are the same, there are common trajectories at values of .
Each circular trajectory depicted in Figures 2(a) and 2(b) is represented by 5bit or 32discrete points to simulate the use of a stepper motor to repeatedly access the locations shown in the graph, for each of the represented circularwedge links. Using stepper motors allows for precise positioning and repeatability of movement since good stepper motors have an accuracy of 3 to 5% of a step and this error is noncumulative from one step to the next^{2}. The tip of P_{L} for describes a circular trajectory with a radius of about 1.7452E5 m at a height of 2.1744E3 m. The separation between points is 3.2740E06 m, which shows the potential for achieving nanometric positioning, i.e., an 8bit or 256step per revolution stepper motor achieves a separation between points of 4.2805E7 m.
Figure 3. The Coordinate Systems Associated with Two Circularwedge Links

Figure 3 show the configuration associated with a system of two circularwedge links, which may or may not be duplicates. The full description of the {4 x 1} global vector P_{G} which defines the forward kinematics of the system using two circularwedge links is given by,
(5)
The homogeneous transformations associated with Link 2 take the form
(6a)
(6b)
. (6c)
It is possible to show that by changing the pertinent variables, e.g., setting (h_{0})_{1} = 0 m; , or alternatively (h_{0})_{2} = 0 m; , you eliminate either the bottom (Link 1) or top (Link 2) circularwedge link, respectively, to reproduce a single wedge system, and corroborate the calculations performed and shown in Figures 2(a) and 2(b).
Assuming a duplicate circularwedge link with the same characteristics as the first, it is possible to examine different trajectories that the tip of P_{L} defined in local coordinates as P_{L} = {0 L 0 1}^{T} = {0 1E3 0 1}^{T} m describes. Figures 4(a)4(d) represent the trajectories that the tip of P_{L} follows depending on the motion of the circularwedge links, using diagrams whose axes are represented in different scales. Similarly, an overlapping square symbol shows the position at which the motion of the trajectory begins, in each case.
Figure 4(a) shows the resulting trajectory for the 5bit or 32step stepping motion of only Link 1 (Bottom), with Link 2 (Top) held motionless. The result is a circular trajectory of the tip of P_{L}. Figure 4(b) shows the resulting trajectory for the 5bit or 32step stepping motion of only Link 2 (Top), with Link 1 (Bottom) held motionless. As expected, the circular trajectory of the tip of P_{L} lies on a plane at an angle (equivalent to the circularwedge angle ) to the xzplane.
Figure 4(c) shows the resulting trajectory for the 5bit or 32step stepping motion of Link 2 (Top), with the 2bit or 4step stepping motion of Link 1 (Bottom). The motion of Link 1 (Bottom) allows the creation of the four (2bit) distinct circles whose shape is defined by the motion of Link 2 (Top) and corresponds to the 5bit or 32step stepping motion of said Link 2 (Top). Figure 4(d) shows a similar result as that of Figure 4(c), except that Link 1 (Bottom) undergoes a 3bit or 8step stepping motion.
What is common to Figures 4(b)4(d) is that Link 1 (Bottom) undergoes a different number of steps, i.e., 0bit, 2bit and 3bit, respectively. The vertical motion per revolution of 6.0917E7 m along the yaxis remains the same for all of these figures, while the reach in the xzplane changes as the number of steps of Link 1 (Bottom) changes. Figure 5 is a plot of the sinusoidal variation of the inplane displacements and the outofplane displacements shown in Figure 4(b). The inplane displacements, in the x (green line) and z (red line) directions, are plotted using the vertical reference axis on the right of the plot. The outofplane displacements, in the y direction, are plotted using the vertical reference axis on the left of the plot. The reference point for these displacements is the square blue marker symbol (shown at the lowest of the red dot marker symbols) in Figure 4(b) that define the path of the tip trajectories of P_{L} in the global xyz frame of reference. The path of xdisplacements, in Figure 5, has been shiftedup by an amount equal to the minimum value of xdisplacements added to the average value of xdisplacements. This is done so as to have the variation in xdisplacements be centered at zero. The x and z displacements are 90degrees out of phase, while the y and z displacements are in phase.
4(a) Link 1 = 2^{5}; Link 2 = 2^{0}

4(c) Link 1 = 2^{2}; Link 2 = 2^{5}

4(b) Link 1 = 2^{0}; Link 2 = 2^{5} 
4(d) Link 1 = 2^{3}; Link 2 = 2^{5} 
Figure 4. Double Circularwedge Link System Trajectory of a Point P_{L} = {0 1E3 0 1} m = = 1deg 
Figure 5. Double Circularwedge Link System Outofplane and Inplane Displacements = = 1deg

Figures 6(a)6(d) are results that are parallel to those of Figures 4(a)(d). They show the superposition of additional results when = assumes values of 1, 2 and 3deg. The paths of the tip trajectories of P_{L} increasing in size with increasing circularwedge angle. The significance of these graphs is to show that nanometric positioning along the yaxis is feasible, especially if the number of steps per revolution can be increased by an order of magnitude. This would require increasing the number of steps from 5bits to 8 or more bits. The number of additional steps not only creates additional points in 3Dspace but increases the resolution of these reachable points. In order to have control overreaching specified points in space, the inverse kinematics of this twocircularwedge link system needs to be assessed, e.g., along a straight line, by the precise positioning of the stepping algorithm. The next section addresses the inverse kinematics of this twocircularwedge link system.
6(a) = 1, 2 and 3degrees Link 1 = 2^{5}; Link 2 = 2^{0} 
6(c) Link 1 = 2^{2}; Link 2 = 2^{5} 
6(b) Link 1 = 2^{0}; Link 2 = 2^{5} 
6(d) Link 1 = 2^{3}; Link 2 = 2^{5}

Figure 6. Double Circularwedge Link System Trajectory of a Point P_{L} = {0 1E3 0 1} m = = 1deg; 2deg; 3deg 
Equation 5 defines the forward kinematics problem for the double circularwedge link system, i.e., given the position of a point on the positioner in a local frame of reference, it is possible to determine the position of that point at any and all possible positions determined by the elements of the double circularwedge link system in a global frame of reference. The inverse problem requires that for any identified point on the positioner in the global frame of reference, we be able to identify the precise orientations of the circularwedges to arrive at said point.
Rewriting Equation 5, for ease of algebraic calculation, as follows
. (7)
We find that
(8)
Which multiplied by P_{L} = {0 L 0 1}^{T}, yields
(9)
or,
(10)
An equation similar to Equation 8 may also be written for Link 1 as follows,
(11)
to obtain the final equation for P_{G}
(12)
which results in,
(13)
where the following terms define the geometry of the double circularwedge link system and are taken as constants,
(14a)
(14b)
(14c)
(14d)
(14e)
(14f)
(14g)
The solution to the system of Equation 13 may be obtained: since the components of P_{G} are known, subtracting the value of each component yields a nonlinear function whose roots may be found using a numerical solver. Appendix A shows a solution for from the equation for using the fzero solver in Matlab®. This solution results in the value for , which then allows using either the nonlinear equation for or for to obtain a solution for . Substitution of these values in the forward kinematics equations allows reproduction of P_{G}.
Equation (7) may easily be extended to add a third circularwedge link to obtain,
(15)
7(a) Link 1 = 2^{5}; Link 2 = 2^{0}; Link 3 = 2^{0} 
7(b) Link 1 = 2^{0}; Link 2 = 2^{0}; Link 3 = 2^{5} 
7(c) Link 1 = 2^{0}; Link 2 = 2^{2}; Link 3 = 2^{5} 
7(d) Link 1 = 2^{2}; Link 2 = 2^{2}; Link 3 = 2^{5} 
Figure 7. Triple Circularwedge Link System Trajectory of a Point P_{L} = {0 1E3 0 1} m = = 1deg 
The Matlab® implementation of this equation leads to the results shown in Figure 7(a)(d) for three circularwedge links. The bottom, middle and top circularwedge link are identified as Link 1 through Link 3, respectively. Figures 7(a) and 7(b) parallel the earlier results of Figure 4(a) and 4(b), respectively. Figure 7(a) shows the result of keeping the three circularwedge links fixed relative to one another, while allowing for a 5bit or 32step stepping motion of the bottom circularwedge link or Link 1.
Figure 7(b) is the result of keeping the bottom two circularwedge links (Links 1 and 2) fixed relative to one another, while allowing for a 5bit or 32step stepping motion of the top circularwedge link or Link 3.
Figure 7(c) keeps Link 1 static while allowing a 2bit or 4step stepping motion of Link 2 and allowing a 5bit or 32step stepping motion of the top circularwedge link or Link 3.
Last, Figure 7(d) shows the path of the tip trajectories of P_{L} for a 2bit or 8step stepping motion of Links 1 and 2, and the 5bit or 32step stepping motion of Link 3.
The further extension of Equation (15) to incorporation of a fourth circularwedge link results in,
(16)
The results are shown in Figures 8(a)(d), where correspondingly the various circularwedge links starting at the bottom are again numbered consecutively from 1 to 4. There is no particular reason as to the choice of number of steps to achieve the paths of the tip trajectories of P_{L} portrayed in Figures 8(a)(d), except to point out that an increasing number of steps per circularwedge link are used. For ease of reference we use the notation [0 2 2 5] to refer to the bits of stepping motion portrayed in Figure 8(a). Similarly, the notation for Figures 8(b)8(d) are [2 2 2 5], [3 2 2 5] and [4 2 2 5], respectively. The density of the points rapidly increases to allow a very high density of workspace coverage and redundancy.
8(a) Link 1 = 2^{0}; Link 2 = 2^{2}; Link 3 = 2^{2}; Link 4 = 2^{5} 
8(c) Link 1 = 2^{3}; Link 2 = 2^{2}; Link 3 = 2^{2}; Link 4 = 2^{5} 
8(b) Link 1 = 2^{2}; Link 2 = 2^{2}; Link 3 = 2^{2}; Link 4 = 2^{5} 
8(d) Link 1 = 2^{4}; Link 2 = 2^{2}; Link 3 = 2^{2}; Link 4 = 2^{5} 
Figure 8. Quadruple Circularwedge Link System Trajectory of a Point P_{L} = {0 1E3 0 1} m = = 1deg 
The main emphasis above has been to demonstrate the solution of the forward and inverse kinematics of the double circularwedge link system to get a preliminary assessment of the potential for nanometric positioning. This section examines in greater detail whether or not that potential may be realized for the double circularwedge link system.
The Double CircularWedge Link System
Table 1 summarizes the parameters associated with a double circularwedge link system that have an impact on the size and characteristics of the system workspace, except for the Radius of the circularwedge. The Radius of the circular wedge does not play a role in defining the workspace because the motion of the circularwedges is rotatory. This implies that the range of component sizes that the system design may incorporate for use as circularwedges can be macroscopic, but depending on the application, microscopic circularwedges may also be used. The potential for use of macroscopic components allows for the utilization of relatively large motors, gearing and other mechanical components in proof of concept designs.
This section details achieving nanometriccapable motions with a double circularwedge link system. Table 1 shows the parameters that are used in the calculations below. It is worth noting that the dimensions of a typical 1.0E2 m radius circularwedge with a dimension of its smallest circularwedge height h_{0} = 1.0E3 m yields an opposite side dimension of 1.3491E3 m, which is reasonable from an additive manufacturing perspective.
Table 1. Parameters that define a double circularwedge link system 
The preliminary calculations portrayed in Figure 4(b) for , show that the tip of P_{L} describes a circular trajectory with a radius of about 1.7452E5 m in a plane at an inclination of 1deg from the xzplane. The separation between points is 3.4213E6 m, showing the potential for achieving nanometric positioning. For example, an 8bit or 256step per revolution stepper motor achieves a separation between points of 4.2834E7 m, or 428.34 nm.
The calculations for the results portrayed in Figure 4(d) for a [3 8] (Link 1 = 2^{3}; Link 2 = 2^{8}) double circularwedge link system is summarized in Table 2. Table 2 shows the range of motion that may be achieved, in the x, z and y directions, for circularwedge link angle and ; with link
angle ratio that varies three orders of magnitude from 0.1 to 10, for each of these circularwedge link angles. The calculations highlighted in yellow for , i.e., for a link angle ratio of 1, show that the range of motion in the x and zdirections is 1.1080E4 m, while the range in the ydirection is 6.0612E6 m, which is approximately three orders of magnitude less. Thus, the motion of the tip of P_{L} describes a relatively flat workspace in which the xzplane
motion is approximately 3orders of magnitude greater that the outofplane motion. The outofplane motion shown in Figure 4(d) is shown exaggerated due to the choice of units that are different from the x and zaxes. The same general observations hold for link angle ratios of 0.1 and 10.
Table 2. Calculations for a double circularwedge link system Link 1 = 2^{3}; Link 2 = 2^{5} 
Table 3. Calculations for a double circularwedge link system considering 8bit stepping capability Link 1 = 23; Link 2 = 25 
Table 3 includes the same highlighted data as Table 2 but normalized to the number of steps achievable with an 8bit stepper motor. Singling out the highlighted potion of Table 3, the per step resolution is 4.3280E7 m in the xzplane and 2.3796E9 m in the outofplane or ydirection. Similar general observations hold for link angle ratios of 0.1 and 10. If this double circularwedge link system is used as a means to push and retrieve an object only in the ydirection, the capability of nanometric resolution is easily achievable, with great precision in per step resolution.
Figure 9(a)(d) shows the results for a double circularwedge link system with and , or a link angle ratio of 4. This arrangement is for a workspace density of 2^{5} x 2^{6} or 2,048 steps in the xzplane utilizing a 5bit and 6bit stepper motor driving, the bottom and top circularwedge links, respectively. The maximum ydisplacement from the lowest to highest point is 2.4290E6 m. Figure 9(a) shows the result of only allowing the bottom link or Link 1 to move through 2^{5}/4 = 8 of its possible steps; while the top link or Link 2 is allowed only 2^{6}/2 = 32 of it steps, allowing Link 2 to describe only a semicircular path. The end result is the superposition of 8 semicircles that are offset from each other. Figure 9(b) shows the result of superposing 16 semicircles. Finally, Figures 9(c) and 9(d) show the result of the superposition of 32 semicircles in 2D and 3D, respectively. The versatility of this type of robotic arrangement is apparent from these graphs. Potentially, for an 8bit stepper motor driving each of the links it would be possible to populate the workspace with 65,536 points.
9(a) Link 1 = 2^{5}/4; Link 2 = 2^{6}/2 
9(b) Link 1 = 2^{5}/2; Link 2 = 2^{6}/2 
9(c) Link 1 = 2^{5}; Link 2 = 2^{6}/2 
9(d) Link 1 = 2^{5}; Link 2 = 2^{6}/2 
Figure 9. Double Circularwedge Link System Trajectory of a Point P_{L} = {0 1E3 0 1} m = 1deg; 4deg 
Summary and Conclusions
The use of several circular wedges to configure a robotic manipulator is a nonobvious arrangement of elements that allows for versatility and flexibility in positioning. Additionally, it has the potential, when using stepper motors, for repeatable, accurate and precise motion. Also, depending on the parameters that define the basic structure of the modular circularwedges, the motion that is obtainable ranges from the macrometric to the nanometric scale. The main objective of this paper has been to explore the feasibility of using macroscale circularwedge links to achieve nanometric positioning.
The forward and inverse problems of using a double circularwedge link system has been explored, as well as a preliminary look at systems that involve three and four circularwedge links. What is apparent from the various implemented simulations is that the workspace that is defined is in general
planar. The achievable planar motion is several orders of magnitude greater than the outofplane motion. The details of actual implementation of a system is left for future work.
References
Bejczy, A. (1975). Distribution of Control Decisions in Remote Manipulation. 1975 IEEE Conference on Decision and Control including the 14th Symposium on Adaptive Processes, 14, 8191. doi:10.1109/CDC.1975.270654
CardenasGarcia, J. F., & Preidikman, S. (2005). On Systems Of Circular Wedges For Serpentine Robots Applications. Paper presented at the Conferencia de Mecánica Computacional, Buenos Aires, Argentina.
CárdenasGarcía, J. F., Suryanarayan, K. P., & Ingalls, W. E. (1999). Mechanical Alignment Using Duplicate Circular Wedges. Journal of Mechanical Design, 121(2), 305309. https://doi.org/10.1115/1.2829458
Denavit, J., & Hartenberg, R. S. (1955). A Kinematic Notation for LowerPair Mechanisms Based on Matrices. ASME Journal of Applied Mechanics, 22(2), 215221.
Gutkowski, L. J., & Kinzel, G. L. (1995). Kinematic Transformation Matrices for 3D Surface Contact Joints. Journal of Mechanical Design, 117(2A), 278285. https://doi.org10.1115/1.2826135
Harwood, O. P. (1973). Huntington Beach, CA Patent No. 3,712,481.
Hirose, S. (1993). Biologically Inspired Robots  Snakelike Locomotors and Manipulators. New York, NY: Oxford University Press.
Kucuk, S., & Bingul, Z. (2006). Robot Kinematics: Forward and Inverse Kinematics. In S. Cubero (Ed.), Industrial Robotics: Theory, Modelling and Control (pp. 117148): Pro Literatur Verlag, Germany / ARS, Austria.
McKerrow, P. J. (1991). Introduction to Robotics. Reading, MA: AddisonWesley Publishing Co., Inc.
Appendix A
Matlab® Code to find the roots of a nonlinear function
% Read in needed data
%
[n,k,L,thetaZ1,thetaZ2,p2,height1,height2] = data;
% Calculation of angles in radians
%
thetaZ1 = thetaZ1*pi/180; thetaZ2 = thetaZ2*pi/180;
% Calculation of needed constants
%
A = L*cos(thetaZ1)*sin(thetaZ2);
B = L*sin(thetaZ1)*cos(thetaZ2);
C = height2*sin(thetaZ1); D = L*sin(thetaZ2);
E = L*sin(thetaZ1)*sin(thetaZ2);
F = cos(thetaZ1)*(L*cos(thetaZ2) + height2) + height1;
G = sin(thetaZ1)*(L*cos(thetaZ2) + height2);
% Calculation of randomly generated step for the TOP disk
%
j = fix(rand(1)*k); % TOP DISK
thetay2 = 180 + offsety2  (j1)*(360/(k1));
% Calculation of randomly generated step for the TOP disk
%
i = fix(rand(1)*n); % BOTTOM DISK
thetay1 = 180 + offsety1  (i1)*(360/(n1));
% Calculation of the Global Position of the point of interest
%
x1 =  cos(thetay1*pi/180)*cos(thetay2*pi/180)*A  … cos(thetay1*pi/180)*(B + C) ...
+ sin(thetay1*pi/180)*sin(thetay2*pi/180)*D;
y1 =  cos(thetay2*pi/180)*E + F;
z1 = sin(thetay1*pi/180)*cos(thetay2*pi/180)*A + … sin(thetay1*pi/180)*G …
+ cos(thetay1*pi/180)*sin(thetay2*pi/180)*D;
%
% Use of fzero  to obtain the Root of the nonlinear function % for the ycomponent P_{G}
%
f = @(x) [y1 + cos(x)*E  F];
yy = fzero(f,2); yyy = yy*180/pi;
% Comparison of assumed and calculated values
[thetay2 yyy]
1^{} Contact: jfcg@umbc.edu ^{ }
2^{} http://www.omega.com/prodinfo/stepper_motors.html; Accessed: March 19, 2021.
Veritas & Research, Vol. 3, N° 1, 2021,
6072
ISSN 26973375