Skip to main content

📶 Основы WiFi подключения и школьная инфраструктура

🎯 Цели и планируемые результаты урока

Предметные результаты:

  • Понимание различий между локальными сетями и интернетом
  • Освоение основ IP-адресации и принципов работы WiFi
  • Знание архитектуры школьной IoT инфраструктуры
  • Навыки подключения ESP32 к WiFi сети
  • Понимание основ сетевой безопасности
  • Умение работать с сетевыми настройками микроконтроллера

Метапредметные результаты:

  • Развитие системного мышления при изучении сетевых технологий
  • Формирование навыков работы с сетевой инфраструктурой
  • Умение анализировать и диагностировать сетевые подключения
  • Развитие понимания принципов информационной безопасности

Личностные результаты:

  • Формирование ответственного отношения к сетевой безопасности
  • Понимание важности защиты личных данных в сети
  • Развитие навыков цифровой грамотности

🚀 Мотивационное начало (8 минут)

“Невидимые дороги информации”

Учитель показывает ESP32, который уже подключен к WiFi и отправляет данные на школьный сервер

🌐 Демонстрация “магии” беспроводной связи:

📱 Телефон учителя → 📊 Данные с ESP32 в реальном времени
💡 ESP32 мигает → 💻 На экране появляется: "Светодиод включен"
🌡️ Датчик температуры → 📈 График на веб-странице обновляется

🎭 Интерактивная аналогия “Почтовая система”:

📮 ОБЫЧНАЯ ПОЧТА          ↔    📶 WiFi СЕТЬ
🏠 Ваш дом (адрес)        ↔    📱 Ваше устройство (IP)
📪 Почтовый ящик          ↔    🌐 WiFi роутер
🚚 Почтовая служба        ↔    🌍 Интернет
🏢 Адрес получателя       ↔    💻 Сервер назначения

🎯 Интрига урока: “Сегодня мы подключим наши ESP32 к невидимой информационной магистрали школы и станем частью единой IoT экосистемы!”

🌟 Вызов дня: “К концу урока каждый ваш ESP32 получит свой уникальный адрес в школьной сети и сможет отправлять данные на общий сервер!”

📖 Основная часть урока

Блок 1: “Локальные сети vs интернет - понимаем географию сетей” (15 минут)

🏘️ “Локальная сеть - наш школьный район”

Аналогия с районом города:

🏫 ЛОКАЛЬНАЯ СЕТЬ ШКОЛЫ = ШКОЛЬНЫЙ РАЙОН:

🏠 Здания в районе:
- 💻 Компьютеры в классах
- 📱 Телефоны учителей и учеников
- 🤖 Наши ESP32
- 🖨️ Принтеры
- 📺 Интерактивные доски

🛣️ Внутренние дороги:
- 📶 WiFi сигналы
- 🔌 Ethernet кабели
- 🌐 Школьный роутер (как мэрия района)

🏛️ Адресная система:
- Каждое устройство имеет адрес в районе (IP адрес)
- 192.168.1.1 - адрес "мэрии" (роутера)
- 192.168.1.100 - адрес компьютера в 5А классе
- 192.168.1.234 - адрес нашего ESP32

🌍 “Интернет - весь мир”

Расширение аналогии:

🌍 ИНТЕРНЕТ = ВСЯ ПЛАНЕТА:

🌏 Континенты и страны:
- 🇺🇸 Серверы Google в США
- 🇷🇺 Серверы Yandex в России  
- 🇰🇷 Серверы Samsung в Корее

✈️ Международные дороги:
- 🌊 Подводные кабели между континентами
- 📡 Спутниковые каналы связи
- 🏗️ Интернет-провайдеры

📮 Международная почта:
- Ваше письмо из школы может дойти в любую точку мира
- Данные с ESP32 могут попасть на сервер в другой стране
- Но сначала они должны выйти из "школьного района"

🧭 “IP адресация - система навигации”

Понимание IP адресов через почтовые адреса:

📍 IP АДРЕС = ПОЧТОВЫЙ АДРЕС:

