You are on page 1of 36

MỤC LỤC

Chương 1. TỔNG QUAN....................................................................................2


1.1. Đặt vấn đề..................................................................................................2
1.1.1. Tình hình nghiên cứu robot 2 bánh tự cân bằng hiện nay..................2
1.2. Mục tiêu.....................................................................................................4
1.3. Nội dung nghiên cứu.................................................................................4
1.4. Giới hạn.....................................................................................................7
Chương 2. CƠ SỞ LÝ THUYẾT.........................................................................8
2.1. Mô hình toán học của hệ xe......................................................................8
2.2. Giải thuật điều khiển bộ điều khiển PID.................................................12
Chương 3. GIỚI THIỆU CÁC LINH KIỆN CHÍNH........................................13
3.1. Arduino Nano CH340.............................................................................13
3.2. Bo mạch cnc shield v4............................................................................14
3.3. Mạch điều khiển động cơ bước A4988...................................................15
3.4. Cảm biến góc nghiêng 6050....................................................................16
3.5. Board bluetooth HC-05...........................................................................19
3.6. Động cơ bước..........................................................................................20
Chương 4. THI CÔNG HỆ THỐNG..................................................................21
4.1. Yêu cầu hệ thống.....................................................................................21
4.2. Thiết kế phần cứng..................................................................................22
4.3. Kết nối phần cứng...................................................................................23
4.4. Giao diện điều khiển...............................................................................25
Chương 5. KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ.......................................26
5.1. Kết quả đạt được.....................................................................................26
5.2. Nhược điểm của đề tài.............................................................................26
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.......................................27
6.1. Kết luận...................................................................................................27
6.2. Hướng phát triển của đề tài:....................................................................27
Tài liệu tham khảo..............................................................................................28
LỜI CẢM ƠN

Thông qua quá trình thực hiện đồ án, em đã được tạo điều kiện để tổng hợp và ôn
lại kiến thức tôi đã học, và thu thập và bổ sung kiến thức mới mà em vẫn còn thiếu,
đồng thời rèn luyện khả năng tính toán và giải quyết vấn đề.

Trong thời gian thực hiện đồ án,em đã nhận được rất nhiều hướng dẫn và sự giúp đỡ
tận tình từ Giáo viên hướng dẫn. em xin gửi lời cảm ơn sâu sắc và chân thành đến các
thầy cô. Kiến thức và kinh nghiệm mà các thầy cô đã truyền đạt cho em là nền tảng và
là chìa khóa để em hoàn thành đồ án này. Mặc dù em đã cố gắng hết sức nhưng do
kiến thức và kinh nghiệm hạn chế, đồ án của nhóm em khó tránh khỏi thiếu sót, em hy
vọng sẽ nhận được hướng dẫn từ thầy cô để em có thể củng cố và nâng cao kiến thức
của mình hơn.

Cuối cùng, em xin chúc thầy cô luôn thành công và nhiều sức khỏe để có thể tiếp
tục sự nghiệp truyền đạt kiến thức của mình cho thế hệ tiếp theo.

Em xin chân thành cảm ơn.

1
Chương 1. TỔNG QUAN
1.1. Đặt vấn đề

Theo tình hình thế giới hiện nay, việc di chuyển không còn là một vấn đề khó
khăn. Có rất nhiều phương tiện di chuyển khác nhau như: máy bay, tàu hỏa, ô tô, xe
máy… Nhưng các phương tiện di chuyển đó rất cồng kềnh nên không thể làm phương
tiện di chuyển trong các công ty nhà máy, không đƣợc sử dụng rộng rãi đối với mọi
lứa tuổi và gây ô nhiễm môi trường.
Chính vì vậy, nhóm sinh viên đã quyết định thực hiện đề tài “xe hai bánh tự cân
bằng” để góp phần tạo ra một phƣơng tiện di chuyển nhỏ gọn hữu ích trọng phạm vi
hẹp, có thể sử dụng với mọi lứa tuổi, và ít gây ô nhiễm môi trường.

1.1.1. Tình hình nghiên cứu robot 2 bánh tự cân bằng hiện nay

- Các mô hình robot 2 bánh tự cân bằng


Xe Segway
Xe hai bánh tự cân bằng Segway được sản xuất bởi công ty Segway Inc, ở bang New
Hampshire, Mỹ. Chiếc xe ra mắt lần đầu trƣớc công chúng vào ngày 03 tháng 12 năm
2001. Hiện nay loại xe này được bán rộng rãi trên toàn thế giới. Ở nƣớc phát triển xe
Segway trở nên thông dụng và gần gũi với mọi ngƣời. Xe đƣợc phát triển từ dự án xe
lăn tự leo cầu thang iBOT của Dean Kamen. Đặc điểm nổi bật của Segway là khả năng
cân bằng nhờ hệ thống máy tính, động cơ và con quay hồi chuyển đặt bên trong xe, nó
giúp cho xe dù chỉ có một trục chuyển động với hai bánh nhƣng luôn ở trạng thái cân
bằng. Tất cả thông tin về trạng thái nghiêng truyền đến hai bảng mạch điều khiển bao
gồm một bó vi xử lý. Segway có tổng cộng 10 bảng mạch vi xử lý với năng lực gấp 3
lần PC điển hình

