Tải bản đầy đủ (.docx) (64 trang)

ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ, CHẾ TẠO ROBOT HAI BÁNH TỰ CÂN BẰNG

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.74 MB, 64 trang )

Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA ĐIỆN TỬ VIỄN THÔNG

ĐỒ ÁN TỐT NGHIỆP
THIẾT KẾ, CHẾ TẠO
ROBOT HAI BÁNH TỰ CÂN BẰNG
GIẢNG VIÊN HƯỚNG DẪN

: THS. TRẦN TRỌNG THẮNG

SINH VIÊN THỰC HIỆN

: TRẦN ĐÌNH PHÚ
: BÙI ĐỨC CƯỜNG

CHUYÊN NGÀNH

: ĐIỆN TỬ VIỄN THÔNG

LỚP

: Đ6-ĐTVT2

KHÓA

: 2011-2016



Hà Nội, năm 2016

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
GVHD : ThS Trần Trọng Thắng

Page 1


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

KHOA ĐIỆN TỬ VIỄN THÔNG

ĐỒ ÁN TỐT NGHIỆP
THIẾT KẾ, CHẾ TẠO
ROBOT HAI BÁNH TỰ CÂN BẰNG
GIẢNG VIÊN HƯỚNG DẪN

: THS. TRẦN TRỌNG THẮNG

SINH VIÊN THỰC HIỆN

: TRẦN ĐÌNH PHÚ
: BÙI ĐỨC CƯỜNG

CHUYÊN NGÀNH


: ĐIỆN TỬ VIỄN THÔNG

LỚP

: Đ6-ĐTVT2

KHÓA

: 2011-2016

Hà Nội, năm 2016

LỜI CẢM ƠN
Trong thời gian hiện đề tài nghiên cứu khoa học đó là một trong những bước ngoặt
cuối cùng đánh dấu sự trưởng thành của một sinh viên ở giảng đường đại học.Để trở
thành một cử nhân hay một kỹ sư đóng góp những gì mình đã học được cho sự phát triển
đất nước.
GVHD : ThS Trần Trọng Thắng

Page 2


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Lời đầu tiên chúng em xin chân thành cảm ơn sự hướng dẫn tận tình của thầy
ThS. Trần Trọng Thắng, khoa Điện tử-Viễn thông, trường Đại học Điện lực. Trong suốt
thời gian thực hiện đề tài, thầy đã dành nhiều thời gian để hướng dẫn chúng em thực hiện

đề tài. Thầy đã hướng dẫn chúng em tìm hiểu những kiến thức cần thiết để thực hiện đề
tài. Bên cạnh đó chúng em cũng xin gởi lời cảm ơn chân thành đến thầy
ThS. Hoàng Xuân Đông, thầy luôn nhiệt tình hướng dẫn, sẵn sàng giúp đỡ khi chúng em
gặp khó khăn trong việc lập trình, chế tạo robot. Em cũng xin chân thành cảm ơn các thầy
cô trong khoa Điện tử-Viễn thông, cũng như các thầy cô trong trường đã giảng dạy, giúp
đỡ chúng em trong suốt bốn năm học qua. Chính các thầy cô đã xây dựng cho chúng em
những kiến thức nền tảng và những kiến thức chuyên môn để em có thể hoàn thành đề tài
này.

Hà nội, ngày 7 tháng 1 năm 2016
SINH VIÊN THỰC HIỆN
Trần Đình Phú
Bùi Đức Cường

MỤC LỤC

GVHD : ThS Trần Trọng Thắng

Page 3


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Danh mục hình ảnh

CHƯƠNG 1 TỔNG QUAN VỀ ROBOT HAI BÁNH TỰ CÂN
BẰNG

1.1 Giới thiệu chung
Cùng với sự phát triển của khoa học kỹ thuật, ngày nay robot có khả năng
thay thế con người làm việc trong những môi trường độc hại, trong sản xuất
hoặc bắt chước con người về hình thức, hành vi và cả suy nghĩ... Hiện nay lĩnh
vực robot đang phát triển nhanh nhờ vào sự phát triển liên tục của công nghệ,
robot đã và đang được chế tạo để phục vụ cho nhiều mục đích khác nhau. Với ý
GVHD : ThS Trần Trọng Thắng

