1. Trang chủ
  2. » Luận Văn - Báo Cáo

Report of subject industrial motion control system topic controlling dc motor using trapezoidal velocity profile

13 17 1
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Controlling DC Motor Using Trapezoidal Velocity Profile
Tác giả Nguyễn Ngọc Khoa
Người hướng dẫn PhD. Nguyén Duy Anh
Trường học Ho Chi Minh City University of Technology
Chuyên ngành Industrial Motion Control System
Thể loại report
Năm xuất bản 2024
Thành phố Ho Chi Minh City
Định dạng
Số trang 13
Dung lượng 2,35 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Setting the diagram and try default settings To satisfy the requirements, here is my diagram in Simulink Position Control of a DC Motor a Figure 1.1: Simulink diagram using Trapezoi

Trang 1

VIETNAM NATIONAL UNIVERSITY HO CHI MINH CITY

HO CHI MINH CITY UNIVERSITY OF TECHNOLOGY

REPORT OF SUBJECT: INDUSTRIAL MOTION CONTROL SYSTEM

TOPIC:

CONTROLLING DC MOTOR USING TRAPEZOIDAL VELOCITY PROFILE

Class: CCO1 - Semester: 241

Instructor: Phd Nguyén Duy Anh

Nguyễn Ngọc Khoa 2053139

HO CHI MINH CITY, 2024

Trang 2

Requirement:

Apply the trapezoidal velocity profile to control the position and velocity of the DC motor

from slide 27 There are three points: A, B, and C The motor should move sequentially

from point A to point B, then from point B to point C Draw a graph showing the position

and velocity clearly over time

1 Setting the diagram and try default settings

To satisfy the requirements, here is my diagram in Simulink

Position Control of a DC Motor

a

Figure 1.1: Simulink diagram using Trapezoidal Velocity Profile block

Firstly, | will keep the Default Setup for the Trapezoidal Velocity Profile block with three

points A, B, C chosen at -10, 9 and 15 accordingly The Stop Time | choose for this is 3 second

Trapezoidal Velocity Profile Trajectory Generate trajectories through multiple waypoints using trapezoidal velocity profiles

Specify an [NxP] matrix of P waypoints with N axes to generate trajectories that pass through

the P waypoints using trapezoidal velocity parameters Set Waypoint source to External to accept them as a block input Use the Number of parameters popup to select the total

number of parameters, then specify the parameters using the popups for Parameter 1 and

Parameter 2 The corresponding parameter values can be specified as scalars, an Nx1 vector,

or an [Nx(P-1)] matrix The scalar applies the same parameters to all N axes and P

waypoints The vector applies the N parameters to all N axes The matrix applies the

parameter set for each of the N axes and P-1 segments of the trajectory

After the trajectory is completed, the final values are held constant

Waypoints Waypoint source: Internal

Waypoints: [0, -10, 9, 15]

Parameters

Number of parameters: 0 Simulate using: Interpreted execution

OK Cancel Help

Figure 1.2: Trapezoidal Velocity Profile bl ock parameters Here is the Velocity and Position Graph after running the system:

Trang 3

Figure 1.3: The position graph

Figure 1.4: The velocity graph

The position graph reveals that the motor transitions smoothly from the starting point (0), initially moving downward to point A at -10 After reaching point A, the motor reverses direction and moves upward, reaching point B at 9 and then continuing to point C at 15 The motor’s movements are smooth and controlled, with no abrupt changes in direction or

speed, which indicates effective application of the Trapezoidal Velocity Profile for precise

position control

Trang 4

For the Velocity graph the trapezoidal profile exhibits characteristic phases of acceleration, constant velocity, and deceleration to reach each point A, B and C

For the motor to get to the A, it first accelerates in the negative direction, reaching a

velocity of -15 units/s It then maintains at this constant negative velocity for

approximately 0.5 seconds The motor then decelerates smoothly, bringing the velocity back to zero, preparing for a direction change

For the next two waypoints, B and C, the motor's velocity follows a similar pattern

2 Changing the parameters of the Trapezoidal Velocity block and observe the

results

Now, | will start changing the parameters in the Trapzoidal Velocity block with the following number:

Acceleration Time = 0.2; The End Time and others still keep at default Here is the result of the Velocity graph:

Figure 2.1: The velocity graph after changing the Acceleration Time a

Because | set the Acceleration time = 0.2, we can observe the the system accelerate and deaccelerate more sharply than the default setup Obviously, the constant velocity period

in each segment is longer than default one (0.6 seconds)

Trang 5

Next, | will try setting Acceleration Time = 0.2 but with the Peak Velocity = 30

Since | didn't set the End Time for this, the system automatically adjusted it to match my

setup for Acceleration Time and Peak Velocity In all three segments, the speed increases

sharply, reflecting quick acceleration, followed by abrupt decelerations Notably, in the

last segment, there is no constant velocity period, meaning the system accelerates and then immediately decelerates

In real life applications, reduce the acceleration time would make the system experiences

higher acceleration rates Highly dynamic system with minimal smoothing, which can

cause mechanical stress or control challenges due to the sudden transitions

e Robotic Arm (Industrial or Medical Applications)

© Ifarobotic arm is required to move between two positions at high speed with

a very short acceleration time, the rapid change in velocity can cause a sudden jerk that leads to mechanical fatigue in the joints, gears, and linkages, particularly when handling heavy loads

e CNC Machine (Milling, Cutting)

o CNC machines that cut, drill, or mill materials require precise control over both the position and speed of the tool to ensure accuracy If the acceleration

is set too high, the tool head may overshoot its target or induce vibrations,

leading to imprecise cuts and poor surface finishes Additionally, the tooling

or cutting bit can be subjected to excessive force, causing it to wear out quickly or even break under the stress

Trang 6

e Elevator System

o In an elevator, rapid acceleration can cause a jerky experience for passengers, leading to discomfort or even injury, particularly for the elderly

or those with mobility issues Additionally, the sudden forces can put stress

on the elevator’s drive system, cables As a result, the elevator may require

more frequent maintenance or, in extreme cases, risk system failure,

potentially creating dangerous operating conditions and posing a significant

safety hazard

3 Relationship between Peak Velocity, End Time, and the distance between

waypoints

lf | keep the previous setup of Acceleration Time = 0.2, Peak Velocity = 30 but change