2
Thông số kỹ thuật:
Tốc độ cao nhất : 12,5 dặm/giờ (20km/giờ), gấp 4 lần tốc độ đi bộ bình thƣờng.
Trọng lượng không tải : 80 pound (36kg).
Kích thước : 19 x 25 inch (48 x 63,5 cm). Segway có chiều rộng đủ cho một ngƣời
trƣởng thành.
Tải trọng : người điều khiển nặng 250 pound (110kg) và hàng hóa nặng 75 pound
(34kg).
Phạm vi : di chuyển khoảng 17 dặm (28km) với mỗi lần sạc
Giao diện hiển thị chế độ hoạt động : Segway có màn hình LCD cung cấp thông
tin về năng lƣợng, thông báo chế độ hoạt động và tình trạng lỗ nếu xe gặp sự cố.
Giá thành : 6000 USD

Xe Balancing Scooter
Xe scooter được Trevor Blackwell chế tạo ra dựa theo Segway của Mỹ. Xe scooter tự
cân bằng này đƣợc chế tạo từ động cơ xe lăn và pin dùng cho mô hình. Những bộ
phận và module của xe có giá thành rẻ hơn một nửa so với xe Segway. Xe không cần
phần mềm thực thi cao cấp hay phức tạp . Phiên bản đầu tiên được viết bằng Python

3
1.2. Mục tiêu
Mục tiêu của đề tài là xây dựng mô hình robot 2 bánh tự cân bằng dựa trên nền
tảng lý thuyết mô hình con lắc ngược. Trong thời gian làm đề tài, những mục tiêu
của
đề tài được đặt ra như sau:
Tìm hiểu các mô hình xe, robot 2 bánh tự cân bằng và các nguyên lý cơ bản về
cân bằng.
Tính toán các thông số động lực học, xây dựng các hàm không gian-trạng thái
(state-space) của mô hình.
Tìm hiểu, lựa chọn các loại cảm biến và bộ điều khiển trung tâm. Trong đề tài
này sẽ sử dụng cảm biến IMU 9 DOF và bộ điều khiển DSP F28335.
Xây dựng thuật toán điều khiển động cơ, giữ thăng bằng cho robot.

1.3. Nội dung nghiên cứu


Nguyên lý cân bằng
Đối với xe ba bánh hay bốn bánh, viêc giữ thăng bằng và ổn định của chúng là
nhờ vào trọng tâm của chúng nằm trong bề mặt chân đế do các bánh xe tạo ra. Đối
với xe hai bánh có cấu trúc như xe đạp, việc thăng bằng khi không di chuyển là
hoàn toàn không thể, vì việc thăng bằng của xe đạp dựa trên tính chất con quay
hồi chuyển ở hai bánh xe khi đang quay. Còn đối với xe hai bánh tự cân bằng là
loại xe hai bánh có trục hai bánh xe trùng nhau, để tự cân bằng thì trọng tâm của
xe (bao gồm cả người lái) cần được giữ ngay giữa các bánh xe. Điều này giống
như ta giữ một cây gậy thẳng đứng cân bằng trong lòng bàn tay. Thực ra, việc xác

4
định trọng

5
tâm của xe hai bánh tự cân bằng là rất khó khăn, có khi không xác định được, vì
trọng tâm xe phụ thuộc nhiều yếu tố được đặt lên xe. Vì vậy việc giữ cho trọng
tâm của xe luôn thăng bằng là rất khó khăn và không có động cơ nào có đủ khả
năng quay với tốc độ cao để giữ thăng bằng cho trọng tâm xe khi chúng có độ
lệch quá lớn. Về mặt kỹ thuật, góc giữa chiều trọng lực và sàn xe hai bánh tự cân
bằng là có thể xác định được, thay vì cách xác định trọng tâm của xe thì thay vào
đó có thể giữ cho tay lái thẳng đứng và luôn vuông góc với sàn xe cũng có thể giữ
xe thăng bằng.

Nguyên lý di chuyển của xe


Xe hai bánh tự cân bằng hoạt động theo nguyên lý sau: Khi thanh điều khiển được
đẩy nghiêng về phía trước trọng tâm xe sẽ bị lệch khỏi vị trí cân bằng, lúc này
bánh xe yêu cầu phải chạy về phía trƣớc để cân bằng lại trọng tâm của xe nhằm
giữ xe thăng bằng. Khi thanh điều khiển nghiêng về phía sau thì trọng tâm xe bị
lệch về phía sau, lúc này bánh xe phải quay về phía sau để giữ thăng bằng lại
trọng tâm của xe. Khi muốn dừng xe hoặc di chuyển chậm lại thì chỉ cần di
chuyển thanh điều khiển ngược hướng di chuyển. Qua đó có thể thấy rằng việc di
chuyển xe hai bánh tự cân bằng rất dễ dàng chỉ phụ thuộc vào hướng di chuyển
của thanh điều khiển

