Đồ án thiết kế hệ thống nhúng Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 BỘ THÔNG TIN TRUYỀN THÔNG HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Khoa Kỹ Thuật Điện Tử 1 BÁO CÁO BÀI TẬP LỚN Môn học Đ.
Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 BỘ THƠNG TIN & TRUYỀN THƠNG HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG Khoa Kỹ Thuật Điện Tử BÁO CÁO BÀI TẬP LỚN Môn học: Đồ án thiết kế hệ thống nhúng Đề tài: MÁY ĐO NHIỆT ĐỘ KHÔNG TIẾP XÚC Giảng viên hướng dẫn: Nguyễn Ngọc Minh Hà Nội, 2022 Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Mục Lục I CƠ SỞ LÝ THUYẾT ARDUINO UNO 1.1 Giới thiệu Arduino Arduino tảng tạo mẫu điện tử mã nguồn mở, sử dụng nhằm xây dựng ứng dụng điện tử tương tác với với môi trường thuận tiện, dễ dàng Nền tảng mẫu giống máy tính thu nhỏ, giúp người dùng lập trình thực dự án điện tử mà không cần phải đến công cụ chuyên dụng để phục vụ việc nạp code Phần mềm tương tác với giới bên ngồi thơng qua cảm biến điện tử, đèn động 1.2 Giới thiệu Arduino Uno Arduino Uno bảng mạch vi điều khiển nguồn mở dựa vi điều khiển Microchip ATmega328 phát triển Arduino.cc Bảng mạch trang bị chân đầu vào/ đầu Digital Analog giao tiếp với bảng mạch mở rộng khác nha Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Sử dụng ngơn ngữ lập trình C,C++ Arudino a Thơng số kỹ thuật • Vi điều khiển: Atmega328 • Điện áp hoạt động: 5V (cấp qua cổng usb) • Số chân digital I/O : 14 chân (6 chân PWM) • Số chân analog: chân • Tần số hoạt động: 16MHz • Dịng tiêu thụ: 30mA • Điện áp vào giới hạn: 6-20V DC • Điện áp vào khuyên dùng: 7-12V DC • Dịng tối đa chân I/O: 20mA • Dịng tối đa (5V): 500mA • Dịng tối đa (3V): 50mA b Các chân nguồn • GND (Ground): cực âm nguồn điện cấp cho Arduino UNO • 5V: cấp điện áp 5V đầu Dòng tối đa cho phép chân 500mA • 3.3V: cấp điện áp 3.3V đầu Dòng tối đa cho phép chân 50mA • Vin (Voltage Input): để cấp nguồn ngồi cho Arduino UNO • IOREF: điện áp hoạt động Arduino UNO Có mức điện áp 5V • Led: Có LED tích hợp bảng mạch nối vào chân D13 Khi chân có giá trị mức cao (HIGH) LED sáng LED tắt mức thấp (LOW) c Các chân vào/ra Trên Board Arduino Uno có 14 chân Digital sử dụng để làm chân đầu vào đầu chúng sử dụng hàm pinMode(), digitalWrite(), digitalRead() Giá trị điện áp chân 5V, dòng chân 20mA bên có điện trở kéo lên 20-50 ohm Dòng tối đa chân I/O không vượt 40mA để tránh trường hợp gây hỏng board mạch • chân Serial: 0(RX) 1(TX): dùng để gửi (transmit - TX) nhận (Receive RX) liệu TTL Serial Arduino Uno giao tiếp với thiết bị khác thông qua chân này, gắn thêm hình LCD để hiển thị • Chân PWM: 3, 5,6,9, 10 11: Cho phép xuất xung PWM với độ phân giải bit( • giá trị từ -> 28-1 tương ứng với - 5V Chân giao tiếp SPI: 10(SS), 11(MOSI), 12(MISO), 13(SCK) Ngồi chức thơng thường, chân truyền phát liệu giao thức SPI tới • d • • • • thiết bị khác hỗ trợ giao tiếp I2C/TWI với thiết bị khác TWI/I2C: A4 (SDA) A5 (SCL) Ứng dụng Điều khiển led Gửi liệu lên lcd Điều khiển motor Gửi liệu qua wifi Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Cảm biến nhiệt độ MLX90614 2.1 Giới thiệu MLX90614 xây dựng từ chip Melexis phát triển sản xuất: • • Đầu dò nhiệt hồng ngoại MLX81101 Điều hòa tín hiệu ASSP MLX90302, thiết kế đặc biệt để xử lý đầu cảm • biến hồng ngoại Thiết bị có sẵn gói TO-39 tiêu chuẩn cơng nghiệp Nhờ khuếch đại tiếng ồn thấp, ADC 17-bit có độ phân giải cao đơn vị DSP mạnh mẽ MLX90302 đạt độ xác độ phân giải cao nhiệt kế Đối tượng tính tốn nhiệt độ mơi trường xung quanh có sẵn RAM MLX90302 với độ phân giải 0,01˚C Chúng truy cập giao thức tương thích SMBus nối tiếp dây (độ phân giải 0,02 ° C) thông qua đầu 10-bit PWM (Điều chế độ rộng xung) thiết bị MLX90614 hiệu chuẩn nhà máy phạm vi nhiệt độ rộng: -40 đến 125 ˚C cho nhiệt độ môi trường -70 đến 382,2 ˚C cho nhiệt độ vật thể PWM 10-bit tiêu chuẩn định cấu hình để truyền liên tục nhiệt độ đối tượng đo phạm vi nhiệt độ đối tượng từ -20 đến 120 ˚C với độ phân giải đầu 0,14 ˚C PWM dễ dàng tùy chỉnh cho phạm vi mà khách hàng mong muốn cách thay đổi nội dung ô EEPROM Điều khơng ảnh hưởng đến q trình hiệu chuẩn nhà máy thiết bị Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 2.2 Nguyên lý hoạt động MLX90614 thực với định luật gọi Định luật Stefan-Boltzmann, nói tất vật thể sinh vật phát Năng lượng IR cường độ lượng IR phát tỷ lệ thuận với nhiệt độ vật thể sinh vật Vì vậy, cảm biến MLX90614 tính tốn nhiệt độ đối tượng cách đo lượng lượng IR phát từ 2.3 Cấu hình chi tiết sơ đồ chân MLX90614 a Cấu hình chi tiết • Sử dụng chip: MLX90614 • Điện áp sử dụng: 3-5VDC • Phương thức giao tiếp: Giao thức truyền thông I2C tiêu chuẩn • Tính - Kích thước nhỏ, chi phí thấp - Dễ tích hợp - 10k Kéo điện trở lên cho giao diện I2C với jumper hàn tùy chọn Nhiệt độ hoạt động: • - - 40 đến + 125 ° C cho nhiệt độ cảm biến - -70 + 380 ° C nhiệt độ đối tượng - Độ xác cao 0.5 ° C nhiệt độ rộng (0 … + 50 ° C ) - Độ phân giải đo lường 0,02 ° C Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 b Sơ đồ chân MLX90614 Sơ đồ chân MLX90614 Tên chân Chức VSS Đất Can kim loại kết nối với chốt Đầu vào đồng hồ nối tiếp cho giao thức truyền thông dây Zener 5.7V có sẵn SCL / Vz chân để kết nối bóng bán dẫn lưỡng cực bên với MLX90614A để cung cấp cho thiết bị từ nguồn -16V bên PWM / SDA VDD Đầu vào / đầu kỹ thuật số Ở chế độ bình thường, nhiệt độ đối tượng đo có sẵn chân Điều chế độ rộng xung Điện áp cung cấp bên ngồi 2.4 Các tính MLX90614 • • • Kích thước nhỏ, chi phí thấp Dễ dàng tích hợp Nhà máy hiệu chuẩn phạm vi nhiệt độ rộng: -40 đến 125 ˚C cho nhiệt độ cảm biến -70 đến 380 ˚C cho nhiệt độ đối tượng • Độ xác cao 0,5 ° C phạm vi nhiệt độ rộng (0 + 50 ° C cho Ta • • • • • • • • To Tùy chọn hiệu chuẩn độ xác cao (y tế) Độ phân giải đo 0,02 ° C Phiên vùng đơn vùng kép Giao diện kỹ thuật số tương thích SMBus Đầu PWM tùy chỉnh để đọc liên tục Có sẵn phiên 3V 5V Thích ứng đơn giản cho ứng dụng đến 16V Chế độ tiết kiệm lượng Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 2.5 Một số ứng dụng • Cảm biến độ nhạy nhiệt cho hệ thống điều khiển điều hịa khơng khí di động • Phát góc mù tơ • Giám sát chăn ni • Phát chuyển động • Relay / cảnh báo nhiệt • Đo nhiệt độ thể LCD16x2 3.1 Giới thiệu Màn hình text LCD1602 xanh sử dụng driver HD44780, có khả hiển thị dịng với dịng 16 ký tự, hình có độ bền cao, phổ biến, nhiều code mẫu dễ sử dụng thích hợp cho người học làm dự 3.2 Thơng số kỹ thuật • Điện áp hoạt động V • Kích thước: 80 x 36 x 12.5 mm • Chữ đen, xanh • Khoảng cách hai chân kết nối 0.1 inch tiện dụng kết nối với Breadboard • Tên chân ghi mặt sau hình LCD hổ trợ việc kết nối, dây điện • Có đèn led nền, dùng biến trở PWM điều chình độ sáng để sử dụng điện Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Có thể điều khiển với dây tín hiệu • SRF05 (HC – SR05) – Cảm biến siêu âm 4.1 Giới thiệu Cảm biến khoảng cách siêu âm HC-SR05 sử dụng phổ biến để xác định khoảng cách RẺ CHÍNH XÁC Cảm biến sử dụng sóng siêu âm đo khoảng cách khoảng từ -> 300 cm, với độ xác gần phụ thuộc vào cách lập trình 4.2 Thơng số kỹ thuật • Nguồn làm việc: 5V (một số mạch điện tử cấp nguồn 3.3V hoạt động • • • • • bình thường cảm biến siêu âm cần hoạt động mức 5V) Dòng tiêu thụ : nhỏ 2mA Tín hiệu đầu ra: xung HIGH (5V) LOW (0V) Khoảng cách đo: 2cm - 300cm (3 mét) Độ xác: 0.5cm Cảm biến siêu âm có chân: - Vcc -> nguồn 5V - Trig -> nối vi điều khiển (ngõ phát) (pin arduino) (có thể sử dụng mức áp 3.3V để kích cảm biến mà không ảnh hưởng đến kết quả) 4.3 - Echo -> nối vi điều khiển (ngõ thu) (pin arduino) - Gnd -> nối âm Cách thức hoạt động Cảm biến siêu âm sử dụng âm để xác định khoảng cách cảm biến đối Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 tượng gần đường dẫn Cảm biến siêu âm cảm biến âm thanh, chúng hoạt động tần số cao khả nghe người Để đo khoảng cách, ta phát xung ngắn (5 microSeconds - us) từ chân Trig Sau đó, cảm biến tạo xung HIGH chân Echo nhận lại sóng phản xạ pin Chiều rộng xung với thời gian sóng siêu âm phát từ cảm biển quay trở lại Tốc độ âm khơng khí 340 m/s (hằng số vật lý), tương đương với 29,412 microSeconds/cm (106 / (340*100)) Khi tính thời gian, ta chia cho 29,412 để nhận khoảng cách → Phương trình d = v×t d : qng đường v : vận tốc t :thời gian Tốc độ âm tính tốn dựa nhiều loại khí điều kiện, bao gồm nhiệt độ, độ ẩm áp suất Cần lưu ý cảm biến siêu âm có hình nón phát hiện, góc hình nón thay đổi theo khoảng cách Để phát đối tượng phụ thuộc vào hướng đối tượng đến cảm biến Nếu đối tượng không đưa bề mặt phẳng cho cảm biến sóng âm phát từđối tượng theo cách mà khơng quay trở lại cảm biến DFPlay mini 5.1 Giới thiệu Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Mạch phát âm MP3 tích hợp Amply DFPlayer Mini có thiết kế nhỏ gọn sử dụng để phát âm MP3 qua thẻ nhớ MicroSD giao tiếp với Vi điều khiển qua giao tiếp UART, mạch có tích hợp Amply cơng suất nhỏ nên có 3W thể kết nối trực tiếp với loa (khoảng) để thực số ứng dụng âm đơn giản Ngoài ra, ta cịn điều khiển chơi MP3 Arduino Module hỗ trợ giải mã MP3, WAV , WMA 5.2 Thơng số kỹ thuật • Tốc độ lấy mẫu (Khz) ; / 11.025 / 12 / 16 / 22.05 / 24 / 32 / 44.1 / 48 với ngõ • • • 24bit Hỗ trợ đầy đủ FAT16, FAT32, thẻ TF hỗ trợ tối đa 32Gb Có thể điều khiển qua chân IO hay chuẩn nối tiếp UART Các file âm xếp theo thư mục ( tối đa 100 mục ) , mục chứa tối đa 255 hát • Có thể điều chỉnh 30 mức Volume mức EQ 10 Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 5.3 Các chế độ hoạt động • Sử dụng vi điều khiển giao tiếp với module DFPlayer • Sử dụng chân AD KEY: Mỗi chân AD chân analog để xác định phím chức (mỗi chân phát 10 phím khác nhau) • Sử dụng chế độ I/O Quang trở CDS GL5537 6.1 Giới thiệu Cảm Biến Ánh Sáng-Quang Trở loại điện trở làm chất liệu bán dẫn độ dẫn thay đổi với thay đổi độ sáng 11 6.2 Thơng số kỹ thuật: • Điện áp tối đa (Vdc): 150V • Cơng suất tiêu thụ tối đa: 100mW Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Nhiệt độ làm việc: -30ºC ~ +70ºC Đỉnh quang phổ: 540nm Trở kháng sáng (10Lux): 20-45 KΩ Trở kháng tối: MΩ 100λ10: 0,7 Thời gian đáp ứng tăng: 20 ms Thời gian đáp ứng giảm: 30 ms 6.3 Cơng dụng • Cảm biến anh sáng sử dụng sản xuất loại đèn ngủ, đèn đường • Làm mạch cảm biến đóng cắt tự động • Sử dụng camera • • • • • • • Chuẩn giao tiếp I2C 7.1 Giới thiệu Đầu năm 1980, hãng sản xuất linh kiện điện tử Phillips thiết kế chuẩn giao tiếp nối tiếp dây, hay gọi chuẩn giao tiếp I2C I2C hay gọi Inter-Integrated Circuit Đây cổng để giao tiếp IC với Chuẩn giao tiếp I2C thiết kế phát triển từ Philips Tuy nhiên, hầu hết nhà sản xuất IC khắp năm châu sử dụng I2C trở thành chuẩn quan trọng giao tiếp điều khiển ngoại vi Ngồi Philips cịn có ơng lớn công nghệ khác như: Texas Instrument(TI), National Semiconductor Maxim Dallas,… tham gia phát triển chuẩn giao tiếp Bus I2C sử dụng làm bus giao tiếp ngoại vi cho hầu hết loại IC như: Chip điều khiển 8051,ARM, AVR, PIC, AVR,… Chip nhớ RAM tĩnh (Static Ram), EEPROM Bộ chuyển đổi tương tự số (ADC) IC điều khiển LCD, LED Số tương tự(DAC) Và nhiều thứ khác 7.2 Cấu tạo nguyên lý hoạt động I2C Chuẩn giao tiếp I2C thường sử dụng hai đường truyền tín hiệu: • Một đường xung nhịp đồng hồ (hay gọi SCL) Master phát (Bình • • • • • • thường mức 100kHz 400kHz Mức cao 1Mhz 3.4MHz) Một đường liệu (hay gọi là12SDA) theo chiều Hầu hết thiết bị liên kết vào bus I2C Nhưng bạn đừng lo • việc nhầm lẫn thiết bị Mỗi công cụ phân biệt địa riêng, với mối quan hệ chủ/tớ tồn toàn thời gian kết nối Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Mỗi thiết bị hồn tồn hoạt động dụng cụ nhận truyền liệu hay vừa truyền vừa nhận Hoạt động truyền hay nhận dựa việc dụng cụ chủ (master) hay tớ (slave) Một dụng cụ hay IC liên kết với bus I2C, địa (duy nhất) để phân biệt, cịn quy định thiết bị chủ hay tớ Vì bus I2C quyền điều khiển thuộc cơng cụ chủ Cơng cụ chủ nắm vai trị tạo xung đồng hồ cho toàn hệ thống Khi hai thiết bị chủ-tớ giao tiếp ngoại vi dụng cụ chủ có chức tạo xung đồng hồ quản lý địa thiết bị tớ từ đầu tới cuối trình giao tiếp ngoại vi 7.3 Một số điều cần biết giao tiếp I2C Chuẩn giao tiếp I2C sử dụng bit để xác định địa chỉ, nên bus lên đến 2^7 địa chỉ, tương ứng với 128 công cụ liên kết Nhưng có 112, 16 địa lại sử dụng theo mục đích riêng Các bit cịn lại quy định việc đọc ghi liệu (1 write, read) Ưu điểm vượt trội I2C cần nhắc đến mức độ hiệu suất Một khối điều khiển trung tâm hồn tồn quản lý mạng lưới thiết bị mà cần hai lối điều khiển Bên cạnh đó, chuẩn giao tiếp I2C cịn có chế độ 10 bit địa chỉ, ngang với 1024 địa Cũng giống như bit, 10bit có 1008 cổng để kết nối, lại 16 địa dùng để phục vụ cho mục đích riêng 13 Chuẩn giao tiếp I2C Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Phương thức hoạt động – trường hợp sử dụng Trường hợp 1: Thiết bị master muốn gửi liệu cho thiết bị slave • • Master thực điều kiện bắt đầu (START) Master gửi địa slave (Device Address) cần nhận liệu Bit cấu hình đọc ghi liệu (R/W) gửi kèm có giá trị thể hoạt động gửi liệu • Slave phản hồi bit xác nhận (ACK), xác nhận có slave hoạt động hệ thống bus • Master gửi địa ghi slave – địa mà master muốn ghi/bắt đầu ghi liệu • Slave phản hồi bit xác nhận (ACK), xác nhận có địa thi, sẵn sàng nhận liệu • Master gửi liệu (Data) cần ghi vào ghi cho slave, nhiều byte • Master thực kết thúc việc truyền liệu điều kiện kết thúc (STOP) Khung truyền liệu thiết bị master muốn gửi liệu cho thiết bị slave Trường hợp 2: Thiết bị master muốn đọc liệu từ thiết bị slave • • Master thực điều kiện bắt đầu (START) Master gửi địa slave (Device Address) cần nhận liệu, theo kèm bit cấu hình đọc ghi liệu (R/W) có giá trị thể hoạt động gửi liệu (bằng để gửi tiếp địa ghi) • Slave phản hồi bit xác nhận (ACK), xác nhận có slave hoạt động hệ thống 14 bus • Master gửi địa ghi Slave – địa mà master muốn ghi /bắt đầu ghi liệu • Slave phản hồi bit xác nhận (ACK), xác nhận có địa ghi thiết bị slave Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 • Master gửi lại điều kiện bắt đầu với địa thiết bị slave, theo sau giá • • • trị bit R/W thể hoạt động đọc liệu Slave phản hồi bit xác nhận (ACK) Master nhận liệu từ slave, nhiều byte Master kết thúc việc nhận liệu cách thực bit xác nhận (NACK) theo sau điều kiện kết thúc (STOP) Khung truyền liệu thiết bị master muốn đọc liệu từ thiết bị slave Phân tích thành phần khung truyền: a) Điều kiện bắt đầu điều kiện kết thúc (STAT, STOP) Tín hiệu điều kiện bắt đầu điều kiện kết thúc Giao tiếp I2C khởi tạo cách master thực điều kiện bắt đầu kết thúc cách master thực điều kiện kết thúc Một chuyển đổi logic từ mức HIGH sang mức LOW đường truyền SDA đường truyền SCL mức HIGH định nghĩa điều kiện bắt đầu Một chuyển đổi mức logic từ mức LOW sang mức HIGH đường truyền SDA đường SCL mức HIGH định nghĩa điều kiện kết thúc b) Các bit địa 15 Các bit địa giúp xác định, phân biệt slave khác hệ thống bus I2C, master phải có/ cài đặt địa khác Thơng thường có bit địa Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Bit địa gửi kèm với bit cầu hình đọc/ghi liệu c) Bit cấu hình đọc/ghi liệu (R/W) Bit xác định hướng truyền liệu hay hiểu thiết bị điều khiển đường SDA: Nếu Master cần truyền liệu đến Slave, bit Read / Write thiết lập mức logic LOW Ngược lại, Master cần nhận liệu từ Slave, bit thiết lập mức logic HIGH d) Bit xác nhận (ACK/NACK) Mỗi byte liệu xác nhận bit ACK từ phía nhận liệu gửi cho phía gửi liệu để báo byte nhận thành công tiếp tục gửi byte liệu Bit ACK có giá trị LOW Khi có giá trị HIGH gọi bit NACK, bit NACK gửi số trường hợp như: • Phía nhận bận khơng thể nhận hay truyền liệu thực tính • • • khác Trong trình truyền nhận, liệu/địa khơng hợp lệ, khơng tồn Trong q trình truyền, phía nhận khơng thể nhận thêm byte liệu Trong trường hợp master yêu cầu liệu từ slave, master nhận đủ không nhận thêm liệu e) Các bit liệu (Data) Dữ liệu truyền tới thiết bị slave đọc từ thiết bị slave, chất việc thực đọc/ghi ghi thiết bị slave Các ghi nằm nhớ slave xác định, phân biệt địa chỉ, ghi chứa thơng tin, thơng tin cấu hình hoạt động thiết bị slave, thơng tin liệu mà slave có q trình hoạt động liệu lấy mẫu từ cảm biến Để điều khiển thiết bị slave thực nhiệm vụ chức đó, master thực việc ghi vào ghi thiết bị slave f) Lặp lại điều kiện bắt đầu (Repeated Start) Việc thiết bị master thực lặp lại điều kiện bắt đầu tương tự việc master thực điều kiện bắt đầu (START), lặp lại điều kiện 16bắt đầu sử dụng để thay cho việc thực điều kiện STOP thực điều kiện START Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Lặp lại điều kiện bắt đầu sử dụng trường hợp thiết bị master muốn đọc liệu từ thiết bị slave sau nhận phản hồi địa thiết bị slave địa ghi muốn đọc liệu Giao tiếp với MLX90614 Cách đặt vị trí, khoảng cách vật cần đo đến cảm biến Đặt vật cần đo điểm Point heat source, điểm cảm biến có độ nhạy cao (100%) nhiệt độ đối tượng cần đo xác Khoảng cách để đo giá trị xác nhất: Point heat source = đến 10 cm MLX có nhớ quan trọng: EEPROM RAM Địa truy cập RAM: 000x xxxx* Địa truy cập EEPROM: 001x xxxx* Nhiệt độ đối tượng (temperature of object) lưu nhớ RAM, giá trị trả đưa vào ghi TOBJ1 TOBJ2 Địa chỉ: TOBJ1: 0x07, TOBJ2: 0x08 Sau đọc giá trị nhiệt độ đối tượng TOBJ1 TOBJ2, ta thực chuyển nhiệt độ đổi qua độ K qua công thức: 10 Hệ điều hành RTOS 10.1 Giới thiệu 17 Hệ điều hành RTOS hay viết tắt Real-time Operating System Đây hệ điều hành (OS) dùng để phục vụ ứng dụng thời gian thực với khả xử lý liệu siêu nhanh Vì khơng có chậm trễ đệm Đồ án thiết kế hệ thống nhúng 10.2 Nhóm BTL – nhóm 10 RTOS hoạt động RTOS phân đoạn chương trình Khi đó, nhiệm vụ RTOS giải điều phối tác vụ (task), lập lịch phân mức ưu tiên cho chúng Việc thực chế Hướng kiện Chia sẻ thời gian Các chức RTOS Bộ lập lịch (Scheduler) Dịch vụ thời gian thực Đồng thơng điệp 10.3 - Trong Scheduler có trạng thái mặc định: - Ready to run: Trạng thái chuẩn bị tác vụ Running: Trạng thái tác vụ thực thi Blocked: Các tác vụ không đủ tài nguyên xử lý trạng thái khóa Dịch vụ thời gian thực: - Dịch vụ xử lý ngắt Dịch vụ thời gian Dịch vụ quản lý thiết bị Dịch vụ quản lý nhớ Dịch vụ quản lý kết nối 10.4 Ưu điểm - Độ ổn định tin cao, nên hoạt động thời gian dài mà không cần - nhiều can thiệp người Hiệu suất tốt mức tiêu thụ nhớ thấp nên không gây tiêu tốn nhiều tài nguyên RAM RTOS gần lỗi có xảy lỗi dễ dàng phát Có kích thước nhỏ chi phí thấp 10.5 Ứng dụng RTOS thường ứng dụng số lĩnh vực như: - Hệ thống kiểm sốt giao thơng hàng khơng Hệ thống kiểm sốt huy, Hệ thống đặt chỗ hãng hàng không, Máy đo nhịp tim, Hệ thống đa phương tiện mạng, Robot, hiết bị vi điều khiển, Các thiết bị chăm sóc sức khỏe IoT 18 Đồ án thiết kế hệ thống nhúng II Nhóm BTL – nhóm 10 THIẾT KẾ HỆ THỐNG Sơ đồ khối hệ thống Khối điều khiển Khối xử lý hiển thị Khối nguồn Cảnh báo Cảm biến nhiệt Cảm biến khoảng cách MFPlay mini Xác định khoảng cách lấy mẫu đo hợp lý Như nói trên, cảm biến nhiệt hồng ngoại cho kết phụ thuộc vào khoảng cách đo, việc sử dụng đối chứng để tìm khoảng cách đo hợp lý cần thiết Bộ so sáng sai số t = t0 – t1 Nguồn nhiệt chuẩn dùng để đối chứng (t0) Nhiệt độ đo (t1 ) Thiết bị đo nhiệt mẫu (t0 ) Cảm biến nhiệt hồng ngoại MLX90614 Động điều chỉnh ( x ) Bảng Thân nhiệt bình thường dùng thiết lập nguồn nhiệt mẫu để đối chứng theo WHO Nhiệt độ( Độ °C) Đo miệng Đo hậu môn 0-2 Tuổi 36.4 – 38°C 36.6 – 38°C 3-10 Tuổi 35.5 – 37.5°C 36.6 – 38°C 11-65 Tuổi 36.4 – 37.5°C 37 – 38.1°C Trên 65 Tuổi 35.7 – 36.9°C 36.2 – 37.3°C Đo vùng nách Đo tai Thân nhiệt 34.7 – 37.3°C 36.4 – 38°C 36.4 – 37.7°C 35.8 19 – 36.7°C 36.1 – 37.7°C 36.4 – 37.7°C 35.2 – 36.8°C 35.8 – 37.6°C 36.8 – 37.8°C 35.5 – 36.3°C 35.7 – 37.5°C 35.8 – 37.1°C Căn bảng 1, chọn số giá trị để điều chỉnh nguồn nhiệt mẫu nhằm xác định khoảng cách đo x (mm) hợp lý Thiết bị tạo nhiệt mẫu thiết bị đo nhiệt mẫu cung cấp Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 giá trị xác t0 (°C), tổ hợp cảm biến nhiệt cảm biến tiệm cận gắn với điều chỉnh khoảng cách đo (x) động điều chỉnh (x) hình vẽ Nhiệt độ cảm biến nhiệt hồng ngoại đo t1 (°C) khoảng cách (x) so sánh với mẫu đo t0 (°C) Dựa sai số đo để điều chỉnh khoảng cách đo (x) hợp lý lần cho máy Nguyên lý hoạt động • Khi hoạt động Arduino nhận tín hiệu từ cảm biến siêu âm SRF05, khoảng cách nhỏ 8cm cho cảm biến nhiệt độ MLX90614 tiến hành đo nhiệt độ Khi khoảng cách xa thông báo LCD người đo tiến lại gần Sau đo nhiệt độ hiển thị LCD • Nếu nhiệt độ đo nằm khoảng 30 đến 40 độ đưa nhiệt độ dịng chữ “nhiệt độ bthg” • Nếu nhiệt độ đo nằm ngồi khoảng bình thường đưa nhiệt độ dòng chữ “cảnh báo” đồng thời sáng led cịi kêu • Sau nhận kết đo, dựa số liệu thu điều khiển DFPlay mini phát âm cảnh báo âm • Khi máy phát tín hiệu yêu cầu rửa tay, cảm biến ánh sáng phát có tay người cho vào khu vực rửa tay xả nước rửa tay vịng 1s, bật tắt led mơ lượng nước rửa tay Lưu đồ thuật toán Bắt đầu Đưa cảnh báo : “ Comeon Now” S K / cách ≤ 8cm Đ Đọc liệu MLX90614(t) 30 ≤ t ≤ 40 20 Đ Hiển thị nhiệt độ lên LCD cảnh báo âm : “ nhiệt độ bthg” S Hiển thị nhiệt độ cảnh báo âm : “ Nhiệt độ cao “ Đồng thời led sáng còi kêu Đồ án thiết kế hệ thống nhúng III Nhóm BTL – nhóm 10 KẾT QUẢ THU ĐƯỢC Kết thu 21 Mạch hoàn chỉnh Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 Hướng phát triển • Thêm modun camera OV7670 để chụp lại người có kết đo mức cảnh báo • Kết hợp modun wifi gửi liệu lên sever Tài liệu tham khảo • • • XML : XML Complete by Steven Holzner Cơ XML : http://www.ebook.edu.vn ESP8266: https://esp8266.vn/introduction/about-esp8266/ https://components101.com • Giao tiếp I2C : https://tapit.vn/ • Cảm biến hồng ngoại : https://html.alldatasheet.com/MLX90614 • Cảm biến siêu âm : https://www.alldatasheet.com/HC-SR04 22 Đồ án thiết kế hệ thống nhúng Nhóm BTL – nhóm 10 LỜI CẢM ƠN Chúng em xin chân thành cảm ơn thầy Nguyễn Ngọc Minh – giảng viên môn học Đồ án thiết kế hệ thống nhúng, tận tình hướng dẫn, trang bị cho chúng em kiến thức , kỹ hoàn thành đề tài Tuy nhiên trình nghiên cứu thực đề tài, kiến thức chuyên ngành cịn hạn chế, chúng em cịn thiếu sót q trình tìm hiểu, đánh giá trình bày đề tà Rất mong quan góp ý thầy để đề tài chúng em hoàn chỉnh Chúng em xin chân thành cảm ơn ! 23 ... người đo tiến lại gần Sau đo nhiệt độ hiển thị LCD • Nếu nhiệt độ đo nằm khoảng 30 đến 40 độ đưa nhiệt độ dịng chữ ? ?nhiệt độ bthg” • Nếu nhiệt độ đo nằm ngồi khoảng bình thường đưa nhiệt độ dòng... tích hợp Nhà máy hiệu chuẩn phạm vi nhiệt độ rộng: -40 đến 125 ˚C cho nhiệt độ cảm biến -70 đến 380 ˚C cho nhiệt độ đối tượng • Độ xác cao 0,5 ° C phạm vi nhiệt độ rộng (0 + 50 ° C cho Ta • • •... khoảng cách đo hợp lý cần thiết Bộ so sáng sai số t = t0 – t1 Nguồn nhiệt chuẩn dùng để đối chứng (t0) Nhiệt độ đo (t1 ) Thiết bị đo nhiệt mẫu (t0 ) Cảm biến nhiệt hồng ngoại MLX90614 Động điều