🏠 ЛОКАЛЬНЫЙ АДРЕС (в школе):
192.168.1.234
│    │    │  │
│    │    │  └─ Номер квартиры (конкретное устройство)
│    │    └─── Номер дома (подсеть)
│    └──────── Номер улицы (школьная сеть)
└─────────────── Индекс района (частная сеть)

🌍 ПУБЛИЧНЫЙ АДРЕС (в интернете):
8.8.8.8 (Google DNS)
74.125.224.72 (YouTube)
77.88.55.88 (Yandex)

🎯 ПРАВИЛО:
- 192.168.x.x - адреса ТОЛЬКО внутри локальной сети
- Остальные - адреса в "большом" интернете

🔬 Практическое исследование “Наша сетевая карта”

Каждая команда исследует сеть:

🗺️ КАРТОГРАФИЧЕСКАЯ ЭКСПЕДИЦИЯ:

Задание 1: Найти IP адрес своего телефона/планшета
- Настройки → WiFi → [Наша сеть] → Детали
- IP адрес: _______________
- Маска подсети: __________
- Шлюз: __________________

Задание 2: Проверить связь командой ping
- ping 192.168.1.1 (роутер)
- ping 8.8.8.8 (Google)
- Какой быстрее отвечает? Почему?

Задание 3: Определить количество устройств в сети
- Сканируем диапазон 192.168.1.1-254
- Сколько устройств нашли: ____
- Что это могут быть за устройства?

Блок 2: “Школьная IoT инфраструктура - наша техническая экосистема” (12 минут)

🏗️ “Архитектура системы - от ESP32 до браузера”

Демонстрация полной цепочки:

🔗 ПУТЬ ДАННЫХ ОТ ДАТЧИКА ДО ЭКРАНА:

1️⃣ ESP32 (Датчик):
   🌡️ Считывает температуру: 23.5°C
   💾 Формирует JSON: {"temp": 23.5, "time": "15:12:07"}

2️⃣ WiFi передача:
   📶 ESP32 → Школьный роутер → LAN кабель

3️⃣ Raspberry Pi (Школьный сервер):
   💻 IP: 192.168.1.100
   📊 Получает данные от всех ESP32
   💾 Сохраняет в базу данных
   🌐 Создает веб-страницы

4️⃣ Веб-интерфейс:
   📱 Открываем браузер → 192.168.1.100
   📈 Видим графики температуры в реальном времени
   🎛️ Можем управлять светодиодами удаленно

🖥️ “Знакомство с школьным сервером”

Демонстрация Raspberry Pi:

🍓 НАША RASPBERRY PI - МОЗГ СИСТЕМЫ:

🔧 Технические характеристики:
- Процессор: ARM Cortex-A72 1.5 ГГц
- Память: 4 ГБ RAM
- Операционная система: Raspberry Pi OS (Linux)
- IP адрес в школьной сети: 192.168.1.100

📊 Установленное ПО:
- 🐍 Python для обработки данных
- 🗄️ SQLite база данных для хранения
- 🌐 Flask веб-сервер для интерфейса
- 📈 Chart.js для красивых графиков

🎯 Функции:
- Принимает данные от всех ESP32 в школе
- Хранит историю измерений
- Показывает данные в браузере
- Позволяет управлять устройствами

🌐 “Веб-интерфейс - окно в IoT мир”

Живая демонстрация интерфейса:

💻 ВЕБ-ИНТЕРФЕЙС ШКОЛЬНОЙ IoT СИСТЕМЫ:

📊 Главная страница (192.168.1.100):
┌─────────────────────────────────────┐
│ 🏫 ШКОЛЬНАЯ IoT СИСТЕМА            │
├─────────────────────────────────────┤
│ 🌡️ Температура 5А: 23.5°C          │
│ 💡 Светодиод 5Б: ВКЛ               │
│ 📊 Активных устройств: 12          │
├─────────────────────────────────────┤
│ 📈 [График температуры за день]    │
│ 🎛️ [Кнопки управления]             │
└─────────────────────────────────────┘

