Thiết kế hệ thống iot theo dõi nhiệt độ và độ ẩm

46 6 0
Thiết kế hệ thống iot theo dõi nhiệt độ và độ ẩm

Đ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

TRƢỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CÔNG NGHỆ - ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: THIẾT KẾ HỆ THỐNG IoT THEO DÕI NHIỆT ĐỘ VÀ ĐỘ ẨM Giảng viên hƣớng dẫn : Đinh Văn Nam Sinh viên thực : Lê Khắc Sơn MSSV : 135D5103010069 Lớp : 54K1 - CNKT Điện, Điện tử Vinh, tháng 05 năm 2018 TRƢỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CÔNG NGHỆ - ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: THIẾT KẾ HỆ THỐNG IoT THEO DÕI NHIỆT ĐỘ VÀ ĐỘ ẨM Giảng viên hƣớng dẫn : Đinh Văn Nam Cán phản biện : ThS Phạm Mạnh Toàn Sinh viên thực : Lê Khắc Sơn MSSV : 135D5103010069 Lớp : 54K1 - CNKT Điện, Điện tử Vinh, tháng 05 năm 2018 ĐỒ ÁN TỐT NGHIỆP TÊN ĐỀ TÀI: THIẾT KẾ HỆ THỐNG IoT THEO DÕI NHIỆT ĐỘVÀ ĐỘ ẨM Trình độ đào tạo : Đại học quy Viện kĩ thuật công nghệ Đại Học Vinh Ngành: Công Nghệ Kỹ Thuật Điện - Điện Tử Giảng viên hƣớng dẫn:ThS Đinh Văn Nam Sinh viên thực hiện: Lê Khắc Sơn MSSV: 135D5103010069 Lớp: 54k1- CNKT Điện, Điện tử LỜI CAM ĐOAN Tôi xin cam đoan đồ án tổng quát lại kết trình nghiên cứu tơi Các số liệu, hình ảnh, thơng tin đồ án trung thực, tơi tìm hiểu, tham khảo từ nhiều nguồn tài liệu Đồ án không chép đồ án có từ trƣớc Nếu phát có gian lận tơi xin hoàn toàn chịu trách nhiệm nội dung đề tài Vinh, ngày … tháng 07 năm 2017 Ngƣời cam đoan Lê Khắc Sơn NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN Vinh,ngày….tháng….năm 2018 Giáo viên hƣớng dẫn NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Vinh,ngày….tháng….năm 2018 Giáo viên phản biện LỜI NÓI ĐẦU Ngày nay, với phát triển mạnh mẽ khoa học công nghệ sống con ngƣời có thay đổi ngày tốt hơn, với trang thiết bị đại phục vụ công cơng nghiệp hóa đại hóa đất nƣớc Đặc biệt góp phấn vào phát triển ngành cơng nghệ kĩ thuật điện-điện tử góp phần khơng nhỏ nghiệp xây dựng phát triển đất nƣớc, thiết bị điện, điện tử đƣợc phát triển mạnh mẽ ứng dụng rộng rãi đời sống nhƣ sản xuất Từ thời gian đầu phát triển vi xử lý cho thấy ƣu việt ngày tính ƣu việt ngày đƣợc khẳng định thêm Những thành tựu có biến tƣờng chừng nhƣ khơng thể thành có thể, góp phần nâng cáo đời sống vật chất tinh thần cho ngƣời Để góp phần làm sáng tỏ hiệu ứng dụng thực tế vi xử lý, sau thời gian học tập đƣợc thầy cô khoa giảng dạy kiến thức chuyên ngành, đồng thời đƣợc giúp đỡ nhiệt tình thầy cô ngành ĐiệnĐiện tử, với lỗ lực thân, em “thiết kế chế tạo mơ hình đo nhiệt độ độ ẩm, trạm biến áp“ nhƣng thời gian, kiến thức kinh nghiệm em cịn có hạn nên khơng thể tránh khỏi sai sót Em mong đƣợc giúp đỡ tham khảo ý kiến thầy bạn nhằm đóng góp phát triển thêm đề tài LỜI CẢM ƠN Trƣớc bắt đầu đồ án tốt nghiệp, với lòng biết ơn sâu sắc nhất, em xin cảm ơn quý thầy cô Viện Kỹ Thuật Và Cơng nghệ nói chung thầy cô nghành kỹ thuật công nghệ Điện- Điện tử nói riêng tận tình truyền đạt kiến thức nhƣ giúp đỡ em trình học tập trƣờng Đặc biệt, em xin ghi nhớ nhiệt tình thầy Đinh Văn Nam, ngƣời trực tiếp hƣớng dẫn giúp em hoàn thành đồ án Bên cạnh đó, em xin chuyển lời cám ơn đến thầy giảng dạy môn vi xử lý nhiệt tình giúp đỡ em việc thu thập tài liệu, trao đổi thông tin tạo điều kiện thuận lợi q trình xây dựng mơ hình Sau cùng, xin cám ơn ngƣời bạn đóng góp ý kiến hỗ trợ thơng tin để hoàn thiện đồ án tốt nghiệp Vinh, ngày tháng năm Sinh viên thực Lê Khắc Sơn MỤC LỤC LỜI CAM ĐOAN NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN .5 NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN LỜI NÓI ĐẦU CHƢƠNG TỔNG QUAN VỀ ĐỀ TÀI 10 1.1 Giới thiệu hệ thống IoT 10 1.2 Sự phát triển tự động hóa tƣơng lai 11 1.2.1 Các biến động kỹ nguyên tự động hóa 12 1.2.2 Thị trƣờng tự động hóa 13 1.2.3 Tự động hóa ngày 15 1.3 Mục tiêu đề tài 17 1.4 Tính tối ƣu đề tài 17 CHƢƠNG GIỚI THIỆU THIẾT BỊ VÀ GIẢI PHÁP CÔNG NGHỆ 18 2.1 Giới thiệu Mạch Arduino UNO R3 18 2.2 Mạch thu phát wifi ESP8266 Uart ESP-01 21 2.1.1 Kết nối ESP8266 VỚI ARDUINO 23 2.2.2 Một số loại ESP khác 26 2.3 Cảm biến nhiệt độ, độ ẩm DHT11 33 CHƢƠNG 3: KẾT NỐI MẠCH VÀ VIẾT CHƢƠNG TRÌNH 36 3.1 Kết nối mạch 36 3.2 Viết chƣơng trình 36 3.3 Giới thiệu hƣớng dẫn sử dụng thingspeak 40 3.3.1 Giới thiệu thingspeak 40 3.3.2 Hƣớng dẫn sử dụng thingspeak 41 3.4 Kết Luận 45 3.5 Hƣớng phát triển 45 CHƢƠNG TỔNG QUAN VỀ ĐỀ TÀI 1.1 Giới thiệu hệ thống IoT IoT viết tắt Internet of Thing liên mạng, thiết bị, phƣơng tiện vận tải (đƣợc gọi thiết bị kết nối thiết bị thông minh), phòng ốc thiết bị khác đƣợc nhúng với phận điện tử, phần mềm, cảm biến, cấu chấp hành với khả kết nối mạng máy tính, giúp cho thiết bị thu nhập truyền tải liệu Năm 2013, tổ chức Global Standards Initiative on Internet of Things (IoT-GSI) đinh nghĩa IoT "hạ tầng sở toàn cầu phục vụ cho xã hội thông tin, hỗ trợ dịch vụ (điện tốn) chun sâu thơng qua vật thể (cả thực lẫn ảo) đƣợc kết nối với nhờ vào công nghệ thông tin truyền thông hữu đƣợc tích hợp, với mục đích "vật" "một thứ giới thực (vật thực) giới thơng tin (vật ảo), mà vật đƣợc nhận dạng đƣợc tích hợp vào mạng lƣới truyền thông" Hệ thống IoT cho phép vật đƣợc cảm nhận đƣợc điều khiển từ xa thông qua hạ tầng mạng hữu, tạo hội cho giới thực đƣợc tích hợp trực tiếp vào hệ thống điện toán, hệ hiệu năng, độ tin cậy lợi ích kinh tế đƣợc tăng cƣờng bên cạnh việc giảm thiểu can dự ngƣời Khi IoT đƣợc gia tố cảm biến cấu chấp hành, công nghệ trở thành dạng thức hệ thống ảo-thực với tính tổng quát cao hơn, bao gồm công nghệ nhƣ điện lƣới thông minh, nhà máy điện ảo, nhà thông minh, vận tải thông minh thành phố thông minh Mỗi vật đƣợc nhận dạng riêng biệt hệ thống điện tốn nhúng có khả phối hợp với hạ tầng Internet hữu Các chuyên gia dự báo Internet Vạn Vật ôm trọn chừng 30 tỉ vật trƣớc năm 2020 Hình 1.1 Minh họa hệ thống IoT 10  ESP-06 Hình 2.12a Mạch ESP-06 Tính Sử dụng nguồn 3.3v Wireless network mode : station, softAP, softAP + station Tiêu chuẩn wifi : 802.11b/g/n, với tần số 2.4GHz hổ trợ bảo mật WPA/WPA2 Hổ trợ TCP/UDP Dễ dáng sử dụng với lệnh AT Sơ đồ chân Hình 2.12b Sơ đồ nối chân mạch ESP-06 2.2.2 Giới thiệu dòng chip wifi esp8266 Chip ESP8266 đƣợc phát triển Espressif để cung cấp giải pháp giao tiếp Wifi cho thiết bị IoT Điểm đặc biệt dịng ESP8266 đƣợc tích hợp mạch RF nhƣ balun, antenna switches, TX power amplifier RX filter bên chip với kích thƣớc nhỏ 5x5mm nên board sử dụng ESP8266 khơng cần kích thƣớc board lớn nhƣ khơng cần nhiều linh kiện xung quanh Ngoài ra, giá thành ESP8266 thấp đủ để hấp dẫn nhà phát triển sản phẩm IoT Cấu trúc phần cứng dịng chip ESP8266 tóm tắt nhƣ sau:  Sử dụng 32-bit MCU core có tên Tensilica  Tốc độ system clock set 80MHz 160MHz  Khơng tích hợp nhớ Flash để lƣu chƣơng trình  Tích hợp 50KB RAM để lƣu liệu ứng dụng chạy 32  Có đầy đủ ngoại vi chuẩn đê giao tiếp nhƣ 17 GPIO, Slave SDIO, SPI, I2C, I2S, UART, PWM  Tích hợp mạch RF để truyền nhận liệu tần số 2.4GHz  Hỗ trợ hoạt động truyền nhận IP packages mức hardware nhƣ Acknowledgement, Fragmentation Defragmentation, Aggregation, Frame Encapsulation v.v… (và phần stack TCP/IP đƣợc thực firmware ESP8266) Hình 13 Mạch nguyên khối đầy đủ cho ESP8266 2.3 Cảm biến nhiệt độ, độ ẩm DHT11 Cảm biến độ ẩm nhiệt độ DHT11 cảm biến thơng dụng chi phí rẻ dễ lấy liệu thông qua giao tiếp wire (giao tiếp digital dây truyền liệu nhất) Bộ tiền xử lý tín hiệu tích hợp cảm biến giúp bạn có đƣợc liệu xác mà khơng phải qua tính tốn So với cảm biến đời DHT22 DHT11 cho khoảng đo độ xác nhiều 33 Hình 2.13 Cảm biến nhiệt độ, độ ẩm DHT11 Thông số kĩ thuật:  Nguồn: 3-5 VDC  Dòng sử dụng: 2.5mA max (khi sử truyền liệu)  Đo tốt độ ẩm 20-80%RH với sai số 5%  Đo tốt nhiệt độ 0-50oC sai số ±2oC  Tần số lấy mẫu tối đá 1HZ  Kích thước 15mmX12mmX5.5mm  chân khoảng cách 0.1 Sơ đồ nguyên lý:  Sơ đồ kết nối vi xử lý: Hình 2.14 Sơ đồ kết nối vi xử lí cảm biến nhiệt độ, độ ẩm DHT11  Nguyên lý hoạt động: Để giao tiếp với DHT11 theo chuẩn vi xử lí thực bước: o Gửi tín hiệu muốn đo tới DHT11, sau DHT11 xác nhận lại o Khi giao tiếp đƣợc với DHT11, cảm biến gửi lại 5byte liệu nhiệt độ, độ ẩm đo đƣợc 2.3.1 Kết nối DHT11 với ARDUINO  Nối chân GND Arduino với chân GND DHT 11 34  Nối chân 5V Arduino với chân Vcc DHT 11  Nối chân D2 Arduino với chân Signal DHT 11 Hình 2.15 Sơ đồ kết nối DHT11 với ARDUINO UNO Chƣơng trình : #include “DHT.h” const int DHTPIN = 2; //Đọc liệu từ DHT11 chân mạch const int DHTTYPE = DHT11; //Khai báo loại cảm biến, có loại DHT11 DHT22 DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(9600); dht.begin(); // Khởi động cảm biến } void loop() { float h = dht.readHumidity(); //Đọc độ ẩm float t = dht.readTemperature(); //Đọc nhiệt độ Serial.print(“Nhiet do: “); Serial.println(t); //Xuất nhiệt độ Serial.print(“Do am: “); Serial.println(h); //Xuất độ ẩm Serial.println(); //Xuống hàng delay(1000); //Đợi giây } 35 CHƢƠNG 3: KẾT NỐI MẠCH VÀ VIẾT CHƢƠNG TRÌNH 3.1 Kết nối mạch Hình 3.1 Sơ đồ kết nối mạch  Chân 3.3V chân CHPD module wifi esp8266 nối với nối với chận 3.3V Arduino Uno R3  Chân GND module wifi esp8266 nối với chân GND Arduino Uno R3  Chấn RX module wifi nối với chân số Arduino Uno R3  Chân TX module wifi ta nối với chân số Arduino Uno R3  Chân 5V DHT11 nối với chân 5V arduino Uno R3  Chân GND DHT11 nối với chân 5V arduini Uno R3  Chấn tín hiệu DHT11 nối với chân số arduino Uno R3 Hình 3.2 Sơ đồ mạch thực 3.2 Viết chƣơng trình #include 36 SoftwareSerial espSerial = SoftwareSerial(2,3); // arduino TX pin=2 arduino RX pin=3 #include #define DHTPIN #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE); String apiKey = "Z1KMUCGDI6JMKL58"; thingspeak WRITE API key // replace with your channel's String ssid="iPhone"; // Wifi network SSID String password ="88888888"; // Wifi network password boolean DEBUG=true; //========================================================= =============== showResponce void showResponse(int waitTime){ long t=millis(); char c; while (t+waitTime>millis()){ if (espSerial.available()){ c=espSerial.read(); if (DEBUG) Serial.print(c); } } } boolean thingSpeakWrite(float value1, float value2){ String cmd = "AT+CIPSTART=\"TCP\",\""; // TCP connection cmd += "184.106.153.149"; // api.thingspeak.com cmd += "\",80"; 37 espSerial.println(cmd); if (DEBUG) Serial.println(cmd); if(espSerial.find("Error")){ if (DEBUG) Serial.println("AT+CIPSTART error"); return false; } String getStr = "GET /update?api_key=Z1KMUCGDI6JMKL58&field1=&fied2= "; // prepare GET string getStr += apiKey; getStr +="&field1="; getStr += String(value1); getStr +="&field2="; getStr += String(value2); getStr += "\r\n\r\n"; // send data length cmd = "AT+CIPSEND="; cmd += String(getStr.length()); espSerial.println(cmd); if (DEBUG) Serial.println(cmd); delay(100); if(espSerial.find(">")){ espSerial.print(getStr); if (DEBUG) Serial.print(getStr); } else{ espSerial.println("AT+CIPCLOSE"); // alert user if (DEBUG) Serial.println("AT+CIPCLOSE"); return false; } 38 return true; } //========================================================= ======================= setup void setup() { DEBUG=true; // enable debug serial Serial.begin(115200); dht.begin(); // Start DHT sensor espSerial.begin(115200); // enable software serial // Your esp8266 module's speed is probably at 115200 // For this reason the first time set the speed to 115200 or to your esp8266 configured speed // and upload Then change to 9600 and upload again //espSerial.println("AT+RST"); //showResponse(1000); // Enable this line to reset the module; //espSerial.println("AT+UART_CUR=115200,8,1,0,0"); // Enable this line to set esp8266 serial speed to 9600 bps //showResponse(1000); espSerial.println("AT+CWMODE=1"); // set esp8266 as client showResponse(1000); espSerial.println("AT+CWJAP=\""+ssid+"\",\""+password+"\""); // set your home router SSID and password showResponse(5000); if (DEBUG) Serial.println("Setup completed"); } 39 // ========================================================== ============ loop void loop() { // Read sensor values float t = dht.readTemperature(); float h = dht.readHumidity(); if (isnan(t) || isnan(h)) { if (DEBUG) Serial.println("Failed to read from DHT"); } else { if (DEBUG) Serial.println("Temp="+String(t)+" *C"); if (DEBUG) Serial.println("Humidity="+String(h)+" %"); thingSpeakWrite(t,h); // Write values to thingspeak } // thingspeak needs 15 sec delay between updates, delay(20000); } 3.3 Giới thiệu hƣớng dẫn sử dụng thingspeak 3.3.1 Giới thiệu thingspeak Thingspeak mã nguồn mở cho ứng dụng Internet of Thing Mã nguồn hỗ trợ việc lấy liệu từ cảm biến thông qua module wifi esp8266 hay từ thiết bị khác có nhiệm vụ lƣu trữ xử lí liệu với Thing speak, bạn tạo ứng dụng phân tích liệu, lƣu trữ liệu quản lí liệu cách đơn giản ThingSpeak ban đầu đƣợc đƣa ioBridge vào năm 2010 nhƣ dịch vụ hỗ trợ cho ứng dụng IoT ThingSpeak tích hợp hỗ trợ từ phần mềm tính tốn số MATLAB từ MathWorks, cho phép ngƣời dùng ThingSpeak phân tích trực quan hóa liệu tải lên cách sử dụng Matlab mà khơng u cầu mua giấy phép MatlabMathworks ThingSpeak có quan hệ chặt chẽ với Mathworks, Inc Trên thực tế, tất tài liệu ThingSpeak đƣợc tích hợp vào trang tài liệu Mathll Matlab chí cho phép tài khoản ngƣời dùng Mathworks đăng ký làm thông tin đăng nhập hợp lệ trang web ThingSpeak Các điều khoản dịch vụ sách bảo mật ThingSpeak.com ngƣời dùng đồng ý Mathworks, Inc 40 Hình 3.3 Giao diện thingspeak 3.3.2 Hƣớng dẫn sử dụng thingspeak Bƣớc 1: Tạo tài khoản thingspeak Bạn truy cập vào địa https://thingspeak.com chọn Sign Up để đăng ký tài khoản miễn phí Sau điền đầy đủ thông tin yêu cầu, bạn nhận đƣợc email yêu cầu xác thực tài khoản email Hình 3.4 Cách đăng kí tài khoản thingspeak Sau xác thực bạn login vào thấy đƣợc thông tin tài khoản Bƣớc 2: Tạo data chanel Sau login, bạn cần tạo data channel để lƣu trữ liệu Trong My Channels, bạn chọn New Channel điền thơng tin cần thiết 41 Ở tạo channel để chứa liệu từ cảm biến thu đƣợc phịng ngủ với Field temperature Field humidity: Hình 3.5 Cách tạo chanel tài khoản Bƣớc 3: Lấy URL cần thiết để upload liệu Để upload hay lấy liệu bạn cần biết URL để truy cập Bạn mở channel tạo, tìm đến tab API Keys thấy đƣợc URL để get hay upload data: Hình 3.6 Cách upload liệu lên thingspeak Bƣớc 4: Upload liệu từ Blocky Bạn upload chƣơng trình sau vào blocky 42 #include #include #define DHTTYPE DHT11 #define DHTPIN 13 //https://thingspeak.com //hikvisioncameratma@gmail.com - 12345678x@X WiFiClient client; // Wi-Fi Settings const char* ssid = "yourssid"; // your wireless network name (SSID) const char* password = "yourpasswd"; // your Wi-Fi network password // ThingSpeak Settings const int channelID = 478886; //Your channel ID String writeAPIKey = "RHQEQ77WKN8D91B9"; // write API key for your ThingSpeak Channel const char* server = "api.thingspeak.com"; const int postingInterval = 20 * 1000; // post data every 20 seconds DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(115200); dht.begin(); Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected."); Serial.println("IP address: "); Serial.println(WiFi.localIP()); } void loop() { if (client.connect(server, 80)) { 43 // Measure Signal Strength (RSSI) of Wi-Fi connection long rssi = WiFi.RSSI(); //read Wifi Signal Strength // Read humidity float humidity = dht.readHumidity(); // Read temperature float temperature = dht.readTemperature(); // Construct API request body String body = "field1="; body += String(rssi); body += "&field2="; body += String(temperature); body += "&field3="; body += String(humidity); Serial.print("Temperature: "); Serial.println(temperature); Serial.print("Humidity: "); Serial.println(humidity); client.print("POST /update HTTP/1.1\n"); client.print("Host: api.thingspeak.com\n"); client.print("Connection: close\n"); client.print("X-THINGSPEAKAPIKEY: " + writeAPIKey + "\n"); client.print("Content-Type: application/x-www-form-urlencoded\n"); client.print("Content-Length: "); client.print(body.length()); client.print("\n\n"); client.print(body); client.print("\n\n"); } client.stop(); // wait and then post again delay(postingInterval); } Sau Blocky chạy bắt đầu upload liệu lên ThingSpeak, bạn xem liệu channel, tab Private View 44 3.4 Kết Luận  Ƣu điểm: mạch nhỏ gọn, thị rõ ràng, đáng ứng yêu cầu đề tài, tiết kiệm công sức ngƣời  Nhƣợc điểm: phụ thuộc vào kết nối internet  Sau hoàn thành kết đƣợc hiển thị thingspeak nhƣ hình dƣới: Hình 4.1 Kết hiển thị thingspeak 3.5 Hƣớng phát triển Có thể phát triển mơ hình tƣơng lai với kết nối nhiều thiết bị Có thể theo dõi nhiều thơng số nhiều lĩnh vực khác Do thời gian kiến thức cịn hạn hẹp nên khơng thể tránh khỏi thiếu sót q trình thực đề tài Rất mong nhận đƣợc góp ý, đánh giá quý báu quý thầy cô bạn 45 Tài liệu tham khảo Đỗ Xuân Thụ, Kỹ thuật điện tử, NXB giáo dục năm 1999 Phan Quốc Phô, Nguyễn Đức Chiến, Giáo trình cảm biến, NXB Khoa học kĩ thuật năm 2000 Website http://arduino.vn/ Website http://dientu360.com/ youtube.com 46 ... 2018 ĐỒ ÁN TỐT NGHIỆP TÊN ĐỀ TÀI: THIẾT KẾ HỆ THỐNG IoT THEO DÕI NHIỆT ĐỘVÀ ĐỘ ẨM Trình độ đào tạo : Đại học quy Viện kĩ thuật cơng nghệ Đại Học Vinh Ngành: Công Nghệ Kỹ Thuật Điện - Điện Tử Giảng...TRƢỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CÔNG NGHỆ - ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: THIẾT KẾ HỆ THỐNG IoT THEO DÕI NHIỆT ĐỘ VÀ ĐỘ ẨM Giảng viên hƣớng dẫn : Đinh Văn Nam Cán... thiệu hệ thống IoT 10 1.2 Sự phát triển tự động hóa tƣơng lai 11 1.2.1 Các biến động kỹ nguyên tự động hóa 12 1.2.2 Thị trƣờng tự động hóa 13 1.2.3 Tự động

Ngày đăng: 01/08/2021, 15:48

Từ khóa liên quan

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

Tài liệu liên quan