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 (12.97 MB, 44 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
<b>ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINHKHOA ĐÀO TẠO CHẤT LƯỢNG CAO</b>
<b>---*** </b>
***---BÁO CÁO KỸ THUẬT
NGHIÊN CỨU THIẾT KẾ XÂY DỰNG ROBOT VOI
<b>Chuyên ngành: Kĩ thuật công nghệ điện tử viên thôngGiảng viên : Bùi Thị Tuyết Đan </b>
Ho Chi Minh City, December, 2022
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3"><b><small>CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</small></b>
<b><small>Chuyên ngành: Kỹ thuật công nghệ điện tử viễn thông.Hệ đào tạo: Đào tạo chất lượng cao.</small></b>
<small>I.1. Thu thật dữ liệuI.2. Nội dung dự án:Dựng mơ hình</small>
<small>Xây dựng cơ sở điều khiển chuyển độngXây dựng thiết bị điều khiển</small>
<small> 1.3. Kết quả thí nghiệm </small>
<small>III. NGÀY BỔ NHIỆM:</small> <b><small>28/11/2022</small></b>
<small>IV. NGÀY HOÀN THÀNH: 05/12/2022V. ADVISOR: My-Ha Le, Ph.D.</small>
Ho Chi Minh City, December 2022 Ho Chi Minh City,July 2019
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><small> ADVISOR HEAD OF DEPARTMENT</small>
<small>CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAMĐộc lập-Tự do-Hạnh phúc</small>
<small>Thành phố Hồ Chí Minh, ngày 01 tháng 12 năm 2022</small>
<b><small>Nhóm: Engineers</small></b>
<b><small>Chun ngành: Kỹ thuật cơng nghệ điện tử viễn thông.Hệ đào tạo: Đào tạo chất lượng cao.</small></b>
<small>27-10-2022Tìm hiểu cuộc thi 28-10-2022Tham khảo tư liệu về robot </small>
<small>05-11-2022Tham gia buổi training CLB Sáng tạo</small>
<small>28-11-2022Kiểm tra hoạt động của robot </small>
<small>Faculty of High Quality Training – HCMUTE</small>
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5"><small>03-12-2022Thi đấu robot tại cuộc thi Animal robot </small>
<small>04-12-2022Viết báo cáo kĩ thuật </small>
<small>14-12-2022 Thi đấu robot tại lớp nhập mơn 21-12-2022Báo cáo dự án và thuyết trình </small>
Ho Chi Minh City, 05 December 2022 ADVISOR
<small>CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</small>
<small>Faculty of High Quality Training – HCMUTE</small>
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6"><small>Độc lập-Tự do-Hạnh phúc</small>
<small>Thành phố Hồ Chí Minh, ngày 01 tháng 12 năm 2022</small>
<b><small>Chuyên ngành: Kỹ thuật công nghệ điện tử viễn thông.</small></b>
<b><small>Hệ đào tạo: Đào tạo chất lượng cao. Năm học: 2022-2026.</small></b>
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7"><small>Thành phố Hồ Chí Minh, ngày 21 tháng 12 năm 2022</small>
Chúng em xin cảm ơn cô Tuyết Đan đã tận tâm, hướng dẫn và góp ý cho nhóm em, để hồn thiện đồ án này. Cơ khơng chỉ giúp nhóm em mà cịn động viên, khích lệ truyền cảm hứng để nhóm em có thể hồn thành xuất sắc đồ án này.
Chúng em xin cảm ơn tới bản tổ chức cuộc thi sáng tạo robot “ THẦN TƯỢNG ĐẠI CHIẾN” , đã hỗ trợ bằng các buổi tập huấn, hướng dẫn cụ thể chi tiết các quy trình làm robot sao cho hiệu quả nhất.
Thành phố Hồ Chí Minh, 21 tháng 12 năm 2022 TÁC GIẢ
Thuật ngữ robot được sinh ra từ sân khấu, không phải sinh ra ở xưởng sản xuất. Những robot xuất hiện đầu tiên ở NewYork vào ngày 09/10/1922 trong
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">vở “Rossum’s Universal Robot” của người soạn kịch người Tiệp Karen Kapek viết năm 1921. Trong tác phẩm này nhân vật Rossum và con trai của ông đã tạo ra những chiếc máy gần giống con người để hầu hạ con người. Chiếc Robot công nghiệp được đưa vào ứng dụng đầu tiên, năm 1961 ở một nhà máy ô tô của General motor tại trenton, Mỹ. Mục tiêu ứng dụng robot cơng nghiệp nhằm góp phần nâng cao nắng suất dây chuyền công nghệ, giảm giá thành, nâng cao chất lượng và khả năng cạnh tranh của sản phẩm, đồng thời cải thiện điều kiện lao động. Robot được ứng dụng rộng rãi trong nhiều nghành công nghiệp. Những ứng dụng ban đầu bao gồm gắp đặt vật liệu, hàn điểm à phun sơn. Hàn đường thường được thực hiện bằng tay. Tuy nhiên năng suất thấp do yêu cầu chất lượng bề mặt mối hàng liên quan đến các thao tác của đầu mỏ hàn với mơi trường khắc nghiệt do khói và nhiệt độ phát ra trong quá trình hàn.
Trong đồ án lần này, một mơ hình voi điều khiển từ xa có khả năng di chuyển và gắp gỗ dựa trên bảng điều khiển của sóng RF. Đồ án bao gồm 2 phần: Xây dựng mơ hình voi gắp gỗ và viết chương trình có thể điều khiển mơ hình. Mơ hình voi được chế tạo bằng cách tích hợp mạch điều khiển Ardruino với chức điều khiển tạo sung cho động cơ và cấp nguồn cho RF, tiếp theo là L298N có chức năng điều khiển động cơ vàng cho phép điều khiển tốc độ và hướng của bốn động cơ DC cùng một lúc. Mạch hạ áp là mạch chuyển đổi DC 12V sang 5V cho Servo hoạt động. Ngồi ra mạch RF24 để thu sóng tín hiệu điều khiển và nguồn với 3 cục pin 1850 điện áp 3.7V. Tay điều khiển RF bao gồm các bo mạch như Arduino UNO R3 lập trình thu phát cho RF, mạch RF24R01 dùng để điều khiển hướng di chuyển của robot và RF24 để phát sóng tín hiệu điều khiển
The phrase "robot" originated on stage rather than in a factory. In the 1921 drama "Rossum's Universal Robot" by Czech writer Karen Kapek, robots
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">made their debut in New York on October 9, 1922. In this endeavor, Rossum and his son have built machines that are remarkably similar to humans and are intended to help people. At a General Motors automobile facility in Trenton, USA, the first industrial robot was put to work in 1961. Application of industrial robots aims to enhance working conditions, lower costs, increase product quality and competitiveness, and boost technology line productivity. Numerous industries make extensive use of robots. Material handling, spot welding, and spray painting are examples of early applications. Typically, welding is done by hand. Although the hostile environment created by the smoke and heat released during the welding process limits the productivity, the quality standards for the joint surface are related to the functioning of the torch tip.
In this project, an RF control panel is used to remotely operate a model elephant that can move and pick up wood. Building a wooden elephant model and creating a program to operate it make up the project’s two main components. The L298N, which has a gold motor control function that lets the speed and direction to be regulated, is used to create the elephant model after the Ardruino control circuit has been integrated with extra control for the motor and powering the RF. At once, four DC motors are running. For the servo to function, a DC 12V to 5V converter circuit is used in the low voltage circuit. The RF24 circuit can also be powered by three 1850 mAh batteries at a voltage of 3.7V and receive control signals. Boards like the Ardruino UNO R3 for programming RF transceivers, the RF24R01 circuit for controlling the direction of robot movement, and the RF24 for broadcasting control signals are all included in the RF controller.
<b>NHIỆM VỤ ĐỀ TÀI...iTIẾN ĐỘ DỰ ÁN...ii</b>
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">2.3. Module điều khiển động cơ L298N...12
2.4. Mạch điều khiển Ardruino R3...23
2.5. Sơ đồ nối dây ...28
2.6. Nối dây các mạch với nhau ...35
<b>CHƯƠNG 3: VIẾT CHƯƠNG TRÌNH ĐIỀU KHIỂN...69</b>
3.1. Giới thiệu phần mềm Arduino IDE...69
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12"><b>1.2. Mục tiêu </b>
<b> - Đề tài có những mục tiêu chính sau:</b>
+ Thiết kế sản phẩm hoàn chỉnh gồm xe điều khiển từ xa, có kết nối khơng dây với tay điều khiển PS2 hoặc bluetooth.
+ Viết chương trình cho bộ điều khiển PS2 ( hay điều khiển bằng điện thoại thông qua Bluetoot ), Servo, Ardruino R3 và nạp code vô xe điều khiển.
<b>1.3. Nội dung nghiên cứu</b> + Nối dây các mạch với nhau.
- Nội dung 3: Viết các chương trình điều khiển cho xe. - Nội dung 4: Thử nghiệm mơ hình xe điều khiển - Nội dung 5: Hoàn thiện sản phẩm
- Nội dung 6: Đánh giá kết quả thực hiện.
<b>1.4. Giới hạn </b>
<b> - Ardruino, servo dễ cháy </b>
- Hay bị mất tín hiệu khi di chuyển.
<b>1.5. Bố cục</b>
<b> - Chương 1: Tổng quan</b>
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">+ Giới thiệu các linh kiện cần thiết. + Thiết kế khung xe và sơ đồ nối dây.
+ Giới thiệu về động cơ DC, Servo, L298N và Ardruino R3.
<b> - Chương 3: Viết chương trình điều khiển + Giới thiệu về phần mềm Ardruino IDE</b>
+ Viết chương trình giao tiếp
<b> - Chương 4: Hoàn thiện + Hoàn thiện mơ hình xe</b>
+ Nạp code vào xe điều khiển
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14"><small>Figure 1. 2.1 Arduino R3 ( chíp cắm ) Figure 2. 2.1 L298N </small>
Figure 3. 2.1 Servo Figure 4 2.1 Bluetooth
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">Figure 5. 2.1. Bánh xe và động cơ giảm tốc DC
Figure 6. 2.1. Pin 3.7V và Đế pin
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">Figure 7. 2.1. Bộ hạ áp Figure 8. 2.1 Tấm fomex
Figure 9. 2.1. Dây đực đực Figure 10. 2.1. Dây cái cái
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">Figure 11. 2.1. Dây đực cái Figure 12 2.1. Kẹp giữ vật
<small> Figure 13. 2.1. PS2 Figure 14. 2.1. Đế chuyển đổi chân PS2</small>
<b>2.2. Động cơ Servo MG90S</b>
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">Figure 1. 2.2. Servo
Table 1. 2.2. Thống số các dây servo
này để điều khiển động cơ
- Các tính năng của Servo MG90S: + Điện áp hoạt động: 4.8V ~ 6V DC
+ Tốc độ quay: 0.11 giây/ 60 độ (4.8V), 0.08 giây/60 đô (6V) + Mômen xoắn: 1.8kg/cm (4.8V), 2.2kg/cm (6V)
+ Góc quy: 180°
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">+ Bánh răng: kim loại
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">Table 2. 2.3. Thông số các chân L298N
IN1 & IN2 Các chân đầu vào điều khiển hướng quay của động cơ A
IN3 & IN4 Các chân đầu vào điều khiển hướng quay của động cơ B
OUT1 & OUT 2 Chân đầu ra cho động cơ A OUT3 & OUT 4 Chân đầu ra cho động cơ B
<b>- Các thông số L298N:</b>
+Driver: L298N tích hợp hai mạch cầu H +Điện áp điều khiển : +5V ~ +12V +Dòng tối đa cho mỗi cầu H là :2A
+Điện áp của tín hiệu điều khiển : +5 V ~ +7 V +Dịng của tín hiệu điều khiển : 0 ~ 36Ma +Công suất hao phí : 20W (khi nhiệt độ T = 75 °C) +Nhiệt độ bảo quản : -25°C ~ +130
<b>2.4. Mạch điều khiển Arduino R3</b>
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">Figure 1. 2.4. (1) Nút Reset, (2) Cổng USB, (3) Vi điều khiển, (4) Cổng vào/ra
Figure 2. 2.4. Sơ đồ chân Arduino R3 Table 3. 2.4. Các thông số của Arduino R3
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">Điện áp hoạt động 5V DC ( chỉ đươc cấp qua cồng USB )
Dòng tối đa trên mỗi chân I/O
bootloader
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23"><b>2.5. Sơ đồ nối dây </b>
23
</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24"><b>2.6. Nối dây các mạch với nhau </b>
Nguyên lý điều khiển chuyển dộng của xe dựa trên điều chỉnh tốc độ của bánh
xe để xe có thể rẽ trái rẽ phải tiến lên đi lùi hay dừng lại.
Trường hợp 1: xe chuyển động tiến về phía trước.( moving forward )
Tốc độ góc của hai bánh trước � = � chuyển động với tốc độ <small>4 5 </small> cao và hai bánh sau chuyển độ với tốc độ thấp hơn.
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">Trường hợp 2: Xe rẽ phải ( moving right )
Tốc độ góc của bánh trái � = � chuyển động với tốc độ cao <small>4 7 </small> và hai bánh phía
bên phải là � = � chuyển động ngược lại với tốc độ tương tự,<small>5 6 </small> tạo ra momen xoay làm cho xe chuyển động quay phải tại một chỗ.
Trường hợp 3: xe rẽ trái ( moving left )
Ngược lại với trường hợp trên tốc độ góc của bánh phải � = <small>5 </small> �<small>6 </small>chuyển động với tốc độ cao và hai bánh phía bên trái là �<small>4 </small> = � chuyển động ngược lại với tốc độ tương tự, tạo ra momen<small>7 </small> xoay làm cho xe chuyển động quay phải tại một chỗ.
Trường hợp 4: xe dừng lại ( stop ) bốn bánh xe đều dùng chuyển động. Khi đó vị trí của xe khơng thay đổi.
Để xe dừng lại cả 4 bánh xe chuyển động với tốc độ chậm dần cho đến khi dừng lại.
Trường hợp 5: xe đi lùi (moving backward)
Ngược lại với trường hợp chuyển động tiến lên để xe đi lùi hai bánh sau của xe chuyển động nhanh trong khi đó hai bánh trước được cấp một momen quay thấp và chuyển động theo hai bánh sau.
Hộp số: xe được trang bị 4 họp số chuyển động từ 1 đến 4 tương ứng với mức chuyển động từ thấp tới cao.
</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26"><b>- Phần mềm Arduino IDE là gì ?</b>
Ardruino IDE là một phần mềm với một mã nguồn mở , được sử dụng chủ yếu để viết và biên dịch mã vào module Arduino. Nó bao gồm phần cứng và phần mềm. Phần cứng chứa đến 300,000 board mạch được thiêts kế sẵn với các cảm biên, linh kiện. Phần mềm giúp bạn có thể sử dụng các cảm biến, linh kiện ấy của Arduino một các linh hoạt phù hợp với mục đích sử dụng
Arduino IDE được sử dụng viết và biên dịch mã vào module Arduino Đây là một phần mềm Arduino chính thống, giúp cho việc biên dịch mã trở nên dễ dàng, ngay cả một người bình thường khơng có kiến thức kỹ thuật cũng có thể làm được.
<b>- Arduino IDE hoạt động như thế nào?</b>
</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">Khi người dùng viết mã và biên dịch, IDE sẽ tạo file Hex cho mã. File Hex là các file thập phân Hexa được Arduino hiểu và gửi đến bo mạch bằng cáp USB. Mỗi bo Arduino đều được tích hợp một bộ vi điều khiển, bộ vi điều khiển sẽ nhận file Hex và chạy theo mã được viết.
<b>- Các chức năng cơ bản của Arduino IDE:</b>
+ Arduino IDE bao gồm các phần khác nhau
</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">New: tạo một file mới ( Ctrl + N )
Open: sử dụng để mở file đã được lưu trước đó. ( Ctrl + O )
Open Recent: hiển thị danh sách rút gọn các chương trình đã mở gần đây. Sketchbook: hiển thị các Sketch hiện tại mà bạn đã sử dụng cho project của mình
</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">Close: đóng cửa sổ màn hình chính. (Ctrl + W) Save: được sử dụng để lưu sketch hiện tại. (Ctrl + S)
Save as… : cho phép lưu sketch hiện tại với một tên khác. (Ctrl + Shift + S) Page setup: cài đặt trang để sửa đổi trang (Văn bản). (Ctrl + Shift + P) Print: được sử dụng để in chương trình hiện tại. (Ctrl + P)
Preferences: cài đặt của phần mềm IDE có thể được thay đổi tại đây. (Ctrl +,) Quit: đóng tất cả các cửa sổ IDE. (Ctrl + Q)
Undo / Redo: quay lại một hoặc nhiều bước bạn đã làm trong khi chỉnh sửa. Cut: cắt văn bản đã chọn khỏi trình chỉnh sửa.
Copy: sao chép văn bản đã chọn từ trình chỉnh sửa
Copy for Forum: sao chép và thay đổi kiểu mã phù hợp với diễn đàn. Copy as HTML: sao chép và thay đổi kiểu mã phù hợp với HTML.
</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">Paste: dán văn bản từ văn bản đã sao chép. Select All: chọn tất cả nội dung từ trình chỉnh sửa.
Comment / Uncomment: sử dụng để ghi chú và bỏ ghi chú các dòng mã đã chọn.
Increase / Decrease Indent: thêm hoặc xóa một khoảng trắng ở đầu mỗi dịng đã chọn
Find: tìm văn bản đã nhập trong trình chỉnh sửa Find next: tìm vị trí tiếp theo của từ đang tìm kiếm. Find previous: tìm vị trí trước đó của từ đang tìm kiếm.
Verify / Compile: kiểm tra hoặc xác minh chương trình của bạn nếu có bất kỳ lỗi nào và hiển thị trong bảng đầu ra.
Upload: biên dịch và tải mã lên bo Arduino.
Upload using programmer: tải mã lên bằng Programmer có sẵn trong tab Tools.
Export Compiled Binary: lưu file .hex trong hệ thống Show Sketch Folder: mở thư mục sketch hiện tại.
Include Library: thêm thư viện vào sketch của bạn bằng cách chèn các câu lệnh #include vào đầu mã
Add File… : thêm một file vào sketch và file mới xuất hiện trong tab mới trong cửa sổ.
<b>Tools </b>
</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">Auto Format: định dạng mã của bạn thành một định dạng đẹp để mọi người có thể hiểu.
Archive Sketch: sao chép mã sang định dạng winrar (.zip)
Fix Encoding & Reload: khắc phục sự khác biệt có thể có giữa mã hóa bản đồ char của trình soạn thảo và các bản đồ char của hệ điều hành khác.
Serial Monitor: màn hình nối tiếp hiển thị giao tiếp trực quan bằng cách gửi và nhận dữ liệu
Board: để chọn loại bo Arduino
Port: để chọn cổng mà bạn đã kết nối Arduino
Programmer: để chọn một programmer phần cứng khi lập trình bo mạch hoặc chip và không sử dụng kiểu giao tiếp USB.
Burn Bootloader: được sử dụng để ghi bộ nạp khởi động vào bo Arduino
<b><small>3.2. Chương trình naft RF24L01</small></b>
</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">Figure 1. 3.2. NRF24L01 + PA LNA 2.4Ghz anten rời
<b>- Các tính năng chính: </b>
+ Module sử dụng sóng radio băng tần 2.4Ghz để truyền dữ liệu + Tốc độ truyền lên tới 2Mbps
+ Hoạt động với công suất thấp
+ 11.3mA dịng điện tiêu thụ với chức năng truyền tín hiệu đi ở công suất phát là 0dBm
+ 12.3 mA dòng điện tiêu thụ với chức năng nhận dữ liệu ở tốc độ truyền 2Mbps
+ Dòng tiêu thụ 900nA ở chế độ cơng suất thấp + Dịng tiêu thụ 22uA ở chế độ standby + Nguồn điện đầu vào dải rộng từ 1.9V - 3.6V + Tự động xử lý gói dữ liệu đến và đi
</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">+ Các chân input và output tương thích với điện áp 3.3V và 5V
Sử dụng tương tự như NRF24L01 khơng có khuếch đại và có thể giao tiếp với các module khơng có khuếch đại PA và LNA
Tích hợp khuếch đại cơng suất phát PA ( power amplifier ) và LNA ( Low Noise Amplifier )
Chuẩn chân 2x8 tương tự các mạch NRF24L01 khơng có khuếch đại
<b>- Mã code chương trình naft RF24L01</b>
</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34"><b>3.3 Chương trình servo</b>
Table 5. 3.3 Kết nối chân Servo với Arduino R3
<b>- Mã code chương trình Servo </b>
</div>