repka-team
repka-team
826 просмотров1 комментариев

Создание DIY-проектов для обучения автоматике и робототехнике на основе Repka Pi

#PWM #UART #I2C #SPI #CAN

Это вступительная статья к циклу материалов с подробными инструкциями по созданию проектов на основе Repka Pi - для создания интересных DIY проектов и для обучения автоматике и робототехнике, цифровой технике и программированию.

Различная вспомогательная автоматика на основе цифровой техники сейчас применяется повсеместно как в домашних DIY проектах, так и в промышленных решениях, активно входит в образовательный процесс, чтобы будущие инженеры осваивали этот важный и востребованный пласт навыков и знаний начиная со школы, а при обучении в колледжах и вузах в качестве своих курсовых и дипломных задач создавали проекты промышленного уровня.

Степень доступности в проектах с системами управления автоматикой стала такой, что высокотехнологичные решения высокой сложности проникают практически во все сферы деятельности. Во многом это стало возможно благодаря стандартизации - по сути промышленные протоколы взаимодействия всех уровней доступны сейчас в широко распространённых микроконтроллерах с прекрасной документацией и многочисленными примерами кода и огромным количеством разнообразных библиотек.

Стандартная пирамида уровней построения таких систем управления выглядит примерно так:

При этом возможности современных контроллеров зачастую такие, что для небольших проектов один микроконтроллер совмещает в себе все функции полевого уровня, уровня контроллера и уровня управления, так же при этом обеспечивая и возможности взаимодействия с другими устройствами (станки, роботы, целые технологические процессы и системы управления производством) посредством так называемых промышленных сетей). Это даёт возможность естественным образом переходить к построению масштабных систем управления:

Picture backgroundИ раз стал доступен в рамках решаемых задач и в образовательных проектах переход на более высокие уровни управления и интеграции, то разумно построение систем управления, основанных не на микроконтроллерах, а на процессорных системах, где одновременно портами ввода/вывода и возможностью программирования логики работы с ними, так же становятся доступными все возможности операционных систем общего назначения - сетевые устройства, сложные графические интерфейсы, Web-сервер, стек программного обеспечения для построения модульных систем с широким функционалом, высокая производительность и много чего ещё. Как правило это всё реализуется на так называемых встраиваемых компьютерах, имеющих небольшие размеры и низкое энергопотребление, большое количество интерфейсов с контактами, на которое выведено большое количество портов ввода/вывода процессоров. Чаще всего сейчас это компьютеры построенные на процессорах с архитектурой RISC (наиболее распространены - ARM или RISC-V).

Основу этих интерфейсов составляют стандартные протоколы обмена данными, аппаратно реализованные в современных системах-на-кристалле (SoC) для обеспечения высокой производительности без значительной загрузки центрального процессора. Для успешной работы с периферией и построения систем автоматики ключевым является понимание трех наиболее распространенных из них: I2C, SPI и UART.

I2C (Inter-Integrated Circuit)

Это двухпроводная шина данных (линии SDA и SCL), спроектированная для подключения множества ведомых устройств (Slaves) к одному ведущему (Master). Ключевой особенностью является система адресации: каждое устройство на шине имеет уникальный адрес, и обмен данными инициируется ведущим устройством путем отправки этого адреса. Данный интерфейс оптимален для подключения целого спектра датчиков и модулей, не требующих высокой пропускной способности: сенсоров температуры и давления, акселерометров, часов реального времени и микросхем памяти.

SPI (Serial Peripheral Interface)

Интерфейс, разработанный для высокоскоростного обмена данными. В отличие от I2C, он использует большее количество линий (обычно четыре: MOSI, MISO, SCK и CS) и обеспечивает полнодуплексный режим — одновременную передачу и приём. Выбор конкретного ведомого устройства для связи осуществляется через его персональную линию Chip Select (CS). Благодаря своей производительности, SPI является стандартом для устройств, работающих с потоками данных: модулей флеш-памяти и SD-карт, цветных графических дисплеев, высокоскоростных аналого-цифровых преобразователей и радиомодулей.

