Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 91 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
91
Dung lượng
6,54 MB
Nội dung
BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN - ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP - Y SINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ TIÊM NGỪA CHÓ MÈO GVHD: ThS Nguyễn Văn Hiệp SVTH: Trần Ngọc Hùng MSSV: 15141174 Đặng Minh Sang 15141262 TP Hồ Chí Minh - 07/2020 BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN - ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP - Y SINH - ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ TIÊM NGỪA CHÓ MÈO GVHD: ThS Nguyễn Văn Hiệp SVTH: Trần Ngọc Hùng MSSV: 15141174 Đặng Minh Sang 15141262 TP Hồ Chí Minh - 07/2020 TRƯỜNG ĐH SPKT TP HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP - TỰ DO - HẠNH PHÚC BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH o0o Tp HCM, ngày 20 tháng 07 năm 2020 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Trần Ngọc Hùng MSSV: 15141174 Chuyên ngành: Mã ngành: Đặng Minh Sang MSSV: 15141262 Sư phạm kỹ thuật điện tử- truyển thơng 510302 Hệ đào tạo: Đại học quy Mã hệ: Khóa: 2015 Lớp: 15941DT D I TÊN ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ TIÊM NGỪA CHÓ MÈO II NHIỆM VỤ Các số liệu ban đầu: - Tình hình tiêm ngừa chó mèo - Số người tử vong bệnh dại - Vi điều khiển: Arduino uno R3, ESP8266 - Các loại module: RFID RC522, Bluetooth HC05 - Màn hình hiển thị: LCD 1602 - Nguồn: Apdapter, mạch sạc tăng áp, Pin Nội dung thực hiện: - Tìm hiểu nguyên lý hoạt động module ESP8266 - Tìm hiểu chuẩn truyền thơng USART, SPI - Thiết kế thi công hộp đựng sản phẩm - Thiết kế phần mềm thông báo điện thoại Android - Viết chương trình điều khiển cho Arduino ESP8266, nạp code chạy thử nghiệm sản phẩm - Chỉnh sửa hoàn thiện hệ thống - Thực viết luận văn báo cáo - Tiến hành báo cáo đề tài tốt nghiệp III NGÀY GIAO NHIỆM VỤ: IV NGÀY HOÀN THÀNH NHIỆM VỤ: V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS Nguyễn Văn Hiệp CÁN BỘ HƯỚNG DẪN BM ĐIỆN TỬ CÔNG NGHIỆP – Y SINH TRƯỜNG ĐH SPKT TP HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP - TỰ DO - HẠNH PHÚC o0o Tp HCM, ngày 20 tháng 07 năm 2020 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên 1: Trần Ngọc Hùng Lớp: 151494DT Họ tên sinh viên 2: Đặng Minh Sang Lớp: 151494DT MSSV: 15141174 MSSV: 1514126 Tên đề tài: XÂY DỰNG HỆ THỐNG QUẢN LÝ TIÊM NGỪA CHÓ MÈO Tuần/ngày Nội dung Tuần (09/03/2020) _Báo cáo GVHD _Tìm đề tài Tuần (16/03/2020) _Báo cáo GVHD _Tìm hiểu đề tài, cơng thức tính toán, phương pháp thực Tuần (23/03/2020) _Báo cáo GVHD _Tổng hợp linh kiện cần dùng cho đề tài Tuần (30/03/2020) _Báo cáo GVHD _Tìm hiểu hoạt động NodeMCU, Arduino, module, LCD Tuần (06/04/2020) _Báo cáo GVHD _Tìm hiểu google sheet, Android studio Tuần (13/04/2020) _Báo cáo GVHD _Tìm hiểu google sheet, Android studio Tuần (20/04/2020) _Báo cáo GVHD _Kết nối, kiểm tra hoạt động module với NodeMCU Tuần (27/04/2020) _Báo cáo GVHD _Kết nối, kiểm tra hoạt động module,LCD với Arduino uno r3 Tuần (04/05/2020) _Báo cáo GVHD _Viết chương trình cho NodeMCU Arduino Xác nhận GVHD Tuần 10 (11/05/2020) _Báo cáo GVHD _Viết chương trình nhận gửi liệu google sheet Tuần 11 (18/05/2020) _Báo cáo GVHD _Viết chương trình cho ứng dụng điều khiển điện thoại Tuần 12 (25/05/2020) _Báo cáo GVHD _Thi công mạch điều khiển chỉnh sửa Tuần 13 (01/06/2020) _Báo cáo GVHD _Thiết kế thi cơng vỏ hộp, đóng gói mơ hình Tuần 14 (08/06/2020) _Báo cáo GVHD _Viết báo cáo chỉnh sửa Tuần 15 (15/06/2020) _Báo cáo GVHD _Chỉnh sửa, in luận văn GV HƯỚNG DẪN (Ký ghi rõ họ tên) LỜI CAM ĐOAN Đề tài nhóm tự thực hướng dẫn giảng viên ThS Nguyễn Văn Hiệp Đề tài dựa vào số tài liệu trước khơng chép từ tài liệu hay cơng trình có trước Nhóm thực đề tài Trần Ngọc Hùng Đặng Minh Sang LỜI CẢM ƠN Nhóm em xin gửi lời cảm ơn sâu sắc đến Thầy Nguyễn Văn Hiệp, người trực tiếp hướng dẫn giúp đỡ tạo điều kiện để nhóm hồn thành tốt đề tài Mặc dù kiến thức nhóm cịn hạn chế thầy nhiệt tình giúp đỡ, vạch hướng cho phù hợp Xin chân thành cảm ơn quý thầy cô giảng viên khoa Điện - Điện Tử, trường Đại Học Sư Phạm Kỹ Thuật Tp.HCM giúp đỡ nhóm trình thực đồ án Ngồi nhóm cịn nhận quan tâm, giúp đỡ gia đình, bạn bè, anh chị trường để hoàn thành đồ án Do kiến thức hạn chế nên trình thực khơng tránh khỏi sai sót mong thầy bạn góp ý để nhóm hoàn thành đồ án tốt Xin chân thành cảm ơn! Nhóm thực đề tài Trần Ngọc Hùng Đặng Minh Sang MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ii LỜI CAM ĐOAN iv LỜI CẢM ƠN v MỤC LỤC vi LIỆT KÊ HÌNH ix LIỆT KÊ BẢNG xii TÓM TẮT xiii CHƯƠNG 1: TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ 1.2 MỤC TIÊU 1.3 NỘI DUNG NGHIÊN CỨU 1.4 GIỚI HẠN 1.5 BỐ CỤC CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 TỔNG QUAN VỀ HỆ THỐNG QUẢN LÝ TIÊM NGỪA CHÓ MÈO .4 2.1.1 Giới thiệu hệ thống quản lý tiêm ngừa chó mèo 2.1.2 Ứng dụng hệ thống quản lý tiêm phịng chó mèo 2.2 GIỚI THIỆU VỀ HỆ THỐNG RFID 2.2.1 Giới thiệu Công Nghệ RFID 2.2.2 Ưu và nhược điểm hệ thống RFID 2.3 TỔNG QUAN VỀ HỆ ĐIỀU HÀNH ANDROID 2.3.1 Khái niệm hệ điều hành android 2.3.2 Giao diện 2.3.3 Ứng dụng 10 2.3.4 Ưu và nhược điểm hệ điều hành Android 11 2.4 TỔNG QUAN VỀ TRANG TÍNH GOOGLE SHEET .12 2.4.1 khái niệm trang tính google sheet 12 2.4.2 Ưu điểm trang tính google sheet 12 2.5 ỨNG DỤNG GOOGLE SHEET CHO ỨNG DỤNG IOTS 13 2.5.1 Các phương thức sử dụng để truyền tải liệu 13 2.5.2 Cách thức truyền liệu google sheets và thiết bị IoTs 15 2.6 CÁC CHUẨN TRUYỀN DỮ LIỆU 17 2.6.1 Chẩn giao tiếp I2C 17 2.6.2 Chuẩn truyền thông UART 19 2.6.3 Chuẩn truyền thông SPI 20 CHƯƠNG 3: TÍNH TỐN VÀ THIẾT KẾ 22 3.1 GIỚI THIỆU 22 3.2 TÍNH TỐN VÀ THIẾT KẾ HỆ THỐNG 22 3.2.1 Thiết kế sơ đồ khối hệ thống 22 3.3 TÍNH TỐN VÀ THIẾT KẾ MẠCH 24 3.3.1 Khối module RFID 24 3.3.2 Khối module wifi 26 3.3.3 Vi điều khiển 27 3.3.5 Module I2C 32 3.3.6 Module Bluetooth 32 3.3.7 Khối nguồn 33 3.4 SƠ ĐỒ NGUYÊN LÝ TOÀN MẠCH 34 CHƯƠNG 4: THI CÔNG HỆ THỐNG 36 4.1 GIỚI THIỆU 36 4.2 THI CÔNG HỆ THỐNG 36 4.2.1 Thi công Board mạch 36 4.2.2 Lắp ráp và kiểm tra 38 4.3 ĐÓNG GÓI VÀ THI CƠNG MƠ HÌNH 39 4.3.1 Đóng gói board dành cho trung tâm y tế 39 4.3.2 Đóng gói board dành cho đội bắt chó mèo thả rơng 41 4.4 LẬP TRÌNH HỆ THỐNG 42 4.4.1 Lưu đồ giải thuật 42 4.4.2 Phần mềm lập trình cho vi điều khiển 44 4.4.3 Phần mềm lập trình cho điện thoại, máy tính 50 4.4.4 Hướng dẫn xây dựng code google sheet 53 4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 55 CHƯƠNG 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 58 5.1 GIỚI THIỆU 58 5.2 KẾT QUẢ ĐẠT ĐƯỢC 58 5.3 KẾT QUẢ THỰC NGHIỆM 59 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Hình 5.3 Giao diện mục thêm dữ liệu Hình 5.4 Giao diện danh sách dữ liệu và tìm kiếm BỘ MƠN CƠNG NGHIỆP ĐIỆN TỬ - Y SINH 61 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Danh sách tải từ trang tính google sheet ứng dụng điện thoại cịn nhập tra cưu thơng tin có danh sách tải theo số điện thoại nhập vào Hình 5.5 Giao diện hệ thớng dành cho đợi bắt chó mèo thả rơng 5.4 NHẬN XÉT, ĐÁNH GIÁ 5.4.1 Nhận xét Sau thời gian 15 tuần nghiên cứu thực đề tài, hệ thống đáp ứng yêu cầu thiết kế ban đầu Dưới số nhận xét: Phần cứng, giao diện điều khiển: - Mạch điều khiển trung tâm hoạt động ổn định, xác - Tốc độ quét đưa thơng tin lên trang tính google sheet ESP8266 chưa cao BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 62 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT - Quá trình quét mã gửi qua điện thoại thông qua Bluetooth nhanh - Độ ổn định thông tin truyền ổn - Thời gian hoạt động chạy liên tục board sử dụng cho nhân viên đô thị khoảng tiếng - Dễ sử dụng, vận chuyển cất giữ App android: - Giao diện trực quan, đơn giản dễ sử dụng - Hiển thị đầy đủ thông tin cần thiết cho người sử dụng biết theo dõi - Đôi lúc có độ trễ định tải thơng tin từ google sheet xuống điện thoại Tuy nhiên yếu tố khách quan mạng wifi, việc không ảnh hưởng nhiều đến người sử dụng - Hiện app chạy tản hệ điều hành android - Chưa thực việc gửi thông báo thời gian cho chủ vật ni Trang tính google sheet: - Bố trí giao diện tương đối ổn định dễ quan sát - Các liệu tải lên đẩy vào hàng không đồng - Tốc độ hoạt động phụ thuộc vào wifi 5.4.2 Đánh giá Bảng 5.1: Số liệu thực nghiệm Quá trình Số lần thực nghiệm Số lần thành công Đánh giá Tốc độ Quét thẻ từ board trạm y tế 20 19 ĐẠT giây Quét thẻ từ board nhân viên đô thị 20 20 ĐẠT giây Truyền thông tin app google sheet 20 18 ĐẠT giây Sau trình vận hành thử hệ thống, nhóm có đánh giá sau đây: Hệ thống hoạt động ổn định đạt khoảng 70% mục tiêu ban đầu đề Các board mạch đựng hộp nhỏ gọn chắn, đẹp mắt BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 63 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1 KẾT LUẬN Sau khoảng 15 tuần nghiên cứu tìm hiểu, nhóm hồn thành đồ án thi cơng sản phẩm hệ thống quản lý tiêm phịng cho chó mèo đáp ứng yêu cầu đặt ban đầu: - Sản phẩm đóng hộp nhỏ gọn - Tốc độ truyền liệu tương đối cao xác - Các chức app hoạt động tốt - Có hệ thống pin để sử dụng - App android có giao diện trực quan, dễ theo dõi - Thời gian trễ giao tiếp trang tính App lớn khoảng đến giây - Thời gian trì hoạt động Pin chưa cao 6.2 HƯỚNG PHÁT TRIỂN - Thiết kế board với mẫu mã đẹp mắt - Tích hợp thêm khả ghi thông tin vào thẻ - Gửi thông tin ngày tiêm phịng cho chủ vật ni thơng qua app - Bảo mật thông tin chủ vật nuôi thông qua hệ thống đăng nhập tài khoản để sử dụng app cho chủ vật nuôi - Nâng cấp giao diện chức App Android - Phát triển ứng dụng chạy nhiều thiết bị có kích thước hình khác - Tăng dung lượng Pin để board mạch hoạt động nhiều làm việc BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 64 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT TÀI LIỆU THAM KHẢO [1] Quốc Huy, Hướng dẫn cách sử dụng Google Sheet, Hà Nội,2018 [2] “Dân điện tử, “Thiết Kế App Cho Android Và Ios Để Điều Khiển Esp8266 Sử Dụng Google Firebase, 10 2019 http://dandientu.com/esp8266/thiet-ke-app-cho-android-va-ios-de-dieu-khienesp8266-su-dung-google-firebase/ [3 10 2019] [3] Nguyễn Văn Hiệp, Đinh Quang Hiệp, “Giáo trình: lập trình Android Cơ Bản”, NXB Đại Học Quốc Gia 2015 Website tham khảo [1] www.arduino.vn [2] www.wikipedia.org [3] www.alldatasheet.com BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 65 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT PHỤ LỤC Code arduino #include #include #include #include #include SoftwareSerial blue(2,3); #define SS_PIN 10 #define RST_PIN LiquidCrystal_I2C lcd(0x27,16,2); MFRC522 mfrc522(SS_PIN, RST_PIN); // Instance of the class int code[] = {32,154,149,117}; //This is the stored UID (Unlock Card) int codeRead = 0; String uidString; int readsuccess; byte readcard[4]; char str[32] = ""; String StrUID; void setup() { Serial.begin(9600); SPI.begin(); // Init SPI bus mfrc522.PCD_Init(); // Init MFRC522 Serial.println("Arduino RFID reading UID"); blue.begin(9600); lcd.init(); lcd.backlight(); lcd.setCursor(0,0); lcd.print("BAT DAU"); lcd.setCursor(0,1); lcd.print(" QUET THE"); } void loop() BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 66 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT { readsuccess = getid(); if(readsuccess) { lcd.clear(); Serial.print("Ma UID:"); lcd.setCursor(0,0); lcd.print("Ma UID:"); lcd.setCursor(0,1); lcd.print(" " + StrUID); //Serial.print("#"); Serial.print(StrUID); //Serial.print("~"); blue.println(StrUID); delay(100); } } int getid() { if(!mfrc522.PICC_IsNewCardPresent()) { return 0; } if(!mfrc522.PICC_ReadCardSerial()) { return 0; } for(int i=0;i> 4) & 0x0F; byte nib2 = (array[i] >> 0) & 0x0F; buffer[i*2+0] = nib1 < 0xA ? '0' + nib1 : 'A' + nib1 - 0xA; buffer[i*2+1] = nib2 < 0xA ? '0' + nib2 : 'A' + nib2 - 0xA; } buffer[len*2] = '\0'; } BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 67 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Code ESP8266 #include #include "HTTPSRedirect.h" #include #include #define SS_PIN D4 #define RST_PIN D2 MFRC522 mfrc522(SS_PIN, RST_PIN); int readsuccess; byte readcard[4]; char str[32] = ""; String StrUID; //Khai báo thông tin Wifi const char* ssid = "ZZZ"; const char* password = "tamchinmuoi"; const char *GScriptID = "AKfycbzaHeqVu_FVMa6B_vrsoLoCMlR5MJDELLJ7x4MB1xNpKdiwKAXL"; const char* host = "script.google.com"; const char *googleRedirectHost = "script.googleusercontent.com"; const int httpsPort = 443; HTTPSRedirect client(httpsPort); //Khai báo URL chứa thông tin gủi liệu String url = String("/macros/s/") + GScriptID + "/exec?"; void setup() { Serial.begin(9600); Serial.println("Connecting to wifi: "); Serial.println(ssid); Serial.flush(); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } SPI.begin(); // Init SPI bus mfrc522.PCD_Init(); Serial.print(" IP Address: "); BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 68 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Serial.println(WiFi.localIP()); client.setInsecure(); client.setPrintResponseBody(false); client.setContentTypeHeader("application/json"); Serial.print(String("Kết nối tới ")); Serial.println(host); } void postData(String ID, String action) { if(!client.connected()){ Serial.println("Kết nối tới server "); client.connect(host, httpsPort); } String urlFinal = url + "ID=" + ID+"&action=" + action ; client.POST(urlFinal, host, ""); Serial.println("UID = " + ID + " addItem" ); } void loop() { readsuccess = getid(); if(readsuccess) { Serial.println(""); postData(StrUID,"addItem"); } } int getid() { if(!mfrc522.PICC_IsNewCardPresent()) { return 0; } if(!mfrc522.PICC_ReadCardSerial()) { return 0; } for(int i=0;i> 4) & 0x0F; BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 69 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT byte nib2 = (array[i] >> 0) & 0x0F; buffer[i*2+0] = nib1 < 0xA ? '0' + nib1 buffer[i*2+1] = nib2 < 0xA ? '0' + nib2 : 'A' + nib1 : 'A' + nib2 - 0xA; - 0xA; } buffer[len*2] = '\0'; } Code google sheet var ss = SpreadsheetApp.openByUrl("https://docs.google.com/spreadsheets/d/1hUOBJBGLr wmKrVWfrjIqFrtzELhi3kNkpUZzHye42v8/edit#gid=0"); var sheet = ss.getSheetByName('Items'); // - GOOGLE SHEET > ANDROID -function doPost(e) { var action = e.parameter.action; if(action == 'addItem'){ return addItem(e); } if(action == 'addItem1'){ return addItem1(e); } if(action == 'getItems1') { return getItems1(e); } if(action == 'getItems2') { return getItems2(e); } if(action == 'getItems') { return getItems1(e); } } function addItem1(e) { BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 70 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT var var var var var var var var var id = e.parameter.id; name = e.parameter.name; sdt = e.parameter.sdt; diachi = e.parameter.diachi; chungloai = e.parameter.chungloai; solantiem = e.parameter.solantiem; benh = e.parameter.benh; thuoc = e.parameter.thuoc; tieptheo = e.parameter.tieptheo; var day = Utilities.formatDate(new Date(), "GMT+7", "dd/MM/yyyy"); var time = Utilities.formatDate(new Date(), "GMT+7", "HH:mm:ss"); sheet.appendRow([id,time,day,name,sdt,diachi,chungloai,solantiem,"","",benh ,thuoc,tieptheo]); return ContentService.createTextOutput("Success").setMimeType(ContentService.MimeT ype.TEXT); } function addItem(e) { var x =0; var ID = e.parameter.ID; var day = Utilities.formatDate(new Date(), "GMT+7", "dd/MM/yyyy"); var time = Utilities.formatDate(new Date(), "GMT+7", "HH:mm:ss"); var row = sheet.getLastRow() + 1; sheet.appendRow([ID,time,day]); for(var i=2; i GOOGLE SHEET function doGet(e) { var action = e.parameter.action; if(action == 'getItems') { return getItems(e); } } function getItems(e) { var UID = e.parameter.itemName; sheet.appendRow([UID]); var records={}; var rows = sheet.getRange(2, 1, sheet.getLastRow() 1,sheet.getLastColumn()).getValues(); var data = []; for (var r = 0, l = rows.length; r < l; r++) BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 72 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT { var row = rows[r], record = {}; record['a'] = row[0]; record['d']=row[3]; record['e']=row[4]; record['f']=row[5]; record['g']=row[6]; record['h']=row[7]; record['j']=row[9]; record['k']=row[10]; record['l']=row[11]; record['m']=row[12]; data.push(record); } records.items = data; var result=JSON.stringify(records); return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType JSON); } // - function getItems1(e) { var UID = e.parameter.itemName; var i = 0; var records={}; var rows = sheet.getRange(2, 1, sheet.getLastRow() 1,sheet.getLastColumn()).getValues(); var data = []; for (var r = 0, l = rows.length; r < l; r++) { var row = rows[r], record = {}; if(UID==row[0]) { i++; record['a']=row[0]; record['d']=row[3]; record['e']=row[4]; record['f']=row[5]; record['g']=row[6]; record['h']=row[7]; record['j']=row[9]; record['k']=row[10]; BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 73 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT record['l']=row[11]; record['m']=row[12]; data.push(record); } } if (i== 0) { record['a']= record['d']= record['e']= record['f']= record['g']= "Không "Không "Không "Không "Không có có có có có dữ dữ liệu"; liệu"; liệu"; liệu"; liệu"; record['h']= "Khơng có liệu"; record['j']= "Khơng có liệu"; record['k']= "Khơng có liệu"; record['l']= "Khơng có liệu"; record['m']= "Khơng có liệu"; data.push(record); } records.items = data; var result=JSON.stringify(records); return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType JSON); } // - - function getItems2(e) { var SDT = e.parameter.itemName; var i = 0; var records={}; var rows = sheet.getRange(2, 1, sheet.getLastRow() 1,sheet.getLastColumn()).getValues(); var data = []; for (var r = 0, l = rows.length; r < l; r++) { var row = rows[r], record = {}; if(SDT==row[4]) { i++; record['a']=row[0]; record['d']=row[3]; record['e']=row[4]; record['f']=row[5]; record['g']=row[6]; BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 74 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT record['h']=row[7]; record['j']=row[9]; record['k']=row[10]; record['l']=row[11]; record['m']=row[12]; data.push(record); } } if (i== 0) { record['a']= record['d']= record['e']= record['f']= record['g']= "Không "Không "Khơng "Khơng "Khơng có có có có có dữ dữ liệu"; liệu"; liệu"; liệu"; liệu"; record['h']= "Không có liệu"; record['j']= "Khơng có liệu"; record['k']= "Khơng có liệu"; record['l']= "Khơng có liệu"; record['m']= "Khơng có liệu"; data.push(record); } records.items = data; var result=JSON.stringify(records); return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType JSON); } BỘ MÔN CÔNG NGHIỆP ĐIỆN TỬ - Y SINH 75 ... CƠ SỞ LÝ THUYẾT 2.1 TỔNG QUAN VỀ HỆ THỐNG QUẢN LÝ TIÊM NGỪA CHÓ MÈO .4 2.1.1 Giới thiệu hệ thống quản lý tiêm ngừa chó mèo 2.1.2 Ứng dụng hệ thống quản lý tiêm phịng chó mèo ... đề tài ? ?Xây dựng hệ thống quản lý tiêm ngừa chó mèo? ?? để giải vấn đề tiêm ngừa cho chó, mèo, bảo vệ an toàn sức khỏe cho người 2.1.2 Ứng dụng hệ thống quản lý tiêm phịng chó mèo - Hệ thống có... CHƯƠNG 2: CƠ SỞ LÝ THUYẾT CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 TỔNG QUAN VỀ HỆ THỐNG QUẢN LÝ TIÊM NGỪA CHÓ MÈO 2.1.1 Giới thiệu hệ thống quản lý tiêm ngừa chó mèo Tiêm chủng cho chó mèo biện pháp giúp