1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Đồ án điều khiển thiết bị bằng wifi sử dụng Esp8266

45 92 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 45
Dung lượng 3,63 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • BỘ CÔNG THƯƠNG

  • CBHD: Thạc sĩ Nguyễn Anh Dũng Sinh viên: Nguyễn Việt Dũng

  • MỤC LỤC

  • LỜI MỞ ĐẦU

  • CHƯƠNG 1 - CƠ SỞ LÝ THUYẾT

  • 1.1 Module wifi esp8266

  • 1.1.1 Các phiên bản module thu phát wifi esp8266

  • 1.1.2 Một số phiên bản phổ biến

  • Thông số kỹ thuật:

  • Sơ đồ chân:

  • 2. ESP - 12

  • Thông số kỹ thuật:

  • Sơ đồ chân:

  • 3. ESP - 07

  • Sơ đồ chân:

  • 1.1.3 Kit RF thu phát wifi esp266 NodeMCU Lua V3 CH340

  • Thông số kỹ thuật:

  • Sơ đồ chân:

  • 1.2 Rơ le

  • 1.2.1 Khái quát về Rơ le

  • 1.2.2 Phân loại

  • 1.2.3 Rơ le 10A

  • Thông số kĩ thuật:

  • 1.3 Transistor C1815

  • Sơ đồ chân:

  • 1.4 Diode 1N4007

  • Tính năng:

  • Thông số kỹ thuật:

  • CHƯƠNG 2 - CÁC CÔNG NGHỆ LIÊN QUAN

  • 2.1 Công nghệ wifi

  • 2.1.1 Giới thiệu về Wifi

  • 2.1.2 Nguyên tắc hoạt động của Wifi

  • 2.1.3 Ưu nhược điểm của Wifi

  • 2.2 Lập trình esp8266 trên arduino

  • Về giao diện:

  • 2.3 Lập trình ứng dụng bằng MIT App Inventor

  • 2.3.1 Giới thiệu

  • 2.3.2 Thiết kế giao diện điều khiển trên Android

  • 2.3.3 Viết code

  • 2.3.4 Đóng gói ứng dụng thành file *.apk

  • CHƯƠNG 3 - KẾT QUẢ THỰC NGHIỆM

  • 3.1 Sơ đồ khối

  • 3.2 Nguyên tắc hoạt động

  • 3.3 Lưu đồ thuật toán

  • 3.4 Sơ đồ nguyên lý mạch chấp hành

  • 3.5 Sơ đồ mạch in mạch chấp hành

  • 3.6 Mô hình thực tế

Nội dung

Đồ án hướng dẫn sử dụng Modul esp8266 và điện thoại di dộng để điều khiển các thiết bị trong nhà bằng wifi. Hướng dẫn sử dụng MIT App Inventor để tạo ứng dụng trên điện thoại di động. Hệ thống điều khiển thiết bị bằng wifi được thực hiện như đề tài có thể được xem làm một hệ thống thông minh cùng với các chức năng đã đạt được như: Điều khiển các thiết bị một cách chính xác, nhanh chóng, thuận tiện, rút ngắn thời gian khi có thể điều khiển 2 hoặc nhiều thiết bị ở nhiều vị trí khác nhau mà không cần di chuyển.

CƠ SỞ LÝ THUYẾT

Module wifi esp8266

1.1.1 Các phiên bản module thu phát wifi esp8266

ESP8266 là một chip tích hợp Wifi 2.4Ghz có khả năng lập trình, nhưng để hoạt động hiệu quả, nó cần thêm ít nhất 7 linh kiện khác Trong số đó, việc sản xuất và kiểm tra Antena là phần khó khăn nhất, đòi hỏi thiết bị hiện đại.

Hình 1-1: So sánh các thông số của ESP (1).

Hình 1-2: So sánh các thông số của ESP (2).

Hiện nay, trên thị trường xuất hiện nhiều Module và Board mạch phát triển đảm đương hết để người dùng đơn giản nhất trong việc phát triển ứng dụng.

1.1.2 Một số phiên bản phổ biến