Page 4


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

tưởng sử dụng robot thay thế con người thì “Robot hai bánh tự cân bằng” cũng
là đề tài hiện đang được nhiều tác giả quan tâm vì mô hình robot này có khả
năng di chuyển linh hoạt nhưng lại không chiếm nhiều không gian.
1.2 Thế nào là robot hai bánh tự cân bằng

Hình 1.1: Mô tả nguyên lý cân bằng
Đối với các xe hay robot ba hay bốn bánh, việc thăng bằng và ổn định của
chúng là nhờ 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 các xe 2 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 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 hay robot hai bánh
tự cân bằng, là loại chỉ có hai bánh với trục của hai bánh xe trùng nhau, để cho
robot cân bằng, trọng tâm của nó cần được giữ nằm ngay giữa các bánh xe.
Điều này giống như ta giữ một cây gậy dựng thẳng đứng cân bằng trong lòng

bàn tay. Thực ra, trọng tâm của toàn bộ robot không được biết nằm ở vị trí nào,
cũng không có cách nào tìm ra nó. Do vậy, thay vì tìm cách xác định trọng tâm
nằm giữa các bánh xe ta cho xe di chuyển nhằm triệt tiêu góc nghiêng của xe.

GVHD : ThS Trần Trọng Thắng

Page 5


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Hình 1.2: Mô tả cách di chuyển
1.3 Tại sao phải thiết kế robot hai bánh tự cân bằng
Việc thiết kế robot hai bánh tự cân bằng là nền tảng để phát triển xe hai
bánh tự cân bằng sau này vì vậy ta cần so sánh xe hai bánh tự cân bằng với các
thể loại ba bánh hay bốn bánh hiện nay.
Những mobile robot xây dựng hầu hết robot là những robot di chuyển bằng
ba bánh xe, với hai bánh lái được lắp ráp đồng trục, và một bánh đuôi nhỏ. Có
nhiều kiểu khác nhau, nhưng đây là kiểu thông dụng nhất. Còn đối với các xe 4
bánh,

thường

một

đầu xe có hai bánh truyền động và đầu xe còn lại được gắn một hoặc hai bánh
lái.


Hình 1.3: Xe ba bánh trên mặt phẳng
Việc thiết kế ba hay bốn bánh làm cho xe/mobile robot được thăng bằng ổn
định nhờ trọng lượng của nó được chia cho hai bánh lái chính và bánh đuôi, hay
bất kỳ cái gì khác để đỡ trọng lượng của xe. Nếu trọng lượng được đặt nhiều
GVHD : ThS Trần Trọng Thắng

Page 6


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

vào bánh lái thì xe/robot sẽ không ổn định dễ bị ngã, còn nếu đặt nhiều vào bánh
đuôi thì hai bánh chính sẽ mất khả năng bám. Nhiều thiết kế xe/robot có thể di
chuyển tốt trên địa hình phẳng, nhưng không thể di chuyển lên xuống trên địa
hình lồi lõm (mặt phẳng nghiêng). Khi di chuyển xuống đồi, trọng lượng xe/robot
dồn vào đầu xe làm bánh lái mất khả năng bám và trượt ngã, đối với những bậc
thang, thậm chí nó dừng hoạt động và chỉ quay tròn bánh xe.

Hình 1.4: Xe 3 bánh đi lên
Khi di chuyển lên đồi, sự việc còn tệ hơn, trọng tâm thay đổi về phía sau và
thậm chí làm xe/robot bị lật úp khi di chuyển trên bậc thang.Việc bố trí bốn bánh
xe, giống như xe hơi đồ chơi hay các loại xe bốn bánh hiện đang sử dụng trong
giao thông không gặp vấn đề nhưng điều này sẽ làm các xe/robot không gọn.

Hình 1.5: Xe 3 bánh đi xuống
Ngược lại, các xe dạng hai bánh đồng trục lại thăng bằng rất linh động khi

di chuyển trên địa hình dốc, mặc dù bản thân là một hệ thống không ổn định. Khi
GVHD : ThS Trần Trọng Thắng

Page 7


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