🎮 Интерактивные элементы:
- Кнопка "Включить светодиод" → команда на ESP32
- График обновляется каждые 10 секунд
- История данных за последний месяц

🔗 “Протоколы связи - языки общения устройств”

Простое объяснение HTTP и JSON:

📡 HTTP - ПРОТОКОЛ ПЕРЕДАЧИ ДАННЫХ:

🗣️ Как это работает (аналогия с разговором):
ESP32: "Привет, сервер! У меня температура 23.5°C"
Сервер: "Понял, ESP32! Данные сохранены. Спасибо!"

💻 Как это выглядит в коде:
ESP32 отправляет:
POST /api/temperature HTTP/1.1
Content-Type: application/json
{"device": "ESP32_5A", "temperature": 23.5, "timestamp": 1716825127}

Сервер отвечает:
HTTP/1.1 200 OK
{"status": "success", "message": "Data received"}

🎯 JSON - ФОРМАТ ДАННЫХ (как упаковка для письма):
{
  "устройство": "ESP32_класс_5А",
  "температура": 23.5,
  "влажность": 65,
  "время": "2025-05-27 15:12:07"
}

Блок 3: “Подключение ESP32 к WiFi - входим в сеть” (15 минут)

🔑 “Получение учетных данных WiFi”

Безопасная процедура подключения:

🔐 УЧЕТНЫЕ ДАННЫЕ ШКОЛЬНОЙ СЕТИ:

📶 Имя сети (SSID): "School_IoT_2025"
🔑 Пароль: [Выдается учителем каждой команде]
🛡️ Тип шифрования: WPA2-PSK
📊 Канал: Автоматический выбор

⚠️ ПРАВИЛА БЕЗОПАСНОСТИ:
1. Пароль не записываем в открытом виде
2. Не передаем пароль другим классам
3. Сообщаем учителю о любых проблемах
4. Используем сеть только для обучения

💻 “Программа подключения к WiFi”

Пошаговое создание кода:

// 📶 ПРОГРАММА ПОДКЛЮЧЕНИЯ К ШКОЛЬНОЙ WIFI
// Урок 9: WiFi подключение

#include <WiFi.h>              // Библиотека для работы с WiFi

// 🔐 Настройки сети (получены от учителя)
const char* ssid = "School_IoT_2025";
const char* password = "ваш_пароль_здесь";

// 🌐 Настройки школьного сервера
const char* serverIP = "192.168.1.100";
const int serverPort = 80;

void setup() {
  Serial.begin(9600);
  Serial.println("🚀 Запуск системы WiFi подключения");
  
  // 📶 Начинаем подключение к WiFi
  connectToWiFi();
}

void loop() {
  // 🔍 Проверяем состояние подключения каждые 10 секунд
  if (WiFi.status() == WL_CONNECTED) {
    Serial.println("✅ WiFi подключен, все работает!");
    printNetworkInfo();
  } else {
    Serial.println("❌ WiFi отключен, пытаемся переподключиться...");
    connectToWiFi();
  }
  
  delay(10000);  // Проверяем каждые 10 секунд
}

// 🔗 Функция подключения к WiFi
void connectToWiFi() {
  Serial.print("🔍 Поиск сети: ");
  Serial.println(ssid);
  
  WiFi.begin(ssid, password);
  
  // ⏳ Ждем подключения (максимум 20 секунд)
  int attempts = 0;
  while (WiFi.status() != WL_CONNECTED && attempts < 20) {
    delay(1000);
    Serial.print(".");
    attempts++;
  }
  
  if (WiFi.status() == WL_CONNECTED) {
    Serial.println("\n🎉 УСПЕШНО ПОДКЛЮЧЕНЫ К WIFI!");
    printNetworkInfo();
  } else {
    Serial.println("\n❌ Не удалось подключиться к WiFi");
    Serial.println("🔧 Проверьте пароль и попробуйте снова");
  }
}

