khiển 2 bánh xe, 1 module GPSGSM, và bộ nguồn pin. Robot được lập trình để đi theo lộ trình cho trước được định vị tọa độ nhờ bộ GPS, tọa độ của robot luôn được gửi về trung tâm qua giao tiếp 3G. Hãy phân tích các vấn đề sau: a) Phân tích constraint: liệt kê ít nhất 5 constraints, với các thông số giả định tự cho. b) Phân tích functions: cho biết các vấn đề có thể phát sinh về chức năng, và cách khắc phục c) Phân tích realtime: cho biết hệ thống thuộc nonehardsoft realtime, độ trễ tối đa cho phép ? d) Phân tích concurrent: cho biết các tác vụ cần xử lý đồng thời e) Phân tích reactive: cho biết hệ thống thuộc loại phản ứng nào, có chu kỳ hay không có chu kỳ, tại sao? Bài 2: (2.5đ) Trả lời các câu hỏi sau về vi điều khiển PIC16F877 a) Vi điều khiển PIC16F877 có bao nhiêu bộ nhớ chương trình, bao nhiêu bộ nhớ dữ liệu? b) Hãy liệt kê các ngoại vi của vi điều khiển PIC16F877 c) Hãy cho biết cách cài đặt PIN_B5 là xuất, các PIN còn lại của PortB là nhập d) Địa chỉ của thanh ghi EECON1 và EECON2 là gì? Thuộc bank nào? e) PIC16F877 có hỗ trợ ngõ vào analog không? Nếu có, chân nào là ngõ vào analog? Bài 3: (5 điểm) Cho một hệ thống nhúng quản lý nhiệt độ phòng máy chủ server, được mô tả như sau: • Vi điều khiển: PIC16F877, thạch anh 20MHz • Ngoại vi: khiển 2 bánh xe, 1 module GPSGSM, và bộ nguồn pin. Robot được lập trình để đi theo lộ trình cho trước được định vị tọa độ nhờ bộ GPS, tọa độ của robot luôn được gửi về trung tâm qua giao tiếp 3G. Hãy phân tích các vấn đề sau: a) Phân tích constraint: liệt kê ít nhất 5 constraints, với các thông số giả định tự cho. b) Phân tích functions: cho biết các vấn đề có thể phát sinh về chức năng, và cách khắc phục c) Phân tích realtime: cho biết hệ thống thuộc nonehardsoft realtime, độ trễ tối đa cho phép ? d) Phân tích concurrent: cho biết các tác vụ cần xử lý đồng thời e) Phân tích reactive: cho biết hệ thống thuộc loại phản ứng nào, có chu kỳ hay không có chu kỳ, tại sao? Bài 2: (2.5đ) Trả lời các câu hỏi sau về vi điều khiển PIC16F877 a) Vi điều khiển PIC16F877 có bao nhiêu bộ nhớ chương trình, bao nhiêu bộ nhớ dữ liệu? b) Hãy liệt kê các ngoại vi của vi điều khiển PIC16F877 c) Hãy cho biết cách cài đặt PIN_B5 là xuất, các PIN còn lại của PortB là nhập d) Địa chỉ của thanh ghi EECON1 và EECON2 là gì? Thuộc bank nào? e) PIC16F877 có hỗ trợ ngõ vào analog không? Nếu có, chân nào là ngõ vào analog? Bài 3: (5 điểm) Cho một hệ thống nhúng quản lý nhiệt độ phòng máy chủ server, được mô tả như sau: • Vi điều khiển: PIC16F877, thạch anh 20MHz • Ngoại vi: khiển 2 bánh xe, 1 module GPSGSM, và bộ nguồn pin. Robot được lập trình để đi theo lộ trình cho trước được định vị tọa độ nhờ bộ GPS, tọa độ của robot luôn được gửi về trung tâm qua giao tiếp 3G. Hãy phân tích các vấn đề sau: a) Phân tích constraint: liệt kê ít nhất 5 constraints, với các thông số giả định tự cho. b) Phân tích functions: cho biết các vấn đề có thể phát sinh về chức năng, và cách khắc phục c) Phân tích realtime: cho biết hệ thống thuộc nonehardsoft realtime, độ trễ tối đa cho phép ? d) Phân tích concurrent: cho biết các tác vụ cần xử lý đồng thời e) Phân tích reactive: cho biết hệ thống thuộc loại phản ứng nào, có chu kỳ hay không có chu kỳ, tại sao? Bài 2: (2.5đ) Trả lời các câu hỏi sau về vi điều khiển PIC16F877 a) Vi điều khiển PIC16F877 có bao nhiêu bộ nhớ chương trình, bao nhiêu bộ nhớ dữ liệu? b) Hãy liệt kê các ngoại vi của vi điều khiển PIC16F877 c) Hãy cho biết cách cài đặt PIN_B5 là xuất, các PIN còn lại của PortB là nhập d) Địa chỉ của thanh ghi EECON1 và EECON2 là gì? Thuộc bank nào? e) PIC16F877 có hỗ trợ ngõ vào analog không? Nếu có, chân nào là ngõ vào analog? Bài 3: (5 điểm) Cho một hệ thống nhúng quản lý nhiệt độ phòng máy chủ server, được mô tả như sau: • Vi điều khiển: PIC16F877, thạch anh 20MHz • Ngoại vi:
ĐỀ KIỂM TRA GIỮA HỌC KỲ 2, 2016-2017 Lớp Chính quy VP– Nhóm P01 Mơn thi: THIẾT KẾ HỆ THỐNG NHÚNG - Thời gian: 60 phút (Sinh viên phép tham khảo tài liệu; Sinh viên không phép sử dụng máy vi tính, laptop) Bài 1: (2.5đ) Xét hệ thống nhúng điều khiển xe robot tự hành Hệ thống gồm: vi điều khiển PIC16F877, động điều khiển bánh xe, module GPS/GSM, nguồn pin Robot lập trình để theo lộ trình cho trước định vị tọa độ nhờ GPS, tọa độ robot gửi trung tâm qua giao tiếp 3G Hãy phân tích vấn đề sau: a) Phân tích constraint: liệt kê constraints, với thông số giả định tự cho b) Phân tích functions: cho biết vấn đề phát sinh chức năng, cách khắc phục c) Phân tích realtime: cho biết hệ thống thuộc none/hard/soft realtime, độ trễ tối đa cho phép ? d) Phân tích concurrent: cho biết tác vụ cần xử lý đồng thời e) Phân tích reactive: cho biết hệ thống thuộc loại phản ứng nào, có chu kỳ hay khơng có chu kỳ, sao? Bài 2: (2.5đ) Trả lời câu hỏi sau vi điều khiển PIC16F877 a) Vi điều khiển PIC16F877 có nhớ chương trình, nhớ liệu? b) Hãy liệt kê ngoại vi vi điều khiển PIC16F877 c) Hãy cho biết cách cài đặt PIN_B5 xuất, PIN lại PortB nhập d) Địa ghi EECON1 EECON2 gì? Thuộc bank nào? e) PIC16F877 có hỗ trợ ngõ vào analog khơng? Nếu có, chân ngõ vào analog? Bài 3: (5 điểm) Cho hệ thống nhúng quản lý nhiệt độ phòng máy chủ server, mơ tả sau: Vi điều khiển: PIC16F877, thạch anh 20MHz Ngoại vi: o Cảm biến nhiệt độ LM35 o Còi báo động điều khiển thông qua transistor o Đèn cảnh báo, điều khiển thông qua relay o LED đoạn, nối anode chung Hoạt động: hệ thống đọc nhiệt độ từ cảm biến LM35, hiển thị lên LED đoạn Nếu nhiệt độ phòng vượt q 50 độ C, còi báo động, đồng thời đèn cảnh báo sáng a) (2đ) Hãy viết đặc tả phần cứng cho hệ thống vẽ sơ đồ khối phần cứng b) (1đ) Vẽ sơ đồ mạch chi tiết cho hệ thống c) (2đ) Hãy viết đặc tả phần mềm cho hệ thống vẽ lưu đồ giải thuật chương trình Người đề: TS Trương Quang Vinh ĐỀ KIỂM TRA GIỮA HỌC KỲ 1, 2017-2018 - ĐÁP ÁN Lớp Chính quy – Ngày 10/10/2017 Môn thi: THIẾT KẾ HỆ THỐNG NHÚNG - Thời gian: 60 phút (Sinh viên phép tham khảo tài liệu; Sinh viên khơng phép sử dụng máy vi tính, laptop) Bài 1: Xét hệ thống nhúng điều khiển hệ thống bơm xăng tự động mô tả sau Khi cò bơm kích hoạt, hệ thống chạy máy bơm xăng cho người dùng Hệ thống đo lưu lượng xăng cảm biến lưu lượng có độ xác 0,5%, thông tin khối lượng xăng hiển thị hình led đoạn số Người sử dụng sử dụng bàn phím để cài đặt trước số lit xăng bơm Hãy phân tích vấn đề sau: a) Phân tích constraint: liệt kê constraints, với thông số giả định tự cho Các thông số ràng buộc (giả định): Giá thành khơng q triệu Độ xác 0,5% Tuổi thọ bền năm b) Phân tích functions: cho biết vấn đề phát sinh chức năng, cách khắc phục Hệ thống bơm bị lỗi sinh nhiệt gây cháy nổ, cần có cảm biến nhiệt độ để phát lỗi động Cảm biến lưu lượng xăng bị lỗi gây thiệt hại cho người dùng Cần có chế kiểm tra phát cảm biến bị lỗi c) Phân tích realtime: cho biết hệ thống thuộc none/hard/soft realtime, độ trễ tối đa cho phép ? Hệ thống thuộc loại soft real-time, độ trễ điều khiển ms d) Phân tích concurrent: cho biết tác vụ cần xử lý đồng thời Các tác vụ cần xử lý đồng thời bao gồm: Đọc cảm biến lưu lượng Hiển thị LED đoạn Điều khiển bơm xăng Đọc trạng thái bàn phím, cò bơm e) Phân tích reactive: cho biết hệ thống thuộc loại phản ứng nào, có chu kỳ hay khơng có chu kỳ, sao? Hệ thống thuộc loại hoạt động không liên tục (power on demand) Các kiện xử lý có khơng có tính chu kỳ bao gồm: cò bơm, trạng thái bàn phím, điều khiển bơm (1.0đ) Hãy viết đặc tả sản phẩm hệ thống Đặc tả sản phẩm: (mơ tả sản phẩm góc độ người dùng) - Chức năng: hệ thống điều khiển bơm xăng có chức bơm xăng cho người dùng đo lưu lượng xăng bơm Người sử dụng sử dụng bàn phím để cài đặt trước số lit xăng bơm - Giao tiếp người dùng: hình LED đoạn số bàn phím - Các thơng số: độ xác 0,5%, máy bơm 900W (1.5đ) Viết đặc tả kỹ thuật hệ thống vẽ sơ đồ khối Đặc tả kỹ thuật: (mơ tả sản phẩm góc độ người thiết kế) Nguyên lý hoạt động: Khi người dùng bật cò bơm, hệ thống điều khiển bơm xăng hoạt động, ghi nhận dung lượng xăng bằng cảm biến, đồng thời hiển thị lên LED đoạn số Khi người dùng nhập số lượng lit xăng cho phép bơm, hệ thống điều khiển bơm xăng dung lượng cài đặt bàn phím Yêu cầu phần cứng: hệ thống cần vi xử lý, động bơm 900W, cảm biến lưu lượng xác 0,5%, LED đoạn số Yêu cầu phần mềm: hệ thống cần chương trình sau - Chương trình điều khiển động - Chương trình đọc cảm biến lưu lượng, - Chương trình điều khiển hiển thị LED đoạn số - Chương trình điều khiển hoạt động hệ thống Sơ đồ khối: LED đoạn Cảm biến lưu lượng Vi xử lý Máy bơm Bàn phím Bài 3: (5 điểm) Cho hệ thống quang báo điều khiển LED chào mừng kỷ niệm 60 năm Bách Khoa sau: Vi điều khiển: PIC16F877, thạch anh 20MHz Ngoại vi: o Bảng LED ma trận 8x32: giao tiếp qua GPIO 16 bit o nút nhấn: RESET MODE o công tắc switch: CONTROL o Module SIM900 để điều khiển từ xa qua tin nhắn, giao tiếp với vi xử lý qua UART Hoạt động: Sau hệ thống RESET, hệ thống hiển thị câu chào bảng LED Nếu công tắc CONTROL = 1, hệ thống cho phép cập nhật thông báo qua SIM900, ngược lại CONTROL =1, hệ thống không cho phép cập nhật thông báo qua SIM900 Khi người dùng nhấn nút MODE hệ thống chuyển sang hiệu ứng chạy chữ; nhấn nút lần nữa, chữ đứng yên d) (2đ) Hãy viết đặc tả phần cứng cho hệ thống vẽ sơ đồ khối phần cứng Đặc tả phần cứng hệ thống: Phần cứng hệ thống bao gồm: Vi điều khiển: PIC16F877, thạch anh 20MHz Ngoại vi: o Bảng LED ma trận 8x32: giao tiếp qua GPIO 16 bit o nút nhấn: RESET MODE o công tắc switch: CONTROL o Module SIM900 để điều khiển từ xa qua tin nhắn, giao tiếp với vi xử lý qua UART Nguyên lý hoạt động: Sau hệ thống RESET, hệ thống hiển thị câu chào bảng LED Nếu công tắc CONTROL = 1, hệ thống cho phép cập nhật thông báo qua SIM900, ngược lại CONTROL =0, hệ thống không cho phép cập nhật thông báo qua SIM900 Khi người dùng nhấn nút MODE hệ thống chuyển sang hiệu ứng chạy chữ, nhấn nút lần nữa, chữ đứng yên Sơ đồ khối phần cứng: Bảng LED RESET PIC16F877 SIM900 MODE CONTROL e) (2đ) Vẽ sơ đồ mạch chi tiết cho hệ thống LED MATRIX 8x32 LED15 C1 13 14 X1 20MHz C2 MODE CONTROL 22p R1 RESET MODE 10 10k R2 MODE LED0 U1 22p 10k OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/THV RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4/SS RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RE0/AN5/RD RC2/CCP1 RE1/AN6/WR RC3/SCK/SCL RE2/AN7/CS RC4/SDI/SDA RC5/SDO RC6/TX/CK RC7/RX/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 R3 CONTROL 10k RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD 33 34 35 36 37 38 39 40 LED0 LED1 LED2 LED3 LED4 LED5 LED6 LED7 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 TX RX SIM900 LED8 LED9 LED10 LED11 LED12 LED13 LED14 LED15 PIC16F877 CONTROL f) (1đ) Hãy viết đặc tả kiểm tra cho hệ thống (nêu rõ thiết bị dụng cụ cần cho kiểm tra, mơ tả q trình kiểm tra) Thiết bị, dụng cụ cần thiết: máy đo VOM, máy hiển thị sóng Quy trình kiểm tra: Kiểm tra hoạt động vi xử lý Kiểm tra hoạt động bảng LED Kiểm tra module SIM900 Kiểm tra nút nhấn Kiểm tra chức hoạt động hệ thống Người đề: TS Trương Quang Vinh ĐÁP ÁN ĐỀ KIỂM TRA GIỮA HỌC KỲ 1, 2016-2017 Lớp Chính quy Mơn thi: THIẾT KẾ HỆ THỐNG NHÚNG - Thời gian: 60 phút (Sinh viên phép tham khảo tài liệu; Sinh viên không phép sử dụng máy vi tính, laptop) Bài 1: (2.5đ) Xét hệ thống nhúng điều khiển gậy dò đường dành cho người khiếm thị Hệ thống gồm vi điều khiển PIC16F873, cảm biến siêu âm đo khoảng cách có ngõ analog, điều khiển rung Hệ thống liên tục đọc khoảng cách giá trị từ cảm biến từ ngõ AD, tính tốn khoảng cách, điều khiển tín hiệu rung để cảnh báo cho người dùng Cường độ rung tương ứng với khoảng cách vật cản đo Hãy phân tích vấn đề thiết kế hệ thống nhúng bao gồm: constraint, function, real-time, concurrent, reactive Trả lời: Issues Description Ghi Constraint Hệ thống cần có ràng buộc như: giá rẻ (5 năm), công suất thấp (sử dụng 20g liên tục), độ xác constraints (10cm) Function Chức phát vật cản cần bảo đảm, không gây Cần phân tích chức tai nạn cho người khiếm thị, cần có chức cảnh báo cảm biến hệ thống gây hỏng tác động gì, đề giải pháp Real-time Hệ thống xếp vào loại soft real-time, thời gian trễ cho phép Cần trả lời hệ thống thuộc loại 100ms gì: hard / soft / none real-time Cần xác định thời gian trễ cho phép Concurrent Hệ thống cần đảm bảo xử lý tác vụ đồng thời (trong thời gian trễ Cần xác định tác vụ cho phép), bao gồm: đồng thời đọc khoảng cách giá trị từ cảm biến từ ngõ AD tính tốn khoảng cách điều khiển tín hiệu rung Reactive -Power on demand Cần xác định hệ thống phản -Hệ thống tương tác với bên ngồi thơng qua kiện đo khoảng cách ứng thuộc loại nào: power on vật cản báo cho người sử dụng Sự kiện thuộc loại có chu kỳ demand run forever người thiết kế định sẵn thời gian lấy mẫu Hệ thống tương tác với kiện thuộc loại periodic non-periodic Bài 2: (2đ) Trả lời câu hỏi sau vi điều khiển PIC16F877 f) Hãy liệt kê ngoại vi vi điều khiển PIC16F877 g) Có thể sử dụng địa để truy xuất ghi STATUS? Địa gì? h) Hãy cho biết cách cài đặt PIN_B0 xuất, PIN lại PortB nhập i) Bộ nhớ liệu PIC16F877 chia làm bank? Kích thước bank bao nhiêu? Trả lời: a) – Timer: timer0/timer1/timer2 – Capturer, Compare, PWM modules – 10-bit multi-channel ADC – SSP with SPI and I2C – USART b) c) d) 03h, 83h, 103h, 183h Cài đặt vào ghi TRISB giá trị 0b11111110 chia làm bank, bank 128bytes Bài 3: (5.5 điểm) Cho hệ thống gọi số thứ tự đơn giản mô tả sau Hệ thống có vi điều khiển, hiển thị số từ đến 9, nút nhấn để chọn số Khi người dùng nhấn nút đặt số, số thứ tự tăng lên Khi số thứ tự tăng quay Người dùng nhấn nút khác để xóa số thứ tự g) (1.5đ) Hãy viết đặc tả kỹ thuật hệ thống Ghi chú: cần nêu rõ tính kỹ thuật , hoạt động hệ thống h) (1.5đ) Hãy viết đặc tả phần cứng cho hệ thống vẽ sơ đồ khối phần cứng Gợi ý: sinh viên tự chọn loại vi điều khiển, hiển thị (LED đoạn LCD), số lượng nút nhấn cần thiết i) (1.5đ) Hãy vẽ sơ đồ mạch chi tiết hệ thống j) (1đ) Hãy viết đặc tả phần mềm cho hệ thống vẽ lưu đồ giải thuật chương trình Trả lời: a) Đặc tả kỹ thuật hệ thống Tính kỹ thuật: Hệ thống có vi điều khiển, hiển thị số từ đến 9, nút nhấn để chọn số Hệ thống có khả hiển thị số thứ tự, tăng số thứ tự có nút nhấn, xóa số thứ tự Hoạt động hệ thống: Khi người dùng nhấn nút đặt số, số thứ tự tăng lên Khi số thứ tự tăng quay Người dùng nhấn nút khác để xóa số thứ tự b) Đặc tả phần cứng sơ đồ khối phần cứng Đặc tả phần cứng Lựa chọn phần cứng: Vi điều khiển: PIC16F877, thạch anh 20MHz Ngoại vi: o LED đoạn Cathode chung o Nút nhấn NEXT nối vào chân PIN_B1 o Nút nhấn RESET nối vào chân RS Nguyên lý hoạt động: sau reset, số đếm LED = Khi người dùng bấm nút NEXT, số đếm tăng lên Khi số đếm tăng số tự động quay lại Sơ đồ khối phần cứng NEXT PIC16F877 RESET b) Sơ đồ mạch chi tiết C1 U1 13 14 22p X1 20MHz C2 22p R7 10k RESET 10 OSC1/CLKIN OSC2/CLKOUT RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREF-/CVREF RA3/AN3/VREF+ RA4/T0CKI/C1OUT RA5/AN4/SS/C2OUT RC0/T1OSO/T1CKI RE0/AN5/RD RC1/T1OSI/CCP2 RE1/AN6/WR RC2/CCP1 RE2/AN7/CS RC3/SCK/SCL RC4/SDI/SDA MCLR/Vpp/THV RC5/SDO RC6/TX/CK RC7/RX/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 NEXT 33 34 35 36 37 38 39 40 R8 10k 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 R0 R1 R2 330 R3 330 R4 330 R5 330 R6 330 330 330 PIC16F877A c) Đặc tả phần mềm: Phần mềm cần có chức đọc trạng thái nút nhấn điều khiển LED đoạn Nút nhấn cần có chế độ chống rung phím Để điều khiển LED đoạn cần có hàm giải mã BCD sang LED đoạn Lưu đồ phần mềm: RESET Số đếm = N NEXT? Y Số đếm=9? N Tăng số đếm Y Số đếm = Hiển thị LED Người đề: TS Trương Quang Vinh Part 2: Engineering Specification 1.System Description * Hệ thống gồm khối bao gồm: Center Processor, Keypad, LCD( display), Speaker (Announcement and Warning), Lock’s Door, System Power - Giao tiếp LCD I2C, có thêm số ngoại vị phụ LED, Sensor… - Center Processor dùng loại: Arduino UNO - LCD dùng loại: LCD 16 x - Keypad dùng loại: Bàn phím mềm ma trận 4x4 Nhiệt độ hoạt động: 0-70 oC Kích thước bàn phím 77 x 69 mm chân ngõ - Speaker dùng loại: - Lock’s Door dùng loại: Khóa Chốt Điện Điện áp sử dụng: 12 hay 24 VDC Dòng: 0.8A Công suất: 9.6W Tốc độ phản ứng