first commit
This commit is contained in:
35
memory_bank/00_profile.md
Normal file
35
memory_bank/00_profile.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# Profile
|
||||
|
||||
## Background
|
||||
|
||||
- Middle ML Engineer.
|
||||
- Уверенный опыт с Python, Linux, Docker, Kubernetes, backend и software engineering.
|
||||
- Новичок в практической электронике и embedded-разработке.
|
||||
- Физика известна на интуитивном уровне: электрон, поле, ток, напряжение, транзистор понятны в общих чертах, но практического опыта пока мало.
|
||||
|
||||
## Learning Goals
|
||||
|
||||
- Учиться через эксперименты, измерения, debugging и маленькие проекты.
|
||||
- Постепенно перейти от базовых DC-схем к ESP32, интерфейсам, firmware patterns и IoT-проектам.
|
||||
- Вести репозиторий как долговременный embedded lab notebook.
|
||||
- Использовать AI-агента как tutor, reviewer и maintainer заметок.
|
||||
|
||||
## Learning Style
|
||||
|
||||
- Практично и инженерно.
|
||||
- Меньше лекций, больше схем, измерений, симптомов и выводов.
|
||||
- Связь с software engineering приветствуется: contracts, runtime behavior, debugging, observability, state machines.
|
||||
|
||||
## Current Equipment
|
||||
|
||||
1. Регулируемый лабораторный источник питания постоянного тока 30V 10A.
|
||||
2. Термостойкий коврик для пайки и ремонта электроники.
|
||||
3. Стартовый набор электронных компонентов: резисторы, керамические и электролитические конденсаторы, светодиоды, транзисторы.
|
||||
4. Многофункциональные бокорезы 5-в-1.
|
||||
5. 120 Dupont jumper wires: female-female, male-male, male-female.
|
||||
6. Breadboard MB-102, 830 точек.
|
||||
7. Припой ПОС-61 с канифолью, 0.8 мм, 100 г.
|
||||
8. 4 модуля ESP32 Wi-Fi + Bluetooth.
|
||||
9. Электрический паяльник с регулировкой, 80 Вт.
|
||||
10. Мультиметр.
|
||||
11. LCD 1602 green display с I2C-модулем.
|
||||
27
memory_bank/01_current_state.md
Normal file
27
memory_bank/01_current_state.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Current State
|
||||
|
||||
## Current Phase
|
||||
|
||||
Stage 0 — Safety, tools, measurements.
|
||||
|
||||
## Current Lab
|
||||
|
||||
`001_led_resistor_psu`
|
||||
|
||||
## Known Working Setup
|
||||
|
||||
Пока ничего не проверено.
|
||||
|
||||
## Next Actions
|
||||
|
||||
1. Проверить мультиметр.
|
||||
2. Изучить current limit на БП.
|
||||
3. Собрать LED + resistor.
|
||||
4. Измерить напряжения.
|
||||
5. Вычислить ток через резистор.
|
||||
|
||||
## Current Risks
|
||||
|
||||
- Неизвестны номиналы резисторов в наборе.
|
||||
- Не проверено, как разделены power rails на breadboard.
|
||||
- Не проверены фактические настройки и поведение лабораторного БП.
|
||||
43
memory_bank/02_concepts.md
Normal file
43
memory_bank/02_concepts.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# Concepts
|
||||
|
||||
Краткие практические определения. Расширять только тем, что помогает собирать, измерять и debug-ить.
|
||||
|
||||
## Voltage
|
||||
|
||||
Напряжение измеряется между двумя точками. В embedded это как разница уровней, относительно которой вход понимает `0` или `1`.
|
||||
|
||||
## Current
|
||||
|
||||
Ток течет через компонент. Если путь слишком "легкий" и нет ограничения, компонент может перегреться или сгореть.
|
||||
|
||||
## Resistance
|
||||
|
||||
Сопротивление ограничивает ток. Первый практический пример: резистор последовательно со светодиодом.
|
||||
|
||||
## Ohm's Law
|
||||
|
||||
`V = I * R`. Используется для оценки тока, если известно падение напряжения на резисторе.
|
||||
|
||||
## Power
|
||||
|
||||
`P = V * I`. Если мощность слишком большая для компонента, он греется.
|
||||
|
||||
## Ground
|
||||
|
||||
GND — опорная точка схемы. Напряжения обычно измеряются относительно нее, но мультиметр всегда измеряет между двумя точками.
|
||||
|
||||
## Common Ground
|
||||
|
||||
Если ESP32 управляет внешней схемой, GND ESP32 и GND внешней схемы должны быть соединены. Без этого сигнал не имеет общего reference.
|
||||
|
||||
## Current Limiting
|
||||
|
||||
Ограничение тока на БП — safety guard. Оно не чинит схему, но может ограничить ущерб при ошибке.
|
||||
|
||||
## GPIO
|
||||
|
||||
GPIO — управляемый пин микроконтроллера. Для ESP32 считать все GPIO строго 3.3V logic, не 5V tolerant.
|
||||
|
||||
## Breadboard Rails
|
||||
|
||||
Длинные линии `+` и `-` на breadboard удобны для питания, но часто разделены посередине. Их нужно проверять мультиметром.
|
||||
87
memory_bank/03_components.md
Normal file
87
memory_bank/03_components.md
Normal file
@@ -0,0 +1,87 @@
|
||||
# Components
|
||||
|
||||
Каталог компонентов. Обновлять по мере реального использования и проверки.
|
||||
|
||||
## Bench Power Supply
|
||||
|
||||
- **Назначение:** регулируемое DC-питание для схем.
|
||||
- **Что проверить:** выставление напряжения без нагрузки, current limit, поведение при коротком замыкании через безопасный тест.
|
||||
- **Типичные ошибки:** слишком высокий current limit, подача питания до проверки схемы, попытка "лечить" short circuit повышением тока.
|
||||
- **Safety notes:** начинать с малого current limit; выключать выход перед изменением схемы.
|
||||
|
||||
## Multimeter
|
||||
|
||||
- **Назначение:** измерение напряжения, сопротивления, continuity, иногда тока.
|
||||
- **Что проверить:** режимы, щупы, батарею, корректный вход для измерения тока.
|
||||
- **Типичные ошибки:** измерять ток параллельно как напряжение, забыть вернуть щуп из current jack.
|
||||
- **Safety notes:** перед измерением тока понимать путь тока через мультиметр.
|
||||
|
||||
## Breadboard MB-102
|
||||
|
||||
- **Назначение:** быстрая сборка схем без пайки.
|
||||
- **Что проверить:** соединения рядов, split rails, качество контактов.
|
||||
- **Типичные ошибки:** вставить компоненты в не соединенные точки, ожидать continuous rail там, где он разделен.
|
||||
- **Safety notes:** проверять power rails перед включением.
|
||||
|
||||
## Resistors
|
||||
|
||||
- **Назначение:** ограничение тока, делители напряжения, pull-up/pull-down.
|
||||
- **Что проверить:** номинал по маркировке или мультиметром.
|
||||
- **Типичные ошибки:** неверный номинал, отсутствие резистора с LED.
|
||||
- **Safety notes:** учитывать мощность резистора при заметном токе.
|
||||
|
||||
## LEDs
|
||||
|
||||
- **Назначение:** индикация, первый визуальный тест схемы.
|
||||
- **Что проверить:** полярность, forward voltage, наличие последовательного резистора.
|
||||
- **Типичные ошибки:** подключить без резистора, перепутать анод и катод.
|
||||
- **Safety notes:** ток должен быть ограничен резистором или надежным источником тока.
|
||||
|
||||
## Capacitors
|
||||
|
||||
- **Назначение:** фильтрация, сглаживание, временные эффекты.
|
||||
- **Что проверить:** емкость, полярность для электролитических, voltage rating.
|
||||
- **Типичные ошибки:** перепутать полярность электролита, поставить слишком низкий voltage rating.
|
||||
- **Safety notes:** электролитический конденсатор может выйти из строя при неправильной полярности.
|
||||
|
||||
## Transistors
|
||||
|
||||
- **Назначение:** управляемый ключ или усилительный элемент.
|
||||
- **Что проверить:** тип, pinout, базовый/затворный резистор, допустимый ток.
|
||||
- **Типичные ошибки:** перепутать выводы, ожидать "идеальный switch", забыть резистор управления.
|
||||
- **Safety notes:** не управлять нагрузкой от GPIO напрямую, если ток выше возможностей ESP32.
|
||||
|
||||
## ESP32 Dev Board
|
||||
|
||||
- **Назначение:** микроконтроллер с Wi-Fi и Bluetooth.
|
||||
- **Что проверить:** точную модель, pinout, безопасные GPIO, способ питания, USB flashing.
|
||||
- **Типичные ошибки:** 5V на GPIO, использование boot strap pins без понимания, multiple power sources.
|
||||
- **Safety notes:** GPIO strictly 3.3V; common ground обязателен с внешними схемами.
|
||||
|
||||
## LCD 1602 I2C
|
||||
|
||||
- **Назначение:** текстовый дисплей через I2C.
|
||||
- **Что проверить:** I2C address, питание модуля, уровни SDA/SCL, contrast potentiometer.
|
||||
- **Типичные ошибки:** неверный адрес, перепутанные SDA/SCL, отсутствие common ground.
|
||||
- **Safety notes:** проверить, не подтянуты ли I2C линии к 5V при подключении к ESP32.
|
||||
|
||||
## Dupont Wires
|
||||
|
||||
- **Назначение:** быстрые соединения между breadboard, ESP32 и модулями.
|
||||
- **Что проверить:** тип male/female, целостность, плотность контакта.
|
||||
- **Типичные ошибки:** плохой контакт, неверный провод из-за цвета, loose connector.
|
||||
- **Safety notes:** не тянуть за провод при включенной схеме.
|
||||
|
||||
## Soldering Iron
|
||||
|
||||
- **Назначение:** пайка проводов, модулей и компонентов.
|
||||
- **Что проверить:** температура, состояние жала, подставка.
|
||||
- **Типичные ошибки:** перегрев площадок, холодная пайка, лишний припой.
|
||||
- **Safety notes:** вентиляция, горячее жало, порядок на рабочем месте.
|
||||
|
||||
## Solder
|
||||
|
||||
- **Назначение:** создание электрического и механического соединения.
|
||||
- **Что проверить:** диаметр, флюс/канифоль, качество смачивания.
|
||||
- **Типичные ошибки:** мостики между контактами, недостаточный прогрев соединения.
|
||||
- **Safety notes:** пары флюса не вдыхать; после пайки проверять continuity/shorts.
|
||||
57
memory_bank/04_mistakes_and_debugging.md
Normal file
57
memory_bank/04_mistakes_and_debugging.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# Mistakes And Debugging
|
||||
|
||||
Файл для повторяющихся ошибок, симптомов и способов проверки.
|
||||
|
||||
## LED Без Резистора
|
||||
|
||||
- **Симптом:** LED может резко вспыхнуть, перегреться или выйти из строя.
|
||||
- **Проверка:** убедиться, что резистор стоит последовательно с LED.
|
||||
- **Вывод:** LED-схема всегда требует ограничения тока.
|
||||
|
||||
## Слишком Высокий Current Limit На БП
|
||||
|
||||
- **Симптом:** при ошибке схема получает большой ток до того, как проблема замечена.
|
||||
- **Проверка:** выставить current limit до подключения схемы.
|
||||
- **Вывод:** current limit — safety guard, а не настройка "побольше".
|
||||
|
||||
## Перепутанная Полярность LED
|
||||
|
||||
- **Симптом:** LED не светится при ожидаемом токе.
|
||||
- **Проверка:** проверить анод/катод и падение напряжения на LED.
|
||||
- **Вывод:** отсутствие света не всегда значит отсутствие питания.
|
||||
|
||||
## Split Power Rails На Breadboard
|
||||
|
||||
- **Симптом:** одна часть схемы не получает питание.
|
||||
- **Проверка:** continuity test вдоль rails.
|
||||
- **Вывод:** breadboard rails нельзя считать непрерывными без проверки.
|
||||
|
||||
## Отсутствие Common Ground
|
||||
|
||||
- **Симптом:** сигналы между модулями работают нестабильно или не работают.
|
||||
- **Проверка:** проверить соединение GND между устройствами.
|
||||
- **Вывод:** сигналу нужен общий reference.
|
||||
|
||||
## 5V На GPIO ESP32
|
||||
|
||||
- **Симптом:** риск повреждения ESP32.
|
||||
- **Проверка:** измерить напряжение на линии перед подключением к GPIO.
|
||||
- **Вывод:** ESP32 GPIO считать строго 3.3V.
|
||||
|
||||
## Плохой Контакт На Breadboard
|
||||
|
||||
- **Симптом:** схема работает при шевелении проводов или случайно пропадает.
|
||||
- **Проверка:** continuity test, переставить провод, заменить jumper.
|
||||
- **Вывод:** механика соединения — часть debugging.
|
||||
|
||||
## Неправильное Измерение Тока Мультиметром
|
||||
|
||||
- **Симптом:** короткое замыкание через мультиметр или сгоревший предохранитель.
|
||||
- **Проверка:** ток измеряется последовательно, щуп в правильном jack.
|
||||
- **Вывод:** режим измерения тока меняет схему.
|
||||
|
||||
## Powering ESP32 From Multiple Sources Without Understanding
|
||||
|
||||
- **Симптом:** непредсказуемое питание, риск повреждения USB-порта или платы.
|
||||
- **Проверка:** выяснить power path dev board перед подключением внешнего питания.
|
||||
- **Вывод:** сначала USB-only, внешнее питание позже и осознанно.
|
||||
36
memory_bank/05_project_ideas.md
Normal file
36
memory_bank/05_project_ideas.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# Project Ideas
|
||||
|
||||
## ESP32 LCD Status Display
|
||||
|
||||
- **Идея:** показывать состояние устройства, Wi-Fi и тестовые сообщения на LCD 1602.
|
||||
- **Prerequisite labs:** `003_esp32_blink`, `006_i2c_lcd_1602`.
|
||||
|
||||
## Wi-Fi Heartbeat Monitor
|
||||
|
||||
- **Идея:** ESP32 периодически показывает heartbeat через LED или LCD.
|
||||
- **Prerequisite labs:** `003_esp32_blink`, `005_pwm_led_dimming`, `008_wifi_status_display`.
|
||||
|
||||
## Simple MQTT Dashboard
|
||||
|
||||
- **Идея:** отправлять telemetry или статус в MQTT broker и отображать команды.
|
||||
- **Prerequisite labs:** `003_esp32_blink`, `008_wifi_status_display`.
|
||||
|
||||
## Button-Controlled Menu On LCD
|
||||
|
||||
- **Идея:** меню на LCD, управляемое кнопками.
|
||||
- **Prerequisite labs:** `004_button_pullup_pulldown`, `006_i2c_lcd_1602`.
|
||||
|
||||
## PWM LED Controller
|
||||
|
||||
- **Идея:** управлять яркостью LED через PWM и кнопки.
|
||||
- **Prerequisite labs:** `004_button_pullup_pulldown`, `005_pwm_led_dimming`.
|
||||
|
||||
## Transistor-Switched Load
|
||||
|
||||
- **Идея:** ESP32 управляет нагрузкой через транзисторный ключ.
|
||||
- **Prerequisite labs:** `001_led_resistor_psu`, `003_esp32_blink`, `007_transistor_switch`.
|
||||
|
||||
## Sensor Node В Будущем
|
||||
|
||||
- **Идея:** автономный узел с сенсором, Wi-Fi и telemetry.
|
||||
- **Prerequisite labs:** `003_esp32_blink`, `006_i2c_lcd_1602`, `008_wifi_status_display`, будущие ADC/sensor labs.
|
||||
10
memory_bank/06_open_questions.md
Normal file
10
memory_bank/06_open_questions.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# Open Questions
|
||||
|
||||
- Какая именно ESP32 dev board используется?
|
||||
- Какие номиналы резисторов есть в наборе?
|
||||
- Есть ли кнопки и потенциометры?
|
||||
- Какой I2C address у LCD 1602?
|
||||
- Какие GPIO безопаснее использовать на первом этапе?
|
||||
- Какой workflow выбрать: Arduino Core, PlatformIO или ESP-IDF?
|
||||
- Разделены ли power rails на текущей breadboard MB-102?
|
||||
- Есть ли предохранитель в мультиметре на current input?
|
||||
10
memory_bank/07_decisions.md
Normal file
10
memory_bank/07_decisions.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# Decisions
|
||||
|
||||
- Учимся через лабораторные, а не через длинный теоретический конспект.
|
||||
- Начинаем с safety и измерений.
|
||||
- Не используем mains/220V.
|
||||
- ESP32 GPIO считаем strictly 3.3V.
|
||||
- Сначала Arduino Core или PlatformIO, ESP-IDF позже.
|
||||
- Каждая лабораторная должна иметь expected и actual measurements.
|
||||
- Не считаем схему правильной до проверки.
|
||||
- Измерения и симптомы важнее предположений.
|
||||
33
memory_bank/08_learning_log.md
Normal file
33
memory_bank/08_learning_log.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Learning Log
|
||||
|
||||
Журнал учебных сессий. Новые записи добавлять сверху или снизу, но сохранять единый формат.
|
||||
|
||||
## Entry Template
|
||||
|
||||
### Date
|
||||
|
||||
TBD
|
||||
|
||||
### Session Goal
|
||||
|
||||
TBD
|
||||
|
||||
### What Was Built
|
||||
|
||||
TBD
|
||||
|
||||
### What Was Measured
|
||||
|
||||
TBD
|
||||
|
||||
### What Failed
|
||||
|
||||
TBD
|
||||
|
||||
### What Was Learned
|
||||
|
||||
TBD
|
||||
|
||||
### Next Action
|
||||
|
||||
TBD
|
||||
Reference in New Issue
Block a user