Эта книга поможет вам быстро освоить основы робототехники и приступить к конструированию собственных роботов, систем автоматизации и даже элементов умного дома.
Если вы не программист, то наша книга позволит вам реализовать свои идеи в области робототехники с помощью визуальных средств разработки, не требующих программирования. Вам не потребуется паяльник – современные компоненты можно устанавливать на макетных платах, не вдыхая запах канифоли.
Изучайте микроконтроллеры и робототехнику по нашей книге, и вы сможете быстро освоить современные профессии.
Вы научитесь программировать micro:bit версий 1.5 и 2, научитесь работать с кнопками, светодиодами, светодиодным и OLED-экраном, измерять температуру, ускорение, напряженность магнитного поля.
Используя интерфейс GPIO, предусмотренный на плате micro:bit, вы подключите такие устройства, как моторы, сервоприводы, обычные и сенсорные кнопки, датчики движения, расстояния и многие другие.
Данные, полученные от контроллеров, вы сможете передавать на другие контроллеры с помощью радиоканала Bluetooth, а также контроллеров LoRa, способных обеспечить радиосвязь на расстояния, исчисляемые километрами.
В отдельной главе мы расскажем о том, как организовать электропитание робота или других конструкций с микроконтроллерами.
В главе1 «Запускаем микроконтроллер micro:bit» вы научитесь создавать простые программы для micro:bit версий 1.5 и 2 с помощью визуального редактора блоков Microsoft MakeCode for micro:bit.
Эти программы вы будете загружать в микроконтроллер через браузер, через сайт https://makecode.microbit.org/, через автономную программу Microsoft MakeCode, установленную на компьютере или ноутбуке, а также через приложение micro:bit, установленное в смартфоне или планшете.
Глава 2 «Управляем светодиодами» расскажем вам о том, как можно легко выводить на экран micro:bit, состоящий из 25 светодиодов, различную графическую, числовую и текстовую информацию.
Также с помощью генератора случайных чисел вы создадите на этом экране простую анимацию – звездное небо и блуждающую точку.
В главе 3 «Работаем с кнопками» мы будем использовать кнопки A и B, расположенные на плате micro:bit, а также сенсорную кнопку в виде логотипа, доступную в micro:bit версии 2. Вы научитесь обрабатывать события, возникающие при нажатии этих кнопок, а также проверять их состояние во время работы программы. Кроме этого, вы сможете использовать контакты P0, P1 и P2 в качестве сенсорных кнопок.
Эти знания помогут вам управлять с помощью обычных и сенсорных кнопок работой программы звездного неба, созданной во второй главе, и другими различными программами.
В главе 4 «Измеряем температуру» вы научитесь пользоваться измерителем температуры, встроенным в процессор платы micro:bit. Это позволит вам создать программы, которые показывают текущую температуру процессора, а также контролировать превышение температуры сверх заданного значения.
Глава 5 «Измеряем ускорение» позволит вам контролировать движение платы micro:bit с ускорением или нахождение ее в состоянии невесомости. Вы научитесь обрабатывать жесты – поворот платы микроконтроллера логотипом вверх или вниз, наклон вправо или влево, поворот монитором вверх или вниз, встряхивание.
Все это будет возможно, когда вы научитесь работать с акселерометром, специально предназначенным для измерения ускорения во всех трех направлениях движения. Это устройство встроено в плату micro:bit.
Вы создадите программы, способные обнаружить невесомость и значительные перегрузки, реагировать на жесты, строить гистограмму значений ускорения.
Глава 6 называется «Встроенный магнитометр». В ней вы научитесь использовать магнитометр, расположенный на плате micro:bit, для исследования напряженности магнитного поля, а также сделаете простейший компас.
В главе 7 «Подключаем внешние устройства» мы научим вас работать с некоторыми внешними устройствами из набора DFRobot для micro:bit. Набор хорош тем, что не требует никаких навыков пайки и позволяет легко изучить способы подключения и программирования таких устройств, как светодиод, кнопки, моторы, потенциометры, датчики движения.
Вы сможете управлять яркостью небольшой светодиодной ленты и даже превратите свой micro:bit в простую музыкальную шкатулку.
Глава 8 «Осваиваем GPIO» посвящена подключению различных периферийных устройств к разъему GPIO микрокомпьютера micro:bit. Мы расскажем об этом разъеме и назначении его контактов, научим вас подключать к нему потенциометры, светодиоды, мощные лампочки. МЫ также расскажем об использовании широтно-импульсной модуляции для управления яркостью светодиодов и лампочек, а также скоростью вращения моторов.
Вы подключите ультразвуковой и инфракрасный дальномеры, которые пригодятся при создании роботов, например, для исключения столкновений с препятствиями при движении.
Мы также расскажем об использовании макетных плат для сборки различных схем без помощи пайки.
Глава 9 «Запускаем радиоканал» будет полезна, если в вашем проекте используется несколько плат micro:bit. Для создания радиоканала между платами вы будете использовать контроллеры Bluetooth. Такое контроллер уже встроен в плату micro:bit.
Работая с этой главой, вы сделаете устройство с пультом управления, позволяющее включать и выключать дистанционно лампочку и вентилятор, а также научитесь передавать по радио данные телеметрии. Мы также расскажем, как управлять мощностью передаваемого сигнала, и как измерять мощность принятого сигнала.
Глава 10 «Подключаем micro:bit к компьютеру и второму micro:bit» научит вас передавать данные из micro:bit в терминальную программу, работающую на компьютере, подключенном к плате micro:bit через порт USB. Такая возможность будет очень удобна при отладке программ, работающих на micro:bit.
Также вы научитесь передавать данные между двумя платами micro:bit, соединенными двумя проводами с помощью интерфейса UART.
В главе 11 «Марсоход BoxRover заводит моторы» вы приблизитесь к созданию ровера – модели радиоуправляемого марсохода. Вы научитесь управлять моторами ровера с помощью транзистора и контроллера MX1508, реализующих функции H-моста и создадите программу, управляющую вращением двигателя.
Работая над этой главой, вы создадите первый прототип ровера BoxRover с микроконтроллером micro:bit, управляемого по радио со второго такого же контроллера.
В качестве домашнего задания вы сделаете простейшую систему передачи данных телеметрии, способную передавать в пульт управления температуру процессора micro:bit ровера. При этом на экране ровера будет отображаться температура процессора micro:bit пульта управления.