thầy tiến
thầy tiến
GRADUATION THESIS
STUDY ON DESIGNING BIOMIMETIC FISH ROBOT
BASED ON CONTINUOUS MEMBRANE MODEL
Email: huy.trinh7899@hcmut.edu.vn
Phone: 0858787899
ACKNOWLEDGEMENT ........................................................................................... x
i
A. Solution for supplying power .................................................................... 14
D. Water-proofing Design.............................................................................. 31
ii
A. General Requirements of the Electrical System ......................................... 34
iii
CHAPTER 6. ROS CONTROL SIMULATION ........................................................ 69
I. Accomplishments ........................................................................................... 88
iv
APPENDIX ............................................................................................................... 90
REFERENCE ............................................................................................................ 93
v
INDEX OF PICTURE
Figure 1. Classification of swimming modes of biomimetic underwater robots. ........... 1
Figure 7. The directional shifting ability to avoid obstacle of a typical Rajiform. ......... 7
Figure 21. Reconstructing fin membrane by diaphragm using ruled surface method. . 21
vi
Figure 24. Ansys Simulation Running........................................................................ 27
Figure 30. Waterproofing methods using rubber gaskets or rubber pads. ................... 32
Figure 32. Water-proofing the engine compartment and the main circuit. .................. 33
Figure 46. Conventional Control Setting Process of the Administrator System. ......... 57
vii
Figure 49. GPS Navigation Panel of Administrator System. ...................................... 59
Figure 53. SolidWorks FEA Simulation: Stress Analysis of Motor Connecting Rod. . 63
Figure 54. SolidWorks FEA Simulation: Stress Analysis of Membrane Clipper. ....... 64
Figure 55. SolidWorks FEA Simulation: Stress Analysis of Body Frame Segment. ... 64
Figure 56. SolidWorks FEA Simulation: Stress and Strain Analysis of Motor
Connecting Rod. ........................................................................................................ 65
Figure 58. SolidWorks FEA Simulation: Displacement and Strain Analysis of Body
Frame Segment. ......................................................................................................... 66
Figure 61. Principle Schematic for Single Fin Segment in Gazebo Ignition. .............. 69
Figure 63. Gazebo Ignition: Movement of First Joint from Single Fin Segment. ........ 70
Figure 64. Gazebo Ignition: Movement of Second Joint from Single Fin Segment. .... 71
viii
Figure 71. ROS Simulation Footage: Yaw Rotation. .................................................. 77
ix
ACKNOWLEDGEMENT
Four years of university have passed and finally the days of completing the graduation
thesis have arrived. Just a few days ago, I was surprised and proud to be an HCMUT
student. Now I am even stronger in my faith when I have met many valuable
relationships along the way. I learned a lot of life lessons about not only professionalism
but also personality, humanity, lifestyle and how to treat people. I would like to thank
all the teachers and friends who have taught me so much until today.
That journey only really started to enter a new chapter when studying and working at
the National Key Laboratory of Digital Control and Systems Engineering - DCSELab
in the 2nd year of university. Learned, received a lot from the lab brethren and took my
time to consolidate professional knowledge from Case studies, and this thesis is one of
them. Thank you DCSELab, you guys have given me a beautiful, meaningful and
valuable journey for my future career.
To be able to stay firmly on that journey, it is impossible not to mention the
companionship of my dear little family who has always encouraged and supported me
despite my stubborn and stubborn nature to help me firmly believe in my feet. the first
step into this life. I would like to thank my father, thank you mother, you thank my
sister, my lover and all my family who have always helped me so much during the
beginning of my life journey.
Finally, my friend, teacher, and father who have always been by my side on the path
of becoming a Mechatronics Engineer, have always imparted to me and countless
generations of valuable knowledge about not only technical expertise but also It is also
a way to treat people, a way to always contribute and be useful in this society. I do not
have anything valuable to return what you have given me, I just promise to stay firmly
on my professional path, always believe and listen to what you teach. I would like to
thank you for being the best teacher.
Finally, thank you and best wishes to all your loved ones. May success and happiness
come to all.
Best regards.
x
CHAPTER 1. OVERVIEW
CHAPTER 1. OVERVIEW
I. Introduction of Biomimetic Fish Robot and its application
Under the thousands of years of natural selection, the fishes in nature have been
endowed with great locomotion capabilities, such as high swimming speed and
remarkable maneuverability, prompting researchers to develop various types of fish-
inspired underwater robots. These biologically inspired underwater robots aim to
replicate the efficient and agile movements observed in aquatic life, providing
innovative solutions for underwater exploration, environmental monitoring, and marine
biology research [1].
Figure 1 classifies biomimetic underwater robots by their swimming modes into
three categories [2]: BCF (Body/Caudal Fin) propulsion, MPF (Median/Paired Fin)
propulsion, and JET propulsion. BCF propulsion includes oscillatory (thunniform) and
undulatory (anguilliform) modes, mimicking tuna and eel movements, respectively.
MPF propulsion consists of oscillatory (labriform) and undulatory (rajiform) modes,
inspired by the pectoral fin movements of fish like wrasses and rays. JET propulsion,
exemplified by octopus-inspired robots, utilizes jet-like movements for locomotion.
1
CHAPTER 1. OVERVIEW
by the graceful and efficient oscillation of their pectoral fins, allowing them to glide
effortlessly through the water with exceptional maneuverability and stability.
Rajiform-like robots are a specialized subclass of MPF biomimetic underwater
vehicles as depicted with an MPF-U category in Figure 1, designed to emulate the
swimming mechanics of rays and skates. These robots use flexible, fin-like structures to
achieve undulatory propulsion, enabling smooth and efficient movement in various
underwater environments. The innovative design of rajiform-like robots offers several
advantages, including enhanced maneuverability, reduced environmental disturbance,
and improved energy efficiency compared to traditional underwater vehicles.
Therefore, the development of rajiform-like robots is crucial for advancing
underwater technology. Their efficient, low-disruption locomotion allows for longer
missions and lower energy consumption, ideal for extended monitoring and sustainable
exploration. These robots can navigate complex terrains while minimizing harm to
marine life and habitats, providing a foundation for future innovations in marine
research and conservation.
2
CHAPTER 1. OVERVIEW
(Undulatory) (Oscillatory)
Intermediate D. american
Wave number over
0.75, below 1.5
Swimming direction
3
CHAPTER 1. OVERVIEW
The above figure delineates the different modes of pectoral fin locomotion in batoid
fishes based on their wave number, establishing a clear boundary between undulatory,
intermediate, and oscillatory motion. Gymnura micrura exemplifies oscillatory motion
with a wave number below 0.7, D. americana demonstrates intermediate motion with a
wave number between 0.7 and 1.3, and Taeniura lymma illustrates undulatory motion
with a wave number above 1.0. Defining these boundaries, as referenced from [3] is
crucial for designing and researching biomimetic underwater robots, as it enables the
precise emulation of specific locomotion styles. This precision enhances the robots'
efficiency, maneuverability, and adaptability in various underwater environments,
contributing to advancements in underwater exploration and technology.
4
CHAPTER 1. OVERVIEW
swimmers move by undulating the distal parts of their pectoral fins with multiple
waveforms present on the fin at a time.
2. Main body
1. Membranes
3. Tail
Undulatory motion
5
CHAPTER 1. OVERVIEW
Low frequency
High frequency
6
CHAPTER 1. OVERVIEW
momentum and make a left turn. At approximately 100 𝑠𝑒𝑐𝑜𝑛𝑑𝑠, another forward
protocol is used to dissipate the counterclockwise angular momentum and regain
directionality. Finally, a right turn protocol is employed at 150 𝑠𝑒𝑐𝑜𝑛𝑑𝑠 to make a right
turn, successfully winding around the last obstacle. The grid squares measure 0.5 𝑚𝑒𝑡𝑒𝑟
each.
0s
Obstacle
150s
50s
Obstacle
100s
Obstacle
7
CHAPTER 1. OVERVIEW
8
CHAPTER 1. OVERVIEW
required for swimming, making the robot more efficient in various aquatic
environments.
Universal Joint
9
CHAPTER 1. OVERVIEW
Fin Assembly
Silicone Fin
Clamp detail
Universal Joint
TMotor
Fin Fin Fin
assem.9 assem.8 ... assem.1 Motor
Fin Fin ... Fin Motor
assem.9 assem.8 assem.1
Wmembrane
10
CHAPTER 1. OVERVIEW
11
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
Motor ..
Membrane
Silicone Fin
Clamp detail Fin Fin Fin Fin
1 2 n-1 n
..
Fin Module
..
12
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
Using individual motors for each fin-ray involves a decentralized approach where each
fin-ray is actuated independently by its own motor.
Table 2.1. Advantages and disadvantages of different types of transmission
Transmission type Advantages Disadvantages
- Simple for control process. - The system parameters
1 motor for the - Due to the offset angles created must be fixed (amplitude,
entire membrane with each other mechanically, the wave number, etc.).
structure operates stably.
- Flexibly change parameters such - Bulky.
1 motor for each
as amplitude, phase shift, etc. - Complexity on controls.
fin-ray
- Has simpler mechanical structure
Conclusion
From the above analysis, the mechanism of 1 motor for 1 fin ray is selected to meet
the control requirements of different swimming forms.
Geared Transmission
Geared transmissions, or transmissions through gearboxes, excel in torque
multiplication and speed adjustment, allowing smaller motors to handle larger loads
with various gear ratios optimizing performance for different tasks. Despite their
advantages, geared systems are more complex, require regular maintenance due to gear
wear, and have lower efficiency due to friction losses.
Conclusion
From the compact design requirements, direct drive was chosen.
13
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
- Stepper motor: Stepper motor is a motor with many pole pairs and the ability to
control position (speed) very precisely. At the same time, step also has the ability to
control torque. However, stepper motor has relatively low power and has step slip
phenomenon.
- BLDC motor: Is a type of brushless motor so it has high power. However, BLDC
motor has a relatively high cost and is very complicated to control
Conclusion
From the above options, choose a DC Servo Motor with a gearbox for simplicity,
flexibility, and ease of search.
Conclusion
From the design requirements of a compact, lightweight and high performance
Robot, Lithium ion (Lithium polymer) batteries were chosen for use.
14
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
Control Station
Ground
Air-water Boundary
Water
Robot
On-air transmission
Under-water transmission
Figure 14. Direct communication scheme
Control Station
Ground
Air-water Boundary
Intermediate Station Water
Robot
On-air transmission
Under-water transmission
Figure 15. Communication scheme involving Intermediate Station
The main reason is the existence of an environmental divide between the water
environment and the air environment, along with the difference in these two
environments, causing direct communication between the control station and the fish
robot by radio waves to be absorbed, greatly reducing communication efficiency.
Therefore, there must be an intermediate device to convert the radio signal in the air into
an underwater sound wave signal. Therefore, the data transmission solution through the
intermediate module is proposed as shown in Figure 15, the task of this module is to
15
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
become an intermediate station to relay signals from the water environment to the air
environment and vice versa.
Conclusion
From the requirements of communication distance as well as the nature of the signal
transmission environment of AUVs, the data transmission method through the
Intermediate Station is chosen to ensure coherent communication between the control
station and the Robot.
10
1
1 10 100 1000
Communication Distance (m)
16
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
Conclusion
From the requirements of communication distance as well as the nature of the signal
transmission environment of AUVs, the method of communication using acoustic waves
in water environment is chosen to ensure the proposed signal transmission and reception
range.
17
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
Calibration procedure
Start main program Start subprocess
Synchronization procedure
Start subprocess
Trajectory No Manual
mode ON? mode ON?
Request message
Yes Yes to server
Trajectory Translational
controller motion Initialize timer with
specific timeout
Orientational No
motion Server No Is timeout
response? reached?
Yes Yes
No Termination
command? Re-assign all
variables in code
Yes
18
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
..
Silicone Fin
Clamp Detail
..
Fin Module ..
19
CHAPTER 2. PROPOSING SOLUTIONS FOR DESIGN
DC Servo Motors
Pressure Sensor
Main controller
Locale module
IMU Sensors
Controllers
Actuators
Sensors
Ground
Air-water Boundary
Intermediate Module Water
Robot
On-air transmission
Under-water transmission
Figure 20. Final proposal of communication scheme.
20
CHAPTER 3. MODELLING AND DESIGN
𝑅2 𝑧𝐼
(𝑐𝑟2 )
(𝑐2 ) (𝑟)
𝑅1 𝜃
z (𝑐𝑟1 ) 𝜃(𝑦)
(𝑐1 )
𝑂𝐼 𝑥𝐼
I
y
𝑂𝐼
x
Figure 21. Reconstructing fin membrane by diaphragm using ruled surface method.
The neutral surface is ruled by two non-intersecting curves 𝐶1 (𝑢) and 𝐶2 (𝑢) as
directrices, which are parameterized as below:
2𝜋𝑛 (2)
𝑥 = 𝑅1 cos (𝛼 sin ( 𝑢)) + 𝑥𝑃
𝐿
𝑐1 (𝑢): 2𝜋𝑛
𝑦 = 𝑅1 sin (𝛼 sin ( 𝑢))
𝐿
{𝑧 = 𝑢
2𝜋𝑛
𝑥 = 𝑅2 cos (𝛼 sin ( 𝑢)) + 𝑥𝑃
𝐿
𝑐2 (𝑢): 2𝜋𝑛
𝑦 = 𝑅2 sin (𝛼 sin ( 𝑢))
𝐿
{𝑧 = 𝑢
Line directions is then determined as follows:
21
CHAPTER 3. MODELLING AND DESIGN
(𝑅2 − 𝑅1 ) cos(𝜎)
𝑟(𝑢) = 𝑐2 (𝑢) − 𝑐1 (𝑢) = [ (𝑅2 − 𝑅1 ) sin(𝜎) ] (3)
𝑢
The ruled surface can be described by:
𝑓 (𝑢, 𝑣 ) = 𝑐1 (𝑢) + 𝑣𝑟(𝑢) (4)
𝑅1 cos(𝜎) + 𝑥𝑃 (𝑅2 − 𝑅1 ) cos(𝜎)
= [ 𝑅1 sin(𝜎) ] + 𝑣 × [ (𝑅2 − 𝑅1 ) sin(𝜎) ]
𝑢 𝑢
((1 − 𝑣 )𝑅1 + 𝑅2 ) cos(𝜎) + 𝑥𝑃
= [ ((1 − 𝑣 )𝑅 + 𝑅 ) sin(𝜎) ]
1 2
𝑢
2𝜋𝑛
From which: 𝜎 = 𝛼 sin ( 𝑢)
𝐿
𝑥 = (𝑅2 + (1 − 𝑣 )𝑅1 ) cos(𝜎) + 𝑥𝑃
𝑦 = (𝑅2 + (1 − 𝑣 )𝑅1 ) sin(𝜎)
𝑧=𝑢
From the ruled surface function 𝑓(𝑢, 𝑣 ) obtained in Equation (4), the parametric
function 𝑓⃗(𝑥, 𝑦) is determined:
𝑥 𝑥
⃗
𝑓 (𝑥, 𝑦) = [𝑦 𝑥, 𝑧 ] = [ 𝑥 − 𝑥𝑃 ) tan(𝜎)]
( ) ( (5)
𝑧 𝑧
2𝜋𝑛 2𝜋𝑛
From which: 𝜎 = 𝛼 sin ( 𝑢) = 𝛼 sin ( 𝑦)
𝐿 𝐿
In the range where:
- 𝟎 < 𝒚 < 𝑳, in which 𝑳 is length of the fin.
- 𝒙𝟏 (𝒚) < 𝒙 < 𝒙𝟐 (𝒚), in which:
𝑥1 (𝑦) = 𝑅1 cos(𝛼 sin(𝜎))
{
𝑥2 (𝑦) = 𝑅2 cos(𝛼 sin(𝜎))
B. Fin membrane modelling considering membrane thickness
A parametric offset surface 𝑟(𝑢, 𝑣 ) is a continuum of all points at a constant distance
𝑑 along normal to another parametric surface 𝑟(𝑢, 𝑣 ) and defined as:
𝑟̂ (𝑢, 𝑣 ) = 𝑟(𝑢, 𝑣 ) + 𝑑𝑁 (𝑢, 𝑣 ) (6)
From which: 𝑟̂ (𝑢, 𝑣 ): Parametric function of the offset surface
𝑟(𝑢, 𝑣 ): Parametric function of the original surface
𝑑: Offset distance
𝑁(𝑢, 𝑣 ): Unit normal vector of 𝑟(𝑢, 𝑣 )
If a surface is parameterized by a function 𝑟(𝑢, 𝑣 ), the unit normal vector to this
surface is given by the expression:
22
CHAPTER 3. MODELLING AND DESIGN
𝜕𝑟 𝜕𝑟
( (𝑢, 𝑣 )) × ( (𝑢, 𝑣 ))
𝜕𝑢 𝜕𝑣
𝑁(𝑢, 𝑣 ) = (7)
𝜕𝑟 𝜕𝑟
|( (𝑢, 𝑣 )) × ( (𝑢, 𝑣 ))|
𝜕𝑢 𝜕𝑣
With the parametric function of the neutral surface (so-called the original surface)
obtained in Equation (7), the parametric function of the whole fin considering also the
thickness is determined based on the offset surface theory as above.
First, from the parameterized function 𝑓(𝑥, 𝑦) of the neutral surface, determine unit
normal vector:
From Equation (5), the cross product of partial derivatives of 𝑓(𝑥, 𝑦) is calculated:
𝑖 𝑗 𝑘 (8)
𝜕𝑓𝑥 𝜕𝑓𝑦 𝜕𝑓𝑧
𝜕𝑓 𝜕𝑓
( (𝑥, 𝑧)) × ( (𝑥, 𝑧)) = 𝜕𝑥 𝜕𝑥 𝜕𝑥
𝜕𝑥 𝜕𝑥 𝜕𝑓𝑥 𝜕𝑓𝑦 𝜕𝑓𝑧
[ 𝜕𝑦 𝜕𝑦 𝜕𝑦 ]
𝑖 𝑗 𝑘
1 tan(𝜎) 0
=
2𝛼𝜋𝑛𝑤𝑎𝑣𝑒 cos(𝜎)
0 𝑥 1
[ 𝐿 cos(𝛼 sin(𝜎))2 ]
From which: 2𝜋𝑛
𝜎 = 𝛼 sin ( 𝑦)
𝐿
From Equation (8), calculate norm of cross product as follows:
− tan(𝛼 sin(𝜎)) (9)
𝜕𝑓 𝜕𝑓 2𝛼𝜋𝑛𝑤𝑎𝑣𝑒 cos(𝜎)
|( (𝑥, 𝑦)) × ( (𝑥, 𝑦))| = |[− × 𝑥 ]|
𝜕𝑥 𝜕𝑦 𝐿 cos(𝛼 sin(𝜎))2
1
2
2𝛼𝜋𝑛 𝑤𝑎𝑣𝑒 cos (𝜎)
= √(tan(𝛼 sin(𝜎)))2 + ( × 𝑥) + 12
𝐿 cos(𝛼 sin(𝜎))2
From which: 2𝜋𝑛
𝜎 = 𝛼 sin ( 𝑦)
𝐿
Next, from Equation (8) and (9) ,and the unit normal vector is determined by:
𝜕𝑓 𝜕𝑓
( (𝑥, 𝑦)) × ( (𝑥, 𝑦))
𝜕𝑓 𝜕𝑥
𝑁(𝑥, 𝑦) = (10)
𝜕𝑓 𝜕𝑓
|( (𝑥, 𝑦)) × ( (𝑥, 𝑦))|
𝜕𝑥 𝜕𝑦
Overall, the parametric function of the offset surface originated from the fin’s neutral
surface is determined based on Equation (5) and (10).
𝑓̂(𝑥, 𝑦) = 𝑓(𝑥, 𝑦) + 𝑑𝑁(𝑥, 𝑦) (11)
23
CHAPTER 3. MODELLING AND DESIGN
24
CHAPTER 3. MODELLING AND DESIGN
[ tan(𝜎) + 1 ]
From which: )2 2
𝐷 = √(𝑥 − 𝑥𝑃 + 𝑧 is the distance from pivot axis to the node
on neutral surface
Time-dependent parametric function of the offset surface
From Equation (16), the cross product of partial derivatives of 𝑓(𝑥, 𝑦) is calculated
as below:
𝜕𝑓 𝜕𝑓 (17)
𝑐⃗ = ( (𝑥, 𝑦, 𝑡)) × ( (𝑥, 𝑦, 𝑡))
𝜕𝑥 𝜕𝑥
𝑖 𝑗 𝑘
𝑖 𝑗 𝑘
𝜕𝑓𝑥 𝜕𝑓𝑦 𝜕𝑓𝑧
| | 1 0 tan(𝛼 sin(𝜎))
= 𝜕𝑥 𝜕𝑥 𝜕𝑥 = |
|𝜕𝑓 𝜕𝑓 𝜕𝑓 | 2𝛼𝜋𝑛𝑤𝑎𝑣𝑒 cos(𝜎) |
𝑥 𝑦 𝑧 0 1 𝑥
𝐿 cos(𝛼 sin(𝜎))2
𝜕𝑦 𝜕𝑦 𝜕𝑦
− tan(𝛼 sin(𝜎))
2𝛼𝜋𝑛𝑤𝑎𝑣𝑒 cos(𝜎)
= [− 𝑥]
𝐿 cos(𝛼 sin(𝜎))2
1
From Equation (17), we can calculate the norm of cross product as follows:
𝜕𝑓 𝜕𝑓
|𝑐⃗| = |( (𝑥, 𝑦, 𝑡)) × ( (𝑥, 𝑦, 𝑡))| (18)
𝜕𝑥 𝜕𝑦
− tan(𝛼 sin(𝜎))
2𝛼𝜋𝑛𝑤𝑎𝑣𝑒 cos(𝜎)
= |[− × 𝑥 ]|
𝐿 cos(𝛼 sin(𝜎))2
1
25
CHAPTER 3. MODELLING AND DESIGN
2
2𝛼𝜋𝑛𝑤𝑎𝑣𝑒 cos(𝜎)
= √(tan(𝛼 sin(𝜎)))2 + ( × 𝑥) + 12
𝐿 cos(𝛼 sin(𝜎))2
Next, from Equation (10), the unit normal vector is determined by:
𝜕𝑓 𝜕𝑓
( (𝑥, 𝑦, 𝑡)) × ( (𝑥, 𝑦, 𝑡))
𝑐⃗ 𝜕𝑥 𝜕𝑥
𝑁(𝑥, 𝑦, 𝑡) = = (19)
|𝑐⃗| 𝜕𝑓 𝜕𝑓
|( (𝑥, 𝑦, 𝑡)) × ( (𝑥, 𝑦, 𝑡))|
𝜕𝑥 𝜕𝑦
D. Find force generated by membrane using Ansys Simulation
Simulation setup and execution procedure
From Equation (16) and (19) and parameters from Appendix 5, we can create the
continuous membrane model of the robot, which can be described in below figure using
Ansys:
y y
z x
26
CHAPTER 3. MODELLING AND DESIGN
a) Simulation at t = 0s b) Simulation at t = 1s
Figure 24. Ansys Simulation Running.
As can be obtained from Figure 25, the thrust values from X-axis are between
−45 and −2𝑁, which means that the fin will move sideways, in the opposite direction
to x. After one second, the oscillations appear to be repeated. The axis studied does not
correspond to that obtained in 2D, because it is the axis that is perpendicular to the plane
of the latter. From this point of view, no comparison is possible because the simulation
is based on a single fin. In the project, the robot has two opposed fins. If both were
studied, the forces would compensate each other, avoiding lateral movements.
0.0 -30.0
-10.0 10.0
-20.0 -50.0
0.0
-30.0 -70.0
-40.0 -10.0
-90.0
0.0 0.4 0.8 1.2 1.6 2.0 0.0 0.4 0.8 1.2 1.6 2.0 0.0 0.4 0.8 1.2 1.6 2.0
Force (N)
27
CHAPTER 3. MODELLING AND DESIGN
𝑦 𝑦
𝑙𝑓𝑖𝑛 𝛼0
𝑦0
𝑂 𝑧 𝑂 𝑦(𝑡, 𝑥)
𝑥
𝛼(𝑥, 𝑡)
28
CHAPTER 3. MODELLING AND DESIGN
𝑑 2𝜋𝑥 𝜋
𝜔 (𝑡, 𝑥 ) = 𝛼(𝑡, 𝑥 ) = 𝛼0 ωf sin (𝜔𝑓 𝑡 + + )
𝑑𝑡 𝜆 2 (23)
2𝜋𝑥 𝜋
= 𝜔0 sin (𝜔𝑓 𝑡 + + )
𝜆 2
From which: 𝜔0 : is the maximum angular velocity (𝑟𝑎𝑑/𝑠)
Moreover, the angular frequency belong to frequency of the swimming pattern of the
fin. Take the sine-wave swimming pattern in the expression:
𝑦(𝑥, 𝑡) = 𝑦0 𝑠𝑖𝑛𝜔𝑓𝑡 + 2𝜋𝑥𝜆 = 𝑦0 sin (2𝜋𝑓𝑡) + 2𝜋𝑥𝜆 (24)
From which: 𝑦0 = 𝑙𝑓𝑖𝑛𝑠𝑖𝑛𝛼0: the amplitude of the swimming linear pattern.
𝑓: is the frequency of the swimming linear pattern
From Equation (23) and (24), the maximum angular velocity of the fin ray is
expressed in the equation below:
𝜔0 = 𝛼0 𝜔𝑓 = 𝛼0 2𝜋𝑓 (25)
Finally, with [5] [6], we can check from the above equation if the frequency is
optimized in the range for generating the efficiency thrust force.
0.5 ≤ 𝑓 ≤ 2 (𝐻𝑧) (26)
II. Mechanical Design
A. Motor Selection for Fin-ray Actuators
From the previous Ansys simulation and torque calculation from Equation (21) with
the minimum torque at 2𝑁𝑚, we can pick and declare the catalogue of the TD-40-52-
NH-XX Motor Series, which has the output torque at 3.8𝑁𝑚 and parameters as depicted
in Appendix 6.
Based on the table parameter, we figure out the maximum frequency of the
swimming linear pattern form the rated speed of the motor from Equation (25). Because
during the operation is the motor always has load (fin membrane, added mass…), the
angular velocity is always smaller than rated speed. From the Equation (25), we can
determine the maximum frequency.
4000 2𝜋 𝑟𝑎𝑑
𝜔0 × ( ) 4000
𝑓𝑚𝑎𝑥 = = 51 60 𝑠 = (27)
2𝜋𝛼0 2𝜋𝛼0 5060 × 𝛼0
From the equation above, we can establish Appendix 7, which illustrate the value of
maximum frequency belong to each value of 𝛼0 ranging from 𝜋/9 to 𝜋/3.
According to Equation (26) and Appendix 7, we observe that the calculated
maximum frequencies for different angle amplitudes satisfy the optimized range. This
29
CHAPTER 3. MODELLING AND DESIGN
is advantageous as it allows for controlled system to achieve the desired frequency range
for efficient thrust force.
B. Membrane Design
Following the steps to transform from a flat plate to a wavy profile presented in
Equation (2) not only gives us the method of constructing a discrete mathematical model
of the diaphragm presented above but also gives us a hint about continuity. In order to
find a method to determine the size of the flat profile, thereby completing the constraints
to express continuity, the paper makes the following statement about the perimeter: The
total perimeter of the diaphragm before and after deformation is always constant and
will be preserved. Based on that statement, the paper proposes a method to determine
the flat plate profile based on the geometrical properties that have been determined in
the diaphragm.
𝐿 (𝑐1 )
𝐿 (𝑟)
𝐿 (𝑐0 )
𝑅 𝑀(0,1)
𝛽
𝑊
𝑀(0,0)
30
CHAPTER 3. MODELLING AND DESIGN
1
1 𝑥−𝑎 2 𝑛 (29)
𝑟𝑁 = 𝑑 {1 − ( ) }
2 𝑎
1 3𝑑 𝑡𝑎𝑛𝜃 2 𝑑 𝑡𝑎𝑛𝜃
𝑟𝑇 = 𝑑 − { 2 − } 𝑐 + { 3 − 2 } 𝑐3 (30)
2 2𝑐 𝑐 𝑐 𝑐
With 𝑛 being the degree of the bow profile, the other parameters are also given in
below figure, from which, 𝑎, 𝑏, 𝑐 and 𝑑 are the dimensional parameters depending on
the desired design (the design goal is as small as possible), it is necessary to determine
𝑛 and 𝜃. In the paper studying the optimal profile of the shell profile [14], João gave the
optimal design with 𝑛 = 2 and 𝜃 = 20°. Then the drag coefficient is determined by the
formula (31):
𝐶𝐷 = 0,12 + 0,000096((3,2 + 1,22𝑛)2 + (10,5 − 0.54𝜃)2 ) (31)
= 0.133
𝑟𝑁 𝑑 𝑟𝑇 𝜃
𝑎 𝑏 𝑐
31
CHAPTER 3. MODELLING AND DESIGN
All electrical equipment such as the engine and the circuit will be arranged
reasonably in the electrical box and the output shaft of the motor will be sealed with a
mechanical seal. We have gathered most of the electrical equipment into 1 box. The first
step of water-proofing the box will be waterproofing the mounting surfaces using rubber
gaskets or rubber pads as described in below figure.
Body module 1
Body module 2
Silicone O-ring
32
CHAPTER 3. MODELLING AND DESIGN
Membrane
Figure 32. Water-proofing the engine compartment and the main circuit.
Water-tighten the camera compartment and sensors such as external sensors.
Bulong
O-ring
Tempered Glass
PG Connector
Camera
33
CHAPTER 3. MODELLING AND DESIGN
pressure acting on the glass will be the most important factor in calculating the number
of bolts needed.
Therefore, the above are preliminary plans, the first steps in building a waterproof
plan. However, the plans must be tested to evaluate from which changes in the
mechanical structure can be made.
34
CHAPTER 3. MODELLING AND DESIGN
35
CHAPTER 3. MODELLING AND DESIGN
36
CHAPTER 3. MODELLING AND DESIGN
can process and analyze visual data effectively, enhancing its operational capabilities in
aquatic settings.
Moreover, the Raspberry Pi's versatile GPIO pins and peripheral interfaces enable
straightforward integration with other essential components of the robot, such as depth
sensors, actuators, and additional cameras. This versatility is vital for creating a cohesive
system where all components work together efficiently. Additionally, the Raspberry Pi's
networking capabilities, including Ethernet and Wi-Fi, facilitate remote control and data
communication, which is valuable for monitoring and controlling the robot from a
distance, even though additional measures might be required for underwater
connectivity.
Another significant advantage of choosing the Raspberry Pi and its camera module
is the extensive community support and the availability of comprehensive software
libraries. This support accelerates development, troubleshooting, and optimization,
allowing us to leverage existing resources and expertise to enhance the robot's
functionality. In summary, the combination of processing power, high-quality imaging,
versatile interfacing, and community resources makes the Raspberry Pi and its camera
module an ideal choice for our underwater robot application.
37
CHAPTER 3. MODELLING AND DESIGN
motors we are using from Appendix 6 are compatible with a voltage range of 24 − 48𝑉,
making the 7𝑆 configuration an ideal choice. This setup ensures that the motors receive
sufficient voltage to operate efficiently while maintaining a good balance between
performance and battery size.
By choosing a 7𝑆 battery pack, we can deliver the necessary power to the actuators
without overloading the system, which could lead to inefficiencies or potential damage.
The chosen voltage also allows us to optimize the energy density and capacity of the
battery pack, providing a longer operational time for the UAV while keeping the weight
and size within acceptable limits. This careful selection of the battery configuration is
crucial for maintaining the overall efficiency, stability, and longevity of the UAV
system.
Pack +
Monitoring Pack Management Unit
Unit
Gateway
Cell 1
MCU
Battery
... Monitor
Gate
with Cell-
driver
Cell 7 balancing
38
CHAPTER 3. MODELLING AND DESIGN
The main components of the system are shown, as well as the connections between
MMU, PMU and external gateway.
39
CHAPTER 3. MODELLING AND DESIGN
𝑅𝐹𝑖𝑙𝑡𝑒𝑟
𝐶𝑃 𝐶
3.3 𝑘Ω
𝑆
𝑅𝐵𝑎𝑙𝑎𝑛𝑐𝑒
𝐶𝑁 𝐶𝑀
𝑉𝑅𝐸𝐹2
𝑅𝐵𝐼𝐴𝑆
𝑉𝑂𝑈𝑇
𝑅𝑇 t*
40
CHAPTER 3. MODELLING AND DESIGN
1 1
𝛽×( − ) (36)
𝑅𝑇 = 𝑅𝑇0 × 𝑒 𝑇 𝑇0
From which: 𝑅𝑇 : is the resistance of the thermistor at temperature T (°𝐾)
𝑅𝑇0 is the resistance of the thermistor at 298.15°𝐾 (25℃).
𝛽: is a characteristic value of the thermistor material, for this
application, choose a thermistor with 𝛽 = 3950𝐾 −1.
Power Management Unit
This unit manages power distribution, DC-DC conversion, and overall power
regulation for the system. It incorporates the MAX5035 DC-DC converter to provide a
stable voltage supply. Key features of the PMU include high efficiency, low shutdown
current, and protection mechanisms to prevent voltage overshoot.
BATT+ MAX5035
3𝑉3
VIN SGND
ENABLE GND FB
ON/OFF VD
BATT+ 3𝑉3 LX BST
41
CHAPTER 3. MODELLING AND DESIGN
The selection of the inductor depends on the input and output voltage values, the
maximum output current, and the operating frequency of the circuit. The following
formula provides the minimum value for the inductor of the circuit:
𝑉𝑜𝑢𝑡
(𝑉𝑖𝑛 − 𝑉𝑜𝑢𝑡 ) ×
𝑉𝑖𝑛 (37)
𝐿=
0.3 × 𝐼𝑜𝑢𝑡 × 𝑓𝑆𝑊
And the value of the input capacitor can be calculated based on the formula:
𝑉𝑜𝑢𝑡 𝑉
𝐼𝑜𝑢𝑡 × × (1 − 𝑜𝑢𝑡 )
𝑉𝑖𝑛 𝑉𝑖𝑛 (38)
𝐶𝑖𝑛 =
0.1 × 𝑓𝑆𝑊
From which: 𝑓𝑆𝑊 : the operating frequency of the circuit (𝐻𝑧)
MCU
Pack + Charge −
CHG
DSG
Discharge −
42
CHAPTER 3. MODELLING AND DESIGN
TLP250
𝑉𝐶𝐶
𝐴𝑛𝑜𝑑𝑒
𝑉𝑂
𝐶𝑎𝑡ℎ𝑜𝑑𝑒
𝐺𝑁𝐷
43
CHAPTER 3. MODELLING AND DESIGN
TPS5430 C2 L1
VIN VIN BOOT VOUT
ENA ENA PH C3
D1 R1
C1 NC VSNS
NC DAP
GND
R2
44
CHAPTER 3. MODELLING AND DESIGN
45
CHAPTER 4. CONTROLLER DESIGN
PWM
vfb , ωfb
46
CHAPTER 4. CONTROLLER DESIGN
θref e PWM
Motor Controller Motor
θref
T
θfb , θfb Ifb
UUV Sensor System
47
CHAPTER 4. CONTROLLER DESIGN
can adapt to uncertainties and disturbances, making it particularly suited to the dynamic
and unpredictable nature of the underwater environment.
the main control architect to control the system. In this system, 𝑿 = 𝜃 ∈ ℝ2×1 is the
𝐼
state variable, 𝑌 ∈ ℝ is the output, 𝑨 ∈ ℝ2×2 is unknown, 𝑩 ∈ ℝ2×1 is unknown, 𝑢 ∈
ℝ1 is the control input.
48
CHAPTER 4. CONTROLLER DESIGN
̃𝑟𝑇 Γ𝐾
+ 2𝑡𝑟 (𝐾 ̂𝑟 )
49
CHAPTER 4. CONTROLLER DESIGN
̃ 𝑿 𝑪−𝟏 𝑌𝑒 + 𝑡𝑟 (𝑲
= 2𝑪𝑨𝒎 𝑪−1 𝑒 2 + 2 (−𝐶𝐵𝑲 ̃ 𝑻𝑿 Γ𝑲
̂ 𝑋 ))
̃𝑟 𝑟𝑒 + 𝑡𝑟 (𝐾
+ 2 (𝐶𝐵𝐾 ̃𝑟𝑇 Γ𝐾
̂𝑟 ))
̃ 𝑻𝑿 Γ (−𝑩𝑻𝒎 𝑪𝑻 𝑒𝑌(𝑪−𝟏 )𝑇 + 𝑲
𝑉 = 2𝑪𝑨𝒎 𝑪−1 𝑒 2 + 2𝑡𝑟 (𝑲 ̂ 𝑋 ))
(55)
̃𝑟𝑇 Γ (𝑩𝑻𝒎 𝑪𝑻 𝑒𝑟 + 𝐾
+ 2𝑡𝑟 (𝐾 ̂𝑟 ))
50
CHAPTER 4. CONTROLLER DESIGN
Pi−1 Pi Pi Pi+1
vi−1 vi vi+1
ui−1 ui ui+1
51
CHAPTER 4. CONTROLLER DESIGN
52
CHAPTER 4. CONTROLLER DESIGN
The main interface of the system displays the current position of the fish robot, along
with other operating parameters. Details of other sub-functions will be explained in the
below section.
53
CHAPTER 4. CONTROLLER DESIGN
LAN
Access
54
CHAPTER 4. CONTROLLER DESIGN
Authentication
Verify account
process
Auth. status
Session
credentials
Periodically
Data updating
update latest data
Forward
process
message
Ack message
Forward
message
WS request
with Cookies
Control setting
Request data
process
Cached data
Send data
Queue control
parameters
Send control parameters
Forward
Message
55
CHAPTER 4. CONTROLLER DESIGN
Communication Latency
To optimize the robot’s performance, it is essential to account for the latency
characteristics of each communication technology employed. The following table
outlines the key technologies used in the fish robot and their respective maximum
latencies:
Table 4.2. Maximum latency of implemented communication technologies.
Technology Notation Maximum Latency
HTTP/HTTPS (WAN) 𝑡𝐿1 50𝑚𝑠
HTTP/HTTPS (LAN) 𝑡𝐿2 5𝑚𝑠
RF (433MHz/315MHz) 𝑡𝐿3 100𝑚𝑠
Ultrasonic (500𝑚 range) 𝑡𝐿4 ~300𝑚𝑠
56
CHAPTER 4. CONTROLLER DESIGN
Considering total latency for each process in the Back-end Communication Scheme
as depicted from Figure 45, with 𝑡1 , 𝑡2 , 𝑡3 are the maximum latency of Authentication
Process, Data Updating Process and Control Setting Process:
𝑡1 = 2𝑡𝐿1 + 2𝑡𝐿2 = 110 (𝑚𝑠)
𝑡2 = 2𝑡𝐿3 + 2𝑡𝐿4 = 800 (𝑚𝑠)
𝑡3 = 3𝑡𝐿1 + 2𝑡𝐿2 + 𝑡𝐿3 + 𝑡𝐿4 = 560 (𝑚𝑠)
In the latencies as listed above, 𝑡3 - control setting process is most essential for the
fish robot’s precision and responsiveness, ensures accurate movement, real-time
feedback, and stability, particularly in dynamic underwater environments. Therefore,
careful consideration of this process is critical for achieving reliable and efficient robot
performance.
Admin Central Station (Main Server) Inter. Robot
Program FastAPI RedisDB Station System
HTTP/HTTPS Protocol RF Signal Ultrasonic
Return data
Forward message
Request data
Queue control
parameters
Send control parameters
Forward
Message
57
CHAPTER 4. CONTROLLER DESIGN
Session-expired Page
The login page is displayed when users attempt to access a part of the application for
which they lack permissions. This navigation feature from a 403 error page is useful, as
it provides users an opportunity to log in and access restricted content or functions.
When users choose to navigate to the login page from the 403 page, they are redirected
58
CHAPTER 4. CONTROLLER DESIGN
to the application's login interface, where they can enter valid credentials. Upon
successful login, they are seamlessly directed to the originally requested page or
function, creating a convenient and user-friendly experience.
59
CHAPTER 4. CONTROLLER DESIGN
Users can control the map using the " + " and " − " buttons in the top left corner to
zoom in or out, allowing for detailed observation of the robot's location or a broader
view of the surrounding area. This interaction enables users to accurately follow the
robot's path and adjust their view as needed. The map updates the robot's position in real
time, providing an intuitive visual representation through the robot icon and message
bubble. This interface ensures that users can easily monitor and manage the fish robot's
navigation activities, guaranteeing precise and effective operations.
60
CHAPTER 4. CONTROLLER DESIGN
orientation, the interface features three sliders that allow users to adjust the rotation
angles around the X, Y, and Z axes. Users can change the rotation values by dragging
the sliders to their desired angles, with a "Save" button available for each axis to store
the current rotation values.
61
CHAPTER 4. CONTROLLER DESIGN
62
CHAPTER 5. MECHANICAL BEHAVIOR ANALYSIS
Figure 53. SolidWorks FEA Simulation: Stress Analysis of Motor Connecting Rod.
This significant margin between the maximum stress and the yield strength suggests
that the component is not at risk of permanent deformation under the given loading
conditions. The areas with minimal stress are represented in blue, indicating that these
regions experience negligible deformation.
63
CHAPTER 5. MECHANICAL BEHAVIOR ANALYSIS
Figure 55. SolidWorks FEA Simulation: Stress Analysis of Body Frame Segment.
B. Displacement and Strain Analysis for Critical Mechanical Elements
Figure 56, Figure 57 and Figure 58 focuses on displacement and strain, providing
further insight into the mechanical response of the component. The displacement results,
depicted on the left, show the extent of movement in millimeters (mm) across the
structure. The maximum displacements are approximately 1.07 × 10−2 , 8.5 ×
10−4 and 2.0 × 10−2 𝑚𝑚 corresponding with motor connecting rod, membrane clipper
and a segmented frame of main body, occurring in regions where stress is highest.
64
CHAPTER 5. MECHANICAL BEHAVIOR ANALYSIS
Conversely, areas near the fixed points exhibit displacements close to zero, effectively
indicating no movement. These results suggest that the overall deformation is minimal,
and the component maintains structural stability under the applied load.
a) Displacement b) Strain
Figure 56. SolidWorks FEA Simulation: Stress and Strain Analysis of Motor
Connecting Rod.
a) Displacement b) Strain
65
CHAPTER 5. MECHANICAL BEHAVIOR ANALYSIS
a) Displacement b) Strain
Figure 58. SolidWorks FEA Simulation: Displacement and Strain Analysis of Body
Frame Segment.
On the right of each figure, the strain distributions are analyzed, offering an
understanding of material deformation in response to stress. The strain values,
represented in a small range, peak at 2.66 × 10−5, 1.44 × 10−5 and 6.55 × 10−5 ,
signifying very slight material deformation. This low strain level further supports the
conclusion that the component retains its integrity and does not experience significant
deformation.
C. Simulation Conclusion
The combined analysis of von Mises stress, displacement, and strain demonstrates
that the component performs well under load, with stress, displacement, and strain
values all well within acceptable limits for the material used.
66
CHAPTER 5. MECHANICAL BEHAVIOR ANALYSIS
67
CHAPTER 5. MECHANICAL BEHAVIOR ANALYSIS
In Figure 59, the simulations focus on the translational stability parameters, picture
(a) illustrates the analysis for the x and y directions while picture (b) shows the analysis
for the z direction. Similarly, Figure 60 depicts the simulations for the rotational stability
parameters, picture (a), (b) and (c) present the roll, yaw, and pitch stability analysis
displays the stability analysis respectively.
B. Simulation Conclusion
By utilizing SolidWorks Flow Simulation for these analyses, we can accurately
assess the hydrodynamic stability characteristics of the fish robot in order to serve the
ROS simulation in next chapter. This comprehensive approach ensures precise capture
of the complex interactions between the robot and the surrounding fluid, which is crucial
for optimizing its design and performance in underwater environments, the result of the
simulation is shown in below table:
Table 5.1. Result from SolidWorks Flow Simulation.
Notation Description Value Unit
𝑋𝑢 Added mass in 𝑥 direction 12.582 𝑘𝑔
𝑌𝑣 Added mass in 𝑦 direction 3549.5 𝑘𝑔
𝑍𝜔 Added mass in 𝑧 direction 92.215 𝑘𝑔
𝐾𝑝 Added mass in 𝑟𝑜𝑙𝑙 direction 0.7067 𝑘𝑔𝑚²
𝑀𝑞 Added mass in 𝑝𝑖𝑡𝑐ℎ direction 173.447 𝑘𝑔𝑚²
𝑁𝑟 Added mass in 𝑦𝑎𝑤 direction 45.2367 𝑘𝑔𝑚²
𝑋𝑢|𝑢| Stability derivative, 2nd order, 𝑥 component 10.3873 𝑘𝑔/𝑚
𝑋𝑢 Stability derivative, 1st order, 𝑥 component 3.7284 𝑘𝑔
𝑌𝑣|𝑣| Stability derivative, 2nd order, 𝑦 component 57.8237 𝑘𝑔/𝑚
𝑌𝑣 Stability derivative, 1st order, 𝑦 component 395.4553 𝑘𝑔
𝑍𝜔|𝜔| Stability derivative, 2nd order, 𝑧 component 280.2128 𝑘𝑔/𝑚
𝑍𝜔 Stability derivative, 1st order, 𝑧 component 32.6899 𝑘𝑔
𝐾𝑝|𝑝| Stability derivative, 2nd order, 𝑟𝑜𝑙𝑙 component 0.25762 𝑘𝑔/𝑚²
𝐾𝑝 Stability derivative, 1st order, 𝑟𝑜𝑙𝑙 component 0.21981 𝑘𝑔/𝑚
𝑀𝑞|𝑞| Stability derivative, 2nd order, 𝑝𝑖𝑡𝑐ℎ component 19.0392 𝑘𝑔/𝑚²
𝑀𝑞 Stability derivative, 1st order, 𝑝𝑖𝑡𝑐ℎ component -21.9755 𝑘𝑔/𝑚
𝑁𝑟|𝑟| Stability derivative, 2nd order, 𝑦𝑎𝑤 component 4.8434 𝑘𝑔/𝑚²
𝑁𝑟 Stability derivative, 1st order, 𝑦𝑎𝑤 component -5.3837 𝑘𝑔/𝑚
68
CHAPTER 6. ROS CONTROL SIMULATION
Figure 61. Principle Schematic for Single Fin Segment in Gazebo Ignition.
69
CHAPTER 6. ROS CONTROL SIMULATION
the distal part of the fin and provides additional flexibility and range of motion. The two
joints provide the fin model with two degrees of freedom, allowing it to mimic the
natural movement of a segment of the fin by enabling both bending and twisting
motions. The first joint (between Link 1 and Link 2), situated between the base link and
the intermediate link, permits rotation in one plane, while the second joint (between Link
2 and Link 3), located between the intermediate link and the distal link, allows for
rotation in a perpendicular plane. This dual-joint configuration is crucial for replicating
the complex, multi-axis movements of a biological fin.
When configuring the angles for joints and running simulations, it is critical to
disable collision detection among all parts from Gazebo Ignition. This adjustment
ensures that the simulation focuses on the hydrodynamic behavior of the system without
interference from collision forces, which can distort the analysis. By disabling
collisions, we can observe the pure dynamic interactions and performance of the fin-ray
model, providing more accurate insights into its hydrodynamic properties.
By accurately modeling these elements in Gazebo, the simulation can achieve a
realistic representation of the fin's dynamic behavior, which is essential for analyzing
and optimizing fin performance in various applications.
Figure 63. Gazebo Ignition: Movement of First Joint from Single Fin Segment.
To further illustrate the individual movements facilitated by each joint, Figure 63
and Figure 64 demonstrate the separate motions corresponding to Joint 1 and Joint 2.
By adjusting the angle of each joint from − 𝜋/4 to 𝜋/4 , we can observe the distinct
rotational capabilities of each joint. Figure 63 shows the motion enabled by Joint 1,
highlighting its ability to rotate within its plane. Similarly, Figure 64 depicts the motion
70
CHAPTER 6. ROS CONTROL SIMULATION
Figure 64. Gazebo Ignition: Movement of Second Joint from Single Fin Segment.
B. Construct Membrane model based on separate Fin-ray model
71
CHAPTER 6. ROS CONTROL SIMULATION
72
CHAPTER 6. ROS CONTROL SIMULATION
73
CHAPTER 6. ROS CONTROL SIMULATION
23. ConvertModelToString(𝑟𝑜𝑏𝑜𝑡_𝑚𝑜𝑑𝑒𝑙)
ExportWorld(𝑛𝑒𝑤_𝑤𝑜𝑟𝑙𝑑, 𝑟𝑜𝑏𝑜𝑡_𝑚𝑜𝑑𝑒𝑙)
The above algorithm begins by initializing a simulation environment and defining
an XML structure to represent the robot model as standardized by Gazebo Ignition. The
program iterates over each side of the membrane and each fin unit, parsing XML
templates for the fin structure and calculating positions within the model. Links and
joints are sequentially created and integrated into the robot model, ensuring connectivity
and functionality of the membrane. Dynamic plugins are configured to simulate the
behavior of each fin unit.
x
y
ϕ
74
CHAPTER 6. ROS CONTROL SIMULATION
𝑡 = 0𝑠 𝑡 = 10𝑠 𝑡 = 20𝑠
Figure 68. ROS Simulation Footage: Translational Motion.
Table 6.2. Simulation: Translational Motion - Configuration Parameters.
Parameters Value Unit
Whole robot body weight 𝑚𝑏𝑜𝑑𝑦 62.93 𝑘𝑔
Initialized translational position (𝑥0 , 𝑦0 , 𝑧0 ) (0, 0, 0) 𝑚
Initialized rotational position (𝜃0 , 𝜙0 , 𝜓0 ) (0, 0, 0) 𝑟𝑎𝑑
Destinated translational position (𝑥𝑑 , 𝑦𝑑 , 𝑧𝑑 ) (0, 5, 0) 𝑚
Destinated rotational position (𝜃𝑑 , 𝜙𝑑 , 𝜓𝑑 ) (0, 0, 0) 𝑟𝑎𝑑
Controller parameters (𝑘1 , 𝑘2 , 𝑘3 , 𝑘4 , 𝑘5 ) (0.001, 0.001, 48, 0.1, 20)
Water density 𝜌 1025 𝑘𝑔/𝑚3
Water viscosity 𝜇 0.001 𝑃𝑎. 𝑠
Water current velocity (𝑣𝑥 , 𝑣𝑦 , 𝑣𝑧 ) (0, 0, 0) 𝑚/𝑠
75
CHAPTER 6. ROS CONTROL SIMULATION
B. Simulation Result
5.0 2.3
2.5
0.0
0.0
0 10 20 30 40 0 10 20 30 40
Simulation Time (seconds) Simulation Time (seconds)
𝜋/4 𝜋/9
Rotational Position (rad)
0.0 0.0
-𝜋/4 -𝜋/9
0 10 20 30 40 0 10 20 30 40
Simulation Time (seconds) Simulation Time (seconds)
76
CHAPTER 6. ROS CONTROL SIMULATION
𝑡 = 0𝑠 𝑡 = 10𝑠 𝑡 = 20𝑠
0.5
0.3
0.0 0.0
-0.5 -0.3
0 10 20 30 40 0 10 20 30 40
Simulation Time (seconds) Simulation Time (seconds)
77
CHAPTER 6. ROS CONTROL SIMULATION
𝜋/2 𝜋/3
0.0
0.0
0 10 20 30 40 0 10 20 30 40
Simulation Time (seconds) Simulation Time (seconds)
𝑡 = 0𝑠 𝑡 = 10𝑠 𝑡 = 20𝑠
78
CHAPTER 6. ROS CONTROL SIMULATION
5.0 0.3
0.0 0.0
0 10 20 30 40 0 10 20 30 40
Simulation Time (seconds) Simulation Time (seconds)
79
CHAPTER 6. ROS CONTROL SIMULATION
0.0 0.0
0 10 20 30 40 0 10 20 30 40
Simulation Time (seconds) Simulation Time (seconds)
80
CHAPTER 7. EXPERIMENT
CHAPTER 7. EXPERIMENT
In this thesis, advancements for the biomimetic fish robot have been proposed,
including the use of a continuous membrane for improved swimming performance and
an USBL system for localization. However, for the sake of simplicity and to streamline
the experimentation process, we are utilizing an older version of the robot, which
features discrete fins and has already been constructed in DCSELab. To further simplify
testing, we are employing a camera-based localization system, which allows us to focus
on evaluating the controller algorithm, ensuring that the core functionality is thoroughly
verified before implementing more complex designs and systems.
I. Experiment Setup
A. Background procedure of Vision-Based Localization
For this approach, when the camera system captures real-time images, and specific
features (such as colors or shapes) are used to track the robot’s movement, for our
application, color detection is a suitable feature for tracking that has been chosen for the
experiment setup due to the unique color configuration in the experimental environment,
which has the following procedure:
81
CHAPTER 7. EXPERIMENT
∆
𝑆𝑣𝑎𝑙 = (67)
𝐶𝑚𝑎𝑥
𝑉𝑣𝑎𝑙 = 𝐶𝑚𝑎𝑥 (68)
From which: 𝐶𝑚𝑎𝑥 = max (𝑅𝑣𝑎𝑙 , 𝐺𝑣𝑎𝑙 , 𝐵𝑣𝑎𝑙 ).
∆ = max(𝑅𝑣𝑎𝑙 , 𝐺𝑣𝑎𝑙 , 𝐵𝑣𝑎𝑙 ) − min(𝑅𝑣𝑎𝑙 , 𝐺𝑣𝑎𝑙 , 𝐵𝑣𝑎𝑙 ).
(245, 263)
(317, 986)
82
CHAPTER 7. EXPERIMENT
VFOV (Horizontal/Vertical Field of View) define the coverage area of the camera in
directions. Meanwhile, HAOV, VAOV and DAOV (Horizontal/Vertical/Diagonal
Angle of View) represent the angles of coverage in their respective directions.
HAOV
DAOV
VFOV
VAOV
Camera
Camera Lens
sensor
HAOV
D
3.5m 6m
83
CHAPTER 7. EXPERIMENT
movements, allowing it to swim and maneuver freely while still providing measurable
boundaries for detailed analysis.
𝐻𝐴𝑂𝑉
2𝐷 × tan ( ) ≥ 3.5 (𝑚)
{ 2 ⇒ 𝐷 ≥ 1.73(𝑚)
𝑉𝐴𝑂𝑉
2𝐷 × tan ( ) ≥ 6 (𝑚)
2
To ensure the camera can capture the entire pool area without blind spots. Below
calculations consider the dimensions of the pool and the camera’s specifications, with
horizontal and vertical field of view (HFOV and VFOV), along with the camera's height
and distance from the pool.
B. Experiment Configuration
Table 7.1. Experiment Configuration Setup.
Parameters Value Unit
Camera Coverage Angle (𝐻𝐴𝑂𝑉 × 𝑉𝐴𝑂𝑉) (120 × 120) °
Camera Resolution (𝐻 × 𝑊) (1920 × 1080) 𝑝𝑖𝑥𝑒𝑙𝑠
Camera Framerate 30 𝑓𝑝𝑠
Camera Height (𝐷) 1.8 𝑚
Pool Dimensions (𝐿 × 𝑊) (6 × 3.5) 𝑚
84
CHAPTER 7. EXPERIMENT
the 15 𝑠𝑒𝑐𝑜𝑛𝑑. However, after achieving near-zero error, there is a brief overshoot into
the negative error range.
0.0
200.0
85
CHAPTER 7. EXPERIMENT
while the controller can significantly reduce the angular error, minor fluctuations remain
throughout the experiment.
𝜋/4
0.0
-𝜋/4
86
CHAPTER 7. EXPERIMENT
In the translational error graph, the error begins at around 200 mm and gradually
decreases over time but, notably, never fully reaches zero. This persistent translational
error suggests that the robot struggles to follow the desired curved path precisely, likely
due to limitations in its mechanical design. The robot's physical system may lack the
flexibility or precision needed to navigate sharp or extreme curves, causing the control
system to fall short in achieving perfect path tracking.
Translational Error (mm)
250.0
𝜋/4
0.0
-𝜋/4
87
CHAPTER 8. CONCLUSION
CHAPTER 8. CONCLUSION
I. Accomplishments
This thesis has successfully investigated the design, control, and simulation of a
biomimetic fish robot using a continuous membrane configuration. A key achievement
was the development of a robust simulation environment using tools like Ansys for
hydrodynamic analysis and Gazebo Ignition integrated with ROS for control system
simulations. These simulations allowed for detailed evaluation of the continuous
membrane’s performance, including the generation of force and torque outputs and the
hydrodynamic efficiency of the design.
The programming efforts focused on developing an adaptive control system using
Model Reference Adaptive Control (MRAC) to ensure the robot's stability and
responsiveness under various swimming conditions. The control algorithms were
implemented and tested in simulated environments, where they successfully generated
realistic undulatory swimming motions and allowed for precise control of the fin-ray
actuators. Simulations of both translational and rotational movements demonstrated the
controller’s effectiveness in handling complex underwater maneuvers.
Furthermore, the thesis designed and simulated the electrical system, integrating the
motor controllers, sensors, and power regulation modules into a cohesive framework.
This provided a clear roadmap for real-world implementation. A web-based
administrator system was also designed, which enabled remote monitoring and control
of the robot, adding to the versatility of the overall system.
II. Limitations
While the thesis made significant strides, certain limitations were encountered in the
programming and simulations. The real-time application of the MRAC controller has
yet to be tested outside the simulation environment. The proposed control system,
though extensively simulated, still requires validation through physical experiments in
underwater environments, particularly to confirm its performance in handling dynamic
hydrodynamic forces.
88
CHAPTER 8. CONCLUSION
89
APPENDIX
APPENDIX
Appendix 1. Configurations of BionicFin Wave.
Parameters Values
Body dimension 37 𝑐𝑚 × 19 𝑐𝑚 × 5 𝑐𝑚
Total mass 0.43 𝑘𝑔
Number of fins 2
Membrane material 𝑠𝑖𝑙𝑖𝑐𝑜𝑛𝑒
Number of fins/Number of motors 18/2
Wave number of each membrane 2
Maximum amplitude (𝜃𝑚𝑎𝑥 ) 450
Frequency (𝑓) 0.5 − 2 𝐻𝑧
90
APPENDIX
91
APPENDIX
92
APPENDIX
REFERENCE
[1] G. V. Lauder, “Fish locomotion: Recent advances and new directions,” Ann
Rev Mar Sci, vol. 7, pp. 521–545, Jan. 2015, doi: 10.1146/annurev-marine-
010814-015614.
[2] W. S. Hoar, D. J. Randall, and F. P. Conte, Fish physiology. Academic
Press, 1969.
[3] H. S. Kim, J. Y. Lee, W. S. Chu, and S. H. Ahn, “Design and Fabrication
of Soft Morphing Ray Propulsor: Undulator and Oscillator,” Soft Robot,
vol. 4, no. 1, pp. 49–60, Mar. 2017, doi: 10.1089/soro.2016.0033.
[4] K. B. Ånonsen, K. Hagen, and E. Berglund, “Autonomous Mapping with
AUVs Using Relative Terrain Navigation.”
[5] A. M. Bradley, M. D. Feezor, H. Singh, and F. Y. Sorrell, “Power systems
for autonomous underwater vehicles,” IEEE Journal of Oceanic
Engineering, vol. 26, no. 4, pp. 526–538, Oct. 2001, doi:
10.1109/48.972089.
93
APPENDIX
94
APPENDIX
95
INTRODUCTION TO BIOMIMETIC UNDERWATER ROBOTS PHYLOGENY STRUCTURE OF RAJIFORMES
STUDY ON DESIGNING BIOMIMETIC FISH ROBOTS
Types of Biomimetic Underwater Robots Rajiformes is one of the four orders within the superorder Batoidea, which includes flattened
BASED ON CONTINUOUS MEMBRANE MODEL cartilaginous fishes such as rays and skates. These fishes are closely related to sharks and
are characterized by their unique morphology and locomotion. One of the most distinguishing
BCF MPF JET features of Rajiformes is their significantly enlarged pectoral fins. These fins extend to the
(Body/Caudal Fin) (Median/Paired Fin) (Jet propulsion) sides of their heads, providing a broad surface area that aids in swimming. Additionally,
Rajiformes have a flattened body shape, which allows them to glide smoothly through the water
Oscillatory Undulatory Oscillatory Undulatory
DESIGNING SCOPE and maneuver effectively near the ocean floor
(BCF-O) (BCF-U) (MPF-O) (MPF-U) The scope of this thesis is to design an Undulatory Rajiform-like Batoidea
Example:
Robot using Continuous Membrane Configuration. Torpediniformes Rhinopristiformes Rajiformes Myliobatiformes
Example: Example: Example: Example:
Thunniform Anguilliform Labriform Rajiform Octopus
THE SUPERIORITY OF UNDULATORY SWIMMING CHARACTERISTICS OF RAJIFORM-LIKE SPECIES CONTINUOUS MEMBRANE CONFIGURATION
BOUNDARIES OF PECTORAL FIN LOCOMOTION BIOLOGICAL STRUCTURE OF A TYPICAL RAJIFORM CLASSIFICATIONS OF MEMBRANE CONFIGURATIONS
Swimming direction 2. Main body
SWIMMING MODE WAVE NUMBER TYPICAL SPECIE 1. Membranes A. Continuous Membrane B. Discrete Membrane
G. micrura
1. Membranes:
OSCILLATORY BELOW 0.75 G. micrura
The large, wing-like pectoral fins
INTERMEDIATE 0.75 TO 1.5 D. american are crucial for the ray's unique 3. Tail
mode of locomotion. By undulating
UNDULATORY ABOVE 1.5 Rajiformes D. american these fins, rays generate lift and
propulsion, allowing them to glide
Undulatory motion
gracefully through the water.
A study has delineated the different modes of pectoral Why Continuous Membrane has been chosen?
fin locomotion in batoid fishes based on their wave number, Rajiformes 1. In a paper, the authors highlight that continuous fin designs offer superior control over
2. Main Body: 3. Tail:
establishing a clear boundary between undulatory, thrust and lift forces compared to segmented or rigid fin structures.
The flattened, broad disc of the Some rays (stingrays) have a venomous 2. Another study presents a soft robotic fish with a continuous fin membrane, demonstrating its
intermediate, and oscillatory motion. ray's body provides a streamlined barb on their tail to defend themselves. ability to perform rapid escape maneuvers and navigate through obstacles with high agility,
For instance, in another paper, researchers have demonstrated that such locomotion can shape that reduces drag and However, Scientists have found that the emphasize the importance of the flexible fin design leading to more efficient and adaptive
enhances hydrodynamic efficiency. tails of Rajiforms appear to serve no
improve propulsion efficiency and enhance the robot's ability to make sharp turns and sudden robotic systems.
function in swimming.
directional changes.
DESIGN SPECIFICATION
DIRECTIONAL SWIMMING CONTROL OF RAJIFORM SPECIES USING FREQUENCY VARIATIONS 1. Design a robot mimicking the undulating membrane motion of Rajiform-like species with 2 main
Rajiformes exhibit phase differences between the left and right pectoral segments: Main body with (L=1.32m), continuous membrane with maximum dimension of (L=1.32m,W=0.40m).
Undulatory Motion
2. Design a robot operating for 5 hours underwater at maximum depth of 1m, wirelessly controlled
fins during swimming, significantly impacting their stability and with Lower Frequency
by a command station with maximum distance of 1000m. The robot can reach maximum translational
maneuverability with the maximum frequency of each membrane motion of velocity of 1m/s, rotational velocity of 18°/s with minimum positioning precision of 22m (approximately
Undulated Motion
2Hz. Another study showed that a phase difference of 0.5Hz enhances with Higher Frequency 2.2% total maximum travelled distance).
swimming stability by reducing oscillations, while phase differences of 3. Design a 6-DOF simulation system mimicking the underwater environment to verify the robot
0.25Hz and 0.75Hz improve maneuverability, aiding in directional changes. Forward In-place Turning Rising Motion Diving Motion hydrodynamics and controller system.
Direction of motion
Motion rotation Motion
TRANSMISSION TYPE SELECTION POWER SELECTION CONTROL SCHEMES OPERATION MODES OF THE ROBOT
Structure Description Advantages Disadvantages Control Station
Calibration procedure
low energy
Direct Communication
Alkaline
Start main program Start subprocess
Silicone Fin Membrane
• Long shelf life. density compared to other
Clamp detail Ground
• No maintenance required. types.
Single motor for whole membrane
Lead Acid
calibrated? to 0 degree
Advantages Disadvantages • Reliable, suitable for high energy stored. Under-water transmission
• Simplifies the mechanical • A single motor cannot current with short period • Limited cycle life than Yes
design and control system, provide fine-tuned control application (e.g., vehicle other rechargeable types. Start subprocess
Synchronization
reducing the number of over individual sections of starting).
procedure
components and potential the membrane, limiting the Advantages Disadvantages
Ground
Synchronization procedure
Air-water Boundary
points of failure. precision and range of No
• Lighter overall design, possible movements • Simple configuration. • Relatively low performance Intermediate Station Water
Start subprocess
• Ability to operate without when being compared to
Ni-Cd
Membrane
Advantages Disadvantages Trajectory Translational
controller motion Initialize timer with
• High energy density. • Requires protection circuit
Silicone Fin
Clamp detail specific timeout
• Light-weight and compact.
Fin Fin Fin Fin
Li-po
Single motor for each fin-ray
Manual Mode
performance over time. directly to the robot, controlling its movements and response? reached?
actions in real-time. Ideal for tasks that require a high
Advantages Disadvantages Yes Yes
degree of reliability, human intuition, or immediate No Termination
• Individual motors for each • Increase the complexity of Despite the drawbacks of individual motors for each fin-ray,
adaptability, such as exploration, inspection, or intricate command? Re-assign all
fin-ray allow for precise the mechanical design and manipulation tasks. variables in code
the superior control and maneuverability afforded by individual Yes
control over the movement electronic design. The operator defines a specific path or destination for
Trajectory Mode
motors for each fin-ray are crucial for tasks requiring precise
and position of each • Additional motors add more and adaptive movements. Therefore, choosing the single motor the robot to follow, which can be programmed using End main program End subprocess
segment, enabling more weight to the design, which for each fin-ray configuration is justified by its ability to various input methods such as graphical interfaces,
complex and natural can reduce efficiency and provide the flexibility in control necessary for advanced coordinate inputs, or predefined routes. Ideal for
movements. agility. robotic applications. applications such as automated inspections, or any task
where a predefined path ensures efficiency.
FIN ACTUATOR SELECTION MECHANICAL DIAGRAM OF THE ROBOT ELECTRICAL DIAGRAM OF THE ROBOT
Advantages Disadvantages Signal line
DC Servo Motor
Advantages Disadvantages
DC Stepper Motor
…...
DC Servo Motors
Pressure Sensor
Clamp Detail
Main controller
• Simple open-loop control.
Locale module
limitations. …...
IMU Sensors
Controllers
Actuators
• High torque at low speeds. • Losing synchronization at
Sensors
high speeds or under load.
Advantages Disadvantages …...
• High performance due to • More
BLDC Motor
complex control
electronics compared to Fin Module
efficiency and reliability.
• Low maintenance effort (no brushed DC motors.
brushes to wear out). • Higher initial cost. Study on designing biomimetic fish robot based on
continuous membrane configuration
Graduation thesis
• Quiet operation. Function
Designer
Name
T.V. Quang Huy
Sign Date
DESIGN Quantity Mass Scale
1
ALTERNATIVES Sheet: 1 Total: 8
Instructor N. Tan Tien
D. Van Tu DRAWING Ho Chi Minh City
University of Technology
Checker N. Tan Tien Mechanical Faculty
D. Van Tu Mechatronics
Initialization procedure
Start subprocess
Calibration procedure
Timer Module Start subprocess
Initialization
Initialize local and procedure Iterate each fin-ray
global variables motor
Calibration
procedure
Start Communication Set motor angle
Protocols and Timer No to 0 degree
Are fins
calibrated?
Synchronization
procedure
Synchronization procedure
Start subprocess
No
Trajectory controller
Start subprocess
Trajectory No Manual Request message to
mode ON? mode ON? server
Feed translational
and angular errors Yes Yes
Initialize timer with
Trajectory Translational specific timeout
Calculate sliding controller motion
surface No
Server No Is timeout
Orientational
Apply SMC Control response? reached?
motion
Algorithm
Yes Yes
End subprocess
6
5
260
4
3
∅75 ∅38
∅150 H7/h6
∅55 H7/h6
∅140
∅150
165
2 ∅40
1
615 210
1240
P
21
21
16
15
5 H7/h6
∅20 H7/h6
24 25
A
8 H7/h6
440
735
125 135 135
N.V.B.Duong
FR(CFM)C1-01-0000 Class CC18CDT1
Student's ID : 1852415
26/08
435
8 h6 125 135 135 260
5
150
550
21
7 9 15 14
24
23
∅40 H7/h6
∅65 H7/h6
∅52 H7/h6
∅42 h11
∅55 H8
22
210
21
20
∅65 H7/h6
25 21 FR(CFM)C1-02-0021 Socket bolt M5x20 8 Inox MISUMI, SBM5x20
Electric box Workshop
26 20 FR(CFM)C1-02-0020 2 Plastic
19 FR(CFM)C1-02-0019 Nut M5 16 Inox MISUMI, NM5
13
18 FR(CFM)C1-02-0018 Metric taper shaft M5 4 C45 MISUMI, MM5
12 27
17 FR(CFM)C1-02-0017 Main frame 8 6061 Aluminium Workshop
∅25 H7/h6
15 FR(CFM)C1-02-0015 Oil seal 8 Rubber SKF, HSM5 4252
10
14 FR(CFM)C1-02-0014 Motor 8 6061 Aluminium TINSMITH, OD30-42
9 13 FR(CFM)C1-02-0013 Split washer M3 64 Inox MISUMI, SW3x50
8 28 12 FR(CFM)C1-02-0012 Socket shoulder bolt M3x50 64 Inox MISUMI, SSM3x50
11 FR(CFM)C1-02-0011 Washer M3 64 Inox MISUMI, WM3
7
10 FR(CFM)C1-02-0010 Socket shoulder bolt M3x30 64 Inox MISUMI, SSM3x30
6 29
9 FR(CFM)C1-02-0009 Housing motor's 1 8 6061 Aluminium Workshop
5 I ∅10 H7/k6 30 8 FR(CFM)C1-02-0008 Socket bolt M5x40 32 Inox MISUMI, SBM5x40
7 FR(CFM)C1-02-0007 2nd Finray 2 C45 Workshop
6 FR(CFM)C1-02-0006 Criclip shaft ∅10 16 C45 MISUMI, CS10
4 5 FR(CFM)C1-02-0005 Plastic sleeve GFM10 1 Plastic Igus, GFM10-11-55
4 FR(CFM)C1-02-0004 Nut M5 40 Inox MISUMI, NM5
3
3 FR(CFM)C1-02-0003 Washer M5 72 Inox MISUMI, W5
2 33 16xM5 ∅10 H7/h6 32 31 ∅11 H7/k6 ∅10 H7/h6
∅11 H7/h6 2 FR(CFM)C1-01-0002 Socket bolt M5x25 40 Inox MISUMI, SBM5x25
1
TECHNICAL REQUIREMENTS: 1 FR(CFM)C1-01-0001 1st Finray 8 6061 Aluminium Workshop
No. Symbol Name Q.ty Material Notation
1. Install motors and housing must be checked for water resistance DESIGN AND RESEARCH ON BIOMIMETIC FISH ROBOT BASED
ON CONTINUOUS FIN MODEL GRADUATION THESIS
2. Do not tighten M5 nut to create space between main frames Sign. Quantity Weight
Func. Full name Date Scale
Design T.V.Q.Huy
2 3.6 1:1
Finray module
Instruct. N.T.Tiến Sheet: Total sheets:
HCMC University of Technology
Approve. N.T.Tiến Mechanical Engineering Faculty
D.V.Tú
N.V.B.Dương
FR(CFM)C1-01-0001 Class CC18CDT1
Student's ID : 1852415
26/08
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
De i n Bi i e i Fi R
u in C n inu u Me ne C n i u i n G u i n T e i
Fun . Fu n e Si n D e Qu n i y ei S e
De i ne T.V.Q.Huy
ELECTRICAL 1
T In u . N.T.Tien SCHEMATIC S ee 1 T ee 8
D.V.Tu
A e.
HCMC ni e i y Te n y
N.T.Tien
Me ni F u y
D.V.Tu
Me ni En inee in
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
VC14
VS4
VS6
VS10
VS5
VC15
VC13
VS9
VS8
VS7
VS11
VC12
VC16 VC3
GND +5.0VDC_CTRL 26-N BMS_BAT BAT VC2
IRF540NS IRF540NS BMS_CP1 1k
BMS+ 26-N CP1 VC1
3-B 26-N BMS_CHG CHG VC0
U1 RASPBERRY_PI_4B+ MM5Z5V1T1G Z4
NC_2 VSS
3.3V 5V 26-N BMS_DSG DSG SRP
Q9 Q10 BMS_PACK BMS- R13 BAT_P3
E ADJUSTABLE BUCK SDA1
SCL1
5V
GND
R29
100
R30
100
R31
1k
R32
1k
26-N
26-N BMS_LD PACK
LD
NC_1
SRN
6-N
100
20-L
RST_SHUT
BMS_S1
CONVERTER GPIO04 TXD0 PCHG TS1 21-G
DFETOFF
CFETOFF
GND RXD0 BMS_S2
PDSG TS2 21-G R14 100 C14
ALERT
BMS_LD BMS_S3
REGIN
BMS_FUSE
DDSG
DCHG
REG2
GPIO17 GPIO18 21-E
REG1
26-N FUSE TS3 21-G 100uF
SDA
HDQ
SCL
BMS_PACK Q5
GPIO27 GND 21-E BREG REG18 C15 R15
GPIO22 GPIO23 R16 AO3400A
100uF 0.001
3.3V GPIO24 BMS_CHG BMS_DSG
21-E 21-E 1k
GPIO10 GND BMS_REGIN
GPIO09 GPIO25 26-N BMS_ALERT
BMS_REG1 BMS_SCL 21-D
GPIO11 GPIO08 26-N 21-D MM5Z5V1T1G Z5
BMS_SDA R17 100
GND GPIO07 21-D
F ID_SD ID_SC BMS_CFETOFF 21-D R18 BAT_P2
GPIO05 GND BMS_DFETOFF BAT_N1 20-L
21-D
GPIO06 GPIO12 BMS_RST 21-D 27-H 100
GPIO13 GND
CAM1_DN0
CAM1_DP0
CAM_GPIO
CAM1_DN1
CAM1_DP1
C17
CAM_CLK
CAM1_CN
CAM1_CP
GPIO19 GPIO16 Q6
GPIO26 GPIO20 100uF
SDA0
AO3400A
SCL0
3.3V
GND
GND
GND
GND
GND GPIO21 R21
1k
G MM5Z5V1T1G Z6
R25 BAT_P1
GND 20-L
100
J16 C21
BMS+ 100uF
2 25-H Q7
1 BMS- 27-H R27 AO3400A
1803277 1k
H
MM5Z5V1T1G Z7
R28
ESP32-WROOM-32E
BAT_N1
+3.3VDC_CTRL 3.3V 20-L
SDA0 100
Q12 BC817 +3.3VDC_CTRL SCL0
R38 CAM_CLK
CAM_GPIO
300 GND C22 100uF
LED6 CAM1_CP
R39 CAM1_CN
I 4k7
GND
U8 FOD817A3SD GND
26-N
CAN_H R40 GND CAM1_DP1 BATTERY MANAGEMENT SYSTEM
CAM1_DN1
Q13 BC817 300 GND
R41 CAN_H_CH01 CAM1_DP0
26-L CAM1_DN0
300
LED7 GND
U9 FOD817A3SD
CAN_L GND
26-N
J GND
R42
1k +3.3VDC_CTRL R43 CAN_L_CH01
26-L
4k7
MAIN CONTROLLER MODULE
GND
WITH CAMERA CONNECTION
BMS+ 3-B
K
+5.0VDC_CTRL
ISOLATION MODULE FOR
CAN-BUS CONNECTION LED10
L1I0
LED10
L1I0
LED10
L1I0
LED10
L1I0
LED10
L1I0
R10 D10
CDBA340
560
U10 FOD817A3SD
L LED10 LED10 LED10 LED10
J6 L1I0 L1I0 L1I0 L1I0
IRF540NS
8 BAT_P7 22-B BMS-
BAT_P6 26-H Q10
7 23-B
6 BAT_P5 25-B
BAT_P4 R11 R12
5 26-C
4 BAT_P3 27-D
3 BAT_P2 27-E 10k 10k
BAT_P1 GND
2 BAT_N1 27-F
1 27-F
M
S8B-XH-A
BMS+ 25-H
-t°C
-t°C
ISO_SCL2
14-E
VS4
VC14
VS6
VS10
VS5
VC15
VS9
VS8
VC13
VS11
VS7
VC16
VC12
RESET 0.1uF IO35 IO19 22-B VC3
26-N BMS_BAT BAT VC2 1k
GND BTN IO32 NC BMS_CP1
IO33 IO21 MCU_IO21 22-B 26-N CP1 VC1
MCU_RX0 26-N BMS_CHG CHG VC0
IO25 RXD0 18-F MM5Z5V1T1G Z4
IO26 TXD0 MCU_TX0 18-F NC_2 VSS
MCU_IO22 26-N BMS_DSG DSG SRP
GND IO27 IO22 22-B BMS_PACK BMS- R13 BAT_P3
IO14 IO23 MCU_IO23 22-B 26-N PACK NC_1 6-N 20-L
26-N BMS_LD SRN
IO12 GND_3 LD 100
RST_SHUT
BMS_S1
PCHG TS1 21-G
DFETOFF
R10 GND_2 GND_4
CFETOFF
BMS_S2
PDSG TS2 21-G R14 100 C14
ALERT
IO13 GND_5 BMS_S3
REGIN
BMS_FUSE
DDSG
DCHG
REG2
J2 MCU_IO09
REG1
26-N FUSE TS3 21-G 100uF
SDA
HDQ
+BMS 26-N
SCL
E +5.0VDC_CTRL 75 MCU_IO10 SD2 GND_6 Q5
26-N SD3 GND_7 BREG REG18 C15 R15 R16
2 U4 TPS5430MDDAREP C11 LED3 MCU_IO11 +3.3VDC_ESP 100uF 0.001 AO3400A
1 L2 26-N MCU_IO06 CMD GND_8
PH BOOT 26-N CLK GND_9 LED4 1k
26-N MCU_IO07 SD0 GND_10 BMS_REGIN
61300211121 VIN NC_1 10uH MCU_IO08 26-N BMS_ALERT
10nF 26-N SD1 GND_11 R19 BMS_REG1 BMS_SCL 21-D
GND NC_2 D2 MCU_IO15 FLASH 26-N 21-D 100 MM5Z5V1T1G Z5
C12 R12 26-N IO15 GND_12 BMS_SDA R17
ENA VSENSE CDBA340 C13 MCU_IO02 PORTS 21-D
560uF 10k 26-N IO2 75 BMS_CFETOFF
47uF 21-D R18 BAT_P2
PE GND ESP32-WROOM-32E 4 BMS_DFETOFF BAT_N1 20-L
GND MCU_TX0 21-D
3 15-D BMS_RST 21-D 27-H 100
9 MCU_RX0 15-D
2
F 1 C17
GND LED5 100uF Q6
R22 AO3400A
75915-304LF R21
BMS-
26-H 75 1k
R32
10k MM5Z5V1T1G Z6
GND GND GND
+5.0VDC_CTRL BMS_FUSE BMS_CP1 R25
21-F 21-E BAT_P1
20-L
G 100
R24
LS1 100 C19 C21
D3 BMS_BAT 100uF
+ 21-E Q7
U6 SHT31 R27
- 100uF AO3400A
26-L SDA_CH02 SDA VSS
1N4148W BMS+ Q8 GND 1k
WT-1205 ADDR R 25-H D3 C20
BUZZER_01
26-L SCL_CH02 ALERT NRESET MM5Z5V1T1G Z7
R20 R37 Q11 26-L SCL VDD
+3.3VDC_CTRL IRF540NS SS34A 100uF R28 BAT_N1
H 390 PE +3.3VDC_CTRL 500 500 500 20-L
LED1 1k R26 R27 R28
BC817 IRF540NS IRF540NS 100
R23 BMS_S1 BMS_S2 BMS_S3 BMS+
24-D 24-D 24-D 3-B
+5.0VDC_CTRL GND
C23 100nF
820 NTC 10K NTC 10K NTC 10K
-t°C
-t°C
-t°C
LED2 GND GND Q9 Q10 C22 100uF
R175 R177 R179 R29 R30 R31 R32
GND 100 100 1k 1k
BMS_LD
BMS_PACK 21-E
I GND GND GND 21-E
BMS_CHG BMS_DSG
21-E 21-E
DUAL-OUTPUT
BUCK CONVERTER MAIN CONTROLLER
AND PERIPHERALS BATTERY MANAGEMENT SYSTEM
J
+3.3VDC_CTRL
1 27-F 1 27-F
GND
BMS_REGIN MCU_IO09
22-E 14-E
BMS_REG1 MCU_IO10
22-E 14-E
O BATTERY CONNECTION 24-E
BMS_RST MCU_IO11
14-E
FOR BMS MODULE 24-E
BMS_DFETOFF MCU_IO06
14-E
BMS_CFETOFF MCU_IO07
24-F 14-E
+3.3VDC_CTRL BMS_SDA MCU_IO08
24-F 14-E
J4
J15 BMS_SCL MCU_IO15
J13 J14 J15 J16 BMS+ MP1 1 SDA_CH01 24-F 14-E
BMS+ BMS+ BMS+ BMS+ 2 25-H MP2 2 26-L BMS_ALERT MCU_IO02
P 2 25-H 2 25-H 2 25-H 2 25-H 1 BMS- 27-H 3 SCL_CH01 26-L
BMS- BMS- BMS- 1 BMS- 27-H 24-F 22-B
1 27-H 1 27-H 1 27-H 4
1803277
1803277 1803277 1803277 1803277 S4B-XH-SM4
GND
+3.3VDC_CTRL
J8
+3.3VDC_CTRL
1
Q
J7
1 2 ANALOG_CH01 26-L MCU PIN-BINDING
+3.3VDC_CTRL MP1 1 3
J3 MP2 2
3
2
3
SDA_CH02
SCL_CH02
26-L
26-L S3B-XH-A
CONFIGURATION
MP1 1 4
SDA_CH01 4
MP2 2 26-L R45
J14 SCL_CH01 S4B-XH-SM4 10k
BMS+ 3 26-L
J18 J19 J20 J21 2 25-H 4
1 BMS- 27-H GND
CAN_H CAN_H CAN_H CAN_H S4B-XH-SM4
1 13-M 1 13-M 1 13-M 1 CAN_L 13-M
2 CAN_L 13-N 2 CAN_L 13-N 2 CAN_L 13-N 2 13-N 1803277
3 3 3 3 GND
R
S3B-XH-A S3B-XH-A S3B-XH-A S3B-XH-A GND
GND GND GND GND