A New Algorithm for Unique Representation and Isomorphism Detection of Planar Kinematic Chains with Simple and Multiple Joints
Abstract
:1. Introduction
2. Basic Definitions
3. Proposed Algorithm Steps
- Select the master joint in the given loop.
- Compare joint degrees of the 1st neighbor joints on both sides of the master joint and select the least value.
- ULA starts from the master joint and continues in the direction of the selected neighbor joint. In Figure 3a, the shown loop has a single master joint of JD = 1. The least 1st neighbor joint has JD = 3. Therefore, the given loop has ULA = [1 3 5 3 2 3 2 4].
- If the 1st neighbor joint degrees are similar, then compare between the 2nd neighbor joints. Therefore, the ULA will be continued in direction of the least 2nd neighbor joint degree starting from the master joint. In Figure 3b, the given loop has ULA = [1 3 2 3 2 3 4 3].
- If the 2nd neighbor joint degree is similar, then compare between the 3rd neighbor joints and so on. Then, “ULA” will be continued in direction of the least 3rd neighbor joint degree starting from the master joint. In Figure 3c, the given loop has ULA = [1 3 2 3 2 4 2 3].
- Check each master joint for its 1st-neighbor joint degrees.
- If there is one master joint that has the least 1st-neighbor joint degree, then the ULA for this loop will be continued in direction of that least 1st-neighbor joint degree starting from its associated master joint. In Figure 4, the given loop has a master joint of JD = 2 (indicated by yellow in Figure 4), and its 1st-neighbor joint has JD = 3, which is the least value of joint degrees among all 1st-neighbor joints for all master joints. Hence, ULA = [2 3 4 4 2 5].
- If the least 1st-neighbor joint degrees are equal in all master joints, check each master joint for its 2nd-neighbor joint degree and select the least 2nd-neighbor joint degree. Hence, the ULA will be continued in the direction of the least 2nd-neighbor joint degree starting from its associated master joint, indicated by yellow in Figure 5, therefore, the given loop has ULA = [2 3 3 4 2 3 4 5].
- If the least 2nd-neighbor joint degrees are equal in all master joints, check each master joint for its 3rd-neighbor joint degree and select the least 3rd-neighbor joint degree. Hence, the ULA will be continued in direction of the least 3rd-neighbor joint degree starting from its associated master joint, indicated by yellow in Figure 6, therefore, the given loop has ULA = [2 3 2 4 3 4 2 5].
- If there exist multiple consequent master joints, check the 1st-neighbor joint degree of the first and last master joints. If they are equal, check the 2nd-neighbor joint degree for the first and the last master joints. Therefore, the ULA will be continued in the direction of the least neighbor joint degree starting from the outmost master joint. As shown in Figure 7a, the given loop has ULA = [2 2 2 4 3 4 2 5].
- If all joints in a certain loop are master joints, then the ULA will start from any joint degree and continue in a clockwise direction. As shown in Figure 7b, the given loop has ULA = [2 2 2 2 2 2 2 2].
Algorithm 1. Code structure for determining the unified loop array, ULA, for single master joints. |
L = [J2, J4, J7, J1, J5,…….] // initial loop array M = min (J2, J4, J7, J1, J5,……….) Mid array = [b4, b3, b2, b1, M, a1, a2, a3, a4] case: a1 < b1, ULA = [M,a1,a2,a3,……b1] case: b1 < a1; ULA = [M,b1,b2,b3,……,a1] case: a1 = b1, case: a2 < b2; ULA = [M,a1,a2,……,b1] case: b2 < a2; ULA = [M,b1,b2,……,a1] case a2 = b2; case: a3 < b3; ULA = [M,a1,a2,………,b1] case: b3 < a3; ULA = [M,b1,b2,………, a1] case: a3 = b3; case: a4 < b4; ULA = [M,a1,a2,………,b1] case: b4 < a4; ULA = [M,b1,b2,………, a1] case: a4 = b4; ULA = [M,a1,a2,………,b1] or ULA = [M,b1,b2,………, a1] |
Algorithm 2. Code structure for determining the unified loop array, ULA, for multiple master joints. |
L = [J2, J4, J7, J1, J5,…….] // initial loop array Mo = min (J2, J4, J7, J1, J5,……….) Mo = X, Y, Z X: Xmin = min (Xa1, Xb1) Y: Ymin = min (Ya1, Yb1) Z: Zmin = min (Za1, Zb1) M = min (Xmin, Ymin, Zmin) |
case: M = Xmin, Xmin = Xb1; ULA = [X, Xb1, Xb2,……Xa1] case: M = Ymin; Ymin = Ya1; ULA = [Y, Ya1, Ya2,……, Yb1] case: M = Zmin; Zmin = Zb1; ULA = [Z, Zb1, Zb2,……, Za1] case: M = Xmin = Xb1 & M = Ymin = Ya1; case: Xb2 < Ya2; ULA = [X, Xb1,Xb2,…… Xa1] case: Ya2 < Xb2; ULA = [Y, Ya1, Ya2,……Yb1] case: Xb2 = Ya2; case: Xb3 < Ya3; ULA = [X, Xb1,Xb2,……,Xa1] case: Ya3 < Xb3; ULA = [Y, Ya1, Ya2,……,Yb1] case: Xb3 = Ya3; ULA = [X, Xb1,Xb2,……,Xa1] or, ULA = [Y, Ya1, Ya2,……,Yb1] |
4. Algorithm Validation Tests
4.1. Example One: 11-Link KCs of Two DOF with Simple Joints
4.2. Example Two: Eight-Link KCs of One DOF with Two Multiple Joints
4.3. Example Three: 15-Link KCs of Four DOF with Simple Joints
5. Results
- ◾
- 18 eight links of one DOF KCs with two multiple joints
- ◾
- 22 eight links of one DOF KCs with one multiple joint
- ◾
- five seven links of two DOF KCs with one and two multiple joints
- ◾
- 40 nine links of two DOF KCs with simple joints
- ◾
- four seven links of two DOF KCs with simple joints
- ◾
- 83 nine links of two DOF KCs with one multiple joint
- ◾
- 16 eight links of one DOF KCs with simple joints
- ◾
- 219 ten links of one DOF KCs (without edge crossing) with simple joints
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Acknowledgments
Conflicts of Interest
Appendix A
References
- Mruthyunjaya, T. A computerized methodology for structural synthesis of kinematic chains: Part 1—Formulation. Mech. Mach. Theory 1984, 19, 487–495. [Google Scholar] [CrossRef]
- Mruthyunjaya, T. A computerized methodology for structural synthesis of kinematic chains: Part 2—Application to several fully or partially known cases. Mech. Mach. Theory 1984, 19, 497–505. [Google Scholar] [CrossRef]
- Mruthyunjaya, T.; Balasubramanian, H. In quest of a reliable and efficient computational test for detection of isomorphism in kinematic chains. Mech. Mach. Theory 1987, 22, 131–139. [Google Scholar] [CrossRef]
- Jin-Kui, C.; Wei-Qing, C. Identification of isomorphism among kinematic chains and inversions using link′s adjacent-chain-table. Mech. Mach. Theory 1994, 29, 53–58. [Google Scholar] [CrossRef]
- Shende, S.; Rao, A. Isomorphism in kinematic chains. Mech. Mach. Theory 1994, 29, 1065–1070. [Google Scholar] [CrossRef]
- Yadav, J.; Pratap, C.; Agrawal, V. Computer aided detection of isomorphism among binary chains using the link-link multiplicity distance concept. Mech. Mach. Theory 1996, 31, 873–877. [Google Scholar] [CrossRef]
- Rao, A. Application of fuzzy logic for the study of isomorphism, inversions, symmetry, parallelism and mobility in kinematic chains. Mech. Mach. Theory 2000, 35, 1103–1116. [Google Scholar] [CrossRef]
- Rao, A.C.; Pathapati, V.V.N.R.P.R. Loop Based Detection of Isomorphism Among Chains, Inversions and Type of Freedom in Multi Degree of Freedom Chain. J. Mech. Des. 1999, 122, 31–42. [Google Scholar] [CrossRef]
- Chang, Z.; Zhang, C.; Yang, Y.; Wang, Y. A new method to mechanism kinematic chain isomorphism identification. Mech. Mach. Theory 2002, 37, 411–417. [Google Scholar] [CrossRef]
- And, P.R.H.; Zhang, W.J.; And, Q.L.; Wu, F.X.; He, P.R.; Li, Q. A New Method for Detection of Graph Isomorphism Based on the Quadratic Form. J. Mech. Des. 2003, 125, 640–642. [Google Scholar] [CrossRef]
- Cubillo, J.; Wan, J. Comments on mechanism kinematic chain isomorphism identification using adjacent matrices. Mech. Mach. Theory 2005, 40, 131–139. [Google Scholar] [CrossRef]
- Butcher, E.A.; Hartman, C. Efficient enumeration and hierarchical classification of planar simple-jointed kinematic chains: Application to 12- and 14-bar single degree-of-freedom chains. Mech. Mach. Theory 2005, 40, 1030–1050. [Google Scholar] [CrossRef]
- Pucheta, M.; Cardona, A. An automated method for type synthesis of planar linkages based on a constrained subgraph isomorphism detection. Multibody Syst. Dyn. 2007, 18, 233–258. [Google Scholar] [CrossRef]
- Ding, H.; Huang, Z. The Establishment of the Canonical Perimeter Topological Graph of Kinematic Chains and Isomorphism Identification. J. Mech. Des. 2006, 129, 915–923. [Google Scholar] [CrossRef]
- Ding, H.; Huang, Z. A new theory for the topological structure analysis of kinematic chains and its applications. Mech. Mach. Theory 2007, 42, 1264–1279. [Google Scholar] [CrossRef]
- Ding, H.; Huang, Z. Isomorphism identification of graphs: Especially for the graphs of kinematic chains. Mech. Mach. Theory 2009, 44, 122–139. [Google Scholar] [CrossRef]
- Hasan, A.; Khan, R.A. Isomorphism and Inversions Of Kinematic Chains Up To Ten Links Using Degrees Of Freedom Of Kinematic Pairs. Int. J. Comput. Methods 2008, 5, 329–339. [Google Scholar] [CrossRef]
- Dargar, A.; Khan, R.A.; Hasan, A. Application of link adjacency values to detect isomorphism among kinematic chains. Int. J. Mech. Mater. Des. 2010, 6, 157–162. [Google Scholar] [CrossRef]
- Dargar, A.; Hasan, A.; Khan, R. Some new codes for isomorphism identification among kinematic chains and their inversions. Int. J. Mech. Robot. Syst. 2013, 1, 49. [Google Scholar] [CrossRef]
- Galán-Marín, G.; López-Rodríguez, D.; Mérida-Casermeiro, E. A New Multivalued Neural Network for Isomorphism Identification of Kinematic Chains. J. Comput. Inf. Sci. Eng. 2010, 10, 011009. [Google Scholar] [CrossRef]
- Deng, Z.; Yang, F.; Tao, J. Adding sub-chain method for structural synthesis of planar closed kinematic chains. Chin. J. Mech. Eng. 2012, 25, 206–213. [Google Scholar] [CrossRef]
- Ding, H.; Cao, W.; Kecskeméthy, A.; Huang, Z. Complete Atlas Database of 2-DOF Kinematic Chains and Creative Design of Mechanisms. J. Mech. Des. 2012, 134, 031006. [Google Scholar] [CrossRef]
- Ding, H.; Hou, F.; Kecskeméthy, A.; Huang, Z. Synthesis of the whole family of planar 1-DOF kinematic chains and creation of their atlas database. Mech. Mach. Theory 2012, 47, 1–15. [Google Scholar] [CrossRef]
- Ding, H.; Yang, W.; Huang, P.; Kecskeméthy, A. Automatic Structural Synthesis of Planar Multiple Joint Kinematic Chains. J. Mech. Des. 2013, 135, 091007. [Google Scholar] [CrossRef]
- Ding, H.; Zhao, J.; Huang, Z. Unified structural synthesis of planar simple and multiple joint kinematic chains. Mech. Mach. Theory 2010, 45, 555–568. [Google Scholar] [CrossRef]
- Yang, F.; Deng, Z.; Tao, J.; Li, L. A new method for isomorphism identification in topological graphs using incident matrices. Mech. Mach. Theory 2012, 49, 298–307. [Google Scholar] [CrossRef]
- Rizvi, S.; Hasan, D.A.; Khan, R.A. A New Method Based on the Comparison of the Unique Chain Code to Detect Isomorphism among Kinematic Chains. J. Eng. Res. 2014, 1, 16–21. [Google Scholar]
- ShaneHaiderRizvi, S.; Hasan, A.; Khan, R.A. A New Concept to Detect Isomorphism in Kinematic Chains using Fuzzy Similarity Index. Int. J. Comput. Appl. 2014, 86, 30–33. [Google Scholar] [CrossRef] [Green Version]
- Rizvi, S.S.H.; Hasan, A.; Khan, R. An efficient algorithm for distinct inversions and isomorphism detection in kinematic chains. Perspect. Sci. 2016, 8, 251–253. [Google Scholar] [CrossRef] [Green Version]
- Zeng, K.; Fan, X.; Dong, M.; Yang, P. A fast algorithm for kinematic chain isomorphism identification based on dividing and matching vertices. Mech. Mach. Theory 2014, 72, 25–38. [Google Scholar] [CrossRef]
- Yang, P.; Zeng, K.; Li, C.; Yang, J.; Wang, S. An improved hybrid immune algorithm for mechanism kinematic chain isomorphism identification in intelligent design. Soft Comput. 2014, 19, 217–223. [Google Scholar] [CrossRef]
- Liu, H.; Shi, S.; Yang, P.; Yang, J. An Improved Genetic Algorithm Approach on Mechanism Kinematic Structure Enumeration with Intelligent Manufacturing. J. Intell. Robot. Syst. 2018, 89, 343–350. [Google Scholar] [CrossRef]
- Pozhbelko, V. A unified structure theory of multibody open-, closed-, and mixed-loop mechanical systems with simple and multiple joint kinematic chains. Mech. Mach. Theory 2016, 100, 1–16. [Google Scholar] [CrossRef]
- Ding, H.; Huang, P.; Yang, W.; Kecskeméthy, A. Automatic generation of the complete set of planar kinematic chains with up to six independent loops and up to 19 links. Mech. Mach. Theory 2016, 96, 75–93. [Google Scholar] [CrossRef]
- Ding, H.; Yang, W.; Zi, B.; Kecskeméthy, A. The family of planar kinematic chains with two multiple joints. Mech. Mach. Theory 2016, 99, 103–116. [Google Scholar] [CrossRef]
- Kamesh, V.V.; Rao, K.M.; Rao, A.B.S. An Innovative Approach to Detect Isomorphism in Planar and Geared Kinematic Chains Using Graph Theory. J. Mech. Des. 2017, 139, 122301. [Google Scholar] [CrossRef]
- Eleashy, H. A new atlas for 8-bar kinematic chains with up to 3 prismatic pairs using Joint Sorting Code. Mech. Mach. Theory 2018, 124, 118–132. [Google Scholar] [CrossRef]
- Yang, W.; Ding, H.; Kecskeméthy, A. Automatic synthesis of plane kinematic chains with prismatic pairs and up to 14 links. Mech. Mach. Theory 2019, 132, 236–247. [Google Scholar] [CrossRef]
- Rai, R.K.; Punjabi, S. Kinematic chains isomorphism identification using link connectivity number and entropy neglecting tolerance and clearance. Mech. Mach. Theory 2018, 123, 40–65. [Google Scholar] [CrossRef]
- Rai, R.K.; Punjabi, S. A new algorithm of links labelling for the isomorphism detection of various kinematic chains using binary code. Mech. Mach. Theory 2019, 131, 1–32. [Google Scholar] [CrossRef]
- Deng, T.; Xu, H.; Tang, P.; Liu, P.; Yan, L. A novel algorithm for the isomorphism detection of various kinematic chains using topological index. Mech. Mach. Theory 2020, 146, 103740. [Google Scholar] [CrossRef]
- Li, T.-J.; Cao, W.-Q.; Chu, J.-K. The Topological Representation and Detection of Isomorphism among Geared Linkage Kinematic Chains. In Proceedings of the Volume 1A: 25th Biennial Mechanisms Conference, Atlanta, GA, USA, 13–16 September 1998. [Google Scholar]
- Chu, J.; Cao, W.; Yang, T. Type Synthesis of Baranov Truss with Multiple Joints and Multiple-Joint Links. In Proceedings of the Volume 1A: 25th Biennial Mechanisms Conference, Atlanta, GA, USA, 13–16 September 1998. [Google Scholar]
- Chu, J.; Zou, Y.; He, P. The structural synthesis of planar 10-link, 3-DOF simple and multiple joint kinematic chains. Int. J. Biomechatron. Biomed. Robot. 2013, 2, 150. [Google Scholar] [CrossRef]
- Yang, W.; Ding, H.; Kecskeméthy, A. A new method for the automatic sketching of planar kinematic chains. Mech. Mach. Theory 2018, 121, 755–768. [Google Scholar] [CrossRef]
- Ding, H.; Hou, F.; Kecskeméthy, A.; Huang, Z. Synthesis of a complete set of contracted graphs for planar non-fractionated simple-jointed kinematic chains with all possible DOFs. Mech. Mach. Theory 2011, 46, 1588–1600. [Google Scholar] [CrossRef]
- Rizk, R.; Awad, M. Mechanism, Machine, Robotics and Mechatronics Sciences; Springer International Publisher: New York, NY, USA, 2019. [Google Scholar]
- Tsai, L.-W. Mechanism Design: Enumeration of Kinematic Structures According to Function. J. Mech. Des. 2000, 122, 583. [Google Scholar] [CrossRef]
- Pratap, R. Getting Started with MATLAB; updated for Version 7.8; Oxford University Press: Oxford, UK, 2009. [Google Scholar]
Simple Joints | Multiple Joints (3-Links) | Multiple Joints (4-Links) | ||||||
---|---|---|---|---|---|---|---|---|
Connected Links | Joint Symbol | Joint Degree (JD) | Connected Links | Joint Symbol | Joint Degree (JD) | Connected Links | Joint Symbol | Joint Degree (JD) |
binary–binary | bb | 1 | binary–binary–binary | bbb | 11 | binary–binary–binary–binary | bbbb | 20 |
binary–ternary | bt | 2 | binary–binary–ternary | bbt | 12 | binary–binary–binary–ternary | bbbt | 21 |
binary–quaternary | bq | 3 | binary–ternary–ternary | btt | 13 | binary–binary–binary–quaternary | bbbq | 22 |
ternary–ternary | tt | 4 | ternary–ternary–ternary | ttt | 14 | binary–binary–ternary–ternary | bbtt | 23 |
ternary–quaternary | tq | 5 | binary–binary–quaternary | bbq | 15 | binary–binary–ternary–quaternary | bbtq | 24 |
quaternary–quaternary | 6 | binary–ternary–quaternary | btq | 16 | binary–binary–quaternary–quaternary | bbqq | 25 | |
binary–pentagonal | bp | 7 | binary–quaternary–quaternary | bqq | 17 | binary–ternary–ternary–ternary | bttt | 26 |
ternary–pentagonal | Tp | 8 | ternary–quaternary–quaternary | tqq | 18 | binary–ternary–ternary–quaternary | bttq | 27 |
quaternary–pentagonal | qp | 9 | quaternary–quaternary–quaternary | qqq | 19 | ternary–ternary–ternary–ternary | tttt | 28 |
pentagonal–pentagonal | pp | 10 | ternary–ternary–ternary–quaternary | tttq | 29 |
Kinematic Chain (a) | Kinematic Chain (b) | |||
---|---|---|---|---|
Total links | 11 | LAA = [11 1 4 6 ] | 11 | LAA = [11 1 4 6 ] |
Quaternary links | 1 | 1 | ||
Ternary links | 4 | 4 | ||
Binary links | 6 | 6 | ||
Total Joints | 14 | JAA = [14 14 0] | 14 | JAA = [14 14 0] |
Simple joints | 14 | 14 | ||
Multiple joints | 0 | 0 | ||
DOF | 2 | 2 |
Kinematic Chain (a) | Kinematic Chain (b) | ||||
---|---|---|---|---|---|
Joint | Joint Symbol | Joint Degree | Joint | Joint Symbol | Joint Degree |
a | bt | 2 | a | bq | 3 |
b | bt | 2 | b | tq | 5 |
c | tq | 5 | c | bt | 2 |
d | tq | 5 | d | bt | 2 |
e | bt | 2 | e | bt | 2 |
f | bt | 2 | f | bt | 2 |
g | bt | 2 | g | bt | 2 |
h | bt | 2 | h | bq | 3 |
i | bt | 2 | i | tq | 5 |
j | bq | 3 | j | bt | 2 |
k | tq | 5 | k | bt | 2 |
l | bt | 2 | l | bt | 2 |
m | bt | 2 | m | bt | 2 |
n | bb | 1 | n | bt | 2 |
Kinematic Chain (a) | Kinematic Chain (b) | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Loop | No. of Joints | Loop | No. of Joints | ||||||||||||||||||||||
loop 1 | 5 | joints | m | n | a | b | l | loop 1 | 4 | joints | e | c | d | f | |||||||||||
Symbol | bt | bb | bt | bt | bt | Symbol | bt | bt | bt | bt | |||||||||||||||
Joint Degree | 2 | 1 | 2 | 2 | 2 | Joint Degree | 2 | 2 | 2 | 2 | |||||||||||||||
Unified Loop Array | 1 | 2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
loop 2 | 4 | joints | b | l | k | c | loop 2 | 5 | joints | f | d | bt | h | g | |||||||||||
Symbol | bt | bt | tq | tq | Symbol | bt | bt | tq | bq | bt | |||||||||||||||
Joint Degree | 2 | 2 | 5 | 5 | Joint Degree | 2 | 2 | 5 | 3 | 2 | |||||||||||||||
Unified Loop Array | 2 | 2 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 2 | 2 | 2 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | ||||
loop 3 | 5 | joints | d | f | h | i | j | loop 3 | 5 | joints | i | j | m | n | a | ||||||||||
Symbol | tq | bt | bt | bt | bq | Symbol | tq | bt | bt | bt | bq | ||||||||||||||
Joint Degree | 5 | 2 | 2 | 2 | 3 | Joint Degree | 5 | 2 | 2 | 2 | 3 | ||||||||||||||
Unified Loop Array | 2 | 2 | 2 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 2 | 2 | 2 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | ||||
loop 4 | 4 | joints | e | g | h | f | loop 4 | 4 | joints | l | m | j | k | ||||||||||||
Symbol | bt | bt | bt | bt | Symbol | bt | bt | bt | bt | ||||||||||||||||
Joint Degree | 2 | 2 | 2 | 2 | Joint Degree | 2 | 2 | 2 | 2 | ||||||||||||||||
Unified Loop Array | 2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
loop 5 | 10 | joints | a | c | d | e | g | i | j | k | m | n | loop 5 | 10 | joints | h | i | k | l | n | a | b | c | e | g |
Symbol | bt | tq | tq | bt | bt | bt | bq | tq | bt | bb | Symbol | bq | tq | bt | bt | bt | bq | tq | bt | bt | bt | ||||
Joint Degree | 2 | 5 | 5 | 2 | 2 | 2 | 3 | 5 | 2 | 1 | Joint Degree | 3 | 5 | 2 | 2 | 2 | 3 | 5 | 2 | 2 | 2 | ||||
Unified Loop Array | 1 | 2 | 5 | 3 | 2 | 2 | 2 | 5 | 5 | 2 | Unified Loop Array | 2 | 2 | 2 | 3 | 5 | 2 | 2 | 2 | 3 | 5 |
Kinematic Chain (a) | Kinematic Chain (b) | |||
---|---|---|---|---|
Total links | 8 | LAA = [8 0 2 6 ] | 8 | LAA = [8 0 2 6 ] |
Quaternary links | 0 | 0 | ||
Ternary links | 2 | 2 | ||
Binary links | 6 | 6 | ||
Total Joints | 8 | JAA = [8 6 2] | 8 | JAA = [8 6 2] |
Simple joints | 6 | 6 | ||
Multiple joints | 2 | 2 | ||
DOF | 1 | 1 |
Kinematic chain (a) | Kinematic chain (b) | ||||
---|---|---|---|---|---|
Joint | Joint Symbol | Joint Degree | Joint | Joint Symbol | Joint Degree |
a | bbb | 11 | a | bt | 2 |
b | bt | 2 | b | tt | 4 |
c | bt | 2 | c | bt | 2 |
d | bt | 2 | d | bbb | 11 |
e | bt | 2 | e | bb | 1 |
f | bb | 1 | f | bbt | 12 |
g | bbt | 12 | g | bt | 2 |
h | bt | 2 | h | bb | 1 |
Kinematic Chain (a) | Kinematic Chain (b) | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Loop | No. of Joints | Loop | No. of Joints | |||||||||||||
loop 1 | 4 | joints | a | b | h | g | loop 1 | 4 | joints | e | a | f | d | |||
Symbol | bbb | bt | bt | bbt | Symbol | bb | bt | bbt | bbb | |||||||
Joint Degree | 11 | 2 | 2 | 12 | Joint Degree | 1 | 2 | 12 | 11 | |||||||
Unified Loop Array | 2 | 2 | 11 | 12 | 0 | 0 | Unified Loop Array | 1 | 2 | 12 | 11 | 0 | ||||
loop 2 | 4 | joints | a | g | e | f | loop 2 | 5 | joints | d | c | g | h | f | ||
Symbol | bbb | bbt | bt | bb | Symbol | bbb | bt | bt | bb | bbt | ||||||
Joint Degree | 11 | 12 | 2 | 1 | Joint Degree | 11 | 2 | 2 | 1 | 12 | ||||||
Unified Loop Array | 1 | 2 | 12 | 11 | 0 | 0 | Unified Loop Array | 1 | 2 | 2 | 11 | 12 | ||||
loop 3 | 4 | joints | g | d | c | h | loop 3 | 4 | joints | f | h | g | b | |||
Symbol | bbt | bt | bt | bt | Symbol | bbt | bb | bt | tt | |||||||
Joint Degree | 12 | 2 | 2 | 2 | 0 | 0 | Joint Degree | 12 | 1 | 2 | 4 | |||||
Unified Loop Array | 2 | 2 | 2 | 12 | 0 | 0 | Unified Loop Array | 1 | 2 | 4 | 12 | 0 | ||||
loop 4 | 6 | joints | a | b | c | d | e | f | loop 4 | 5 | joints | e | a | b | c | d |
Symbol | bbb | bt | bt | bt | bt | bb | Symbol | bb | bt | tt | bt | bbb | ||||
Joint Degree | 11 | 2 | 2 | 2 | 2 | 1 | Joint Degree | 1 | 2 | 4 | 2 | 11 | ||||
Unified Loop Array | 1 | 2 | 2 | 2 | 2 | 11 | Unified Loop Array | 1 | 2 | 4 | 2 | 11 |
Kinematic Chain (a) | Kinematic Chain (b) | |||
---|---|---|---|---|
Total links | 15 | LAA = [15 0 8 7 ] | 15 | LAA = [18 0 8 7 ] |
Quaternary links | 0 | 0 | ||
Ternary links | 8 | 8 | ||
Binary links | 7 | 7 | ||
Total Joints | 19 | JAA = [19 19 0] | 19 | JAA = [19 19 0] |
Simple joints | 19 | 19 | ||
Multible joints | 0 | 0 | ||
DOF | 4 | 4 |
Kinematic Chain (a) | Kinematic Chain (b) | ||||
---|---|---|---|---|---|
Joint | Joint Symbol | Joint Degree | Joint | Joint Symbol | Joint Degree |
a | bt | 2 | a | bt | 2 |
b | bb | 1 | b | bb | 1 |
c | bt | 2 | c | bt | 2 |
d | tt | 4 | d | tt | 4 |
e | tt | 4 | e | tt | 4 |
f | bt | 2 | f | bt | 2 |
g | bt | 2 | g | bt | 2 |
h | bt | 2 | h | bt | 2 |
i | bt | 2 | i | bt | 2 |
j | tt | 4 | j | bt | 2 |
k | tt | 4 | k | tt | 4 |
l | tt | 4 | l | bt | 2 |
m | bt | 2 | m | bt | 2 |
n | bt | 2 | n | tt | 4 |
o | bt | 2 | o | tt | 4 |
p | bt | 2 | p | bt | 2 |
q | tt | 4 | q | bt | 2 |
r | bt | 2 | r | tt | 4 |
s | bt | 2 | s | bt | 2 |
Kinematic Chain (a) | Kinematic Chain (b) | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Loop | No. of Joints | Loop | No. of Joints | ||||||||||||||||||||||
loop 1 | 5 | joints | a | bt | c | l | k | loop 1 | 5 | joints | a | b | c | n | o | ||||||||||
Symbol | bt | bb | bt | tt | tt | Symbol | bt | bb | bt | tt | tt | ||||||||||||||
Joint Degree | 2 | 1 | 2 | 4 | 4 | Joint Degree | 2 | 1 | 2 | 4 | 4 | ||||||||||||||
Unified Loop Array | 1 | 2 | 4 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 1 | 2 | 4 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | ||||
loop 2 | 4 | joints | m | n | j | k | loop 2 | 10 | joints | s | q | p | n | d | m | l | j | i | h | ||||||
Symbol | bt | bt | tt | tt | Symbol | bt | bt | bt | tt | tt | bt | bt | bt | bt | bt | ||||||||||
Joint Degree | 2 | 2 | 4 | 4 | Joint Degree | 2 | 2 | 2 | 4 | 4 | 2 | 2 | 2 | 2 | 2 | ||||||||||
Unified Loop Array | 2 | 2 | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 4 | 4 | ||||
loop 3 | 10 | joints | i | h | o | p | r | s | d | l | m | n | loop 3 | 4 | joints | r | o | p | q | ||||||
Symbol | bt | bt | bt | bt | bt | bt | tt | tt | bt | bt | Symbol | tt | tt | bt | bt | ||||||||||
Joint Degree | 2 | 2 | 2 | 2 | 2 | 2 | 4 | 4 | 2 | 2 | Joint Degree | 4 | 4 | 2 | 2 | ||||||||||
Unified Loop Array | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 4 | 4 | Unified Loop Array | 2 | 2 | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
loop 4 | 4 | joints | s | r | q | e | loop 4 | 5 | joints | g | i | j | k | f | |||||||||||
Symbol | bt | bt | tt | tt | Symbol | bt | bt | bt | tt | bt | |||||||||||||||
Joint Degree | 2 | 2 | 4 | 4 | Joint Degree | 2 | 2 | 2 | 4 | 2 | |||||||||||||||
Unified Loop Array | 2 | 2 | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 2 | 2 | 2 | 2 | 4 | 0 | 0 | 0 | 0 | 0 | ||||
loop 5 | 5 | joints | o | g | f | q | p | loop 5 | 4 | joints | l | m | e | k | |||||||||||
Symbol | bt | bt | bt | tt | bt | Symbol | bt | bt | tt | tt | |||||||||||||||
Joint Degree | 2 | 2 | 2 | 4 | 2 | Joint Degree | 2 | 2 | 4 | 4 | |||||||||||||||
Unified Loop Array | 2 | 2 | 2 | 2 | 4 | 0 | 0 | 0 | 0 | 0 | Unified Loop Array | 2 | 2 | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
loop 6 | 10 | joints | a | b | c | d | e | f | g | h | i | j | loop 6 | 10 | joints | d | e | f | g | h | s | r | a | b | c |
Symbol | bt | bb | bt | tt | tt | bt | bt | bt | bt | tt | Symbol | tt | tt | bt | bt | bt | bt | tt | bt | bb | bt | ||||
Joint Degree | 2 | 1 | 2 | 4 | 4 | 2 | 2 | 2 | 2 | 4 | Joint Degree | 4 | 4 | 2 | 2 | 2 | 2 | 4 | 2 | 1 | 2 | ||||
Unified Loop Array | 1 | 2 | 4 | 2 | 2 | 2 | 2 | 4 | 4 | 2 | Unified Loop Array | 1 | 2 | 4 | 2 | 2 | 2 | 2 | 4 | 4 | 2 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Helal, M.; Hu, J.W.; Eleashy, H. A New Algorithm for Unique Representation and Isomorphism Detection of Planar Kinematic Chains with Simple and Multiple Joints. Processes 2021, 9, 601. https://doi.org/10.3390/pr9040601
Helal M, Hu JW, Eleashy H. A New Algorithm for Unique Representation and Isomorphism Detection of Planar Kinematic Chains with Simple and Multiple Joints. Processes. 2021; 9(4):601. https://doi.org/10.3390/pr9040601
Chicago/Turabian StyleHelal, Mahmoud, Jong Wan Hu, and Hasan Eleashy. 2021. "A New Algorithm for Unique Representation and Isomorphism Detection of Planar Kinematic Chains with Simple and Multiple Joints" Processes 9, no. 4: 601. https://doi.org/10.3390/pr9040601