6
Khả năng di chuyển của của xe hai bánh tự cân bằng
Đối với xe ba bánh hoặc bốn bánh thì việc giữ thăng bằng thì đơn giản dễ thực
hiện hơn vì trọng lượng đƣợc phân bố đều trên các bánh lái và bánh đuôi. Tuy
nhiên, nếu trọng lượng được dồn về bánh lái thì xe dễ bị ngã, còn nếu bị dồn về
bánh đuôi hay những bộ phận đỡ trọng lượng của xe thì bánh lái sẽ dễ bị trượt,
khả năng bám kém. Nhiều thiết kế xe có thể di chuyển tốt trên địa hình bằng
phẳng, nhưng không thể di chuyển trên các địa hình gồ ghề lên xuống (mặt phẳng
nghiêng). Khi xe di chuyển lên mặt phẳng nghiêng thì trọng lượng bị dồn về phía
đuôi xe làm cho bánh lái mất khả năng bám gây trượt và khó điều khiển. Khi xe di
chuyển xuống mặt phẳng nghiêng thì trọng tâm bị dồn về bánh lái thì xe sẽ mất ổn
định dễ bị ngã

Đối với xe hai bánh đồng trục với nhau, tuy là bản thân nó là một hệ thống không

7
ổn định do đó việc di chuyển trên địa hình bằng phẳng thì có kém hơn so với xe
ba

8
bánh hay bốn bánh. Tuy nhiên, nếu khi đi lên dốc hoặc xuống dốc thì trọng tâm
của xe luôn luôn nằm trong khu vực của bánh xe (bộ phận đỡ toàn bộ khối lượng
của xe) nên xe sẽ không bị trượt hay lật xe. Khi di chuyển lên dốc thì xe bị
nghiêng về trước trọng tâm đuợc dồn về bánh xe do đó xe không bị lật hay mất
thăng bằng. Khi xe xuống dốc thì xe bị nghiêng về phía sau, trọng lượng của xe
vẫn dồn về hai bánh xe do đó xe không bị trượt

1.4. Giới hạn


Trong khuôn khổ của đề tài này, mô hình robot 2 bánh tự cân bằng chỉ đứng hay chạy
tiến lùi xoay mà chưa thể đi lên dốc được. Phương pháp điều khiển: chỉ sử dụng
phương pháp điều khiển PID với thông số cố định, chưa ứng dụng phương pháp mạng
neuron thích nghi, phương pháp mạng toàn phương tuyến tính (LQR)

9
Chương 2. CƠ SỞ LÝ THUYẾT
2.1. Mô hình toán học của hệ xe
Sơ đồ và hệ quy chiếu hệ xe hai bánh tự cân bằng được thể hiện như ở hình 1, 2, 3
ở dưới:

Hình 2.1 Hình ảnh mô tả hệ xe hai bánh tự cân bằng

Hình 2.2 Hệ xe hai bánh tự cân bằng nhìn nghiêng

Hình 2.3 Hệ xe hai bánh tự cân bằng nhìn từ trên xuống

10
Trong đó, các thành phần của hệ được liệt kê ở bảng 1:
Kí hiệu Đơn vị Ý nghĩa
m kg Khối lượng của bánh xe
M kg Khối lượng của robot
R m Bán kính bánh xe
W m Chiều rộng của robot
D m Chiều ngang của robot
H m Chiều cao của robot
L m Khoảng cách từ trọng tâm robot đến trục bánh xe
fw Hệ số ma sát giữa bánh xe và mặt phẳng di chuyển
fm Hệ số ma sát giữa robot và động cơ bước
Jm kgm2 Moment quán tính động cơ bước
Rm  Điện trở động cơ bước
Kb Vs rad Hệ số EMF của động cơ bước
Kt Nm A Moment xoắn của động cơ bước
N Tỉ số giảm tốc
G m / s2 Gia tốc trọng trường
Góc trung bình của bánh trái và
 rad
phải
l ,r rad Góc của bánh trái và phải
 rad Góc nghiêng của phần thân robot
 rad Góc xoay của robot
xl , yl , zl m Tọa độ bánh trái
xr , yr , zr m Tọa độ bánh phải
xm , ym , zm m Tọa độ trung bình
F ,F ,
Nm Moment phát động theo các phương khác nhau
F
Fl ,r Nm Moment phát động của động cơ bánh trái, phải
il , ir A Dòng điện động cơ bánh trái, phải
vl , vr V Điện áp động cơ bánh trái, phải
Bảng 2.1 Ký hiệu và ý nghĩa của các đại lượng

Ta sử dụng phương pháp Euler-Lagrange để xây dựng mô hình động học. Giả sử tại
thời điểm t = 0, robot di chuyển theo chiều dương trục x, ta có góc tịnh tiến trung bình
của hai bánh xe và góc xoay của robot được xác định như sau:
1
𝜃 (𝜃𝑙 + 𝜃𝑟)
[ ]=[ 2 ] (1)
𝜙 𝑅 (𝜃𝑙 − 𝜃𝑟)
𝑊 hệ qui chiếu:
Trong đó tọa độ trung bình của Robot trong

