Наверное сложно поверить, что этот косный электротехнический компонент как фоторезистор может в какой-то мере заменить дорогущие цифровые санкционные навигационные приемники. Но это в самом деле так.
Нам очень повезло, что планета Земля вращается под углом к плоскости орбиты. Это приводит не только к смене времен года, но и также к тому, что на каждой широте длительность светового дня различная.
Таким образом фазы солнечного освещения естественным образом кодируют положения наблюдателя на земной сфере. Например, за северным полярным кругом (на широтах выше 66.5 градусов) световой день это полгода как и световая ночь.
В количественных величинах на 10 июня это такие продолжительности светового дня для разных широт
Также нам очень повезло, что в нашей солнечной системе существует всего одно Солнце, а не два, три или четыре. В связи с этим световые лучи падают на Землю параллельно, что существенно упрощает вычисления. Это первая хорошая новость.
Причем на самой Земле человечеству до сих пор так и не удалось создать источников света, которые светят однородно широко и параллельно.
Учитывая эти обстоятельства можно назначить Солнцу настоящую работу, чтобы оно не просто так впустую светило каждый день, a еще и делало что-то по-настоящему полезное для общества.
Итак план таков. Если взять микроконтроллер, к ADC пину микроконтроллера подключить через делитель напряжения фоторезистор (или датчик света по I2C), потом целый день непрерывно записывать на SD карту показания солнечной освещенности вкупе с временными отметками из часов реального времени RTC, то спустя 24 часа можно оценить или даже вычислить широту (длительность светового дня) и долготу (фаза светового дня). То есть можно вычислить свои географические координаты!
Надо лишь накропать вот такой остроумный гаджет
Вот, например, такой график запишет устройство за день работы. Строго говоря, этого должно быть достаточно для определения своего местонахождения.
Таким образом устройство-логер превратиться в навигационный приемник, который раз в 24 часа выдает навигационную координату!
Тут прежде чем двигаться дальше надо договориться о некоторой терминологии.
Терминология
Склонение Солнца-Угол между земной осью и отрезком, соединяющий Землю и Солнце. Зависит только от времени-даты. Меняется с периодом в год. Допустимые значения от -23,5....23,5 градусов
Местное солнечное время-время, определяемое в месте нахождения наблюдателя видимым положением Солнца на небесной сфере (например, истинный полдень в некоторой точке Земли наступает в момент верхней кульминации Солнца);
Теория
Как вычислить долготу?
Надо найти момент времени максимальной освещенности. Однако это не всегда удобно из-за облаков. Можно вычислить время восхода и время заката. Из времени заката вычесть время восхода, поделить на 2 и прибавить это число к времени восхода. Так мы получим время полудня для данной долготы. Если время полудня совпало с 12:00 на UTC+0 то это значит, что мы на нулевом меридиане. За 1 час Солнце в кульминации заметает 15 градусов долготы на глобусе.
С долготой всё просто: даешь время кульминации Солна, получаешь долготу.
Как вычислить широту?
Тут поинтереснее. Надо вспомнить школьную тригонометрию.
Существует формула которая вычисляет продолжительность светового дня по широте и солнечному склонению.
вывод этой формулы можно посмотреть тут https://pandia.ru/text/77/376/23564.php
Получается, даешь широту, солнечное склонение, получаешь продолжительность светового дня.
Заметьте, высота установки датчика ни в коей мере не влияет на результат вычисления продолжительности светового дня. Это вторая хорошая новость!
Как вычислить солнечное склонение?
Солнечное склонение меняется с периодом в один год от 23,45 градусов (22 июня )до -23,45 градусов (22 декабря).
Солнечное склонение это просто гладкая непрерывная периодическая функция от даты из календаря.
где n – порядковый номер дня в году, начиная от 1-го января
Практическая часть
Детали реализации солнечного навигатораЯ решил собрать свой солнечный навигатор из того, что было на балконе.
№ |
Компонент |
1 |
отладочная плата NUCLEO-F401RE с микроконтроллером STM32F401RE на борту |
2 |
модуль I2C часов реального времени DS3231 |
3 |
карта памяти SD micro 128MByte c SPI интерфейсом |
4 |
какой-то Фоторезистор 125kOm (свет) 2MOm(тьма) |
5 |
3х пиновые Wago зажимы |
6 |
кабель USB A-USB(mini) для подключения к PC или PowerBank |
7 |
PowerBank |
8 |
перемычки вилка-гнездо |
9 |
Оргстекло 3мм в качестве основы прототипа |
10 |
Пластиковые стойки с болтами и гайками |
11 |
модуль I2C датчика освещения на основе ASIC BH1750 |
12 |
двусторонний скотч |
Нашел отладочную плату, фоторезистор, модуль с часами реального времени и собрал прототип. Даже паять ничего не пришлось, только на 100W(ном) лазерном резаке основание пришлось вырезать из оргстекла, чтобы закрепить отладочные платы. Внешний вид прототипа такой
У попавшегося фоторезистора во время восхода проводимость равна 1.474320....1.503056 MSimens. Время восхода для своего региона я взял с астрономических сайтов. Откалибровав получил такие значения водораздела.
Восход |
Закат |
1.462417, 04:02:27 24/5/2023 |
1.604962, 20:50:15 24/5/2023 |
1.460938, 04:02:47 24/5/2023 |
1.596703, 20:50:35 24/5/2023 |
1.474320, 04:03:07 24/5/2023 |
1.588496, 20:51:15 24/5/2023 |
1.495430, 04:03:27 24/5/2023 |
1.573853, 20:51:35 24/5/2023 |
1.503056, 04:03:47 24/5/2023 |
1.567398, 20:51:55 24/5/2023 |
1.532468, 04:04:07 24/5/2023 |
1.554585, 20:52:15 24/5/2023 |
продолжительность светового дня получилась 20:51:55 - 04:03:07=16:48:48. Калькулятор времени тут https://allcalc.ru/node/2277. По формуле такая продолжительность светового дня соответствует широте 56.5 градусов северной широты. Признаться это больше чем на самом деле. Видимо тот сайт указывал время восхода/заката учитывая рефракцию атмосферы, а формула которую я применяю рефракцию не учитывает.
Точное время для инициализации часов можно взять отсюда https://timeskaner.ru/utc.html. Лучше сразу прописывать в устройство время по Гринвичу UTC+0, прямо как в GNSS приемниках.
При подключении по SPI SD карта почему-то распознается только, когда Allocation Unit size настроен на 2048 байт. Данные на SD карту лучше писать в формате электронных таблиц в *.csv файл. Тогда их можно будет сразу импортировать и просматривать прямо в docs.google.com/spreadsheets.
Навигационное устройство можно сделать сверхлегким и сверх минималистичным. По сути надо только микроконтроллер, RTC, Light Sensor и опционально Flash-память.
Достоинства навигации по фазам солнечного освещения
это дешево. Всего три компонента: фоторезистор, часы реального времени, SD-карточка, микроконтроллер.
простота реализации оборудования.
малые габариты оборудования
малая масса оборудования
радио электронная борьба для GNSS не работают в этом случае. Никто не может выключить Солнце.
можно уточнять координату каждый день.
Недостатки навигации по фото-резистору
устройство надо калибровать. Надо указать явно какое сопротивление фоторезистора соответствует рассвету и закату.
Долго выдает навигационное решение. Долго ждать одного измерения 24 часа. Это подойдет в основном для стационарных предметов на открытом воздухе, метеостанции, контейнеры, вагоны.
устройство желательно должно быть неподвижным целый день.
Низкая точность. +/- 220 км. Особенно по широте большая ошибка 80-120 км. Зависит от погоды.
Неприятности навигации по фазам освещения
1--Сопротивление фоторезистора зависит не только от освещенности, но и ещё от температуры. Утром фоторезистор холодный, вечером - теплый. Поэтому и значения при той же освещенности разные. Вечером у фоторезистора при той же, что и утром освещенности сопротивление больше. Нужен не просто фоторезистор, а полноценный прецизионный датчик освещенности с термо компенсацией, например BH1750. Вот на этом графике показано сравнение фоторезистора и ASIC датчика освещения BH1750.
заметьте что проводимость фоторезистора пропорциональна логарифму от освещения, а не просто от освещения.
2--В пасмурные дни (типа 2 июня 2023) продолжительность светового дня вычисляется меньше чем есть на самом деле.
Возможные приложения навигации по фазам освещения:
Навигация по фоторезистору может быть полезна для вспомогательного отслеживания перемещения крупногабаритных товаров, которые в основном подолгу хранятся на открытом воздухе, таких как контейнеры, вагоны, корабли.
Также каждая метеостанция может вычислять свои координаты по датчику освещения. В условиях отключения GPS навигация по освещению окажется одним из решений.
Способ навигации по фазам солнца поможет примерно ориентироваться для марсоходов и луноходов.
Так как оборудование минимально (всего три компонента), то можно отслеживать перемещение диких животных (птиц).
Как по мне, самое адекватное применение этой темы это встроить фоторезистор в наручные часы и часы сами, лежа на подоконнике определят свой часовой пояс и переключатся на местное время.
Можно встроить датчик освещения в портативные радиостанции для передачи примерного местонахождения в транкинговой сети.
Шоурум графиков фаз освещения
Был очень яркий день. Облаков не было. Там не менее появились 2 непонятных проседания. Вероятно это Солнце зашло за многоэтажки.
Тут видно, что нагревание фоторезистора влияет на его сопротивление
Продолжительность дня: 17h 09m, Восход 00:52, кульминация 09:27, закат 18:02, 01/6/2023 максимальная освещенность 08:55:16
а это пасмурный день с грозой и молниями 2 июня 2023
Что с точностью измерения координат?
Мой прототип такого навигатора, установленный на балконе, показывает ошибку по широте 80км и ошибку по долготе 58,2 км...120км. Причем долгота определяется на порядок точнее чем широта. Но тут надо сразу отметить, что я пока еще ничего не начинал делать для увеличения точности. Пополнять лог результатов буду в этом реестре
https://docs.google.com/spreadsheets/d/1q1Q4BvpVELhuVvXNgQFRqmsdtKTIxMgbEzHBmkHPNc0/edit#gid=0
Как можно попробовать увеличить точность?
Использовать более точные формулы вычисления солнечного склонения, учитывать прецессию Земли.
Использовать несколько датчиков освещения для исключения бликов.
Использовать более точные часы. Например атомные часы.
автоматически определять направление тени от вертикального стержня и таким образом точнее определить долготу.
Установить солнечный навигатор выше. На крышу здания. Так как в формуле высота не фигурирует, зато график освещения будет более гладким, как следствие эксперимент чистым.
найти или вывести формулы продолжительности светового дня, для конкретной широты которые учитывают рефракцию атмосферы.
Выводы
Навигация по фазам освещения это вполне доступный вариант оценочной навигации. Первая точность -/+ регион. Можно по крайней мере автоматически определить свой часовой пояс.
Также появляются очень подозрительные всплески и проседания освещения во время дня. Может это связано с бликами от окон многоэтажек. Наверное лучше считывать данные освещения сразу с двух датчиков освещения.
При этом фоторезистор это очень плохой вариант для датчика освещения так как показания фоторезистора еще зависят и от температуры.
На точность вычисления широты сильно влияет точность измерения продолжительности светового дня.
Надо калибровать датчик освещения. Надо понимать какое показание светимости соответствует водоразделу ночь/день и день/ночь
Тема навигации по датчику освещения также может быть вариантом, например, для школьных кружков робототехники в качестве реальной учебной задачки. Всё оборудование доступно и дешево. При этом разработка такого прибора затрагивает много аспектов программирования: тестирование кода, делитель напряжения, триггер Шмитта, файловая система (например FatFs), шина I2C, часы реального времени, немного реальной тригонометрии, часовая арифметика, ряды Фурье, сбор логов, метрология, анализ больших данных, красивые графики и даже астрономия!
При этом написанные и протестированные программные компоненты (SD/FatFs/TrigSchmitt/BSP/RTC) можно потом пере использовать в других проектах просто переписав конфиг.
Это не просто датчик света. Это разговор с самой природой.
В общем эта тема позволила мне стать немножко более просвещённым.
Ссылки
https://timewek.ru/citysun.php
https://math.d3.ru/formula-dnia-i-nochi-2079568/?sorting=rating
https://ru.wikipedia.org/wiki/Долгота_дня
https://www.hmn.ru/index.php?index=41&value=1
https://pandia.ru/text/77/376/23564.php
https://www.youtube.com/watch?v=ZPUYBsI7Pp0
https://лунник.рф/восход-заход-солнца
https://www.hmn.ru/index.php?index=41&value=1
https://poznayka.org/s78818t1.html
Словарь
Акроним |
Расшифровка |
csv |
Comma-Separated Values |
RTC |
Real Time Clock |
GPS |
Global Positioning System |
UTC |
Coordinated Universal Time |
GNSS |
Global Navigation Satellite System |
ADC |
analog-to-digital converter |
SD |
Secure Digital |
I2C |
Inter-Integrated Circuit |
FAT |
File Allocation Table |
FS |
File system |
Комментарии (62)
Javian
10.06.2023 00:24+11Т.е. чтобы вычислить правильно надо как-то узнать местное время и "Время восхода для своего региона я взял с астрономических сайтов".
Поэтому нельзя взять это устройство и приехать куда-то еще и узнать свои координаты. Астролябия как-то удобнее работает :)
ihouser
10.06.2023 00:24+9Астролябия какая то древность. Но, если к ней приделать ардуино, то сразу станет модной штучкой.
aabzel Автор
10.06.2023 00:24+1Откалибровать датчик света можно в одном месте, а использовать прибор в другом уже без калибровки.
Radisto
10.06.2023 00:24+15Прошу прощения за то, что ужасный душнила, но не могу удержаться от пары мелких уточнений
Например, за северным полярным кругом (на широтах выше 66.5 градусов) световой день это полгода как и световая ночь.
Не совсем. Полярные день и ночь по полгода только на полюсах, а за полярным кругом они только летом и зимой соответственно, и значительно короче. Весной и осенью там вполне обычные сутки, в дни равноденствий совпадающие с африканскими. Хуже того, полярная ночь часто - не очень-то и ночь, а близка к сумеркам, как впрочем и полярный день. Вашему навигатору вследствие этого будет крайне тяжело поймать момент рассвета и заката - сумерки будут всё продолжительнее и продолжительнее от экватора к полюсам. Позволю себе ещё одно гадкое замечание: погрешность в результате одного изменения - это не очень-то погрешность, а скорее случайность. Попробуйте проводить измерения в разные времена года (хотя бы от зимнего до летнего солнестояния), разумеется в солнечную погоду, чтобы избавиться от влияния облаков, с одной и той же калибровкой. Боюсь, доверительный интервал определения координат, полученных этим методом, может оказаться разочаровывающе широким на широтах, далеких от экватора и превысить уже полученную вами погрешность (хотя я возможно придираюсь - книга Новицкого и Зограф все ещё на меня влияет) Но саму идею в принципе я безусловно приветствую (просто подводные камни в ней огромны и совершенно не очевидны без учебника по астрономии). Честно и со стыдом признаю, что в электронике я плох
Moskus
10.06.2023 00:24+3Ни в коем случае не извиняйтесь за объективную критику с техническими подробностями. "Душнилой" за такое может назвать только один из тех моральных уродов, которым всё в жизни кажется комедией.
aabzel Автор
10.06.2023 00:24Как же интересно покорители северного полюса в 193x смогли понято, что они на северном полюсе?
Звезд в полярный день не видно. Вместо солнца сумерки.
До развертывания GPS еще 60лет ждать.Moskus
10.06.2023 00:24+3Магнитный компас при этом далеко не полностью бесполезен, как и ориентирование по солнцу, плюс счисление пути.
aabzel Автор
10.06.2023 00:24-1плюс счисление пути.
Ну конечно же! У них в 193x была механическая инерциальная навигационная система!
Три гироскопа (на маховиках 10 оборотов в секунду) и 3 груза на 2х пружинах каждый.
И лог 6 переменных записывался на барабаны с бумагой.Radisto
10.06.2023 00:24+1Эйнштейн неплохие деньги поднял на усовершенствовании гирокомпаса в компании с Аншютцем. И смог их сберечь, потому что его друг Герман переводил их в Швейцарию. Два гироскопа (гироскоп Эйзенштейна-Аншютца, по тем временам большой прорыв по сравнению с однороторными. Эйнштейн, будучи патентным поверенным, как раз и смог доказать, что два ротора - это существенное отличие, достаточное для отдельного патента). Как раз 1931 год. Многие подводные лодки оснащались копиями аншютцев. У СССР это был кажется "курс-3". Идея достигнуть полюса на подводной лодке, если не сильно вру, была Аншютца, по крайней мере, он высказал ее одним из первых.
Moskus
10.06.2023 00:24+1При постановке задачи в виде достижения географической широты гироскоп не очень нужен.
Moskus
10.06.2023 00:24+1Любопытно, что вы счисление пути только так представляете. Хотя, учитывая употребление вами оборота "как понять" - это не странно.
Radisto
10.06.2023 00:24+1Помнится мне, счисление пути времен Джека Воробья - это курс по компасу, время по песочным часам (те самые склянки), и скорость по лагу (деревяха с линем, повязанным узелками по всей длине). И ничего - плыли и приплывали))) Капитана Джека Воробья, конечно же
FrolVII
10.06.2023 00:24+3Собственно, сам полярный круг - это центральная "ось" широтного пояса, в котором есть один единственный полярный день (22 июня - когда одни сутки не заходит солнце), а полярной точи, к слову, там пока еще нет, так как солнце не точечный источник света. Дальше к полюсу - количество таких дней увеличивается и появляются полярные ночи.
В конце лета в Заполярье есть интересный период: когда сначала очень долгий закат - а потом сразу рассвет. Деревьев нет, городов нет, местность относительно плоская - наблюдать в таких условиях подобные картины весьма.
para_u
10.06.2023 00:24ну почему же "душнилой" ? мы же здесь за интересностями, а не "сделать как надо". такие факты и ньюансы полезны в раскопках нужного метода-решения
nikolz
10.06.2023 00:24+11Прикольно, но "дорогущие цифровые санкционные навигационные приемники" китайского производства стоят 5 недружественных долларов и обеспечивают , в самом худшем случае, погрешность в 100 метров, за время не более 10 минут.
Ваше решение обеспечивает измерение координат с погрешностью 100 000 метров за 1440 минут.
Очевидно, не стоит противопоставлять одно другому. Игра не стоит свеч.
bbs12
10.06.2023 00:24+2навигационные приемники
Низкоорбитальные спутники сбивать точно умеют, навигационные летают на высотах ~20 тыс. км. Интересно есть ли у крупных стран планы и техника для удаления с орбиты этих спутников в случае обострения конфликта?
sim31r
10.06.2023 00:24Вагон щебня на встречной орбите. Ну или с оптимизацией, шарики из карбида кремния или плотного металла. Далее в дело вступят осколки от столкновений. Это может занять недели и месяцы. Уже сейчас космический мусор проблема, а миллионы искусственных объектов будут в тысячи раз чаще такие разрушения вызывать
https://habr.com/ru/companies/first/articles/735292/
Для аппаратов в магнитном поле Земли в 1960е годы уже испытаны методы проще, атомный взрыв делает потоки заряженных частиц, которые длительное время крутятся в магнитных поясах и вызывают полярное сияние над Тихим Океаном. Если мощность повысить они вероятно пожгут все спутники.
iliasam
10.06.2023 00:24+2Думал, увижу тут полноценную реализацию навигации на контроллере, а тут, если я правильно понял, все расчеты делаются вручную.
aabzel Автор
10.06.2023 00:24Вовсе нет. Все расчеты в микроконтроллере в прошивке.
Пользователю достаточно вечером извлечь SD карту, вставить ее в LapTop и открыть файл с навигационным решением
а там строчка на каждый день
latitude/longitude: 58.880000,35.700000 Deg
latitude/longitude: 55.340000,36.500000 Deg
+
Там же на SD карте есть и низкоуровневая инфа: график освещения, время восхода, кульминации, заката, солнечное склонение и прочее.
gnomeby
10.06.2023 00:24+7Если вы оказались в одних трусах на необитаемом острове, то широту можно вычислить ночью по звёздному небу по углу между двумя прямыми палочками, одна из которых будет свисать вниз, а вторая указывать на центр вращения звёзд, который можно или знать или пронаблюдать в течении ночи.
А вот долготу вычислить без часов вообще никак нельзя, ибо она в принципе привязана к Гринвичу.
Radisto
10.06.2023 00:24+6Без знания точного времени, если быть нудным, прошу прощения. А для этого часы не обязательны. До изобретения хронометра точное время вычисляли астрономически, правда это требовало хороших наблюдений, и наблюдательный пункт был стационарным. Луну наблюдали (низкая точность, не довели до ума, зато наблюдать легко), и спутники Юпитера (высокая точность, даже конечность скорости света так впервые обнаружили, но наблюдать было сложно даже с земли. Но астрономический способ определения времени на них р был завязан - в стационарных пунктах были центры синхронизации хронометров. Вывести точное время "в часах" с Гринвича в какую-нибудь Австралию долгое время можно было только с сильной потерей точности). Центр вращения легко определяется только в северном полушарии. В южном будут проблемы
gnomeby
10.06.2023 00:24+1Да, если у вас есть под рукой каталог небесных событий с указанием точного времени их в известном часовом поясе, то действительно можно определить смещение относительно гринвического меридиана.
И даже без часов, хотя простейшие водные соорудить можно, можно примерно прикинуть в каком секторе долгот вы находитесь, хотя вы скорее всего это и так подозревали, не телепортировали же вас на остров.
Но я тут подумал каталог с собой иметь не нужно. Нужно просто соорудить часы. И записывать наблюдаемые астрономические события с указанием времени. Потом эти записи положить в бутылку, если её прибило к берегу и отправить по течению. Если повезёт и бутылку выловят, то потом можно через Stellarium установить точку с которой были сделаны наблюдения.
Arhammon
10.06.2023 00:24+3Сопротивление фоторезистора зависит не только от освещенности, но и ещё от температуры.
-фоторезистор можно жарить в термостате градусах на 70.
-если параметры линейные, то можно подобрать довесок с противоположным ТКС
-взять термодатчик и корректировать в цифре
sim31r
10.06.2023 00:24+1Или образцовый источник света направлять на идентичный фоторезистор и калибровать его так. Заодно проблема с линейностью решается.
engine9
10.06.2023 00:24+4Концепт очень интересный и найдёт своё применение, мне кажется что его основной минус это влияние облачности на начало и конец дня, так, например высоко висящие облака могут переотражать свет Солнца из за горизонта. Так же плотная облачность затемнять утренние и вечерние часы. Ну и проблема светового загрязнения от городов, подсветка тоже будет влиять.
vk6677
10.06.2023 00:24+3Как я понимаю, высокая точность часов реального времени не критична для данной задачи. Возможно использовать RTC микроконтроллера, подключив внешний кварц на 32 кГц. Пропадёт необходимость во внешних часах.
aabzel Автор
10.06.2023 00:24Просто у этой отладки NUCLEO-F401RE нет батарейного отсека для RTC.
Поэтому пришлось пристегнуть внешние i2c часы.
Slonosvin
10.06.2023 00:24Идея, безусловно, занятная. Но мне, почему-то вспомнился анекдот. Идёт мужик утром через парк. Проходит мимо фонтана, оттуда высовывается чья-то голова и просит: Мужик, подскажи, пожалуйста, куда меня занесло. Мужик отвечает: Это фонтан в парке Победы. Голова ему: Да на#@й эти подробности, город какой?
aabzel Автор
10.06.2023 00:24Тогда можно прибегнуть к помощи GNSS RTK
https://habr.com/ru/articles/648247/
RV3EFE
10.06.2023 00:24+2Очень интересная статья и подход. Понравилось описание. Лично я очень люблю какие-то необычные решения.
aabzel Автор
10.06.2023 00:24+1Лично я очень люблю какие-то необычные решения.
Думаю Вам тогда понравятся эти два текста
H-мост: Load Detect (или как выявлять вандализм)
https://habr.com/ru/articles/709374/
Задача про две ёмкости для жидкости
https://habr.com/ru/articles/662561/
Radisto
10.06.2023 00:24+2Можно попробовать камеру обскура. Внутри фотодатчик, нацеленный на юг. Самый яркий луч (если нет облачности, конечно) будет от солнца. Это можно выставить порогом срабатывания так, чтобы вне яркого дня вообще не срабатывал. Таким образом можно примерно оценить время местного полудня (а соответственно и долготу). Для широты конечно лучше высоту определить, но тут либо линейка датчиков (сложно и принцип другой, неспортивно) или механическая развертка (но это два датчика: фото и угол поворота) ну и по ширине он должен захватывать больше, чем по высоте - высота важна для точности, а ширина такой, чтобы вся аналемма по ширине уместилась, иначе придется поправку вправо-влево от юга делать, да и магнитное склонение учитывать, если устанавливать по компасу. Лучше конечно установить ночью по Полярной звезде. В южном полушарии конечно проще по компасу
iliasam
10.06.2023 00:24+1Такими темпами можно и к роботизированному тахеометру с камерой прийти)
Конечно, Б/У телескоп с моторизированной монтировкой будет значительно дешевле.
VT100
10.06.2023 00:24+3Усреднить видимую фоторезистором яркость, накрыв его матовой полусферой?
Подправить резкие колебания яркости поправками на рассчитатанную яркость?
Radisto
10.06.2023 00:24+1Растения таким образом определяют время, когда зима близко. У них для усреднения химический интегратор. Тут обратная задача: когда зима - известно. Тоже вариант
Octonion
10.06.2023 00:24+3Секстант точнее и быстрее будет. Но идея прикрутить электронику для навигации по Солнцу (и возможно звёздам), выглядит интересно, надо будет над этим подумать
Radisto
10.06.2023 00:24+2А вообще измерения звезд при помощи секстана - не самое сложное в навигации, поэтому датчики можно, думаю, заменить глазом. Это практический навык. Самое сложное - навигационные вычисления. Это очень образно и доходчиво описал ещё Джон Сильвер в разговоре у бочки яблок на борту Испаньолы. А на Ардуино астровычислитель реализовать как раз таки можно. Даже сейчас это выглядит интересным, а в Золотой Век пиратства какой-нибудь капитан Флинт за такое душу бы продал, не задумываясь. И вычисление положения полюса мира по звездам, на нем не лежащим (для южного полушария - вообще огонь, мне кажется. Астрокомпас, чтобы вычислить местное магнитное склонение и определить деривацию вашей каравеллы). Или вычислить точное местное время (тут и долгота появится). Ноктюрлабиум на Ардуино не думали реализовать? С такими возможностями он даже в южном полушарии будет работать (настоящий ноктюрлабиум к сожалению навести на полюс мира можно только в северном, в южном вычислительных способностей межушного ганглия не хватает)
aabzel Автор
10.06.2023 00:24Ноктюрлабиум на Ардуино не думали реализовать?
Думал. Но углы в электронике очень трудно мерять.
Надо либо энкодер, либо резольвер подключать, а это дорого и надо много custom 3D деталей проектировать на CNC потом вытачивать.Radisto
10.06.2023 00:24+1Акселерометр (или гироскоп, нн знаю как он правильно называется) на прозрачную пластину, на которой нарисована линия. На линию поймать две звезды (список удачных пар звёзд надо заранее. Две-три пары, больше все равно не нужно. Измерения должно быть два с интервалом таким, чтобы небо заметно провернулось (несколько часов в идеале, для точности. Это как раз контроллер на себя и возьмет).В зените такой угломер работать не будет, но можно просто не выбирать пары звёзд близко к зениту. Абсолютную высоту над горизонтом так не определить, но для определения местного времени должно хватить. Что-то вроде коробки с прозрачным окошком с визирной линией. На вытянутых руках совместили с парой звезд, нажали кнопку под пальцем. Подождали, повторили. Оно вычислило по двум углам и разнице времен между измерениями, в каком положении были звёзды - есть местное время (и долгота). Для широты надо высоту от горизонта мерять. Тут точное измерение угла - или оптика, или механика с секстаном. Это да, сложно.
fivlabor
10.06.2023 00:24+1Добавлю пару способов для улучшения метода:
Магнитное поле направлено не параллельно поверхности. Также магнитный полюса нашей планеты не совпадают с осью вращения.
Если дополнительно использовать трехосный магнитометр, то можно использовать магнитное склонение + наклонение. Нужна также база этих склонений и куча математики :) и условие, что рядом нет кучи железа
Подробнее, тут https://en.m.wikipedia.org/wiki/Magnetic_dip и https://en.m.wikipedia.org/wiki/Magnetic_declination
Если брать MEMS гироскоп и переодически его поворачивать на небольшой угол, то можно с некоторой погрешностью определять направление оси вращения планеты (так работает гироскопический инклинометр - из-за силы кориолиса, гуглите статьи по фразе "North Finding System Using a MEMS Gyroscope"). Тогда не потребуется ждать, когда тень от палки короче всего + работает в пасмурную погоду и под поверхностью.
И магнитометры и гироскоп стоят относительно недорого
Radisto
10.06.2023 00:24+1Тут самая засада в металле. Помню, попал мне в руки компас - пользоваться им в городе или даже поселке часто невозможно. Его мотает туда-сюда. Как оказалось, у нас под ногами этого железа закопано слишком много. У меня сейчас на столе простенький компас лежит - он как и смартфон врёт почти на 90 градусов
VT100
10.06.2023 00:24+1Мой старый мобильник-недосмарт просил несколько раз перевернуть его в нескольких плоскостях при включении навигации - калибровал компас.
ЕМНИП, такое требование и у английского microBit. Можно покопать исходники.
Radisto
10.06.2023 00:24+1Пластмассовый компас не просил его переворачивать, но я его и переворачивал и тряс. Калибровки он не требует и исходников не имеет. В разных местах комнаты показывает в разные стороны
VT100
10.06.2023 00:24+1Я в том смысле, что если уничтожение девиации встроенного компаса не было предусмотрено, то и переворачивать не просят.
Теорию, алгоритм и формулы - можно посмотреть тут.
AlfShumway
10.06.2023 00:24+2Проводимость (в МегаСименсах) фоторезистора от времени
Многовато для проводимости. Скорее в миллисименсах.
Denev
10.06.2023 00:24+15--радио электронная борьба для GNSS не работают в этом случае. Никто не может выключить Солнце.
Я бы на вашем месте не зарекался.
Moskus
Строго говоря, это грубое приближение. Угловой диаметр Солнца - около 0,5°. Соответственно, эта величина определяет максимальную величину расхождения лучей в любой точке, освещённой солнечным светом.
Это также неверно, потому что свет, проходящий через микроканальную пластину (используется, например, в приборах ночного видения) может обладать большей степенью параллельности.