Mạch nạp cũng như công cụ lập trình kháđa dạng và dễ sử dụng.Một số ứng dụng chính: dùng cho driver để điều khiển ứng dụng, điều khiển ứng dụngthông thường, thiết bị cầm tay và thuốc, má
Trang 1TRƯỜNG ĐẠI HỌC THỦY LỢI
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG HÓA
ĐỒ ÁN VI XỬ LÍ
MÔN HỌC: ĐỒ ÁN TỰ ĐỘNG HÓA 2 PHẦN ĐIỀU KHIỂN TAY MÁY - ĐỒ ÁN 16 Nhóm sinh viên thực hiện:
Nguyễn Việt Hoàng - MSV: 1951211924
Nguyễn Quang Huy - MSV: 1951211942
Nguyễn Đức Hoàng - MSV: 1951211922
Dương Công Hùng - MSV: 1951211932
Lớp: TĐH4 - K61 GVHD: TS LÊ TRUNG DŨNG
Hà Nội, ngày 21 tháng 3 năm 2023
Trang 2MỤC LỤC
Chương 1: TỔNG QUAN VỀ STM32F103C8T6 2
1.1 Giới thiệu chung về STM32F103C8T6 2
1.2 Thông số kĩ thuật vi xử lý STM32F103C8T6 2
1.3 Kit STM32F103C8T6 3
1.4 Ngôn ngữ lập trình STM32F103C8T6 4
Chương 2: LẬP TRÌNH ĐIỀU KHIỂN TAY MÁY 5
2.1 Yêu cầu bài toán 5
2.2 Nguyên lý làm việc 5
2.3 Lưu đồ thuật toán 6
Chương 3: MÔ PHỎNG VÀ THIẾT KẾ 8
3.1 Sơ đồ thiết kế mạch STM32F103C8T6 8
3.2 Chương trình cả hệ thống lập trình 8
3.3 Mạch mô phỏng trên phần mêm Proteus 10
Trang 3LỜI NÓI ĐẦU
Ở nước ta, do yêu cầu công nghiệp hóa hiện đại hóa nền kinh tế với những cơ hội thuận lợi và khó khăn thách thức lớn Sử phát triển nhanh chóng của khoa học kỹ thuật nói chung và trong lĩnh vực vi xử lý nói riêng ngày càng xuất hiện nhiều thiết bị đòi hỏi cần sử dụng vi xử lý để vận hành Sử dụng vi xử lý trong dây chuyền sản xuất, đóng góp trực tiếp trong việc tự động hóa, tối ưu hóa nhân lực và quá trình sản xuất giúp nâng cao năng suất và chất lượng sản phẩm nhằm tăng khả năng cạnh tranh với các nước trên thế giới
Trong công nghiệp và cuộc sống hằng ngày, vi xử lý được sử dụng rộng rãi vì có đặc tính làm việc rất tốt Chính vì vậy, chúng em được giao đề tài: “Hệ thống điều khiển tay máy” làm đồ án cho môn học Khi thực hiện làm đồ án, nhóm em đã cố gắng cập nhật
và tìm hiểu những kiến thức mới nhất, đặc biệt là những phương pháp mới trong lĩnh vực lập trình, điều khiển tay máy
Với sự hướng dẫn tận tình của thầy giáo nhóm em đã hoàn thành đề tài của mình Mặc dù đã cố gắng tìm hiểu cũng như thiết kế nhưng do trình độ có hạn nên đề tài không thể tránh khỏi những sai sót Rất mong sự đóng góp ý kiến của các thầy cô để đồ án được hoàn thiện hơn
Em xin chân thành cảm ơn!
1
Trang 4Chương 1: TỔNG QUAN VỀ STM32F103C8T6
1.1 Giới thiệu chung về STM32F103C8T6
STM32 là một trong những dòng chip phổ biến của ST với nhiều họ thông dụng như F0,F1,F2,F3,F4… Stm32f103 thuộc họ F1 với lõi là ARM COTEX M3 STM32F103 là vi điều khiển 32 bit, tốc độ tối đa là 72Mhz Giá thành cũng khá rẻ so với các loại vi điều khiển có chức năng tương tự Mạch nạp cũng như công cụ lập trình khá
đa dạng và dễ sử dụng
Một số ứng dụng chính: dùng cho driver để điều khiển ứng dụng, điều khiển ứng dụng thông thường, thiết bị cầm tay và thuốc, máy tính và thiết bị ngoại vi chơi game, GPS cơ bản, các ứng dụng trong công nghiệp, thiết bị lập trình PLC, biến tần, máy in, máy quét,
hệ thống cảnh báo, thiết bị liên lạc nội bộ…
Hình 1.1 Vi xử lý STM32F103C8T6
1.2 Thông số kĩ thuật vi xử lý STM32F103C8T6
- STM32F103C8T6 là vi điều khiển 32bit, thuộc họ F1 của dòng chip STM32 hãng ST
- Lõi ARM COTEX M3
- Tốc độ tối đa 72Mhz
- Bộ nhớ :
+64 kbytes bộ nhớ Flash
+20 kbytes SRAM
- Clock, reset và quản lý nguồn
+Điện áp hoạt động từ 2.0 → 3.6V
+Sử dụng thạch anh ngoài từ 4Mhz → 20Mhz
2
Trang 5+Thạch anh nội dùng dao động RC ở mode 8Mhz hoặc 40Khz
- Chế độ điện áp thấp:
+Có các mode: ngủ, ngừng hoạt động hoặc hoạt động ở chế độ chờ
+Cấp nguồn ở chân Vbat bằng pin ngoài để dùng bộ RTC và sử dụng dữ liệu được lưu trữ khi mất nguồn cấp chính
- 2 bộ ADC 12 bit với 9 kênh cho mỗi bộ
+ Khoảng giá trị chuyển đổi từ 0 – 3.6 V
+Có chế độ lấy mẫu 1 kênh hoặc nhiều kênh
- DMA:
+7 kênh DMA
+Có hỗ trợ DMA cho ADC, UART, I2C, SPI
- 7 bộ Timer:
+3 Timer 16 bit hỗ trợ các mode Input Capture/ Output Compare/ PWM
+1 Timer 16 bit hỗ trợ để điều khiển động cơ với các mode bảo vệ ngắt Input, dead-time
+2 Watchdog Timer để bảo vệ và kiểm tra lỗi
+1 Systick Timer 24 bit đếm xuống cho hàm Delay,…
- Có hỗ trợ 9 kênh giao tiếp:
+2 bộ I2C
+3 bộ USART
+2 SPI
+1 CAN
+USB 2.0 full-speed interface
- Kiểm tra lỗi CRC và 96-bit ID
1.3 Kit STM32F103C8T6
Kit phát triển STM32F103C8T6 Blue Pill ARM Cortex-M3 là loại được sử dụng
để nghiên cứu về ARM nhiều nhất hiện nay
3
Trang 6Hình 1.3 Giao diện Vi xử lý STM32F103C8T6
Các thông số kĩ thuật:
+Điện áp cấp 5VDC qua cổng Micro USB sẽ được chuyển đổi thành 3.3VDC qua IC nguồn và cấp cho Vi điều khiển chính
+Tích hợp sẵn thạch anh 8Mhz
+Tích hợp sẵn thạnh anh 32Khz cho các ứng dụng RTC
+Ra chân đầy đủ tất cả các GPIO và giao tiếp: CAN, I2C, SPI, UART, USB,
+Tích hợp Led trạng thái nguồn, Led PC13, Nút Reset
+Kích thước: 53.34 x 15.24mm
1.4 Ngôn ngữ lập trình STM32F103C8T6
-Ngôn ngữ lập trình: Ngôn ngữ C
-Phần mềm lập trình: có khá nhiều trình biên dịch cho STM32 như IAR Embedded Workbench, Keil C…
-Thư viện lập trình: có nhiều loại thư viện lập trình cho STM32 như: STM32snippets, STM32Cube LL, STM32Cube HAL, Standard Peripheral Libraries, Mbed core
- Mạch nạp: có khá nhiều loại mạch nạp như : ULINK, J-LINK, CMSIS-DAP, STLINK…
4
Trang 7Chương 2: LẬP TRÌNH ĐIỀU KHIỂN TAY MÁY
2.1 Yêu cầu bài toán
Hệ thống điều khiển tay máy Thiết kế biểu đồ chức năng điều khiển hệ thống tay máy gắp và di chuyển sản phẩm
Hình 2.1 Hình ảnh mô phỏng hệ thống điều khiển tay máy
2.2 Nguyên lý làm việc
Hệ thống điều khiển của máy, trong đó hệ thống có tay máy có thể di chuyển theo chiều dọc và chiều ngang giúp cho việc di chuyển sản phẩm từ bàn bên trái sang bàn bên phải
Di chuyển ngang và dọc của tay máy được điều khiển bởi các xilanh khí kép.Mỗi xilanh được điều khiển bởi hai đầu ra, mỗi đầu ra điều khiển một chuyển động
Mỗi khi một đầu ra tích cực, tay máy di chuyển theo tác động của đầu ra và giữ trạng thái đó cho tới khi đầu ra không tích cực Khi đầu ra không tích cực, tay máy dừng
di chuyển do tác động của đầu ra đó
Tay máy không dịch chuyển mỗi khi có hai đầu ra điều khiển tác động ngược nhau cùng tích cực (ví dụ, dịch chuyển sang trái và phải)
5
Trang 8Tác động kẹp và nhả sản phẩm được điều khiển bởi xilanh khí nén đơn, tay máy sẽ kẹp sản phẩn khi đầu ra điều khiển tích cực và nhả khi đầu ra không tích cực
Máy luôn có khóa giới hạn và cảm biến quang để phát hiện các vị trí của máy Để đảm bảo an toàn, luôn phải kiểm tra xem có sản phẩm ở bàn bên phải không
Hoạt động tuần tự của hệ thống được mô tả như sau:
-Tại vị trí khởi đầu (khóa giới hạn trên và bên trái tích cực), tay máy chờ sản phẩm xuất hiện ở bàn bên trái Khi bàn bên trái đã có sản phẩm, do tác động của xilanh hạ tay máy được hạ xuống cho tới khi khóa giới hạn vị trí dưới tác động (tích cực) Sau khi dừng di chuyển, tay máy kẹp sản phẩm Chờ 2 giây để tay máy hoàn toàn giữ chắc sản phẩm Sau đó do tác động của xilanh nâng, tay máy nâng lên cho tới khi khóa giới hạn vị trí trên tác động, tay máy tiếp tục di chuyển sang phải cho tới khi khóa giới hạn bên phải tác động Nếu bàn bên phải không có sản phẩm (nhận biết bằng cảm biến quang), tay máy di chuyển xuống do tác động của xilanh hạ khác để di chuyển sản phẩm tới bàn bên phải Nếu bàn bên phải có sản phẩm thì tay máy giữ nguyên ở vị trí trên bên phải và chờ cho tới khi bàn bên phải không có sản phẩm thì mới hạ xuống Khi hạ xuống bàn bên phải, tay máy nhả ra trong 2.4 giây Tay máy quay trở về vị trí ban đầu và chờ sản phẩm xuất hiện ở bàn bên trái Qui trình hoạt động của hệ thống được mô tả trong hình 2.1 -Khi nhấn nút khởi động (tích cực) lần đầu tiên, giả sử tay máy ở vị trí ban đầu Khi hệ thống đang hoạt động, nhấn nút khởi động sẽ không có tác dụng Khi nhấn nút dừng (không tích cực) tay máy dừng lại và vẫn giữ nguyên trạng thái kẹp sản phẩm Nhấn nút khởi động sẽ làm cho tay máy khôi phục lại hoạt động trước khi dừng
-Khi nhấn nút khởi tạo lại, tay máy sẽ trở về vị trí ban đầu Sau đó tay máy sẽ nhả Nếu hệ thống chưa ngừng hoạt động thì nhấn nút khởi tạo lại sẽ không có tác dụng
2.3 Lưu đồ thuật toán
6
Trang 10CHƯƠNG 3: MÔ PHỎNG VÀ THIẾT KẾ 3.1 Sơ đồ thiết kế mạch STM32F103C8T6
8
Trang 113.2Chương trình cả hệ thống lập trình trên
9
Trang 123.3 Mạch mô phỏng trên phần mêm proteus
11
Trang 13LỜI KẾT
Trên đây là những kết quả nhóm bọn em làm được trong quá trình lập trình và thiết kế Tuy nhiên, do hạn hẹn về kiến thức nên vẫn có nhiều sai sót Em mong các thầy cô nhận xét để đồ án TỰ ĐỘNG HÓA của bọn em có thể hoàn thiện hơn
12