Робототехника: практическое введение для детей и взрослых

Александр Вячеславович Фролов, 2020

Эта книга поможет вам быстро освоить основы робототехники и приступить к конструированию собственных роботов, разных систем с микроконтроллерами и даже элементов умного дома. Вам не потребуются знания языков программирования и паяльник. Изучайте микроконтроллеры и робототехнику по нашей книге, и вы сможете быстро освоить современные профессии. Вы научитесь программировать micro:bit версий 1.5 и 2, работать с кнопками, светодиодами, светодиодным и OLED-экраном, измерять температуру, ускорение, напряженность магнитного поля. Используя интерфейс GPIO, вы подключите такие устройства, как моторы, сервоприводы, кнопки, датчики движения, расстояния и многие другие. Данные, полученные от контроллеров, вы сможете передавать на другие контроллеры с помощью радиоканала Bluetooth, а также контроллеров LoRa, способных обеспечить радиосвязь на расстояния, исчисляемые километрами. Мы расскажем о том, как организовать электропитание робота или других конструкций.

Оглавление

4. Измеряем температуру

Мы уже писали во введении к этой книге, что «на борту» микроконтроллера micro:bit имеется измеритель температуры. Физически он находится внутри процессора, и поэтому, строго говоря, измеряет не температуру окружающего воздуха, а температуру самого процессора.

Так как процессор micro:bit потребляет очень малую энергию, то в первом приближении можно считать, что его температура примерно соответствует температуре окружающей среды. Конечно, для более точных измерений не обойтись без специального внешнего термометра (и мы его подключим позже, когда займемся моделью марсохода BoxRover), но сейчас для нас будет вполне достаточно измерителя температуры, интегрированного в micro:bit.

Как работает измеритель температуры

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

Для измерения температуры применятся так называемые терморезисторы. Терморезистор представляет собой полупроводниковый прибор, сопротивление которого зависит от температуры.

Зависимость эта нелинейная, однако можно выставить рабочую точку терморезистора так, что она попадет на линейный участок. В этом случае по изменению сопротивления терморезистора можно будет судить об изменении его температуры.

В простейшем случае можно подключить терморезистор к батарейке через миллиамперметр, и проследить за изменением проходящего тока при нагреве или охлаждении терморезистора (рис. 4.1).

Рис. 4.1. Включение терморезистора

Конечно, настоящие схемы измерения температуры совсем не такие, но для понимания принципа и этого будет достаточно.

Вы также можете контролировать изменение сопротивления терморезистора с помощью омметра или тестера, переключенного в режим измерения сопротивления.

Существуют два типа терморезисторов. Это термисторы и позисторы. Сопротивление термистора уменьшается при увеличении температуры, а позистора наоборот, увеличивается. Говорят, что термисторы обладают отрицательным температурным коэффициентом сопротивления (ТКС), а позисторы — положительным.

В интернете есть множество статей, посвященных терморезисторам, например, эта — https://elektrikexpert.ru/termorezistor.html. На данном этапе мы не будем углубляться в детали, т.к. для измерения температуры будем использовать готовые устройства, учитывающие все особенности, в частности, нелинейную зависимость сопротивления терморезистора от температуры.

Термометр из micro:bit

Вы можете очень просто превратить свой микроконтроллер micro:bit в термометр. Достаточно использовать программу, показанную на рис. 4.2.

Рис. 4.2. Программа для измерения температуры процессора micro:bit

Эта программа находится в файле BoxRover/ch04/microbit-измеритель-температуры.hex.

Здесь мы добавили в блок постоянно блок показать число, предназначенный для вывода числа на экран микрокомпьютера, а также блок задержки на одну секунду. В качестве значения мы вставили из панели Ввод блок температура (°C). Этот блок возвращает значение температуры процессора micro:bit в градусах Цельсия.

Таким образом, на экран раз в секунду выводится текущее значение температуры в виде бегущей строки (рис. 4.3).

Рис. 4.3. На монитор micro:bit выводится текущая температура процессора

Как можно использовать встроенный измеритель температуры?

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

Подготовим программу, которая при превышении температуры сверх заданного значение (30 °C) включает сразу все светодиоды экрана micro:bit. Если же температура нормальная, на экране будет нарисовано сердце (рис. 4.4).

Рис. 4.4. Программа контроля температуры

Программа сохранена в файле microbit-проверка-температуры.hex.

Здесь в палитре Переменные мы определили переменную с именем температура. При помощи блока задать мы задаем значение этой переменной, равной блоку температура (°С), добавленному из панели Ввод.

Когда срабатывает условие, что значение, записанное в переменную температура, превышает 30 °С, блок показать светодиоды включает на экране все светодиоды сразу.

Если же перегрева нет, то блок показать значок выводит на экран изображение сердца.

Домашнее задание

Попробуйте поместить плату micro:bit на пару минут в холодильник (только не в морозильную камеру), а также оставить на солнце. Посмотрите, как это скажется на результатах измерения температуры процессора.

Проследите, чтобы в ходе экспериментов с холодильником на плату micro:bit не попала влага.

Учтите, что значительны перегрев платы micro:bit, а также переохлаждение могут привести к выходу платы из строя. Согласно описанию https://tech.microbit.org/hardware/, датчик температуры в micro:bit работает в диапазоне от — 25C до 75C, а его точность составляет ±4C.

Итоги

В этой главе вы узнали, что в микроконтроллере micro:bit имеется встроенный измеритель температуры. И хотя он установлен непосредственно внутри микропроцессора и показывает его температуру, а не температуру окружающей среды, все равно он может принести определенную пользу. Например, вы можете обнаружить перегрев процессора, опасный для работы вашей модели марсохода BoxRover или модуля автоматизации умного дома.

Вы составили программу, которая показывает текущее значение температуры, а также программу контроля превышения заданного значения температуры.

В следующих главах книги вы научитесь подключать к micro:bit миниатюрную погодную станцию, способную показывать не только температуру окружающей среды, но и давление, влажность, а также температуру точки росы.

Смотрите также

а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ э ю я