// 📊 Функция вывода информации о сети
void printNetworkInfo() {
  Serial.println("📡 ИНФОРМАЦИЯ О ПОДКЛЮЧЕНИИ:");
  Serial.print("🌐 IP адрес: ");
  Serial.println(WiFi.localIP());
  Serial.print("📶 Имя сети: ");
  Serial.println(WiFi.SSID());
  Serial.print("📊 Сила сигнала: ");
  Serial.print(WiFi.RSSI());
  Serial.println(" dBm");
  Serial.print("🔧 MAC адрес: ");
  Serial.println(WiFi.macAddress());
  Serial.println("─────────────────────────");
}

🔧 “Диагностика и решение проблем”

Алгоритм поиска неисправностей:

🚨 ДИАГНОСТИКА ПРОБЛЕМ WiFi:

❌ Ошибка: "WiFi.status() != WL_CONNECTED"
🔍 Проверяем:
1. Правильность пароля (регистр важен!)
2. Имя сети написано точно
3. ESP32 находится в зоне покрытия
4. Сеть не перегружена (слишком много подключений)

❌ Ошибка: Получили IP, но нет интернета
🔍 Проверяем:
1. ping 192.168.1.1 (роутер доступен?)
2. ping 8.8.8.8 (интернет работает?)
3. Настройки DNS корректны?

❌ Ошибка: Постоянные переподключения
🔍 Проверяем:
1. Качество WiFi сигнала (RSSI > -70 dBm)
2. Стабильность питания ESP32
3. Перегрев микроконтроллера

🛠️ ИНСТРУМЕНТЫ ДИАГНОСТИКИ:
- Serial Monitor для отладочных сообщений
- WiFi.status() для проверки состояния
- WiFi.RSSI() для измерения сигнала
- ping для проверки связи

📊 “Мониторинг подключения”

Расширенная версия с подробной статистикой:

// 📊 РАСШИРЕННЫЙ МОНИТОРИНГ WiFi
void advancedNetworkMonitoring() {
  Serial.println("📊 ДЕТАЛЬНАЯ СТАТИСТИКА СЕТИ:");
  
  // 🌐 Основная информация
  Serial.printf("IP адрес: %s\n", WiFi.localIP().toString().c_str());
  Serial.printf("Маска подсети: %s\n", WiFi.subnetMask().toString().c_str());
  Serial.printf("Шлюз: %s\n", WiFi.gatewayIP().toString().c_str());
  Serial.printf("DNS: %s\n", WiFi.dnsIP().toString().c_str());
  
  // 📶 Качество сигнала
  int rssi = WiFi.RSSI();
  Serial.printf("Сила сигнала: %d dBm ", rssi);
  if (rssi > -50) Serial.println("(Отлично)");
  else if (rssi > -60) Serial.println("(Хорошо)");
  else if (rssi > -70) Serial.println("(Удовлетворительно)");
  else Serial.println("(Плохо)");
  
  // ⏱️ Время подключения
  Serial.printf("Время в сети: %lu секунд\n", millis()/1000);
  
  // 🔧 Техническая информация
  Serial.printf("Канал WiFi: %d\n", WiFi.channel());
  Serial.printf("MAC адрес: %s\n", WiFi.macAddress().c_str());
  
  Serial.println("═══════════════════════════════════");
}

Блок 4: “Основы сетевой безопасности - защищаем себя и данные” (10 минут)

🛡️ “Основные угрозы в сети”

Понятное объяснение рисков:

⚠️ СЕТЕВЫЕ УГРОЗЫ (адаптировано для школьников):

🕵️ "Подслушивание" данных:
- Кто-то может "перехватить" ваши сообщения в сети
- Как подслушивание разговора в коридоре
- Защита: шифрование (WPA2/WPA3)

🎭 "Самозванцы":
- Поддельные WiFi сети с похожими именами
- "School_WiFi" вместо "School_IoT_2025"
- Защита: подключаемся только к проверенным сетям