Hình 1-3: Phiên bản ESP 01.

 Mạch nhỏ, gọn ( 24.75mm x 14.5mm ).

 Tích hợp sẵn anten PCB trace trên module.

 Có hai led báo hiệu: led nguồn , led TXD.

 Có các chế độ: AP, STA, AT + STA.

 Lệnh AT rất đơn giản, dễ dàng sử dụng.

 Khoảng cách giữa các chân 2.54mm.

Hình 1-4: Sơ đồ chân ESP 01.

Hình 1-5: Phiên bản ESP 12.

 Tích hợp anten PCB tracc trên module.

 Tiêu chuẩn wifi: 802.11 b/g/n, với tần số 2.4GHz và hỗ trợ bảo mật WPA/WPA2.

 Khoảng cách giữa các chân 2mm.

Hình 1-6: Sơ đồ chân ESP 12.

 Tích hợp sẵn anten ceramic và anten ngoài U.FL.

 Tiêu chuẩn wifi: 802.11 b/g/n, với tần số 2.4GHz và hỗ trợ bảo mật WPEWPA2.

 Dễ dàng sử dụng với lệnh AT.

 Có 3 chế độ hoạt động Client, Access Point, Both Client and Access Point.

 Làm việc như các máy chủ có thể kết nối với 5 máy con.

 Khoảng cách giữa các chân 2mm.

Hình 1-8: Sơ đồ chân ESP 07.

 RESET: chân reset kéo xuống mass để reset.

 ADC: chân đọc dữ liệu Analog.

 CH_PD: Kích hoạt chip, sử dụng cho Flash Boot và updating tại module.

 TXD: chân Tx của giao thức UART.

 RXD: chân Rx của giao thức UART.

 Còn lại là các chân GPIO.

1.1.3 Kit RF thu phát wifi esp266 NodeMCU Lua V3 CH340

Module RF thu phát Wifi ESP8266 NodeMCU Lua V3 CH340 là phiên bản NodeMCU tiết kiệm chi phí với IC nạp CH340 từ Lolin Nó sử dụng module Wifi SoC ESP8266 làm bộ xử lý trung tâm, cho phép thiết kế dễ dàng và thuận tiện Đặc biệt, người dùng có thể lập trình và nạp code trực tiếp bằng trình biên dịch Arduino, giúp việc phát triển ứng dụng trên ESP8266 trở nên đơn giản và hiệu quả.

Kit RF thu phát Wifi ESP8266 NodeMCU Lua V3 CH340 là giải pháp lý tưởng cho các ứng dụng IoT, cho phép kết nối, thu thập dữ liệu và điều khiển thông qua sóng Wifi.

Hình 1-9: Kit thu phát wifi esp8266 V3CH340.

 GIPO giao tiếp mức 3.3VDC.

 Chip nạp và giao tiếp UART: CH340.

 GPIO tương thích hoàn toàn với firmware Node MCU.

 Cấp nguồn: 5VDC MicroUSB hoặc Vin.

 Tích hợp Led báo trạng thái, nút Reset, Flash.

 Tương thích hoàn toàn với trình biên dịch Arduino.

 GIPO giao tiếp mức 3.3VDC.

Hình 1-10: Sơ đồ chân Kit thu phát wifi esp8266 V3CH340.

Rơ le

1.2.1 Khái quát về Rơ le

Hình 1-11: Hình ảnh rơ le trung gian.

Rơ-le là thiết bị điện có chức năng sử dụng một năng lượng nhỏ để điều khiển nguồn năng lượng lớn hơn Nó được ứng dụng rộng rãi trong các hệ thống điều khiển động cơ và chiếu sáng, giúp tối ưu hóa hiệu suất và an toàn trong các thiết bị điện.

Khi cần kiểm soát nguồn năng lượng lớn, việc sử dụng rơ-le ghép nối tiếp là phổ biến Trong cấu trúc này, một rơ-le nhỏ sẽ điều khiển một rơ-le lớn hơn, và rơ-le lớn sẽ đảm nhận việc điều khiển nguồn công suất.

1 Phân loại theo nguyên lý làm việc:

 Rơ le bán dẫn và vi mạch.

2 Phân loại theo vai trò và đại lượng tác động:

3 Phân loại theo dòng điện:

 Rơ le dòng điện một chiều.

 Rơ le dòng điện xoay chiều.