nó leo sườn dốc, nó tự động nghiêng ra trước và giữ cho trọng lượng dồn về hai
bánh lái chính. Tương tự vậy, khi bước xuống dốc, nó nghiêng ra sau và giữ
trọng tâm rơi vào các bánh lái. Chính vì vậy, không bao giờ có hiện tượng trọng
tâm của xe rơi ra ngoài vùng đỡ của các bánh xe để có thể gây ra sự lật úp.

Hình 1.6: Hai bánh lên và xuống linh động
1.4 Mục tiêu của đồ án
Mục tiêu của đồ án là xây dựng được robot có khả năng di chuyển trên hai
bánh,làm phương tiện di chuyển hiệu quả linh động, dễ dàng xoay trở trong
không gian chật hẹp.Trong khuôn khổ 3 tháng thực hiện luận văn tốt nghiệp,
những mục tiêu được đề ra như sau:
• Tìm hiểu về các loại robot cân bằng, nguyên lý cơ bản về cân bằng.
• Thiết kế mạch điện tử kết hợp các cảm biến thực hiện chức năng đo góc
(phần cứng).
• Giải thuật cho vi điều khiển kết hợp và bù trừ các cảm biến để có được giá
trị đo góc chính xác.
• Xây dựng thuật toán điều khiển cho động cơ, giữ thăng bằng
• Lập trình điều khiển.
GVHD : ThS Trần Trọng Thắng


Page 8


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

1.5 Phương pháp nghiên cứu
Đề tài được tiếp cận dựa trên các phương pháp sau:
• Phương pháp khảo sát tài liệu, tìm hiểu các tài liệu liên quan đến đến đề
tài như: cấu trúc robot hai bánh tự cân bằng, cảm biến MPU6050, mạch
điều khiển động cơ.
• Phương pháp khảo sát các thuật toán và lọc nhiễu cho cảm biến như: bộ
lọc Kalman và thuật toán điều khiển PID.
• Phương pháp thực nghiệm tiến hành xây dựng các thuật toán trên mô
hình
1.6 Giới hạn của đồ án
Đề tài tập trung vào việc xây dựng mô hình phần cứng robot như: kết cấu
mô hình, mạch điều khiển động cơ, các thuật toán trên vi điều khiển như bộ lọc
Kalman giải thuật cân bằng PID. Robot có thể cân bằng có khả năng điều khiển
để di chuyển nhưng chưa có nhiều ứng dụng.

GVHD : ThS Trần Trọng Thắng

Page 9


Khoa: Điện tử viễn thông

bằng

SVTH : Nhóm robot cân

CHƯƠNG 2 THIẾT KẾ CHẾ TẠO
2.1 Sơ đồ khối

Cảm biến MPU6050
2.1.

i2c

Arduino UNO
R3 I2C

Mạch điều khiển

PWM động cơ DC

2.2.

Khối nguồn
Hình 2.1: Sơ đồ khối của hệ thống của robot
2.2 Thiết kế phần cứng
Đồ án sử dụng Arduino Uno R3 là bộ điều khiển trung tâm. Khung robot dc
chế tạo từ những miếng nhựa cứng liên kết với nhau bằng những vít đồng. với
hai động cơ được đặt đồng trục cho phép robot có thể di chuyển theo hai hướng
trước sau. Hai động cơ được điều khiển bởi robo shield, sử dụng cảm biến
MPU6050 gián vào mặt phẳng khung nhựa để xác định góc nghiêng của robot.
GVHD : ThS Trần Trọng Thắng


Page 10


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Hai bánh xe được bao bọc bởi cao su có nhiều rãnh để ăng độ bám cao, giúp
robot có thể điều khiển cân bằng tốt hơn.

Hình 2.2: Mô hình robot sau khi lắp ráp

2.3 Mạch điện tử
2.3.1 Nguồn điện
Nguồn điện sủ dụng pin 12v, mỗi PIN có dung lượng khoảng 3000mAh
được đấu nối tiếp với nhau giúp robot có đủ nguồn điển hoạt động trong một thời
gian dài.

GVHD : ThS Trần Trọng Thắng

Page 11


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân


Hình 2.3: Pin
2.3.2 Bộ điều khiển trung tâm Arduino Uno R3
2.3.2.1 Giới thiệu chung
Ardunio thật ra là một bo mạch vi xử lý được dùng để lập trình tương tác
với các thiệt bị phần cứng như cảm biến, động cơ, đèn hoặc các thiết bị khác.
Đặc điểm nổi bật của arduino là môi trường phát triển ứng dụng dễ sử dụng, với
ngôn ngữ lập trình có thể học một cách nhanh chóng ngay cả với người ít am
hiểu về điện tử và lập trình.

GVHD : ThS Trần Trọng Thắng

Page 12


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Hình 2.4: Arduino UNO R3
Arduino ra đời tại thị trấn Ivrea thuộc nước Ý và được đặt tên theo một vị
vua vào thế kỉ thứ 9 là King Arduino. Arduino chính thức được đưa ra giới thiệu
vào năm 2005 như là một công cụ khiêm tốn dành cho các sinh viên của giáo sư
Massimo Banzi, một trong những người phát triển Arduino, tại trường Interaction
Design Ivrea (IDII). Mặc dù hầu như không được tiếp thị gì cả, tin tức về Arduino
vẫn lan truyền với tốc độ chóng mặt nhờ những lời truyền miệng tốt đẹp của
những người dùng đầu tiên.
Arduino đã và đang được sử dụng rất rộng rãi trên toàn thế giới và ngày
càng chứng tỏ được sức mạnh của chúng thông qua một số ứng dụng độc đáo
của người dùng trong cộng đồng nguồn mở. Tuy nhiên tại Việt Nam Arduino vẫn

còn chưa được biết đến nhiều.
Arduino cơ bản là một nền tảng tạo bởi mẫu mở về điện tử được tạo thành
từ các phần cứng lẫn phần mềm. Về mặt kỹ thuật Arduino có thể cọi là 1 bộ điều
khiển logic có thể lập trình được. Đơn giản hơn, Arduino là một thiết bị có thể
tương tác với ngoại cảnh thông qua các cảm biến và hành vi được lập trình sẵn.
GVHD : ThS Trần Trọng Thắng

Page 13


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Với thiết bị này, việc lắp ráp và điều khiển các thiết bị điện tử sẽ dễ dàng hơn
hơn bao giờ hết.
Hiện tại có nhiều loại vi điều khiển và đa số được lập trình bằng ngôn ngữ
C/C++ hoặc Assembly nên rất khó khăn cho những người có ít kiến thức sâu về
lập trình và điện tử. Nó là trở ngại cho mọi người muốn tạo riêng cho mình một
món đồ mang tính công nghệ. Do vậy Arduino được phát triển nhằm đơn giản
hóa việc thiết kế, lắp ráp linh kiện điện tử cũng như lập trình vi xử lý và moị
người có thể tiếp cận dễ dàng hơn với thiết bị điện tử không cần nhiều kiến thức
điện tử và thời gian. Sau đây là một số thế mạnh của Arduino so với nền tảng vi
điều khiển khác:
• Chạy trên đa nền tảng:việc lập trình Arduino có thể thực hiện trên các hệ
điều hành khác nhau như Windowns, Mac Os, Linux trên Desktop ,
Android trên di động.
• Ngôn ngữ lập trình đơn giản, dễ hiểu.
• Nền tảng mở: Arduino được phát triển dựa trên nguồn mở nên phần mềm

chạy trên Arduino được chia sẻ dễ dàng và tích hợp và các nền tảng khác
nhau.
• Mở rộng phần cứng: Arduino được thiết kế và sử dụng theo dạng module
nên việc mở rộng phần cứng cũng dễ dàng hơn.
• Đơn giản và nhanh: rất dễ dàng lắp ráp, lập trình và sử dụng thiết bị
• Dễ dàng chia sẻ: mọi người dễ dàng chia sẻ mã nguồn với nhau mà
không lo lắng về ngôn ngữ hay hệ điều hành mình đang sử dụng
2.3.2.2 Cấu trúc phần cứng và chức năng
Arduino Uno là một bo mạch vi điều khiển dựa trên chip Atemaga 328. Nó
có 14 chân vào bằng tín hiệu số, trong đó có 6 chân có thể sử dụng để điều chế
độ rộng xung. Có 6 chân đầu vào tín hiệu tương tự cho phép chúng ta kết nối với
các bộ cảm biến bên ngoài để thu thập số liệu, sử dụng một dao động thạch anh
tần số dao động 16MHz, có một cổng kết nối bằng chuẩn USB để chúng ta nạp
chương trình vào bo mạch và một chân cấp nguồn cho mạch, một ICSP header,
GVHD : ThS Trần Trọng Thắng

