Как измерить массу Земли с помощью Arduino
Компоненты и расходные материалы
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 4 | ||||
![]() |
| × | 2 | |||
| × | 4 | ||||
| × | 1 | ||||
| × | 1 | ||||
![]() |
| × | 1 | |||
| × | 1 | ||||
![]() |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Приложения и онлайн-сервисы
![]() |
|
Об этом проекте
Введение
В один прекрасный день я взвешивался на весах. Внезапно мне пришла в голову мысль:«Сколько будет масса Земли?» Оставьте это отдельно:«Как мы можем это измерить?» Нет таких весов, на которых можно было бы разместить Землю. Должен быть какой-то косвенный способ измерить массу Земли. Здесь я представляю реализацию одного из таких косвенных методов измерения массы Земли.
Шаг 1. Косвенный метод
В начале девятнадцатого века ученые использовали второй закон Ньютона и закон всемирного тяготения Ньютона для измерения массы Земли. Эти уравнения следующие:F =ma и F =(GmM) / (r ^ 2) соответственно (m =масса объекта, a =ускорение, G =гравитационная постоянная, M =масса Земли, r =радиус Земли) . Если мы подставим g, т.е. ускорение свободного падения на член ускорения 'a', и объединим эти два уравнения, мы получим.
мг =ГмМ / г ^ 2
Это уравнение может быть решено для M, т. Е. Массы Земли.
M =(gr ^ 2) / G.

Предположим, что нам известны значения G и r. Мы найдем g, то есть ускорение свободного падения, с помощью небольшого эксперимента с участием Arduino и нескольких датчиков. Наконец, мы соберем все вместе, чтобы найти значение M.
посмотрите на прикрепленное изображение, чтобы найти правильные математические выражения.
Приступим к эксперименту.
Шаг 2. Обзор эксперимента
(Потерпите немного математики, здесь скоро сработает Arduino)
Чтобы определить ускорение свободного падения, нам нужно знать нечто, называемое «свободным падением», это движение, при котором тело / объект движется вниз к земле только под действием силы тяжести. Есть несколько научных терминов, характеризующих это свободное падение. Это начальная скорость, конечная скорость, пройденное расстояние, время полета и ускорение.
- Начальная скорость - скорость свободно падающего тела в начале свободного падения или начале эксперимента.
- Конечная скорость - скорость свободно падающего тела в конце свободного падения окончания эксперимента.
- Пройденное расстояние - расстояние, пройденное свободно падающим телом при свободном падении.
- Время полета - время, затраченное на преодоление расстояния при свободном падении.
- Ускорение - скорость изменения скорости, наблюдаемая телом в свободном падении. Это равно ускорению свободного падения.
Теперь есть одно из уравнений Ньютона, которое выглядит примерно так:
Пройденное расстояние =(начальная скорость * время полета) + (ускорение * (время полета) ^ 2) / 2
В приведенном выше уравнении есть 4 переменные, в том числе одна из интересующих нас, то есть «ускорение». Из этих 4 переменных, если мы знаем 3, мы можем вычислить 4-ю оставшуюся неизвестную переменную.
Мы можем исправить 2 из них
- Пройденное расстояние =1 метр (мы уроним наш объект с высоты 1 метр)
- начальная скорость =0 м / с (мы начнем наш эксперимент в состоянии покоя)
У нас остались две неизвестные переменные, здесь вступает в действие Arduino и помогает нам найти время полета. Для точного определения времени полета нам понадобятся две отметки времени:1. начало полета и 2. конец полета.
Мы создадим индивидуальную схему для определения этих двух временных меток на шаге 4, я опишу схему, чтобы найти временную метку для начала полета и на шаге 5 - в конце полета.
С помощью arduino и нескольких датчиков мы рассчитаем время полета, оставив только одно неизвестное в приведенном выше уравнении, то есть ускорение под действием силы тяжести (бингооо !!!).
Давайте поместим наши фиксированные значения переменных в вышеупомянутое уравнение, чтобы еще больше упростить уравнение.
1 =(г * (время полета) ^ 2) / 2
Итак,
g =2 / (время полета) ^ 2
Подробная информация об эксперименте будет представлена на шаге 7.
В случае сомнений обратитесь к приложенному изображению.