4 Phân loại theo giá trị và chiều của đại lượng đi vào rơ le:

 Thời gian tác động: 10ms.

 Thời gian nhả hãm: 5ms.

 Nhiệt độ hoạt động: -45 độ C ~ 75 độ C.

Rơ le 5 chân SRD-5VDC là loại linh kiện đóng ngắt điện cơ đơn giản:

 +: cấp hiệu điện thế kích tối ưu vào chân này.

 S: chân tín hiệu, tùy vào loại module rơ-le mà nó sẽ làm nhiệm vụ kích rơ-le.

Khi sử dụng module rơ-le kích ở mức cao, nếu chân S nhận điện thế dương, module rơ-le sẽ được kích hoạt; ngược lại, nếu không có điện thế dương, module sẽ không hoạt động.

Tương tự với module rơ-le kích ở mức thấp.

Hình 1-13: Sơ đồ cấu tạo Rơ-le.

 Chân 1, 2: được nối vào cuộn hút, khi có điện vào cuộn hút sẽ hút tiếp điểm chuyển từ vị trí 4 xuống tiếp điểm 5.

 Chân 3: đặt điện áp (nếu là loại Relay 5V thì đặt 5V DC vào).

Transistor C1815

The specifications of the transistor include a TO-92 package type and an NPN configuration, with a maximum collector current (IC) of 150mA It has a maximum collector-emitter voltage (V CE) of 50V and a collector-base voltage (V CB) of 60V The maximum emitter-base voltage (VEBO) is 5V, while the maximum collector dissipation (Pc) is 400 milliwatts This transistor operates at a maximum frequency of 80 MHz and has a DC current gain (h FE) ranging from 70 to 700 Additionally, it can withstand a storage and operating temperature range of -55 to +150 degrees Celsius.

Hình 1-14: Sơ đồ chân của tran C1815.

Diode 1N4007

Diode là linh kiện điện tử cho phép dòng điện một chiều đi qua, thường được sử dụng trong các mạch điện tử Với khả năng đóng cắt tốc độ cao, diode này hoạt động hiệu quả trong môi trường có dòng điện và điện áp thấp Đặc biệt, loại diode này có thời gian phục hồi nhanh, giúp nó có thể đóng cắt các xung tín hiệu với tần số rất cao, đảm bảo truyền tải tín hiệu ổn định trong các mạch tín hiệu.

Thông số kỹ thuật: o Điện áp chịu: 1000V. o Dòng đi qua: 1A. o Số chân: 2. o Kiểu chân: SOD123.

CÁC CÔNG NGHỆ LIÊN QUAN

Công nghệ wifi

Wifi, viết tắt của Wireless Fidelity, là công nghệ kết nối Internet không dây sử dụng sóng vô tuyến để truyền tín hiệu Sóng này tương tự như sóng điện thoại, truyền hình và radio Hầu hết các thiết bị điện tử hiện nay, bao gồm máy tính, laptop, điện thoại và máy tính bảng, đều hỗ trợ kết nối Wifi.

Hình 2-1: WiFi với các thiết bị thông minh.

Wifi dựa trên các chuẩn kết nối IEEE 802.11, chủ yếu hoạt động trên băng tần 54 Mbps Ban đầu, Wifi được phát triển để thay thế cáp Ethernet, nhưng đến nay đã trở thành công nghệ phổ biến, cung cấp kết nối giữa các thiết bị.

2.1.2 Nguyên tắc hoạt động của Wifi Để có được sóng Wifi thi chúng ta cần phải có bộ phát Wifi - chính là các thiết bị như modem, router Đầu vào, tín hiệu Internet nguồn (được cung cấp bởi các đơn vị ISP như FPT, Viettel, VNPT, CMC hiện nay).

Hình 2-2: Hình ảnh Modem wifi.

Modem và router nhận tín hiệu Internet qua kết nối có dây và chuyển đổi thành tín hiệu không dây, phục vụ cho các thiết bị như smartphone và laptop Quá trình này diễn ra thông qua adapter, hay còn gọi là card wifi, giúp biến đổi tín hiệu thành Internet Ngoài ra, quá trình cũng có thể diễn ra ngược lại, khi modem và router nhận tín hiệu không dây từ adapter, giải mã và gửi qua Internet.

2.1.3 Ưu nhược điểm của Wifi