11
𝑥𝑚 𝖥∫
I
𝑥̇𝑚𝑑𝑡1 [𝑦𝑚 ] = (2)
I
I I
𝑧 ∫ 𝑦̇ 𝑚 𝑑𝑡
Và 𝑚 I I
𝑥̇𝑚 𝑅𝜃̇𝑐𝑜𝑠𝜙
[𝑦̇𝑚] = [ 𝑅𝜃̇𝑠𝑖𝑛𝜙 ] (3)
Tọa độ bánh trái trong hệ qui chiếu :
𝑊
𝑥𝑙 𝖥𝑥𝑚 − 𝑠𝑖𝑛𝜙1
𝑦
[ 𝑙] = 𝑊2 (4)
𝑧𝑙 I𝑦𝑚 + 2 𝑐𝑜𝑠𝜙I
[ 𝑧𝑚 ]
Tọa độ bánh phải trong hệ qui chiếu :
𝑊
𝑥 𝖥𝑥𝑚 + 𝑠𝑖𝑛𝜙1
[𝑦𝑟𝑟 ] = 2
𝑊 (5)
𝑧𝑟 I𝑦𝑚 − 2 𝑐𝑜𝑠𝜙I
[ 𝑧𝑚 ]
Tọa độ tâm đối xứng giữa hai động cơ trong hệ qui chiếu :
𝑥𝑏 𝑥𝑚 + 𝐿𝑠𝑖𝑛𝜓𝑐𝑜𝑠𝜙
[𝑦𝑏] = [𝑦𝑚 + 𝐿𝑠𝑖𝑛𝜓𝑐𝑜𝑠𝜙] (6)
𝑧𝑏 𝑧𝑚 + 𝐿𝑐𝑜𝑠𝜙
Phương trình động năng của chuyển động tịnh tiến:
1 2 2 1 2 1 2 2 2
𝑇1 = 𝑚(𝑥̇ 𝑙 + 𝑦̇ 𝑙 + 𝑧𝑙̇ 2 ) + 𝑚(𝑥̇ 𝑟 + 𝑦𝑟̇ 2 + 𝑧𝑟̇ 2 ) + 𝑀(𝑥̇ 𝑏 + 𝑦̇ 𝑏 + 𝑧̇𝑏 ) (7)
2 2 2
Phương trình động năng của chuyển động quay :
1 2 1 2 1 1 1
T2 = Jw𝜃̇l + Jw𝜃̇r + J𝜓𝜓̇ 2 + J𝜙𝜙2̇ + n2Jm(𝜃̇l − 𝜓̇)2
2 21 2 22
(8)
+ n J (𝜃̇ − 𝜓̇)
2 2

Với: 1 n 2 m r
2 2Jm(𝜃l ̇ − 𝜓)̇ 2+ 1n 2J (𝜃 ̇ − 𝜓)̇ 2là động năng quay của phần ứng đ ộng cơ
m r
2
trái và phải.
Phương trình thế năng:
𝑈 = 𝑚𝑔𝑧𝑙 + 𝑚𝑔𝑧𝑟 + 𝑚𝑔𝑧𝑏 (9)
Phương trình Lagrange :
𝐿 = 𝑇1 + 𝑇2 − 𝑈 (10)
𝑑 𝜕𝐿 𝜕𝐿 (11)
( )− = 𝐹𝜃
𝑑𝑡 𝜕𝜃̇ 𝜕𝜃
𝑑 𝜕𝐿 𝜕𝐿 (12)
( )− = 𝐹𝜓
𝑑𝑡 𝜕𝜓̇ 𝜕𝜓
𝑑 𝜕𝐿 𝜕𝐿 (13)
( )− = 𝐹𝜙
𝑑𝑡 𝜕𝜙̇ 𝜕𝜙
Lấy đạo hàm L theo các biến ta được:
[(2𝑚 + 𝑀)𝑅2 + 2Jw + 2n2Jm]𝜃̈ + (𝑀𝐿𝑅𝑐𝑜𝑠𝜓 − 2n2Jm)𝜓̈ − 𝑀𝐿𝑅𝜓̇ 2𝑠𝑖𝑛𝜓
(14)
= 𝐹𝜃
12
(𝑀𝐿𝑅𝑐𝑜𝑠𝜓 − 2n2Jm)𝜃̈ + (𝑀𝐿2 + Jψ + 2n2Jm)𝜓̈ − 𝑀𝑔𝐿𝑠𝑖𝑛𝜓
(15)
− 𝑀𝐿2𝜙2̇ 𝑠𝑖𝑛𝜓𝑐𝑜𝑠𝜓 = 𝐹𝜓
1 𝑊2
2
[ 𝑚𝑊 + 𝐽𝜙 + 2
(𝐽𝑤 + n2Jm) + 𝑀𝐿2𝑠𝑖𝑛2𝜓]𝜙2̈
2 2𝑅 (16)
2 ̇ ̇
+ 2𝑀𝐿 𝜓𝜃𝑠𝑖𝑛𝜓𝑐𝑜𝑠𝜓 = 𝐹𝜙
Momen động lực do động cơ bước sinh ra:
𝐹𝑙𝐹
+ 𝐹𝑟
𝐹𝜃
𝐹 𝜓
[ 𝜓] = [ ] (17)
𝑊
𝐹𝜙 (𝐹𝑙 − 𝐹𝑟 )
2𝑅

