Trong nhữngnăm 1960 và 1970, robot được phát triển để thực hiện các tác vụ phức tạp hơn và được sử dụng nhiều trong ngành công nghiệp ô tô.. Hiện nay, robot đang được sử dụng rộng rãi tr
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ
TRUYỀN THÔNG VIỆT – HÀN
KHOA KHOA HỌC MÁY TÍNH
BÁO CÁO VI ĐIỀU KHIỂN
TÌM HIỀU VÀ LẮP RÁP XE ĐIỀU KHIỂN TỪ XA VÀ XE
DÒ LINE
Sinh viên thực hiện: Nguyễn Văn Hoàng - 23IT088
Nguyễn Đình Thái - 23IT248Chu Ngọc Hoàng - 23IT082
Lê Xuân Hoài Nam - 23IT175Trần Thành Hậu - 23IT069
Lê Thị Thúy Nga - 23IT178Nguyễn Thanh Tùng - 23IT301
Lê Cảm - 23IT022
Đà Nẵng, tháng 5, năm 2025ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ
TRUYỀN THÔNG VIỆT – HÀN
Trang 2KHOA KHOA HỌC MÁY TÍNH
BÁO CÁO VI ĐIỀU KHIỂN
TÌM HIỀU VÀ LẮP RÁP XE ĐIỀU KHIỂN TỪ XA VÀ XE
DÒ LINE
Sinh viên thực hiện: Nguyễn Văn Hoàng - 23IT088
Nguyễn Đình Thái - 23IT248Chu Ngọc Hoàng - 23IT082
Lê Xuân Hoài Nam - 23IT175Trần Thành Hậu - 23IT069
Lê Thị Thúy Nga - 23IT178Nguyễn Thanh Tùng - 23IT301
Lê Cảm - 23IT022
Đà Nẵng, tháng 5, năm 2025
Trang 3LỜI CẢM ƠN
Lời đầu tiên, em xin gửi lời cảm ơn chân thành đến cô Nguyễn Thị Huyền Trang.Trong quá trình học tập và tìm hiểu bộ môn Vi điều khiển, chúng em đã nhận được sựquan tâm, giúp đỡ, hướng dẫn tận tình, tâm huyết của cô Cô đã giúp nhóm em tích lũythêm nhiều kiến thức để hoàn thiện bài báo cáo kết thúc môn
Có lẽ kiến thức là vô hạn mà sự tiếp nhận kiến thức của bản thân mỗi người luôn tồntại những hạn chế nhất định Do đó, trong quá trình hoàn thành bài báo cáo, chắc chắnkhông tránh khỏi những thiếu sót Bản thân em rất mong nhận được những góp ý đến
từ cô để bài báo cáo của nhóm em được hoàn thiện hơn
Xin trân trọng cảm ơn!
Trang 4NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Đà Nẵng, ngày tháng….năm 2025
Giảng viên hướng dẫn
Trang 7DANH MỤC HÌNH ẢNH
Trang 8CHƯƠNG I: MỞ ĐẦU
1.1 Lí do chọn đề tài
Trong thời gian qua, khoa học máy tính và xử lý thông tin có những bước tiếnvượt bậc và ngày càng có những đóng góp to lớn và cuộc cách mạng khoa học kỹ thuậthiện đại Đặc biệt sự ra đời và phát triển nhanh chóng của kỹ thuật số làm cho nghành
kỹ thuật điện tử trở nên phong phú và đa dạng hơn Nó góp phần rất lớn trong việc đưa
kỹ thuật hiện đại thâm nhập rộng rãi vào mọi lĩnh vực của hoạt động sản xuất, kinh tế
và đời sống xã hội Từ những hệ thống máy tính đến các thiết bị cá nhân cầm tay điệnthoại Smartphone, để điều khiển các máy công nghiệp đến các thiết bị phục vụ cho đờisống hằng ngày của con người
Với mong muốn tìm hiểu nguyên lý, kỹ thuật trong các hệ thống điều khiển.Được sự hướng dẫn của cô Nguyễn Thị Huyền Trang, nhóm đã chọn đề tài “Tìm hiểu
và lắp ráp xe điều khiển từ xa và xe dò line”
1.2 Mục đích của đề tài
Mục đích nghiên cứu của đê tài này là nghiên cứu về Arduino cụ thể hơn làArduino uno, phương pháp lập trình cho Arduino, để biên dịch chương trình và upchương trình lên board là phần mềm Arduino IDE
1.3 Đối tượng và phạm vi nghiên cứu
Trang 9● Module điều khiển động cơ L298N
● Cảm biến dò line TCR5000
● Cảm biến do khoảng cách bằng sóng siêu âm HC-SR04
1.4 Hướng nghiên cứu và phát triển
● Nghiên cứu nắm bắt phần cứng của Arudino uno và ESP32 chip, sơ đồ khối, bốtrí chân, tập lệnh điều khiển cho Arduino uno và ESP32 chip
● Tìm hiểu cách điều khiển động cơ DC
Trang 10CHƯƠNG II: GIỚI THIỆU
2.1 Tổng quan về Robot
2.1.1 Lịch sử phát triển
Lịch sử phát triển của robot bắt đầu từ những năm 1920 với việc xuất hiện củacác máy tự động đơn giản nhưng chức năng cơ bản Những năm 1950, robot côngnghiệp đầu tiên được sản xuất và sử dụng trong các nhà máy sản xuất Trong nhữngnăm 1960 và 1970, robot được phát triển để thực hiện các tác vụ phức tạp hơn và được
sử dụng nhiều trong ngành công nghiệp ô tô
Những năm 1980, robot bắt đầu được ứng dụng rộng rãi trong các ngành côngnghiệp khác như điện tử, dược phẩm, và thực phẩm Vào những năm 1990, robot cũngđược sử dụng trong các ngành y tế và dịch vụ
Hiện nay, robot đang được sử dụng rộng rãi trong các lĩnh vực như sản xuất, y
tế, dịch vụ và khám phá vũ trụ Các nhà khoa học cũng đang nghiên cứu và phát triểncác loại robot mới với khả năng tự học và tự động hóa nhiều tác vụ khác nhau
Trang 11Hình 2.2 Robot hàn điểm MIG 6
Theo sự tiến bộ của khoa học kỹ thuật, các robot ngày càng được chế tạo nhỏgọn hơn, thực hiện được nhiều chức năng hơn, thông minh hơn Một lĩnh vực đượcnhiều nước quan tâm là các Robot tự hành, các chuyển động của chúng ngày càng đadạng, bắt chước các chuyển động của chân người hay các loài động vật như: bò sát,động vật 4 chân,… Và các loại xe Robot (robocar) nhanh chóng được ứng dụng rộngrãi trong các hệ thống sản xuất tự động linh hoạt (FMS)
Hình 2.3 Robot phẫu thuật Davinci
Từ đó trở đi con người liên tục nghiên cứu phát triển Robot để ứng dụng trongquá tình tự động hóa sản xuất để tăng hiệu quả kinh doanh Ngoài ra, Robot cònđược sử dụng thay cho con người trong các công việc ở môi trường độc hại, khắcnghiệt,… Chuyên nghành khoa học về robot “robotics” đã trở thành một lĩnh vựctrong khoa học, bao gồm các vấn đề cấu trúc cơ cấu động học, động lực học, quỹ đạo
Trang 12chuyển động, chất lượng điều khiển… Tùy thuộc vào mục đích và phương thức tiếpcận, chúng ta có thể tìm hiểu lĩnh vực này ở nhiều khía cạnh khác nhau Hiện nay, cóthể phân biệt các loại robot ở hai mảng chính: Các loại robot công nghiệp (cánh taymáy) và các loại robot di động (mobile robot) Ngoài ra, trong các loại robot côngnghiệp còn được phân chia dựa vào cấu tạo động học của nó: Robot nối tiếp (seriesrobot) và robot song song (parallel robot).
Hình 2.4 Robot song song 6 bậc tự do
Chính công nghệ tiên tiến ở tất cả các lĩnh vực: cơ khí, vi mạch, điều khiển,công nghệ thông tin,… đã tạo ra nền rảng cũng như những thách thức lớn đối với khoahọc nghiên cứu robot Chính vì vậy, con người đã và đang tiếp tục phát triển nâng caomức độ hoàn thiện trong lĩnh vực đầy hấp dẫn này
2.1.2 Các ứng dụng của robot
2.1.2.1 Các ưu điểm khi sử dụng robot
Các loại Robot tham gia vào qui trình sản xuất cũng như trong đời sống sinhhoạt của con người, nhằm nâng cao năng suất lao động của dây chuyền công nghệ, giágiá thành sản phẩm, nâng cao chất lượng cũng như khả năng cạnh tranh của sản phẩmtạo ra Robot có thể thực hiện các tác vụ nguy hiểm hoặc khó khăn mà con ngườikhông thể thực hiện được, đồng thời giảm nguy cơ tai nạn lao động và thương tích chocon người Các tác vụ như hàn, cắt, mài, hoặc vận chuyển vật nặng đều có thể đượcthực hiện bởi robot mà không cần đến sự can thiệp của con người, giảm rủi ro tai nạnlao động
Trang 13Robot có khả năng thực hiện các tác vụ chính xác và đồng nhất, giảm tỷ lệ lỗisản xuất và tăng chất lượng sản phẩm Robot sử dụng các cảm biến và hệ thống điềukhiển để đảm bảo sự đồng bộ và chính xác trong quá trình sản xuất Tăng sự linh hoạt:Robot có thể được lập trình để thực hiện nhiều tác vụ khác nhau và hoạt động trongnhiều môi trường khác nhau, giúp tăng sự linh hoạt và đa dạng hóa sản phẩm hoặcdịch vụ Tăng sức chứa và hiệu quả không gian sử dụng: Robot có thể được thiết kế đểchạy trên những bề mặt khó khăn và hoạt động trong không gian hẹp, giúp tăng sứcchứa và hiệu quả không gian sử dụng Robot cũng có thể được thiết kế để di chuyển vàhoạt động trên môi trường khắc nghiệt như trong nước, trong không khí, hay trongkhông gian.
2.1.2.2 Một số lĩnh vực ứng dụng
Robot được ứng dụng trong đa số các nghành nghề như:
● Sản xuất công nghiệp: Robot được sử dụng để thực hiện các tác vụ sản xuấtnhư hàn, cắt, gia công kim loại, lắp ráp sản phẩm, đóng gói, và vận chuyểnhàng hóa Các ứng dụng của robot trong lĩnh vực này giúp tăng năng suất,giảm lỗi sản xuất, tăng tính chính xác và đồng bộ, và giảm nguy cơ tai nạnlao động
Hình 2.5 Robot hàn gia công cơ khí
● Dịch vụ khách hàng: Robot được sử dụng trong lĩnh vực dịch vụ khách hàngnhư phục vụ trong các nhà hàng, khách sạn, và sân bay Robot có thể được
Trang 14lập trình để thực hiện các tác vụ như giao tiếp với khách hàng, phục vụ đồ
ăn, hoặc vận chuyển hành lý Các ứng dụng của robot trong lĩnh vực nàygiúp tăng tính hiệu quả, tăng sự linh hoạt, và giảm chi phí nhân sự
● Nông nghiệp: Robot được sử dụng trong lĩnh vực nông nghiệp để thực hiệncác tác vụ như thu hoạch, tưới cây, và phun thuốc trừ sâu Robot có thể đượclập trình để thực hiện các tác vụ này một cách chính xác và hiệu quả hơn conngười Các ứng dụng của robot trong lĩnh vực này giúp tăng năng suất, giảmchi phí nhân sự, và giảm sử dụng hóa chất trên đồng ruộng
Ngoài ra, tùy thuộc và các ứng dụng cụ thể khác mà Robot được thiết kế để phục
vụ cho các mục đích khác nhau, tận dụng được các ưu điểm lớn của chúng đồng thờithể hiện khả năng công nghệ trong quá trình làm việc
Trang 15CHƯƠNG III: TÌM HIỂU CÔNG CỤ VÀ LINH KIỆN
3.1 Arduino
3.1.1 Đặc điểm của Arduino
Arduino là một nền tảng phát triển phần cứng và phần mềm mã nguồn mở được
sử dụng rộng rãi trong các dự án điện tử và IoT (Internet of Things) Nó bao gồmmột bộ vi xử lý, các chân kết nối đa chức năng và một môi trường lập trình đượcthiết kế để dễ dàng sử dụng cho các nhà phát triển mới bắt đầu
Arduino được phát triển bởi một nhóm các nhà khoa học máy tính và nhà pháttriển phần cứng tại Italia vào năm 2005 Từ đó đến nay, nó đã trở thành một trongnhững nền tảng phát triển phổ biến nhất cho các dự án điện tử, bao gồm các ứngdụng trong lĩnh vực đo lường, kiểm soát, tự động hóa, robot, cảm biến và các hệthống IoT Arduino có thể được lập trình bằng các ngôn ngữ khác nhau, bao gồm C
và C++ Nó có thể được kết hợp với các module và cảm biến để tạo ra các ứng dụngphức tạp Arduino cũng có thể được kết nối với máy tính qua cổng USB để tảichương trình và thu thập dữ liệu
Một trong những ưu điểm của Arduino là nó rất dễ dàng sử dụng và có giáthành rất rẻ, vì vậy nó rất phù hợp cho các nhà phát triển mới bắt đầu hoặc các dự ánDIY (làm đồ tự chế)
Hình 3.1 Arduino uno
Trang 16● Cổng giao tiếp USB (USB Interface): Arduino được kết nối với máy tínhhoặc các thiết bị khác thông qua cổng USB để truyền tải dữ liệu.
● Chân I/O kỹ thuật số (Digital I/O Pins): Arduino có các chân I/O kỹ thuật
số để kết nối với các thành phần điện tử như LED, Relay, Sensor, v.v
● Chân I/O Analog (Analog I/O Pins): Bên cạnh chân I/O kỹ thuật số,Arduino còn có các chân I/O Analog để đọc các giá trị tín hiệu Analog từcác cảm biến và các thiết bị khác
● Bộ nguồn (Power Supply): Arduino cung cấp bộ nguồn ổn định để cungcấp điện cho các thiết bị điện tử khác
● Nút nhấn (Push Button): Arduino được trang bị các nút nhấn để điều khiển
Các thành phần này cùng hoạt động để tạo ra một nền tảng phát triển đa dụng,cho phép người dùng tùy chỉnh và lập trình các ứng dụng điện tử khác nhau trên nềntảng Arduino
Trang 173.2 Chip ESP32
3.2.1 Đặc điểm của ESP32
ESP32 là một nền tảng phần cứng và phần mềm mã nguồn mở, được phát triển bởi Espressif Systems, chuyên dùng cho các ứng dụng IoT, điều khiển nhúng và mạng hông dây So với Arduino Uno, ESP32 mạnh mẽ hơn nhờ vi xử lý 32-bit hai lõi, tích hợp Wi-Fi và Bluetooth, đồng thời có dung lượng RAM và Flash lớn hơn
Ra mắt lần đầu năm 2016, ESP32 nhanh chóng trở thành lựa chọn phổ biến cho các dự
● Chi phí hợp lý: Giá dao động ~6–12 USD cho board phát triển, phù hợp cả với dự
án cá nhân lẫn công nghiệp nhẹ
Môi trường phát triển chính gồm Arduino IDE (thêm ESP32 Board Package),PlatformIO hoặc ESP-IDF (SDK gốc của Espressif), cho phép lập trình bằng C/C++hoặc MicroPython
Trang 18Hình 3.2: ESP32
3.2.2 cấu trúc của chip ESP32
ESP32 là một nền tảng phát triển mạnh mẽ được sử dụng để thiết kế và xây dựng cácứng dụng điện tử, đặc biệt trong các dự án IoT và hệ thống nhúng ESP32 bao gồm cácthành phần chính như sau:
Vi điều khiển (Microcontroller): ESP32 sử dụng vi điều khiển mạnh mẽ tích hợp hailõi (dual-core) Tensilica® Xtensa® LX6 32-bit, có thể chạy ở tốc độ từ 160 MHz đến
240 MHz Với khả năng xử lý đa nhiệm và hỗ trợ FreeRTOS, ESP32 thích hợp chocác ứng dụng cần hiệu năng cao và quản lý đa luồng
● Cổng giao tiếp USB (USB Interface): ESP32 không có cổng USB trực tiếp trênchip, nhưng trên các board phát triển như ESP32 DevKitC, cổng USB được tíchhợp thông qua IC USB-to-Serial (như CP2102 hoặc CH340G) Cổng USB nàygiúp nạp chương trình và truyền dữ liệu giữa máy tính và ESP32
● Chân I/O kỹ thuật số (Digital I/O Pins): ESP32 có khoảng 34 chân GPIO, trong đóhầu hết có khả năng điều khiển kỹ thuật số, điều khiển PWM, hoặc kết nối cácgiao thức ngoại vi như UART, SPI, I²C, CAN, và RMT Các chân I/O kỹ thuật sốcủa ESP32 hỗ trợ tốc độ cao và có thể cấu hình đa chức năng thông qua GPIOMatrix
Trang 19● Chân I/O Analog (Analog I/O Pins): Bên cạnh các chân kỹ thuật số, ESP32 có cácchân ADC 12-bit (tối đa 18 kênh), cho phép đọc các giá trị tín hiệu Analog từ cảmbiến Ngoài ra, ESP32 còn tích hợp DAC 8-bit (2 kênh), giúp tạo tín hiệu Analog
từ tín hiệu số
● Bộ nguồn (Power Supply): ESP32 có thể nhận nguồn từ cổng USB (5V) hoặc từchân VIN (5-12V) trên các board phát triển Mạch ổn áp tích hợp (LDO) chuyểnđổi điện áp từ 5V xuống 3.3V để cấp nguồn ổn định cho vi điều khiển và các thiết
bị ngoại vi
● Nút nhấn (Push Button): Trên các board phát triển, ESP32 thường được trang bịhai nút nhấn:Nút EN (Reset): Để khởi động lại vi điều khiển,Nút BOOT (Flash):Được sử dụng khi tải firmware lên thiết bị
● Đèn LED (LEDs): ESP32 có một đèn LED báo nguồn (thường màu đỏ) để hiển thịtrạng thái cấp nguồn
● Bộ điều khiển khối lượng (Voltage Regulator): Bộ ổn áp AMS1117-3.3V (trên cácboard phát triển) giúp chuyển đổi điện áp từ nguồn đầu vào (5V từ USB) xuống3.3V để đảm bảo ổn định cho các khối mạch bên trong và các chân GPIO củaESP32
Các thành phần này phối hợp với nhau để tạo ra một nền tảng phát triển mạnh mẽ, phùhợp với các ứng dụng IoT, tự động hóa, điều khiển nhúng, và hệ thống thông minh.ESP32 cho phép người dùng tùy chỉnh và lập trình các ứng dụng điện tử phức tạp mộtcách linh hoạt và hiệu quả
3.3 Module điều khiển động cơ L298N
3.3.1 Giới thiệu module L298N
Module L298N là một module điều khiển động cơ hai chiều, được sử dụng đểđiều khiển động cơ DC hoặc động cơ bước (stepper motor) trong các ứng dụng điện
tử Module này được thiết kế dựa trên mạch tích hợp L298N của hãngSTMicroelectronics
Trang 20Hình 3.3 Module L298N
3.3.2 Các tính năng chính
Các tính năng chính của module L298N bao gồm:
● Điều khiển động cơ hai chiều: Module L298N cho phép điều khiển động
cơ DC hoặc động cơ bước (stepper motor) hai chiều
● Dòng tối đa lên đến 2A: Module L298N có thể điều khiển động cơ vớidòng tối đa lên đến 2A
● Điện áp hoạt động rộng: Module L298N có thể hoạt động với đa dạng điện
áp đầu vào từ 5V đến 35V
● Chức năng bảo vệ quá dòng: Module L298N được trang bị chức năng bảo
vệ quá dòng để bảo vệ động cơ khỏi hư hỏng
● Điều khiển bằng tín hiệu điện: Module L298N có thể được điều khiểnbằng tín hiệu điện từ các vi điều khiển như Arduino hoặc các vi điều khiểnkhác
● Có thể kết nối nhiều module L298N: Người dùng có thể kết nối nhiềumodule L298N với nhau để điều khiển nhiều động cơ cùng một lúc
Trang 213.3.3 Cấu hình sơ đồ chân L298N
IN1 & IN2 Các chân đầu vào điều khiển
hướng quay động cơ A
IN3 & IN4 Các chân đầu vào điều khiển
hướng quay của Động cơ B
Động cơ A
Động cơ BOUT1 & OUT2 Chân đầu ra cho động cơ A
OUT3 & OUT4 Chân đầu ra cho Động cơ B
TCRT5000 có thiết kế nhỏ gọn, đơn giản và dễ dàng sử dụng Nó bao gồm một
bộ phát hồng ngoại và một bộ thu hồng ngoại được tích hợp trong một vỏ nhựa đen.Khi được đặt sát với bề mặt, cảm biến sẽ phát ra tia hồng ngoại và thu lại tia phản xạ
từ đường line trên bề mặt