Hiện nay, sóng wifi nổi bật hơn nhiều loại sóng kết nối internet khác như 3G và 4G Mạng wifi không dây tương tự như các hệ thống mạng truyền thống, cho phép người dùng truy cập tài nguyên mạng ở mọi địa điểm trong khu vực được triển khai, từ nhà ở đến văn phòng.

Với sự gia tăng người sử dụng laptop, việc sử dụng mạng không dây mang lại nhiều lợi ích, bao gồm tính di động và sự tiện lợi Người dùng có thể dễ dàng truy cập Internet ở bất kỳ đâu, đặc biệt là tại các quán Café, nơi mà mạng không dây thường được cung cấp miễn phí.

Hiệu quả: Người sử dụng luôn duy trì kết nối mạng khi họ cần phải đi từ nơi này tới nơi khác

Mạng wifi không dây có khả năng mở rộng linh hoạt, cho phép nhiều người dùng kết nối cùng lúc mà không cần dây cáp như trước đây Điều này giúp tiết kiệm thời gian và chi phí, vì hệ thống cổ điển yêu cầu phải lắp đặt thêm bộ chia khi tăng số lượng người dùng, gây rắc rối và phức tạp.

Hình 2.1: Hình ảnh các ưu điểm Wifi

Mạng không dây, mặc dù có nhiều ưu điểm, vẫn tồn tại những hạn chế nhất định, đặc biệt là về độ bảo mật Do kết nối diễn ra trong môi trường không khí, người dùng có nguy cơ cao bị tấn công Tuy nhiên, các nhà sản xuất thiết bị phát wifi đã trang bị nhiều biện pháp bảo mật hiệu quả, giúp bảo vệ an toàn thông tin cá nhân cho người sử dụng.

Hệ thống mạng 802.11g có phạm vi hoạt động tối ưu chỉ trong vài chục mét, phù hợp với căn hộ nhưng không đáp ứng được nhu cầu trong các tòa nhà lớn Để mở rộng phạm vi, người dùng cần đầu tư thêm Repeater hoặc access point, dẫn đến chi phí gia tăng đáng kể Độ tin cậy của mạng cũng bị ảnh hưởng do sử dụng sóng vô tuyến, dễ bị suy giảm tín hiệu bởi các thiết bị khác như lò vi sóng, làm giảm hiệu quả hoạt động của hệ thống.

Tốc độ mạng không dây thường chậm hơn so với mạng cáp truyền thống, với tốc độ dao động từ 1-125 Mbps, trong khi mạng cáp có thể đạt từ 100 Mbps đến hàng Gbps.

Lập trình esp8266 trên arduino

Các thiết bị Arduino sử dụng một ngôn ngữ lập trình riêng, dựa trên Wiring, một ngôn ngữ được thiết kế cho phần cứng nói Wiring là biến thể của C/C++, và mặc dù có nhiều cách gọi khác nhau, tôi gọi nó là “ngôn ngữ Arduino”, như cách mà đội ngũ phát triển Arduino cũng thường sử dụng.

Ngôn ngữ lập trình Arduino, dựa trên C/C++, rất dễ học và dễ hiểu Để lập trình, gửi lệnh và nhận tín hiệu từ mạch Arduino, người dùng có thể sử dụng môi trường lập trình Arduino IDE (Integrated Development Environment) được cung cấp bởi nhóm phát triển dự án.

Hình 2-3: Giao diện phần mềm lập trình Arduino IDE.

Vùng lệnh: Bao gồm các nút lệnh menu (File, Edit, Skech, Tools,

Help) Phía dưới là các icon cho phép sử dụng nhanh các chức năng thường dùng của IDE.

Hình 2-4: Vùng lệnh của Arduino IDE.

Vùng viết chương trình: Nơi viết các đoạn mã.

Hình 2-5: Vùng viết trương trình của Arduino IDE.

Vùng thông báo (debug): Những thông báo từ IDE sẽ được hiển thị tại đây Để ý rằng góc dưới cùng bên phải hiển thị loại board Arduino và cổng

COM được sử dụng Luôn chú ý tới mục này bởi nếu chọn sai loại board hoặc cổng COM sẽ không thể upload được code.