Шаг 3. Вещи, которые нам понадобятся
Вот список вещей, которые нам понадобятся для эксперимента по измерению ускорения свободного падения.
- Любая плата Arduino, желательно uno / duomilanove (нет конкретной причины, просто я использовал эту плату для этого эксперимента).
- USB-кабель для подключения Arduino к ПК.
- резисторы 560 Ом (4 шт.), резисторы 100 Ом (2 шт.)
- пьезоэлектрический датчик (4 шт.)
- Одна пара IR Tx (ИК-светодиод) и Rx (фотодиод).
- Один потенциометр
- Один операционный усилитель (например, UA741C)
- Один хлебный стол
- Три провода длиной 1,2 метра
- небольшая печатная плата общего назначения размером 5 x 5 см для сборки ИК-схемы.
- Лента
- Картонный лист
В случае сомнений посмотрите прикрепленные изображения.















Шаг 4. Схема 1. ИК-схема
Эта схема будет использоваться для отметки времени начала свободного падения объекта, используемого для измерения g. Вот важные моменты, касающиеся прилагаемого схематического изображения фритзинга.
- ИК-светодиод используется при прямом смещении, который в этом приложении действует как обычный светодиод, то есть освещает фотодиод ИК-приемника.
- Фотодиод используется с обратным смещением.
- Выход от соединения катода и резистора подключается к одному из входных выводов операционного усилителя.
- Другой входной терминал операционного усилителя подключен к потенциометру, который определяет пороговое напряжение.
- Выходной сигнал операционного усилителя поступает на плату Arduino.
В случае сомнений обратитесь к видео (время =5 мин. 16 сек.)
Шаг 5:Схема 2:Пьезоэлектрическая схема
Эта схема будет использоваться для отметки времени окончания свободного падения объекта, используемого для измерения g. Вот важные моменты, касающиеся прилагаемого схематического изображения фритзинга.
- 4 пьезоэлектрических датчика подключены, как показано на схеме.
- Резисторы сопротивлением 4 560 Ом подключены параллельно пьезоэлектрическим датчикам, чтобы уменьшить скачки напряжения, создаваемые пьезоэлектрическим датчиком, когда свободно падающий объект ударяется о его поверхность.
- Отрицательный вывод пьезоэлектрических датчиков подключен к заземлению цепи.
- Положительный вывод пьезоэлектрического датчика подключается к контактам аналогового входа.
В случае сомнений обратитесь к приложенному видео (время =9м 2 сек).
Шаг 6. Собираем все вместе
Следуйте этим инструкциям, чтобы собрать все вместе.
- Из картона сделайте конструкцию в виде крыши и прикрепите ее к стене на высоте около 1,1 метра.
- Прикрепите ИК-модуль лицевой стороной вниз к картонной крыше.
- Подключите выход операционного усилителя к контакту № 4 Arduino с помощью одного из проводов длиной 1,2 м.
- Подключите Vcc и GND от Arduino к ИК-модулю, используя остальные провода длиной 1,2 м.
- Убедитесь, что все надежно прикреплено проводами к стене, ИК-модуль к картонной крыше, пьезоэлектрический модуль к земле чуть ниже ИК-модуля.
В случае сомнений посмотрите прикрепленное изображение, оно правильно помечено для облегчения понимания сборки.

Шаг 7. Подробности эксперимента
Когда все на месте (кроме кода Arduino, описанного в шаге 8), давайте рассмотрим процедуру этого эксперимента.
- Приклейте небольшой тонкий выступ поверх объекта, используемого для свободного падения, как показано на изображении под номером 1.
- Прежде чем мы оставим наш объект, чтобы он продолжил свободное падение, удерживайте его на отметке 1 метр, чтобы выступ наверху препятствовал прохождению света от ИК к фотодиоду. Как показано на рисунке под номером 2.
- покинуть объект, не прилагая усилий, чтобы он упал на пьезоэлектрическую зону приземления.
- Когда он падает, на пути ИК TX и RX нет никаких препятствий, что дает нам сигнал об только что оставленном объекте с точки зрения времени начала свободного падения.
- Когда объект касается зоны приземления, пьезоэлектрические датчики генерируют контролируемый всплеск напряжения, уведомляющий о прибытии объекта в момент окончания времени свободного падения.
- Если мы вычтем время окончания из времени начала, мы получим время полета, которое мы будем использовать для расчета ускорения свободного падения, как мы обсуждали на шаге 2.