🚪 "Незваные гости":
- Попытки подключиться к нашим устройствам
- Как кто-то пытается открыть дверь в ваш дом
- Защита: пароли и правильная настройка

📊 "Кража данных":
- Получение доступа к нашим измерениям
- Хотя наши данные (температура) не секретны
- Но принцип защиты важен для будущего

🔐 “Правила цифровой безопасности”

Практические рекомендации для детей:

✅ ПРАВИЛА БЕЗОПАСНОЙ РАБОТЫ В СЕТИ:

1️⃣ ПАРОЛИ:
- Никогда не говорите пароль посторонним
- Не записывайте пароль на видном месте
- Используйте разные пароли для разных целей

2️⃣ СЕТИ:
- Подключайтесь только к известным сетям
- Спрашивайте учителя при сомнениях
- Не подключайтесь к открытым сетям без разрешения

3️⃣ ДАННЫЕ:
- Не передавайте личную информацию
- Наши IoT данные (температура) безопасны
- Но личные фото, адреса - НЕТ!

4️⃣ УСТРОЙСТВА:
- Не оставляйте устройства без присмотра
- Выключайте WiFi, когда не используете
- Сообщайте о подозрительной активности

5️⃣ ПРОГРАММЫ:
- Используйте только проверенный код
- Не скачивайте программы из непроверенных источников
- Всегда проверяйте код с учителем

🔍 “Мониторинг безопасности ESP32”

Добавляем функции безопасности в код:

// 🛡️ ФУНКЦИИ БЕЗОПАСНОСТИ ДЛЯ ESP32

// 🕐 Проверка времени подключения
void checkConnectionSecurity() {
  static unsigned long lastCheck = 0;
  static int suspiciousActivity = 0;
  
  if (millis() - lastCheck > 60000) {  // Проверяем каждую минуту
    lastCheck = millis();
    
    // 📊 Анализируем силу сигнала
    int rssi = WiFi.RSSI();
    if (rssi < -80) {
      Serial.println("⚠️ Слабый сигнал - возможные проблемы безопасности");
      suspiciousActivity++;
    }
    
    // 🔍 Проверяем стабильность соединения
    if (WiFi.status() != WL_CONNECTED) {
      Serial.println("⚠️ Потеря соединения - проверяем причину");
      suspiciousActivity++;
    }
    
    // 🚨 Если много подозрительной активности
    if (suspiciousActivity > 5) {
      Serial.println("🚨 ВНИМАНИЕ! Обнаружена подозрительная активность!");
      Serial.println("📞 Сообщите учителю!");
      suspiciousActivity = 0;  // Сбрасываем счетчик
    }
  }
}

// 🔐 Функция проверки подлинности сети
bool isNetworkAuthentic() {
  String currentSSID = WiFi.SSID();
  String expectedSSID = "School_IoT_2025";
  
  if (currentSSID != expectedSSID) {
    Serial.println("🚨 ПРЕДУПРЕЖДЕНИЕ: Подключены к неправильной сети!");
    Serial.printf("Ожидалось: %s\n", expectedSSID.c_str());
    Serial.printf("Фактически: %s\n", currentSSID.c_str());
    return false;
  }
  return true;
}

Блок 5: “Получение IP адреса и первый контакт с сервером” (8 минут)

🌐 “Анализ полученного IP адреса”

Понимание адресации:

📍 АНАЛИЗИРУЕМ НАШ IP АДРЕС:

Пример полученного адреса: 192.168.1.157

🔍 Разбираем по частям:
192.168.1.xxx - диапазон нашей школьной сети
         .157 - уникальный номер нашего ESP32

📊 Дополнительная информация:
Маска подсети: 255.255.255.0
├─ Означает: в нашей сети может быть 254 устройства
└─ Адреса: 192.168.1.1 - 192.168.1.254

Шлюз: 192.168.1.1
├─ Это наш школьный роутер
└─ Через него мы попадаем в интернет

DNS: 192.168.1.1
├─ Сервер имен
└─ Превращает имена (google.com) в IP (8.8.8.8)