Page 14


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

một nút reset. Nó chứa tất cả mọi thứ cần thiết để hỗ trợ các vi điều khiển,
nguôn cung cấp cho Arduino có thể là máy tính thông qua cổng USB hoặc là từ
bộ lọc nguồn chuyên dụng được biến đổi từ xoay chiều sang một chiều hoặc lấy
nguồn từ pin.
a)Khối nguồn
Arduino có thể hỗ trợ thông qua kết nối USB hoặc với một nguồn cung cấp

điện bên ngoài. Các nguồn năng lượng được lựa chọn tự động. Hệ thống vi điều
khiển có thể hoạt động bằng nguồn cung cấp bên ngoài từ 6V hoặc 20V. Tuy
nhiên, nếu cung cấp ít hơn 7V, chân 5V có thể cung cấp ít hơn 5V và hệ thống vi
điều khiển có thể không ổn định. Nếu cấp nhiều hơn 12V, hoặc chỉnh điện áp có
thể quá nó và gây nguy hiểm cho bo mạch. Phạm vi khuyến nghị là 7V đến 12V.
• Chân Vin: điện áp đầu vào Arduino khi chúng ta dùng nguồn điện bên
ngoài( khác với nguồn 5V lấy từ USB hoặc thông qua jack cắm ngoài
riêng). Chúng ta có thể cung cấp nguồn thông qua chân này.
• Chân 5V: cung cấp nguồn vi điều khiển và các bộ phận khác trên bo





mạch và cung cấp cho các thiết bị ngoại vi khi kết nối tới bo mạch.
Chân 3,3V : cung cấp nguồn cho các thiết bị cảm biến
Chân GND: chân nối đất
Chân Aref: tham chiếu điện áp đầu vào analog
Chân IOREF: cung cấp điện áp cho các vi điều khiển hoạt động.

Một shield được cấu hình đúng có thể đọc điện áp IOREF và lựa chọn nguồn
tích hợp hoặc kích hoạt bộ chuyển đổi điện áp để làm việc ở mức 5V hoặc 3,3V
b) Bộ nhớ
Chip Atmega có 32Kb (với 0,5Kb sử dụng cho bootloader). Nó còn có 2Kb
SRAM và 1 Kb EFPROM.
c) Chân vào ra

GVHD : ThS Trần Trọng Thắng

Page 15



Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Hình 2.5: Sơ đồ chân arduino
Arduino Uno có 14 chân digital (chân 0-13) và 6 chân analog ( chân A0-A5)
Các chân digital chúng ta có thể cấu hình để làm chân nhận dữ liệu vào từ
các thiết bị ngoại vi hoặc làm chân để truyền tín hiệu ra các thiết bị ngoại vi.
Bằng cách sử dụng các hàm pinMode(), digitalWrite() và digitalRead(). Mỗi
chân có thể cung cấp hoặc nhận một dòng điện tối đa 40mA và có một điện trở
kéo nối 20 -50 kOhms. Ngoài ra có một số chân có chức năng đặc biệt:
• Chân 0 (Rx): chân được dùng để nhận dữ liệu nối tiếp.
• Chân 1 (Tx): chân được dùng để truyền dữ liệu nối tiếp.
• Chân 2 và 3: chân ngắt ngoài.
• Chân 2, 5, 6, 9, 10, 11: chân vào/ra hoặc có thể điều chỉnh độ rộng xung
• Chân 13 được nối tiếp với 1 LED đơn, sáng tắt tương ứng với mức logic
của chân này
• Chân 10(ss) 11(MOSI), 12(MISO), 13 (SCK): chuẩn giao tiếp SPI.
• Các chân analog có độ phân giải 10bit (tương ứng với 1024 mức giá trị
khác nhau) ứng với từ 0-5V. Ngoài ra một số chân có chức năng đặc biệt:
• Chân A4(SDA) và A5(SCL): hỗ trợ truyền thông TWI.

