1. Trang chủ
  2. » Công Nghệ Thông Tin

Ôn tập phát triển ứng dụng IoT

24 94 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 24
Dung lượng 450,78 KB

Nội dung

1 ĐỀ CƯƠNG ÔN TẬP MÔN PHÁT TRIỂN ỨNG DỤNG IOT (ver01 – tiếp tục cập nhật…) Nắm vững khái niệm IoT Làm rõ thuật ngữ thế nào là cơng nghê nhúng? • Hệ thống nhúng (tiếng Anh: embedded system) thuật ngữ để hệ thống có khả tự trị nhúng vào mơi trường hay hệ thống mẹ Đó các hệ thống tích hợp phần cứng phần mềm phục vụ các toán chuyên dụng nhiều lĩnh vực công nghiệp, tự động hoá điều khiển, quan trắc truyền tin Đặc điểm các hệ thống nhúng hoạt động ổn định có tính tự động hoá cao Hê sinh thái IoT • • • Cho phép các tổ chức kết nối, kiểm soát và sử dụng các thiết bị IoT Một tổ chức sử dụng các thiết bị điên thoại thơng minh, máy tính bản,… để gửi các hiêu lênh, truy cập thông tin từ mạng lưới các thiết bị IoT khác Thiết bị nhận lênh thực hiên các công viêc thiết kế, thu thập dữ liêu để truy cập và phân tích nhanh chóng Things IoT có nghĩa là gì? Các đặc điểm IoT Connectivity • Connectivity: Kết nối liên thông - là khả các thiết bị kết nối với • “Things”: Các cảm biến/thiết bị thơng minh • Data: Thu thập từ cảm biến/thiết bị thông minh  dữ liêu lớn Things Data Communication • Communication: Giao tiếp giữa thiết bị với ứng dụng, giữa các thiết bị với Ôn tập PTUD IoT GV: T.T.T.Thúy 2 Khả ứng dụng IoT Lí bùng nổ các ứng dụng IoT? • Có động lực cho thị trường IOT: • Kết nối Internet ngày mở rộng • Thiết bị di động bùng nổ • Thiết bị cảm biến với chi phí ngày thấp • Các nguồn đầu tư lớn đổ vào IOT Phân tích Top 10 ứng dụng IoT: (slide 27 chương ): Lĩnh vực nào ứng dụng IoT nhiều nhất • Phân tích năm 2020 của các lĩnh vực ứng dụng IoT hàng đầu  cho thấy trong số 1.414 dự án IoT doanh nghiệp nhà nước được xác định, cài đặt Sản xuất / Cơng nghiệp phổ biến nhất (22%),  tiếp theo là Giao thông vận tải / Di động (15%) và các dự án IoT  năng lượng (14%) Lĩnh vực ứng dụng IoT #1: Sản xuất / Cơng nghiệp 1a Tổng quan Sản xuất / Cơng nghiệp đã chiếm vị trí hàng đầu từ "Thành phố" ­ khu  vực ứng dụng IoT số một trong phân tích năm 2018. Các gã khổng lồ  cơng nghệ như Microsoft và AWS cũng như các cơng ty tự động hóa  cơng nghiệp lớn như Siemens hay Rockwell Automation là một trong  những động lực của q trình chuyển đổi kỹ thuật số trong ngành sản  xuất / cơng nghiệp "IoT cơng nghiệp thay đổi quy tắc sản xuất, thúc đẩy đổi đám mây biên, thúc đẩy phát triển nhà máy kỹ thuật số nâng cao hiệu suất hoạt động." Satya Nadella, CEO của Microsoft, tháng 11 năm 2019 "Các nhà sản xuất nhà khai thác công nghiệp khám phá cách thực tế để áp dụng IoT hoạt động họ kết họ có giá trị kinh doanh đo lường Kết hợp cơng nghệ IoT chuyên môn ứng dụng công nghiệp cụ thể cho phép cộng tác tốt hơn, giải vấn đề nhanh tăng suất." Blake Moret, Giám đốc điều hành của Rockwell Automation, tháng 5  năm 2019 Rào cản (khó khăn) lớn nhất các tổ chức triển khai IoT là (slide 32 chương 1…) • Chi phí đầu tư lớn dẫn tới doanh nghiệp chưa sẵn sàng áp dụng • Ơn tập PTUD IoT GV: T.T.T.Thúy Trên thực tế để tạo sản phẩm khơng khó chi phí để tiếp thị, thuyết phục cộng đồng sử dụng lại là vấn đề khó khăn Hơn nữa, chi phí để quảng bá sản phẩm khơng lớn chi phí để tạo sản phẩm mẫu lại rất cao Từ lên ý tưởng đến vào sản xuất mất khá nhiều thời gian, mà thống phần cứng, thiết bị phụ trợ Viêt Nam nhiều chưa đủ đề đáp ứng Vấn đề là giá thành thiết bị khiến cho các doanh nghiêp rụt rè áp dụng IoT vào quá trình sản xuất và quản lí So sánh IoT IoE Trong IoE - Internet Of Everything, theo khái niệm trên, "things" hiểu tất các đối tượng vật chất hiện tại, điện thoại thông minh điều chỉnh nhiệt Một thiết bị kết nối qua internet cho phép điều khiển từ xa điều chỉnh nhiệt, để đạt nhiệt độ mong muốn với điện thoại thơng minh có kết nối internet Tuy nhiên, biết, internet khơng có các vật thể vật lý Internet chứa các luồng dữ liệu thông qua các kết nối giữa các máy tính, kết làm cho người trở thành phần Inernet of everythings cho phép tất thứ tương tác với nhau, khác với IoT cho phép các thiết bị tương tác với Ba giai đoạn phát triển kiến trúc IoT (slide 46 C1…) giai đoạn phát triển kiến trúc IoT:  Pha - Kết nối: o Cảm biến -> gửi thông tin thân môi trường -> trạm kết nối -> cloud o Đảm bảo kết nối liên thông an tồn  Pha – Phân tích trực quan hóa: o Phân tích thơng minh đống dữ liệu lớn; o Trực quan hóa kết  Pha – Tự động hóa: o Tối ưu tự động thành phần o Tối ưu tự động toàn hệ thống o Tự động qua Internet theo trình tự hay quy tắc logic So sánh phương pháp thiết kế ứng dụng IoT truyền thống phương pháp thiết kế dùng Arduino (slide 59,60-C1 ) Ôn tập PTUD IoT GV: T.T.T.Thúy 4 TT Phương pháp thiết kế truyền thống Đòi hỏi nhiều kỹ năng: - Hiểu biết chuyên sâu linh kiện, - Vẽ mạch, hàn mạch, - Lập trình (khơng có nhiều hỗ trợ sẵn có module tự thiết kế khơng chuẩn hoá) Phương pháp thiết kế với Arduino (Open Hardware) Không đòi hỏi nhiều kỹ năng: - Tập trung vào tư hệ thống - Lập trình hỗ trợ nhiều thư viện chuẩn hoá các module Thời gian thực hiện ý tưởng khá lâu, dễ nản long Thời gian thực hiện ý tưởng nhanh, tạo hứng thú Chú trọng nhiều đến chi tiết (linh kiện, chất lượng hàn mạch…) ảnh hưởng đến thời gian phát triển quy mơ hệ thống, giảm tính tồn diện Phát triển các kỹ thiết kế mạch, kỹ hàn mạch, sửa lỗi Tập trung vào hệ thống, thực hiện các hệ thống phức tạp, toàn diện Chỉ dành cho giới chuyên nghiệp Dành cho cộng đồng rộng từ giới chuyên nghiệp không chuyên, chí trẻ em (cấp 1) phát triển các ứng dụng theo sở thích Phát triển tư lập trình, hệ thống Các ngơn ngữ lập trình cho IoT (Tham khảo: slide62-66,slide C1; https://codegym.vn/blog/2019/02/05/nhung-ngon-ngu-danh-cho-viec-hoc-laptrinh-iot/)  C/C++:  Nó sử dụng để thiết kế chương trình chuyển mạch điện thoại  Rất hồn hảo cho các hệ thống nhúng  Thiên biên dịch diễn giải  Java: Ôn tập PTUD IoT GV: T.T.T.Thúy 5  Viết lần chạy nhiều hệ thống khác có cài máy ảo java  Java lý tưởng cho IoT vì: • Java ngơn ngữ lập trình hướng đối tượng cho IoT • Ngơn ngữ Java có các khả tích hợp hữu ích cho các ứng dụng IoT • Java có tính di động cao khơng có giới hạn phần cứng  Python:  Là ngơn ngữ lập trình dạng thơng dịch -> Giúp các lập trình viên tiết kiệm thời gian phát triển ứng dụng  Không cần phải thực hiện biên dịch liên kết -> Lý tưởng cho phần phân tích dữ liệu các hệ thống IoT: • Mã nguồn nhỏ gọn dễ đọc cú pháp rõ ràng • Python dễ học, sử dụng rộng rãi hỗ trợ mạnh mẽ • Sự lựa chọn tuyệt vời để quản lý tổ chức các luồng dữ liệu phức tạp Mà trì các sở mã phức tạp  Phù hợp với hệ thống nhúng  Phù hợp với các ứng dụng đòi hỏi truy xuất dữ liệu lớn, đặc biệt web  JavaScript:  Được sử dụng làm ngơn ngữ lập trình tất các trình duyệt web HTML  Là ngơn ngữ lập trình chia sẻ các thư viện với các ngơn ngữ  Giúp các thiết bị tương thích với  Hầu hết các cơng việc tập trung vào các máy chủ trung tâm thu thập thơng tin sau lưu trữ  Giúp các nhà phát triển web dễ dàng di chuyển vào IoT mà không cần học ngôn ngữ  Swift:  Là ngơn ngữ lập trình sử dụng để tạo ứng dụng cho các thiết bị iOS MacOS Apple  Apple xây dựng các thư viện IoT xử lý nhiều cơng việc  Giúp các nhà phát triển dễ dàng tập trung vào công việc  Thư viện tảng tảng HomeKit Ôn tập PTUD IoT GV: T.T.T.Thúy 6  Cung cấp hỗ trợ tích hợp các nguồn cấp dữ liệu từ mạng các thiết bị tương thích Vị trí việc làm kỹ sư IoT (tham khảo slide 67,C1…) Các ứng dụng IoT nông nghiệp thông minh? 10.Ứng dụng IoT nuôi tôm thơng minh? 11 Ứng dụng IoT nhà thơng mình? 12.Ứng dụng IoT thành phố thông minh? 13.Ứng dụng IoT y tế thơng minh? Ơn tập PTUD IoT GV: T.T.T.Thúy 14.Phần cứng arduino Uno R3 - Nắm cấu tạo, các thành phần đặc điểm các chân Arduino Uno R3 Sơ đồ chân Arduino Uno USB (1) - Arduino sử dụng cáp USB để giao tiếp với máy tính Thơng qua cáp USB chúng ta Upload chương trình cho Arduino hoạt động, ngoài USB là nguồn cho Arduino Nguồn ( và ) - Khi không sử dụng USB làm nguồn chúng ta sử dụng nguồn ngoài thơng qua jack cắm 2.1mm ( cực dương giửa ) sử dụng chân Vin và GND để cấp nguồn cho Arduino - Bo mạch hoạt động với nguồn ngoài điên áp từ – 20 volt Chúng ta cấp áp lớn nhiên chân 5V có mực điên áp lớn volt Và nếu sử dụng nguồn lớn 12 volt có hiên tượng nóng và làm hỏng bo mạch Khuyết cáo các bạn nên dùng nguồn ổn định là đến 12 vol - Chân 5V và chân 3.3V (Output voltage) : các chân này dùng để lấy nguồn từ nguồn mà chúng ta cung cấp cho Arduino Lưu ý : không cấp nguồn vào các chân này làm hỏng Arduino - GND: chân mass Chip Atmega328 Chip Atmega328 Có 32K nhớ flash 0.5k sử dụng cho bootloader Ngoài cịn có 2K SRAM, 1K EEPROM Input và Output ( và ) - Arduino Uno có các chân với chức input và output sử dụng các hàm pinMode(), digitalWrite() và digitalRead() để điều khiển các chân này (Analog : A0 đến A5) (digital : chân số đến chân số 13) Cũng 14 chân này chúng ta số chân chức là: - Serial : chân (Rx ), chân ( Tx) Hai chân này dùng để truyền (Tx) và nhận (Rx) dữ liêu nối tiếp TTL Chúng ta sử dụng để giao tiếp với cổng COM số thiết bị các linh kiên có chuẩn giao tiếp nối tiếp - PWM (pulse width modulation): các chân 3, 5, 6, 9, 10, 11 bo mạch có dấu ―~‖ là các chân PWM chúng ta sử dụng để điều khiển tốc độ động - cơ, độ sáng đèn… SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK), các chân này hỗ trợ giao tiếp theo chuẩn SPI I2C: Arduino hỗ trợ giao tiếp theo chuẩn I2C Các chân A4 (SDA) và A5 (SCL) cho phép chúng tao giao tiếp giửa Arduino với các linh kiên có chuẩn giao tiếp là I2C Reset (6): dùng để reset Arduino 15.Ngôn ngữ lập trình Arduino (Tham khảo tài liệu chương 3-CSHT mạng IoT) - Làm số bài tập: + Nhấp nháy Led int led = 13; // Hàm setup chạy lần khởi động chương trình void setup() { // đặt 'led' OUTPUT pinMode(led, OUTPUT); } 10 // Hàm loop chạy mãi sau kết thúc hàm setup() 11 void loop() { 12 digitalWrite(led, HIGH); // bật đèn led sáng 13 delay(1000); // dừng chương trình giây => thây đèn sáng giây 14 digitalWrite(led, LOW); // tắt đèn led 15 delay(1000); // dừng chương trình giây => thấy đèn tối giây 16 } +Led sáng nhấn nút int button = 11; int led = 2; void setup() { pinMode(button, INPUT); //Cài đặt chân D11 trạng thái đọc liệu pinMode(led,OUTPUT); // Cài đặt chân D2 dạng OUTPUT } void loop() { int buttonStatus = digitalRead(button); //Đọc trạng thái button if (buttonStatus == HIGH) { // Nếu mà button bị nhấn digitalWrite(led,HIGH); // Đèn led sáng } else { // ngược lại digitalWrite(led,LOW); } } +Led sáng theo thứ tự byte ledPin[] = {2,3,4,5,6,7,8,9}; // Mảng lưu vị trí chân Digital mà đèn LED sử dụng theo thứ tự từ 1->8 Bạn thêm LED cách thêm chân digital vào mảng byte pinCount; // Khai báo biến pinCount dùng cho việc lưu tổng số chân LED void setup() { pinCount = sizeof(ledPin); //Xem thêm thông tin hàm sizeof http://arduino.vn/reference/sizeof for (int i=0;i sáng mạnh fadeAmount dương Cịn đèn sáng mạnh > sáng yếu fadeAmmount lúc có giá trị â 19 if (brightness == || brightness == 255) 20 fadeAmount = -fadeAmount 21 } 22 //đợi 30 mili giây để thấy thay đổi đè 23 delay(30); 24 } 16.Một số cảm biến cần học cách giao tiếp với Arduino Cảm biến nhiệt độ LM35 Đọc giá trị từ cảm biến LM35 và hiển thị lên LCD16x2 Giới thiêu cảm biến nhiêt độ LM35: Cảm biến nhiêt độ LM35 là loại cảm biến tương tự rất hay ứng dụng các ứng dụng đo nhiêt độ thời gian thực ( sai số lớn) Với kích thước nhỏ và giá thành rẻ là những ưu điểm Vì là cảm biến tương tự (analog sensor) nên ta dễ dàng đọc giá trị hàm analogRead() Nhiêt độ xác định cách đo hiêu điên thế ngõ LM35 → Đơn vị nhiêt độ: °C → Nhiêt độ thay đổi tuyến tính: 10mV/°C Độ xác thực tế: 1/4°C nhiêt độ phịng và 3/4°C ngoài khoảng 2°C tới 150°C công suất tiêu thụ là 60uA Cảm biến LM35 hoạt động cách cho giá trị hiêu điên thế nhất định chân Vout (chân giữa) ứng với mức nhiêt độ Như vậy, cách đưa vào chân bên trái cảm biến LM35 hiêu điên thế 5V, chân phải nối đất, đo hiêu điên thế chân giữa các pin A0 arduino (giống y hêt cách đọc giá trị biến trở), bạn có nhiêt độ (0-100ºC) công thức: float temperature = (5.0*analogRead(A0)*100.0/1024.0); Với LM35, bạn tự tạo cho mạch cảm biến nhiêt độ sử dụng LM35 và tự động ngắt điên nhiêt độ vượt ngưỡng tối đa, đóng điên nhiêt độ thấp ngưỡng tối thiểu thông qua module rơ le int sensorPin = A0; // chân analog kết nối tới cảm biến LM35 void setup() { Serial.begin(9600); //Khởi động Serial mức baudrate 9600 // Bạn không cần phải pinMode cho các chân analog trước dùng } void loop() { float voltage = reading * 5.0 / 1024.0; // 10mV = độ C // Vì vậy nếu biến voltage là biến lưu hiêu điên thế (đơn vị Volt) // ta viêc nhân voltage cho 100 là nhiêt độ! float temp = voltage * 100.0; Serial.println(temp); //đọc giá trị từ cảm biến LM35 delay(1000); //đợi giây cho lần đọc tiếp theo int reading = analogRead(sensorPin); } //tính giá trị hiêu điên thế (đơn vị Volt) từ giá trị cảm biến Cảm biến nhiệt độ độ ẩm DHT11 - Trước tiên bạn cài thư viên : DTH11 và I2C cho arduino IDE o Thư viện Liquidcrystal_I2C Tải o Thư viện DHT.h Tải Giới thiêu giao tiếp I2C: I2C là viết tắt "Inter-Integrated Circuit", chuẩn giao tiếp phát minh Philips‘ semiconductor division (giờ là NXP) nhằm đơn giản hóa viêc trao đổi dữ liêu giữa các ICs Đôi gọi là Two Wire Interface (TWI) sử dụng kết nối để truyền tải dữ liêu, kết nối giao tiếp I2C gồm: SDA (Serial Data Line) và SCL (Serial Clock Line) Có hàng ngàn thiết bị sử dụng giao tiếp I2C, chẳng hạn real-time clocks, digital potentiometers, temperature sensors, digital compasses, memory chips, FM radio circuits, I/O expanders, LCD controllers, amplifiers, Board Arduino chúng ta kiểm soát tất và số lượng tối đa thời điểm lên đến 112 thiết bị I2C Trên board Arduino UNO, SDA là chân analog A4, SCL là chân analog A5 Module DHT11: Thông số kỹ thuật DHT11: DHT11 Là cảm biến nhiêt độ, độ ẩm rất thơng dụng hiên chi phí rẻ và rất dễ lấy dữ liêu thơng qua giao tiếp 1-wire ( giao tiếp digital 1-wire truyền dữ liêu nhất) Cảm biến tích hợp tiền xử lý tín hiêu giúp dữ liêu nhận xác mà khơng cần phải qua bất kỳ tính toán nào  Đặc điểm: o Điên áp hoạt động : 3V - 5V (DC) o Dải độ ẩm hoạt động : 20% - 90% RH, sai số ±5%RH o Dải nhiêt độ hoạt động : 0°C ~ 50°C, sai số ±2°C o Tần số lấy mẫu tối đa: Hz - o Khoảng cách truyền tối đa: 10m Hiển thị giá trị nhiêt độ và độ ẩm lên màn hình LCD Code: #include 0B01110, #include 0B00000, #include 0B00000, LiquidCrystal_I2C lcd(0x3F,16,2); 0B00000, const int DHTPIN = 4; 0B00000, const int DHTTYPE = DHT11; 0B00000 DHT dht(DHTPIN, DHTTYPE); byte degree[8] = { 0B01110, 0B01010, }; void setup() lcd.print("Do am: "); { lcd.init(); lcd.createChar(1, degree); lcd.backlight(); dht.begin(); lcd.print("Nhiet do: "); } lcd.setCursor(0,1); Giải thích mợt sớ hàm Hàm createChar() lcd.createChar(1, degree); void loop() { float h = dht.readHumidity(); float t = dht.readTemperature(); if (isnan(t) || isnan(h)) { } else { lcd.setCursor(10, 0); lcd.print(round(t)); lcd.print(" "); lcd.write(1); lcd.print("C"); lcd.setCursor(10,1); lcd.print(round(h)); lcd.print(" %"); } } Dùng để tạo ký tự tùy chỉnh để sử dụng màn hình LCD Tối đa có ký tự hỗ trợ là 5x8 pixel (được đánh số từ đến 7).Sự xuất hiên ký tự tùy chỉnh định mảng gồm byte, byte cho hàng Để hiển thị ký tự tùy chỉnh màn hình ta dùng hàm write() để viết số Cú pháp lcd.createChar(số, dữ liêu) Thơng số lcd: là biến kiểu dư liêu LiquidCrystal số: tạo ký tự (0 đến 7) dữ liêu: dữ liêu các ký tự là pixel Hàm isnan() if (isnan(t) || isnan(h)) Hàm isnan() là hàm trả true false nếu giá trị cần kiểm tra là biểu thức toán học đúng Ở đoạn code kiểm tra xem thử viêc đọc giá trị nhiêt độ độ ẩm trả có bị thất bại hay không Cú pháp isnan(double x) ; Hàm round() lcd.print(round(t)); Hàm round() là hàm làm tròn giá trị nào từ số thập phân làm tròn tới số nguyên gần nhất Cảm biến khí CO2 Đọc giá trị CB khí gas (MQ2) hiển thị serial monitor Mở rộng: Hiển thị lên màn hình LCD Giới thiêu: Cảm biến khí ga MQ2 là những loại cảm biến sử dụng để nhận biết: LPG, ibutan, Propane, Methane , Alcohol, Hydrogen, Smoke và khí ga Được thiết kế với độ nhạy cao, thời gian đáp ứng nhanh Gía trị đọc từ cảm biến đọc từ chân Analog vi điều khiển Thông số kĩ thuật: Nguồn hoạt động: 5VDC Dịng: 150mA Tính hiêu tương tự (analog) Hoạt động thời gian dài, ổn định Kết nối lập trình Lập trình: void setup() { Serial.begin(9600); //Mở cổng Serial để giap tiếp | tham khảo Serial } void loop() { int value = analogRead(A0); //đọc giá trị điên áp chân A0 - chân cảm biến //(value nằm khoảng 0-1023) Serial.println(value); //xuất giá trị vừa đọc // delay(1000); //đợi giây để bạn kịp tháy serial - (optional) } Cảm biến đo nồng độ bụi Cảm biến siêu âm 17.Kể số Open IoT platform 18 Chức modul ESP 8266 v1 + Các ý: - ESP8266 là dòng chip tích hợp Wi-Fi 2.4Ghz lập trình được, rẻ tiền sản xuất công ty bán dẫn Trung Quốc: Espressif Systems Được phát hành vào tháng năm 2014, đóng gói đưa thị trường dạng Mô dun ESP-01, sản xuất bên thứ 3: AI-Thinker Có khả kết nối Internet qua mạng Wi-Fi cách nhanh chóng và sử dụng rất linh kiên kèm Với giá nói là rất rẻ so với tính và khả ESP8266 làm ESP8266 có cộng đồng các nhà phát triển thế giới rất lớn, cung cấp nhiều Module lập trình mã nguồn mở giúp nhiều người tiếp cận và xây dựng ứng dụng rất nhanh Hiên tất các dòng chip ESP8266 thị trường mang nhãn ESP8266EX, là phiên nâng cấp ESP8266 Lập trình module Wifi ESP8266 V1 Uno R3: Giới thiệu module Wifi ESP8266 V1: ESP8266 là chip tích hợp cao - System on Chip (SoC), có khả xử lý và lưu trữ tốt, cung cấp khả vượt trội để trang bị thêm tính wifi cho các thống khác đóng vai trị giải pháp độc lập Module wifi ESP8266 v1 cung cấp khả kết nối mạng wifi đầy đủ và khép kín, bạn sử dụng để tạo web server đơn giản sử dụng access point Thông số kỹ thuật: Wifi 802.11 b/g/n Wifi 2.4 GHz, hỗ trợ WPA/WPA2 Chuẩn điên áp hoạt động 3.3V Chuẩn giao tiếp nối tiếp UART với tốc độ Baud lên đến 115200 Có chế độ hoạt động: Client, Access Point, Both Client and Access Point Hỗ trợ các chuẩn bảo mật như: OPEN, WEP, WPA_PSK, WPA2_PSK, WPA_WPA2_PSK Hỗ trợ giao tiếp TCP và UDP Tích hợp cơng śt thấp 32-bit CPU sử dụng là vi xử lý ứng dụng SDIO 1.1 / 2.0, SPI, UART URXD(RX) — dùng để nhận tín hiêu giao tiếp UART với vi điều khiển VCC — đầu vào 3.3V GPIO — kéo xuống thấp cho chế độ upload bootloader RST — chân reset cứng module, kéo xuống mass để reset GPIO — thường dùng cổng TX giao tiếp UART để debug lỗi CH_PD — kích hoạt chip, sử dụng cho Flash Boot và updating lại module, nối với mức cao GND — nối với mass UTXD (TX) — dùng để truyền tín hiêu giao tiếp UART với vi điều khiển Kết nối ESP6286 v1 với arduino (slide) Tập lệnh AT (slide) 19.ESP8266 12E (mở rộng) NodeMCU V1.0 phát triển dựa Chip WiFi ESP8266EX bên Module ESP-12E dễ dàng kết nối WiFi với vài thao tác Board tích hợp ICCP2102, giúp dễ dàng giao tiếp với máy tính thơng qua Micro USB để thao tác với board Và có sẳn nút nhấn, led để tiên qua quá trình học, nghiên cứu Với kích thước nhỏ gọn, linh hoạt board dễ dàng liên kết với các thiết bị ngoại vi để tạo thành project, sản phẩm mẫu cách nhanh chóng Thơng số kỹ tḥt: Chip: ESP8266EX WiFi: 2.4 GHz hỗ trợ chuẩn 802.11 b/g/n Điên áp hoạt động: 3.3V Điên áp vào: 5V thông qua cổng USB Số chân I/O: 11 (tất các chân I/O có Interrupt/PWM/I2C/One-wire, trừ chân D0) Số chân Analog Input: (điên áp vào tối đa 3.3V) Bộ nhớ Flash: 4MB Giao tiếp: Cable Micro USB Hỗ trợ bảo mật: WPA/WPA2 Tích hợp giao thức TCP/IP  Lập trình các ngơn ngữ: C/C++, Micropython, NodeMCU – Lua Lập trình ESP 12E Arduino IDE - Lấy giá trị nhiêt độ và độ ẩm từ DHT11 lên thinkspeak - Cài đặt thư viên Thư viện Li nk DHT https://github.com/adafruit/DHT-sensor-library ThingSpeak https://github.com/mathworks/thingspeak-arduino #include // Including library for dht #include #include #include #include // This library is already built in to the Arduino IDE String apiKey = "JK3EQQVFU03VE850"; // Enter your Write API key from ThingSpeak const char* ssid = "Nokia"; // Give your wifi network name const char* password = "12345678"; // Give your wifi network password const char* server = "api.thingspeak.com"; #define DHTPIN //pin D1 where the dht11 is connected DHT dht(DHTPIN, DHT11); WiFiClient client; void setup() { Serial.begin(9600); delay(10); dht.begin(); Serial.println("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); } void loop() { float h = dht.readHumidity(); float t = dht.readTemperature(); if (isnan(h) || isnan(t)) { Serial.println("Failed to read from DHT sensor!"); return; } if (client.connect(server,80)) // "184.106.153.149" or api.thingspeak.com { String postStr = apiKey; postStr +="&field1="; postStr += String(t); postStr +="&field2="; postStr += String(h); postStr += "\r\n\r\n"; client.print("POST /update HTTP/1.1\n"); client.print("Host: api.thingspeak.com\n"); client.print("Connection: close\n"); client.print("X-THINGSPEAKAPIKEY: "+apiKey+"\n"); client.print("Content-Type: application/x-www-form-urlencoded\n"); client.print("Content-Length: "); client.print(postStr.length()); client.print("\n\n"); client.print(postStr); Serial.print("Temperature: "); Serial.print(t); Serial.print(" degrees Celcius, Humidity: "); Serial.print(h); Serial.println("% Send to Thingspeak."); } client.stop(); Serial.println("Waiting "); // thingspeak needs minimum 15 sec delay between updates, i've set it to 30 seconds delay(1000); } ... IoT (tham khảo slide 67,C1…) Các ứng dụng IoT nông nghiệp thông minh? 10.Ứng dụng IoT nuôi tôm thông minh? 11 Ứng dụng IoT nhà thơng mình? 12.Ứng dụng IoT thành phố thông minh? 13.Ứng dụng. .. sản xuất nhà khai thác công nghiệp khám phá cách thực tế để áp dụng IoT hoạt động họ kết họ có giá trị kinh doanh đo lường Kết hợp công nghệ IoT chuyên môn ứng dụng công nghiệp cụ thể cho phép... vào IOT Phân tích Top 10 ứng dụng IoT: (slide 27 chương ): Lĩnh vực nào ứng dụng IoT nhiều nhất • Phân tích năm 2020 của các lĩnh vực? ?ứng? ?dụng? ?IoT? ?hàng đầu  cho thấy trong số 1.414 dự án? ?IoT? ?doanh nghiệp nhà nước được

Ngày đăng: 28/10/2020, 17:28

HÌNH ẢNH LIÊN QUAN

- Hiển thị giá trị nhiêt độ và độ ẩm lên màn hình LCD - Ôn tập phát triển ứng dụng IoT
i ển thị giá trị nhiêt độ và độ ẩm lên màn hình LCD (Trang 15)

TỪ KHÓA LIÊN QUAN

w