UART (Universal Asynchronous Receiver-Transmitter)

Классический асинхронный последовательный интерфейс, предназначенный для двухточечной связи по двум линиям (RX для приема, TX для передачи). Его особенность — отсутствие отдельной линии тактирования, так как скорость обмена заранее согласовывается между устройствами. UART широко применяется для работы с модулями, управляемыми командами (GPS, GSM/LTE), и, что особенно важно для разработчика, служит для доступа к системной отладочной консоли, обеспечивая низкоуровневую диагностику системы.

Понимание принципов работы этих трех интерфейсов предоставляет доступ к огромному миру периферийных устройств, позволяя в полной мере использовать возможности 40-контактного разъема ввода/вывода.

Ещё чуть больше 10 лет назад такие встраиваемые компьютеры были преимущественно специализированными, относились к промышленным решениям и имели высокую стоимость. С появлением проекта универсального одноплатного компьютера с большим количеством выведенных на плате портов ввода/вывода (I/O) - Raspberry Pi - такие решения стали широкодоступными и массовыми.

А несколько лет назад - в 2022 году, в России появился свой массовый и широко доступный проект одноплатных компьютеров - Repka Pi, заменяющий Raspberry Pi и его многочисленные проекты-последователи со всего Мира, имеющий документация и поддержку на русском языке, собственные готовые библиотеки для работы с портами ввода/вывода и набирающий всё большую популярность в РФ и, что немаловажно, имеющий и доступную стоимость.

Построению систем управления на базе одноплатных компьютеров Repka Pi посвящён цикл статей с подробными инструкциями по созданию таких базовых проектов:

  1. Метеостанция - ссылка на описание,
  2. Игра “Охота на светлячка“ - ссылка на описание,
  3. Автоматизированная система полива - ссылка на описание,
  4. Сейф с замком с RFID-ключом - ссылка на описание,
  5. Парктроник или ультразвуковой парковочный ассистент - ссылка на описание,
  6. Охранная сигнализация - ссылка на описание,
  7. Игра “Змейка“ - ссылка на описание,
  8. Детектор уровня звука или шума - ссылка на описание,
  9. Умный будильник - ссылка на описание,
  10. Нейросетевой детектор объектов с системой управления исполнительными механизмами - ссылка на описание.

Всё перечисленные проекты являются базовыми примерами, которые можно самостоятельно творчески расширять, объединять - одним словом можно придумать и реализовать бесконечное количество своих замыслов для создания автоматики решения и типовых и уникальных задач.

Все материалы данного цикла разработаны на основе материалов учебного-методичесткого комплекса УМК “Репка“, предлагаемого в качестве готового коробочного продукта для образовательных организаций разработчиками проекта Repka Pi и РобоИнтеллект.

В УМК “Репка” всё идёт готовое и собранное под ключ, в т.ч. со специальной прошивкой операционной системы, с установленными библиотеками и средствами разработки, с адаптированными переходниками, блоками питания, корпусами и с методическими материалами и рекомендованными программами обучения и т.д. и т.п. - т.е. фактически в виде готового набора оборудования для оснащения под ключ учебных классов и лабораторий в школах и ВУЗах.

Конечно этот вариант более высокую стоимость, т.е. не совсем подходит для самостоятельного изучения автоматики, робототехники, программирования, основ цифровой техники, принципов управления, основ электротехники и даже работы с операционными системами семейства Linux. А что делать, если хочется в домашних условиях самостоятельно делать то же самое? Данный цикл статей как раз в более кратком виде рассказывает, как можно самостоятельно повторить эти базовые проекты и начать свой Путь в мир автоматики, программирования и Робототехники даже дома или в небольшом кружке.

Все используемые в проектах устройства условно делятся на такие группы:

  • исполнительные механизмы,

  • устройства ввода и вывода информации,

  • датчики.

Используемые комплектующие

Компонент

Ссылка на даташит

Ссылка на страницу покупки