Hình 2-6: Vùng thông báo của Arduino IDE.

Lập trình ứng dụng bằng MIT App Inventor

MIT App Inventor là một môi trường phát triển ứng dụng web, được phát triển ban đầu bởi Google và hiện do Viện Công nghệ Massachusetts (MIT) duy trì Công cụ này cho phép người mới lập trình tạo ra ứng dụng cho hai hệ điều hành chính: Android và iOS, với phiên bản thử nghiệm beta cuối cùng cho iOS được ra mắt vào ngày 8 tháng 7 năm 2019 Đây là phần mềm miễn phí, mã nguồn mở, được phát hành dưới hai giấy phép: Attribution ShareAlike 3.0 Unported và Giấy phép Apache 2.0 cho mã nguồn.

Nó sử dụng giao diện người dùng đồ họa (GUI) tương tự như ngôn ngữ lập trình Scratch và StarLogo, cho phép người dùng dễ dàng kéo và thả các đối tượng để phát triển ứng dụng di động Khi phát triển Nhà phát minh ứng dụng, Google đã kế thừa những nghiên cứu quan trọng về điện toán giáo dục và các dự án đã thực hiện trong các môi trường phát triển trực tuyến.

Nhà phát minh ứng dụng và các dự án liên quan được xây dựng dựa trên lý thuyết học tập của nhà xây dựng, nhấn mạnh rằng lập trình có thể là công cụ hiệu quả để kích thích những ý tưởng mạnh mẽ thông qua phương pháp học tập tích cực.

Phong trào trong máy tính và giáo dục đã bắt đầu từ những năm 1960 với công trình của Seymour Papert và Tập đoàn Logo MIT, tiếp nối là những đóng góp của Mitchel Resnick thông qua Lego Mindstorms và StarLogo.

Nhà phát minh ứng dụng cũng hỗ trợ sử dụng dữ liệu đám mây thông qua thành phần cơ sở dữ liệu thời gian thực Firebase.

Hình 2-7: MIT app inventor.

2.3.2 Thiết kế giao diện điều khiển trên Android đó. Để tạo một Project mới ta chọn Start New Project và đặt tên cho project

Hình 2-8: Tạo project trên MIT app Inventor.

The Project design interface is user-friendly, featuring controls on the left such as User Interface, Media, Sensor, and Social Users can easily utilize these features by clicking and dragging them onto the Screen in the center, which simulates the application's display On the right, there is a management window for Components, Media, and Properties for each Control Simply drag Labels and Buttons into the Layers to create the desired interface.

Hình 2-9: Thiết kế các chức năng trên MIT app Inventor.

Sau khi được giao diện như trên, tiến hành phần “code”, bấm vào Tab

“Blocks” ở góc trên bên phải màn hình.

Cửa sổ "code" hiển thị các khối lệnh như Control, Logic, Math, Text, cùng với các lệnh tương ứng cho từng nút Để thực hiện một lệnh, người dùng chỉ cần kéo và thả khối lệnh từ bên trái vào màn hình.

Lần lượt kéo các khối lệnh để được các dòng code sau:

2.3.4 Đóng gói ứng dụng thành file *.apk

Để đóng gói ứng dụng thành file APK và cài đặt trên điện thoại, bạn cần chọn Build và sau đó chọn App để xuất file APK Nếu bạn muốn tạo mã QR cho file APK, hãy chọn tùy chọn tương ứng Nếu không, bạn có thể lưu file trực tiếp lên máy tính Giao diện hoàn thành sẽ hiển thị trên điện thoại của bạn.

Hình 2-10: Hình ảnh ứng dụng trên điện thoại (Sreen1).

Hình 2-11: Hình ảnh ứng dụng trên điện thoại (Sreen2).

Khối xử lýKhối điều khiển

KẾT QUẢ THỰC NGHIỆM

Sơ đồ khối

Khối nguồn cung cấp điện 1 chiều 5V cho mạch, được tích hợp sẵn trong module ESP8266 Khối điều khiển cho phép người dùng điều khiển thiết bị thông qua ứng dụng trên điện thoại thông minh Khối xử lý nhận tín hiệu từ điện thoại, giải mã và thực hiện chương trình đã được lập trình, sau đó gửi lệnh đến khối chấp hành Cuối cùng, khối chấp hành thực hiện các lệnh từ khối xử lý, điều khiển các thiết bị như đèn, quạt, và cửa.