2.3.2.3 Môi trường phát triển (trình biên dịch IDE)
GVHD : ThS Trần Trọng Thắng

Page 16



Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Môi trường phát triển Arduino được phát triển dựa trên ngôn ngữ lập trình
Processing và dự án Wiring. Được thiết kế cho những người không biết nhiều về
lập trình, bao gồm trình soạn thảo có chứ năng đánh dấu cú pháp, tự động đóng
mở các cặp ngoặc nhọn, tự động thụt cách đầu dòng. Kèm theo đó là khả năng
biên dịch và nạp chương trình vào chip vi điều khiển. Một chương trình viết bằng
Arduino gọi là một “sketch”. Như đã nói ở trên, Arduino là một dự án mã nguồn
mở, do đó có thể download mọi thứ miễn phí, bao gồm cả IDE từ trang chủ của
Arduino. IDE này không cần phải cài đặt, chỉ cần download một tập tin nén về từ
trang chủ, giải nén và chạy tập tin arduino.exe. Khi đó, trên màn hình sẽ xuất
hiện cửa sổ như sau:

GVHD : ThS Trần Trọng Thắng

Page 17


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Hình 2.6: Trình biên dịch IDE

*Các nút cơ bản trên thanh công cụ:

Verify: Kiểm tra mã nguồn có khớp với chương trình trên bo Arduino hay
không
• Upload: Biên dịch và tải mã nguồn lên Arduino
• New: Tạo tập tin mã nguồn mới
• Open: Mở tập tin mã nguồn

Save: Lưu tập tin mã nguồn
Serial Monitor: Màn hình giao tiếp nối tiếp, dùng để xem dữ liệu được
gửi
từ Arduino
Ở giữa là không gian soạn thảo mã nguồn. Ở dưới là cửa số Output, nơi
hiển thị các thông báo khi biên dịch và upload chương trình lên bo Arduino.
Để sử dụng Arduino, đầu tiên là cắm bo Arduino vào bằng cáp USB. Cài
driver cho bo Arduino. Mở chương trình lập trình Arduino lên và thực hiện việc
lập trình.
2.3.3 Mạch điều khiển động cơ Robo shield
Robo Shield là sản phẩm chuyên dùng cho việc điều khiển robot. Trên
Shield thành phần chính là IC L298 dán, cho phép điều khiển 02 động cơ DC,
hoặc một động cơ bước. Shield được tích hợp các khe cắm cho module
ESP8266 - một module wifi mạnh mẽ, Bluetooth HC06, Module RF PT2272
nhằm ứng dụng cho việc nhận tín hiệu điều khiển không dây từ xa. Robo Shield
GVHD : ThS Trần Trọng Thắng

Page 18


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân


tương thích với Arduino Uno, Arduino Mega hoặc có thể cắm dây với các board
arduino khác.

Hình 2.7: Mạch điều hiển động cơ robo shield
Cấu trúc và chức năng:
Robo shield có thể hoạt động nhờ vào nguồn cung cấp từ 6v đến 46v.
+ Chân 5V: cung cấp nguồn điều khiển và các bộ phận khác trên bo mạch
và cung cấp cho các thiết bị ngoại vi khi kết nối tới bo mạch.
+ Chân 3,3V : cung cấp nguồn cho các thiết bị cảm biến
+ Chân GND: chân nối đất
+ OUT1, OUT2, OUT3, OUT4: là chân cung cấp nguồn cho động cơ
+ ngoài ra còn một số chân có chức năng tương ứng với các chân của
Arduino.

2.3.4 Cảm biến MPU6050
GVHD : ThS Trần Trọng Thắng

Page 19


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

2.3.4.1 Giới thiệu cảm biến MPU6050
MPU6050 là cảm biến của hãng InvenSense. MPU6050 là một trong những
giải pháp cảm biến chuyển động đầu tiên trên thế giới có tới 6 (mở rộng tới 9)
trục cảm biến tích hợp trong 1 chip duy nhất.

