Cơ sở và ứng dụng Internet of Things, Thiết kế hệ thống nhúng - Phan Văn Ca, Trương Quang Phúc

334 5 0
Cơ sở và ứng dụng Internet of Things, Thiết kế hệ thống nhúng - Phan Văn Ca, Trương Quang Phúc

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TS PHAN VĂN CA ThS TRƯƠNG QUANG PHÚC CƠ SỞ VÀ ỨNG DỤNG INTERNET OF THINGS (Thiết Kế Hệ Thống Nhúng) NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH – 2017 LỜI NĨI ĐẦU Cơng nghệ kỹ thuật máy tính bước vào giai đoạn phát triển đầy ngoạn mục năm gần Thế giới bước vào kỷ nguyên hậu PC, máy tính diện khắp lĩnh vực từ thiết bị điện tử tiêu dùng, phương tiện vận chuyển, thiết bị quân thiết bị đeo tay nhỏ gọn ngày theo dõi giám sát sức khỏe cho người Việc sử dụng máy tính làm thiết bị thu thập, xử lý thông tin điều khiển hầu hết thiết bị tạo cách mạng ngành cơng nghiệp chế tạo mà đó: thiết bị khả trình, thơng minh kết nối trở thành xu thịnh hành Với cải tiến nhanh chóng thiết kế nhúng, công nghệ không dây công suất thấp cảm biến, chứng kiến bùng nổ số lượng thiết bị thông minh Ước tính đến năm 2020, giới có 50 tỷ thiết bị kết nối vào mạng Internet Các thiết bị này, với gia tăng điện thoại thơng minh định hình mơ hình nổi: Internet of Things (IoTs) Trong mơ hình này, thiết bị thông minh bao quanh kết nối với với Internet để cung cấp chức tốt Khái niệm IoTs năm 1999 đề xuất nhà công nghệ tiên phong người Anh có tên Kevin Ashton IoTs khái niệm rộng lớn khó hình dung liên quan đến nhiều ngun tắc, cơng nghệ lĩnh vực ứng dụng khác Về bản, IoTs mô tả hệ thống cảm biến nối mạng đối tượng thông minh làm việc để tạo môi trường thông minh, hữu dụng lập trình Cơng nghệ IoTs bao gồm cảm biến, mạch, hệ thống nhúng, truyền thông, giao diện thông minh, quản lý lượng, quản lý liệu, truyền liệu, quản lý tri thức, hệ thống thời gian thực, xử lý phân tán, thiết kế hệ thống kỹ thuật phần mềm phức tạp Các hệ thống IoTs bao gồm cấu trúc nhỏ trang bị vài cảm biến xử lý lắp đặt khu vực giới hạn cung cấp dịch vụ ứng dụng cho số người hệ thống trải rộng liên quan đến hàng triệu cảm biến, xử lý thông tin phân tán phức tạp hệ thống điều khiển thành phố thông minh IoTs bao gồm loạt ứng dụng từ nhà thơng minh, tịa nhà thơng minh, thành phố thông minh, ngành công nghiệp thông minh, giám sát chăm sóc sức khỏe IoTs lĩnh vực cơng nghiệp thay đổi sâu sắc từ phương thức sản xuất hàng hóa cách chăm sóc sức khỏe điều trị bệnh người Cơ sở ứng dụng Internet of Things giảng dạy cho sinh viên ngành Công nghệ Kỹ thuật Điện tử - Truyền thơng ngành Cơng nghệ Kỹ thuật Máy tính Khoa Điện-Điện tử, Trường Đại học Sư phạm Kỹ thuật TP Hồ Chí Minh nhiều năm qua Giáo trình Cơ sở ứng dụng Internet of Things (Thiết kế hệ thống nhúng) tập trung vào phần thiết kế thiết bị phần cứng hệ thống nhúng cho mô hình IoTs dựa hệ thống vi điều khiển Giải pháp Arduino lựa chọn để thiết kế hệ thống nhúng demo giáo trình Arduino giải pháp đơn giản rẻ tiền dựa họ vi điều khiển Atmel AVR tảng thiết kế điện tử nguồn mở dựa phần cứng phần mềm linh hoạt, dễ sử dụng Giáo trình gồm phần sau: Chương 1: Trình bày sơ lược quy trình thiết kế hệ thống nhúng số ví dụ hệ thống nhúng thực tế Chương 2: Trình bày kiến thức kiến trúc vi xử lý họ Atmega board phát triển Chương 3: Giới thiệu kiến thức truyền thông nối tiếp chuẩn truyền thông nối tiếp thực tế Chương 4: Trình bày lý thuyết chuyển đổi tương tự sang số ngoại vi ADC điều khiển Chương 5: Trình bày lý thuyết hệ thống xử lý ngắt vi điều khiển kỹ thuật lập trình xử lý ngắt vi điều khiển ATmega Chương 6: Mô tả chức ứng dụng hệ thống định thời lập trình hệ thống định thời vi điều khiển Chương 7: Trình bày thơng số dòng vi điều khiển Atmel AVR khảo sát số thiết bị ngoại vi thường gặp Chương 8: Trình bày thiết kế số ứng dụng hệ thống nhúng sử dụng tảng vi xử lý ATmega Mặc dù tác giả cố gắng trình biên soạn giáo trình khơng thể tránh khỏi thiếu sót, mong nhận đóng góp quý báu từ người đọc chuyên gia lĩnh vực cơng nghệ kỹ thuật máy tính Trong tài liệu này, tác giả Phan Văn Ca viết từ Chương đến Chương Lời nói đầu; Bài tập phần Phụ lục tác giả Trương Quang Phúc thực - Mọi ý kiến đóng góp xin gửi về: Khoa Điện-Điện tử, Đại học Sư phạm Kỹ thuật TP HCM Email: capv@hcmute.edu.vn phuctq@hcmute.edu.vn Nhóm tác giả MỤC LỤC LỜI NÓI ĐẦU MỤC LỤC Chương 1: THIẾT KẾ HỆ THỐNG NHÚNG 13 1.1 HỆ THỐNG NHÚNG 13 1.2 TIẾN TRÌNH THIẾT KẾ HỆ THỐNG NHÚNG 13 1.2.1 Đặc tả vấn đề 15 1.2.2 Nghiên cứu sở lý thuyết 15 1.2.3 Tiền thiết kế 15 1.2.4 Thiết kế 17 1.2.5 Thực thiết kế mẫu thử Prototype 19 1.2.6 Kiểm thử thiết kế 19 1.2.7 Lập hồ sơ thiết kế đầy đủ xác 20 1.3 VÍ DỤ VỀ THIẾT KẾ HỆ THỐNG NHÚNG 21 BÀI TẬP CHƯƠNG 25 Chương 2: KIẾN TRÚC BỘ XỬ LÝ 27 2.1 KHÁI QUÁT KIẾN TRÚC ATMEGA164 27 2.1.1 Kiến trúc RISC 27 2.1.2 Tập lệnh hợp ngữ 28 2.1.3 Kích thước toán tử C 29 2.1.4 Các phép toán BIT 29 2.1.5 Khái quát kiến trúc ATMEGA164 30 2.2 BỘ NHỚ CHƯƠNG TRÌNH VÀ BỘ NHỚ DỮ LIỆU 31 2.2.1 Bộ nhớ lập trình Flash EEPROM 31 2.2.2 EEPROM truy xuất theo byte 32 2.2.3 Ví dụ EEPROM truy xuất theo byte 32 2.2.4 Bộ nhớ truy xuất ngẫu nhiên tĩnh (SRAM) 33 2.2.5 Các bit khóa có khả lập trình 33 2.3 HỆ THỐNG CỔNG 34 2.4 CÁC ĐẶC TÍNH NGOẠI VI 36 2.4.1 Cơ sở thời gian 36 2.4.2 Hệ thống định thời 37 2.4.3 Các kênh điều chế độ rộng xung 37 2.4.4 Truyền thông nối tiếp 37 2.4.5 Bộ chuyển đổi số sang tương tự - ADC 38 2.4.6 Bộ so sánh tương tự 39 2.4.7 Hệ thống ngắt 39 2.5 CÁC THAM SỐ HOẠT ĐỘNG VÀ VẬT LÝ 40 2.5.1 Đóng gói 40 2.5.2 Tiêu thụ công suất 42 2.5.3 Tốc độ xử lý 42 2.6 CHỌN VI ĐIỀU KHIỂN 42 2.7 ỨNG DỤNG: BOARD THỬ ATMEGA164 43 2.7.1 Cấu hình phần cứng 43 2.7.2 Cấu hình phần mềm 45 2.8 LẬP TRÌNH VỚI ATMEGA164 48 2.8.1 Thủ tục lập trình 48 2.8.2 Lập trình hệ thống (ISP) 50 2.9 TÍNH LINH ĐỘNG CỦA PHẦN MỀM 51 2.10 KIẾN TRÚC ATMEGA328P 51 2.11 NGÔN NGỮ ASSEMBLY 53 2.11.1 Giới thiệu 53 2.11.2 Chuỗi công cụ Arduino 55 2.11.3 Assembly Arduino 61 2.11.4 Assembly nội tuyến Arduino 63 2.11.5 Hiệu ngôn ngữ C 66 BÀI TẬP CHƯƠNG 67 Chương 3: GIAO TIẾP NỐI TIẾP 69 3.1 GIỚI THIỆU 69 3.2 GIAO THỨC KẾT NỐI I2C 72 3.3 GIAO DIỆN NGOẠI VI NỐI TIẾP SPI 73 3.3.1 Các ghi SPI 75 3.3.2 Lập trình SPI 77 3.3.3 Mở rộng tính Atmel AVR qua SPI 77 3.4 TRUYỀN/NHẬN BẤT ĐỒNG BỘ USART 80 3.4.1 Bộ tạo xung nhịp cho hệ thống USART 82 3.4.2 Bộ nhận/phát USART 83 3.4.3 Các ghi USART 83 3.4.4 Chương trình cách thức hoạt động 85 3.4.5 Truyền song công USART 87 3.4.6 Truyền liệu USART qua sóng vơ tuyến 91 3.4.7 Truyền USART đến PC 93 3.4.8 USART truyền nối tiếp đến LCD 94 3.4.9 ASCII 95 3.5 USART TRÊN ATMEGA328P 96 3.5.1 Quản lý ngắt cổng nối C 96 3.5.2 Mô tả ghi 103 3.6 MẠNG VI ĐIỀU KHIỂN 112 3.6.1 Giao tiếp nối tiếp hai dây 114 3.6.2 Mạng CAN 114 3.6.3 Mạng ZIGBEE 114 BÀI TẬP CHƯƠNG 114 Chương 4: CHUYỂN ĐỔI TƯƠNG TỰ - SỐ (ADC) 117 4.1 LẤY MẪU, LƯỢNG TỬ HÓA VÀ MÃ HÓA 120 4.2 QUÁ TRÌNH CHUYỂN ĐỔI TƯƠNG TỰ - SỐ 124 4.2.1 Thiết kế giao tiếp chuyển đổi TID 124 4.2.2 Khuếch đại thuật toán 126 4.3 CÁC CÔNG NGHỆ ADC 129 4.3.1 Phương pháp xấp xỉ liên tiếp 129 4.4 HỆ THỐNG ADC ATMEL ATMEGA164 129 4.4.1 Sơ đồ khối 130 4.4.2 Thanh ghi 131 4.4.3 Lập trình ADC 133 4.5 VÍ DỤ 134 4.5.1 Bộ thị lượng mưa ADC 134 4.5.2 Bộ thị lượng mưa ADC với SPI 138 4.5.3 Truyền giá trị ADC tới USART SPI 139 4.5.4 Phát ngưỡng – ADC 1BIT 142 4.6 BỘ CHUYỂN ĐỔI SỐ SANG TƯƠNG TỰ (DAC) 143 4.6.1 DAC kênh, 8-bit giao tiếp SPI 145 4.7 BỘ ADC VÀ SO SÁNH TRÊN ATMEGA328P 146 BÀI TẬP CHƯƠNG 153 Chương 5: HỆ THỐNG NGẮT 157 5.1 LÝ THUYẾT NGẮT 157 5.1.1 Giới thiệu ngắt 157 5.1.2 Thuộc tính 159 5.1.3 ISR truyền thơng tác vụ 160 5.2 HỆ THỐNG NGẮT ATMEGA164 161 5.2.1 Lập trình hệ thống ngắt 162 5.2.2 Ứng dụng 163 5.2.3 Tiến trình tiến trình ưu tiên 166 5.2.4 Các ví dụ ngắt 167 5.3 NGẮT ATMEGA328P TRONG C 179 5.3.1 Các trình xử lý ngắt 179 BÀI TẬP CHƯƠNG 191 Chương 6: HỆ THỐNG ĐỊNH THỜI 193 6.1 TỔNG QUAN 193 6.2 NHỮNG THUẬT NGỮ LIÊN QUAN ĐẾN TIMER 194 6.2.1 Tần số 194 6.2.2 Chu kỳ 194 6.2.3 Chu kỳ xung tác động (Duty cycle) 194 6.3 TỔNG QUAN VỀ TIMER 195 6.4 ỨNG DỤNG 197 6.4.1 Bắt xung – đo kiện theo thời gian bên 197 6.4.2 Đếm kiện 199 6.4.3 So sánh - Tạo tín hiệu định thời giao tiếp ngoại vi 200 6.4.4 Điều chế độ rộng xung 200 6.4.5 Tình ứng dụng cơng nghiệp (PWM) 205 6.5 BỘ TIMER CỦA DÒNG VI ĐIỀU KHIỂN ATMEL 206 6.5.1 Bộ Timer 207 6.5.2 Bộ Timer 213 6.5.3 Bộ Timer 217 6.5.4 Mô tả ghi Timer Atmega328P 221 6.6 CHƯƠNG TRÌNH ỨNG DỤNG TIMER 230 6.6.1 Định thời xác 230 6.6.2 Điều chế độ rộng xung 231 6.6.3 Chế độ thu thập ngõ vào 232 6.6.4 Điều khiển động servo với PWM 233 6.6.5 PWM sử dụng cho hệ thống quạt lạnh tự động 237 BÀI TẬP CHƯƠNG 243 Chương 7: THÔNG SỐ ATMEL AVR VÀ NGOẠI VI 245 7.1 CÁC THÔNG SỐ HOẠT ĐỘNG 245 7.2 HOẠT ĐỘNG CỦA PIN 248 7.2.1 Đặc tính điện áp dịng máng hệ thống nhúng 249 7.2.2 Đặc tính pin 249 7.3 THIẾT BỊ NGÕ VÀO 250 7.3.1 Chuyển mạch 250 7.3.2 Điện trở kéo lên cấu hình chuyển mạch 251 7.3.3 Sự nảy chuyển mạch 251 7.3.4 Bàn phím 252 7.3.5 Cảm biến 256 7.3.6 Ví dụ cảm biến nhiệt độ LM34 259 7.4 THIẾT BỊ NGÕ RA 259 7.4.1 LED đơn 259 7.4.2 LED bảy đoạn 260 7.4.3 Ví dụ mã nguồn 262 7.4.4 LED thị ba trạng thái 263 7.4.5 Hiển thị ma trận điểm 263 7.4.6 Hiển thị LCD 266 7.4.7 Hiển thị GLCD 268 7.4.8 Thiết bị DC công suất cao 274 7.5 ĐIỀU KHIỂN CUỘN DÂY SOLENOID DC 275 7.6 ĐIỀU KHIỂN ĐỘNG CƠ DC 276 7.6.1 Thông số hoạt động động DC 277 7.6.2 Điều khiển chiều quay với cầu H 278 7.6.3 Kết nối động servo 278 7.6.4 Điều khiển động bước 278 7.6.5 Thiết bị xoay chiều 284 7.7 KẾT NỐI VỚI CÁC THIẾT BỊ KHÁC 285 7.7.1 Sonalerts, máy nhắn tin, chuông 285 7.7.2 Động rung 286 7.7.3 Quạt DC 287 BÀI TẬP CHƯƠNG 287 Chương 8: MỘT SỐ ỨNG ỤNG HỆ THỐNG NHÚNG 289 8.1 TỔNG QUAN 289 8.2 TRẠM DỰ BÁO THỜI TIẾT 290 8.2.1 Yêu cầu 290 8.2.2 Sơ đồ khối 290 8.2.3 Sơ đồ mạch 291 8.2.4 Lưu đồ hoạt động UML 293 8.2.5 Chương trình vi điều khiển 294 8.3 ĐIỀU KHIỂN TỐC ĐỘ ĐỘNG CƠ 301 8.4 SƠ ĐỒ NGUYÊN LÝ 301 8.4.1 Yêu cầu hệ thống 303 8.4.2 Sơ đồ khối 303 8.4.3 Lưu đồ hoạt động UML 303 8.4.4 Chương trình vi điều khiển 304 8.5 ROBOT TỰ HÀNH TRONG MÊ CUNG 309 8.5.1 Giới thiệu 309 8.5.2 Yêu cầu 309 8.5.3 Sơ đồ mạch nguyên lý 311 8.5.4 Sơ đồ khối 311 8.5.5 Lưu đồ robot 312 8.5.6 Chương trình vi điều khiển 313 BÀI TẬP CHƯƠNG 313 PHỤ LỤC 315 TÀI LIỆU THAM KHẢO 331 10 ... đến thiết kế hệ thống nhúng - Mô tả bước phương pháp thiết kế hệ thống nhúng - Phân tích phương pháp cơng cụ liên quan đến thiết kế hệ thống nhúng - Áp dụng phương pháp thiết kế hệ thống nhúng thiết. ..TS PHAN VĂN CA ThS TRƯƠNG QUANG PHÚC CƠ SỞ VÀ ỨNG DỤNG INTERNET OF THINGS (Thiết Kế Hệ Thống Nhúng) NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH – 2017 LỜI NĨI ĐẦU Cơng nghệ kỹ thuật... triển hệ thống 20 1.3 VÍ DỤ VỀ THIẾT KẾ HỆ THỐNG NHÚNG Ví dụ minh họa trình thiết kế hệ thống nhúng thiết bị kiểm vận động KTD (kinesiology testing device) Tiếp theo phần mô tả thiết kế hệ thống

Ngày đăng: 29/04/2022, 06:01

Tài liệu cùng người dùng

Tài liệu liên quan