Phần mềm Proteus cho phép mô phỏng hoạt động của mạch điện tử bao gồm phần thiết kế mạch và viết chương trình điều khiển cho các họ vi điều khiển như MCS-51, PIC, AVR, … Proteus là phần mềm mô phỏng mạch điện tử của Labcenter Electronics, mô phỏng cho hầu hết các linh kiện điện tử thông dụng, đặc biệt hỗ trợ cho cả các MCU như PIC, 8051, AVR, Motorola.
Phần mềm bao gồm 2 chương trình: ISIS (Intelligent Schematic Input System) cho phép mơ phỏng mạch và ARES (Advanced Routing and Editing Software) dùng để vẽ mạch in.
33
Dễ dạng tạo ra một sơ đồ nguyên lý từ đơn giản đến phức tạp. Dễ dàng chỉnh sữa các đặc tính của linh kiện trên sơ đồ nguyên lý.
Hỗ trợ kiểm tra lỗi thiết kế trên sơ đồ nguyên lý. Có thể xem và lưu lại phần báo lỗi
Phần mềm chạy mơ phỏng và phân tích các tính chất của một mạch điện một cách chính xác.
Proteus cung cấp cho người sử dụng công cụ biên dịch cho các họ vi xử lý như MSC51, AVR, HC11, …qua đó tạo ra các tập tin .hex dùng để nạp cho vi xử lý và tạp tin .dsi dùng để xem và chạy kiểm tra từng bước trong quá trình mơ phỏng.
Phần mềm cung cấp rất nhiều mơ hình linh kiện có chức năng mô phỏng, từ các vi điều khiển thông dụng đến các linh kiện ngoại vi như LED, LCD, Keypad, cổng RS232… cho phép người sử dụng mô phỏng từ một hệ vi điều khiển hoàn chỉnh đến việc xây dựng phần mềm cho hệ thống đáp ứng các giao thức vật lý. Ngồi ra, Proteus cịn cho phép bạn tự tạo linh kiện tương tác động do đó bạn có thể thực hiện các mơ phỏng có tương tác giống như hoạt động của một mạch thật.
Mô phỏng:
34
Khả năng ứng dụng chính của Proteus là mơ phỏng, phân tích các kết quả từ các mạch nguyên lý. Proteus giúp người sử dụng có thể thấy trước được mạch thiết kế chạy đúng hay sai trước khi thi công mạch.
Các cơng cụ phục vụ cho việc phân tích mạch có độ chính xác khá cao như vơn kế đo điện áp, ampe kế đo dịng điện, máy đao động ký.
Thiết kế mạch in PCB
Là tính năng dễ sử dụng trong Proteus. Bạn có thể tự tạo bản thiết kế hoặc bắt Proteus làm hộ bạn. Tự tạo bản thiết kế rất dễ dàng chỉ cần bạn đặt những chi tiết vào sơ đồ và vẽ đường mạch điện chạy qua. Đừng lo lắng về việc vi phạm bất kỳ quy tắc thiết kế nào bởi vì nó sẽ tự động phát hiện ra lỗi. Cịn nếu muốn Proteus làm thay bạn thì chỉ cần đặt các chi tiết vào vị trí tương ứng rồi cho chạy tự động. Nó sẽ vẽ ra các cách đặt đường mạch và lựa bản tốt nhất. Và hiện nay cịn có một tùy chỉnh nữa “Auto placer”, nó u cầu bạn xác lập kích thước bảng bằng cách vẽ hình dáng và kích cỡ bản mạch. Sau đó, nó tự động đặt các chi tiết vào trong khn. Sau đó, tất cả việc bạn phải làm là lập sơ đồ mạch.
Ưu điểm:
- Dễ dạng tạo ra một sơ đồ nguyên lý từ đơn giản đến phức tạp.
- Dễ dàng chỉnh sữa các đặc tính của linh kiện trên sơ đồ nguyên lý.
- Hỗ trợ kiểm tra lỗi thiết kế trên sơ đồ nguyên lý. Có thể xem và lưu lại phần báo lỗi
- Phần mềm chạy mơ phỏng và phân tích các tính chất của một mạch điện một cách chính xác.
- Proteus cung cấp cho người sử dụng công cụ biên dịch cho các họ vi xử lý như MSC51, AVR, HC11, …qua đó tạo ra các tập tin .hex dùng để nạp cho vi xử lý và tạp tin .dsi dùng để xem và chạy kiểm tra từng bước trong quá trình mơ phỏng.
35
- Phần mềm cung cấp rất nhiều mơ hình linh kiện có chức năng mơ phỏng, từ các vi điều khiển thông dụng đến các link kiện ngoại vi như LED, LCD, Keypad, cổng RS232… cho phép người sử dụng mô phỏng từ một hệ vi điều khiển hoàn chỉnh đến việc xây dựng phần mềm cho hệ thống đáp ứng các giao thức vật lý. Ngồi ra, Proteus cịn cho phép bạn tự tạo link kiện tương tác động do đó bạn có thể thực hiện các mơ phỏng có tương tác giống như hoạt động của một mạch thật.
Nhược điểm:
36
CHƯƠNG 3:PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
3.1.Đặc tả yêu cầu hệ thống
3.1.1.Các yêu cầu chức năng
- Tự động dọn dẹp bụi bẩn, bụi khô, bụi mịn.
- Có khả năng tránh xa chạm tường và các vật thể lớn.
- Có khả năng tránh rơi bậc cầu thang.
- Hiển thị thơng tin mức pin cịn lại.
- Di chuyển ổn định và linh hoạt.
- Hoạt động không bị nhiễu do các thiết bị khác gây ra.
- Sử dụng nguồn pin 12 VDC.
- Hệ thống làm việc ổn định.
- Có khả năng đưa vào ứng dụng thực tế.
3.1.2.Các yêu phi cầu chức năng
- Độ chính xác tương đối cao.
- Các linh kiện trong hệ thống đảm bảo hoạt động bình thường.
- Hệ thống thiết kế chắc chắn, độ hoàn thiện tốt.
- Giá thành tương đối rẻ.
- Thiết kế hoàn thiện, sử dụng an toàn.
3.2.Thiết kế hệ thống
3.2.1.Thiết kế phần cứng cho hệ thống
Hệ thống gồm có 4 khối chính:
- Khối xử lý: Arduino Uno nhận các thông tin từ các cảm biến siêu âm, cảm biến hồng ngoại đưa về. Làm nhiệm vụ xử lý, tính tốn tín hiệu từ cảm biến
37
đưa về. Điều khiển khối chấp hành phù hợp theo số liệu, tín hiệu từ các cảm biến đưa về.
- Khối cảm biến: sử dụng các cảm biến siêu âm HC-SR04, cảm biến hồng ngoại thu thập số liệu, tín hiệu. Số liệu và tín hiệu thu được gửi về khối xử lý trung tâm.
- Khối chấp hành: gồm module điều khiển động cơ L298, các động cơ giảm tốc, động cơ hút bụi. Khối chấp hành nhận lệnh điều khiển hoạt động từ khối xử lý trung tâm, điều khiển tốc độ và chiều quay các động cơ giảm tốc giúp hệ thống vận hành đúng theo tín hiệu điều khiển từ khối xử lý trung tâm.
- Khối nguồn: nguồn 12VDC cấp nguồn cho các khối hoạt động, công tắc on/off kiểm soát hoạt động cấp nguồn cho hệ thống, terminal mở rộng việc cấp nguồn, jack sạc pin 12VDC. Ngoài ra cịn có các ic LM7809, LM7805 có nhiệm vụ ổn định điện áp cấp cho hệ thống.
38
Hình 3.2: Sơ đồ nguyên lý
Sơ đồ nguyên lý:
- Khối xử lý: Arduino Uno R3.
- Khối Cảm biến: gồm 3 cảm biến siêu âm HC-SR04 và 1 cảm biến hồng ngoại.
- Khối chấp hành: gồm có module điều khiển động cơ L298, các motor giảm tốc DC, motor hút bụi.
- Khối nguồn: Nguồn pin 12VDC, module ổn áp 7809, molue ổn áp 7805, công tắc on/off, terminal mở rộng nguồn, jack sạc pin 12VDC.
39
Hình 3.3: Sơ đồ mạch board mặt bottom
40
3.2.2.Thiết kế phần mềm cho hệ thống
Lưu đồ thuật toán robot hút bụi
Sau khi khởi động, hệ thống sẽ liên tục kiểm tra cảm biến hồng ngoại, cảm biến siêu âm. Sau đó hệ thống xử lý phân tích, tính tốn số liệu từ các cảm biến gửi về và điều khiển các động cơ ở khối chấp hành hoạt động theo yêu cầu.
41
Hình 3.6: Luu đồ thuật tốn phần State tránh rơi
Nếu tín hiệu tự cảm biến hồng ngoại trả về là 1, thực hiện chạy vào State tránh rơi, lùi 1,5 giây sau đó kiểm tra khoảng cách trái và khoảng cách phải khoảng cách phải. Nếu khoảng cách trái lớn hơn, thực hiện quay trái 45°, ngược lại thì quay phải 45°. Sau đó tiếp tục chạy theo chương trình.
42
Hình 3.7: Lưu đồ thuật tốn phần State Trái
Chương trình kiểm tra cảm biến nếu phát hiện vật cản thì kiểm tra tiếp đến khoảng cách từ cảm biến trái và phải đến vật cản.
Nếu khoảng cách trái lớn hơn khoảng cách phải, thực hiện chạy vào phần State Trái, quay trái 90° và tiếp tục chạy thẳng, sau đó kiểm tra nếu có vật cản thực hiện quay trái 90° sau đó tiếp tục chạy theo quỹ đạo thẳng.
43
Hình 3.8: Lưu đồ thuật tốn phần State Phải
Chương trình kiểm tra cảm biến nếu phát hiện vật cản thì kiểm tra tiếp đến khoảng cách từ cảm biến trái và phải đến vật cản.
Nếu khoảng cách trái nhỏ hơn khoảng cách phải, thực hiện chạy vào phần State Phải, quay phải 90° và tiếp tục chạy thẳng, sau đó kiểm tra nếu có vật cản, thực hiện quay phải 90° sau đó tiếp tục chạy theo quỹ đạo thẳng.
44
CHƯƠNG 4:TÍCH HỢP VÀ ĐÁNH GIÁ HỆ THỐNG
4.1.Xây dựng và tích hợp hệ thống
Kết thúc phần tìm hiểu về cơ sở lý thuyết và phần phần tích thiết kế hệ thống, việc xây dựng và tích hợp hệ thống là bước cuối cùng trong việc hoàn thành hệ thống cuối cùng.
4.1.1.Thiết kế phần cứng
a. Linh kiện
Bảng 4.1: Danh sách linh kiện
STT Tên linh kiện Số lượng
1 Arduino Uno R3 1
2 Cảm biến siêu âm HC-SR04 3
3 Cảm biến thi phát hồng ngoại 1
4 Động cơ DC giảm tốc 4 5 Module L298 1 6 Module 7805 1 7 Module 7809 1 8 Module Relay 5V 1 9 Pin 18650 3 10 Quạt hút bụi 1
11 Module hiển thị phần trăm pin 1
12 Công tắc On/Off 1
13 Jack 12V DC 1
45 14 Bánh xe đa hướng 2 15 Chổi quét 2 16 Bánh xe 2 b. Hệ thống hồn thiện Hình 4.1: Hệ thống hồn thiện
Tổng quan mơ hình hệ thống gồm các chi tiết cụ thể như: motor hút bụi, cảm biến siêu âm (nhận biết vật cản), màn hình báo dung lượng pin…
Cảm biến siêu âm
Mức pin
Motot hút bụi
46
Hình 4.2: Cơng tắc bật/tắt, cổng sạc pin
Hệ thống sử dụng loại công tắc on/off. Chân sạc là loại DC 5.5 x 2.1 cm
Hình 4.3: Màn hình hiển thị dung lượng pin
Màn hình hiển thị 4 vạch pin tương ứng với 4 mức phần trăm pin là: 100%, 75%, 50% và 25%.
4.1.2.Lập trình phần mềm cho hệ thống
Phần mềm Arduino IDE
Cổng sạc pin Công tắc on/off
47
- Sử dụng phần mềm Arduino IDE viết mã nguồn chương trình chính.
- Phần mềm Arduino IDE giúp việc biên dịch và nạp mã nguồn trược tiếp vào khối xử lý trung tâm Arduino Uno R3.
4.1.3.Tích hợp hệ thống
- Mạch phải đúng nguyên lý, hoạt động đúng chức năng. - Lựa chọn linh kiện phù hợp với bài toán.
- Các chân giao tiếp Arduino Uno R3 và các Module được nối với nhau, tương thích với chương trình đã viết.
4.2.Kiểm thử và đánh giá hệ thống
4.2.1.Phương pháp kiểm thử hệ thống
- Chạy chương trình trên phần mềm mô phỏng Proues. - Kiểm tra chức năng của mơ hình sản phẩm.
- Kiểm tra độ tin cậy và ổn định của sản phẩm.
4.2.2.Đánh giá hệ thống
- Hệ thống vận hành ổn định.
- Hoạt động đúng theo yêu cầu đặt ra. - Hiển thị thơng tin mức pin cịn lại. - Mơ hình nhỏ gọi, dễ di chuyển. - Giá thành hợp lý.
4.3.Hướng dẫn vận hành hệ thống
Sau khi hoàn thiện sản phẩm, tiến hành kiểm tra hoạt động của hệ thống.
- Bước 1: Bật công tắc nguồn.
- Bước 2: Tạo một chướng ngại vật xem robot có hoạt động đúng theo yêu cầu không.
- Bước 3: Quan sát xem robot có hoạt động bình thường sau khi tránh các chướng ngại vật.
48
KẾT LUẬN
- Kết quả đạt được:
Sau một thời gian nghiên cứu, đề tài đã hoàn thiện và đáp ứng đầy đủ một số yêu cầu ban đầu đặt ra cụ thể:
• Nghiên cứu về robot tránh vật cản trong cơ sở thực tiễn và cơ sở lí thuyết thiết kế robot tránh vật cản sử dụng cảm biến siêu âm.
• Chế tạo thành cơng robot tránh vật cản sử dụng cảm biến siêu âm. • Nghiên cứu, chế tạo thành cơng máy hút bụi.
• Kết hợp thành công robot tránh vật cản và phần máy hút bụi để thành robot hút bụi tự động.
• Robot hút bụi tự động chạy ổn định, hút bụi khá sạch. Mơ hình thiết kế đã đáp ứng được các mục tiêu:
• Xây dựng thành cơng mơ hình cơ khí nhỏ, gọn. • Kết cấu mơ hình đơn giản, hợp lý.
• Mơ hình hồn thiện được đóng hộp, đảm bảo thẩm mỹ. - Hạn chế của đề tài:
• Nếu chướng ngại vật quá bé hoặc ngồi tầm qt của cảm biến thì cảm biến không hoạt động dẫn đến robot chạy sai yêu cầu.
• Lực hút bụi chưa thực sự khoẻ.
• Chưa có phần mơ phỏng đường đi, nên đường đi hút bụi là ngẫu nhiên. - Hướng phát triển của đề tài:
• Lắp thêm cảm biến để robot có thể hoạt động tốt hơn khắc phục nhược điểm của robot cũ.
• Thêm thuật tốn di chuyển để robot có thể di chuyển tối ưu hơn. • Thiết kế thêm để robot có thể tự trở về chỗ sạc pin khi pin yếu.
49
TÀI LIỆU THAM KHẢO
[1]. Phạm Ngọc Hưng (2020), “Đề cương bài giảng môn thiết kế hệ thống
nhúng,” Trường Đại học Sư phạm Kỹ thuật Hưng Yên.
[2]. Đặng Hoài Bắc, Nguyễn Ngọc Minh (2013), Thiết kế hệ tống nhúng, NXB thông tin và truyền thông.
[3]. Phạm Quang Huy, Stem với Arduino – Arduino Dành Cho Người Tự Học.
[4]. Alexander G Dean (2017), Embedded Systems Fundamentals with ARM
Cortex-M based Microcontrollers: A Practical Approach, ARM Education Media UK.
[5]. Ethan Thorpe, Advanced Methods and Strategies of Using Arduino
[6]. John - David Warren, Josh Adams, Harald Molle, Arduino Robotics (Technology in Action)