Nguyên tắc hoạt động

Kết nối mạch hệ thống theo sơ đồ khối để cung cấp nguồn cho các khối Đầu tiên, điện thoại sẽ kết nối với wifi thông qua ESP8266, sau đó cả ESP8266 và điện thoại thông minh sẽ cùng truy cập vào địa chỉ IP của wifi.

Sau đó ESP8266 thông qua Wifi nhận dữ liệu từ điện thoại rồi thực hiện các chức năng.

Lưu đồ thuật toán

Đầu tiên, kiểm tra kết nối giữa ESP8266 và điện thoại di động trên cùng một mạng Wi-Fi Sau đó, xem xét các lệnh điều khiển từ ứng dụng điện thoại Nếu có lệnh điều khiển, hệ thống sẽ thực hiện và kết thúc lệnh đó.

Hình 3-1: Lưu đồ thuật toán

Sơ đồ nguyên lý mạch chấp hành

Hình 3-2: Sơ đồ nguyên lý mạch chấp hành.

Sơ đồ mạch in mạch chấp hành

Hình 3-3: Sơ đồ mạch in mạch chấp hành.

Mô hình thực tế

Hình 3-4: Mô hình thực tế.

Các thiết bị điện để điều khiển bao gồm: đèn chiếu sáng, quạt thông gió, mô hình cửa cuốn gara, cửa chính.

Hình 3-5: Mô hình cửa cuốn.

Mô hình cửa cuốn gara ô tô sử dụng mạch động lực đảo chiều động cơ để hoạt động.

Hình 3-6: Điều khiển cửa cuốn mở.

Khi nhấn nút trên ứng dụng, tùy vào từng chức năng của nút mà các thiết bị sẽ được điều khiển.

Hình 3-7: Điều khiển bật đèn phòng khách.

Hình 3-8: Điều khiển cửa mở.

Cửa chính được điều khiển bằng động cơ servo SG90.

Hình 3-9: Điều khiển bật các thiết bị trong nhà.

Chế độ “IN” của ứng dụng sẽ bật tất cả cacs thiết bị trong phòng, chế độ “OUT” thì ngược lại.

Ngày đăng: 27/06/2021, 10:10

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Marco SchwartZ(2016), Internet of Things với ESP8266, Packt Published Sách, tạp chí
Tiêu đề: Internet of Things với ESP8266
Tác giả: Marco SchwartZ
Nhà XB: Packt Published
Năm: 2016
[2] Gordon Colbach(2017), Wireless Networking: Introduction to Bluetooth and WiFi, Independently Published Sách, tạp chí
Tiêu đề: Wireless Networking: Introduction to Bluetooth and WiFi
Tác giả: Gordon Colbach
Nhà XB: Independently Published
Năm: 2017
[3] Tony Gaddis và Rebecca Halsey(2015), Starting Out With App Inventor for Android, Pearson Sách, tạp chí
Tiêu đề: Starting Out With App Inventor for Android
Tác giả: Tony Gaddis, Rebecca Halsey
Nhà XB: Pearson
Năm: 2015
[4] Đỗ Đức Chí(2016), Điện tử thực hành, NXB Bách Khoa Hà Nội Sách, tạp chí
Tiêu đề: Điện tử thực hành
Tác giả: Đỗ Đức Chí
Nhà XB: NXB Bách Khoa Hà Nội
Năm: 2016
[5] Lê Ngọc Bích(2012), Ứng dụng điện tử trong công nghiệp, NXB Thời đại Sách, tạp chí
Tiêu đề: Ứng dụng điện tử trong công nghiệp
Tác giả: Lê Ngọc Bích
Nhà XB: NXB Thời đại
Năm: 2012
[6] Phạm Quang Huy và Lê Cảnh Trung(2016), Lập trình điều khiển với Arduino, NXB Khoa học và Kỹ thuật Sách, tạp chí
Tiêu đề: Lập trình điều khiển với Arduino
Tác giả: Phạm Quang Huy, Lê Cảnh Trung
Nhà XB: NXB Khoa học và Kỹ thuật
Năm: 2016

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w