📡 “Первый контакт с сервером”

Простейшая отправка данных:

// 📤 ОТПРАВКА ПЕРВОГО СООБЩЕНИЯ НА СЕРВЕР
#include <HTTPClient.h>

void sendFirstMessage() {
  if (WiFi.status() == WL_CONNECTED) {
    HTTPClient http;
    
    // 🌐 Адрес нашего школьного сервера
    String serverURL = "http://192.168.1.100/api/hello";
    
    http.begin(serverURL);
    http.addHeader("Content-Type", "application/json");
    
    // 📝 Формируем приветственное сообщение
    String message = "{";
    message += "\"device\":\"ESP32_" + WiFi.macAddress() + "\",";
    message += "\"message\":\"Привет от ESP32!\",";
    message += "\"ip\":\"" + WiFi.localIP().toString() + "\",";
    message += "\"time\":\"" + String(millis()) + "\"";
    message += "}";
    
    Serial.println("📤 Отправляем первое сообщение:");
    Serial.println(message);
    
    // 🚀 Отправляем POST запрос
    int responseCode = http.POST(message);
    
    // 📨 Анализируем ответ
    if (responseCode == 200) {
      String response = http.getString();
      Serial.println("✅ Сервер ответил:");
      Serial.println(response);
    } else {
      Serial.printf("❌ Ошибка: код %d\n", responseCode);
    }
    
    http.end();
  }
}

🎯 “Проверка успешности подключения”

Комплексное тестирование:

// ✅ КОМПЛЕКСНАЯ ПРОВЕРКА ГОТОВНОСТИ
void systemReadinessCheck() {
  Serial.println("🔍 ПРОВЕРКА ГОТОВНОСТИ СИСТЕМЫ:");
  Serial.println("═══════════════════════════════════");
  
  // 1️⃣ Проверка WiFi подключения
  if (WiFi.status() == WL_CONNECTED) {
    Serial.println("✅ WiFi: Подключен");
    Serial.printf("   IP: %s\n", WiFi.localIP().toString().c_str());
  } else {
    Serial.println("❌ WiFi: Не подключен");
    return;
  }
  
  // 2️⃣ Проверка доступности роутера
  if (pingHost(WiFi.gatewayIP())) {
    Serial.println("✅ Роутер: Доступен");
  } else {
    Serial.println("❌ Роутер: Недоступен");
  }
  
  // 3️⃣ Проверка доступности школьного сервера
  if (pingHost(IPAddress(192, 168, 1, 100))) {
    Serial.println("✅ Школьный сервер: Доступен");
  } else {
    Serial.println("❌ Школьный сервер: Недоступен");
  }
  
  // 4️⃣ Проверка интернета
  if (pingHost(IPAddress(8, 8, 8, 8))) {
    Serial.println("✅ Интернет: Доступен");
  } else {
    Serial.println("❌ Интернет: Недоступен");
  }
  
  Serial.println("═══════════════════════════════════");
  Serial.println("🎉 Система готова к работе!");
}

// 🏓 Простая функция ping
bool pingHost(IPAddress host) {
  // Упрощенная проверка доступности
  WiFiClient client;
  return client.connect(host, 80);
}

🎨 Творческое задание: “Мой сетевой паспорт” (8 минут)

📋 “Создание цифрового удостоверения ESP32”

Каждая команда создает уникальный профиль:

🆔 СЕТЕВОЙ ПАСПОРТ ESP32
Команда: _________________ Дата: 2025-05-27

🤖 ЛИЧНЫЕ ДАННЫЕ УСТРОЙСТВА:
Имя устройства: ESP32_[название_команды]
MAC адрес: __:__:__:__:__:__
Серийный номер чипа: _________________

🌐 СЕТЕВЫЕ ДАННЫЕ:
IP адрес: 192.168.1.___
Маска подсети: 255.255.255.0
Шлюз по умолчанию: 192.168.1.1
DNS сервер: 192.168.1.1

