Горизонтальные солнечные часы

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

В прошлой статье про солнечные часы, отмечалось, что самым простым типом солнечных часов являются экваториальные солнечные часы, но их простота приводит к тому, что пользоваться этими часами в Северном полушарии можно только астрономической весной (от весеннего равноденствия до летнего солнцестояния) и астрономическим летом (от летнего солнцестояния до осеннего равноденствия), когда Солнце располагается выше небесного экватора. Этого недостатка лишены горизонтальные солнечные часы. Они могут работать весь год, но заметно сложнее в изготовлении, так как их циферблат необходимо разбивать на неравномерные сектора [1].

Простейшие горизонтальные солнечные часы.
Простейшие горизонтальные солнечные часы.

Для изготовления горизонтальных солнечных часов можно воспользоваться методикой описанной в книге «Энциклопедический словарь юного астронома» [2] на страницах 260-261.

 1) На заготовке циферблата чертится линия север-юг, на ее северном конце ставится отметка «12 часов».

 2) Отмечается точка, в которой будет установлен гномон.

 3) Из точки установки гномона от линии север-юг под определенными углами откладываются отрезки соответствующие нужным моментам времени. Необходимые углы u вычисляются по формуле

\tan u = \tan t \cdot \sin \varphi

где \varphi - географическая широта, t - интервал времени от полудня до нужного часа дня (1 час соответствует 15 градусам). Готовую таблицу углов можно найти в [3] на странице 305.

4) На второй половине будущего циферблата зеркально откладываем отрезки под теми же углами.

Так как сейчас на дворе третье десятилетие XXI, то выполнять все эти операции вручную уже не обязательно. Особенно грустно все рисовать с помощью транспортира, если интересно посмотреть, как будет меняться вид циферблата для разных широт. Поэтому автор решил использовать всю мощь современных информационных технологий и написал небольшую программу для разметки циферблата горизонтальных солнечных часов на языке Pascal :)

Код программы
{Программа для разметки циферблата горизонтальных солнечных часов}
const
  dt=15; //шаг, через который ставятся метки (1 час = 15 градусов)
  Tmin=-9*dt;  // начальное значение шага 9 часов до истинного солнечного полудня
  Tmax=9*dt;  // конечное значение шага 9 часов после истинного солнечного полудня
  phi=40; //широта места установки часов, в градусах
var
  DATA: text;
  dt_r,Tmin_r,phi_r: double; //переменные для перевода констант из градусной в радианную меру
  u,t: double; //u - угол под которым откладывается метка, соответствующая времени t
  tg_t,sin_phi_r: double; //вспомогательные переменные для вычисления тангенса t и синуса широты phi
  t_r: double; //текущее значение угла в радианах
BEGIN
  Assign(DATA,'ciferblat.dat');
  Rewrite(DATA);
  //перевод констант из градусной меры в радианную 
  dt_r:=dt*Pi/180;
  Tmin_r:=Tmin*Pi/180; 
  phi_r:=phi*Pi/180;
  
  t_r:=Tmin_r;
  t:=Tmin;
  sin_phi_r:=sin(phi_r);
  while t<=Tmax do
  begin
    //часть циферблата раньше 6 часов после полудня
    if t<(-90) then 
    begin
      tg_t:=sin(t_r)/cos(t_r);
      u:=arctan(tg_t*sin_phi_r);
      //вывод в файл в форме пригодной для gnuplot
      writeln(DATA,0,' ',0);
      writeln(DATA,-cos(u),' ',-sin(u));
      writeln(DATA);
      writeln(DATA);
    end;
    //основная часть циферблата в диапазоне от 6 до полудня до 6 часов после полудня
    if (t<90) and (t>=(-90)) then 
    begin
      tg_t:=sin(t_r)/cos(t_r);
      u:=arctan(tg_t*sin_phi_r);
      //вывод в файл в форме пригодной для gnuplot
      writeln(DATA,0,' ',0);
      writeln(DATA,cos(u),' ',sin(u));
      writeln(DATA);
      writeln(DATA);
    end;
    //обработка случая, когда cos(t_r)=0 (6 часов до полудня, t=90 градусов)
    if t=90 then 
    begin
      writeln(DATA,0,' ',0);
      writeln(DATA,0,' ',1);
      writeln(DATA);
      writeln(DATA);
    end;
    //часть циферблата после 6 часов до полудня
    if t<(-90) then 
    begin
      tg_t:=sin(t_r)/cos(t_r);
      u:=arctan(tg_t*sin_phi_r);
      //вывод в файл в форме пригодной для gnuplot
      writeln(DATA,0,' ',0);
      writeln(DATA,-cos(u),' ',sin(u));
      writeln(DATA);
      writeln(DATA);
    end;
    t_r:=t_r+dt_r;
    t:=t+dt;
  end;
  Close(DATA);
  writeln('Ok');
  readln();
END.

 Эта программа формирует файл с данными, которые можно отобразить в программе Gnuplot.