𝐹𝑙 = 𝑛𝐾𝑡𝑖𝑙 + 𝑓𝑚(𝜓̇ − 𝜃̇𝑙 ) − 𝑓𝑤𝜃̇𝑙 (18)
𝐹𝑟 = 𝑛𝐾𝑡 𝑖𝑟 + 𝑓𝑚(𝜓̇ − 𝜃̇𝑟) − 𝑓𝑤𝜃̇𝑟 (19)
̇
𝐹𝜓 = −𝑛𝐾𝑡𝑖𝑙 − 𝑛𝐾𝑡 𝑖𝑟 − 𝑓𝑚(𝜓 − 𝜃𝑙 ) − 𝑓𝑚(𝜓 − ̇ ̇ (20)
𝜃𝑟)̇
Sử dụng phương pháp PWM để điều khiển động cơ nên chuyển từ dòng điện sang điện
áp động cơ:
𝐿𝑚 𝑖𝑙̇ ,𝑟 = 𝑣𝑙,𝑟 + 𝐾𝑏 (𝜓̇ − 𝜃̇𝑙,𝑟 ) − 𝑅𝑚 𝑖𝑙,𝑟 (21)
Xem điện cảm phần ứng tương đối nhỏ (gần bằng 0), có thể bỏ qua, suy ra:
𝑣𝑙,𝑟 + 𝐾𝑏(𝜓̇ − 𝜃̇𝑙,𝑟)
𝑖𝑙,𝑟 = (22)
𝑅𝑚
Từ đó, các moment lực sinh ra:
𝐹𝜃 = 𝛼(𝑣𝑙 + 𝑣𝑟) − 2(𝛽 + 𝑓𝑤)𝜃̇ + 2𝛽𝜓̇ (23)
𝐹𝜓 = −𝛼(𝑣𝑙 + 𝑣𝑟) + 2𝛽𝜃̇ − 2𝛽𝜓̇ (24)
Với:
𝑛𝐾𝑡
‫ﻟ‬ 𝛼=
𝑅
❪ 𝑛𝐾𝑡 𝐾𝑏𝑚 (25)
𝛼= +𝑓
𝑚
𝗅 𝑅𝑚
𝑊 𝑊2
𝐹𝜙động
= lực𝛼(𝑣 (26)
Thu được phương trình học𝑙 +mô𝑣𝑟)tả−chuyển (𝛽 + 𝑓 )𝜃
2 động 𝑤của robot như sau:
2𝑅 2𝑅
[(2𝑚 + 𝑀)𝑅2 + 2Jw + 2n2Jm]𝜃̈ + (𝑀𝐿𝑅𝑐𝑜𝑠𝜓 − 2n2Jm)𝜓̈ − 𝑀𝐿𝑅𝜓̇ 2𝑠𝑖𝑛𝜓
(27)
= 𝛼(𝑣𝑙 + 𝑣𝑟) − 2(𝛽 + 𝑓𝑤)𝜃̇ + 2𝛽𝜓̇
(𝑀𝐿𝑅𝑐𝑜𝑠𝜓 − 2n2Jm)𝜃̈ + (𝑀𝐿2 + Jψ + 2n2Jm)𝜓̈ − 𝑀𝑔𝐿𝑠𝑖𝑛𝜓
(28)
− 𝑀𝐿2𝜙2̇ 𝑠𝑖𝑛𝜓𝑐𝑜𝑠𝜓 = −𝛼(𝑣𝑙 + 𝑣𝑟) + 2𝛽𝜃̇ − 2𝛽𝜓̇
1 𝑊2
[ 𝑚𝑊2 + 𝐽 + (𝐽 + n2J ) + 𝑀𝐿2𝑠𝑖𝑛2𝜓] 𝜙̈ + 2𝑀𝐿2𝜓𝜃 ̇ 𝑠𝑖𝑛𝜓𝑐𝑜𝑠𝜓
̇
𝜙 𝑤 m
2 2𝑅2
𝑊 𝑊2 (29)
= 𝛼(𝑣𝑙 + 𝑣𝑟) − 2 (𝛽 + 𝑓𝑤)𝜃̇
2𝑅 2𝑅

13
2.2. Giải thuật điều khiển bộ điều khiển PID
Bộ điều khiển vi tích phân tỉ lệ PID (Proportional Integral Derivative) là một cơ
chế phản hồi vòng điều khiển tổng quát được sử dụng rộng rãi trong các hệ thống điều
khiển công nghiệp. Một bộ điều khiển PID tính toán một giá trị “sai số” là hiệu số giữa
giá trị đo thông số biến đổi và giá trị đặt mong muốn. Bộ điều khiển sẽ thực hiện giảm
tối đa sai số bằng cách điều chỉnh giá trị điều khiển đầu vào. Các thông số PID sử
dụng trong tính toán phải điều chỉnh theo tính chất, đặc thù của hệ thống.
Giải thuật tính toán bộ điều khiển PID bao gồm 3 thông số riêng biệt: các giá trị tỉ
lệ, tích phân, đạo hàm, viết tắt là P, I, D. Giá trị tỉ lệ xác định tác động của sai số hiện
tại, giá trị tích phân xác định tác động của tổng các sai số quá khứ, và giá trị vi phân
xác định tác động của tốc độ biến đổi sai số.
Vài ứng dụng có thể yêu cầu chỉ sử dụng một hoặc hai khâu tuỳ hệ thống, và sẽ được
gọi bằng P, PI, PD hoặc I nếu vắng mặt các tác động bị khuyết.

u(t)  KPe(t)  KD de(t) t

 KI 
dt
e(t)
0

 Kp: độ lợi khâu tỉ lệ, giá trị càng lớn thì đáp ứng càng nhanh do đó sai số
càng lớn, bù khâu tỉ lệ càng lớn. Giá trị độ lợi tỉ lệ quá lớn sẽ dẫn đến quá
trình mất ổn định và dao động
 KI: độ lợi khâu tích phân, có tác dụng triệt tiêu sai số xác lập nhưng có thể
