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

Создание 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. Итоговый результат должен выглядеть таким образом:

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

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

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

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


+2

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

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

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

+1
Темы

Навигация

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