Одноплатный компьютер Repka Pi 4 в корпусе с блоком питания и с EMMC модулем на 32 Гб

ссылка

ссылка

Монтажная/макетная плата

ссылка

Шлейф 40 pin

ссылка

Переходник с шлейфа на макетную плату

ссылка

Соединительные провода

м-п, п-п

Блок питания и провода для макетной платы

Исполнительные механизмы:

IRF520

ссылка

ссылка

KY-006

ссылка

ссылка

L9110S

ссылка

ссылка

MG90S

ссылка

ссылка

SRD-05VDC-SL-C

ссылка

ссылка

ULN2003

ссылка

ссылка

Brushes DC motor

ссылка

Pump

ссылка

ссылка

Устройства ввода и вывода информации:

FS1000A MX-RM-5V

ссылка

ссылка

FYS-3611

ссылка

ссылка

IR receiver and LED

ссылка

ссылка

KY-023

ссылка

ссылка

OLED SSD1306

ссылка

ссылка

RC-522

ссылка

ссылка

RGB LED

ссылка

ссылка

TM1637

ссылка

ссылка

TTP223

ссылка

ссылка

VS1838b

ссылка

ссылка

WS2812

ссылка

ссылка

Display 1602 I2C

ссылка

ссылка

DS3231

ссылка

ссылка

HC-05

ссылка

ссылка

Keyboard 4x4

ссылка

ссылка

Max7219 Luma

ссылка

ссылка

Max9814

ссылка

ссылка

One button

ссылка

ссылка

Rotary encoder

ссылка

ссылка

Three buttons

ссылка

Variable resistor

ссылка

ссылка

Variable resistor module

ссылка

ссылка

Датчики:

AM312

ссылка

ссылка

BME280

ссылка

ссылка

DS18b20_example

ссылка

ссылка

FC-28_example

ссылка

ссылка

GY-521_example

ссылка

ссылка

HC-SR04_example

ссылка

ссылка

HTU21D_example

ссылка

ссылка

INA219_example

ссылка

NTC_example

ссылка

ссылка

photoresistor_example

ссылка

TCRT5000_example

ссылка

ссылка

На самом деле, если бюджет ограничен, то можно сэкономить и приобрести одноплатный компьютер Repka Pi 4 не в корпусе, а отдельно плату, не ставить на него EMMC модуль и самостоятельно приобрести и прошить SD карту и даже не использовать шлейф и переходник с шлейфа на макетную плуту - это не так удобно, надёжно и будет работать медленнее, но для начала в домашних условиях вполне подойдёт. А мы в наших статьях покажем как это делается в комплектации с оборудованием из комплекта УМК “Репка“ и так же кратко покажем, как это делать с более простым и экономичным вариантом самостоятельно дома.

Подготовка и подключение монтажной платы #

1. Подключим дополнительное питание 5V к макетной плате, используя блок питания и клеммы, входящие в комплект УМК Repka.

1.1. Если у вас нет набора УМК Repka, питание можно организовать с помощью подручных средств — любого провода и телефонного блока питания на 5V. Для этого разрежем провод и аккуратно зачистим его жилы:

1.2. После чего намотаем провода на штыри и закрутим их:

2. Выведем дополнительное питание на макетную плату:

3. Подключим переходник с шлейфа на макетную плату:


4. Соединим шлейф с переходником для подключения к макетной плате и Repka Pi 4:


5. Итоговый результат должен выглядеть таким образом:

Цикл статей будет расширятся, будут добавляться и усложняться проекты, сами инструкции так же будут расширяться и дополняться на основе Ваших вопросов им предложений.

Давайте вместе сделаем этот Мир лучше изучая автоматику и робототехнику, цифровую технику, программирование и делая интересные проекты!

Всё ссылки на статьи с подробными инструкциями по примерам проектов выше.

Успешных проектов!


Комментарии (1)

Для участия в обсуждении Вы должны быть авторизованным пользователем
miroev
miroev  

Молодцы! Так держать!

Еще посты по теме

Новые посты



Темы

Навигация

ВойтиРегистрация