làm giảm tốc độ đáp ứng của hệ.
 KD: độ lợi khâu vi phân, giá trị càng lớn càng giảm độ vọt lố, nhưng lại làm
chậm đáp ứng quá độ và có thể dẫn đến mất ổn định do khuếch đại nhiễu tín
hiệu trong phép vi phân sai số.

14
15
Chương 3. GIỚI THIỆU CÁC LINH KIỆN CHÍNH

3.1. Arduino Nano CH340


Arduino Nano là một bảng vi điều khiển thân thiện, nhỏ gọn, đầy đủ. Arduino
Nano nặng khoảng 7g với kích thước từ 1,8cm - 4,5cm. Arduino Nano có chức năng
tương tự như Arduino Duemilanove nhưng khác nhau về dạng mạch. Nano được tích
hợp vi điều khiển ATmega328P, giống như Arduino UNO. Sự khác biệt chính giữa
chúng là bảng UNO có dạng PDIP (Plastic Dual-In-line Package) với 30 chân còn
Nano có sẵn trong TQFP (plastic quad flat pack) với 32 chân. Trong khi UNO có 6
cổng ADC thì Nano có 8 cổng ADC. Bảng Nano không có giắc nguồn DC như các bo
mạch Arduino khác, mà thay vào đó có cổng mini-USB. Cổng này được sử dụng cho cả
việc lập trình và bộ giám sát nối tiếp. Tính năng hấp dẫn của arduino Nano là nó sẽ
chọn công xuất lớn nhất với hiệu điện thế của nó.

Boad Adruino nano CH340

16
3.2. Bo mạch cnc shield v4
- Điện áp: 7-12VDC thông qua jack DC 5.5mm

- Điện áp 5V qua các chân hỗ trợ

- Hỗ trợ: 3 trục (X,Z,Y)

- Tương thích với Driver điều khiển động cơ bước: A4988 hoặc DRV8825

- Dòng tải động cơ: 2A (A4988) hoặc 2.5A (DRV8825)

- Được thiết kế với các chân cắm mở rộng, có thể kết nối với các module khác
như module công tắc hành trình

- Hỗ trợ kết nối I2C tương thích với các module LCD khác

- Tương thích với Arduino Nano R3

- Phần mềm hồ trợ: GRBL (hướng dẫn sử dụng và cài đặt phần mềm xem thêm
tại đây)

17
- Thường được sử dụng để điều khiển các loại máy cnc mini, máy khắc laser mini..vv

Boad cnc shield v4

3.3. Mạch điều khiển động cơ bước A4988

Công suất ngõ ra lên tới 35V, dòng đỉnh 2A.


Có 5 chế độ: Full bước, 1/2 bước, 1/4 bước, 1/8 bước, 1/16 bước
Điểu chỉnh dòng ra bằng triết áp, nằm bên trên Current Limit = VREF × 2.5
Tự động ngắt điện khi quá nhiệt.

18
3.4. Cảm biến góc nghiêng 6050

Cảm biến gia tốc (góc) MPU 6050

Toạ độ và chiều quay quy định


Cảm biến MPU6050 là một trong những cảm biến IMU (Inertial Measurement
Unit) – thiết bị kết hợp từ hai bộ cảm biến Accelerometer (cảm biến gia tốc) và cảm
biến Gyroscope (cảm biến con quay hồi chuyển). Ngày nay, IMU là một trong những
cảm biến được sử dụng phổ biến trong các thiết bị điện tử. Chúng có thể được tìm thấy
trong các smartphone, điều khiển cầm tay, các thiết bị điện tử đeo trên người… Cảm
biến IMU giúp chúng ta xác định được trạng thái của một vật được gắn liền với cảm
biến theo không gian ba chiều.

MPU6050 là cảm biến 6 bậc tự do (6 DOF) hay cảm biến IMU 6 trục mà đầu ra
cảm biến cho ta 6 giá trị. Ba giá trị từ cảm biến gia tốc, ba giá trị từ cảm biến vận tốc.
MPU6050 được chế tạo dựa trên MEMS (Micro Electro Mechanical Systems) – công
nghệ vi cơ điện tử. Cả hai bộ cảm biến gia tốc góc và vận tốc góc được tích hợp trong
một con chip sử dụng phương thức I2C để giao tiếp với các thiết bị khác.

19
Cảm biến gia tốc hoạt động dựa trên nguồn gốc của hiệu ứng áp điện xảy ra
khi áp vào vật liệu áp điện một trường điện thì nó biến đổi hình dạng, và ngược lại khi
ung lực cơ học tác động vào nó thì nó tạo ra điện tích trên bề mặt xác định. Tưởng
tượng chúng ta có một viên bi nhỏ trong một khối lập phương mà 4 mặt được làm
bằng các tinh thể áp điện. Bất cứ khi nào chúng ta nghiêng khối hộp, viên bi sẽ dịch
chuyển theo hướng ta nghiêng nhờ vào trọng lực. Khi viên bi va chạm với mặt nào thì
mặt đó sẽ sản sinh ra điện tích tạo ra những dòng điện nhỏ. Có tổng cộng 3 cặp mà
các mặt của “chiếc hộp”, mỗi cặp tương ứng với một trục trong không gian 3 chiều.
Dựa vào các dòng điện sinh ra bởi các mặt của tinh thể áp điện, chúng ta có thể xác
định được hướng nghiêng và cường độ của nó.
Trong đề tài này ung module GY521 sử dụng cảm biến MPU6050 để đọc giá
trị gia tốc góc và vận tốc góc từ đó tính ra giá trị góc nghiêng để đưa vào đầu vào
của bộ điều khiển.
Nguồn: 3-5V, trên module MPU-6050 đã có sẵn LDO chuyển nguồn 5V->3V.
 Giao tiếp I2C ở mức 3V.
 Khoảng cách chân cắm: 2.54mm.
 Địa chỉ: 0x68, có thể cấp mức cao vào chân AD0 để chuyển địa chỉ thành