PeakVelocity*EndTime/2 must be less than or equal to q(end)-q(9

Figure 3.1: The error appear when try running the system with the above setup

To explain this error, first | will calculate the distance between waypoints | use From the beginning, | always keep the same waypoints of [ 0, -10, 9, 15]

- From 0 to -10: Distance = 10 units

- From -10 to 9: Distance = 19 units

- From 9 to 15: Distance = 6 units

The system is checking if the product of PeakVelocity * EndTime / 2 for each segment is

less than or equal to the distance between waypoints For example, in the first segment, my

Peak Velocity is 30 and EndTime is 1, then:

30 x1

In the segment from 0 to -10, the distance is only 10 units However, the system is attempting to accelerate and decelerate too rapidly based on the set parameters, and the calculated distance (15 units) exceeds the actual available distance of 6 units

So when using the Trapezoidal Velocity Profile to control motor position, it's essential to

carefully consider the distance between waypoints when setting the Peak Velocity and End

Time These parameters must align with the available distance between waypoints to ensure the system operates smoothly and avoids errors

Trang 7

4 Using Trapezoidal Velocity Profile to control a3 DOF SCARA Robot

For this section, | will implement the Trapezoidal Velocity Profile to control a 3 DOF SCARA Robot in performing a pick-and-place operation The robot will smoothly accelerate, move to pick up the object, and then transport it to the designated drop-off

point, ensuring precise and controlled motion throughout the process

Figure 4.1: The Simulink diagram to control the robot

©

Figure 4.2: The motion of the robot in Simscape animation

Trang 8

4.1 Working principle of the system

This system controls a robotic arm by utilizing a Trapezoidal Velocity Profile to generate

a smooth motion trajectory, including position, velocity, and acceleration profiles The aim

of this system is to control the robot to pickup the object from one place and dropping it in the other place The Trapezoidal Velocity Profile ensures that the motion is gradual and avoids abrupt changes, allowing for controlled acceleration and deceleration phases

The inverse kinematics block then converts the desired end-effector position from Cartesian coordinates into the necessary joint angles and prismatic extension to move the

arm These joint positions are fed into the robot control block, which commands the

actuators to follow the trajectory

The forward kinematics block calculates the actual end-effector position based on the joint

angles, while the Jacobian matrix computes the corresponding velocities Throughout the process, feedback loops compare the desired and actual positions and velocities, allowing real-time error correction The use of the Trapezoidal Velocity Profile helps achieve

smooth and precise movements of the robotic arm by optimizing the transition between

acceleration and deceleration phases

4.2 Setting the Trapezoidal Velocity Profile block

Figure 4.3: Waypoint trajectory

So the input will be a [8 x 3] matrix and setting the End Time = 0.5 to align with the time

intervals shown in the table, from one waypoint to another will take 0.5 seconds

Trang 9

Trapezoidal Velocity Profile Trajectory Generate trajectories through multiple ypoints using trapezoidal velocity profiles

Specify an [NxP] matrix of P waypoints with N axes to generate trajectories that pass through the P waypoints using trapezoidal velocity parame Set Waypc

them as a block input Use the Number of parame 5 popup to se

parameters, then specify the parameters using the popups for Parameter 1 a

Corresponding parame in be specified as scalars, an Nx1

» parameters to all N axes and P

› to External to accept

m trix The scalar apr

the N param

P-1 segments o

points The vector applies

to all N axes The matrix applies the parameter set for each of the N axes and

After the trajectory is completed, the final values are held constant

Waypoints Waypoint source Internal xv

Waypoints wp

Parameters

Number of parameters 1 ’

1 End Time x*

Parameter source Internal ’

End time: 0.5

Simulate using Interpreted execution x

Figure 4.4: Trapezoidal Velocity block parameters

4.3 Result

Choosing the Stop time = 3.5 seconds, here is the result of position and velocity graph

@ Scope - n x File Tools View Simulation Help x

|Ready Sample based T=3.500

Figure 4.5: The position graph

Trang 10

Figure 4.6 The velocity graph

We can easily observe that for both position and velocity graph, the desired and actual

position closely follow each other The yellow and blue lines representing the desired and actual positions, respectively, are almost identical across all three axes (X, Y, and 2), indicating that the system is accurately tracking the desired trajectory

5 Change the control method of the robot and observe the result

Now, | will replace the Trapezoidal Velocity Profile block with the Signal Editor block (The input block in the left) to indicating the importance of using Trapezoidal Velocity in control the 3 DOF SCARA Robot

10

Trang 11

RSTZ

cS RST A rob

“e—=© Ka || >) Matix

>| Config, Jacobian >| Multiply

Demux

EE: Body4

Figure 5.1: The simluink diagram when replace the Trapezoidal Velocity block

Since the working principle of this diagram is the same as above, so | don’t explain again Here is the result of position and velocity graph:

Ready Sample based T=3.S00

Figure 5.2: The position graph

For this position graph, we can see that when not using the Trapezoidal Velocity Profile,

the system shows sharper transitions, indicating that it is moving more abruptly between

waypoints

11

Trang 12

Figure 5.3: The velocity graph

The velocity graph from the Signal Editor clearly shows a discontinuous behavior, with

abrupt changes in velocity across all three axes (X, Y, and Z) These sudden transitions

between motion states reflect an unrealistic velocity profile that would be impractical in

real-world robotic applications

In practice, such discontinuous velocity profiles are unachievable because the system

cannot instantaneously jump between different speeds These abrupt changes would place

significant strain on the robot’s motors, joints, and other mechanical components, leading

to accelerated wear and tear, reduced lifespan, and potentially unstable operation

For smooth and efficient motion, robots require a gradual acceleration phase where the

velocity ramps up from zero, reaches a desired speed, and then maintains that velocity for

a period before decelerating This is where Trapezoidal Velocity control becomes essential,

as it ensures smooth transitions between motion states, minimizes mechanical stress, and provides a more stable and controlled movement

6 Conclusion

In conclusion, my report have fully satisfied the requirements of using Trapezoidal Velocity Profile to control the direction of DC motor through 3 points A, B and C respectively

12

Ngày đăng: 19/12/2024, 15:43

🧩 Sản phẩm bạn có thể quan tâm

w