---
# System prepended metadata

title: Tinkercad_Simulation_Guide

---

# Руководство по Симуляции Проекта "Умная Теплица" в Tinkercad

Этот документ описывает полный процесс создания, настройки и использования интерактивной симуляции проекта "Умная Теплица" в среде Autodesk Tinkercad. Руководство включает в себя аргументацию по замене компонентов, подробную схему подключения с цветовой кодировкой проводов и инструкции по работе с симуляцией.

---

## 1. Что такое Tinkercad и как начать?

**Autodesk Tinkercad** — это бесплатная и простая в использовании онлайн-платформа для 3D-моделирования, электроники и программирования. Её раздел **Circuits (Цепи)** позволяет создавать и симулировать электронные схемы прямо в браузере, что идеально подходит для проверки и отладки нашего проекта без реального оборудования.

### Создание нового проекта

1.  **Войдите в свой аккаунт Tinkercad** или создайте новый на сайте [tinkercad.com](https://www.tinkercad.com).
2.  На главном экране нажмите на кнопку **Create**. В предложенном списке выберите **Circuits**.
3.  Откроется пустая рабочая область, где вы сможете собрать схему по этому руководству.

---

## 2. Компоненты и их Замена

Не все компоненты для реального проекта доступны в стандартной библиотеке Tinkercad. Ниже приведена таблица замен и объяснение, почему мы их используем.

| Реальный компонент | Компонент в Tinkercad | Аргументация / Причина замены |
| :--- | :--- | :--- |
| Макетная плата | **Макетная плата (Breadboard)** | Основной компонент для соединения всех частей схемы. |
| Датчик DHT22 | **Датчик TMP36** | В Tinkercad отсутствует или труднодоступен датчик DHT22. TMP36 — это простая и надежная альтернатива для измерения температуры. Он не измеряет влажность, что учтено в коде для симуляции. |
| Модуль драйвера L298N | **Микросхема L293D** | Готовый модуль L298N отсутствует. L293D — это базовый H-мост, который выполняет ту же функцию управления мотором. Его подключение сложнее, но результат идентичен. |
| Готовый модуль реле | **Реле (Relay SPDT) + Транзистор NPN + Диод + Резистор** | Готовый модуль реле отсутствует. Мы собираем его эквивалентную схему управления из базовых компонентов, что также является полезным упражнением. |
| Аккумулятор + DC-DC Преобразователь | **Два источника питания (Power Supply)** | В симуляторе проще и нагляднее использовать два идеальных источника, чтобы сымитировать две линии питания (12В для мотора, 5В для логики), которые в реальности создаются связкой аккумулятора и преобразователя. |
| Кнопки (2 шт.) | **Кнопка (Pushbutton) (2 шт.)** | Стандартные тактовые кнопки для пользовательского ввода. |
| Кнопка питания | **Ползунковый переключатель (Slide Switch)** | Имитирует главный выключатель питания, разрывающий основную цепь 12В. |

---

## 3. Сборка Схемы

Ниже приведена пошаговая инструкция по сборке схемы с рекомендуемой цветовой кодировкой проводов.

**Основные цвета:**
*   **КРАСНЫЙ:** Питание 5В и 12В.
*   **ЧЕРНЫЙ:** Земля (GND).
*   **ЖЕЛТЫЙ/СИНИЙ:** Шина I2C (SCL/SDA).
*   **ЗЕЛЕНЫЙ:** Управляющие сигналы (к драйверу, реле).
*   **ОРАНЖЕВЫЙ:** Сигналы от датчиков.
*   **БЕЛЫЙ:** Сигналы от кнопок.

### Шаг 1: Основные компоненты
Найдите и перетащите на рабочую область из списка компонентов справа:
*   **Arduino Uno R3**
*   **Макетная плата** (называется **Breadboard**)

### Шаг 2: Питание и Главный Выключатель
1.  Добавьте на схему два **Источника Питания** (**Power Supply**) и один **Ползунковый переключатель** (**Slide Switch**).
2.  **Источник №1 (12В):** Настройте на **12В**.
3.  **Источник №2 (5В):** Настройте на **5В**.
4.  **Подключение Главного Выключателя:**
    *   Подключите **красный (+) провод** от **Источника №1 (12В)** к **левому контакту (Terminal 1)** ползункового переключателя.
    *   От **центрального контакта (Common)** переключателя проведите **красный провод** к шине питания `+` на макетной плате. Это будет ваша **шина 12В**.
    *   Подключите **черный (-) провод** от **Источника №1 (12В)** напрямую к шине питания `-` (земля) на макетной плате.
5.  **Подключение питания 5В:**
    *   Подключите **красный (+) провод** от **Источника №2 (5В)** к другой шине питания `+` на макетной плате. Это будет ваша **шина 5В**.
    *   Подключите **черный (-) провод** от **Источника №2 (5В)** к той же земляной шине `-`, что и 12В.
6.  **Питание Arduino:** Подключите **красный** провод от **шины 5В** к пину `5V` Arduino. Подключите **черный** провод от **шины GND** к пину `GND` Arduino.

*Примечание: В реальном устройстве у вас будет один 12В аккумулятор. Источник на 5В и его шина имитируют работу понижающего DC-DC преобразователя, который в симуляции не используется для простоты.*

### Шаг 3: Актуатор (Мотор и Драйвер L293D)
1.  Добавьте на схему:
    *   **Микросхему L293D** (называется **L293D**)
    *   **Мотор постоянного тока** (называется **DC Motor**)
2.  **Питание L293D:**
    *   **КРАСНЫЙ** провод от **шины 12В** к **Пину 8 (VCC2)**.
    *   **КРАСНЫЙ** провод от **шины 5В** к **Пину 16 (VCC1)**.
    *   **ЧЕРНЫЕ** провода от **каждого из 4-х центральных пинов (4, 5, 12, 13)** к **шине GND**.
3.  **Управление L293D:**
    *   **ЗЕЛЕНЫЙ** провод от пина **D9** Arduino к **Пину 1 (Enable)**.
    *   **ЗЕЛЕНЫЙ** провод от пина **D8** Arduino к **Пину 2 (Input 1)**.
    *   **ЗЕЛЕНЫЙ** провод от пина **D7** Arduino к **Пину 7 (Input 2)**.
4.  **Выход на мотор:**
    *   Подключите провода от **Пинов 3 и 6** L293D к двум клеммам DC мотора.

### Шаг 4: Насос (Реле и его обвязка)
1.  Добавьте на схему:
    *   **Реле** (называется **Relay SPDT**)
    *   **Транзистор NPN** (называется **NPN BJT Transistor**)
    *   **Диод** (называется **Diode**)
    *   **Резистор** (называется **Resistor**), установите сопротивление **1 kΩ**.
    *   Еще один **Мотор постоянного тока** (для имитации насоса).
2.  **Цепь управления реле:**
    *   **ЗЕЛЕНЫЙ** провод от пина **D4** Arduino к **резистору 1kΩ**.
    *   От резистора **зеленым** проводом соединитесь с **центральной ножкой (Base)** транзистора.
    *   **Левая ножка (Emitter)** транзистора подключается **черным** проводом к **шине GND**.
    *   **Правая ножка (Collector)** транзистора подключается **зеленым** проводом к **клемме 5** реле.
    *   **КРАСНЫЙ** провод от **шины 5В** к **клемме 8** реле.
    *   **Диод** подключается параллельно клеммам 5 и 8 для защиты:
        *   Сторону **без полоски** (анод) подключите **зеленым** проводом к **клемме 5**.
        *   Сторону **с серой полоской** (катод) подключите **красным** проводом к **клемме 8**.
3.  **Силовая цепь насоса:**
    *   **КРАСНЫЙ** провод от **шины 5В** к **клемме 1** реле.
    *   **КРАСНЫЙ** провод от **клеммы 6** реле к **плюсу (+)** второго DC мотора.
    *   **ЧЕРНЫЙ** провод от **минуса (-)** второго DC мотора к **шине GND**.

### Шаг 5: Датчики, Дисплей и Кнопки
1.  Добавьте на схему:
    *   **LCD Дисплей** (называется **LCD 16 x 2 (I2C)**, выберите Type PCF8574-based и адрес 39(0x27)).
    *   **Датчик температуры** (называется **TMP36**).
    *   **Датчик влажности почвы** (называется **Soil Moisture Sensor**).
    *   **Две Кнопки** (называется **Pushbutton**).
2.  **LCD Дисплей:**
    *   `GND` -> **ЧЕРНЫЙ** провод к **шине GND**.
    *   `VCC` -> **КРАСНЫЙ** провод к **шине 5В**.
    *   `SDA` -> **СИНИЙ** провод к пину **A4** Arduino.
    *   `SCL` -> **ЖЕЛТЫЙ** провод к пину **A5** Arduino.
3.  **Датчик температуры TMP36:**
    *   `Ground` -> **ЧЕРНЫЙ** провод к **шине GND**.
    *   `Power` -> **КРАСНЫЙ** провод к **шине 5В**.
    *   `Vout` -> **ОРАНЖЕВЫЙ** провод к пину **A1** Arduino.
4.  **Датчик влажности почвы:**
    *   `GND` -> **ЧЕРНЫЙ** провод к **шине GND**.
    *   `VCC` -> **КРАСНЫЙ** провод к **шине 5В**.
    *   `AOUT` -> **ОРАНЖЕВЫЙ** провод к пину **A0** Arduino.
5.  **Кнопки:**
    *   **Кнопка 1 (Переключение дисплея):**
        *   Одна ножка -> **БЕЛЫЙ** провод к пину **D12** Arduino.
        *   Противоположная по диагонали ножка -> **ЧЕРНЫЙ** провод к **шине GND**.
    *   **Кнопка 2 (Ручное управление крышей):**
        *   Одна ножка -> **БЕЛЫЙ** провод к пину **D10** Arduino.
        *   Противоположная по диагонали ножка -> **ЧЕРНЫЙ** провод к **шине GND**.

---

## 4. Прошивка и Запуск

1.  Нажмите на кнопку **"Code"** (Код) в правом верхнем углу.
2.  В выпадающем меню выберите режим **"Text"** (Текст).
3.  Откройте на вашем компьютере файл `6_Arduino_Firmware.ino` и скопируйте всё его содержимое.
4.  **ВАЖНО:** Убедитесь, что вверху кода **активна (раскомментирована)** строка `#define TINKERCAD_SIMULATION`. Если перед ней стоят символы `//`, удалите их.
5.  Вставьте скопированный код в редактор Tinkercad, заменив все, что там было.
6.  Нажмите зеленую кнопку **"Start Simulation"**.

---

## 5. Использование Симуляции

*   **Включение и выключение:** Используйте **ползунковый переключатель**, чтобы подать или отключить питание 12В на схему. Это имитирует главный выключатель устройства.
*   **Изменение температуры:** Во время симуляции кликните на датчик TMP36. Появится ползунок для изменения температуры. Наблюдайте за реакцией актуатора (мотора) и показаниями на LCD.
*   **Изменение влажности почвы:** Кликните на датчик влажности почвы. Двигайте ползунок, чтобы имитировать высыхание или увлажнение почвы. Наблюдайте за работой насоса (второго мотора).
*   **Переключение экранов:** Нажимайте на кнопку, подключенную к пину **D12**, чтобы переключать информацию, выводимую на LCD-дисплей.
*   **Ручное управление крышей:**
    *   **Короткое нажатие** на кнопку, подключенную к пину **D10**, переключит систему в ручной режим и заставит крышу открыться или закрыться.
    *   **Длинное нажатие (удерживайте > 1 сек)** на ту же кнопку вернет систему в автоматический режим управления вентиляцией по температуре.
*   **Отладочная информация:** В нижней части панели кода находится **"Serial Monitor"** (Монитор порта), где могут выводиться текстовые сообщения из кода.
