Ниже приведен адаптированный вариант моей статьи «Использование программируемого микрокалькулятора CITIZEN для расчёта глубины резкости». Файл датирован 28 октября 2000 года.
В своём творчестве фотографы часто используют вещи, которые никакого отношения к фотографии, казалось бы, и не имеют. Причём зачастую встречаются очень оригинальные решения. Предлагаю использовать калькулятор, как дополнение к механическому фотоаппарату, не обременённому излишней электроникой.
Приведённые ниже программы писались и тестировались на ПМК CITIZEN SRP-175. В нём имеется возможность ввести четыре программы с общим числом шагов — 128.
На сайте Citizen я нашёл информацию ещё о двух программируемых моделях — SRP-45N и SRP-145T. У них одно поле программ и всего 40 шагов памяти.
Приведенные ниже программы длиннее 40 шагов каждая и не помещаются в память этих калькуляторов. Зато они обе одновременно войдут в память SRP-175!
56 шагов памяти
Для определенности, буду ссылаться на программную область №4 (LRN4)
Входные данные:
фокусное расстояние (м);
значение диафрагмы;
расстояние по шкале.
Выходные данные:
ближнее расстояние;
дальнее расстояние;
гиперфокальное расстояние.
000: [x] // и введем, например, 3
001: STO 1 [x] // допустим, 4
004: STO 2 1/x × // [ 0.25] M
008: 1720 × RCL 0 = // [ 21.5] M
016: STO 3 × RCL 1 ÷ // [ 64.5] M
022: ( RCL 3 - RCL 1 // [ 3.] M ()
028: + RCL 0 = STO 4 // [3.477088949] M
034: RCL 3 × RCL 1 ÷ // [ 64.5] M
040: ( RCL 3 + RCL 1 // [ 3.] M ()
046: - RCL 0 = a // [ 2.63803681] M
051: RCL 4 b R>P P>R // [ 2.63803681] M
Перед первым запуском программы, а также после каждой смены объектива, фокусное расстояние объектива, в метрах, заносится в регистр памяти 0. Например: 0.135 STO 0
После запуска программы RUN 9,
на запрос -001- вводить расстояние со шкалы объектива, например: 7;
RUN;
на запрос -002- ставить значение диафрагмы, например: 5.6;
RUN;
на экране получаем ближайшее расстояние: 6.005675352 (уже занесено в переменную a);
нажимаем b - прочитали: 8.388901505.
Теперь можно нажимая a и b, смотреть соответственно ближнее и дальнее расстояния глубины резкости.
Гиперфокальное расстояние лежит в ячейке памяти 3: RCL 3 41.46428571.
Для дальнейших вычислений повторить абзац сначала.
47 шагов памяти
Для определенности, буду ссылаться на программную область №1 (LRN1)
Входные данные:
фокусное расстояние (м);
ближнее расстояние;
дальнее расстояние.
Выходные данные:
значение диафрагмы;
расстояние по шкале.
000: 2 × [x] // скажем, от 3
003: STO 1 × [x] // до 9 метров
007: STO 2 ÷ ( RCL 1 // [ 3.] M ()
013: + RCL 2 = STO 3 // [ 4.5] M
019: - RCL 1 = × // [ 1.5] M
024: 1720 ÷ RCL 1 ÷ // [ 860.] M
032: ( RCL 3 ÷ RCL 0 // [ 0.05] M ()
038: - 1 = b RCL 3 a // [ 3.] M
045: R>P P>R // [ 3.] M
Перед первым запуском программы, а также после каждой смены объектива, фокусное расстояние, в метрах, заносится в регистр памяти 0. Например: 0.050 STO 0
После запуска программы RUN 6,
на запрос -001- вводить ближнее расстояние, например: 5;
RUN;
на запрос -002- ставить дальнее расстояние, например: 10;
RUN;
на экране получаем расстояние по шкале: 6.666666667 (уже занесено в переменную a);
нажимаем b - прочитали: 4.332493703, значение диафрагмы.
Теперь можно нажимая a и b, смотреть эти значения поочерёдно.
Для дальнейших вычислений повторить абзац сначала.
G = 1720 * f / d
m1 = G * m / ( G + ( m – f ) )
m2 = G * m / ( G – ( m – f ) )
Следующие две формулы выведены из первых трёх
m = 2 * m1 * m2 / ( m1 + m2 )
d = 1720 * ( m – m1 ) / m1 / ( m / f – 1 )
G – гиперфокальное расстояние;
m1 – ближнее расстояние;
m2 – дальнее расстояние;
f – фокусное расстояние объектива;
d – значение диафрагмы.