0x69.
Cấu hình các thanh ghi của MPU6050:
 Thanh ghi Who_Am_I: Chứa giá trị địa chỉ Slave mặc định của MPU có giá
trị là 0x68. Ta có thể thay đổi địa chỉ ung chân AD0.

 Thanh ghi Sample rate divider: Tính tốc độ lấy mẫu của MPU
Tốc độ lấy mẫu = 8Khz/(1 giá trị thanh ghi).
Cài đặt giá trị thanh ghi là 0x07, suy ra tốc độ lấy mẫu là 1 Khz.

 Thanh ghi Configuration: Cấu hình khung đồng bộ lấy mẫu và bộ lọc ung
thấp cho cảm biến. Mặc định giá trị là 0x00.

20
 Thanh ghi Gyroscope Configuration: Cấu hình tầm đo vận tốc góc, ở đây
chọn giá trị 0x00 với tầm đo từ -250 tới 250 độ/s.

 Thanh ghi Accelerometer Configuration: Cấu hình tầm đo gia tốc góc, ở đây
chọn giá trị 0x00 với tầm đo từ -2g tới 2g.

 Thanh ghi Power Management: chọn nguồn clock cho MPU, mặc định
nguồn clock là dao động thạch anh nội 8 MHz.

 Các thanh ghi Acc dữ liệu: lưu giá trị gia tốc góc của 3 trục x,y,z.

 Các thanh ghi gyro dữ liệu: lưu giá trị vận tốc góc của 3 trục.

21
Xử lý giá trị thu được từ MPU:
Giá trị thu được ở đây là giá trị chưa hiệu chỉnh, có nghĩa là mức zero của MPU chưa
đúng là giá trị 0 mà là một giá trị khác không. Do đó ta cần phải hiệu chỉnh cảm biến.
Cách hiệu chỉnh:
 Hiệu chỉnh Acc: Đặt cảm biến nằm ngang trên một mặt phẳng. Trong đó trục
x và y nằm trong mặt phẳng song song với mặt nằm ngang, trục z theo
phương trọng lực.
Khi đó theo lý thuyết thì chỉ trục z có giá trị 1g còn giá trị trên trục x và y bằng 0.
Nhưng trong thực tế giá trị trên trục x và y khác 0, còn giá trị z khác 1g. Ta đọc giá trị
Acc 50 lần rồi lấy trung bình. Khi đó giá trị trung bình trên x và y là mức zero, còn sai
số giữa giá trị trên z và 1g sẽ là mức zero của trục z.
 Hiệu chỉnh Gyro: Đặt cảm biến nằm yên, khi đó giá trị đọc được trên 3 trục
đều bằng 0. Nhưng thực tế giá trị đọc được khác 0, khi đó giá trị đọc được đó
chính là mức zero của các gyro trên các trục.
 Xử lý giá trị thu được:
 Gia tốc góc: sau khi hiệu chỉnh, lấy giá trị đó ta tính ra giá trị góc nghiêng
bằng công thức sau:
Góc = arctan(-accX/accZ) (đơn vị là rad)
 Vận tốc góc: Tương tự sau khi hiệu chỉnh, giá trị gyro chia cho độ lợI là 131
LSB/(deg/s) để thu được vận tốc góc.

3.5. Board bluetooth HC-05

Board Bluetooth HC-05 FC-114

22
 Giao thức USB: USB v1.1/2.0.
 Tần số: 2.4GHz ISM.
 Độ nhạy: ≤-84dBm ở 0.1% BER.
 Tính năng bảo mật: Xác thực và mã hóa.
 Cấu hình hỗ trợ giao tiếp: Cổng nối tiếp Bluetooth (master & slave).
 Nguồn cấp: +3.3 VDC 50mA.
 Nhiệt độ làm việc: -20 ~ +55 Centigrade.
 Kích thước: 26.9mm x 13mm x 2.2 mm.
 Chân EN (enable) : chân cho phép mức thấp ( để trống không kết nối ).
 VCC,GND: các chân cấp nguồn cho board.
 TDX,RDX: kết nối vào TX3 và RX3 trên Arduino.
 State: Đọc trạng thái của board khi kết nối với 1 thiết bị ungese khác thì lên
mức 1.
3.6. Động cơ bước

Động cơ bước
- Kích thước trục (Cốt): 5mm
- Độ phân giải: 1.8 độ, 200 xung/ 1 vòng.
- Kích thước: 42x42x35 (DxRxC).
- Dòng: 1.2 -1,4A tùy lô. Lưu ý động cơ mạnh hay không phụ thuộc vào dòng
và moment (moment tỷ lệ thuận độ lớn của cuộn đồng tức chiều cao của động
cơ).