📊 КАЧЕСТВО СОЕДИНЕНИЯ:
Сила сигнала: _____ dBm (Отлично/Хорошо/Плохо)
Канал WiFi: _____
Время подключения: _____ секунд
Стабильность: _____ % (без отключений)

🎯 НАЗНАЧЕНИЕ В СЕТИ:
Основная функция: _____________________
Какие данные отправляет: ______________
Как часто: ____________________________

🛡️ НАСТРОЙКИ БЕЗОПАСНОСТИ:
□ Подключен к защищенной сети (WPA2)
□ Использует безопасные протоколы
□ Не передает личную информацию
□ Мониторинг подозрительной активности

🎨 УНИКАЛЬНЫЕ ОСОБЕННОСТИ:
Что особенного в нашем ESP32: _________
________________________________

📊 СТАТИСТИКА РАБОТЫ:
Успешных подключений: _____
Отправленных сообщений: _____
Полученных команд: _____

✅ ПРОВЕРКИ:
□ Ping роутера успешен
□ Ping сервера успешен  
□ Ping интернета успешен
□ Отправка данных работает
□ Получение команд работает

🖼️ QR-КОД УСТРОЙСТВА:
[Место для QR-кода с основной информацией]

🖊️ Подпись ответственного: _______________

🎪 “Выставка сетевых достижений”

Презентация результатов:

  • Каждая команда демонстрирует успешное подключение (2 минуты)
  • Показывает свой IP адрес и статистику
  • Объясняет, как их ESP32 вписывается в школьную сеть
  • Демонстрирует отправку данных на сервер

📝 Рефлексия и закрепление (5 минут)

🌐 “Сетевая викторина”

Быстрые вопросы с практическими ответами:

❓ ПОКАЖИ НА ПАЛЬЦАХ:
1. Сколько устройств может быть в сети 192.168.1.x? (показать 2-5-4)
2. Какая часть IP адреса уникальна для каждого устройства? (показать последнюю)
3. Через что ESP32 попадает в интернет? (показать на роутер)
4. Что защищает наши данные? (показать "замок" руками)

📊 “Сетевая готовность”

📶 УРОВЕНЬ СЕТЕВОЙ ПОДГОТОВКИ:

🏆 Мастер сетей (100%):
"Понимаю архитектуру, настроил ESP32, могу диагностировать проблемы"

🥇 Сетевой техник (75%):  
"Подключил ESP32, понимаю IP адреса, знаю основы безопасности"

🥈 Пользователь WiFi (50%):
"Умею подключаться к WiFi, понимаю разницу между локальной сетью и интернетом"

🥉 Новичок (25%):
"Знаю, что такое WiFi и IP адрес"

Поднимите руку на уровне вашей готовности!

💭 “Одной фразой о сетях”

Каждый ученик завершает фразу:

  • “Сеть для меня теперь это…”
  • “Самое удивительное в сетях…”
  • “Безопасность в сети важна потому что…”

🏠 Домашнее задание

🔍 “Сетевой исследователь дома”

Основное задание:

  1. Исследование домашней сети

    • Найти IP адрес домашнего роутера
    • Подсчитать количество подключенных устройств
    • Определить, какие устройства подключены к WiFi
  2. Эксперименты с кодом

    • Добавить в программу отправку своего уникального сообщения
    • Попробовать изменить частоту отправки данных
    • Добавить отправку дополнительной информации (время работы, количество перезагрузок)
  3. Дневник сетевого инженера

📔 МОЙ ДНЕВНИК СЕТЕВОГО ИНЖЕНЕРА - УРОК 9

🌐 ГЛАВНЫЕ ОТКРЫТИЯ:
- Мой IP адрес в школе: 192.168.1.___
- Разница между локальной сетью и интернетом: ___________
- Что такое роутер: _________________________________

📡 МОЕ ПОДКЛЮЧЕНИЕ:
Сила сигнала: _____ dBm
Время подключения: _____ секунд
Количество попыток: _____
Главная проблема: _____________________