Шаг 8. Код Arduino
Я прилагаю код Arduino для этого эксперимента. Код действительно прост. В случае сомнений обратитесь к видео, где я подробно объясняю код (время в видео =13 минут 35 секунд).
Шаг 9. Давайте проведем эксперимент
Перед проведением этого эксперимента следует позаботиться о следующих вещах.
- Порог пьезоэлектрического датчика должен быть правильно установлен в коде Arduino.
- Разместите пьезоэлектрическую панель чуть ниже ИК-модуля.
- Убедитесь, что вы уронили объект с высоты 1 метра без приложения какой-либо внешней силы.
Здесь я провожу этот эксперимент с отметкой времени 17 минут в прикрепленном видео. Мы рассчитаем массу Земли, используя результаты, то есть время полета, полученные в этом эксперименте.
Шаг 10. Результаты и масса Земли
Повторив этот эксперимент 3 раза, я получил следующие результаты с точки зрения времени полета.
- 443 мс
- 443 мс
- 464 мс
Возьмем среднее.
Среднее время полета =450 мс
Если мы подставим это значение в уравнение, чтобы получить ускорение свободного падения, мы получим ускорение около 9,8755 м / с2. Как видно на прикрепленном изображении.
Наконец, заменив это значение на 'g', чтобы получить массу Земли, мы получаем, что она составляет около 6,0066 x 1024 кг, как вы можете видеть на прикрепленном изображении.
Фактическая масса Земли по данным Google составляет 5,972 x 1024 кг. Думаю, мы подошли близко.
Спасибо за ваше время. В случае сомнений отправьте видео или оставьте его в комментариях, я буду рад помочь.

Код
- Код Arduino
Код Arduino Arduino
простой код Arduinoconst int sensorPin1 =A0; const int sensorPin2 =A1; const int sensorPin3 =A2; const int sensorPin4 =A3; const int photoPin =4; const int ledPin =13; const int threshold =110; char stringToPrint [100]; int startTime, endTime; int val1, val2, val3, val4; void setup () {Serial.begin (115200); // поместите сюда свой установочный код, чтобы запустить его один раз:pinMode (ledPin, OUTPUT); pinMode (sensorPin1, ВХОД); pinMode (sensorPin2, ВХОД); pinMode (sensorPin3, ВХОД); pinMode (sensorPin4, ВХОД); pinMode (photoPin, INPUT);} void loop () {// поместите сюда ваш основной код для повторного запуска:int start =digitalRead (photoPin); startTime =миллис (); если (начало ==ВЫСОКИЙ) digitalWrite (ledPin, ВЫСОКИЙ); в то время как (начало ==LOW) {digitalWrite (ledPin, LOW); val1 =analogRead (sensorPin1); val2 =analogRead (sensorPin2); val3 =analogRead (sensorPin3); val4 =analogRead (sensorPin4); // sprintf (stringToPrint, "% d,% d,% d,% d", val1, val2, val3, val4); //Serial.println(stringToPrint); если ((значение1> =порог) || (значение2> =порог) || (значение3> =порог) || (значение4> =порог)) {endTime =millis (); sprintf (stringToPrint, «% d мс», endTime - startTime); Serial.println (stringToPrint); digitalWrite (ledPin, HIGH); задержка (1000); digitalWrite (ledPin, LOW); start =HIGH; }}}
Схема
Схема фритзинга для ИК-схемы



Производственный процесс
- Как измерить качество воздуха на OpenSensors
- Затемнение света с ШИМ с помощью кнопки
- Ультразвуковой левитационный аппарат с использованием ARDUINO
- Измерение частоты и рабочего цикла с использованием Arduino
- Найди меня
- Сонар с использованием Arduino и отображение при обработке IDE
- Счетчик автомобилей с использованием Arduino + Обработка + PHP
- Использование переносного датчика пульса MAX30100 с Arduino
- Использование датчика влажности почвы YL-39 + YL-69 с Arduino
- Как измерить цифровую зрелость моей компании?