Скрипт Gnuplot
set size square
set terminal png large font arial size 800,600
unset grid
unset key
set out "ciferblat.png"
plot [-1:1] [-1:1] "ciferblat.dat" index 0 with lines lt 1, \
     "ciferblat.dat" index 1 with lines lt 1, \
     "ciferblat.dat" index 2 with lines lt 3, \
     "ciferblat.dat" index 3 with lines lt 3, \
     "ciferblat.dat" index 4 with lines lt 3, \
     "ciferblat.dat" index 5 with lines lt 3, \
     "ciferblat.dat" index 6 with lines lt 1, \
     "ciferblat.dat" index 7 with lines lt 3, \
     "ciferblat.dat" index 8 with lines lt 3, \
     "ciferblat.dat" index 9 with lines lt 1, \
	 "ciferblat.dat" index 10 with lines lt 3, \
     "ciferblat.dat" index 11 with lines lt 3, \
     "ciferblat.dat" index 12 with lines lt 1, \
     "ciferblat.dat" index 13 with lines lt 3, \
	 "ciferblat.dat" index 14 with lines lt 3, \
     "ciferblat.dat" index 15 with lines lt 1, \
	 "ciferblat.dat" index 16 with lines lt 3, \
     "ciferblat.dat" index 17 with lines lt 3, \
     "ciferblat.dat" index 18 with lines lt 1
 
pause -1

Используя код, представленный выше, можно получить циферблат горизонтальных солнечных часов для нужной широты. Ниже представлены циферблаты, построенные для широт от 65 до 40 градусов с шагом 5 градусов.

Циферблаты
Циферблат для часов, работающих на широте 65o
Циферблат для часов, работающих на широте 65o
Циферблат для часов, работающих на широте 60o
Циферблат для часов, работающих на широте 60o
Циферблат для часов, работающих на широте 55o
Циферблат для часов, работающих на широте 55o
Циферблат для часов, работающих на широте 50o
Циферблат для часов, работающих на широте 50o
Циферблат для часов, работающих на широте 45o
Циферблат для часов, работающих на широте 45o
Циферблат для часов, работающих на широте 40o
Циферблат для часов, работающих на широте 40o

5) Остается каким-либо образом получить материальный образец циферблата. В простейшем случае его можно распечатать и наклеить на плотное картонное основание.

Распечатанный циферблат для часов
Распечатанный циферблат для часов

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

Угол наклона гномона соответствует широте места установки часов
Угол наклона гномона соответствует широте места установки часов
Правильное положение гномона относительно циферблата
Правильное положение гномона относительно циферблата

При этом гномон будет указывать на Северный полюс небесной сферы, а показания часов не будут зависеть от склонения Солнца [4].

При использовании солнечных часов следует помнить, что они показывают местное истинное солнечное время. Для того, чтобы показания солнечных часов перевести к используемому нами местному времени необходимо внести поправку, рассчитываемую по формуле

\Delta t = \eta + \Delta t_1 + n - \lambda

где \eta- уравнение времени [1], которое зависит от номера дня в году и меняется в диапазоне от +14,3 мин (12 февраля) до -16,4 мин (4 ноября), \Delta t_1- разница времени между вашим городом и Москвой, n- разница между московским и всемирным временем (3 часа с учетом декретного времени, раньше, когда в России использовалось летнее время в период действия летнего времени разница была 4 часа), \lambda- географическая долгота города, выраженная в единицах времени (1 градус равен 4 минутам). Как видно для стационарных часов все компоненты, кроме уравнения времени можно определить один раз.

В конце статьи предлагаю вашему вниманию видеоклип композитора Андрея Климковского на музыкальную композицию "Северная корона" из одноименного альбома, в котором фигурирую горизонтальные солнечные часы.

Источники.

  1. Солнечные часы. - URL: https://habr.com/ru/articles/746772/

  1. Энциклопедический словарь юного астронома. Составитель Н.П.Ерпылев - М.: Педагогика, 1986 г.

  1. Астрономия. Энциклопедия для детей – М.: Аванта плюс,1998 г.

  2. Системы небесных координат. - URL: http://www.astronet.ru/db/msg/1175352/node4.html

 

Источник: https://habr.com/ru/articles/755052/


Интересные статьи

Интересные статьи

Вышедшее неделю назад обновление приложения Huawei Health полностью перестало работать с привязанными устройствами. Смарт-браслеты и часы не отображаются в приложении, синхронизация не работает, добав...
Первая часть проекта была посвящена используемым компонентам и вызвала довольно много комментариев и вопросов. В данной статье я подробно опишу процесс сборки и опишу при...
Удивительно, но старинная электронная книга Sony prs-505 является очень классным конструктором всевозможных самоделок. В очередной раз взял эту книжку, чтобы сделать себе “бумажные” ч...
Статья с сайта crazywatches.pl, посвящённого космическому дизайну и часам, сделанным с применением необычных технологий 1950-х – 1970-х годов "Calculator" – один из п...
Недавно сидел я в одном сообществе программистов в Telegram и заметил один очень любопытный профиль. Любопытным было следующее — на главном фото у него было изображено нынешнее время. Мне стало ж...