🛡️ БЕЗОПАСНОСТЬ:
Какие правила я запомнил: _________________________
Почему нельзя подключаться к любой сети: ___________
Что защищает WPA2: ________________________________

🏠 ДОМАШНЯЯ СЕТЬ:
IP роутера дома: _____________
Количество устройств: _____
Самое интересное устройство: ______________________

💡 ИДЕИ ДЛЯ ПРОЕКТОВ:
1. ____________________________________________
2. ____________________________________________
3. ____________________________________________

🔬 Исследовательское задание (для увлеченных):

  • Изучить различные типы WiFi шифрования (WEP, WPA, WPA2, WPA3)
  • Найти информацию о других IoT протоколах (Zigbee, LoRa, NB-IoT)
  • Исследовать, как работают mesh-сети

🎨 Творческое задание:

  • Нарисовать карту своей домашней сети с указанием всех устройств
  • Создать комикс “Путешествие пакета данных от ESP32 до сервера”

📊 Критерии оценивания

“Отлично” (5):

  • Понимает различия между локальными сетями и интернетом
  • Успешно подключает ESP32 к WiFi и анализирует полученные настройки
  • Знает основы IP-адресации и может объяснить структуру адресов
  • Понимает архитектуру школьной IoT системы
  • Демонстрирует знания основ сетевой безопасности
  • Может диагностировать и решать простые сетевые проблемы

“Хорошо” (4):

  • Понимает основы работы WiFi сетей
  • Подключает ESP32 к сети по инструкции
  • Знает структуру IP адресов
  • Понимает назначение основных сетевых компонентов
  • Соблюдает основные правила сетевой безопасности

“Удовлетворительно” (3):

  • Имеет общее представление о сетях
  • С помощью подключает ESP32 к WiFi
  • Знает, что такое IP адрес
  • Участвует в обсуждении сетевой безопасности

🛠️ Материалы и оборудование

Сетевая инфраструктура:

  • Школьная WiFi сеть с выделенным SSID для IoT
  • Raspberry Pi в качестве локального сервера
  • Веб-интерфейс для мониторинга устройств
  • Система безопасности с ограниченными правами доступа

Для каждой команды:

  • ESP32 DevKit плата
  • USB кабель для программирования
  • Доступ к WiFi паролю (индивидуально от учителя)

Программное обеспечение:

  • Arduino IDE с установленными библиотеками WiFi и HTTP
  • Веб-браузер для доступа к школьному серверу
  • Утилиты для сетевой диагностики (ping, ipconfig)

Для учителя:

  • Доступ к настройкам школьного роутера
  • Мониторинг подключенных устройств
  • Резервные точки доступа на случай проблем
  • Система логирования активности учащихся

🔍 Методические заметки для учителя

Подготовка к уроку:

  1. Настройка сети: Создать отдельный SSID для IoT с ограниченными правами
  2. Подготовка сервера: Убедиться, что Raspberry Pi работает и доступна
  3. Тестирование: Проверить подключение тестового ESP32
  4. Безопасность: Настроить фильтрацию MAC адресов при необходимости

Возможные сложности:

Проблема: Перегрузка WiFi сети при подключении множества ESP32 Решение: Ограничить количество одновременных подключений, использовать несколько точек доступа

Проблема: Забытые пароли WiFi Решение: Подготовить карточки с паролями для каждой команды, ведение журнала выдачи

Проблема: Сложности с пониманием IP адресации Решение: Использовать больше аналогий с почтовыми адресами, визуальные схемы

Обеспечение безопасности:

  • Изолированная сеть для учебных IoT устройств
  • Мониторинг трафика и активности учащихся
  • Блокировка доступа к внешним ресурсам
  • Регулярная смена паролей WiFi

Дифференциация обучения:

  • Для продвинутых: изучение дополнительных сетевых протоколов, настройка статических IP
  • Для начинающих: фокус на базовом подключении, больше визуальной поддержки
  • Для визуалов: схемы сетевой топологии, диаграммы передачи данных
  • Для кинестетиков: физическое взаимодействие с оборудованием, практические эксперименты