MPU6050 sử dụng công nghệ độc quyền MotionFusion của InvenSense có
thể chạy trên các thiết bị di động, tay điều khiển… Nó được điều hành ra một
nguồn cung cấp 3.3V/5V, và giao tiếp thông qua I2C với tốc độ tối đa 400kHz.
Chip này cũng có sẵn trong một gói SPI được gọi là MPU6000 cho tốc độ giao
tiếp lên tới 10Mbs.
Thông số chuyển động:
• Có thể lựa chọn + -2/4 / 8 / 16g phạm vi gia tốc.
• Có thể lựa chọn + -250 / 500/1000/2000 độ/s phạm vi con quay hồi
chuyển16 bit đầu ra.
• Con quay nhạy cảm của gia tốc tuyến tính 0.1 độ/s, một cải tiến lớn so với
con quay hồi chuyển của các công ty khác. Tiếng ồn thấp trên cả hai kết
quả đầu ra, xem thông số kỹ thuật.Tỷ lệ sản lượng dữ liệu lên đến
1000Hz, mặc dù được xây dựng bằng kỹ thuật số thấp vượt qua bộ lọc có
tần số góc tối đa là 256Hz.
• Con quay hồi chuyển 3 trục (3-axis MEMS gyroscope)
• Cảm biến gia tốc 3 chiều (3-axis MEMS accelerometer)
• Một tính năng của chip này là bộ xử lý chuyển động kỹ thuật số (DMP).
Trong lý thuyết này có thể được sử dụng để sản xuất trực tiếp các góc
Euler, quaternions, hoặc một hướng cosin ma trận, và thậm chí thực hiện
lọc cùng với việc tích hợp dữ liệu từ một la bàn I2C bên ngoài.
• MPU6050 có thể kết hợp với cảm biến từ trường (bên ngoài) để tạo thành
bộ cảm biến 9 góc đầy đủ thông qua giao tiếp I2C.
• Hơn nữa, MPU6050 có sẵn bộ đệm dữ liệu 1024 byte cho phép vi điều
khiển phát lệnh cho cảm biến, và nhận về dữ liệu sau khi MPU-6050 tính
toán xong.

GVHD : ThS Trần Trọng Thắng

Page 20



Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

2.3.4.2 Các chân giao tiếp

Hình 2.8: Chân giao tiếp mpu6050
VCC

5V/3V3

GND

0V

SCL

Chân SCL trong giao tiếp I2C

SDA

Chân SDA trong giao tiếp I2C

XDA

Chân dữ liệu (kết nối với cảm biến khác)

XCL


Chân xung (kết nối với cảm biến khác)

AD0

Bit 0 của địa chỉ I2C

INT

Chân ngắt

2.3.5 Động cơ Encoder 334 Xung + Giảm Tốc RP201
Động cơ 334 xung+ giảm tốc RP201 mạnh mẽ có kèm hộp số với nhiều
loại tỷ số truyền khác nhau. Động cơ có thể sử dụng làm các loại xe robot cần
các momen xoắn cao.
*Thông số kỹ thuật:







Tỉ số : 1:21
Điện áp DC3-12V
Trục 4MM
Tốc độ không tải:201 rpm/m
Tốc độ tải : 250 ma
-Công suất định mức:1.25w


GVHD : ThS Trần Trọng Thắng

Page 21


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Với kích thước nhỏ gọn dễ dang lắp đặt vào mô hình robot

Hình 2.9: Động cơ Encoder

2.4 Các phương thức giao tiếp
2.4.1 Điều chế độ rộng xung PWM
Có ba cách để điều khiển tốc độ động cơ DC servo trong kỹ thuật: Phương
pháp điều áp (Linear Power Amplification), phương pháp điều độ tần số xung
(PFM) và phương pháp điều độ rộng xung (PWM). Đề tài này áp dụng kỹ thuật
điều

độ

rộng

xung (PWM). Trong đề tài này ta sử dụng phương pháp điều chế độ rộng xung.
* Nguyên lý:
Nhìn trên hình vẽ, TON và TOFF lần lượt là khoảng thời gian kích (trạng
thái
HIGH) và ngắt tín hiệu (trạng thái LOW) trong một chu kỳ. Việc làm này sẽ tạo ra

một mức điện áp trung bình VTB cấp cho động cơ tương ứng với một mức tốc

GVHD : ThS Trần Trọng Thắng

Page 22


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

độ
động cơ.

