В рамках школьной программы по физике для 9-го класса изучается тема «Равноускоренное движение». Для лучшего понимания данного физического явления предусмотрено выполнение лабораторной работы. Используя секундомер и наклонную плоскость определенной длины, девятиклассники должны измерить ускорение тела, двигавшегося по прямой.
Мы считаем, что вычислить ускорение тела можно более точно, если делать это автоматически, с помощью специального устройства, которое мы и решили спроектировать.
Ускорение свободного падения — это одно из фундаментальных понятий в физике, которое описывает силу притяжения между двумя телами, зависящую от их масс и расстояния между ними. Это ускорение не зависит от скорости тела, и его величина равна 9,81 м/с² на Земле.
Чтобы измерить ускорение тела при прямолинейном равноускоренном движении без начальной скорости, нужно знать, какое расстояние и за какое время оно прошло. Для этого необходимо расположить на известном расстоянии датчики, которые будут сообщать нам о том, что тело прошло определённое расстояние в определённый момент времени.
Реализация этого алгоритма требует особой среды, позволяющей разрабатывать необходимые программы с помощью языков программирования.
Основным элементом нашей установки является микропроцессор — её мозг, устройство, отвечающее за выполнение арифметических, логических действий и операций управления, записанных в машинном коде.
На сегодняшний день одной из самых популярных, доступных, простых, современных систем с микропроцессором является Arduino.
Для написания программы мы использовали онлайн-среду разработки, поддерживающую Arduino. Такой средой выступает Wokwi, которая позволяет в онлайн формате строить электросхему со всеми компонентами во взаимодействии с микропроцессором.
Для проектирования схемы необходимы два датчика и секундомер. Arduino уже имеет встроенный таймер, поэтому остаётся установить два датчика, расположив их на известном расстоянии друг от друга. В качестве верхнего датчика мы будем использовать фототранзистор, в качестве нижнего — пьезодатчик вибрации, расстояние между ними установим один метр.
Проведенное тестирование в эмуляторе Arduino IDEподтвердило правильность работы программы.
На следующем этапе реализации проекта мы изготовили корпус установки. Для этого на основании установили брусок со специальным углублением для крепления двусоставной штанги, а для фиксации верхнего датчика использовали брусок меньшего размера. Затем вставили оптический датчик в рамку и вывели провода. Рамку приклеили к бруску, а все провода убрали в пластиковый корпус (рис. 1). Закрепили брусок с помощью уплотнителя на штанге так, чтобы расстояние от оптического датчика до основания штанги ровнялось одному метру. Ниже конца уплотнителя зафиксировали клипсу для удержания датчика. У основания с боковой стороны нижнего бруска разместили пьезоэлемент, заключённый в пластиковый корпус (рис. 2). Внешний вид устройства представлен на рис. 3.
Рис. 1. Основание с боковой стороны
Рис. 2. Пьезоэлемент в пластиковом корпусе
Рис. 3. Внешний вид устройства
На следующем этапе работы мы собрали электросхему на макетной плате в соответствии с исходной схемой, составленной в симуляторе.
Через порт Micro USB, расположенный на плате Arduino, загрузили программу. Подключили Arduino к источнику питания. Ускорение свободного падения — общеизвестная величина, поэтому с помощью неё можно будет оценить точность нашего прибора.
Проверка показала, что измеренные нами значения близки к общеизвестному, однако погрешность всё равно присутствует.
В процессе развития программной части устройства были реализованы дополнительные функции, расширяющие его возможности и повышающие удобство проведения экспериментов, при этом базовый алгоритм измерения ускорения тела не изменялся.
Изначально предполагалось, что расстояние между датчиками будет постоянным и равным одному метру. В доработанной версии программы расстояние между датчиками задаётся программно и хранится в переменной height_mm, выраженной в миллиметрах. Значение высоты может изменяться пользователем с помощью двух кнопок — увеличения и уменьшения высоты с заданным шагом.
Данное решение позволяет использовать устройство при различных расстояниях между датчиками без изменения прошивки микроконтроллера, что значительно расширяет область применения прибора и повышает точность экспериментов.
При изменении высоты её текущее значение кратковременно выводится на семисегментный индикатор, после чего индикация автоматически возвращается к основному режиму отображения.
В программе расстояние задаётся в миллиметрах, а время измеряется в миллисекундах, поэтому при вычислениях используется коэффициент перевода единиц измерения, позволяющий выполнять расчёты без применения вещественной арифметики. Это обеспечивает высокую скорость работы программы и стабильность вычислений на микроконтроллере Arduino.
Для повышения наглядности эксперимента и возможности последующей обработки данных в программе реализован вывод результатов измерений в последовательный порт (Serial). После каждого завершённого измерения автоматически формируется строка данных в табличном виде.
Вывод осуществляется в формате CSV (Comma-Separated Values) с разделителем, что позволяет напрямую открывать полученные данные в табличных редакторах, таких как Microsoft Excel. Нумерация опытов осуществляется автоматически, начиная с первого измерения.
Результатом выполнения данной работы стала разработка и создание устройства для измерения ускорения тела при равноускоренном прямолинейном движении на основе микроконтроллерной платформы Arduino.
В практической части была спроектирована структура устройства и алгоритм его работы. Реализация проекта осуществлялась на платформе Arduino, доступной и удобной для учебного экспериментирования. Были спроектированы электрическая схема устройства и программное обеспечение, отвечающее за корректную работу датчиков, измерение времени движения тела, вычисление ускорения и вывод результатов измерений.
Программная часть устройства позволяет осуществить автоматический запуск и остановку измерения, контроль ошибочных ситуаций, индикацию текущего состояния, а также вычислить ускорение по формуле равноускоренного движения без начальной скорости. Дополнительно в программе реализована возможность изменения расстояния между датчиками, что позволяет проводить эксперименты при различных условиях без перепрограммирования микроконтроллера.
Существенным расширением функционала устройства является реализация протоколирования результатов измерений в последовательный порт в формате CSV. Данное решение позволяет автоматически сохранять данные экспериментов, выполнять их последующую обработку в табличных редакторах и проводить анализ результатов. Реализована автоматическая нумерация опытов, а также возможность очистки таблицы и начала новой серии измерений без перезагрузки устройства.
Проведённые испытания показали, что полученные значения ускорения близки к общеизвестному значению ускорения свободного падения, что подтверждает работоспособность и достаточную точность разработанного устройства. Небольшие отклонения объясняются погрешностями измерения времени, особенностями датчиков и внешними условиями эксперимента.
В процессе выполнения работы были получены практические навыки в области программирования микроконтроллеров, проектирования электрических схем, разработки алгоритмов, работы с измерительными устройствами и обработки экспериментальных данных. Разработанное устройство может быть использовано в учебном процессе при изучении механики, а также может служить основой для дальнейших исследований и усовершенствований, таких как повышение точности измерений, расширение функционала или автоматизация серии экспериментов.
Литература:
- Методика проведения школьного физического эксперимента: 7–11 классы: учеб. пособие / под ред. А. В. Перышкина. — Москва: Просвещение, 2020. — 256 с.: ил.
- Блум, Дж. Изучаем Arduino: инструменты и методы технического волшебства / Дж. Блум; пер. с англ. — 2-е изд. — Санкт-Петербург: Питер, 2020. — 512 с.: ил.
- Монк, С. Arduino для начинающих / С. Монк; пер. с англ. — Москва: Эксмо, 2021. — 336 с.: ил.
- Хоровиц, П., Хилл, У. Искусство схемотехники: в 2 т. Т. 1 / П. Хоровиц, У. Хилл; пер. с англ. — 3-е изд. — Москва: Мир, 2019. — 704 с.: ил.