23
Chương 4. THI CÔNG HỆ THỐNG

4.1. Yêu cầu hệ thống

Để xe 2 bánh có thể tự cân bằng yêu cầu chúng ta phải điều khiển động cơ
chống lại sự ngã của xe

Đầu tiên cảm biến góc nghiêng MPU 6050 sẽ đọc giá trị góc nghiêng khi xe mất
cân bằng, Arduino nhận được giá trị góc nghiêng từ MPU 6050 sau đó sẽ giải thuật
PID giúp xe cân bằng

Mạch bluetooth nhận tín hiệu từ thiết bị điều khiển sau đó truyền tín hiệu vào
Arduino để Arduino xử lý tín hiệu và điều khiển xe theo ý muốn

24
Lưu đồ giải thuật

Lưu đồ giải thuật điều khiển PID

4.2. Thiết kế phần cứng


Phần mặt trên

Phần mặt dưới

25
Khối lượng khoảng: 2 Kg

4.3. Kết nối phần cứng


Sơ đồ chân kết nối của mạch điều khiển động cơ bước A4988

Các chân MS1, MS2, MS3 sử dụng để điều khiển độ vi bước trên mạch A4988 các
mức điện áp trên mỗi chân tương ứng với bảng sau

Chân ENABLE điều khiển tắt mở mạch A4988 (0V mạch hoạt động, 5V mạch tắt)

Sơ đồ kết nối MPU 6050 với board mạch cnc shield V4

26
Sơ đồ kết nối mạch bluetoooth với board mạch cnc shield V4

Mô hình thực tế

27
4.4. Giao diện điều khiển

Sử dụng ứng dụng Serial Bluetooth Terminal kết nối với mạch bluetooth HC-05 để
điều khiển gồm các nút
- Go: xe chạy tới
- Back: xe chạy lùi
- Left: xe quay trái
- Right: xe quay phải
- Stop: xe dừng lại

28
Chương 5. KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ

5.1. Kết quả đạt được


 Thiết kế hoàn chỉnh, hoàn thiện mô hình robot 2 bánh tự cân bằng.
 Mô hình có thể giữ thăng bằng tại chỗ.
 Bộ điều khiển PID với thông số Kp = 1.5; Ki = 0.15; Kd = 0.01
 Khắc phục sự phi tuyến của động cơ

5.2. Nhược điểm của đề tài


 Giữ cân bằng chưa tốt, dễ bị vọt lố.
 Chịu tác động của ngoại lực còn yếu.
 Hệ thống chưa đáp ứng đựợc khi hệ số ma sát và khối lượng M của robot thay
đổi.

29
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

6.1. Kết luận


Mô hình robot 2 bánh tự cân bằng là một đề tài không mới nhưng đặt ra nhiều
thách thức trong nghiên cứu và chế tạo. Để có thể thiết kế một mô hình robot 2 bánh tự
cân bằng hoàn chỉnh, linh hoạt hơn và làm cơ sở để chế tạo xe 2 bánh tự cân bằng chở
được người thì cần phải tính toán thật chính xác về kết cấu cơ khí, cũng như phải có
được các thông số thật chính xác về động cơ, cảm biến và 1 bộ điều khiển có thể thích
nghi được như mạng neuron…

6.2. Hướng phát triển của đề tài:


Trong tương lai mô hình robot 2 bánh tự cân bằng sẽ được phát triển như sau:
 Tối ưu hóa khối lượng, thuật toán để mô hình có thể hoạt động trơn tru, linh
hoạt,
dễ điều khiển, tiết kiệm năng lượng.
 Có thể gắn thêm camera và gps để robot có thể định vị, ghi hình, xử lý ảnh và
tự
hoạt động trong không gian lớn.
 Mô hình robot 2 bánh tự cân bằng là tiền đề để phát triển thành xe 2 bánh tự
cân
bằng có thể chở được người và di chuyển linh hoạt hơn

30
Tài liệu tham khảo
 Tài liệu trong nuớc:
Huỳnh Thái Hoàng, Lý thuyết điều khiển tự động, Nhà xuất bản Đại học Quốc
Gia,2005
Huỳnh Thái Hoàng; “ Mô Hình Hóa Và Nhận Dạng Hệ Thống”; Đại học bách
khoa
Tp. HCM.
Nguy ễn Phùng Quang; “ Matlab và Simulink”; NXB khoa học và kỹ thuật.
Dương Hoài Nghĩa; “Điều khiển hệ thống đa biến”; Nhà xuất bản Đại học Quốc
Gia
TP.HCM, 2007.
Huỳnh Thái Hoàng; “ Mô Hình Hóa Và Nhận Dạng Hệ Thống”; Đại học bách
khoa
Tp. HCM.
 Tài liệu nước ngoài:
Greg WELCH and Gary BISHOP , An Introduction to the Kalman Filter,
University
of North Carolina at Chapel Hill, 2004
 Tài liệu website:
http://www.segway.com
http://sourceforge.net
http://www.ti.com
http://www.mathworks.com/matlabcentral/answers

31
PHỤ LỤC
Chương trình điều khiển

32
33
34
35

You might also like