Hình 2.10: Điều chế độ rộng xung

Như vậy, với hai tín hiệu S1 và S2 có cùng chu kỳ, nhưng chỉ có tỉ lệ
TON/TOFF
giữa hai tín hiệu là khác nhau. Lúc này tương ứng hai điện áp trung bình khác
nhau
sẽ được thu và cho hai tốc độ khác nhau. Phương pháp này được gọi là điều
rộng
xung, cho phép điều khiển tốc độ động cơ như mong muốn. Cũng cần chú ý
rằng vì đây là điện áp trung bình của động cơ tương ứng với một tỉ lệ TON/TOFF
nào đó, nên mối quan hệ giữa vận tốc động cơ và điện áp trung bình này là
không tuyến tính.

GVHD : ThS Trần Trọng Thắng


Page 23


Khoa: Điện tử viễn thông
bằng

SVTH : Nhóm robot cân

Hình 2.11: Quan hệ giữa vận tốc không tải của động cơ DC và chu kỳ PWM
cho động cơ DC Hitachi

Điều này dễ hiểu bởi điện áp trung bình được tính bằng tích phân trong một
chu kỳ của điện áp ngõ vào, cũng chính là trong khoảng TON.
Chu kỳ của một tín hiệu ra PWM là khoảng thời gian mà sau đó mẫu tín
hiệu
được lặp lại.
• Tần số PWM = 1/chu kỳ.
• Hệ số duty là tỉ lệ bề rộng của mức ‘1’ so với bề rộng chu kỳ.
• Độ phân giải (resolution) tín hiệu PWM là phần mịn nhất là hệ số duty có
thể được điều chế.
Có hai cách tạo ra xung PWM:
• Mạch tương tự (analog): có giá trị thay đổi liên tục và có độ phân giải vô
hạn cả về thời gian và biên độ, có thể được dùng để điều khiển trực tiếp
nhiều thứ, như độ lớn âm được phát ra từ một radio, tốc độ của động cơ.
Tuy nhiên, việc xây dựng và thiết kế mạch tương tự thường tốn kém. Có
thể tạo ra một mạch PWM nhưng độ chính xác thường không cao và dễ
điều khiển như mạch số.

GVHD : ThS Trần Trọng Thắng


Page 24


Khoa: Điện tử viễn thông
bằng


SVTH : Nhóm robot cân

Mạch số: bằng cách điều khiển các tín hiệu analog một cách số hóa, giá
thành hệ thống và tiêu hao năng lượng hệ thống có thể giảm một cách
đáng kể. Hơn nữa, nhiều vi điều khiển và DSPs hiện nay có thêm các bộ
điều khiển PWM tích hợp, đưa đến việc điều khiển trở nên đơn giản hơn
rất nhiều. Thông qua một bộ đếm có độ phân giải cao, hệ số duty của
một sóng vuông được mã hóa thành một mức tín hiệu analog đặc trưng.
Tín hiệu PWM vẫn là tín hiệu số vì tại một thời điểm bất kỳ, nguồn DC
qua tải là mở hết hoặc ngắt hết.
*Cài đặt PWM trong các bộ vi điều khiển:
Đối với điều khiển PWM bằng phần cứng từ các vi điều khiển có tích hợp

bộ
PWM trong các Timer, để bắt đầu PWM thì phần mềm của chip phải thực hiện
các
nhiệm vụ sau:







Đặt chu kỳ của timer/counter điều chế xung vuông.
Đặt thời gian của thanh ghi điều khiển PWM.
Đặt hướng ra của tín hiệu PWM, tín hiệu có đảo hay không đảo.
Khởi động timer.
Mở khả năng của bộ điều khiển PWM.

* Ưu diểm:
Một trong những ưu điểm của PWM là khả năng chống nhiễu giá trị từ bộ
xử



đến hệ thống điều khiển, do tín hiệu bản chất vẫn là tín hiệu số nên nhiễu chỉ xảy
ra
nếu nó đủ mạnh hơn mức tín hiệu số để đổi logic từ 1 thành 0 hoặc ngược lại.
Đây là một ưu điểm mà đôi khi được dùng cho truyền thông: tăng bề rộng
của

GVHD : ThS Trần Trọng Thắng

Page 25


×